/*
Theme Name: Kadence Child
Theme URI: https://www.kadencewp.com/kadence-theme/
Template: kadence
Author: Kadence WP
Author URI: https://www.kadencewp.com/
Description: Child theme for Healing Studio
Tags: translation-ready,accessibility-ready,two-columns,right-sidebar,left-sidebar,footer-widgets,blog,custom-logo,custom-background,custom-menu,rtl-language-support,editor-style,threaded-comments,custom-colors,featured-images,wide-blocks,full-width-template,theme-options,e-commerce
Version: 1.5.1.1784618942
Updated: 2026-07-21 07:29:02

*/




/* =========================================================
   HEALING STUDIO — SERVICES SCROLL BEHAVIOUR
   Δεν αλλάζει paddings, gaps, borders ή διαστάσεις blocks.
   ========================================================= */


/* =========================================================
   GLOBAL SMOOTH SCROLL
   ========================================================= */

html {
	scroll-behavior: smooth;
	scroll-padding-top: 110px;
}


/* =========================================================
   MAIN SERVICES WRAPPER
   Επιτρέπει στο sticky να λειτουργήσει μέσα στο Kadence.
   ========================================================= */

.services-scroll-section,
.services-scroll-section > .kt-row-column-wrap {
	overflow: visible !important;
}


/* =========================================================
   LEFT SERVICES NAVIGATION
   Κρατά την αριστερή στήλη σταθερή κατά το scroll.
   ========================================================= */

.services-nav {
	position: sticky;
	top: 110px;
	align-self: flex-start;
	z-index: 5;

	height: auto;
	max-height: none;
	overflow: visible !important;
}


/* =========================================================
   SERVICE NAV ITEMS
   Δεν αλλάζουμε καθόλου padding, margin, gap ή border.
   ========================================================= */

.service-nav-item {
	position: relative;
	cursor: pointer;

	transition:
		background-color 0.25s ease,
		box-shadow 0.25s ease,
		color 0.25s ease;
}


/* =========================================================
   ACTIVE SERVICE ITEM
   Χρώματα από το mockup:
   ανοιχτό warm beige και olive μπάρα αριστερά.
   ========================================================= */

.service-nav-item.is-active {
	background-color: #efede6 !important;
	box-shadow: inset 5px 0 0 #767952 !important;
}


/* Active text */

.service-nav-item.is-active,
.service-nav-item.is-active h1,
.service-nav-item.is-active h2,
.service-nav-item.is-active h3,
.service-nav-item.is-active h4,
.service-nav-item.is-active h5,
.service-nav-item.is-active h6,
.service-nav-item.is-active p,
.service-nav-item.is-active .kt-adv-heading {
	color: #62664a !important;
}


/* Δεν πειράζουμε το αρχικό icon.
   Απλώς διατηρείται πλήρως ορατό όταν είναι active. */

.service-nav-item.is-active img {
	opacity: 1 !important;
}


/* Keyboard accessibility */

.service-nav-item:focus-visible {
	outline: 1px solid #767952;
	outline-offset: 3px;
}


/* =========================================================
   RIGHT SERVICES PANELS
   ========================================================= */

.services-panels {
	position: relative;
	overflow: visible;
}


/* Τα IDs που έχεις ήδη βάλει στα πέντε δεξιά Sections */

#p4e,
#p4m,
#p4b,
#p4f,
#p4s {
	position: relative;
	scroll-margin-top: 115px;
}


/* =========================================================
   ACTIVE PANEL FEEDBACK
   Πολύ διακριτικό, χωρίς αλλαγή διαστάσεων ή layout.
   ========================================================= */

#p4e.is-active-panel,
#p4m.is-active-panel,
#p4b.is-active-panel,
#p4f.is-active-panel,
#p4s.is-active-panel {
	animation: healing-service-panel-focus 0.35s ease;
}

@keyframes healing-service-panel-focus {
	from {
		opacity: 0.9;
	}

	to {
		opacity: 1;
	}
}


/* =========================================================
   TABLET
   ========================================================= */

@media (max-width: 1024px) {
	html {
		scroll-padding-top: 90px;
	}

	.services-nav {
		top: 90px;
	}

	#p4e,
	#p4m,
	#p4b,
	#p4f,
	#p4s {
		scroll-margin-top: 95px;
	}
}


/* =========================================================
   MOBILE
   Η αριστερή στήλη επιστρέφει στη φυσική ροή.
   ========================================================= */

@media (max-width: 767px) {
	html {
		scroll-padding-top: 75px;
	}

	.services-nav {
		position: relative;
		top: auto;
	}

	.service-nav-item.is-active {
		box-shadow: inset 4px 0 0 #767952 !important;
	}

	#p4e,
	#p4m,
	#p4b,
	#p4f,
	#p4s {
		scroll-margin-top: 80px;
	}
}


/* =========================================================
   REDUCED MOTION
   ========================================================= */

@media (prefers-reduced-motion: reduce) {
	html {
		scroll-behavior: auto;
	}

	.service-nav-item {
		transition: none;
	}

	#p4e.is-active-panel,
	#p4m.is-active-panel,
	#p4b.is-active-panel,
	#p4f.is-active-panel,
	#p4s.is-active-panel {
		animation: none;
	}
}




/* =========================================================
   SPACE BETWEEN RIGHT SERVICE PANELS
   ========================================================= */

#p4e,
#p4m,
#p4b,
#p4f,
#p4s {
	margin-bottom: 120px;
}

/* Η τελευταία υπηρεσία δεν χρειάζεται μεγάλο κενό από κάτω */
#p4s {
	margin-bottom: 0;
}

@media (max-width: 1024px) {
	#p4e,
	#p4m,
	#p4b,
	#p4f,
	#p4s {
		margin-bottom: 90px;
	}
}

@media (max-width: 767px) {
	#p4e,
	#p4m,
	#p4b,
	#p4f,
	#p4s {
		margin-bottom: 70px;
	}
}




















/* =========================================================
   HEALING STUDIO — SERVICE MODALS
   Πλήρες responsive CSS
   ========================================================= */

/* Κλείδωμα της σελίδας όταν είναι ανοιχτό το modal */
body.hs-service-modal-open {
	overflow: hidden;
}

/* Σταθερό box sizing σε όλα τα στοιχεία του modal */
.hs-service-modal,
.hs-service-modal *,
.hs-service-modal *::before,
.hs-service-modal *::after {
	box-sizing: border-box;
}

/* =========================================================
   OVERLAY
   ========================================================= */

.hs-service-modal {
	position: fixed;
	inset: 0;
	z-index: 99990;

	display: flex;
	align-items: center;
	justify-content: center;

	width: 100%;
	height: 100vh;
	height: 100dvh;

	padding: 20px;

	visibility: hidden;
	opacity: 0;
	pointer-events: none;

	transition:
		opacity 0.25s ease,
		visibility 0.25s ease;
}

.hs-service-modal.is-open {
	visibility: visible;
	opacity: 1;
	pointer-events: auto;
}

/* WordPress admin bar */
body.admin-bar .hs-service-modal {
	top: 32px;
	height: calc(100vh - 32px);
	height: calc(100dvh - 32px);
}

/* Σκούρο blurred background */
.hs-service-modal__backdrop {
	position: absolute;
	inset: 0;

	background: rgba(39, 43, 35, 0.47);

	backdrop-filter: blur(5px);
	-webkit-backdrop-filter: blur(5px);
}

/* =========================================================
   MODAL WINDOW
   ========================================================= */

.hs-service-modal__window {
	position: relative;
	z-index: 1;

	display: grid;
	grid-template-columns:
		minmax(0, 44%)
		minmax(0, 56%);
	align-items: stretch;

	width: min(1060px, calc(100vw - 40px));
	height: auto;

	max-height: calc(100vh - 40px);
	max-height: calc(100dvh - 40px);

	padding: 16px;

	overflow: hidden;

	background: #fbfaf7;
	border: 1px solid rgba(212, 205, 193, 0.8);
	border-radius: 7px;

	box-shadow:
		0 26px 70px rgba(31, 34, 27, 0.22);

	transform: translateY(12px);

	transition: transform 0.28s ease;
}

.hs-service-modal.is-open .hs-service-modal__window {
	transform: translateY(0);
}

/* =========================================================
   CLOSE BUTTON
   ========================================================= */

.hs-service-modal__close {
	position: absolute;
	top: 24px;
	right: 24px;
	z-index: 10;

	display: flex;
	align-items: center;
	justify-content: center;

	width: 38px;
	height: 38px;

	margin: 0;
	padding: 0;

	border: 0;
	border-radius: 0;

	background: transparent;
	color: #515744;

	font-family: inherit;
	font-size: 37px;
	font-weight: 300;
	line-height: 1;

	cursor: pointer;

	transition:
		opacity 0.2s ease,
		transform 0.2s ease;
}

.hs-service-modal__close:hover {
	opacity: 0.7;
	transform: rotate(4deg);
}

.hs-service-modal__close:focus-visible {
	outline: 1px solid #596349;
	outline-offset: 3px;
}

/* =========================================================
   LEFT IMAGE
   ========================================================= */

.hs-service-modal__media {
	position: relative;
	align-self: stretch;

	min-width: 0;
	min-height: 0;

	overflow: hidden;

	background: #e7e2d8;
	border-radius: 4px;
}

/* Η εικόνα καλύπτει πάντα ολόκληρη την αριστερή στήλη */
.hs-service-modal__media img {
	position: absolute;
	inset: 0;

	display: block;

	width: 100%;
	height: 100%;

	margin: 0;
	padding: 0;

	object-fit: cover;
	object-position: center center;
}

/* =========================================================
   RIGHT CONTENT
   ========================================================= */

.hs-service-modal__content {
	display: block !important;

	min-width: 0;
	min-height: 0;

	max-height: calc(100vh - 72px);
	max-height: calc(100dvh - 72px);

	padding:
		28px
		40px
		32px
		50px;

	overflow-x: hidden;
	overflow-y: auto;

	overscroll-behavior: contain;

	background: #fbfaf7;

	scrollbar-width: thin;
	scrollbar-color: #cbc4b8 transparent;
}

.hs-service-modal__content::-webkit-scrollbar {
	width: 6px;
}

.hs-service-modal__content::-webkit-scrollbar-track {
	background: transparent;
}

.hs-service-modal__content::-webkit-scrollbar-thumb {
	background: #cbc4b8;
	border-radius: 20px;
}

/* =========================================================
   SERVICE ICON
   ========================================================= */

.hs-service-modal__service-icon {
	display: block;

	width: 52px;
	height: auto;

	margin:
		0
		0
		5px;

	padding: 0;
}

/* Η απόσταση icon–τίτλου ελέγχεται από το τελευταίο 5px */

/* =========================================================
   TITLE
   ========================================================= */

