/* STYLE ---> */

:root {
	/* fonts */
	--font-main: Poppins;
	--font-alt: Arial;
	--font-weight-text: 400;
	--font-weight-h0: 700;
	--font-weight-h1: 600;
	--font-weight-h2: 600;
	--font-weight-h3: 500;
	--font-weight-h4: 500;
	--font-weight-h5: 400;
	--font-weight-h6: 400;
	--line-height-high: 1.5em;
	--line-height-low: 1.2em;
	--letter-spacing: 1px;
	--font-size-text: 17px;
	--font-size-little-text: 14px;
	--font-size-h0: 36px;
	--font-size-h1: 26px;
	--font-size-h2: 26px;
	--font-size-h3: 22px;
	--font-size-h4: 22px;
	--font-size-h5: 18px;
	--font-size-h6: 18px;
	/* colors */
	--text-dark-1-color: #000000;
	--text-dark-10-color: #1c2321;
	--text-dark-20-color: #3b6b6b;
	--text-light-1-color: #ffffff;
	--background-dark-1-color: #000000;
	--background-dark-10-color: #2d5252;
	--background-dark-20-color: #3b6b6b;
	--background-light-1-color: #ffffff;
	--background-light-10-color: #eef5f1;
	--background-light-20-color: #dde5e0;
	--color-1: #3b6b6b;
	--color-2: #f28f3b;
	--color-3: #c8553d;
	--color-4: #5884e1;
}

@media (max-width: 860px) {
	:root {
		--font-size-text: 15px;
		--font-size-little-text: 12px;
		--font-size-h0: 34px;
		--font-size-h1: 24px;
		--font-size-h2: 24px;
		--font-size-h3: 20px;
		--font-size-h4: 20px;
		--font-size-h5: 16px;
		--font-size-h6: 16px;
	}
}

.hide {
	display: none;
}

@media (min-width: 861px) {
	.hide-on-desktop {
		display: none;
	}
}

@media (max-width: 860px) {
	.hide-on-phone {
		display: none;
	}
}

body, h1, h2, h3, h4, h5, h6, p, ul, ol, textarea {
	margin: 0;
	padding: 0;
}

ol {
	list-style-type: none;
}

body, input, textarea {
	font-family: var(--font-main), var(--font-alt);
	font-size: var(--font-size-text);
	font-weight: var(--font-weight-text);
	line-height: var(--line-height-high);
	letter-spacing: var(--letter-spacing);
}

button {
	border: none;
	background: none;
}

h0, .h0 {
	font-size: var(--font-size-h0);
	font-weight: var(--font-weight-h0);
	line-height: var(--line-height-low);
}

h1, .h1 {
	font-size: var(--font-size-h1);
	font-weight: var(--font-weight-h1);
	line-height: var(--line-height-low);
}

h2, .h2 {
	font-size: var(--font-size-h2);
	font-weight: var(--font-weight-h2);
	line-height: var(--line-height-low);
}

h3, .h3 {
	font-size: var(--font-size-h3);
	font-weight: var(--font-weight-h3);
	line-height: var(--line-height-low);
}

h4, .h4 {
	font-size: var(--font-size-h4);
	font-weight: var(--font-weight-h4);
	line-height: var(--line-height-low);
}

h5, .h5 {
	font-size: var(--font-size-h5);
	font-weight: var(--font-weight-h5);
	line-height: var(--line-height-low);
}

h6, .h6 {
	font-size: var(--font-size-h6);
	font-weight: var(--font-weight-h6);
	line-height: var(--line-height-low);
}

a {
	color: currentColor;
	text-decoration: none;
}

svg, img {
	vertical-align: middle;
}

input, textarea {
	padding: 14px 20px;
	border: none;
	border-radius: 0;
	outline: none;
	background-color: unset;
}

input::placeholder {
	color: currentColor;
	opacity: 0.8;
}

textarea {
	resize: none;
}

textarea::placeholder {
	color: currentColor;
	opacity: 0.8;
}

p + p, p + ol, p + ul, ol + p, ul + p, li + li {
	margin-top: 15px;
}

