body, html, * {
	margin: 0;
	padding: 0;

	--color-bg: #f9fafb;
	--color-red: #ce4646;
	--color-red-hover: #ff1c1c;
	--color-black: #404040;
	--color-alt-section: #d4e8f0;
	--color-blue: #00a6ed; /* note: find & replace also in SVG */
	--color-blue-hover: #4981da;
	--color-orange: #ffcc32;
	--color-orange-shadow: #ffcc3259;
}
body, table {
	font-family: 'Roboto', sans-serif;
	font-size: 1.5rem;
	line-height: 1.4;
	background-color: var(--color-bg);
}
@media (max-width: 1200px) {
	body {
		font-size: 1.2rem;
	}
}

section {
	width: 100%;
}
section:not(:first-child) {
	padding-top: 5rem;
}
section:not(:last-child) {
	padding-bottom: 5rem;
}
@media (max-width: 900px) {
	section:not(:first-child) {
		padding-top: 3rem;
	}
	section:not(:last-child) {
		padding-bottom: 3rem;
	}
}
section > * {
	max-width: 70rem;
	margin: 0 auto;
	display: block;
}
@media (max-width: 1200px) {
	section > * {
		max-width: 90%;
	}
	section.section-wide > * {
		max-width: 80%;
	}
}
@media (max-width: 600px) {
	section.top-logo > * {
		max-width: 100%;
	}
}

.section-alt-color {
	background-color: var(--color-alt-section);
}
h2 {
	text-align: center;
	text-transform: uppercase;
	font-size: 1.67em;
	margin-top: 2rem;
	margin-bottom: 2rem;
}

a, a:hover, a:focus, a:active, a:visited {
	color: inherit;
	text-decoration: none;
}

ul {
	list-style: none;
}

ul.checks li {
	background: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><!--! Font Awesome Pro 6.2.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2022 Fonticons, Inc. --><path fill="%231cc91c" d="M448 32H0V480H448V32zM337 209L209 337l-17 17-17-17-64-64-17-17L128 222.1l17 17 47 47L303 175l17-17L353.9 192l-17 17z"/></svg>');
	background-size: 1em 1em;
	background-position-y: 0.15em;
	background-repeat: no-repeat;
	padding-left: 1.5em;
	margin-bottom: 0.8em;
}

.big {
	font-family: 'Space Grotesk', sans-serif;
	font-size: 2em;
	line-height: 1.2;
	margin-top: 1rem;
	margin-bottom: 1rem;
	text-align: center;
}
@media (max-width: 900px) {
	.big {
		font-size: 1.5em;
	}
}
.highlight {
	font-weight: bold;

	background: -webkit-linear-gradient(0deg, var(--color-red), var(--color-black));
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
}

section.header {
	padding-top: 0;
	padding-bottom: 0;
	position: fixed;
	top: 0;
	z-index: 100;
}
.header {
	background: var(--color-black);
	padding-bottom: 3rem;
}
header {
	color: var(--color-bg);
	font-size: .7em;
	display: flex;
	flex-direction: row;
	align-items: center;
}
header > *:nth-child(2) {
	flex-grow: 1;
}
header a, header a:visited {
	color: var(--color-bg);
	text-align: center;
	padding: 1rem;
	border-bottom: 2px solid transparent;
	transition: all .3s;
}
header a:hover {
	border-bottom: 2px dashed var(--color-bg);
}
header .img-logo {
	width: 200px;
}
header a.menu--active {
	font-weight: bold;
	border-bottom: 2px solid var(--color-bg);
}
@media (max-width: 1100px) {
	section.header > * {
		max-width: 100%;
	}
}
@media (max-width: 900px) {
	header {
		font-size: 1em;
	}
}
@media (max-width: 700px) {
	header .img-logo {
		width: 80%;
	}
}
@media (max-width: 600px) {
	header {
		flex-direction: column;
	}
	header > * {
		flex: 1;
		margin-top: 1em;
	}
	header .img-logo {
		width: 50%;
	}
}


.top-logo {
	background: linear-gradient(90deg, var(--color-red) 0%, var(--color-red) 49%, var(--color-black) 51%, var(--color-black) 100%);
	position: relative;
}
.top-logo > img {
	width: 100%;
}
.top-logo > h1 {
	position: absolute;
	top: 0;
	left: 50%;
	font-size: 1em;
}
.top-logo-big {
	display: block;
}
.top-logo-small {
	display: none;
}
@media (max-width: 600px) {
	.top-logo-big {
		display: none;
	}
	.top-logo-small {
		display: block;
	}
}
section.top-logo {
	padding-top: 0;
	padding-bottom: 0;
}
@media (min-width: 700px) {
	section.top-logo {
		padding-top: 87px;
	}
}
@media (min-width: 900px) {
	section.top-logo {
		padding-top: 65px;
	}
}