.hs-service-modal__title {
	display: block;

	max-width: 510px;

	margin: 0 !important;
	padding: 0;

	color: var(--global-palette1, #596349);

	font-family:
		var(--global-heading-font-family),
		Georgia,
		serif;

	font-size: clamp(43px, 4vw, 57px);
	font-weight: 400;
	letter-spacing: -0.025em;
	line-height: 1;
}

/* Χρυσή γραμμή */
.hs-service-modal__divider {
	width: 88px;
	height: 1px;

	margin:
		21px
		0
		24px;

	background: #d5c3a0;
}

/* =========================================================
   DESCRIPTION
   ========================================================= */

.hs-service-modal__description {
	max-width: 520px;

	color: var(--global-palette5, #4b4c46);

	font-size: 16px;
	line-height: 1.65;
}

/* Κανονικές ξεχωριστές παράγραφοι */
.hs-service-modal__description p {
	display: block;

	margin:
		0
		0
		17px !important;

	padding: 0;
}

.hs-service-modal__description p:last-child {
	margin-bottom: 0 !important;
}

.hs-service-modal__description em {
	font-style: italic;
}

/* =========================================================
   SERVICE DETAILS
   ========================================================= */

.hs-service-modal__details {
	display: grid;
	gap: 21px;

	margin-top: 28px;
	padding: 25px 0;

	border-top: 1px solid #dfd8cc;
	border-bottom: 1px solid #dfd8cc;
}

.hs-service-modal__detail {
	display: grid;
	grid-template-columns: 30px minmax(0, 1fr);
	gap: 14px;
	align-items: start;
}

/* Εικονίδια πληροφοριών */
.hs-service-modal__detail-icon {
	display: flex;
	align-items: center;
	justify-content: center;

	width: 28px;
	height: 28px;

	color: var(--global-palette1, #596349);
}

.hs-service-modal__detail-icon svg {
	display: block;

	width: 26px;
	height: 26px;

	fill: none;
	stroke: currentColor;
	stroke-width: 1.45;
	stroke-linecap: round;
	stroke-linejoin: round;
}

/* Κείμενο πληροφοριών */
.hs-service-modal__detail-content {
	display: grid;
	gap: 4px;

	min-width: 0;
}

.hs-service-modal__detail-content strong {
	display: block;

	color: var(--global-palette1, #596349);

	font-size: 15px;
	font-weight: 500;
	letter-spacing: 0.025em;
	line-height: 1.4;
}

.hs-service-modal__detail-content span {
	display: block;

	color: var(--global-palette4, #67685f);

	font-size: 14px;
	line-height: 1.45;
}

/* =========================================================
   BOOKING BUTTON
   ========================================================= */

.hs-service-modal__booking {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 12px;

	width: 100%;

	margin-top: 24px;
	padding: 15px 22px;

	border: 0;
	border-radius: 3px;

	background: #68714e;
	color: #ffffff;

	font-family: inherit;
	font-size: 14px;
	font-weight: 500;
	letter-spacing: 0.045em;
	line-height: 1.3;

	cursor: pointer;

	transition:
		background-color 0.2s ease,
		transform 0.2s ease;
}

.hs-service-modal__booking:hover {
	background: #5b6343;
	transform: translateY(-1px);
}

.hs-service-modal__booking:focus-visible {
	outline: 1px solid #596349;
	outline-offset: 3px;
}

.hs-service-modal__booking-icon {
	display: flex;
	align-items: center;
	justify-content: center;
}

.hs-service-modal__booking-icon svg {
	display: block;

	width: 18px;
	height: 18px;

	fill: none;
	stroke: currentColor;
	stroke-width: 1.6;
	stroke-linecap: round;
	stroke-linejoin: round;
}

/* Σημείωση κάτω από το κουμπί */
.hs-service-modal__note {
	margin:
		12px
		0
		0;

	color: var(--global-palette5, #5c5d56);

	font-size: 14px;
	line-height: 1.5;
}

/* Περισσότερα trigger */
.open-service-modal a,
a.open-service-modal {
	color: inherit;
	text-decoration: none;
}

/* =========================================================
   TABLET PORTRAIT / IPAD
   768px έως 1100px
   ========================================================= */

@media (min-width: 768px) and (max-width: 1100px) {
	.hs-service-modal {
		padding: 14px;
	}

	.hs-service-modal__window {
		grid-template-columns:
			minmax(0, 40%)
			minmax(0, 60%);

		width: calc(100vw - 28px);

		max-height: calc(100vh - 28px);
		max-height: calc(100dvh - 28px);

		padding: 12px;
	}

	.hs-service-modal__content {
		max-height: calc(100vh - 52px);
		max-height: calc(100dvh - 52px);

		padding:
			24px
			28px
			28px
			34px;
	}

	.hs-service-modal__close {
		top: 19px;
		right: 19px;
	}

	.hs-service-modal__service-icon {
		width: 46px;
		margin-bottom: 4px;
	}

	.hs-service-modal__title {
		font-size: clamp(39px, 4.5vw, 48px);
	}

	.hs-service-modal__divider {
		width: 78px;

		margin:
			17px
			0
			20px;
	}

	.hs-service-modal__description {
		font-size: 14.5px;
		line-height: 1.58;
	}

	.hs-service-modal__description p {
		margin-bottom: 14px !important;
	}

	.hs-service-modal__details {
		gap: 17px;

		margin-top: 22px;
		padding: 21px 0;
	}

	.hs-service-modal__detail-content strong {
		font-size: 13px;
	}

	.hs-service-modal__detail-content span {
		font-size: 13px;
	}

	.hs-service-modal__booking {
		margin-top: 20px;
		padding: 13px 18px;
	}

	.hs-service-modal__note {
		font-size: 12.5px;
	}
}

/* =========================================================
   ΧΑΜΗΛΟ LANDSCAPE VIEWPORT
   Nest Hub, tablet landscape, μικρά laptop
   ========================================================= */

@media (min-width: 768px) and (max-height: 700px) {
	.hs-service-modal {
		padding: 10px;
	}

	.hs-service-modal__window {
		grid-template-columns:
			minmax(0, 40%)
			minmax(0, 60%);

		width: min(980px, calc(100vw - 20px));

		max-height: calc(100vh - 20px);
		max-height: calc(100dvh - 20px);

		padding: 10px;
	}

	.hs-service-modal__close {
		top: 15px;
		right: 16px;

		width: 34px;
		height: 34px;

		font-size: 31px;
	}

	.hs-service-modal__content {
		max-height: calc(100vh - 40px);
		max-height: calc(100dvh - 40px);

		padding:
			16px
			24px
			22px
			30px;
	}

	.hs-service-modal__media img {
		object-position: center 54%;
	}

	.hs-service-modal__service-icon {
		width: 38px;
		margin-bottom: 2px;
	}

	.hs-service-modal__title {
		font-size: 35px;
		line-height: 1;
	}

	.hs-service-modal__divider {
		width: 70px;

		margin:
			13px
			0
			15px;
	}

	.hs-service-modal__description {
		font-size: 13.5px;
		line-height: 1.5;
	}

	.hs-service-modal__description p {
		margin-bottom: 12px !important;
	}

	.hs-service-modal__details {
		gap: 14px;

		margin-top: 17px;
		padding: 16px 0;
	}

	.hs-service-modal__detail {
		grid-template-columns: 25px minmax(0, 1fr);
		gap: 11px;
	}

	.hs-service-modal__detail-icon,
	.hs-service-modal__detail-icon svg {
		width: 22px;
		height: 22px;
	}

	.hs-service-modal__detail-content strong {
		font-size: 12px;
	}

	.hs-service-modal__detail-content span {
		font-size: 12px;
	}

	.hs-service-modal__booking {
		margin-top: 16px;
		padding: 12px 17px;

		font-size: 12px;
	}

	.hs-service-modal__note {
		margin-top: 8px;

		font-size: 11.5px;
	}
}

/* =========================================================
   MOBILE
   Μέχρι 767px
   ========================================================= */

@media (max-width: 767px) {
	.hs-service-modal {
		align-items: stretch;
		justify-content: stretch;

		padding: 0;
	}

	/* Mobile WordPress admin bar */
	body.admin-bar .hs-service-modal {
		top: 46px;
		height: calc(100vh - 46px);
		height: calc(100dvh - 46px);
	}

	/*
	 * Στο mobile το modal γίνεται ένα ενιαίο
	 * scrollable παράθυρο.
	 */
	.hs-service-modal__window {
		display: block;

		width: 100%;
		height: 100%;

		max-width: none;
		max-height: none;

		padding: 10px;

		overflow-x: hidden;
		overflow-y: auto;

		border-radius: 0;
	}

	.hs-service-modal__close {
		position: absolute;
		top: 17px;
		right: 17px;

		width: 38px;
		height: 38px;

		border-radius: 50%;

		background: rgba(251, 250, 247, 0.94);

		font-size: 32px;
	}

	/*
	 * Η εικόνα γίνεται responsive hero.
	 * Δεν καταλαμβάνει όλη την πρώτη οθόνη.
	 */
	.hs-service-modal__media {
		width: 100%;
		height: clamp(190px, 31dvh, 245px);
		min-height: 190px;

		border-radius: 4px;
	}

	.hs-service-modal__media img {
		position: absolute;

		width: 100%;
		height: 100%;

		object-fit: cover;
		object-position: center 48%;
	}

	.hs-service-modal__content {
		width: 100%;
		height: auto;
		max-height: none;

		padding:
			24px
			14px
			30px;

		overflow: visible;
	}

	.hs-service-modal__service-icon {
		width: 45px;

		margin-bottom: 3px;
	}

	.hs-service-modal__title {
		max-width: 100%;

		font-size: clamp(35px, 10vw, 42px);
		line-height: 1.02;
	}

	.hs-service-modal__divider {
		width: 72px;

		margin:
			18px
			0
			21px;
	}

	.hs-service-modal__description {
		max-width: none;

		font-size: 15px;
		line-height: 1.62;
	}

	.hs-service-modal__description p {
		margin-bottom: 15px !important;
	}

	.hs-service-modal__details {
		gap: 18px;

		margin-top: 23px;
		padding: 22px 0;
	}

	.hs-service-modal__detail {
		grid-template-columns: 27px minmax(0, 1fr);
		gap: 12px;
	}

	.hs-service-modal__detail-icon,
	.hs-service-modal__detail-icon svg {
		width: 24px;
		height: 24px;
	}

	.hs-service-modal__detail-content strong {
		font-size: 13px;
	}

	.hs-service-modal__detail-content span {
		font-size: 13.5px;
	}

	.hs-service-modal__booking {
		width: 100%;

		margin-top: 21px;
		padding: 15px 16px;

		font-size: 13px;
	}

	.hs-service-modal__note {
		margin-bottom: 5px;

		font-size: 13px;
	}
}

/* =========================================================
   ΠΟΛΥ ΜΙΚΡΑ ΚΙΝΗΤΑ
   ========================================================= */

@media (max-width: 380px) {
	.hs-service-modal__window {
		padding: 8px;
	}

	.hs-service-modal__media {
		height: 205px;
		min-height: 205px;
	}

	.hs-service-modal__content {
		padding:
			21px
			12px
			27px;
	}

	.hs-service-modal__service-icon {
		width: 42px;
	}

	.hs-service-modal__title {
		font-size: 34px;
	}

	.hs-service-modal__description {
		font-size: 14.5px;
	}

	.hs-service-modal__detail-content strong {
		font-size: 12.5px;
	}
}

/* =========================================================
   REDUCED MOTION
   ========================================================= */

@media (prefers-reduced-motion: reduce) {
	.hs-service-modal,
	.hs-service-modal__window,
	.hs-service-modal__close,
	.hs-service-modal__booking {
		transition: none;
	}
}






















/* =========================================================
   P4ALL — PRANA FOR CHARITY MODAL
   Πλήρες διορθωμένο responsive CSS
   ========================================================= */

/* ---------------------------------------------------------
   MODAL WINDOW
   --------------------------------------------------------- */

.hs-service-modal--charity .hs-service-modal__window {
	grid-template-columns:
		minmax(0, 48%)
		minmax(0, 52%);

	width: min(1060px, calc(100vw - 40px));
}

/* ---------------------------------------------------------
   LEFT IMAGE
   --------------------------------------------------------- */

.hs-service-modal--charity .hs-service-modal__media img {
	object-fit: cover;
	object-position: center center;
}

/* ---------------------------------------------------------
   RIGHT CONTENT
   --------------------------------------------------------- */

.hs-service-modal--charity .hs-service-modal__content {
	padding:
		25px
		36px
		28px
		40px;
}

/* =========================================================
   VIOLET FLAME ICON
   ========================================================= */

.hs-service-modal--charity .hs-charity-modal__mark {
	display: block;

	width: 34px !important;
	height: 34px !important;
	min-width: 34px !important;
	min-height: 34px !important;
	max-width: 34px !important;
	max-height: 34px !important;

	margin:
		0
		0
		8px;

	padding: 0;

	overflow: visible;

	font-size: 0;
	line-height: 0;
}

.hs-service-modal--charity
.hs-charity-modal__mark > svg {
	display: block !important;

	width: 34px !important;
	height: 34px !important;
	min-width: 34px !important;
	min-height: 34px !important;
	max-width: 34px !important;
	max-height: 34px !important;

	margin: 0 !important;
	padding: 0 !important;

	overflow: visible;
}

/* Διατήρηση του gradient της φλόγας */
.hs-service-modal--charity
.hs-charity-modal__mark
.hs-charity-modal__flame-path {
	fill: url(#hsVioletFlameGradient) !important;
	stroke: none !important;
	stroke-width: 0 !important;
}

/* Ακύρωση global SVG κανόνων μόνο για τη φλόγα */
.hs-service-modal--charity
.hs-charity-modal__mark
.hs-charity-modal__flame-path {
	vector-effect: non-scaling-stroke;
}

/* =========================================================
   SMALL LABEL
   P4ALL — PRANA FOR CHARITY
   ========================================================= */

.hs-service-modal--charity
.hs-charity-modal__eyebrow {
	margin:
		0
		0
		3px;

	padding: 0;

	color: #6b6d5e;

	font-size: 11px;
	font-weight: 500;
	letter-spacing: 0.15em;
	line-height: 1.4;
	text-transform: uppercase;
}

/* =========================================================
   TITLE
   ========================================================= */

.hs-service-modal--charity
.hs-service-modal__title {
	max-width: 470px;

	margin: 0 !important;
	padding: 0;

	font-size: clamp(38px, 3.35vw, 49px);
	letter-spacing: -0.025em;
	line-height: 1;
}

/* =========================================================
   DIVIDER
   ========================================================= */

.hs-service-modal--charity
.hs-service-modal__divider {
	width: 82px;

	margin:
		20px
		0
		22px;
}

/* =========================================================
   DESCRIPTION
   ========================================================= */

.hs-service-modal--charity
.hs-service-modal__description {
	max-width: 520px;

	font-size: 15px;
	line-height: 1.62;
}

.hs-service-modal--charity
.hs-service-modal__description p {
	margin:
		0
		0
		16px !important;

	padding: 0;
}

.hs-service-modal--charity
.hs-service-modal__description p:last-child {
	margin-bottom: 0 !important;
}

/* =========================================================
   INFORMATION AREA
   ========================================================= */

.hs-service-modal--charity
.hs-service-modal__details {
	display: grid;
	gap: 0;

	margin-top: 24px;
	padding: 0;

	border-top: 0;
	border-bottom: 1px solid #dfd8cc;
}

.hs-service-modal--charity
.hs-service-modal__detail {
	padding:
		13px
		0;

	border-top: 1px solid #dfd8cc;
}

/* Detail icons */
.hs-service-modal--charity
.hs-service-modal__detail-icon {
	width: 28px;
	height: 28px;

	color: #757b5c;
}

.hs-service-modal--charity
.hs-service-modal__detail-icon svg {
	display: block;

	width: 25px;
	height: 25px;

	fill: none !important;
	stroke: currentColor !important;
	stroke-width: 1.45 !important;
	stroke-linecap: round !important;
	stroke-linejoin: round !important;
}

.hs-service-modal--charity
.hs-service-modal__detail-icon svg * {
	fill: none !important;
	stroke: currentColor !important;
}

/* Detail text */
.hs-service-modal--charity
.hs-service-modal__detail-content strong {
	font-size: 13px;
	font-weight: 500;
	letter-spacing: 0.04em;
	line-height: 1.4;
}

.hs-service-modal--charity
.hs-service-modal__detail-content span {
	font-size: 13px;
	line-height: 1.4;
}

/* =========================================================
   PARTICIPATION BUTTON
   ========================================================= */

.hs-service-modal--charity
.hs-service-modal__booking {
	margin-top: 18px;
}

/* =========================================================
   NOTE BELOW BUTTON
   ========================================================= */

.hs-service-modal--charity
.hs-charity-modal__note {
	display: flex;
	align-items: flex-start;
	gap: 9px;

	width: 100%;

	margin:
		12px
		0
		0;
}

/* Note icon wrapper */
.hs-service-modal--charity
.hs-charity-modal__note-icon {
	flex:
		0
		0
		18px;

	display: flex;
	align-items: center;
	justify-content: center;

	width: 18px !important;
	height: 18px !important;
	min-width: 18px !important;
	min-height: 18px !important;
	max-width: 18px !important;
	max-height: 18px !important;

	margin:
		1px
		0
		0;

	padding: 0;

	overflow: visible;

	color: #b79a67;

	font-size: 0;
	line-height: 0;
}

.hs-service-modal--charity
.hs-charity-modal__note-icon > svg {
	display: block !important;

	width: 18px !important;
	height: 18px !important;
	min-width: 18px !important;
	min-height: 18px !important;
	max-width: 18px !important;
	max-height: 18px !important;

	margin: 0 !important;
	padding: 0 !important;

	fill: none !important;
	stroke: currentColor !important;
	stroke-width: 1.4 !important;
	stroke-linecap: round !important;
	stroke-linejoin: round !important;
}

.hs-service-modal--charity
.hs-charity-modal__note-icon > svg *,
.hs-service-modal--charity
.hs-charity-modal__note-icon > svg path,
.hs-service-modal--charity
.hs-charity-modal__note-icon > svg circle {
	fill: none !important;
	stroke: currentColor !important;
	stroke-width: 1.4 !important;
	stroke-linecap: round !important;
	stroke-linejoin: round !important;
}

.hs-service-modal--charity
.hs-charity-modal__note > span:last-child {
	flex: 1 1 auto;
	min-width: 0;
}

/* =========================================================
   TABLET PORTRAIT / STANDARD TABLET
   768px έως 1100px
   ========================================================= */

@media (min-width: 768px) and (max-width: 1100px) {
	.hs-service-modal--charity
	.hs-service-modal__window {
		grid-template-columns:
			minmax(0, 42%)
			minmax(0, 58%);
	}

	.hs-service-modal--charity
	.hs-service-modal__content {
		padding:
			23px
			27px
			26px
			31px;
	}

	.hs-service-modal--charity
	.hs-charity-modal__mark,
	.hs-service-modal--charity
	.hs-charity-modal__mark > svg {
		width: 31px !important;
		height: 31px !important;
		min-width: 31px !important;
		min-height: 31px !important;
		max-width: 31px !important;
		max-height: 31px !important;
	}

	.hs-service-modal--charity
	.hs-charity-modal__mark {
		margin-bottom: 7px;
	}

	.hs-service-modal--charity
	.hs-charity-modal__eyebrow {
		margin-bottom: 3px;

		font-size: 10.5px;
		letter-spacing: 0.14em;
	}

	.hs-service-modal--charity
	.hs-service-modal__title {
		font-size: clamp(35px, 4vw, 43px);
	}

	.hs-service-modal--charity
	.hs-service-modal__divider {
		margin:
			17px
			0
			20px;
	}

	.hs-service-modal--charity
	.hs-service-modal__description {
		font-size: 14px;
		line-height: 1.55;
	}

	.hs-service-modal--charity
	.hs-service-modal__description p {
		margin-bottom: 14px !important;
	}

	.hs-service-modal--charity
	.hs-service-modal__detail {
		padding:
			11px
			0;
	}

	.hs-service-modal--charity
	.hs-service-modal__detail-content strong {
		font-size: 12.5px;
	}

	.hs-service-modal--charity
	.hs-service-modal__detail-content span {
		font-size: 12.5px;
	}
}

/* =========================================================
   LOW LANDSCAPE VIEWPORT
   Nest Hub, tablet landscape, μικρά laptop
   ========================================================= */

@media (min-width: 768px) and (max-height: 700px) {
	.hs-service-modal--charity
	.hs-service-modal__content {
		padding:
			15px
			22px
			20px
			27px;
	}

	.hs-service-modal--charity
	.hs-charity-modal__mark,
	.hs-service-modal--charity
	.hs-charity-modal__mark > svg {
		width: 27px !important;
		height: 27px !important;
		min-width: 27px !important;
		min-height: 27px !important;
		max-width: 27px !important;
		max-height: 27px !important;
	}

	.hs-service-modal--charity
	.hs-charity-modal__mark {
		margin-bottom: 4px;
	}

	.hs-service-modal--charity
	.hs-charity-modal__eyebrow {
		margin-bottom: 3px;

		font-size: 9.5px;
		letter-spacing: 0.13em;
	}

	.hs-service-modal--charity
	.hs-service-modal__title {
		font-size: 31px;
		line-height: 1;
	}

	.hs-service-modal--charity
	.hs-service-modal__divider {
		width: 68px;

		margin:
			13px
			0
			15px;
	}

	.hs-service-modal--charity
	.hs-service-modal__description {
		font-size: 13px;
		line-height: 1.46;
	}

	.hs-service-modal--charity
	.hs-service-modal__description p {
		margin-bottom: 11px !important;
	}

	.hs-service-modal--charity
	.hs-service-modal__details {
		margin-top: 17px;
	}

	.hs-service-modal--charity
	.hs-service-modal__detail {
		padding:
			9px
			0;
	}

	.hs-service-modal--charity
	.hs-service-modal__detail-content strong {
		font-size: 11.5px;
	}

	.hs-service-modal--charity
	.hs-service-modal__detail-content span {
		font-size: 11.5px;
	}

	.hs-service-modal--charity
	.hs-service-modal__booking {
		margin-top: 13px;
	}
}

/* =========================================================
   P4ALL — MOBILE VIEWPORT
   Πλήρης αντικατάσταση των προηγούμενων mobile blocks
   ========================================================= */

@media (max-width: 767px) {

	/* Ολόκληρο το διαθέσιμο viewport */

	.hs-service-modal--charity {
		align-items: stretch !important;
		justify-content: stretch !important;

		width: 100% !important;
		height: 100dvh !important;

		margin: 0 !important;
		padding: 0 !important;
	}


	/* Όταν είστε συνδεδεμένος και φαίνεται το WordPress bar */

	body.admin-bar .hs-service-modal--charity {
		top: 46px !important;
		bottom: 0 !important;

		height: calc(100dvh - 46px) !important;
	}


	/* Το κρίσιμο fix:
	   ακυρώνει το calc(100vw - 40px) του desktop */

	.hs-service-modal--charity
	.hs-service-modal__window {
		display: block !important;

		width: 100% !important;
		max-width: none !important;

		height: 100% !important;
		max-height: 100% !important;
		min-height: 0 !important;

		margin: 0 !important;
		padding: 0 !important;

		overflow-x: hidden !important;
		overflow-y: auto !important;

		background: #fbfaf7 !important;

		border: 0 !important;
		border-radius: 0 !important;

		transform: none !important;

		-webkit-overflow-scrolling: touch;
		overscroll-behavior: contain;
	}


	/* Εικόνα */

	.hs-service-modal--charity
	.hs-service-modal__media {
		width: 100% !important;

		height: clamp(190px, 28dvh, 235px) !important;
		min-height: 190px !important;

		margin: 0 !important;

		border-radius: 0 !important;
	}

	.hs-service-modal--charity
	.hs-service-modal__media img {
		position: absolute !important;
		inset: 0 !important;

		width: 100% !important;
		height: 100% !important;

		object-fit: cover !important;
		object-position: center center !important;
	}


	/* Περιεχόμενο */

	.hs-service-modal--charity
	.hs-service-modal__content {
		display: block !important;

		width: 100% !important;
		max-width: none !important;

		height: auto !important;
		max-height: none !important;
		min-height: 0 !important;

		margin: 0 !important;

		padding:
			24px
			22px
			34px !important;

		overflow: visible !important;

		background: #fbfaf7 !important;
	}


	/* Κουμπί κλεισίματος */

	.hs-service-modal--charity
	.hs-service-modal__close {
		position: fixed !important;

		top: 14px !important;
		right: 14px !important;
		z-index: 100002 !important;

		width: 38px !important;
		height: 38px !important;

		background: rgba(251, 250, 247, 0.94) !important;

		border-radius: 50% !important;
	}

	body.admin-bar
	.hs-service-modal--charity
	.hs-service-modal__close {
		top: 60px !important;
	}


	/* Φλόγα */

	.hs-service-modal--charity
	.hs-charity-modal__mark,
	.hs-service-modal--charity
	.hs-charity-modal__mark > svg {
		width: 32px !important;
		height: 32px !important;

		min-width: 32px !important;
		min-height: 32px !important;

		max-width: 32px !important;
		max-height: 32px !important;
	}

	.hs-service-modal--charity
	.hs-charity-modal__mark {
		margin:
			0
			0
			6px !important;
	}


	/* Μικρός τίτλος */

	.hs-service-modal--charity
	.hs-charity-modal__eyebrow {
		margin:
			0
			0
			18px !important;

		font-size: 10px !important;
		letter-spacing: 0.13em !important;
		line-height: 1.4 !important;
	}


	/* Κεντρικός τίτλος */

	.hs-service-modal--charity
	#p4all-modal-title {
		max-width: 100% !important;

		margin: 0 !important;

		font-size: clamp(29px, 8.2vw, 35px) !important;
		line-height: 1.04 !important;
		letter-spacing: -0.025em !important;
	}


	/* Διαχωριστική γραμμή */

	.hs-service-modal--charity
	.hs-service-modal__divider {
		width: 72px !important;

		margin:
			18px
			0
			21px !important;
	}


	/* Περιγραφή */

	.hs-service-modal--charity
	.hs-service-modal__description {
		width: 100% !important;
		max-width: none !important;

		font-size: 14.5px !important;
		line-height: 1.6 !important;
	}

	.hs-service-modal--charity
	.hs-service-modal__description p {
		margin:
			0
			0
			15px !important;
	}

	.hs-service-modal--charity
	.hs-service-modal__description p:last-child {
		margin-bottom: 0 !important;
	}


	/* Πληροφορίες */

	.hs-service-modal--charity
	.hs-service-modal__details {
		width: 100% !important;

		margin-top: 22px !important;
	}

	.hs-service-modal--charity
	.hs-service-modal__detail {
		grid-template-columns:
			28px
			minmax(0, 1fr) !important;

		gap: 12px !important;

		padding:
			12px
			0 !important;
	}

	.hs-service-modal--charity
	.hs-service-modal__detail-content strong {
		font-size: 12.5px !important;
	}

	.hs-service-modal--charity
	.hs-service-modal__detail-content span {
		font-size: 13px !important;
		line-height: 1.45 !important;
	}


	/* Κουμπί συμμετοχής */

	.hs-service-modal--charity
	.hs-service-modal__booking {
		width: 100% !important;

		margin-top: 20px !important;

		padding:
			14px
			16px !important;
	}


	/* Σημείωση */

	.hs-service-modal--charity
	.hs-charity-modal__note {
		margin-top: 11px !important;
	}
}


/* =========================================================
   VERY SMALL MOBILE
   ========================================================= */

@media (max-width: 380px) {

	.hs-service-modal--charity
	.hs-service-modal__content {
		padding:
			21px
			17px
			30px !important;
	}

	.hs-service-modal--charity
	.hs-service-modal__media {
		height: 190px !important;
		min-height: 190px !important;
	}

	.hs-service-modal--charity
	#p4all-modal-title {
		font-size: 29px !important;
	}

	.hs-service-modal--charity
	.hs-service-modal__description {
		font-size: 14px !important;
	}
}


/* P4ALL — label/title spacing και μικρότερος τίτλος */
.hs-service-modal--charity .hs-charity-modal__eyebrow {
	margin: 0 0 24px !important;
}

.hs-service-modal--charity #p4all-modal-title {
	margin: 0 !important;
	font-size: clamp(34px, 3vw, 44px) !important;
	line-height: 1.02 !important;
}

/* Tablet */
@media (min-width: 768px) and (max-width: 1100px) {
	.hs-service-modal--charity #p4all-modal-title {
		font-size: clamp(32px, 3.7vw, 39px) !important;
	}
}

/* Mobile */
@media (max-width: 767px) {
	.hs-service-modal--charity .hs-charity-modal__eyebrow {
		margin-bottom: 18px !important;
	}

	.hs-service-modal--charity #p4all-modal-title {
		font-size: clamp(29px, 8.2vw, 35px) !important;
	}
}





























/* =========================================================
   HEALING STUDIO — COMPACT EDITORIAL AMELIA FORM

   ΜΟΝΟ CSS ΤΗΣ ΦΟΡΜΑΣ

   Progress header: #4E5441
   Form body:       #F5F4EF
   Inputs:          #FBFAF7
   Text:            #44443F
   Primary:         #4D5342
   ========================================================= */


/* =========================================================
   1. WRAPPER / VARIABLES
   ========================================================= */

.booking-section .booking-amelia-card {
	--hs-booking-width: 700px;
	--hs-content-height: 275px;

	--hs-progress-bg: #4e5441;
	--hs-card-bg: #f5f4ef;
	--hs-input-bg: #fbfaf7;
	--hs-input-hover: #fdfcf9;

	--hs-text: #44443f;
	--hs-muted: rgba(68, 68, 63, 0.62);

	--hs-primary: #4d5342;
	--hs-primary-hover: #424738;

	--hs-border: rgba(79, 84, 65, 0.17);
	--hs-line: rgba(79, 84, 65, 0.11);

	position: relative;

	width: 100%;
	max-width: var(--hs-booking-width);
	min-width: 0;

	margin-right: auto;
	margin-left: auto;
}


/* Αφαιρεί παλιά glass effects */

.booking-section .booking-amelia-card::before,
.booking-section .booking-amelia-card::after {
	content: none !important;
	display: none !important;
}


/* =========================================================
   2. LOCAL RESET
   ========================================================= */

.booking-section .booking-amelia-card,
.booking-section .booking-amelia-card *,
.booking-section .booking-amelia-card *::before,
.booking-section .booking-amelia-card *::after {
	box-sizing: border-box;
}

.booking-section
.booking-amelia-card
> .kt-inside-inner-col,
.booking-section
.booking-amelia-card
.amelia-v2-booking {
	width: 100%;
	min-width: 0;
}


/* =========================================================
   3. ROOT CARD
   ========================================================= */

.booking-section
.booking-amelia-card
#amelia-container.am-fs__wrapper {
	--am-c-primary: var(--hs-primary) !important;

	--am-c-main-bgr: var(--hs-card-bg) !important;
	--am-c-main-heading-text: var(--hs-text) !important;
	--am-c-main-text: var(--hs-text) !important;

	--am-c-sb-bgr: var(--hs-progress-bg) !important;
	--am-c-sb-text: #ffffff !important;

	--am-c-inp-bgr: var(--hs-input-bg) !important;
	--am-c-inp-border: var(--hs-border) !important;
	--am-c-inp-text: var(--hs-text) !important;
	--am-c-inp-placeholder: rgba(68, 68, 63, 0.50) !important;

	--am-c-drop-bgr: var(--hs-input-bg) !important;
	--am-c-drop-text: var(--hs-text) !important;

	--am-c-btn-prim: var(--hs-primary) !important;
	--am-c-btn-prim-text: #ffffff !important;

	--am-c-btn-sec: #e8e7e0 !important;
	--am-c-btn-sec-text: var(--hs-text) !important;

	--am-font-family: inherit !important;
	--am-brad-main: 10px !important;

	display: grid !important;
	grid-template-columns: minmax(0, 1fr) !important;
	grid-template-rows: auto auto !important;

	width: 100% !important;
	max-width: var(--hs-booking-width) !important;
	min-width: 0 !important;

	height: auto !important;
	min-height: 0 !important;
	max-height: none !important;

	margin: 0 auto !important;

	background: var(--hs-card-bg) !important;
	background-image: none !important;

	-webkit-backdrop-filter: none !important;
	backdrop-filter: none !important;

	border: 1px solid var(--hs-border) !important;
	border-radius: 10px !important;

	box-shadow:
		0 14px 30px rgba(68, 68, 63, 0.055),
		0 3px 8px rgba(68, 68, 63, 0.025) !important;

	overflow: hidden !important;
}

.booking-section
.booking-amelia-card
#amelia-container.am-fs__wrapper::before,
.booking-section
.booking-amelia-card
#amelia-container.am-fs__wrapper::after {
	content: none !important;
	display: none !important;
}