section {
	padding: 80px 0;
}

iframe {
	border: 0;
	width: 100%;
	aspect-ratio: 16 / 9;
	box-shadow: 1px 1px 5px rgb(0,0,0,.2), -1px -1px 5px rgb(0,0,0,.2);
}

.google-maps iframe {
	aspect-ratio: 4 / 3;
}

.text-dark-1 {
	color: var(--text-dark-1-color);
}

.text-dark-10 {
	color: var(--text-dark-10-color);
}

.text-dark-20 {
	color: var(--text-dark-20-color);
}

.text-light-1 {
	color: var(--text-light-1-color);
}

.bg-dark-1 {
	background-color: var(--background-dark-1-color);
}

.bg-dark-10 {
	background-color: var(--background-dark-10-color);
}

.bg-dark-20 {
	background-color: var(--background-dark-20-color);
}

.bg-light-1 {
	background-color: var(--background-light-1-color);
}

.bg-light-10 {
	background-color: var(--background-light-10-color);
}

.bg-light-20 {
	background-color: var(--background-light-20-color);
}

.border-radius-low {
	border-radius: 5px;
}

.border-radius-med {
	border-radius: 20px;
}

.border-radius-high {
	border-radius: 50px;
}

.border-radius-circle {
	border-radius: 100%;
}

.hover {
	border-radius: 20px;
}

.hover:hover, .hover:focus-within {
	background-color: color-mix(in srgb, currentColor 15%, transparent);
}

.button {
	padding: 14px 20px;
	color: var(--text-light-1-color);
	background-color: var(--background-dark-20-color);
	text-align: center;
	border-radius: 50px;
	transition: background-color 0.2s;
}

.button:hover,
.button:focus-within {
	background-color: var(--background-dark-10-color);
}

.zoom-in img {
	transition: transform 0.2s;
}

.zoom-in:hover img,
.zoom-in:focus-within img {
	transform: scale(1.1);
}

.zoom-out img {
	transform: scale(1.1);
	transition: transform 0.2s;
}

.zoom-out:hover img,
.zoom-out:focus-within img {
	transform: scale(1);
}

.no-overflow {
	overflow: hidden;
}

.width img {
	width: 100%;
}

.height img {
	height: 100%;
}

.with-icon {
	display: flex;
	align-items: center;
	column-gap: 7.5px;
}

.strong {
	font-weight: bold;
}

.cover {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
	z-index: -1;
}

.pointer {
	cursor: pointer;
}

.easy {
	display: flex;
	width: fit-content;
	padding: 10px;
	margin: -10px;
}

.uppercase {
	text-transform: uppercase;
}

.lowercase {
	text-transform: lowercase;
}

.little-text {
	font-size: var(--font-size-little-text);
}

.heading {
	text-align: center;
	margin-bottom: 40px;
}

.heading .title + .title {
	margin-top: 5px;
}

