/*
Theme Name: Calma Child
Template: hello-elementor
Version: 1.0.0
*/

:root {
	--calma-text: #111111;
	--calma-muted: #4a4a4a;
	--calma-bg-soft: #f8f3ef;
	--calma-bg-section: #f2e7df;
	--calma-border: #1c1c1c;
	--calma-container: 1280px;
}

body {
	color: var(--calma-text);
	font-family: "Roboto", sans-serif;
}

.elementor-kit-6 {
	--e-global-color-primary: #000;
	--e-global-color-secondary: #f8f3ef;
	--e-global-color-text: #000;
	--e-global-color-accent: #000;
	--e-global-color-c2dfa1d: #fff;
	--e-global-color-14479cc: #FFFFFF00;
	--e-global-color-d739b3d: #626060;
	--e-global-color-09c0f2e: #f2e7df;
	--e-global-color-1e706cd: #000000B3;
	--e-global-typography-primary-font-family: "Prata";
	--e-global-typography-primary-font-size: 40px;
	--e-global-typography-primary-font-weight: 400;
	--e-global-typography-primary-text-transform: none;
	--e-global-typography-primary-font-style: normal;
	--e-global-typography-primary-text-decoration: none;
	--e-global-typography-primary-line-height: 1.2em;
	--e-global-typography-primary-letter-spacing: 0px;
	--e-global-typography-secondary-font-family: "Prata";
	--e-global-typography-secondary-font-size: 24px;
	--e-global-typography-secondary-font-weight: 400;
	--e-global-typography-secondary-text-transform: none;
	--e-global-typography-secondary-font-style: normal;
	--e-global-typography-secondary-text-decoration: none;
	--e-global-typography-secondary-line-height: 1em;
	--e-global-typography-secondary-letter-spacing: 1px;
	--e-global-typography-text-font-family: "Roboto";
	--e-global-typography-text-font-size: 16px;
	--e-global-typography-text-font-weight: 400;
	--e-global-typography-text-text-transform: none;
	--e-global-typography-text-font-style: normal;
	--e-global-typography-text-text-decoration: none;
	--e-global-typography-text-line-height: 1.4em;
	--e-global-typography-text-letter-spacing: 0px;
	--e-global-typography-accent-font-family: "Roboto";
	--e-global-typography-accent-font-size: 16px;
	--e-global-typography-accent-font-weight: 700;
	--e-global-typography-accent-text-transform: none;
	--e-global-typography-accent-font-style: normal;
	--e-global-typography-accent-text-decoration: none;
	--e-global-typography-accent-line-height: 1.3em;
	--e-global-typography-accent-letter-spacing: 0px;
	--e-global-typography-03a81f1-font-family: "Anton";
	--e-global-typography-03a81f1-font-size: 28vw;
	--e-global-typography-03a81f1-font-weight: 400;
	--e-global-typography-03a81f1-text-transform: uppercase;
	--e-global-typography-03a81f1-font-style: normal;
	--e-global-typography-03a81f1-text-decoration: none;
	--e-global-typography-03a81f1-line-height: .8em;
	--e-global-typography-03a81f1-letter-spacing: 50.12px;
	--e-global-typography-ea5bfcf-font-family: "Anton";
	--e-global-typography-ea5bfcf-font-size: 215px;
	--e-global-typography-ea5bfcf-font-weight: 400;
	--e-global-typography-ea5bfcf-text-transform: uppercase;
	--e-global-typography-ea5bfcf-font-style: normal;
	--e-global-typography-ea5bfcf-text-decoration: none;
	--e-global-typography-ea5bfcf-line-height: 215px;
	--e-global-typography-ea5bfcf-letter-spacing: 6.32px;
	--e-global-typography-421139e-font-family: "Anton";
	--e-global-typography-421139e-font-size: 4.5vw;
	--e-global-typography-421139e-font-weight: 400;
	--e-global-typography-421139e-text-transform: uppercase;
	--e-global-typography-421139e-font-style: normal;
	--e-global-typography-421139e-text-decoration: none;
	--e-global-typography-421139e-line-height: .9em;
	--e-global-typography-421139e-letter-spacing: 5.45px;
	--e-global-typography-041c934-font-family: "Roboto";
	--e-global-typography-041c934-font-size: 16px;
	--e-global-typography-041c934-font-weight: 300;
	--e-global-typography-041c934-text-transform: capitalize;
	--e-global-typography-041c934-font-style: normal;
	--e-global-typography-041c934-text-decoration: none;
	--e-global-typography-041c934-line-height: 24px;
	--e-global-typography-041c934-letter-spacing: -.45px;
	--e-global-typography-98c2c3f-font-family: "Roboto";
	--e-global-typography-98c2c3f-font-size: 18px;
	--e-global-typography-98c2c3f-font-weight: 700;
	--e-global-typography-98c2c3f-text-transform: none;
	--e-global-typography-98c2c3f-font-style: normal;
	--e-global-typography-98c2c3f-text-decoration: none;
	--e-global-typography-98c2c3f-line-height: 1.2em;
	--e-global-typography-98c2c3f-letter-spacing: 0px;
	--e-global-typography-df28415-font-family: "Anton";
	--e-global-typography-df28415-font-size: 4.5vw;
	--e-global-typography-df28415-font-weight: 400;
	--e-global-typography-df28415-text-transform: uppercase;
	--e-global-typography-df28415-font-style: normal;
	--e-global-typography-df28415-text-decoration: none;
	--e-global-typography-df28415-line-height: .9em;
	--e-global-typography-df28415-letter-spacing: 8.55px;
	--e-global-typography-1f00284-font-family: "Prata";
	--e-global-typography-1f00284-font-size: 48px;
	--e-global-typography-1f00284-font-weight: 400;
	--e-global-typography-1f00284-text-transform: none;
	--e-global-typography-1f00284-font-style: normal;
	--e-global-typography-1f00284-text-decoration: none;
	--e-global-typography-1f00284-line-height: 1.2em;
	--e-global-typography-1f00284-letter-spacing: 0px;
}