/* =========================================================
   4. ΠΑΝΩ ΜΕΡΟΣ — PROGRESS STEPS
   ========================================================= */

.booking-section
.booking-amelia-card
.am-fs-sb {
	grid-column: 1 !important;
	grid-row: 1 !important;

	display: block !important;

	width: 100% !important;
	max-width: none !important;
	min-width: 0 !important;

	height: auto !important;
	min-height: 0 !important;

	padding: 21px 36px 17px !important;

	background: var(--hs-progress-bg) !important;
	background-image: none !important;

	border-right: 0 !important;
	border-bottom:
		1px solid
		rgba(255, 255, 255, 0.14) !important;

	-webkit-backdrop-filter: none !important;
	backdrop-filter: none !important;
}


/* =========================================================
   5. STEPS WRAPPER
   ========================================================= */

.booking-section
.booking-amelia-card
.am-fs-sb__step-wrapper {
	counter-reset: hs-booking-step;

	position: relative;

	display: flex !important;
	align-items: flex-start !important;

	width: 100% !important;
	max-width: 610px !important;
	min-width: 0 !important;

	margin-right: auto !important;
	margin-left: auto !important;

	gap: 0 !important;
}

.booking-section
.booking-amelia-card
.am-fs-sb__step-wrapper::before {
	display: none !important;
}


/* =========================================================
   6. INDIVIDUAL STEPS
   ========================================================= */

.booking-section
.booking-amelia-card
.am-fs-sb__step {
	position: relative;
	z-index: 1;

	flex: 1 1 0 !important;

	width: auto !important;
	min-width: 0 !important;

	margin: 0 !important;
	padding: 0 !important;
}

.booking-section
.booking-amelia-card
.am-fs-sb__step:not(:last-child)::after {
	content: "";

	position: absolute;
	z-index: -1;

	top: 15px;
	left: 50%;

	width: 100%;
	height: 1px;

	background:
		rgba(255, 255, 255, 0.28) !important;
}

.booking-section
.booking-amelia-card
.am-fs-sb__step-inner {
	counter-increment: hs-booking-step;

	display: flex !important;
	flex-direction: column !important;
	align-items: center !important;
	justify-content: flex-start !important;

	width: 100% !important;
	min-height: 54px !important;

	margin: 0 !important;
	padding: 0 4px !important;

	gap: 7px !important;

	background: transparent !important;

	border: 0 !important;
	border-radius: 0 !important;
}