.underline {
	color: var(--text-dark-20-color);
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1418 125' fill='%233b6b6b'%3E%3Cpath d='M1412.29 72.17c-11.04-5.78-20.07-14.33-85.46-25.24-22.37-3.63-44.69-7.56-67.07-11.04-167.11-22.06-181.65-21.24-304.94-30.56C888.78 1.39 822.57 1.1 756.44 0c-46.63-.11-93.27 1.56-139.89 2.5C365.5 13.55 452.86 7.68 277.94 23.15 202.57 33.32 127.38 45.01 52.07 55.69c-11.23 2.41-22.63 4.17-33.71 7.22C6.1 66.33 5.64 66.19 3.89 67.79c-7.99 5.78-2.98 20.14 8.72 17.5 33.99-9.47 32.28-8.57 178.06-29.66 4.26 4.48 7.29 3.38 18.42 3.11 13.19-.32 26.38-.53 39.56-1.12 53.51-3.81 106.88-9.62 160.36-13.95 18.41-1.3 36.8-3.12 55.21-4.7 23.21-1.16 46.43-2.29 69.65-3.4 120.28-2.16 85.46-3.13 234.65-1.52 23.42.99 1.57-.18 125.72 6.9 96.61 8.88 200.92 27.94 295.42 46.12 40.87 7.91 116.67 23.2 156.31 36.78 3.81 1.05 8.28-.27 10.51-3.58 3.17-3.72 2.66-9.7-.78-13.13-3.25-3.12-8.14-3.44-12.18-5.08-17.89-5.85-44.19-12.09-63.67-16.56l26.16 3.28c23.02 3.13 46.28 3.92 69.34 6.75 10.8.96 25.43 1.81 34.34-4.39 2.26-1.54 4.86-2.75 6.21-5.27 2.76-4.59 1.13-11.06-3.59-13.68ZM925.4 23.77c37.64 1.4 153.99 10.85 196.64 14.94 45.95 5.51 91.89 11.03 137.76 17.19 24.25 4.77 74.13 11.21 101.72 18.14-11.87-1.15-23.77-1.97-35.65-3.06-133.46-15.9-266.8-33.02-400.47-47.21Z'%3E%3C/path%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position-y: bottom;
	padding-bottom: 15px;
}

.transition.up {
	transform: translateY(5px);
}

.transition.down {
	transform: translateY(-5px);
}

.transition svg {
	width: 100%;
	height: 15vh;
}

.menu .segment {
	background-color: currentColor;
	height: 4px;
	width: 30px;
	border-radius: 50px;
	margin: 6px 0;
	transition: transform 0.2s;
}

.menu .segment.up.opened {
	transform: translateY(10px) rotate(45deg);
}

.menu .segment.middle.opened {
	transform: rotate(45deg);
}

.menu .segment.down.opened {
	transform: translateY(-10px) rotate(-45deg);
}

.loader svg {
	animation: loader 1s linear infinite;
}

@keyframes loader {
	from {
		transform: rotate(0deg);
	}
	to {
		transform: rotate(360deg);
	}
}

.flex {
	display: flex;
}

.flex.row {
	flex-direction: row;
}

.flex.column {
	flex-direction: column;
}

.flex.wrap {
	flex-wrap: wrap;
}

.flex.justify-start {
	justify-content: flex-start;
}

.flex.justify-end {
	justify-content: flex-end;
}

.flex.justify-center {
	justify-content: center;
}

.flex.justify-between {
	justify-content: space-between;
}

.flex.justify-around {
	justify-content: space-around;
}

.flex.align-start {
	align-items: flex-start;
}

.flex.align-end {
	align-items: flex-end;
}

.flex.align-center {
	align-items: center;
}

.wrapper {
	display: flex;
	flex-direction: column;
	overflow-x: clip;
}

.container {
	margin: 0 auto;
	padding: 0 20px;
	max-width: 1300px;
	width: 100%;
	box-sizing: border-box;
}

/* <--- STYLE */

/* INC ---> */

:root {
	--tooltip-font-size: var(--font-size-little-text);
	--tooltip-border-radius: 20px;
	--tooltip-padding: 10px 20px;
	--tooltip-background-color: var(--background-dark-10-color);
	--tooltip-text-color: var(--text-light-1-color);
	--tooltip-box-shadow: 1px 1px 1px rgb(0,0,0,.2), -1px -1px 1px rgb(0,0,0,.2);
	--tooltip-transition-time: 0.2s;
}

.toastify {
	background: var(--background-dark-10-color);
	color: var(--text-light-1-color);
	padding: 20px;
	border-radius: 20px;
	box-shadow: 1px 1px 1px rgb(0,0,0,.2), -1px -1px 1px rgb(0,0,0,.2);
	z-index: 110;
}

.toc-list a {
	width: 100%;
}

.toc-list-item {
	margin-top: 10px;
}

.splide.autoscroll .splide__track {
	mask-image: linear-gradient(to right, transparent 0%, black 10%, black 90%, transparent 100%);
	-webkit-mask-image: linear-gradient(to right, transparent 0%, black 10%, black 90%, transparent 100%);
}