.grid-2,
.grid-2-reverse {
	display: flex;
	flex-direction: row;
	align-items: start;
}
.grid-2-reverse {
	flex-direction: row-reverse;
}
.grid-2 > *:first-child,
.grid-2-reverse > *:last-child {
	flex: 50% 0 0;
	margin-right: 2rem;
}
.grid-2 > *:last-child,
.grid-2-reverse > *:first-child {
	flex: 50% 0 0;
	margin-left: 2rem;
}
@media (max-width: 1200px) {
	.grid-2 > *:first-child,
	.grid-2-reverse > *:last-child {
			margin-right: 1rem;
	}
	.grid-2 > *:last-child,
	.grid-2-reverse > *:first-child {
			margin-left: 1rem;
	}
}
@media (max-width: 900px) {
	.grid-2 {
		flex-direction: column;
		align-items: center;
		gap: 1em;
	}
	.grid-2-reverse {
		flex-direction: column;
		align-items: center;
		gap: 1em;
	}
	.grid-2 > *:first-child,
	.grid-2-reverse > *:last-child {
			margin-right: 0;
	}
	.grid-2 > *:last-child,
	.grid-2-reverse > *:first-child {
			margin-left: 0;
	}
}

.grid-3 {
	display: flex;
	flex-direction: row;
}
.grid-3 > * {
	flex: 33.3%;
}
@media (max-width: 900px) {
	.grid-3 {
		flex-direction: column;
	}
}

.card {
	border-radius: 0.5rem;
	border: 1px solid #e5e7eb;
	box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -2px rgba(0, 0, 0, 0.1);
	margin: 2rem 1rem;
}
.card-header {
	font-size: 100%;
	font-weight: bold;
	text-align: center;
	text-transform: uppercase;
	background: var(--color-orange);
	padding: 1rem;
}
.card-content {
	padding: 1rem;
	border-top: 1px solid #e1d7dc;
}

.section-alt-color .card {
	border: 1px solid var(--color-orange);
	box-shadow: 0 4px 6px -1px var(--color-orange-shadow), 0 2px 4px -2px var(--color-orange-shadow);
}
.section-alt-color .card-content {
	border-top: 1px solid var(--color-orange);
}

.center {
	text-align: center;
}

p+p {
	margin-top: 2rem;
}

dt {
	margin-top: 2rem;
}
dd {
	margin-top: 0.5rem;
	color: var(--color-blue);
	padding-left: 1.7em;
	position: relative;
}
dd::before {
	/* content: '➡️'; */
	content: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><!--! Font Awesome Pro 6.2.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2022 Fonticons, Inc. --><path fill="%2300a6ed" d="M448 96c0-35.3-28.7-64-64-64L64 32C28.7 32 0 60.7 0 96L0 416c0 35.3 28.7 64 64 64l320 0c35.3 0 64-28.7 64-64l0-320zM377 273L265 385c-9.4 9.4-24.6 9.4-33.9 0s-9.4-24.6 0-33.9l71-71L88 280c-13.3 0-24-10.7-24-24s10.7-24 24-24l214.1 0-71-71c-9.4-9.4-9.4-24.6 0-33.9s24.6-9.4 33.9 0L377 239c9.4 9.4 9.4 24.6 0 33.9z"/></svg>');
	position: absolute;
	top: 0.15em;
	left: 0;
	width: 1em;
	height: 1em;
}

button, a.button, a.button:focus, a.button:active, a.button:visited {
	display: inline-block;
	width: auto;
	background-color: var(--color-red);
	color: white;
	text-align: center;
	vertical-align: center;
	border-radius: 0.375rem;
	text-align: center;
	font-weight: bold;
	font-size: 1em;
	line-height: 1.3;
	padding: 0.7em 1.3em;
	border: none;
	box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -2px rgba(0, 0, 0, 0.1);
	user-select: none;
}
button.button-secondary,
a.button.button-secondary {
	background-color: var(--color-blue);
	font-size: 0.7em;
	line-height: 1.5;
	padding: 0.7rem 1.5rem;
	border: none;
	box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -2px rgba(0, 0, 0, 0.1);
}
button:hover,
a.button:hover {
	background-color: var(--color-red-hover);
	color: white;
	cursor: pointer;
}
button.button-secondary:hover,
a.button.button-secondary:hover {
	background-color: var(--color-blue-hover);
}
@media (max-width: 1000px) {
	button.button-secondary,
	a.button.button-secondary {
		font-size: 0.9em;
	}
}