/* =========================================================
   7. STEP NUMBERS
   ========================================================= */

.booking-section
.booking-amelia-card
.am-fs-sb__step-inner::before {
	content: counter(hs-booking-step);

	display: flex;
	align-items: center;
	justify-content: center;

	width: 31px;
	height: 31px;

	color: rgba(255, 255, 255, 0.82) !important;

	background:
		rgba(255, 255, 255, 0.10) !important;

	border:
		1px solid
		rgba(255, 255, 255, 0.32) !important;

	border-radius: 50%;

	font-family: inherit;
	font-size: 11px;
	font-weight: 500;
	line-height: 1;

	box-shadow: none !important;
}


/* Active step */

.booking-section
.booking-amelia-card
.am-fs-sb__step:has(
	.am-fs-sb__step-checker-selected
)
.am-fs-sb__step-inner::before {
	color: var(--hs-progress-bg) !important;

	background: #f5f4ef !important;

	border-color: #f5f4ef !important;

	box-shadow: none !important;
}


/* Hide Amelia default icons */

.booking-section
.booking-amelia-card
.am-fs-sb__step-icon,
.booking-section
.booking-amelia-card
.am-fs-sb__step-checker {
	display: none !important;
}


/* =========================================================
   8. STEP LABELS
   ========================================================= */

.booking-section
.booking-amelia-card
.am-fs-sb__step-heading {
	max-width: 120px;

	margin: 0 !important;

	color:
		rgba(255, 255, 255, 0.60) !important;

	font-family: inherit !important;
	font-size: 7.5px !important;
	font-weight: 600 !important;
	letter-spacing: 0.025em !important;
	line-height: 1.2 !important;
	text-align: center !important;
	text-transform: uppercase;

	overflow-wrap: anywhere;
}

.booking-section
.booking-amelia-card
.am-fs-sb__step:has(
	.am-fs-sb__step-checker-selected
)
.am-fs-sb__step-heading {
	color: #ffffff !important;
}

.booking-section
.booking-amelia-card
.am-fs-sb__step-selection__wrapper,
.booking-section
.booking-amelia-card
.am-fs-sb__footer {
	display: none !important;
}


/* =========================================================
   9. MAIN FORM AREA
   ========================================================= */

.booking-section
.booking-amelia-card
.am-fs__main {
	grid-column: 1 !important;
	grid-row: 2 !important;

	display: block !important;

	width: 100% !important;
	max-width: none !important;
	min-width: 0 !important;

	height: auto !important;
	min-height: 0 !important;
	max-height: none !important;

	margin: 0 !important;

	background: var(--hs-card-bg) !important;
	background-image: none !important;

	overflow: hidden !important;
}

.booking-section
.booking-amelia-card
.am-fs__main-inner {
	display: flex !important;
	flex-direction: column !important;

	width: 100% !important;
	min-width: 0 !important;

	height: auto !important;
	min-height: 0 !important;
	max-height: none !important;

	background: var(--hs-card-bg) !important;
	background-image: none !important;

	overflow: hidden !important;
}


/* =========================================================
   10. CURRENT STEP HEADING
   ========================================================= */

.booking-section
.booking-amelia-card
.am-fs__main-heading {
	flex: 0 0 auto !important;

	display: flex !important;
	align-items: center !important;

	width: 100% !important;
	min-height: 0 !important;

	padding: 13px 24px 11px !important;

	background: var(--hs-card-bg) !important;

	border-bottom:
		1px solid
		var(--hs-line) !important;
}

.booking-section
.booking-amelia-card
.am-fs__main-heading-inner-title {
	color: var(--hs-text) !important;

	font-family:
		"Cormorant Garamond",
		Georgia,
		serif !important;

	font-size: 22px !important;
	font-weight: 500 !important;
	letter-spacing: -0.012em !important;
	line-height: 1.05 !important;
}


/* Back button */

.booking-section
.booking-amelia-card
.am-fs__main-heading
button {
	width: 35px !important;
	min-width: 35px !important;

	height: 35px !important;
	min-height: 35px !important;

	margin-right: 11px !important;
	padding: 0 !important;

	color: var(--hs-text) !important;

	background: #e8e7e0 !important;

	border:
		1px solid
		rgba(79, 84, 65, 0.13) !important;

	border-radius: 5px !important;

	box-shadow: none !important;
}


/* =========================================================
   11. MAIN CONTENT — COMPACT VIEWPORT

   Το calendar και οι διαθέσιμες ώρες παραμένουν μέσα
   σε σταθερό viewport με εσωτερικό scroll.
   ========================================================= */

.booking-section
.booking-amelia-card
.am-fs__main-content {
	flex: 0 1 auto !important;

	display: block !important;

	width: 100% !important;
	min-width: 0 !important;

	height: auto !important;
	min-height: 0 !important;
	max-height: var(--hs-content-height) !important;

	padding: 15px 22px 17px !important;

	background: var(--hs-card-bg) !important;
	background-image: none !important;

	overflow-x: hidden !important;
	overflow-y: auto !important;

	scrollbar-gutter: stable;
	overscroll-behavior: contain;
	-webkit-overflow-scrolling: touch;
}

.booking-section
.booking-amelia-card
.am-fs__main-content > * {
	max-width: 100% !important;
}

.booking-section
.booking-amelia-card
.am-fs__main-content > *:last-child {
	margin-bottom: 10px !important;
}

/* Compact scrollbar */

.booking-section
.booking-amelia-card
.am-fs__main-content {
	scrollbar-width: thin;
	scrollbar-color: rgba(77, 83, 66, 0.35) transparent;
}

.booking-section
.booking-amelia-card
.am-fs__main-content::-webkit-scrollbar {
	width: 6px;
}

.booking-section
.booking-amelia-card
.am-fs__main-content::-webkit-scrollbar-track {
	background: transparent;
}

.booking-section
.booking-amelia-card
.am-fs__main-content::-webkit-scrollbar-thumb {
	background: rgba(77, 83, 66, 0.32);
	border-radius: 20px;
}


/* =========================================================
   12. FORM LABELS
   ========================================================= */

.booking-section
.booking-amelia-card
.el-form-item {
	margin-bottom: 11px !important;
}

.booking-section
.booking-amelia-card
.el-form-item__label,
.booking-section
.booking-amelia-card
.am-fs__init-form__label {
	height: auto !important;

	padding: 0 !important;
	margin-bottom: 6px !important;

	color: var(--hs-text) !important;

	font-family: inherit !important;
	font-size: 9px !important;
	font-weight: 600 !important;
	letter-spacing: 0.055em !important;
	line-height: 1.3 !important;
	text-transform: uppercase;
}

.booking-section
.booking-amelia-card
.el-form-item.is-required
.el-form-item__label::before {
	color: var(--hs-primary) !important;
}


/* =========================================================
   13. INPUTS / SELECTS
   ========================================================= */

.booking-section
.booking-amelia-card
.el-select,
.booking-section
.booking-amelia-card
.am-select,
.booking-section
.booking-amelia-card
.am-select-wrapper {
	width: 100% !important;
	max-width: 100% !important;
	min-width: 0 !important;
}

.booking-section
.booking-amelia-card
.el-select__wrapper,
.booking-section
.booking-amelia-card
.el-input__wrapper {
	width: 100% !important;
	min-height: 40px !important;

	padding: 0 12px !important;

	background:
		var(--hs-input-bg) !important;

	background-image: none !important;

	border:
		1px solid
		var(--hs-border) !important;

	border-radius: 5px !important;

	box-shadow: none !important;

	transition:
		background-color 180ms ease,
		border-color 180ms ease,
		box-shadow 180ms ease;
}

.booking-section
.booking-amelia-card
.el-select__wrapper:hover,
.booking-section
.booking-amelia-card
.el-input__wrapper:hover {
	background:
		var(--hs-input-hover) !important;

	border-color:
		rgba(79, 84, 65, 0.34) !important;
}

.booking-section
.booking-amelia-card
.el-select__wrapper.is-focused,
.booking-section
.booking-amelia-card
.el-input__wrapper.is-focus {
	background:
		var(--hs-input-hover) !important;

	border-color:
		var(--hs-primary) !important;

	box-shadow:
		0 0 0 3px
		rgba(77, 83, 66, 0.07) !important;
}

.booking-section
.booking-amelia-card
.el-select__input,
.booking-section
.booking-amelia-card
.el-input__inner,
.booking-section
.booking-amelia-card
.el-select__placeholder {
	color: var(--hs-text) !important;

	font-family: inherit !important;
	font-size: 12px !important;
}

.booking-section
.booking-amelia-card
.el-select__placeholder {
	color:
		rgba(68, 68, 63, 0.52) !important;
}

.booking-section
.booking-amelia-card
.el-select__suffix,
.booking-section
.booking-amelia-card
.el-input__suffix {
	color: var(--hs-primary) !important;
}


/* =========================================================
   14. COMPACT CALENDAR CONTROLS
   ========================================================= */

.booking-section
.booking-amelia-card
.am-fs__main-content
[class*="calendar"] {
	width: 100% !important;
	max-width: 100% !important;

	margin-bottom: 8px !important;
}

.booking-section
.booking-amelia-card
.am-fs__main-content
[class*="calendar"]
.el-select__wrapper,
.booking-section
.booking-amelia-card
.am-fs__main-content
[class*="calendar"]
.el-input__wrapper {
	min-height: 38px !important;
}


/* =========================================================
   15. COMPACT CALENDAR TABLE
   ========================================================= */

.booking-section
.booking-amelia-card
.am-fs__main-content
[class*="calendar"]
table {
	width: 100% !important;

	border-collapse: separate !important;
	border-spacing: 4px !important;

	table-layout: fixed !important;
}

.booking-section
.booking-amelia-card
.am-fs__main-content
[class*="calendar"]
th {
	height: 20px !important;

	padding: 1px !important;

	font-size: 10px !important;
	font-weight: 500 !important;
	line-height: 1.1 !important;
}

.booking-section
.booking-amelia-card
.am-fs__main-content
[class*="calendar"]
td {
	height: 36px !important;
	min-height: 36px !important;

	padding: 1px !important;
}


/* =========================================================
   16. COMPACT ARIA CALENDAR GRID
   ========================================================= */

.booking-section
.booking-amelia-card
.am-fs__main-content
[class*="calendar"]
[role="grid"] {
	grid-auto-rows: 36px !important;

	row-gap: 5px !important;
	column-gap: 5px !important;
}

.booking-section
.booking-amelia-card
.am-fs__main-content
[class*="calendar"]
[role="row"] {
	min-height: 36px !important;
}

.booking-section
.booking-amelia-card
.am-fs__main-content
[class*="calendar"]
[role="gridcell"] {
	height: 36px !important;
	min-height: 36px !important;

	padding: 1px !important;
}


/* =========================================================
   17. COMPACT DATE CELLS
   ========================================================= */

.booking-section
.booking-amelia-card
.am-fs__main-content
[class*="calendar"]
td button,
.booking-section
.booking-amelia-card
.am-fs__main-content
[class*="calendar"]
[role="gridcell"] button,
.booking-section
.booking-amelia-card
.am-fs__main-content
[class*="calendar"]
button[class*="day"],
.booking-section
.booking-amelia-card
.am-fs__main-content
[class*="calendar"]
[class*="date-cell"],
.booking-section
.booking-amelia-card
.am-fs__main-content
[class*="calendar"]
[class*="calendar-cell"] {
	width: 100% !important;

	height: 36px !important;
	min-height: 36px !important;
	max-height: 36px !important;

	padding: 2px !important;

	font-family: inherit !important;
	font-size: 11px !important;
	line-height: 1 !important;

	border-radius: 4px !important;
}


/* Generic Amelia date tiles */

.booking-section
.booking-amelia-card
.am-fs__main-content
[class*="calendar-day"]:not(
	[class*="weekday"]
):not(
	[class*="week-day"]
),
.booking-section
.booking-amelia-card
.am-fs__main-content
[class*="calendar-date"],
.booking-section
.booking-amelia-card
.am-fs__main-content
[class*="date-item"] {
	height: 36px !important;
	min-height: 36px !important;
	max-height: 36px !important;

	padding: 2px !important;

	font-size: 11px !important;
	line-height: 1 !important;

	border-radius: 4px !important;
}


/* =========================================================
   18. CALENDAR GAPS
   ========================================================= */

.booking-section
.booking-amelia-card
.am-fs__main-content
[class*="calendar-header"],
.booking-section
.booking-amelia-card
.am-fs__main-content
[class*="calendar-top"],
.booking-section
.booking-amelia-card
.am-fs__main-content
[class*="month-year"] {
	margin-bottom: 6px !important;
}

.booking-section
.booking-amelia-card
.am-fs__main-content
[class*="timezone"] {
	margin-top: 3px !important;
	margin-bottom: 5px !important;

	font-size: 9px !important;
}


/* =========================================================
   19. TIME SLOTS
   ========================================================= */

.booking-section
.booking-amelia-card
.am-fs__main-content
[class*="time-slot"],
.booking-section
.booking-amelia-card
.am-fs__main-content
[class*="timeslot"],
.booking-section
.booking-amelia-card
.am-fs__main-content
[class*="timeSlot"],
.booking-section
.booking-amelia-card
.am-fs__main-content
[class*="appointment-time"] {
	min-height: 34px !important;
	height: auto !important;

	padding: 7px 9px !important;

	font-size: 11px !important;
	line-height: 1.2 !important;

	border-radius: 4px !important;
}


/* =========================================================
   20. FOOTER
   ========================================================= */

.booking-section
.booking-amelia-card
.am-fs__main-footer {
	position: static !important;

	left: auto !important;
	right: auto !important;
	bottom: auto !important;

	flex: 0 0 auto !important;

	display: flex !important;
	align-items: center !important;
	justify-content: flex-end !important;

	width: 100% !important;
	min-height: 0 !important;

	margin: 0 !important;
	padding: 10px 22px 12px !important;

	background: var(--hs-card-bg) !important;

	border-top:
		1px solid
		var(--hs-line) !important;

	z-index: 5;
}


/* =========================================================
   21. PRIMARY BUTTON
   ========================================================= */

.booking-section
.booking-amelia-card
.am-button {
	font-family: inherit !important;
}

.booking-section
.booking-amelia-card
.am-button--primary,
.booking-section
.booking-amelia-card
.am-button-continue {
	width: auto !important;

	min-width: 135px !important;
	min-height: 39px !important;

	padding: 8px 19px !important;

	color: #ffffff !important;

	background:
		var(--hs-primary) !important;

	background-image: none !important;

	border:
		1px solid
		var(--hs-primary) !important;

	border-radius: 5px !important;

	box-shadow: none !important;

	transition:
		background-color 180ms ease,
		border-color 180ms ease,
		transform 180ms ease;
}

.booking-section
.booking-amelia-card
.am-button--primary:hover,
.booking-section
.booking-amelia-card
.am-button-continue:hover {
	background:
		var(--hs-primary-hover) !important;

	border-color:
		var(--hs-primary-hover) !important;

	transform: translateY(-1px);
}

.booking-section
.booking-amelia-card
.am-button__inner {
	color: #ffffff !important;

	font-family: inherit !important;
	font-size: 9px !important;
	font-weight: 600 !important;
	letter-spacing: 0.06em !important;
	text-transform: uppercase;
}


/* =========================================================
   22. SECONDARY BUTTONS
   ========================================================= */