/* <--- INC */

/* SECTIONS ---> */

#header {
	position: fixed;
	width: 100%;
	padding: 5px 0;
	transition: background-color 0.2s;
	z-index: 70;
}

#header.scrolling,
#header.painted {
	background-color: var(--background-dark-20-color);
	box-shadow: 1px 1px 1px rgb(0,0,0,.2);
}

#header .main {
	column-gap: 30px;
	row-gap: 10px;
}

#header .main .logo {
	flex-basis: 250px;
}

#header .lucide-chevron-down {
	transition: transform 0.2s;
}

#header .nav-element:hover .lucide-chevron-down,
#header .nav-element:focus-within .lucide-chevron-down {
	transform: rotate(180deg);
}

#header .nav-element:hover .subnav,
#header .nav-element:focus-within .subnav {
	display: block;
}

#header .nav-element a,
#header .nav-element span.pointer {
	width: 100%;
}

#header div.nav-element:nth-child(5) > div:nth-child(1) > a:nth-child(1) {
	border: solid 2px currentColor;
}

@media (min-width: 861px) {
	
	#header .main .logo {
		flex-shrink: 0;
	}
	
	#header .nav {
		display: flex;
		align-items: center;
		justify-content: center;
		flex-wrap: wrap;
		column-gap: 30px;
		row-gap: 20px;
	}
	
	#header .nav-element {
		position: relative;
	}
	
	#header .subnav {
		position: absolute;
		color: var(--text-light-1-color);
		background-color: var(--background-dark-20-color);
		box-shadow: 1px 1px 1px rgb(0,0,0,.2), -1px -1px 1px rgb(0,0,0,.2);
		border-radius: 20px;
		padding: 20px;
		width: max-content;
		z-index: 71;
	}
	
	#header .subnav.left {
		left: 0;
		margin-top: 10px;
		margin-left: -10px;
	}
	
	#header .subnav.right {
		right: 0;
		margin-top: 10px;
		margin-right: -10px;
	}
	
	#header .subnav-element + .subnav-element {
		margin-top: 10px;
	}
	
}

@media (max-width: 860px) {
	
	#header .main {
		flex-wrap: wrap;
	}
	
	#header .nav.opened {
		display: block;
		width: 100%;
	}
	
	#header .nav-element,
	#header .subnav-element {
		margin: 10px 0;
	}
	
	#header .subnav {
		margin-left: 10px;
	}
	
}

#welcome-index {
	overflow: hidden;
	padding: 0;
}

#welcome-index, #welcome-index .cover {
	height: 750px;
}

#welcome-index .cover {
	mask-image: linear-gradient(to bottom, black 0%, black 80%, transparent 100%);
	-webkit-mask-image: linear-gradient(to bottom, black 0%, black 80%, transparent 100%);
}

#welcome-index .title {
	margin-top: 200px;
	margin-bottom: 20px;
	text-align: center;
}

#welcome-index .text {
	max-width: 700px;
	margin-bottom: 20px;
	text-align: center;
}

#welcome-index .title, #welcome-index .text {
	filter: drop-shadow(2px 2px 1px black);
}

#welcome-index .call-to-action {
	margin-bottom: 80px;
}

#welcome-index .arrow .icon svg {
	width: 32px;
	height: 32px;
	animation: bounce 1s alternate infinite;
}

@keyframes bounce {
	from {
		transform: translateY(-10px);
	}
	to {
		transform: translateY(10px);
	}
}

#quotes .quote {
	padding: 20px 40px; 
}

#quotes .quote:nth-child(1) {
	background-color: var(--background-dark-20-color);
	color: var(--text-light-1-color);
	margin-left: 5%;
}

#quotes .quote:nth-child(2) {
	background-color: var(--color-2);
	margin-top: -5px;
	margin-left: -4%;
}

#quotes .quote:nth-child(3) {
	background-color: var(--color-3);
	color: var(--text-light-1-color);
	margin-top: -5px;
}

#services .spec-list {
	column-gap: 20px;
	row-gap: 40px;
}