.buttons-2 {
	display: flex;
	flex-direction: row;
	align-items: center;
	justify-content: center;
	gap: 2rem;
}
@media (max-width: 600px) {
	.buttons-2 {
		flex-direction: column;
	}
}

.footer {
	background: var(--color-black);
	padding-bottom: 3rem;
}
footer {
	color: var(--color-bg);
	font-size: .7em;
	display: flex;
	flex-direction: row;
}
footer > * {
	flex: 25% 0 0;
}
footer a, footer a:visited {
	color: var(--color-bg);
	display: inline-flex;
	align-items: center;
	border-bottom: 2px dashed transparent;
	transition: all .3s;
}
footer a:hover {
	border-bottom: 2px dashed var(--color-bg);
}
footer li {
	line-height: 1.3;
	margin-top: 0.7em;
}
footer .img-logo {
	width: 150px;
	margin-bottom: 2rem;
}
@media (max-width: 800px) {
	footer {
		font-size: 1em;
	}
	footer .img-logo {
		width: 50%;
	}
}
@media (max-width: 700px) {
	footer {
		flex-direction: column;
	}
	footer > * {
		flex: 1;
		margin-top: 1em;
	}

}

.social-media-icon,
.flag-icon {
	height: 1em;
	width: 1.5em;
	margin-right: .5em;
}
svg.social-media-icon path {
	fill: var(--color-bg);
}
h3 {
	font-size: 105%;
	color: #c3c6c9;
}

.grid-2 .caption h2,
.grid-2-reverse .caption h2 {
	margin-top: 0;
}

.grid-2 .caption img,
.grid-2-reverse .caption img {
	width: 100%;
	margin: 0 auto;
	display: block;
}
@media (max-width: 1200px) {
	.grid-2 .caption img:not(.profile-img--image),
	.grid-2-reverse .caption img:not(.profile-img--image) {
		width: 80%;
	}
}
.grid-2 .text,
.grid-2-reverse .text {
	display: flex;
	align-items: center;
	flex-direction: column;
	justify-content: center;
}

.section-img {
	width: 30%;
	margin: 0 auto;
	display: block;
}
@media (max-width: 900px) {
	.section-img {
		width: 60%;
	}
}

.intro .button {
	margin-top: 4rem;
}

.cta .buttons-cta {
	margin-top: 4rem;
	margin-bottom: 2rem;
}

.cta2 .button {
	margin-top: 2rem;
}

ul.help-list > li {
	padding-left: 1.7em;
	position: relative;
	margin-top: 1rem;
}
ul.help-list > li::before {
	/* content: '➡️'; */
	content: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><!--! Font Awesome Pro 6.2.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2022 Fonticons, Inc. --><path fill="%2300a6ed" d="M448 96c0-35.3-28.7-64-64-64L64 32C28.7 32 0 60.7 0 96L0 416c0 35.3 28.7 64 64 64l320 0c35.3 0 64-28.7 64-64l0-320zM377 273L265 385c-9.4 9.4-24.6 9.4-33.9 0s-9.4-24.6 0-33.9l71-71L88 280c-13.3 0-24-10.7-24-24s10.7-24 24-24l214.1 0-71-71c-9.4-9.4-9.4-24.6 0-33.9s24.6-9.4 33.9 0L377 239c9.4 9.4 9.4 24.6 0 33.9z"/></svg>');
	position: absolute;
	top: 0.15em;
	left: 0;
	width: 1em;
	height: 1em;
}


.cookie-banner {
	position: fixed;
	bottom: 0;
	left: 0;
	width: 100%;
	text-align: center;
	z-index: 1999999;
	padding: 1rem;
	background: white;
	border-top: 2px solid black;
}

.custom-select {
	--custom-select-bg: var(--color-black);
	--custom-select-fg: var(--color-bg);
	--custom-select-selected: var(--color-blue);
}

.menu-mobile {
	margin: 2rem;
	display: none;
}
@media (max-width: 700px) {
	header {
		display: none;
	}
	.menu-mobile {
		display: block;
	}
}

.pricing .card-header {
	line-height: 1.5em;
}
.price {
	margin-top: 1em;
	line-height: 1.5em;
	text-align: center;
}
.price-old {
	text-decoration: line-through;
}
.price-new {
	font-size: 1.5em;
}
.plus-vat {
	font-size: .8em;
	color: #757575;
}
.price-button {
	text-align: center;
	margin-bottom: 1em;
}
@media (max-width: 900px) {
	.price-team .price {
		display: none;
	}
}