.booking-section
.booking-amelia-card
.am-button--secondary {
	min-height: 38px !important;

	color: var(--hs-text) !important;

	background: #e8e7e0 !important;

	border:
		1px solid
		rgba(79, 84, 65, 0.13) !important;

	border-radius: 5px !important;

	box-shadow: none !important;
}


/* =========================================================
   23. ACTIVE STATES
   ========================================================= */

.booking-section
.booking-amelia-card
.am-fs__main
[class*="selected"],
.booking-section
.booking-amelia-card
.am-fs__main
[class*="active"] {
	--am-c-primary:
		var(--hs-primary) !important;
}

.booking-section
.booking-amelia-card
.el-checkbox__input.is-checked
.el-checkbox__inner,
.booking-section
.booking-amelia-card
.el-radio__input.is-checked
.el-radio__inner {
	background:
		var(--hs-primary) !important;

	border-color:
		var(--hs-primary) !important;
}


/* =========================================================
   24. TABLET
   ========================================================= */

@media (min-width: 768px) and (max-width: 1024px) {

	.booking-section .booking-amelia-card {
		--hs-booking-width: 560px;
		--hs-content-height: 255px;
	}

	.booking-section
	.booking-amelia-card
	.am-fs-sb {
		padding: 17px 20px 13px !important;
	}

	.booking-section
	.booking-amelia-card
	.am-fs-sb__step-wrapper {
		max-width: 510px !important;
	}

	.booking-section
	.booking-amelia-card
	.am-fs__main-heading {
		padding: 11px 17px 9px !important;
	}

	.booking-section
	.booking-amelia-card
	.am-fs__main-content {
		padding: 11px 16px 13px !important;
	}

	.booking-section
	.booking-amelia-card
	.am-fs__main-footer {
		padding: 8px 16px 10px !important;
	}
}

/* =========================================================
   25. MOBILE
   ========================================================= */

@media (max-width: 767px) {

	.booking-section .booking-amelia-card {
		--hs-booking-width: 100%;
		--hs-content-height: none;

		width: 100%;
		max-width: none;
	}

	.booking-section
	.booking-amelia-card
	#amelia-container.am-fs__wrapper {
		width: 100% !important;
		max-width: none !important;

		border-radius: 8px !important;
	}

	.booking-section
	.booking-amelia-card
	.am-fs-sb {
		padding: 17px 6px 13px !important;
	}

	.booking-section
	.booking-amelia-card
	.am-fs-sb__step-wrapper {
		max-width: none !important;
	}

	.booking-section
	.booking-amelia-card
	.am-fs-sb__step-inner {
		min-height: 47px !important;

		padding: 0 1px !important;

		gap: 6px !important;
	}
	.booking-section
	.booking-amelia-card
	.am-fs-sb__step-inner::before {
		width: 28px;
		height: 28px;

		font-size: 10px;
	}

	.booking-section
	.booking-amelia-card
	.am-fs-sb__step:not(:last-child)::after {
		top: 13.5px;
	}

	.booking-section
	.booking-amelia-card
	.am-fs-sb__step-heading {
		max-width: 68px;

		font-size: 6.5px !important;
		line-height: 1.15 !important;
	}

	.booking-section
	.booking-amelia-card
	.am-fs__main-heading {
		padding: 12px 12px 9px !important;
	}

	.booking-section
	.booking-amelia-card
	.am-fs__main-heading-inner-title {
		font-size: 20px !important;
	}

	.booking-section
	.booking-amelia-card
	.am-fs__main-content {
		max-height: none !important;
		padding: 13px 12px 15px !important;
		overflow-y: visible !important;
		scrollbar-gutter: auto;
	}

	.booking-section
	.booking-amelia-card
	.am-fs__main-footer {
		padding: 9px 12px 12px !important;
	}

	.booking-section
	.booking-amelia-card
	.am-button--primary,
	.booking-section
	.booking-amelia-card
	.am-button-continue {
		width: 100% !important;
		min-width: 0 !important;
	}

	/*
	 * Στο mobile κρατάμε τα κελιά λίγο μεγαλύτερα
	 * για να πατιούνται σωστά.
	 */

	.booking-section
	.booking-amelia-card
	.am-fs__main-content
	[class*="calendar"]
	td,
	.booking-section
	.booking-amelia-card
	.am-fs__main-content
	[class*="calendar"]
	[role="gridcell"],
	.booking-section
	.booking-amelia-card
	.am-fs__main-content
	[class*="calendar"]
	td button,
	.booking-section
	.booking-amelia-card
	.am-fs__main-content
	[class*="calendar"]
	[role="gridcell"] button {
		height: 40px !important;
		min-height: 40px !important;
		max-height: 40px !important;
	}
}


/* =========================================================
   26. VERY SMALL MOBILE
   ========================================================= */

@media (max-width: 390px) {

	.booking-section
	.booking-amelia-card
	.am-fs-sb__step-heading {
		font-size: 6px !important;
	}

	.booking-section
	.booking-amelia-card
	.am-fs__main-heading,
	.booking-section
	.booking-amelia-card
	.am-fs__main-content,
	.booking-section
	.booking-amelia-card
	.am-fs__main-footer {
		padding-right: 9px !important;
		padding-left: 9px !important;
	}
}

















/* =========================================================
   HEALING STUDIO — ABOUT US MODAL
   Compact editorial layout — fully responsive

   Εφαρμόζεται αποκλειστικά στο:
   .hs-service-modal--about
   ========================================================= */


/* =========================================================
   1. OVERLAY
   ========================================================= */

.hs-service-modal--about {
	padding: 24px;
}

.hs-service-modal--about
.hs-service-modal__backdrop {
	background: rgba(39, 43, 35, 0.43);

	-webkit-backdrop-filter: blur(6px);
	backdrop-filter: blur(6px);
}


/* =========================================================
   2. MODAL WINDOW
   ========================================================= */

.hs-service-modal--about
.hs-service-modal__window {
	display: grid;
	grid-template-columns:
		minmax(0, 43%)
		minmax(0, 57%);
	align-items: stretch;

	width: min(1030px, calc(100vw - 48px));

	/*
	 * Δεν αφήνει το modal να καταλαμβάνει
	 * όλο το ύψος της οθόνης.
	 */
	height: min(720px, calc(100vh - 80px));
	height: min(720px, calc(100dvh - 80px));

	max-height: min(720px, calc(100vh - 80px));
	max-height: min(720px, calc(100dvh - 80px));

	padding: 12px;

	overflow: hidden;

	background: #fbfaf7;

	border:
		1px solid
		rgba(202, 195, 183, 0.70);

	border-radius: 6px;

	box-shadow:
		0 24px 65px rgba(31, 34, 27, 0.18),
		0 5px 16px rgba(31, 34, 27, 0.07);

	transform:
		translateY(9px)
		scale(0.992);

	transition:
		transform 0.28s ease,
		opacity 0.25s ease;
}

.hs-service-modal--about.is-open
.hs-service-modal__window {
	transform:
		translateY(0)
		scale(1);
}


/* =========================================================
   3. CLOSE BUTTON
   ========================================================= */

.hs-service-modal--about
.hs-service-modal__close {
	top: 19px;
	right: 20px;

	width: 32px;
	height: 32px;

	margin: 0;
	padding: 0;

	color: #555b48;
	background: transparent;

	border: 0;
	border-radius: 0;

	font-size: 31px;
	font-weight: 300;
	line-height: 1;

	opacity: 0.90;
}

.hs-service-modal--about
.hs-service-modal__close:hover {
	opacity: 0.62;
	transform: rotate(3deg);
}


/* =========================================================
   4. LEFT IMAGE
   ========================================================= */

.hs-service-modal--about
.hs-service-modal__media {
	position: relative;
	align-self: stretch;

	width: 100%;
	height: 100%;

	min-width: 0;
	min-height: 0;

	overflow: hidden;

	background: #e9e3d8;

	border-radius: 3px;
}

.hs-service-modal--about
.hs-service-modal__media img {
	position: absolute;
	inset: 0;

	display: block;

	width: 100%;
	height: 100%;

	margin: 0;
	padding: 0;

	object-fit: cover;
	object-position: center center;
}


/* =========================================================
   5. RIGHT CONTENT
   ========================================================= */

.hs-service-modal--about
.hs-service-modal__content {
	width: 100%;
	height: 100%;

	min-width: 0;
	min-height: 0;

	padding:
		28px
		36px
		28px
		42px;

	overflow-x: hidden;
	overflow-y: auto;

	background: #fbfaf7;

	overscroll-behavior: contain;

	scrollbar-width: thin;
	scrollbar-color: #c8c1b5 transparent;
}

.hs-service-modal--about
.hs-service-modal__content::-webkit-scrollbar {
	width: 5px;
}

.hs-service-modal--about
.hs-service-modal__content::-webkit-scrollbar-track {
	background: transparent;
}

.hs-service-modal--about
.hs-service-modal__content::-webkit-scrollbar-thumb {
	background: #c8c1b5;
	border-radius: 20px;
}


/* =========================================================
   6. TITLE
   ========================================================= */

.hs-service-modal--about
.hs-service-modal__title {
	max-width: 470px;

	margin: 0 !important;
	padding: 0;

	color: #515744;

	font-family:
		var(--global-heading-font-family),
		"Cormorant Garamond",
		Georgia,
		serif;

	font-size: clamp(43px, 3.7vw, 53px);
	font-weight: 400;
	letter-spacing: -0.028em;
	line-height: 0.98;
}


/* =========================================================
   7. DIVIDER
   ========================================================= */

.hs-service-modal--about
.hs-service-modal__divider {
	width: 72px;
	height: 1px;

	margin:
		16px
		0
		22px;

	background: #d4bd91;
}


/* =========================================================
   8. DESCRIPTION
   ========================================================= */

.hs-service-modal--about
.hs-service-modal__description {
	max-width: 535px;

	color: #575850;

	font-family: inherit;
	font-size: 16px;
	font-weight: 400;
	line-height: 1.65;
}

.hs-service-modal--about
.hs-service-modal__description p {
	display: block;

	margin:
		0
		0
		17px !important;

	padding: 0;
}

.hs-service-modal--about
.hs-service-modal__description p:last-child {
	margin-bottom: 0 !important;
}


/* =========================================================
   9. BOOKING BUTTON
   ========================================================= */

.hs-service-modal--about
.hs-service-modal__booking {
	display: flex;
	align-items: center;
	justify-content: center;

	width: 100%;
	min-height: 44px;

	margin-top: 30px;
	padding: 12px 18px;

	color: #ffffff !important;
	-webkit-text-fill-color: #ffffff !important;

	background: #68714e;

	border: 0;
	border-radius: 3px;

	font-family: inherit;
	font-size: 13px;
	font-weight: 500;
	letter-spacing: 0.055em;
	line-height: 1.2;
	text-transform: uppercase;

	box-shadow: none;

	transition:
		background-color 0.2s ease,
		transform 0.2s ease;
}

.hs-service-modal--about
.hs-service-modal__booking:hover {
	background: #5b6343;
	transform: translateY(-1px);
}

.hs-service-modal--about
.hs-service-modal__booking:focus-visible {
	outline: 1px solid #596349;
	outline-offset: 3px;
}


/* Κρύβεται μόνο το icon */

.hs-service-modal--about
.hs-service-modal__booking-icon {
	display: none !important;
}


/* Κείμενο κουμπιού */

.hs-service-modal--about
.hs-service-modal__booking
> span:not(.hs-service-modal__booking-icon) {
	display: inline-flex;
	align-items: center;
	justify-content: center;

	margin: 0;
	padding: 0;

	color: #ffffff !important;
	-webkit-text-fill-color: #ffffff !important;

	font: inherit;
	letter-spacing: inherit;
	line-height: inherit;
	text-transform: inherit;

	visibility: visible;
	opacity: 1;
}


/* =========================================================
   10. NOTE BELOW BUTTON
   ========================================================= */

.hs-service-modal--about
.hs-service-modal__note {
	display: block;

	width: 100%;

	margin:
		11px
		0
		0 !important;

	padding: 0;

	color: #72736b;

	font-family: inherit;
	font-size: 13px;
	font-weight: 400;
	line-height: 1.5;
	text-align: center;
}


/* =========================================================
   11. TABLET
   768px έως 1100px
   ========================================================= */

@media (min-width: 768px) and (max-width: 1100px) {

	.hs-service-modal--about {
		padding: 14px;
	}

	.hs-service-modal--about
	.hs-service-modal__window {
		grid-template-columns:
			minmax(0, 40%)
			minmax(0, 60%);

		width: calc(100vw - 28px);

		height: min(650px, calc(100vh - 48px));
		height: min(650px, calc(100dvh - 48px));

		max-height: min(650px, calc(100vh - 48px));
		max-height: min(650px, calc(100dvh - 48px));

		padding: 10px;
	}

	.hs-service-modal--about
	.hs-service-modal__content {
		padding:
			24px
			27px
			25px
			31px;
	}

	.hs-service-modal--about
	.hs-service-modal__close {
		top: 16px;
		right: 17px;
	}

	.hs-service-modal--about
	.hs-service-modal__title {
		font-size: clamp(39px, 4.6vw, 46px);
	}

	.hs-service-modal--about
	.hs-service-modal__divider {
		width: 66px;

		margin:
			15px
			0
			19px;
	}

	.hs-service-modal--about
	.hs-service-modal__description {
		font-size: 15px;
		line-height: 1.6;
	}

	.hs-service-modal--about
	.hs-service-modal__description p {
		margin-bottom: 15px !important;
	}

	.hs-service-modal--about
	.hs-service-modal__booking {
		min-height: 42px;

		margin-top: 26px;
		padding: 11px 15px;

		font-size: 12.5px;
	}

	.hs-service-modal--about
	.hs-service-modal__note {
		margin-top: 10px !important;

		font-size: 12.5px;
	}
}


/* =========================================================
   12. LOW-HEIGHT LANDSCAPE
   Tablet landscape / μικρά laptop
   ========================================================= */

@media (min-width: 768px) and (max-height: 700px) {

	.hs-service-modal--about {
		padding: 9px;
	}

	.hs-service-modal--about
	.hs-service-modal__window {
		grid-template-columns:
			minmax(0, 39%)
			minmax(0, 61%);

		width: min(960px, calc(100vw - 18px));

		height: calc(100vh - 28px);
		height: calc(100dvh - 28px);

		max-height: calc(100vh - 28px);
		max-height: calc(100dvh - 28px);

		padding: 9px;
	}

	.hs-service-modal--about
	.hs-service-modal__content {
		padding:
			16px
			23px
			19px
			27px;
	}

	.hs-service-modal--about
	.hs-service-modal__close {
		top: 12px;
		right: 14px;

		width: 29px;
		height: 29px;

		font-size: 28px;
	}

	.hs-service-modal--about
	.hs-service-modal__title {
		font-size: 36px;
	}

	.hs-service-modal--about
	.hs-service-modal__divider {
		width: 60px;

		margin:
			12px
			0
			15px;
	}

	.hs-service-modal--about
	.hs-service-modal__description {
		font-size: 14px;
		line-height: 1.52;
	}

	.hs-service-modal--about
	.hs-service-modal__description p {
		margin-bottom: 12px !important;
	}

	.hs-service-modal--about
	.hs-service-modal__booking {
		min-height: 39px;

		margin-top: 20px;
		padding: 10px 14px;

		font-size: 12px;
	}

	.hs-service-modal--about
	.hs-service-modal__note {
		margin-top: 8px !important;

		font-size: 12px;
	}
}


/* =========================================================
   13. MOBILE
   Μέχρι 767px
   ========================================================= */