#services .spec {
	flex-basis: 250px;
	padding: 20px;
	box-shadow: 1px 1px 5px rgb(0,0,0,.2), -1px -1px 5px rgb(0,0,0,.2);
}

#services .spec .image {
	max-width: 150px;
	box-shadow: 1px 1px 1px rgb(0,0,0,.2), -1px -1px 1px rgb(0,0,0,.2);
	margin-bottom: 20px;
}

#services .spec .divider {
	width: 25%;
	height: 4px;
	margin-bottom: 20px;
}

#services .spec .title {
	text-align: center;
	margin-bottom: 20px;
}

#services .spec .text {
	margin-bottom: 20px;
}

#services .spec .call-to-action {
	margin-top: auto;
}

#pricing .spec-list {
	column-gap: 20px;
	row-gap: 40px;
}

#pricing .spec {
	flex-basis: 280px;
	padding: 40px;
	overflow: hidden;
	box-shadow: 1px 1px 5px rgb(0,0,0,.2), -1px -1px 5px rgb(0,0,0,.2);
}

#pricing .spec .image {
	max-width: 75px;
	margin-bottom: 20px;
}

#pricing .spec .divider {
	width: 75%;
	height: 4px;
	margin-bottom: 20px;
}

#pricing .spec .title {
	text-align: center;
	margin-bottom: 20px;
}

#pricing .spec .subtitle {
	text-align: center;
	margin-bottom: 20px;
}

#pricing .spec .text {
	align-self: flex-start;
	margin-bottom: 20px;
}

#pricing .spec .price {
	padding: 14px 20px;
	width: 100%;
	transform: translateX(60px);
	margin-top: auto;
	margin-bottom: 20px;
}

#pricing .spec:nth-child(1) .divider,
#pricing .spec:nth-child(1) .price {
	background-color: var(--color-4);
}

#pricing .spec:nth-child(2) .divider,
#pricing .spec:nth-child(2) .price {
	background-color: var(--color-1);
}

#pricing .spec:nth-child(3) .divider,
#pricing .spec:nth-child(3) .price {
	background-color: var(--color-3);
}

#pricing .tax {
	margin-top: 10px;
	text-align: right;
}

#technology .spec-list {
	column-gap: 80px;
	row-gap: 40px;
}

#technology .spec {
	flex-basis: 125px;
}

#technology .spec.little {
	flex-basis: 75px;
}

#technology .spec.big {
	flex-basis: 150px;
}

#faq .spec-list {
	margin-bottom: 40px;
}

#faq .spec + .spec {
	margin-top: 40px;
}

#faq .question {
	width: 100%;
	margin-bottom: 5px;
}

#faq .question .lucide-chevron-right {
	transition: transform 0.2s ease-in-out;
}

#faq input:checked ~ .question .lucide-chevron-right {
	transform: rotate(90deg);
}

#faq input:checked ~ .answer {
	display: block;
}

#about .main {
	gap: 20px;
}

#about .main .image {
	flex-basis: 350px;
	border-radius: 100px 20px;
	box-shadow: 1px 1px 1px rgb(0,0,0,.2), -1px -1px 1px rgb(0,0,0,.2);
}

#about .main .text {
	flex-basis: 700px;
}

#about .call-to-action {
	margin-top: 40px;
}

#video .youtube {
	flex-basis: 700px;
	margin-bottom: 40px;
}

#philosophy .spec-list {
	column-gap: 20px;
	row-gap: 40px;
	margin-bottom: 40px;
}

#philosophy .spec {
	flex-basis: 300px;
}

#philosophy .spec .image {
	max-width: 200px;
	margin-bottom: 20px;
}

#philosophy .spec .title {
	text-align: center;
	margin-bottom: 20px;
}

#projects .spec-list {
	column-gap: 80px;
	row-gap: 40px;
}

#projects .spec {
	flex-basis: 300px;
}

#projects .spec .image img {
	box-shadow: 1px 1px 5px rgb(0,0,0,.2), -1px -1px 5px rgb(0,0,0,.2);
}