.calma-shell {
	max-width: var(--calma-container);
	margin: 0 auto;
	padding: 0 32px;
}

.calma-site-header {
	background: #fff;
	border-bottom: 1px solid rgba(0, 0, 0, 0.04);
}

.calma-site-header__inner {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 32px;
	min-height: 136px;
}

.calma-site-header__logo img,
.calma-site-footer__brand img {
	width: 270px;
	height: auto;
	display: block;
}

.calma-site-header__nav {
	flex: 1 1 auto;
	display: flex;
	justify-content: center;
}

.calma-site-header__nav ul,
.calma-site-footer__menu ul,
.calma-site-footer__legal ul {
	list-style: none;
	margin: 0;
	padding: 0;
}

.calma-site-header__nav ul {
	display: flex;
	align-items: center;
	gap: 42px;
}

.calma-site-header__nav a,
.calma-site-footer a {
	color: var(--calma-text);
	text-decoration: none;
	font-family: "Roboto", sans-serif;
}

.calma-site-header__nav li.current-menu-item > a,
.calma-site-header__nav li.current_page_item > a,
.calma-site-header__nav a:hover {
	border-bottom: 1px solid var(--calma-border);
	padding-bottom: 10px;
}

.calma-site-header__cta a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 126px;
	padding: 16px 24px;
	background: var(--calma-bg-soft);
	font-weight: 600;
	color: var(--calma-text);
	text-decoration: none;
	font-family: "Roboto", sans-serif;
}

.gt_float_switcher,
#gt_float_wrapper {
	z-index: 1002 !important;
}

@media (min-width: 1200px) {
	#gt_float_wrapper {
		top: 20px !important;
		right: max(32px, calc((100vw - var(--calma-container)) / 2 + 32px)) !important;
	}
}

@media (max-width: 1199px) {
	#gt_float_wrapper {
		top: 18px !important;
		right: 20px !important;
	}
}

.calma-site-footer {
	background: #fff;
	margin-top: 0;
}

.calma-site-footer__cta {
	display: grid;
	grid-template-columns: 1fr 1fr;
	align-items: stretch;
}

.calma-site-footer__cta-copy {
	display: flex;
	flex-direction: column;
	justify-content: center;
	padding: 5% 5%;
	background: #fff;
}