@media (max-width: 767px) {

	.hs-service-modal--about {
		align-items: center;
		justify-content: center;

		padding: 8px;
	}

	.hs-service-modal--about
	.hs-service-modal__window {
		display: block;

		width: 100%;
		height: calc(100vh - 16px);
		height: calc(100dvh - 16px);

		max-width: none;
		max-height: calc(100vh - 16px);
		max-height: calc(100dvh - 16px);

		padding: 8px;

		overflow-x: hidden;
		overflow-y: auto;

		border-radius: 6px;

		transform: translateY(8px);
	}

	.hs-service-modal--about.is-open
	.hs-service-modal__window {
		transform: translateY(0);
	}

	.hs-service-modal--about
	.hs-service-modal__media {
		width: 100%;
		height: clamp(210px, 30dvh, 260px);

		min-height: 0;

		border-radius: 3px;
	}

	.hs-service-modal--about
	.hs-service-modal__media img {
		object-position: center 45%;
	}

	.hs-service-modal--about
	.hs-service-modal__close {
		top: 15px;
		right: 15px;

		width: 36px;
		height: 36px;

		color: #555b48;

		background:
			rgba(251, 250, 247, 0.92);

		border-radius: 50%;

		font-size: 30px;
	}

	.hs-service-modal--about
	.hs-service-modal__content {
		width: 100%;
		height: auto;

		padding:
			23px
			13px
			28px;

		overflow: visible;
	}

	.hs-service-modal--about
	.hs-service-modal__title {
		max-width: 100%;

		font-size: clamp(37px, 10vw, 44px);
		line-height: 1;
	}

	.hs-service-modal--about
	.hs-service-modal__divider {
		width: 64px;

		margin:
			16px
			0
			20px;
	}

	.hs-service-modal--about
	.hs-service-modal__description {
		max-width: none;

		font-size: 15.5px;
		line-height: 1.65;
	}

	.hs-service-modal--about
	.hs-service-modal__description p {
		margin-bottom: 16px !important;
	}

	.hs-service-modal--about
	.hs-service-modal__booking {
		min-height: 46px;

		margin-top: 24px;
		padding: 13px 16px;

		font-size: 13px;
	}

	.hs-service-modal--about
	.hs-service-modal__note {
		margin-top: 11px !important;

		font-size: 13px;
		line-height: 1.5;
	}
}


/* =========================================================
   14. VERY SMALL MOBILE
   ========================================================= */

@media (max-width: 380px) {

	.hs-service-modal--about
	.hs-service-modal__media {
		height: 205px;
	}

	.hs-service-modal--about
	.hs-service-modal__content {
		padding:
			20px
			11px
			25px;
	}

	.hs-service-modal--about
	.hs-service-modal__title {
		font-size: 35px;
	}

	.hs-service-modal--about
	.hs-service-modal__description {
		font-size: 15px;
	}

	.hs-service-modal--about
	.hs-service-modal__booking {
		margin-top: 22px;

		font-size: 12.5px;
	}

	.hs-service-modal--about
	.hs-service-modal__note {
		font-size: 12.5px;
	}
}


/* =========================================================
   15. REDUCED MOTION
   ========================================================= */

@media (prefers-reduced-motion: reduce) {

	.hs-service-modal--about
	.hs-service-modal__window,
	.hs-service-modal--about
	.hs-service-modal__close,
	.hs-service-modal--about
	.hs-service-modal__booking {
		transition: none;
	}
}








.about-section-title {
	font-variant-numeric: lining-nums proportional-nums;
	font-feature-settings:
		"lnum" 1,
		"pnum" 1;
}














/* =========================================================
   HOME HERO — ΔΕΞΙ SECTION ΜΕ BACKGROUND IMAGE
   Υπάρχουσα κλάση: .inner-column-2

   Δεν αλλάζει το desktop.
   ========================================================= */

.inner-column-2 {
	min-width: 0;
	overflow: hidden;
}


/* =========================================================
   TABLET — iPad portrait / landscape
   ========================================================= */

@media (min-width: 768px) and (max-width: 1024px) {

	.inner-column-2,
	.inner-column-2 > .kt-inside-inner-col {
		width: 100% !important;

		min-height: clamp(430px, 58vw, 590px) !important;
		height: 100% !important;

		background-size: cover !important;
		background-repeat: no-repeat !important;
		background-position: 55% center !important;
	}
}


/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 767px) {

	.inner-column-2,
	.inner-column-2 > .kt-inside-inner-col {
		width: 100% !important;

		min-height: clamp(380px, 105vw, 520px) !important;
		height: auto !important;

		background-size: cover !important;
		background-repeat: no-repeat !important;
		background-position: 58% center !important;
	}
}

























/* =========================================================
   BACH REMEDIES — 38 ITEMS ACCORDION
   ========================================================= */

.bach-remedies,
.bach-remedies *,
.bach-remedies *::before,
.bach-remedies *::after {
	box-sizing: border-box;
}

.bach-remedies {
	--bach-bg: #fbfaf7;
	--bach-hover: #f4f1eb;
	--bach-text: #44443f;
	--bach-muted: #77786f;
	--bach-primary: #596149;
	--bach-border: rgba(89, 97, 73, 0.19);

	width: 100%;
	max-width: 980px;

	margin:
		30px
		auto
		0;
}


/* =========================================================
   TWO-COLUMN LIST
   Collapsed: 10 rows × 2 columns
   Expanded:  19 rows × 2 columns
   ========================================================= */

.bach-remedies__grid {
	display: grid;
	grid-auto-flow: column;

	grid-template-columns:
		repeat(2, minmax(0, 1fr));

	grid-template-rows:
		repeat(10, auto);

	column-gap: 16px;
	row-gap: 0;

	width: 100%;
}

.bach-remedies.is-expanded
.bach-remedies__grid {
	grid-template-rows:
		repeat(19, auto);
}


/* Hidden remedies */

.bach-remedy--extra {
	display: none;
}

.bach-remedies.is-expanded
.bach-remedy--extra {
	display: block;
}


/* =========================================================
   REMEDY ROW
   ========================================================= */

.bach-remedy {
	width: 100%;

	margin: 0 0 -1px;
	padding: 0;

	background: var(--bach-bg);

	border:
		1px solid
		var(--bach-border);

	overflow: hidden;

	transition:
		background-color 180ms ease,
		border-color 180ms ease;
}

.bach-remedy:hover,
.bach-remedy[open] {
	background: var(--bach-hover);
	border-color:
		rgba(89, 97, 73, 0.31);
}


/* =========================================================
   SUMMARY
   ========================================================= */

.bach-remedy summary {
	display: grid;

	grid-template-columns:
		38px
		minmax(0, 1fr)
		22px;

	align-items: center;

	width: 100%;
	min-height: 52px;

	margin: 0;
	padding:
		0
		15px;

	color: var(--bach-text);

	cursor: pointer;

	list-style: none;
}

.bach-remedy summary::-webkit-details-marker {
	display: none;
}

.bach-remedy summary::marker {
	display: none;
	content: "";
}


/* Number */

.bach-remedy__number {
	color: var(--bach-muted);

	font-size: 12px;
	font-weight: 500;
	line-height: 1;
}


/* Name */

.bach-remedy__name {
	color: var(--bach-text);

	font-family: inherit;
	font-size: 14px;
	font-weight: 500;
	letter-spacing: 0.005em;
	line-height: 1.25;
}


/* Plus / minus */

.bach-remedy summary::after {
	content: "+";

	display: flex;
	align-items: center;
	justify-content: center;

	width: 22px;
	height: 22px;

	color: var(--bach-primary);

	font-size: 17px;
	font-weight: 400;
	line-height: 1;

	transition: transform 180ms ease;
}

.bach-remedy[open] summary::after {
	content: "−";
}


/* Keyboard focus */

.bach-remedy summary:focus-visible {
	outline:
		1px solid
		var(--bach-primary);

	outline-offset: -3px;
}


/* =========================================================
   DESCRIPTION
   ========================================================= */

.bach-remedy > p {
	margin:
		0
		0
		0 !important;

	padding:
		0
		48px
		17px
		53px;

	color: #5d5e57;

	font-size: 14px;
	font-weight: 400;
	line-height: 1.6;
}


/* =========================================================
   SHOW ALL BUTTON
   ========================================================= */

.bach-remedies__toggle {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 14px;

	width: 100%;

	margin:
		18px
		0
		0;

	padding:
		15px
		22px;

	color: var(--bach-text);

	background: #efede7;

	border: 0;
	border-radius: 0;

	font-family: inherit;
	font-size: 12px;
	font-weight: 500;
	letter-spacing: 0.06em;
	line-height: 1.2;
	text-transform: uppercase;

	cursor: pointer;

	transition:
		background-color 180ms ease,
		color 180ms ease;
}

.bach-remedies__toggle::after {
	content: "→";

	font-size: 17px;
	font-weight: 400;
	line-height: 1;

	transition: transform 180ms ease;
}

.bach-remedies.is-expanded
.bach-remedies__toggle::after {
	transform: rotate(-90deg);
}

.bach-remedies__toggle:hover {
	color: #ffffff;
	background: var(--bach-primary);
}


/* =========================================================
   INSTRUCTION
   ========================================================= */

.bach-remedies__instruction {
	margin:
		20px
		0
		0 !important;

	padding: 0;

	color: var(--bach-muted);

	font-size: 12px;
	line-height: 1.5;
	text-align: center;
}


/* =========================================================
   TABLET
   ========================================================= */

@media (min-width: 768px) and (max-width: 1024px) {

	.bach-remedies {
		max-width: 760px;

		margin-top: 26px;
	}

	.bach-remedies__grid {
		column-gap: 12px;
	}

	.bach-remedy summary {
		grid-template-columns:
			34px
			minmax(0, 1fr)
			20px;

		min-height: 50px;

		padding:
			0
			13px;
	}

	.bach-remedy__name {
		font-size: 13.5px;
	}

	.bach-remedy > p {
		padding:
			0
			42px
			15px
			47px;

		font-size: 13.5px;
	}
}


/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 767px) {

	.bach-remedies {
		max-width: none;

		margin-top: 23px;
	}

	.bach-remedies__grid,
	.bach-remedies.is-expanded
	.bach-remedies__grid {
		display: grid;
		grid-auto-flow: row;

		grid-template-columns:
			minmax(0, 1fr);

		grid-template-rows: none;

		column-gap: 0;
	}

	.bach-remedy summary {
		grid-template-columns:
			34px
			minmax(0, 1fr)
			22px;

		min-height: 52px;

		padding:
			0
			13px;
	}

	.bach-remedy__number {
		font-size: 11.5px;
	}

	.bach-remedy__name {
		font-size: 14px;
	}

	.bach-remedy > p {
		padding:
			0
			39px
			16px
			47px;

		font-size: 14px;
		line-height: 1.58;
	}

	.bach-remedies__toggle {
		margin-top: 16px;

		padding:
			14px
			16px;

		font-size: 11.5px;
	}

	.bach-remedies__instruction {
		margin-top: 17px !important;

		font-size: 11.5px;
	}
}


/* =========================================================
   VERY SMALL MOBILE
   ========================================================= */

@media (max-width: 380px) {

	.bach-remedy summary {
		grid-template-columns:
			30px
			minmax(0, 1fr)
			20px;

		padding:
			0
			10px;
	}

	.bach-remedy__name {
		font-size: 13.5px;
	}

	.bach-remedy > p {
		padding:
			0
			34px
			15px
			40px;

		font-size: 13.5px;
	}
}


/* =========================================================
   REDUCED MOTION
   ========================================================= */

@media (prefers-reduced-motion: reduce) {

	.bach-remedy,
	.bach-remedy summary::after,
	.bach-remedies__toggle,
	.bach-remedies__toggle::after {
		transition: none;
	}
}

















/* =========================================================
   BACH BENEFITS SECTION
   Full-width background
   Desktop: 4 columns
   Tablet / mobile: 2 × 2
   ========================================================= */

.bach-benefits,
.bach-benefits *,
.bach-benefits *::before,
.bach-benefits *::after {
	box-sizing: border-box;
}


/* =========================================================
   FULL-BLEED SECTION
   Βγαίνει έξω από το περιορισμένο content container
   ========================================================= */

.bach-benefits {
	position: relative;

	width: 100vw;
	max-width: 100vw;

	margin-top: 0;
	margin-bottom: 0;
	margin-left: calc(50% - 50vw);
	margin-right: calc(50% - 50vw);

	padding: 0;

	background: #eeece7;

	overflow-x: clip;
}


/* =========================================================
   INNER GRID
   ========================================================= */

.bach-benefits__grid {
	display: grid;
	grid-template-columns:
		repeat(4, minmax(0, 1fr));

	align-items: start;

	width: 100%;
	max-width: 1240px;

	margin: 0 auto;

	padding:
		54px
		36px;

	column-gap: 44px;
	row-gap: 36px;
}


/* =========================================================
   BENEFIT ITEM
   ========================================================= */

.bach-benefit {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: flex-start;

	width: 100%;
	min-width: 0;
	height: auto;
	min-height: 0;

	margin: 0;
	padding: 0;

	color: #5b5e4d;
	text-align: center;
}


/* =========================================================
   ICON
   ========================================================= */

.bach-benefit__icon {
	display: block;

	width: 52px;
	height: 52px;

	margin:
		0
		auto
		16px;

	fill: none;
	stroke: currentColor;
	stroke-width: 1.8;
	stroke-linecap: round;
	stroke-linejoin: round;

	overflow: visible;
}


/* =========================================================
   TEXT
   ========================================================= */

.bach-benefit p {
	width: 100%;
	max-width: 260px;

	margin: 0 auto !important;
	padding: 0;

	color: #44443f;

	font-size: 15px;
	font-weight: 400;
	line-height: 1.5;
	text-align: center;
}


/* =========================================================
   TABLET — 2 × 2
   ========================================================= */

@media (min-width: 768px) and (max-width: 1024px) {

	.bach-benefits__grid {
		grid-template-columns:
			repeat(2, minmax(0, 1fr));

		max-width: 820px;

		padding:
			44px
			38px;

		column-gap: 42px;
		row-gap: 38px;
	}

	.bach-benefit__icon {
		width: 50px;
		height: 50px;

		margin-bottom: 14px;
	}

	.bach-benefit p {
		max-width: 280px;

		font-size: 15px;
	}
}


/* =========================================================
   MOBILE — 2 × 2
   ========================================================= */

@media (max-width: 767px) {

	.bach-benefits {
		width: 100vw;
		max-width: 100vw;

		margin-left: calc(50% - 50vw);
		margin-right: calc(50% - 50vw);
	}

	.bach-benefits__grid {
		grid-template-columns:
			repeat(2, minmax(0, 1fr));

		width: 100%;
		max-width: none;

		padding:
			34px
			18px;

		column-gap: 18px;
		row-gap: 32px;
	}

	.bach-benefit__icon {
		width: 44px;
		height: 44px;

		margin-bottom: 12px;

		stroke-width: 1.9;
	}

	.bach-benefit p {
		max-width: 165px;

		font-size: 13px;
		line-height: 1.45;
	}
}


/* =========================================================
   VERY SMALL MOBILE
   ========================================================= */

@media (max-width: 380px) {

	.bach-benefits__grid {
		padding:
			30px
			12px;

		column-gap: 12px;
		row-gap: 28px;
	}

	.bach-benefit__icon {
		width: 41px;
		height: 41px;
	}

	.bach-benefit p {
		max-width: 145px;

		font-size: 12.5px;
		line-height: 1.4;
	}
}
