#contact .main {
	column-gap: 40px;
	row-gap: 20px;
	margin-bottom: 40px;
}

#contact .main .info {
	flex-basis: 500px;
	flex-grow: 1;
}

#contact .main .info > .text {
	margin-bottom: 20px;
}

#contact .main .info .data {
	width: fit-content;
	margin: 0 auto;
	padding: 20px;
}

#contact .main .info .data a {
	width: 100%;
}

#contact .main .info .data .location,
#contact .main .info .data .phone,
#contact .main .info .data .whats {
	margin-bottom: 20px;
}

#contact .main .info .data .email {
	word-break: break-all;
}

#contact .main .form .inputs {
	row-gap: 10px;
	max-width: 600px;
	width: 100%;
	margin-bottom: 10px;
}

#contact .main .form input.name,
#contact .main .form input.email {
	width: 100%;
	border-bottom: solid 4px var(--background-dark-20-color);
}

#contact .main .form .textarea {
	max-width: 600px;
	width: 100%;
	margin-bottom: 20px;
	height: 200px;
}

#contact .main .form textarea.message {
	width: 100%;
}

#contact .main .form .checkbox {
	margin-bottom: 20px;
}

#contact .main .form .checkbox input {
	width: 24px;
	height: 24px;
}

#contact .google-maps {
	flex-basis: 500px;
}

#pre-blog {
	margin-top: 40px;
}

#pre-blog .title {
	margin-bottom: 20px;
}

#pre-blog .text {
	margin-bottom: 20px;
}

#pre-blog .search {
	max-width: 500px;
	width: 100%;
}

#pre-blog .search form {
	position: relative;
}

#pre-blog .search input.query {
	width: 100%;
	padding-left: 60px;
}

#pre-blog .search button.submit {
	position: absolute;
	left: 10px;
}

#blog .search-query {
	margin-bottom: 10px;
}

#blog .num-results {
	margin-bottom: 40px;
}

#blog .spec-list {
	column-gap: 40px;
	row-gap: 40px;
}

#blog .spec {
	flex-basis: 300px;
	box-shadow: 1px 1px 5px rgb(0,0,0,.2), -1px -1px 5px rgb(0,0,0,.2);
}

#blog .spec .image {
	max-height: 200px;
}

#blog .spec .box {
	padding: 20px;
	flex-grow: 1;
}

#blog .spec .box .title {
	margin-bottom: 10px;
}

#blog .spec .box .title a {
	width: 100%;
}

#blog .spec .box .text {
	margin-bottom: 10px;
}

#blog .spec .box .show-more {
	margin-top: auto;
}

#blog .spec .box .show-more a {
	width: 100%;
}

#blog .pagination {
	gap: 10px;
	margin-top: 40px;
}

#pre-post {
	margin-top: 40px;
}

#pre-post .title {
	text-align: center;
}

#post .main {
	column-gap: 40px;
	row-gap: 20px;
}

#post .main .left {
	flex-basis: 800px;
	flex-grow: 1;
}

#post .main .left .table-of-contents {
	width: fit-content;
	padding: 20px;
	margin-bottom: 20px;
}

#post .main .left .table-of-contents .title {
	margin-bottom: 20px;
}

#post .main .left .content {
	margin-bottom: 20px;
}

#post .main .left .content h2 {
	margin-top: 40px;
	margin-bottom: 20px;
}

#post .main .left .content h3,
#post .main .left .content h4 {
	margin-top: 30px;
	margin-bottom: 15px;
}

#post .main .left .content ol {
	list-style-type: auto;
}

#post .main .left .content ol,
#post .main .left .content ul {
	margin-left: 30px;
}

#post .main .left .date {
	text-align: right;
}

#post .main .right {
	flex-basis: 300px;
	flex-grow: 1;
}

#post .main .right .box {
	position: sticky;
	top: 75px;
}

#post .main .right .share {
	padding: 20px;
	margin-bottom: 20px;
}

#post .main .right .share .title {
	margin-bottom: 10px;
}

#post .main .right .archive {
	padding: 20px;
}