.calma-site-footer__eyebrow {
	margin: 0 0 20px;
	font-family: "Roboto", sans-serif;
	font-size: 18px;
	font-weight: 700;
	line-height: 1.2;
}

.calma-site-footer__cta-title {
	margin: 0 0 28px;
	font-family: "Prata", serif;
	font-size: 58px;
	font-weight: 400;
	line-height: 1.1;
	letter-spacing: 0;
	max-width: 760px;
}

.calma-site-footer__cta-text {
	margin: 0 0 30px;
	max-width: 760px;
	font-family: "Roboto", sans-serif;
	font-size: 16px;
	line-height: 1.4;
}

.calma-site-footer__cta-link {
	margin: 0;
}

.calma-site-footer__cta-link a {
	display: inline-flex;
	align-items: center;
	gap: 12px;
	padding-bottom: 2px;
	border-bottom: 1px solid var(--calma-border);
	color: var(--calma-text);
	font-family: "Roboto", sans-serif;
	font-size: 16px;
	font-weight: 700;
	line-height: 1.3;
	text-decoration: none;
}

.calma-site-footer__cta-link svg {
	display: block;
}

.calma-site-footer__cta-media {
	background: var(--calma-bg-section);
}

.calma-site-footer__cta-media img {
	display: block;
	width: 100%;
	height: 100%;
	min-height: 420px;
	object-fit: cover;
	object-position: center;
}

.calma-site-footer__top {
	padding: 64px 0 44px;
}

.calma-site-footer__grid {
	display: grid;
	grid-template-columns: 1.2fr 0.7fr 1.2fr 0.9fr;
	gap: 48px;
	align-items: start;
}

.calma-site-footer__title {
	font-size: 24px;
	line-height: 1.2;
	font-weight: 700;
	margin: 0 0 28px;
	font-family: "Roboto", sans-serif;
}

.calma-site-footer__text,
.calma-site-footer__contact,
.calma-site-footer__contact p {
	font-size: 18px;
	line-height: 1.45;
	color: var(--calma-text);
	font-family: "Roboto", sans-serif;
}

.elementor-14 .elementor-widget-heading .elementor-heading-title {
	font-family: "Prata", serif;
}

.elementor-14 .elementor-widget-text-editor,
.elementor-14 .elementor-widget-text-editor p,
.elementor-14 .elementor-widget-button,
.elementor-14 .elementor-widget-button .elementor-button {
	font-family: "Roboto", sans-serif;
}

.elementor-14 .elementor-element.elementor-element-35621cb .elementor-heading-title,
.elementor-14 .elementor-element.elementor-element-82ed6a7 .elementor-heading-title {
	font-family: "Anton", sans-serif;
	text-transform: uppercase;
}

.elementor-14 .elementor-element.elementor-element-9088582:not(.elementor-motion-effects-element-type-background),
.elementor-14 .elementor-element.elementor-element-9088582,
.elementor-14 .elementor-element.elementor-element-9088582 > .elementor-motion-effects-container > .elementor-motion-effects-layer,
.elementor-14 .elementor-element.elementor-element-d11a49f:not(.elementor-motion-effects-element-type-background),
.elementor-14 .elementor-element.elementor-element-bf4c06b:not(.elementor-motion-effects-element-type-background),
.elementor-14 .elementor-element.elementor-element-e729a7b:not(.elementor-motion-effects-element-type-background),
.elementor-14 .elementor-element.elementor-element-5e33e22:not(.elementor-motion-effects-element-type-background),
.elementor-14 .elementor-element.elementor-element-3ee3ecd:not(.elementor-motion-effects-element-type-background),
.elementor-14 .elementor-element.elementor-element-9349f40:not(.elementor-motion-effects-element-type-background) {
	background-color: #f2e7df !important;
}

.elementor-14 .elementor-element.elementor-element-1526f40:not(.elementor-motion-effects-element-type-background),
.elementor-14 .elementor-element.elementor-element-182cbbc:not(.elementor-motion-effects-element-type-background) {
	background-color: #ffffff !important;
}