.service-feature-title,
.service-feature-title * {
	font-weight: 500 !important;
	font-size: 16px !important;
	line-height: 1.25 !important;
	letter-spacing: -0.01em !important;
}

.service-feature-text,
.service-feature-text * {
	font-weight: 400 !important;
	font-size: 15px !important;
	line-height: 1.4 !important;
	letter-spacing: 0 !important;
}

@media (max-width: 767px) {
	.service-feature-title,
	.service-feature-title * {
		font-size: 15px !important;
	}

	.service-feature-text,
	.service-feature-text * {
		font-size: 14px !important;
	}
}































/* =========================================================
   SERVICE BENEFITS
   Desktop / tablet παραμένουν όπως είναι.
   Στο mobile τα 3 στοιχεία γίνονται compact κάθετες σειρές.
   ========================================================= */

@media (max-width: 767px) {

	.service-benefits-grid {
		width: 100% !important;
		height: auto !important;
		min-height: 0 !important;

		margin: 0 !important;
		padding: 0 !important;
	}

	/* Από 3 στενές στήλες σε μία κανονική στήλη */

	.service-benefits-grid > .kt-row-column-wrap {
		display: grid !important;
		grid-template-columns: minmax(0, 1fr) !important;
		grid-template-rows: auto !important;
		grid-auto-rows: auto !important;

		width: 100% !important;
		height: auto !important;
		min-height: 0 !important;

		margin: 0 !important;
		padding: 0 !important;

		row-gap: 24px !important;
		column-gap: 0 !important;

		align-items: start !important;
	}

	.service-benefits-grid
	.wp-block-kadence-column {
		width: 100% !important;
		min-width: 0 !important;

		height: auto !important;
		min-height: 0 !important;

		margin: 0 !important;
		padding: 0 !important;
	}

	/*
	 * Κάθε στοιχείο γίνεται:
	 *
	 * [εικονίδιο]  Τίτλος
	 *              Περιγραφή
	 */

	.service-benefits-grid
	.wp-block-kadence-column
	> .kt-inside-inner-col {
		display: grid !important;

		grid-template-columns:
			52px
			minmax(0, 1fr) !important;

		grid-template-rows:
			auto
			auto !important;

		column-gap: 15px !important;
		row-gap: 5px !important;

		width: 100% !important;
		height: auto !important;
		min-height: 0 !important;

		margin: 0 !important;
		padding: 0 !important;

		align-items: start !important;
		justify-content: stretch !important;

		text-align: left !important;
	}

	/* Εικονίδιο */

	.service-benefits-grid
	.wp-block-kadence-column
	> .kt-inside-inner-col
	> *:first-child {
		grid-column: 1 !important;
		grid-row: 1 / 3 !important;

		width: 50px !important;
		max-width: 50px !important;

		margin: 0 !important;
		padding: 0 !important;

		align-self: start !important;
	}

	.service-benefits-grid
	.wp-block-kadence-column
	> .kt-inside-inner-col
	> *:first-child img,
	.service-benefits-grid
	.wp-block-kadence-column
	> .kt-inside-inner-col
	> *:first-child svg {
		display: block !important;

		width: 50px !important;
		height: 50px !important;

		margin: 0 !important;

		object-fit: contain !important;
	}

	/* Τίτλος */

	.service-benefits-grid
	.wp-block-kadence-column
	> .kt-inside-inner-col
	> *:nth-child(2) {
		grid-column: 2 !important;
		grid-row: 1 !important;

		width: 100% !important;

		margin: 0 !important;
		padding: 0 !important;

		font-size: 16px !important;
		font-weight: 600 !important;
		line-height: 1.25 !important;
		letter-spacing: -0.01em !important;

		text-align: left !important;

		word-break: normal !important;
		overflow-wrap: normal !important;
		hyphens: none !important;
	}

	/* Περιγραφή */

	.service-benefits-grid
	.wp-block-kadence-column
	> .kt-inside-inner-col
	> *:nth-child(3) {
		grid-column: 2 !important;
		grid-row: 2 !important;

		width: 100% !important;

		margin: 0 !important;
		padding: 0 !important;

		font-size: 14px !important;
		font-weight: 400 !important;
		line-height: 1.45 !important;
		letter-spacing: 0 !important;

		text-align: left !important;

		word-break: normal !important;
		overflow-wrap: normal !important;
		hyphens: none !important;
	}
}











/* =====================================================
   HEALING STUDIO — P4ALL BENEFITS

   Parent Row Layout:
   p4all-benefits

   Each internal Section:
   p4all-benefit
   ===================================================== */


/* =====================================================
   MOBILE ONLY
   ===================================================== */

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

    /* -------------------------------------------------
       ΓΟΝΙΚΟ ROW LAYOUT
       Οι τρεις επιλογές εμφανίζονται κάθετα
       ------------------------------------------------- */

    .p4all-benefits {
        width: 100% !important;

        /* Κενό ανάμεσα στο τελευταίο icon και το κουμπί */
        margin: 0 0 35px !important;
        padding: 0 !important;

        box-sizing: border-box;
    }

    .p4all-benefits > .kt-row-column-wrap {
        display: flex !important;
        flex-direction: column !important;
        flex-wrap: nowrap !important;

        grid-template-columns: 1fr !important;

        align-items: stretch !important;
        justify-content: flex-start !important;

        width: 100% !important;
        max-width: 100% !important;

        gap: 14px !important;

        margin: 0 !important;
        padding: 0 !important;

        box-sizing: border-box;
    }


    /* -------------------------------------------------
       ΚΑΘΕ ΜΙΑ ΑΠΟ ΤΙΣ ΤΡΕΙΣ ΓΡΑΜΜΕΣ
       ------------------------------------------------- */

    .p4all-benefits > .kt-row-column-wrap > * {
        width: 100% !important;
        max-width: 100% !important;

        flex: 0 0 auto !important;

        margin: 0 !important;
        padding: 0 !important;

        box-sizing: border-box;
    }

    .p4all-benefit {
        display: flex !important;
        flex-direction: row !important;
        flex-wrap: nowrap !important;

        align-items: center !important;
        justify-content: flex-start !important;

        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;

        gap: 14px !important;

        margin: 0 !important;
        padding: 0 !important;

        box-sizing: border-box;
    }


    /* Υποστήριξη διαφορετικών Kadence wrappers */
    .p4all-benefit > .kt-inside-inner-col,
    .p4all-benefit > .kb-section-inner-wrap,
    .p4all-benefit > .kt-section-inner-wrap {
        display: flex !important;
        flex-direction: row !important;
        flex-wrap: nowrap !important;

        align-items: center !important;
        justify-content: flex-start !important;

        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;

        gap: 14px !important;

        margin: 0 !important;
        padding: 0 !important;

        box-sizing: border-box;
    }


    /* -------------------------------------------------
       ΕΙΚΟΝΙΔΙΑ
       ------------------------------------------------- */

    .p4all-benefit .wp-block-image,
    .p4all-benefit .wp-block-kadence-image,
    .p4all-benefit figure {
        display: block !important;

        width: 56px !important;
        min-width: 56px !important;
        max-width: 56px !important;

        flex: 0 0 56px !important;

        margin: 0 !important;
        padding: 0 !important;

        box-sizing: border-box;
    }

    .p4all-benefit .wp-block-image img,
    .p4all-benefit .wp-block-kadence-image img,
    .p4all-benefit figure img {
        display: block !important;

        width: 56px !important;
        height: 56px !important;
        max-width: 56px !important;

        margin: 0 !important;
        padding: 0 !important;

        object-fit: contain !important;
    }


    /* -------------------------------------------------
       ΚΕΙΜΕΝΑ
       ------------------------------------------------- */

    .p4all-benefit .wp-block-kadence-advancedheading,
    .p4all-benefit .kt-adv-heading,
    .p4all-benefit h1,
    .p4all-benefit h2,
    .p4all-benefit h3,
    .p4all-benefit h4,
    .p4all-benefit h5,
    .p4all-benefit h6,
    .p4all-benefit p {
        width: auto !important;
        min-width: 0 !important;

        flex: 1 1 auto !important;

        margin: 0 !important;
        padding: 0 !important;

        text-align: left !important;
        line-height: 1.35 !important;

        box-sizing: border-box;
    }


    /* Αφαιρεί τυχόν margin από το εσωτερικό κείμενο */
    .p4all-benefit h1:last-child,
    .p4all-benefit h2:last-child,
    .p4all-benefit h3:last-child,
    .p4all-benefit h4:last-child,
    .p4all-benefit h5:last-child,
    .p4all-benefit h6:last-child,
    .p4all-benefit p:last-child {
        margin-bottom: 0 !important;
    }
}























/* =========================================================
   HEALING STUDIO — AMELIA MOBILE POPUP HEIGHT FIX

   Αφαιρεί το τεράστιο κενό ανάμεσα στο ημερολόγιο
   και στο κουμπί «Συνέχεια».

   Επηρεάζει μόνο το Amelia popup σε κινητά.
   ========================================================= */

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

	/* Το εξωτερικό Amelia dialog να προσαρμόζεται
	   στο πραγματικό ύψος του περιεχομένου */
	body
	.el-overlay-dialog
	.el-dialog:has(#amelia-container) {
		height: auto !important;
		min-height: 0 !important;
		max-height: calc(100dvh - 20px) !important;

		margin-top: 10px !important;
		margin-bottom: 10px !important;

		overflow: hidden !important;
	}

	/* Αφαίρεση σταθερού ύψους από το σώμα του popup */
	body
	.el-overlay-dialog
	.el-dialog:has(#amelia-container)
	.el-dialog__body {
		height: auto !important;
		min-height: 0 !important;
		max-height: calc(100dvh - 70px) !important;

		padding: 0 !important;

		overflow-x: hidden !important;
		overflow-y: auto !important;
	}

	/* Η βασική κάρτα να μην απλώνεται μέχρι κάτω */
	body
	.el-overlay-dialog
	#amelia-container.am-fs__wrapper,
	body
	.el-overlay-dialog
	#amelia-container
	.am-fs__main,
	body
	.el-overlay-dialog
	#amelia-container
	.am-fs__main-inner {
		height: auto !important;
		min-height: 0 !important;
		max-height: none !important;
	}

	/* Το main inner να μην μοιράζει τον κενό χώρο */
	body
	.el-overlay-dialog
	#amelia-container
	.am-fs__main-inner {
		display: flex !important;
		flex-direction: column !important;
		justify-content: flex-start !important;
	}

	/* Το περιεχόμενο να έχει μόνο το ύψος που χρειάζεται */
	body
	.el-overlay-dialog
	#amelia-container
	.am-fs__main-content {
		flex: 0 0 auto !important;

		height: auto !important;
		min-height: 0 !important;
		max-height: 440px !important;

		padding-bottom: 18px !important;

		overflow-x: hidden !important;
		overflow-y: auto !important;
	}

	/* Το κουμπί να έρχεται αμέσως μετά το ημερολόγιο */
	body
	.el-overlay-dialog
	#amelia-container
	.am-fs__main-footer {
		position: static !important;

		flex: 0 0 auto !important;

		height: auto !important;
		min-height: 0 !important;

		margin: 0 !important;
		padding: 12px 15px 15px !important;
	}


}








/* Κλείνει το κενό ανάμεσα στα Bach benefits και το footer */
.bach-benefits {
	margin-bottom: -32px !important;
}

/* Mobile */
@media screen and (max-width: 767px) {
	.bach-benefits {
		margin-bottom: -24px !important;
	}
}















/* =========================================================
   HEALING STUDIO — AMELIA RESPONSIVE FINAL FIX

   Τοποθέτηση:
   Στο τέλος του βασικού CSS της Amelia.

   Tablet:
   - Δεν αλλάζει width
   - Δεν αλλάζει διάταξη
   - Προσθέτει λίγο ύψος
   - Κρατά το desktop heading design

   Mobile:
   - Κρατά τα μεγαλύτερα responsive στοιχεία
   - Κρατά το desktop heading design
   ========================================================= */