#post .main .right .archive > .title {
	margin-bottom: 20px;
}

#post .main .right .archive .posts .post + .post {
	margin-top: 10px;
}

#post .main .right .archive .posts .post a {
	width: 100%;
	flex-wrap: wrap;
}

#post .main .right .archive .posts .post .title {
	width: 100%;
}

#steps .spec-list {
	gap: 40px;
}

#steps .spec {
	flex-basis: 250px;
	padding: 20px;
}

#steps .spec .title {
	margin-bottom: 20px;
}

#steps .spec .number,
#steps .spec .title {
	text-align: center;
}

#welcome-seo,
#welcome-email-marketing {
	background-repeat: no-repeat;
	background-size: cover;
	background-position-y: bottom;
	height: 500px;
}

#welcome-seo .content,
#welcome-email-marketing .content {
	max-width: 600px;
	margin-top: 100px;
}

#welcome-seo .box,
#welcome-email-marketing .box {
	padding: 20px;
	box-shadow: 1px 1px 5px rgb(0,0,0,.2), -1px -1px 5px rgb(0,0,0,.2);
	margin-bottom: 20px;
}

#welcome-seo .title:nth-child(1),
#welcome-email-marketing .title:nth-child(1) {
	margin-bottom: 5px;
}

#welcome-seo .title:nth-child(2),
#welcome-email-marketing .title:nth-child(2) {
	margin-bottom: 20px;
}

@media (min-width: 861px) {
	#welcome-seo,
	#welcome-email-marketing {
		background-attachment: fixed;
	}
	#welcome-email-marketing .content {
		margin-left: 100px;
		margin-top: 150px;
	}
}

@media (max-width: 860px) {
	#welcome-email-marketing {
		background-position-x: right;
	}
}

#message .title {
	margin-bottom: 20px;
}

#whatsapp-chat {
	position: fixed;
	right: 20px;
	bottom: 20px;
	z-index: 100;
}

#cookies-consent {
	position: fixed;
	bottom: 10px;
	left: 10px;
	right: 10px;
	padding: 10px 0;
	max-width: 700px;
	box-shadow: 1px 1px 1px rgb(0,0,0,.2), -1px -1px 1px rgb(0,0,0,.2);
	line-height: var(--line-height-low);
	z-index: 80;
}

#cookies-consent .text {
	text-align: center;
	margin-bottom: 10px;
}

#cookies-consent .buttons {
	gap: 10px;
}

#footer {
	padding: 40px 0;
	margin-top: 80px;
	padding-bottom: 100px;
	box-shadow: -1px -1px 1px rgb(0,0,0,.2);
}

#footer .main {
	column-gap: 40px;
	row-gap: 40px;
}

#footer .main .meta {
	flex-basis: 600px;
	flex-grow: 1;
}

#footer .main .meta .logo {
	max-width: 250px;
	margin-bottom: 20px;
}

#footer .main .meta .text {
	margin-bottom: 20px;
}

#footer .main .meta .social-networks {
	column-gap: 20px;
	row-gap: 10px;
	margin-bottom: 20px;
}

#footer .main .links {
	flex-basis: 200px;
	flex-grow: 1;
}

#footer .main .links .title {
	margin-bottom: 20px;
}

#footer .main .links .site-link + .site-link {
	margin-top: 10px;
}

#footer .main .links .site-link a,
#footer .main .links .site-link span.pointer {
	width: 100%;
}

#footer .funding {
	border-top: solid 1px currentColor;
	margin-top: 40px;
	padding-top: 10px;
}

#footer .funding .text {
	margin-bottom: 20px;
}

#footer .funding .images {
	gap: 20px;
}

#footer .funding .images .image {
	flex-basis: 250px;
}

#legal {
	margin-top: 40px;
	margin-bottom: 40px;
}

#legal .part {
	margin-top: 30px;
}

#legal .title + .text {
	margin-top: 15px;
}

#not-found .image {
	max-width: 600px;
	margin: 0 auto;
}

/* <--- SECTIONS */