.profile-img--container {
	width: 150px;
	height: 150px;
	margin: auto;
}
.profile-img--image {
	width: 100%;
	height: 100%;
	border-radius: 50%;
}
.left {
	align-items: start;
}
.profile-img--caption {
	text-align: center;
	margin-top: 1em;
	font-size: 0.9em;
}

/* newsletter */

.icon {
	height: 1em;
	opacity: 0.7;
}

.per-month {
	font-size: 0.8em;
}

.newsletter-pricing {
	max-width: 20em;
}

.img-guarantee {
	height: 9em;
}

.page-newsletter .section-img {
	height: 14em;
	margin-bottom: 1.5em;
}


/* code review */

.code-review-more {
	margin-top: 2em;
}


/* MailerLite */

#mlb2-1750789.ml-form-embedContainer .ml-form-embedWrapper.embedForm {
	max-width: 25em !important;
}

.ml-form-embedWrapper.embedForm {
	background-color: transparent !important;
}

label,
#mlb2-1750789.ml-form-embedContainer .ml-form-embedWrapper .ml-form-embedBody .ml-form-fieldRow input.form-control {
	font-family: inherit !important;
	font-size: 0.9em !important;
	font-weight: normal !important;
	color: black !important;
}

label {
	margin-top: 1.5em;
	margin-bottom: 0.5em !important;
}

#mlb2-1750789.ml-form-embedContainer .ml-form-embedWrapper .ml-form-embedBody .ml-form-embedPermissions .ml-form-embedPermissionsContent.privacy-policy p {
	font-family: inherit !important;
	font-size: .8em !important;
	color: #757575 !important;
	line-height: 1.3 !important;
}

.page-newsletter #mlb2-1750789.ml-form-embedContainer .ml-form-embedWrapper .ml-form-embedBody .ml-form-embedSubmit button.primary {
	display: inline-block !important;
	width: auto !important;
	background-color: var(--color-red) !important;
	color: white !important;
	text-align: center !important;
	vertical-align: center !important;
	border-radius: 0.375rem !important;
	text-align: center !important;
	font-weight: bold !important;
	font-size: 1em !important;
	line-height: 1.3 !important;
	padding: 0.7em 1.3em !important;
	border: none !important;
	box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -2px rgba(0, 0, 0, 0.1) !important;
	user-select: none !important;
}
.page-newsletter #mlb2-1750789.ml-form-embedContainer .ml-form-embedWrapper .ml-form-embedBody .ml-form-embedSubmit button.primary:hover {
	background-color: var(--color-red-hover) !important;
	color: white !important;
	cursor: pointer !important;
}

.ml-form-successContent {
	background: #92e09296;
	padding: 0.5em 1em;
}


/* Law */

.page-law > .law-section ul {
	list-style-type: disc;
}
.page-law > .law-section li {
	/* padding-left: 1em; */
	margin-left: 1em;
}

.page-helpdesk .price {
	height: 1.5em;
}

.page-helpdesk-pl .price {
	height: 3em;
}


/* Timeline */

#timeline {
	--timeline-color: #C5C5C5;
}
.section-alt-color #timeline {
	--timeline-color: #5A899C;
}

.timeline-header-spacer {
	margin-top: 1.5em;
}

.timeline-row {
	display: flex;
	width: 80%;
	margin: 0 auto;
}
@media (max-width: 1200px) {
	.timeline-row {
		width: 100%;
	}
}
.timeline-row-left > div {
	position: relative;
	color: var(--timeline-color);
}
.timeline-row-left > div::after {
	content: "";
	width: 10px;
	height: 10px;
	background: var(--timeline-color);
	/* border: 2px solid #FFFFFF; */
	border-radius: 50%;
	position: absolute;
	left: 66px;
	top: 0.5em;
	z-index: 2;
}
.timeline-row-right {
	display: flex;
	align-items: center;
	margin-left: 40px;
}

#timeline .mark-bottom::after {
	content: "";
	position: absolute;
	left: 69px;
	top: 0.5em;
	width: 4px;
	z-index: 3;
	background: var(--timeline-color);
}
#timeline .mark-bottom-1::after {
	top: 0.2em;
	height: 1em;
}
#timeline .mark-bottom-2::after {
	height: 1.4em;
}
#timeline .mark-bottom-3::after {
	height: 2.8em;
}
#timeline .mark-bottom-4::after {
	height: 5.2em;
}
#timeline .mark-bottom-5::after {
	height: 5.6em;
}
#timeline .mark-bottom-6::after {
	height: 7em;
}

.timeline-extra {
	margin-top: 2em;
}