/* =========================================================
   TABLET
   768px – 1024px
   ========================================================= */

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

	.booking-section .booking-amelia-card {
		--hs-content-height: 360px;
	}


	/* -----------------------------------------------------
	   ΒΑΣΙΚΟ WRAPPER
	   Δεν πειράζουμε καθόλου το width.
	   ----------------------------------------------------- */

	.booking-section
	.booking-amelia-card
	#amelia-container.am-fs__wrapper {
		height: auto !important;
		min-height: 0 !important;
	}


	/* -----------------------------------------------------
	   PROGRESS HEADER
	   ----------------------------------------------------- */

	.booking-section
	.booking-amelia-card
	.am-fs-sb {
		padding:
			18px
			16px
			14px !important;
	}

	.booking-section
	.booking-amelia-card
	.am-fs-sb__step-wrapper {
		width: 100% !important;
		max-width: 100% !important;
	}

	.booking-section
	.booking-amelia-card
	.am-fs-sb__step-inner {
		min-height: 53px !important;

		padding:
			0
			3px !important;

		gap: 6px !important;
	}

	.booking-section
	.booking-amelia-card
	.am-fs-sb__step-inner::before {
		width: 31px !important;
		height: 31px !important;

		font-size: 11px !important;
	}

	.booking-section
	.booking-amelia-card
	.am-fs-sb__step:not(:last-child)::after {
		top: 15px !important;
	}

	.booking-section
	.booking-amelia-card
	.am-fs-sb__step-heading {
		max-width: 96px !important;

		font-size: 8px !important;
		line-height: 1.2 !important;
	}


	/* -----------------------------------------------------
	   HEADING — ΙΔΙΟ ΜΕ DESKTOP

	   Στο tablet η Amelia χρησιμοποιεί
	   .am-fs__main-heading-mobile και εμφανίζει
	   δική της μικρή γραμμή/ένδειξη.

	   Την αφαιρούμε και κρατάμε μία απλή divider line.
	   ----------------------------------------------------- */

	.booking-section
	.booking-amelia-card
	.am-fs__main-heading,
	.booking-section
	.booking-amelia-card
	.am-fs__main-heading.am-fs__main-heading-mobile {
		position: relative !important;

		padding:
			14px
			16px
			11px !important;

		background:
			var(--hs-card-bg, #f5f4ef) !important;

		border-bottom:
			1px solid
			var(--hs-line, rgba(79, 84, 65, 0.12)) !important;

		box-shadow: none !important;
	}


	/* Αφαίρεση responsive underline / progress indicator */

	.booking-section
	.booking-amelia-card
	.am-fs__main-heading-mobile::before,
	.booking-section
	.booking-amelia-card
	.am-fs__main-heading-mobile::after,
	.booking-section
	.booking-amelia-card
	.am-fs__main-heading-mobile
	.am-fs__main-heading-inner::before,
	.booking-section
	.booking-amelia-card
	.am-fs__main-heading-mobile
	.am-fs__main-heading-inner::after,
	.booking-section
	.booking-amelia-card
	.am-fs__main-heading-mobile
	.am-fs__main-heading-inner-title::before,
	.booking-section
	.booking-amelia-card
	.am-fs__main-heading-mobile
	.am-fs__main-heading-inner-title::after {
		content: none !important;
		display: none !important;
	}


	/*
	 * Η Amelia χρησιμοποιεί nested spans στο mobile heading.
	 * Μηδενίζουμε το border/background τους.
	 */

	.booking-section
	.booking-amelia-card
	.am-fs__main-heading-mobile
	> span,
	.booking-section
	.booking-amelia-card
	.am-fs__main-heading-mobile
	> span
	> span,
	.booking-section
	.booking-amelia-card
	.am-fs__main-heading-mobile
	.am-fs__main-heading-inner,
	.booking-section
	.booking-amelia-card
	.am-fs__main-heading-mobile
	.am-fs__main-heading-inner-title {
		background: transparent !important;

		border-top: 0 !important;
		border-right: 0 !important;
		border-bottom: 0 !important;
		border-left: 0 !important;

		box-shadow: none !important;
	}


	.booking-section
	.booking-amelia-card
	.am-fs__main-heading-inner-title {
		font-size: 22px !important;
		line-height: 1.08 !important;
	}


	/* -----------------------------------------------------
	   MAIN / INNER BACKGROUND
	   ----------------------------------------------------- */

	.booking-section
	.booking-amelia-card
	.am-fs__main,
	.booking-section
	.booking-amelia-card
	.am-fs__main-inner,
	.booking-section
	.booking-amelia-card
	.am-fs__main-content,
	.booking-section
	.booking-amelia-card
	.am-fs__main-footer {
		background:
			var(--hs-card-bg, #f5f4ef) !important;

		background-image: none !important;
	}


	/* -----------------------------------------------------
	   ΠΕΡΙΕΧΟΜΕΝΟ
	   ----------------------------------------------------- */

	.booking-section
	.booking-amelia-card
	.am-fs__main-content {
		height: auto !important;

		min-height: 150px !important;
		max-height: 360px !important;

		padding:
			17px
			16px
			19px !important;

		overflow-x: hidden !important;
		overflow-y: auto !important;

		scrollbar-gutter: auto;
	}


	/* -----------------------------------------------------
	   LABELS
	   ----------------------------------------------------- */

	.booking-section
	.booking-amelia-card
	.el-form-item__label,
	.booking-section
	.booking-amelia-card
	.am-fs__init-form__label {
		margin-bottom: 7px !important;

		font-size: 10px !important;
		line-height: 1.3 !important;
	}


	/* -----------------------------------------------------
	   INPUTS
	   ----------------------------------------------------- */

	.booking-section
	.booking-amelia-card
	.el-select__wrapper,
	.booking-section
	.booking-amelia-card
	.el-input__wrapper {
		min-height: 46px !important;

		padding-right: 14px !important;
		padding-left: 14px !important;
	}

	.booking-section
	.booking-amelia-card
	.el-select__input,
	.booking-section
	.booking-amelia-card
	.el-input__inner,
	.booking-section
	.booking-amelia-card
	.el-select__placeholder {
		font-size: 14px !important;
	}


	/* -----------------------------------------------------
	   FOOTER
	   ----------------------------------------------------- */

	.booking-section
	.booking-amelia-card
	.am-fs__main-footer {
		padding:
			11px
			16px
			14px !important;

		border-top:
			1px solid
			var(--hs-line, rgba(79, 84, 65, 0.12)) !important;
	}


	/* -----------------------------------------------------
	   ΚΟΥΜΠΙ
	   ----------------------------------------------------- */

	.booking-section
	.booking-amelia-card
	.am-button--primary,
	.booking-section
	.booking-amelia-card
	.am-button-continue {
		min-width: 140px !important;
		min-height: 44px !important;

		padding:
			10px
			18px !important;
	}

	.booking-section
	.booking-amelia-card
	.am-button__inner {
		font-size: 10.5px !important;
	}


	/* -----------------------------------------------------
	   ΗΜΕΡΟΛΟΓΙΟ
	   ----------------------------------------------------- */

	.booking-section
	.booking-amelia-card
	.am-fs__main-content
	[class*="calendar"]
	td,
	.booking-section
	.booking-amelia-card
	.am-fs__main-content
	[class*="calendar"]
	[role="gridcell"],
	.booking-section
	.booking-amelia-card
	.am-fs__main-content
	[class*="calendar"]
	td button,
	.booking-section
	.booking-amelia-card
	.am-fs__main-content
	[class*="calendar"]
	[role="gridcell"] button {
		height: 40px !important;
		min-height: 40px !important;
		max-height: 40px !important;

		font-size: 12px !important;
	}


	/* -----------------------------------------------------
	   ΔΙΑΘΕΣΙΜΕΣ ΩΡΕΣ
	   ----------------------------------------------------- */

	.booking-section
	.booking-amelia-card
	.am-fs__main-content
	[class*="time-slot"],
	.booking-section
	.booking-amelia-card
	.am-fs__main-content
	[class*="timeslot"],
	.booking-section
	.booking-amelia-card
	.am-fs__main-content
	[class*="timeSlot"],
	.booking-section
	.booking-amelia-card
	.am-fs__main-content
	[class*="appointment-time"] {
		min-height: 42px !important;

		padding:
			10px
			12px !important;

		font-size: 13px !important;
	}
}


/* =========================================================
   MOBILE
   Έως 767px
   ========================================================= */

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

	.booking-section .booking-amelia-card {
		--hs-booking-width: 100%;
		--hs-content-height: 420px;

		width: 100% !important;
		max-width: 100% !important;

		margin-right: auto !important;
		margin-left: auto !important;
	}


	/* -----------------------------------------------------
	   AMELIA WRAPPER
	   ----------------------------------------------------- */

	.booking-section
	.booking-amelia-card
	#amelia-container.am-fs__wrapper {
		width: 100% !important;
		max-width: 100% !important;

		height: auto !important;
		min-height: 0 !important;
	}


	/* -----------------------------------------------------
	   PROGRESS HEADER
	   ----------------------------------------------------- */

	.booking-section
	.booking-amelia-card
	.am-fs-sb {
		padding:
			18px
			9px
			15px !important;
	}

	.booking-section
	.booking-amelia-card
	.am-fs-sb__step-inner {
		min-height: 57px !important;

		padding:
			0
			2px !important;

		gap: 7px !important;
	}

	.booking-section
	.booking-amelia-card
	.am-fs-sb__step-inner::before {
		width: 32px !important;
		height: 32px !important;

		font-size: 11px !important;
	}

	.booking-section
	.booking-amelia-card
	.am-fs-sb__step:not(:last-child)::after {
		top: 15.5px !important;
	}

	.booking-section
	.booking-amelia-card
	.am-fs-sb__step-heading {
		max-width: 86px !important;

		font-size: 8px !important;
		line-height: 1.2 !important;
	}


	/* -----------------------------------------------------
	   MOBILE HEADING — ΙΔΙΟ ΜΕ DESKTOP
	   ----------------------------------------------------- */

	.booking-section
	.booking-amelia-card
	.am-fs__main-heading,
	.booking-section
	.booking-amelia-card
	.am-fs__main-heading.am-fs__main-heading-mobile {
		position: relative !important;

		padding:
			14px
			15px
			12px !important;

		background:
			var(--hs-card-bg, #f5f4ef) !important;

		border-bottom:
			1px solid
			var(--hs-line, rgba(79, 84, 65, 0.12)) !important;

		box-shadow: none !important;
	}


	/* Αφαίρεση mobile underline / indicator */

	.booking-section
	.booking-amelia-card
	.am-fs__main-heading-mobile::before,
	.booking-section
	.booking-amelia-card
	.am-fs__main-heading-mobile::after,
	.booking-section
	.booking-amelia-card
	.am-fs__main-heading-mobile
	.am-fs__main-heading-inner::before,
	.booking-section
	.booking-amelia-card
	.am-fs__main-heading-mobile
	.am-fs__main-heading-inner::after,
	.booking-section
	.booking-amelia-card
	.am-fs__main-heading-mobile
	.am-fs__main-heading-inner-title::before,
	.booking-section
	.booking-amelia-card
	.am-fs__main-heading-mobile
	.am-fs__main-heading-inner-title::after {
		content: none !important;
		display: none !important;
	}


	.booking-section
	.booking-amelia-card
	.am-fs__main-heading-mobile
	> span,
	.booking-section
	.booking-amelia-card
	.am-fs__main-heading-mobile
	> span
	> span,
	.booking-section
	.booking-amelia-card
	.am-fs__main-heading-mobile
	.am-fs__main-heading-inner,
	.booking-section
	.booking-amelia-card
	.am-fs__main-heading-mobile
	.am-fs__main-heading-inner-title {
		background: transparent !important;

		border-top: 0 !important;
		border-right: 0 !important;
		border-bottom: 0 !important;
		border-left: 0 !important;

		box-shadow: none !important;
	}


	.booking-section
	.booking-amelia-card
	.am-fs__main-heading-inner-title {
		font-size: 23px !important;
		line-height: 1.08 !important;
	}


	/* -----------------------------------------------------
	   ΚΥΡΙΟ BACKGROUND
	   ----------------------------------------------------- */

	.booking-section
	.booking-amelia-card
	.am-fs__main,
	.booking-section
	.booking-amelia-card
	.am-fs__main-inner,
	.booking-section
	.booking-amelia-card
	.am-fs__main-content,
	.booking-section
	.booking-amelia-card
	.am-fs__main-footer {
		background:
			var(--hs-card-bg, #f5f4ef) !important;

		background-image: none !important;
	}


	/* -----------------------------------------------------
	   ΠΕΡΙΕΧΟΜΕΝΟ
	   ----------------------------------------------------- */

	.booking-section
	.booking-amelia-card
	.am-fs__main-content {
		height: auto !important;

		min-height: 0 !important;
		max-height: 420px !important;

		padding:
			17px
			15px
			19px !important;

		overflow-x: hidden !important;
		overflow-y: auto !important;

		scrollbar-gutter: auto;
	}


	/* -----------------------------------------------------
	   LABELS
	   ----------------------------------------------------- */

	.booking-section
	.booking-amelia-card
	.el-form-item__label,
	.booking-section
	.booking-amelia-card
	.am-fs__init-form__label {
		margin-bottom: 7px !important;

		font-size: 10px !important;
		line-height: 1.3 !important;
	}


	/* -----------------------------------------------------
	   INPUTS
	   ----------------------------------------------------- */

	.booking-section
	.booking-amelia-card
	.el-select__wrapper,
	.booking-section
	.booking-amelia-card
	.el-input__wrapper {
		min-height: 48px !important;

		padding-right: 14px !important;
		padding-left: 14px !important;
	}

	.booking-section
	.booking-amelia-card
	.el-select__input,
	.booking-section
	.booking-amelia-card
	.el-input__inner,
	.booking-section
	.booking-amelia-card
	.el-select__placeholder {
		font-size: 15px !important;
	}


	/* -----------------------------------------------------
	   FOOTER
	   ----------------------------------------------------- */

	.booking-section
	.booking-amelia-card
	.am-fs__main-footer {
		padding:
			12px
			15px
			15px !important;

		border-top:
			1px solid
			var(--hs-line, rgba(79, 84, 65, 0.12)) !important;
	}


	/* -----------------------------------------------------
	   ΚΟΥΜΠΙ
	   ----------------------------------------------------- */

	.booking-section
	.booking-amelia-card
	.am-button--primary,
	.booking-section
	.booking-amelia-card
	.am-button-continue {
		width: 100% !important;

		min-width: 0 !important;
		min-height: 48px !important;

		padding:
			11px
			18px !important;
	}

	.booking-section
	.booking-amelia-card
	.am-button__inner {
		font-size: 11px !important;
	}


	/* -----------------------------------------------------
	   ΗΜΕΡΟΛΟΓΙΟ
	   ----------------------------------------------------- */

	.booking-section
	.booking-amelia-card
	.am-fs__main-content
	[class*="calendar"]
	td,
	.booking-section
	.booking-amelia-card
	.am-fs__main-content
	[class*="calendar"]
	[role="gridcell"],
	.booking-section
	.booking-amelia-card
	.am-fs__main-content
	[class*="calendar"]
	td button,
	.booking-section
	.booking-amelia-card
	.am-fs__main-content
	[class*="calendar"]
	[role="gridcell"] button {
		height: 42px !important;
		min-height: 42px !important;
		max-height: 42px !important;

		font-size: 13px !important;
	}


	/* -----------------------------------------------------
	   ΔΙΑΘΕΣΙΜΕΣ ΩΡΕΣ
	   ----------------------------------------------------- */

	.booking-section
	.booking-amelia-card
	.am-fs__main-content
	[class*="time-slot"],
	.booking-section
	.booking-amelia-card
	.am-fs__main-content
	[class*="timeslot"],
	.booking-section
	.booking-amelia-card
	.am-fs__main-content
	[class*="timeSlot"],
	.booking-section
	.booking-amelia-card
	.am-fs__main-content
	[class*="appointment-time"] {
		min-height: 44px !important;

		padding:
			11px
			12px !important;

		font-size: 14px !important;
	}
}


/* =========================================================
   VERY SMALL MOBILE
   Έως 390px
   ========================================================= */

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

	.booking-section
	.booking-amelia-card
	.am-fs-sb__step-heading {
		max-width: 76px !important;

		font-size: 7.5px !important;
	}

	.booking-section
	.booking-amelia-card
	.am-fs__main-heading,
	.booking-section
	.booking-amelia-card
	.am-fs__main-content,
	.booking-section
	.booking-amelia-card
	.am-fs__main-footer {
		padding-right: 12px !important;
		padding-left: 12px !important;
	}
}















/* =========================================================
   HEALING STUDIO — SERVICES MAIN TITLE

   Διορθώνει το σπάσιμο των ελληνικών λέξεων
   σε tablet και mobile χωρίς να αλλάζει
   τη διάταξη ολόκληρου του section.
   ========================================================= */

.services-main-title {
	display: block;

	width: 100%;
	max-width: 100%;

	margin-top: 0;
	margin-bottom: 22px;

	padding: 0;

	word-break: normal !important;
	overflow-wrap: normal !important;
	hyphens: none !important;
	white-space: normal !important;
}

.services-main-title,
.services-main-title *,
.services-main-title a,
.services-main-title span {
	word-break: normal !important;
	overflow-wrap: normal !important;
	hyphens: none !important;
	white-space: normal !important;
}


/* =========================================================
   DESKTOP
   ========================================================= */

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

	.services-main-title {
		font-size: 48px !important;
		font-weight: 400 !important;
		line-height: 1.02 !important;
		letter-spacing: -0.02em !important;
	}
}


/* =========================================================
   TABLET / IPAD
   ========================================================= */

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

	.services-main-title {
		font-size: 30px !important;
		font-weight: 400 !important;
		line-height: 1.07 !important;
		letter-spacing: -0.025em !important;

		margin-bottom: 18px !important;
	}

	/*
	 * Αποτρέπει το Kadence ή το theme
	 * από το να κόβει τις λέξεις χαρακτήρα-χαρακτήρα.
	 */
	#services .services-main-title,
	#services .services-main-title * {
		word-break: keep-all !important;
		overflow-wrap: normal !important;
		hyphens: none !important;
	}
}


/* =========================================================
   MOBILE
   ========================================================= */

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

	.services-main-title {
		font-size: 34px !important;
		font-weight: 400 !important;
		line-height: 1.06 !important;
		letter-spacing: -0.02em !important;

		margin-bottom: 18px !important;

		word-break: normal !important;
		overflow-wrap: normal !important;
		hyphens: none !important;
	}
}


/* =========================================================
   VERY SMALL MOBILE
   ========================================================= */

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

	.services-main-title {
		font-size: 31px !important;
		line-height: 1.07 !important;
	}
}