.elementor-14 .elementor-element.elementor-element-fe25d11:not(.elementor-motion-effects-element-type-background),
.elementor-14 .elementor-element.elementor-element-9ad2ca8:not(.elementor-motion-effects-element-type-background) {
	background-color: #f8f3ef !important;
}

.calma-site-footer__text {
	max-width: 440px;
	margin: 24px 0 32px;
}

.calma-site-footer__social {
	display: flex;
	align-items: center;
	gap: 18px;
	font-size: 18px;
}

.calma-site-footer__social-links {
	display: inline-flex;
	gap: 18px;
}

.calma-site-footer__social-links a {
	color: #b8834e;
	display: inline-flex;
}

.calma-site-footer__social-links svg {
	width: 28px;
	height: 28px;
	display: block;
}

.calma-site-footer__menu li,
.calma-site-footer__legal li {
	margin-bottom: 14px;
	font-size: 18px;
}

.calma-site-footer__contact strong {
	display: block;
	font-weight: 700;
	margin-bottom: 10px;
}

.calma-site-footer__contact p {
	margin: 0 0 24px;
}

.calma-site-footer__contact a {
	color: var(--calma-text);
	text-decoration: none;
	font-weight: 700;
}

.calma-site-footer__bottom {
	padding: 24px 0 32px;
	border-top: 1px solid rgba(0, 0, 0, 0.05);
}

.calma-site-footer__kit {
	display: block;
	max-width: 980px;
	width: 100%;
	height: auto;
	margin: 0 auto;
}

.calma-whatsapp-float {
	position: fixed;
	right: 20px;
	bottom: 20px;
	z-index: 1003;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 54px;
	height: 54px;
	border-radius: 999px;
	background: #25d366;
	color: #fff;
	box-shadow: 0 10px 24px rgba(0, 0, 0, 0.18);
	text-decoration: none;
}

.calma-whatsapp-float svg {
	width: 28px;
	height: 28px;
	display: block;
}

@media (max-width: 1080px) {
	.calma-site-header__inner {
		flex-wrap: wrap;
		justify-content: center;
		padding: 24px 0 18px;
	}

	.calma-site-header__nav {
		order: 3;
		width: 100%;
	}

	.calma-site-footer__grid {
		grid-template-columns: 1fr 1fr;
	}

	.calma-site-footer__cta {
		grid-template-columns: 1fr;
	}

	.calma-site-footer__cta-title {
		font-size: 46px;
	}

	.calma-site-footer__cta-media img {
		min-height: 340px;
	}

	.calma-whatsapp-float {
		right: 16px;
		bottom: 16px;
		width: 50px;
		height: 50px;
	}
}

@media (max-width: 767px) {
	.calma-shell {
		padding: 0 20px;
	}

	#gt_float_wrapper {
		top: 14px !important;
		right: 14px !important;
		transform: scale(0.92);
		transform-origin: top right;
	}

	.calma-site-header__inner {
		min-height: auto;
	}

	.calma-site-header__nav ul {
		flex-wrap: wrap;
		justify-content: center;
		gap: 18px 28px;
	}

	.calma-site-header__logo img,
	.calma-site-footer__brand img {
		width: 210px;
	}

	.calma-site-footer__grid {
		grid-template-columns: 1fr;
		gap: 32px;
	}

	.calma-site-footer__cta-copy {
		padding: 15% 5%;
	}

	.calma-site-footer__eyebrow {
		font-size: 18px;
		text-align: center;
	}

	.calma-site-footer__cta-title {
		font-size: 40px;
		text-align: center;
		margin-bottom: 22px;
	}

	.calma-site-footer__cta-text,
	.calma-site-footer__cta-link {
		text-align: center;
	}

	.calma-site-footer__cta-link a {
		justify-content: center;
	}

	.calma-site-footer__cta-media img {
		min-height: 280px;
	}

	.calma-site-footer__top {
		padding: 48px 0 36px;
	}

	.calma-site-footer__title {
		font-size: 22px;
		margin-bottom: 18px;
	}

	.calma-site-footer__text,
	.calma-site-footer__contact,
	.calma-site-footer__contact p,
	.calma-site-footer__menu li,
	.calma-site-footer__legal li,
	.calma-site-footer__social {
		font-size: 16px;
	}
}
