/*
 * Figma-szabály (általánosítva): a welcome/marketing felületek jobb felső sarka
 * legyen szögletes.
 * - külső shell: main.wrap
 * - minden welcome szekció
 * - kártyák/CTA-k/kiemelések
 * - beillesztett (rounded) képek
 */
main.wrap,
footer.wrap,
main.wrap > section,
main.wrap > .section,
main.wrap .accordion,
main.wrap .accordion-item,
main.wrap .accordion-button,
main.wrap .accordion-collapse,
main.wrap section .card,
main.wrap section .card-img-top,
.documentation-content-box,
.documentation-toc .border.rounded,
.welcome-nav,
.welcome-nav__lang a,
.btn,
.problem-section__chip,
.problem-section__closing,
.problem-section__media,
.problem-section__image,
.payment-logo,
.story-section__card,
.review-card,
.register-card,
.plan-card,
.pricing-card,
.cornerstone-card,
.welcome-hero,
.welcome-hero__media,
.welcome-hero__image,
.welcome-hero__related-links,
.welcome-hero__capacity-cta,
.welcome-hero__panel,
.role-section,
.reviews-section,
.role-selector__inner,
.role-selector__inner--problem,
.role-panel__summary,
.how-it-works-highlight,
.cornerstone-cta,
.cornerstone-faq__item,
main.wrap section img.rounded,
main.wrap section img.rounded-1,
main.wrap section img.rounded-2,
main.wrap section img.rounded-3,
main.wrap section img.rounded-4,
main.wrap section img.rounded-5 {
	border-top-right-radius: 0 !important;
}

/*
 * Figma-szabály: a "kártya / kiemelt felület / CTA" elemek jobb felső sarka minden
 * marketing oldalon legyen sarkos.
 */
.welcome-nav,
.welcome-nav__lang a,
.btn,
.problem-section__chip,
.problem-section__image,
.payment-logo,
.story-section__card,
.review-card,
.register-card,
.plan-card,
.pricing-card,
.cornerstone-card,
.welcome-hero,
.welcome-hero__media,
.welcome-hero__image,
.welcome-hero__related-links,
.welcome-hero__capacity-cta,
.welcome-hero__panel,
.role-section,
.reviews-section,
.role-selector__inner,
.role-selector__inner--problem,
.role-panel__summary,
.how-it-works-highlight,
.cornerstone-cta,
.cornerstone-faq__item,
main.wrap section img.rounded,
main.wrap section img.rounded-1,
main.wrap section img.rounded-2,
main.wrap section img.rounded-3,
main.wrap section img.rounded-4,
main.wrap section img.rounded-5 {
	border-top-right-radius: 0 !important;
}

:root {
				--blue: #00587C;
				--blude: #00587C;
				--accent: #fc7b00;
				/* Webtérülő sötétkék */
				--teal: #00859B;
				/* Webtérülő türkiz */
				--gray: #e8e8e8;
				/* Webtérülő szürke háttér */
				--grad: linear-gradient(to right, #ffc107, #fc7b00);
				/* Webtérülő narancs áttűnés */
				/* --link-light: #0d6efd; */
				--link-light: #fc7b00;
				--link-light-hover: #0a58ca;
				--link-dark: #7cd6f0;
				--link-dark-hover: #b1ecff;
				--link-hover-surface: rgba(0, 133, 155, 0.08);
				--link-hover-surface-dark: rgba(247, 250, 252, 0.16);
			}

			.btn-primary {
				background: var(--grad);
				border-color: #f59000;
				color: #1b3f53;
				font-weight: 700;
			}

			.btn-primary:hover,
			.btn-primary:focus {
				background: linear-gradient(to right, #ffd85a, #ff8f1a);
				border-color: #ff8f1a;
				color: #14323f;
			}

			.btn-outline-primary,
			.btn-outline-secondary {
				color: var(--blue);
				border-color: var(--teal);
				font-weight: 700;
			}

			.btn-outline-primary:hover,
			.btn-outline-secondary:hover,
			.btn-outline-primary:focus,
			.btn-outline-secondary:focus {
				color: #0f2f40;
				background: var(--grad);
				border-color: #f59000;
			}

			.btn-outline-primary.active,
			.btn-outline-primary.active:hover,
			.btn-outline-primary.active:focus,
			.btn-outline-primary.active:focus-visible {
				color: #0f2f40;
				background: var(--grad);
				border-color: #f59000;
			}

			* {
				box-sizing: border-box
			}

body {
				margin: 0;
				/* font-family: Arial, Ubuntu, Roboto, system-ui, -apple-system, Segoe UI, sans-serif; */
				font-family: 'Inter', system-ui, -apple-system, sans-serif;
				color: var(--blue);
				background: linear-gradient(160deg, #ecf2f4 0%, #e4edf0 46%, #eef4f6 100%);
				line-height: 1.5;
			}

body::before {
	content: "";
	position: fixed;
	inset: 0;
	pointer-events: none;
	z-index: -1;
	background:
		radial-gradient(84% 72% at 8% 2%, rgba(0, 133, 155, 0.18) 0%, rgba(0, 133, 155, 0) 68%),
		radial-gradient(76% 64% at 92% 8%, rgba(252, 123, 0, 0.14) 0%, rgba(252, 123, 0, 0) 72%);
}

body::after {
	content: "";
	position: fixed;
	inset: 0;
	pointer-events: none;
	z-index: -1;
	opacity: 0.025;
	background-image:
		radial-gradient(circle at 20% 20%, rgba(9, 25, 34, 0.36) 0.45px, transparent 0.6px),
		radial-gradient(circle at 80% 70%, rgba(9, 25, 34, 0.28) 0.4px, transparent 0.55px);
	background-size: 3px 3px, 4px 4px;
	background-position: 0 0, 1px 2px;
}

main.wrap {
	--link-color: var(--link-light);
	--link-color-hover: var(--link-light-hover);
	--link-bg-hover: var(--link-hover-surface);
	position: relative;
	padding-top: 0 !important;
	background: rgba(255, 255, 255, 0.4);
	border: 1px solid rgba(255, 255, 255, 0.36);
	box-shadow: 0 12px 30px rgba(0, 88, 124, 0.07);
	backdrop-filter: blur(4px);
	-webkit-backdrop-filter: blur(4px);
}

main.wrap > section,
main.wrap > .section {
	background: rgba(255, 255, 255, 0.58);
	border: 1px solid rgba(255, 255, 255, 0.45);
	box-shadow: 0 10px 28px rgba(0, 88, 124, 0.08);
	border-radius: 16px;
	border-top-right-radius: 0 !important;
	overflow: hidden;
	background-clip: padding-box;
}

main.wrap section a:not(.btn) {
	color: var(--link-color);
	text-decoration: none;
	border-radius: 6px;
	padding: 1px 6px;
	transition: color 0.2s ease, background-color 0.2s ease;
	text-decoration-skip-ink: auto;
}

main.wrap .blog-content a:not(.btn) {
	color: var(--link-color);
	text-decoration: none;
	border-radius: 6px;
	padding: 1px 6px;
	transition: color 0.2s ease, background-color 0.2s ease;
	text-decoration-skip-ink: auto;
}

main.wrap .link-primary {
	color: var(--link-light) !important;
}

main.wrap .link-primary:hover,
main.wrap .link-primary:focus {
	color: var(--link-light-hover) !important;
}

main.wrap section a:not(.btn):hover,
main.wrap section a:not(.btn):focus {
	color: var(--link-color-hover);
	background-color: var(--link-bg-hover);
}

main.wrap .blog-content a:not(.btn):hover,
main.wrap .blog-content a:not(.btn):focus {
	color: var(--link-color-hover);
	background-color: var(--link-bg-hover);
}

@media (min-width: 992px) {
	main.wrap .blog-content .blog-post-featured-image {
		float: left;
		width: 50%;
		max-width: 50%;
		margin: 0 1.5rem 1rem 0;
	}

	main.wrap .blog-content .blog-flow-below-featured-image {
		clear: left;
		padding-top: 1rem;
	}

	main.wrap .blog-content::after {
		content: "";
		display: block;
		clear: both;
	}
}

@media (max-width: 991.98px) {
	main.wrap section a.story-section__card--domain,
	main.wrap section a.story-section__card--domain:hover,
	main.wrap section a.story-section__card--domain:focus,
	main.wrap section a.story-section__card--domain:focus-visible {
		padding: 12px;
		border-radius: 12px;
		background-color: transparent;
	}
}

.documentation-toc a {
	color: var(--link-color);
}

.documentation-toc a:hover,
.documentation-toc a:focus {
	color: var(--link-color-hover);
}

.documentation-more-details-link {
	color: var(--link-color);
}

.documentation-more-details-link:hover,
.documentation-more-details-link:focus {
	color: var(--link-color-hover);
}


.documentation-content-box {
	scroll-margin-top: 96px;
}

@media (max-width: 991.98px) {
	.documentation-content-box {
		scroll-margin-top: 84px;
	}
}

.story-section__actions {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	margin: 20px 0;
}

.story-section__images {
	display: flex;
	flex-direction: column;
	gap: 16px;
}

.story-section__list {
	padding-left: 18px;
	margin-bottom: 16px;
}

.story-section__grid {
	margin-top: 12px;
}

#welcomeFaqAccordion .accordion-button:not(.collapsed),
#operationalFaqAccordion .accordion-button:not(.collapsed) {
	color: var(--blue);
	background-color: rgba(0, 133, 155, 0.12);
	box-shadow: inset 0 -1px 0 rgba(0, 88, 124, 0.15);
}

.story-section__card {
	display: flex;
	gap: 12px;
	padding: 16px;
	border-radius: 12px;
	background: rgba(255, 255, 255, 0.88);
	border: 1px solid rgba(0, 88, 124, 0.12);
	box-shadow: 0 10px 24px rgba(0, 0, 0, 0.06);
	height: 100%;
}


.guides-documentation-box {
	flex-direction: column;
	align-items: flex-start;
	gap: 16px;
}

.guides-documentation-box__content {
	max-width: 100%;
}

.guides-documentation-box .btn {
	white-space: normal;
}

@media (min-width: 768px) {
	.guides-documentation-box {
		flex-direction: row;
		align-items: center;
		justify-content: space-between;
		gap: 20px;
	}

	.guides-documentation-box__content {
		max-width: min(72ch, 75%);
	}
}

@media (max-width: 575.98px) {
	.guides-documentation-box .btn {
		width: 100%;
	}
}
.story-section__card--highlight {
	background: linear-gradient(90deg, rgba(0, 133, 155, 0.08), rgba(0, 88, 124, 0.06));
}

.story-section__card--domain {
	position: relative;
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	align-items: end;
	overflow: hidden;
	aspect-ratio: 3 / 2;
	min-height: 220px;
	padding: 12px;
	background-position: center;
	background-size: cover;
	background-repeat: no-repeat;
	text-decoration: none;
	color: inherit;
	transition: transform 0.25s ease, box-shadow 0.25s ease;
}

.story-section__card--domain::before {
	content: "";
	position: absolute;
	inset: 0;
	background: rgba(255, 255, 255, 0.44);
	transition: background-color 0.25s ease;
}

.story-section__card--domain:hover,
.story-section__card--domain:focus-visible {
	transform: translateY(-4px);
	box-shadow: 0 16px 34px rgba(0, 0, 0, 0.18);
}

.story-section__card--domain:hover::before,
.story-section__card--domain:focus-visible::before {
	background: rgba(255, 255, 255, 0.36);
}

.story-section__card--domain-static {
	transition: none;
}

.story-section__card--domain-static:hover,
.story-section__card--domain-static:focus-visible {
	transform: none;
	box-shadow: 0 10px 24px rgba(0, 0, 0, 0.06);
}

.story-section__card--domain-static:hover::before,
.story-section__card--domain-static:focus-visible::before {
	background: rgba(255, 255, 255, 0.44);
}

.story-section__domain-content {
	position: relative;
	z-index: 1;
	display: grid;
	gap: 12px;
	padding: 14px;
	border-radius: 10px;
	background: rgba(255, 255, 255, 0.76);
	border: 1px solid rgba(255, 255, 255, 0.9);
	box-shadow: 0 6px 16px rgba(0, 0, 0, 0.08);
}

.story-section__card-header {
	line-height: 1.4;
}

.story-section__domain-list {
	margin: 0;
	padding-left: 18px;
	display: grid;
	gap: 6px;
}

.story-section__iconbox {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 56px;
	height: 56px;
	border-radius: 14px;
	background: rgba(0, 133, 155, 0.12);
	color: var(--blue);
	font-weight: 700;
	flex-shrink: 0;
}

.key-insights__card {
	align-items: center;
	flex-direction: row;
	gap: 10px;
}

.key-insights__icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 44px;
	height: 44px;
	color: #0b2a57;
	font-size: 36px;
	font-weight: 800;
	line-height: 1;
	flex-shrink: 0;
}

.key-insights__link {
	font-weight: 600;
	line-height: 1.4;
	padding-left: 0 !important;
}

.glance-card {
	flex-direction: column;
	gap: 14px;
}

.glance-card__image {
	position: relative;
	width: 100%;
	height: 180px;
	border: 1px solid rgba(0, 88, 124, 0.15);
	border-radius: 12px;
	border-top-right-radius: 0;
	overflow: hidden;
	background: #f6fbfd;
}

.glance-card__image-media {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
	display: block;
	border-top-right-radius: 0;
	opacity: 0;
	transition: opacity 3s ease;
	will-change: opacity;
}

.glance-card__image-media {
	z-index: 1;
}

.glance-card__image-media.is-active {
	opacity: 1;
	z-index: 2;
}

.glance-card__image-media.is-next {
	opacity: 0;
	z-index: 3;
}

.glance-card__image-media.is-entering {
	opacity: 1;
}

.glance-card__image-media.is-leaving {
	opacity: 0;
}

.glance-card__body {
	display: grid;
	gap: 10px;
}

.glance-card__title {
	margin-bottom: 0;
	font-size: 1.1rem;
	line-height: 1.35;
}


			.beta-banner {
				max-width: 960px;
				margin: 10px auto 6px;
				padding: 6px 7px;
				background: #0f2f40;
				color: #fefcf7;
				border-radius: 12px;
				box-shadow: 0 10px 24px rgba(0, 0, 0, .12);
				display: flex;
				align-items: center;
				gap: 10px;
				font-weight: 700;
				letter-spacing: .1px;
			}

			.beta-banner__dot {
				width: 12px;
				height: 12px;
				border-radius: 999px;
				background: var(--grad);
				box-shadow: 0 0 0 6px rgba(255, 193, 7, .15);
				display: inline-block;
				flex-shrink: 0;
			}

			.beta-banner__text {
				color: inherit;
				font-size: 14px;
			}

/* Welcome nav */
.welcome-nav {
	margin-bottom: 16px;
	padding: 8px 0;
	border-bottom: 1px solid #eef2f4;
	border-radius: 16px 0 16px 16px;
	position: sticky;
	top: 0;
	background: rgba(255, 255, 255, 0.72);
	border: 1px solid rgba(255, 255, 255, 0.36);
	box-shadow: 0 12px 30px rgba(0, 88, 124, 0.07);
	z-index: 1020;
	backdrop-filter: blur(6px);
	-webkit-backdrop-filter: blur(6px);
}

.welcome-nav::before {
	content: "";
	position: absolute;
	inset: 0;
	pointer-events: none;
	background: linear-gradient(135deg, rgba(255, 255, 255, 0.36), rgba(255, 255, 255, 0.08));
	border-bottom: 1px solid rgba(255, 255, 255, 0.45);
	border-radius: 16px 0 16px 16px;
}

.wrap .welcome-nav {
	margin-left: calc(var(--wrap-padding, 24px) * -1);
	margin-right: calc(var(--wrap-padding, 24px) * -1);
	padding-left: var(--wrap-padding, 24px);
	padding-right: var(--wrap-padding, 24px);
}

.welcome-nav .container-fluid {
	align-items: center;
	gap: 12px;
	position: relative;
	z-index: 1;
}

.welcome-nav .navbar-brand {
	padding-top: 0;
	padding-bottom: 0;
}

.welcome-nav__brand {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	justify-content: center;
	flex: 0 1 210px;
	width: min(82vw, 210px);
	max-width: min(82vw, 210px);
	min-width: 0;
	padding: 0;
	margin-right: 12px;
	text-decoration: none;
}

.welcome-nav__logo {
	display: block;
	width: 100%;
	font-size: 1.45rem;
	font-weight: 700;
	letter-spacing: .08em;
	color: var(--blue);
	height: auto;
	max-height: 60px;
	max-width: 100%;
}

.welcome-nav__tagline {
	display: block;
	margin-top: 4px;
	max-width: 100%;
	overflow: hidden;
	position: relative;
	color: #52798b;
	font-size: 0.76rem;
	font-weight: 600;
	line-height: 1.2;
	text-align: left;
	white-space: nowrap;
}

.welcome-nav__tagline-static {
	display: block;
	line-height: inherit;
	white-space: nowrap;
}

.welcome-nav__tagline-track {
	display: none;
	width: max-content;
	position: absolute;
	top: 0;
	left: 0;
	align-items: center;
	line-height: inherit;
	pointer-events: none;
	white-space: nowrap;
}

.welcome-nav__tagline.is-overflowing {
	mask-image: linear-gradient(90deg, transparent 0, #000 12px, #000 calc(100% - 12px), transparent 100%);
	-webkit-mask-image: linear-gradient(90deg, transparent 0, #000 12px, #000 calc(100% - 12px), transparent 100%);
}

.welcome-nav__tagline.is-overflowing .welcome-nav__tagline-static {
	visibility: hidden;
}

.welcome-nav__tagline.is-overflowing .welcome-nav__tagline-track {
	display: inline-flex;
	animation: welcome-nav-tagline-marquee 18s linear infinite;
}

.welcome-nav__tagline.is-overflowing:hover .welcome-nav__tagline-track {
	animation-play-state: paused;
}

.welcome-nav__tagline-text {
	flex: 0 0 auto;
	line-height: inherit;
	padding-right: 2rem;
}

@keyframes welcome-nav-tagline-marquee {
	from {
		transform: translateX(0);
	}

	to {
		transform: translateX(-50%);
	}
}

@media (prefers-reduced-motion: reduce) {
	.welcome-nav__tagline {
		mask-image: none;
		-webkit-mask-image: none;
	}

	.welcome-nav__tagline.is-overflowing {
		overflow-x: auto;
		scrollbar-width: none;
	}

	.welcome-nav__tagline.is-overflowing::-webkit-scrollbar {
		display: none;
	}

	.welcome-nav__tagline.is-overflowing .welcome-nav__tagline-static {
		visibility: visible;
	}

	.welcome-nav__tagline.is-overflowing .welcome-nav__tagline-track {
		display: none;
	}
}

.welcome-nav .navbar-toggler {
	border-color: #d9e2ec;
	color: var(--blue);
	box-shadow: none;
	position: relative;
	z-index: 2;
}

.custom-toggler {
	width: 44px;
	height: 44px;
	padding: 10px;
	border: 0;
	background: transparent;
	position: relative;
}

.custom-toggler:focus {
	box-shadow: none;
}

.custom-toggler .toggler-bar {
	display: block;
	width: 24px;
	height: 2px;
	background-color: #00587C;
	margin: 5px auto;
	transition: transform 180ms ease, opacity 120ms ease;
}

.custom-toggler[aria-expanded="true"] .toggler-bar:nth-child(1) {
	transform: translateY(7px) rotate(45deg);
}

.custom-toggler[aria-expanded="true"] .toggler-bar:nth-child(2) {
	opacity: 0;
}

.custom-toggler[aria-expanded="true"] .toggler-bar:nth-child(3) {
	transform: translateY(-7px) rotate(-45deg);
}

			.welcome-nav .navbar-toggler:focus {
				box-shadow: 0 0 0 .15rem rgba(0, 133, 155, .25);
			}

			.welcome-nav__collapse {
				align-items: center;
			}

			.welcome-nav__links {
				display: flex;
				align-items: center;
				gap: 16px;
				list-style: none;
				padding: 0;
				margin: 0;
				flex-wrap: wrap;
			}

			.welcome-nav__links .nav-link {
				text-decoration: none;
				color: var(--blue);
				font-weight: 700;
				letter-spacing: .2px;
				padding: 6px 0;
			}

			.welcome-nav__links .nav-link:focus,
			.welcome-nav__links .nav-link:focus-visible {
				color: var(--blue);
			}

			.welcome-nav__links .nav-link:hover {
				text-decoration: underline;
			}

			.welcome-nav__lang {
				display: flex;
				align-items: center;
				gap: 8px;
				flex-wrap: wrap;
				color: #52798b;
				font-weight: 600;
			}

			.welcome-nav__lang a {
				text-decoration: none;
				color: var(--blue);
				font-weight: 700;
			}

			.welcome-nav__lang a.active {
				text-decoration: underline;
			}

			.welcome-nav__lang a:hover {
				text-decoration: underline;
			}

			@media (min-width: 992px) {
				.welcome-nav__collapse {
					display: flex !important;
					justify-content: flex-end;
					margin-left: auto;
					gap: 24px;
				}

				.welcome-nav__links {
					justify-content: flex-end;
					margin-left: auto;
				}

				.welcome-nav__lang {
					position: relative;
					padding-left: 24px;
					margin-left: 0 !important;
					flex-wrap: nowrap;
				}

				.welcome-nav__lang::before {
					content: "|";
					position: absolute;
					left: 0;
					top: 50%;
					transform: translateY(-50%);
					color: #9cb4c1;
					font-weight: 400;
				}
			}

			.blog-card__title-link {
				color: var(--link-color);
			}

			.blog-card__title-link:hover,
			.blog-card__title-link:focus {
				color: #0f2f40;
			}

@media (max-width: 991.98px) {
	.welcome-nav {
		padding: 4px 0;
	}

	.welcome-nav .container-fluid {
		justify-content: space-between;
	}

	.custom-toggler {
		width: 36px;
		height: 36px;
		padding: 6px;
	}

	.welcome-nav__links {
		flex-direction: column;
		align-items: flex-start;
		padding-top: 12px;
	}

				.welcome-nav__lang {
					margin-top: 12px;
				}

	.welcome-nav__brand {
		flex: 0 1 220px;
		width: min(74vw, 220px);
		max-width: min(74vw, 220px);
		margin-right: 0;
	}

	.welcome-nav__logo {
		width: auto;
		max-height: 36px;
	}

	.welcome-nav__tagline {
		font-size: 0.68rem;
		margin-top: 0;
		line-height: 1.05;
	}


	.welcome-section__content {
		order: 1;
	}

	.welcome-section__media {
		order: 2;
	}
}

/* Welcome hero */
.wrap {
	max-width: 100%;
	margin: 20px auto;
	padding: 24px;
	background: rgba(255, 255, 255, 0.88);
	border-radius: 18px;
	box-shadow: 0 10px 24px rgba(0, 0, 0, .07);
	--wrap-padding: 24px;
}

@media (min-width: 992px) {
	.wrap {
		width: 73vw;
	}
}

@media (max-width: 991.98px) {
	.wrap {
		margin-top: 0; /* Ezt most csak a PR végett: Ne legyen mobilon felül szürke sáv. */
		padding: 0 12px 24px;
		--wrap-padding: 12px;
	}
}

                        .welcome-hero {
                                padding: 24px 24px;
                                border-radius: 18px;
                                background: linear-gradient(135deg, rgba(0,133,155,0.06), rgba(0,88,124,0.08));
                                border: 1px solid #e6edf2;
                                box-shadow: 0 8px 20px rgba(0,0,0,0.05);
                        }

                        .welcome-hero .row {
                                --bs-gutter-y: 18px;
                        }

                        @media (min-width: 992px) {
                                .welcome-hero .row {
                                        --bs-gutter-x: 18px;
                                }

                                .welcome-hero__panel {
                                        margin-top: 18px;
                                }
                        }

			.welcome-hero__content {
				display: grid;
				gap: 12px;
			}

			.welcome-hero__brand {
				display: flex;
				align-items: center;
				gap: 12px;
				flex-wrap: wrap;
			}

			.welcome-hero__badge {
				display: inline-block;
				padding: 8px 12px;
				border-radius: 999px;
				background: #fff2d5;
				color: #a65000;
				font-weight: 800;
				letter-spacing: .2px;
				box-shadow: 0 8px 16px rgba(0, 0, 0, 0.05);
				max-width: 100%;
				text-align: left;
			}

			@media (max-width: 575.98px) {
				.welcome-hero__brand {
					flex-direction: column;
					align-items: flex-start;
				}

				.welcome-hero__badge {
					width: 100%;
				}
			}

			.welcome-hero__title {
				margin: 0;
				color: #00587C;
                white-space: pre-wrap;
			}

			.welcome-hero__lead {
				margin: 0;
				color: #1b3f53;
			}

			.welcome-hero__proof {
				margin: 0;
				color: #1f2a33;
				font-size: clamp(1.1rem, 1.8vw, 1.25rem);
				line-height: 1.45;
				max-width: 72ch;
			}

			.welcome-hero__proof strong {
				font-weight: 800;
			}

			.welcome-hero__capacity-cta {
				margin-top: 1.25rem;
				padding: clamp(1.25rem, 3vw, 1.75rem);
				border: 1px solid rgba(252, 123, 0, 0.35);
				border-radius: 18px;
				background:
					linear-gradient(135deg, rgba(255, 255, 255, 0.96), rgba(255, 247, 237, 0.94)),
					linear-gradient(to right, rgba(255, 193, 7, 0.24), rgba(252, 123, 0, 0.2));
				box-shadow: 0 18px 34px rgba(252, 123, 0, 0.16), 0 10px 28px rgba(0, 88, 124, 0.09);
			}

			.welcome-hero__capacity-cta-title {
				margin: 0 0 0.65rem;
				color: #1b3f53;
				font-size: clamp(1.45rem, 3vw, 2.05rem);
				font-weight: 850;
				line-height: 1.12;
			}

			.welcome-hero__capacity-cta-body {
				margin: 0;
				max-width: 58ch;
				color: #355263;
				font-size: 1.02rem;
			}

			.welcome-hero__capacity-cta-list {
				margin: 1rem 0 1.2rem;
				padding: 0;
				display: grid;
				gap: 0.45rem;
				list-style: none;
				color: #17475d;
				font-weight: 750;
			}

			.welcome-hero__capacity-cta-list li::before {
				content: "✓";
				margin-right: 0.5rem;
				color: #00859B;
				font-weight: 900;
			}

			.welcome-hero__capacity-cta-button {
				box-shadow: none;
			}

			.welcome-hero__capacity-cta-button--primary {
				box-shadow: 0 10px 20px rgba(252, 123, 0, 0.24);
			}

			.welcome-hero__bridge {
				margin: 0;
				color: #355263;
				font-size: 1.03rem;
				line-height: 1.45;
				max-width: 62ch;
			}

			.welcome-hero__seo-subtitle {
				margin: 12px 0 0;
				color: #5f6b76;
				font-size: 0.95rem;
				line-height: 1.4;
				max-width: 680px;
			}

			.welcome-hero__seo-subtitle a {
				color: inherit;
				text-decoration: underline;
			}


			@media (max-width: 575.98px) {
				.welcome-hero__seo-subtitle {
					font-size: 0.89rem;
					max-width: 44ch;
				}
			}

			.welcome-hero__actions {
				display: flex;
				flex-direction: column;
				align-items: flex-start;
				gap: 0.35rem;
			}

			.welcome-hero__actions-buttons {
				display: flex;
				flex-wrap: wrap;
				align-items: center;
				gap: 0.75rem;
			}

			.welcome-hero__media {
				display: flex;
				justify-content: flex-start;
			}

			.welcome-hero__related-links {
				margin-top: 1rem;
				padding: 0.9rem 1rem;
				border-radius: 14px;
				background: #f7fafc;
				border: 1px solid #dce6ee;
			}

			.welcome-hero__related-links--in-section {
				margin: 1rem 0 1.25rem;
				background: rgba(247, 250, 252, 0.92);
			}

			.welcome-hero__related-title {
				margin: 0 0 0.5rem;
				font-size: 0.92rem;
				font-weight: 700;
				color: #355263;
			}

			.welcome-hero__related-list {
				margin: 0;
				padding-left: 1.1rem;
				display: grid;
				gap: 0.25rem;
			}

			.welcome-hero__related-list a {
				color: #0a4d68;
				text-decoration: underline;
				text-underline-offset: 2px;
				font-size: 0.93rem;
			}

			.welcome-hero__related-list a:hover {
				color: #0e7490;
			}

			.welcome-hero__media--animated {
				margin: 0;
				display: grid;
				gap: 0.75rem;
				justify-items: start;
				position: relative;
			}

			.welcome-hero__mode-badge {
				position: absolute;
				top: 0.65rem;
				left: 0.65rem;
				width: 2rem;
				height: 2rem;
				border-radius: 999px;
				background: var(--blude);
				color: #fff;
				font-size: 0.95rem;
				font-weight: 800;
				line-height: 1;
				display: inline-flex;
				align-items: center;
				justify-content: center;
				box-shadow: 0 8px 18px rgba(0, 88, 124, 0.4);
				z-index: 2;
			}

			.welcome-hero__fast-forward {
				position: absolute;
				top: 0.65rem;
				right: 0.65rem;
				width: 2rem;
				height: 2rem;
				border-radius: 999px;
				background: color-mix(in srgb, var(--accent) 20%, #ffffff);
				border: 1px solid color-mix(in srgb, var(--accent) 75%, #ffffff);
				color: var(--accent);
				display: inline-flex;
				align-items: center;
				justify-content: center;
				opacity: 0;
				transform: scale(0.9);
				pointer-events: none;
				z-index: 2;
			}

			.welcome-hero__fast-forward svg {
				width: 1.1rem;
				height: 1.1rem;
				fill: currentColor;
			}

			.welcome-hero__media.show-fast-forward .welcome-hero__fast-forward {
				opacity: 1;
				animation: heroFastForwardPulse 0.7s ease-in-out infinite;
			}

			@keyframes heroFastForwardPulse {
				0%,
				100% {
					transform: scale(0.92);
					box-shadow: 0 0 0 0 rgba(252, 123, 0, 0.35);
				}

				50% {
					transform: scale(1.05);
					box-shadow: 0 0 0 8px rgba(252, 123, 0, 0);
				}
			}

			.welcome-hero__image {
				width: 100%;
				border-radius: 16px;
				box-shadow: 0 18px 32px rgba(0, 88, 124, 0.16);
				transition: opacity 320ms ease-in-out;
			}

			.welcome-hero__media.is-transitioning .welcome-hero__image {
				opacity: 0;
			}

			.welcome-hero__caption {
				max-width: 360px;
				text-align: left;
			}

			.welcome-hero__caption-title {
				margin: 0;
				font-weight: 700;
				color: #0f2f40;
			}

			.welcome-hero__caption-example {
				margin: 0.35rem 0 0;
				font-size: 0.92rem;
				color: #355263;
			}

			.welcome-hero__panel {
				background: #ffffff;
				border-radius: 16px;
				padding: 18px;
				border: 1px solid #d9e2ec;
				box-shadow: inset 0 1px 0 #eef2f4;
				display: grid;
				gap: 14px;
			}

			.welcome-hero__panel-header {
				display: grid;
				gap: 6px;
			}

			.welcome-hero__kicker {
				margin: 0;
				text-transform: uppercase;
				color: #00859b;
				font-weight: 800;
				letter-spacing: .3px;
			}

			.welcome-hero__panel-text {
				margin: 0;
				color: #355263;
			}

			.welcome-hero__divider {
				padding: 12px;
				border: 1px dashed #c2e5ec;
				border-radius: 12px;
				background: linear-gradient(120deg, rgba(0, 133, 155, 0.08), rgba(0, 88, 124, 0.06));
				display: grid;
				gap: 8px;
			}

			.welcome-hero__pill {
				display: inline-flex;
				align-items: center;
				justify-content: center;
				width: fit-content;
				padding: 6px 10px;
				border-radius: 999px;
				background: #fff;
				color: #0f2f40;
				font-weight: 800;
				border: 1px solid #d9e2ec;
				box-shadow: 0 8px 12px rgba(0, 0, 0, 0.04);
			}

			.welcome-hero__roles {
				display: grid;
				grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
				gap: 10px;
			}

			.welcome-hero__roles .btn {
				font-weight: 800;
			}

			.welcome-nav__dropdown .dropdown-toggle::after {
				margin-left: 6px;
			}

			.welcome-nav__dropdown .dropdown-menu {
				list-style: none;
				padding: 8px 10px;
				margin-top: 6px;
				background: #f7fafc;
				border: 1px solid #d9e2ec;
				border-radius: 8px;
				box-shadow: 0 6px 12px rgba(0, 0, 0, .06);
			}

			.welcome-nav__dropdown .dropdown-item {
				font-weight: 700;
				color: var(--blue);
				border-radius: 6px;
				padding: 6px 10px;
			}

			.welcome-nav__dropdown .welcome-nav__submenu-title {
				font-weight: 800;
				color: #0f2f40;
				padding: 6px 10px 4px;
			}

			.welcome-nav__dropdown .welcome-nav__submenu-list {
				list-style: none;
				margin: 0;
				padding: 0 0 0 12px;
			}

			.welcome-nav__dropdown .welcome-nav__submenu-item {
				font-weight: 600;
			}

			.welcome-nav__dropdown .dropdown-item:hover,
			.welcome-nav__dropdown .dropdown-item:focus {
				background: rgba(0, 133, 155, 0.08);
				color: #0f2f40;
			}

			.logo {
				display: flex;
				align-items: center;
				gap: 18px;
			}

			.logo img {
				height: 64px;
				width: auto;
				display: block;
			}

			.brand {
				font-size: 42px;
				font-weight: 800;
				letter-spacing: .2px;
				margin: 0;
				color: var(--blue);
			}

			.brand .v {
				background: var(--grad);
				-webkit-background-clip: text;
				background-clip: text;
				color: transparent;
			}

			.lead {
				margin: 12px 0 0;
				color: #1b3f53
			}

			.section {
				margin-top: 32px;
				padding-top: clamp(40px, 5vw, 48px);
				border-top: 1px solid #eef2f4
			}

			.title {
				font-size: 20px;
				font-weight: 700;
				margin: 0 0 8px
			}

			.msg {
				font-size: 18px;
				margin: 0 0 10px
			}

			.tagline {
				display: inline-block;
				padding: 8px 14px;
				border-radius: 999px;
				font-weight: 700;
				background: var(--grad);
				color: #111;
				letter-spacing: .3px
			}

			.grid {
				display: grid;
				gap: 22px
			}

			.role-selector {
				margin-top: 28px;
			}

			.section.role-selector {
				padding-top: 0;
			}

			.role-selector__inner {
				display: grid;
				gap: 16px;
				text-align: center;
			}

			.role-selector__inner--problem {
				text-align: left;
				padding: clamp(20px, 3vw, 28px);
				border-radius: 18px;
				background: linear-gradient(160deg, #ffffff 0%, #f3f8fb 100%);
				border: 1px solid #dce7ee;
				box-shadow: 0 12px 28px rgba(15, 47, 64, 0.06), 0 6px 18px rgba(220, 53, 69, 0.12);
			}

			.role-selector__title {
				margin: 0;
				font-size: 22px;
				font-weight: 700;
				color: #0f2f40;
			}

			.problem-section__chips {
				list-style: none;
				padding: 0;
				margin: 16px 0 0;
				display: grid;
				gap: 10px;
			}

			.problem-section__chip {
				display: inline-flex;
				align-items: center;
				gap: 10px;
				padding: 10px 14px;
				border-radius: 999px;
				background: #ffffff;
				border: 1px solid #d9e5ec;
				color: #14455b;
				font-weight: 600;
				width: fit-content;
				max-width: 100%;
			}

			.problem-section__dot {
				width: 8px;
				height: 8px;
				border-radius: 50%;
				background: linear-gradient(120deg, #00859b, #00587c);
				flex-shrink: 0;
			}

			.problem-section__detail {
				margin-top: 12px;
			}

			.problem-section__closing {
				margin-top: 12px;
				padding: 12px 14px;
				border-radius: 12px;
				background: rgba(0, 133, 155, 0.08);
				border: 1px solid #c5e1e8;
				font-weight: 700;
				color: #0f2f40;
			}

			.problem-section__media {
				position: relative;
				border-radius: 16px;
				overflow: hidden;
				border: 1px solid #cddce5;
				box-shadow: 0 14px 30px rgba(15, 47, 64, 0.14);
			}

			.problem-section__image {
				display: block;
				width: 100%;
				height: 100%;
				object-fit: cover;
			}

			.problem-section__media::after {
				content: "";
				position: absolute;
				inset: auto 0 0 0;
				height: 35%;
				background: linear-gradient(180deg, rgba(255, 255, 255, 0) 0%, rgba(235, 242, 247, 0.9) 100%);
			}

			@media (max-width: 991.98px) {
				.problem-section__chip {
					width: 100%;
					border-radius: 12px;
				}
			}

			.role-selector__actions {
				display: flex;
				flex-wrap: wrap;
				gap: 12px;
				justify-content: center;
			}

			.role-selector__actions .btn {
				border-width: 2px;
			}

			@media(min-width:820px) {
				.grid {
					grid-template-columns: 1fr 1fr
				}
			}

			.foot {
				margin-top: 28px;
				font-size: 12px;
				color: #52798b
			}

                        .advanced-section {
                                margin-top: 40px;
                        }

			.role-section__kicker {
				margin: 0;
				text-transform: uppercase;
				color: #00859b;
				letter-spacing: .4px;
				font-weight: 600;
			}

			.role-section__title {
				margin: 4px 0 6px;

				color: #00587C;
			}


                        .role-section {
                                padding: 24px;
                                border-radius: 18px;
                                background: #ffffff;
                                border: 1px solid #e6edf2;
                                box-shadow: 0 8px 20px rgba(0,0,0,0.05);
                        }

                        .role-section .row {
                                --bs-gutter-y: 24px;
                        }

                        @media (min-width: 992px) {
                                .role-section .row {
                                        --bs-gutter-x: 24px;
                                }
                        }

			.role-section.role-section--dark {
				background: linear-gradient(135deg, var(--blue) 0%, #13232a 100%);
				border: 1px solid #1f323b;
				box-shadow: 0 18px 40px rgba(6, 14, 18, 0.5);
				color: #e6f1f5;
				--link-color: var(--link-dark);
				--link-color-hover: #f1fbff;
				--link-bg-hover: var(--link-hover-surface-dark);
				--bs-link-color: var(--link-dark);
				--bs-link-hover-color: #f1fbff;
			}

			.role-section--dark a:not(.btn):hover,
			.role-section--dark a:not(.btn):focus {
				color: var(--link-color-hover);
				background-color: var(--link-bg-hover);
			}

			.role-section--dark .role-section__title {
				color: #f1fbff;
			}

			.role-section--dark .lead,
			.role-section--dark p {
				color: #c6d6dd;
			}

				.role-section--dark .link-primary {
					color: var(--link-color);
				}

				.role-section--dark .link-primary:hover,
				.role-section--dark .link-primary:focus {
					color: var(--link-color-hover);
				}

			.role-section--dark .story-section__card {
				background: var(--blue);
				border: 1px solid #2a3f48;
				box-shadow: 0 12px 30px rgba(0, 0, 0, 0.4);
				color: #e6f1f5;
			}

			.role-section--dark .story-section__card p {
				color: inherit;
			}

			.role-section--dark .story-section__card .fw-semibold {
				color: #f4fbff;
			}

			.role-section__content {
				display: grid;
				gap: 16px;
				align-content: start;
			}

			.role-section__panel {
				height: 100%;
			}

			.role-panel__list {
				list-style: none;
				padding: 0;
				margin: 0;
				display: grid;
				gap: 10px;
			}

			.role-panel__list li {
				background: #ffffff;
				border: 1px solid #d9e2ec;
				border-radius: 12px;
				padding: 10px 12px;
				color: #0f2f40;
				font-weight: 600;
			}

.role-panel__actions {
	display: flex;
	gap: 10px;
	flex-wrap: wrap;
}

.role-panel__actions .btn {
	white-space: wrap;
}

.reviews-section {
	padding: 24px;
	border-radius: 18px;
	background: linear-gradient(135deg, #ffffff 0%, #f2f8fb 100%);
	border: 1px solid #d8e9f0;
	box-shadow: 0 14px 36px rgba(0, 88, 124, 0.08);
}

.reviews-section__header {
	margin-bottom: 24px;
	display: grid;
	gap: 8px;
}

.reviews-section__kicker {
	margin: 0;
	text-transform: uppercase;
	color: #00859b;
	letter-spacing: .4px;
	font-weight: 800;
}

.reviews-section__title {
	margin: 0;

	color: #00587C;
}

.reviews-section__lead {
	margin: 0;
	color: #355263;
	font-size: 18px;
}

.review-grid {
	display: grid;
	gap: 24px;
	grid-template-columns: repeat(var(--review-columns, 3), minmax(0, 1fr));
}

.review-card {
	height: 100%;
	display: flex;
	flex-direction: column;
	gap: 12px;
	padding: 18px;
	background: #ffffff;
	border-radius: 16px;
	border: 1px solid #e0e8ec;
	box-shadow: 0 14px 24px rgba(0, 0, 0, 0.05);
}

.review-card__header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
}

.review-card__identity {
	display: flex;
	align-items: center;
	gap: 12px;
	min-width: 0;
}

.review-card__avatar {
	width: 52px;
	height: 52px;
	border-radius: 50%;
	object-fit: cover;
	border: 2px solid #e0eef3;
	flex-shrink: 0;
}

.review-card__name {
	font-weight: 700;
	color: #0f2f40;
}

.review-card__company {
	color: #52798b;
	font-size: 14px;
}

.review-card__logo {
	max-height: 36px;
	max-width: 120px;
	object-fit: contain;
}

.review-card__stars {
	color: #f4a11a;
	font-size: 18px;
	letter-spacing: 2px;
}

.review-card__text {
	color: #355263;
	font-size: 16px;
}

.review-card__text p:last-child {
	margin-bottom: 0;
}

@media (max-width: 991.98px) {
	.review-grid {
		grid-template-columns: 1fr;
	}
}

			.advanced-header {
				font-size: 20px;
				font-weight: 600;
				color: var(--blue);
				margin-bottom: 8px;
			}

			.advanced-subtitle {
				font-size: 18px;
				color: #52798b;
				margin-bottom: 20px;
			}

			.advanced-feature {
				display: flex;
				flex-direction: column;
				gap: 16px;
				padding: 24px;
				border-radius: 18px;
				background: #ffffff;
				box-shadow: 0 14px 42px rgba(0, 0, 0, 0.06);
			}

			.advanced-copy h3 {
				font-size: 18px;
				margin: 0 0 8px;
				color: var(--blue);
			}

			.advanced-copy p {
				margin: 0 0 4px;
				font-size: 18px;
				line-height: 1.5;
				color: #355263;
			}

			.advanced-copy p.lang-en {
				font-style: italic;
				color: #52798b;
			}

			.advanced-media {
				flex: 0 0 auto;
			}

			.advanced-placeholder {
				max-width: 100%;
				height: auto;
			}

			/* Registration */
.register-shell {
	width: 100%;
	max-width: none;
}

@media (min-width: 992px) {
	.register-shell {
		width: 73vw;
		max-width: 73vw;
	}
}

			.register-header {
				display: flex;
				justify-content: space-between;
				align-items: center;
				gap: 16px;
				flex-wrap: wrap;
                margin-top: 18px;
			}

			.register-header .title {
				color: #1b3f53;
			}

			.register-lang {
				display: flex;
				align-items: center;
				gap: 12px;
				flex-wrap: wrap;
			}

			.register-card {
				margin-top: 24px;
				background: #ffffff;
				border-radius: 18px;
				padding: 22px;
				border: 1px solid #e6edf2;
				box-shadow: 0 8px 20px rgba(0,0,0,0.05);
			}

			.register-form label {
				font-weight: 700;
				color: #1b3f53;
			}

			.register-form .form-control,
			.register-form .input-group-text {
				border-radius: 10px;
			}

			.register-grid {
				display: grid;
				gap: 16px;
			}

			.register-legal {
				margin-top: 16px;
				padding: 0;
				background: transparent;
				border: 0;
				border-radius: 0;
			}

			.register-legal .form-check-label {
				font-weight: 400;
				color: #5b6b76;
			}

			.register-legal .form-check-label a {
				font-weight: 400;
				color: inherit;
			}

			.register-actions {
				display: flex;
				gap: 12px;
				flex-wrap: wrap;
				margin-top: 18px;
			}

			.register-plan-grid {
				display: grid;
				grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
				gap: 12px;
			}

			.plan-card {
				border: 1px solid #c2e5ec;
				border-radius: 12px;
				padding: 12px;
				background: linear-gradient(135deg, #f7fbfc 0%, #edf7fa 100%);
				cursor: pointer;
				display: grid;
				gap: 6px;
				position: relative;
				transition: border-color .2s ease, box-shadow .2s ease;
			}

			.plan-card input[type="radio"] {
				position: absolute;
				top: 10px;
				right: 10px;
			}

			.plan-card.active {
				border-color: var(--teal);
				box-shadow: 0 10px 24px rgba(0, 133, 155, 0.12);
				background: linear-gradient(150deg, #ffffff 0%, #e8f6f8 100%);
			}

			.plan-card__title {
				font-weight: 700;
				color: #00587C;
			}

			.plan-card__price {
				font-size: 18px;
				font-weight: 800;
				color: var(--teal);
			}

			.plan-card__subtitle {
				font-size: 14px;
				color: #52798b;
			}

			.plan-card__trial {
				display: inline-block;
				padding: 4px 8px;
				border-radius: 999px;
				background: rgba(255, 193, 7, 0.16);
				color: #a65000;
				font-weight: 700;
				font-size: 12px;
			}

			/* Pricing page */
			.pricing-hero {
				display: flex;
				align-items: flex-start;
				justify-content: space-between;
				gap: 16px;
				flex-wrap: wrap;
				margin-bottom: 22px;
			}

			.pricing-kicker {
				text-transform: uppercase;
				font-weight: 700;
				letter-spacing: .4px;
				color: var(--teal);
				margin: 0 0 4px;
			}

			.pricing-title {
				font-size: 26px;
				color: #0f2f40;
				margin: 0 0 6px;
			}

			.pricing-lead {
				margin: 0;
				color: #52798b;
				font-size: 18px;
			}

			.pricing-guided-trial {
				display: grid;
				grid-template-columns: minmax(0, 1.4fr) minmax(220px, .9fr) auto;
				align-items: center;
				gap: 18px;
				margin: 0 0 22px;
				padding: 20px;
				border: 1px solid #bfe4ed;
				border-radius: 18px;
				background: linear-gradient(135deg, #f2fbfd 0%, #ffffff 55%, #fff7e0 100%);
				box-shadow: 0 14px 32px rgba(0, 88, 124, 0.10);
			}

			.pricing-guided-trial__copy {
				display: grid;
				gap: 8px;
			}

			.pricing-guided-trial__badge {
				justify-self: start;
				margin: 0;
				padding: 5px 10px;
				border-radius: 999px;
				background: rgba(0, 88, 124, 0.10);
				color: #00587C;
				font-size: 12px;
				font-weight: 800;
				letter-spacing: .3px;
				text-transform: uppercase;
			}

			.pricing-guided-trial__title {
				margin: 0;
				color: #0f2f40;
				font-size: 24px;
				line-height: 1.2;
			}

			.pricing-guided-trial__body {
				margin: 0;
				color: #426d81;
				font-size: 16px;
			}

			.pricing-guided-trial__steps {
				list-style: none;
				margin: 0;
				padding: 0;
				display: grid;
				gap: 8px;
				color: #1b3f53;
				font-weight: 600;
			}

			.pricing-guided-trial__steps li {
				position: relative;
				padding-left: 24px;
			}

			.pricing-guided-trial__steps li::before {
				content: '✓';
				position: absolute;
				left: 0;
				top: 0;
				color: var(--teal);
				font-weight: 900;
			}

			.pricing-guided-trial__action {
				justify-self: end;
				white-space: nowrap;
			}

			@media (max-width: 900px) {
				.pricing-guided-trial {
					grid-template-columns: 1fr;
				}

				.pricing-guided-trial__action {
					justify-self: start;
					white-space: normal;
				}
			}

			.pricing-grid {
				display: grid;
				grid-template-columns: minmax(0, 1fr);
				gap: 16px;
				align-items: start;
			}

			@media (min-width: 768px) {
				.pricing-grid {
					grid-template-columns: repeat(3, minmax(0, 1fr));
				}

				.pricing-grid--count-4 .pricing-card:nth-child(4) {
					grid-column: 2;
				}

				.pricing-grid--count-5 {
					grid-template-columns: repeat(6, minmax(0, 1fr));
				}

				.pricing-grid--count-5 .pricing-card {
					grid-column: span 2;
				}

				.pricing-grid--count-5 .pricing-card:nth-child(n + 4) {
					grid-column: span 3;
				}
			}

			.pricing-card {
				border: 1px solid #e6edf2;
				border-radius: 14px;
				padding: 18px;
				background: #ffffff;
				box-shadow: 0 8px 20px rgba(0,0,0,0.05);
				display: flex;
				flex-direction: column;
				gap: 12px;
				height: 100%;
			}

			.pricing-card__header {
				display: flex;
				align-items: flex-start;
				justify-content: space-between;
				gap: 8px;
			}

			.pricing-card--popular {
				border-color: rgba(0, 133, 155, 0.42);
				background: linear-gradient(180deg, rgba(0, 133, 155, 0.08), #ffffff 48%);
				box-shadow: 0 12px 28px rgba(0, 88, 124, 0.10);
			}

			.pricing-card__badges {
				display: flex;
				flex-direction: column;
				align-items: flex-end;
				gap: 6px;
				flex-shrink: 0;
			}

			.pricing-card__title {
				margin: 0;
				font-size: 24px;
				color: #00587C;
			}

			.pricing-card__subtitle {
				margin: 0;
				color: #52798b;
			}

			.pricing-price {
				display: flex;
				align-items: baseline;
				gap: 8px;
				font-weight: 800;
				color: var(--teal);
			}

			.pricing-amount {
				font-size: 26px;
			}

			.pricing-interval {
				font-size: 14px;
				color: #52798b;
			}

			.pricing-features {
				margin: 0;
				display: grid;
				gap: 0;
				overflow: hidden;
				border: 1px solid #d7f1f2;
				border-radius: 12px;
				border-top-right-radius: 0;
				color: #1b3f53;

			}

			.pricing-features__item {
				padding: 10px 12px;
				background: #ffffff;
			}

			.pricing-features__item:nth-child(even) {
				background: #eefafb;
			}

			.pricing-features__lead {
				color: var(--teal);
			}

			.pricing-features__item + .pricing-features__item {
				border-top: 1px solid rgba(0, 123, 133, 0.1);
			}

			.pricing-features .text-muted {
				color: #88acbd !important;
			}



			.pricing-popular-badge {
				display: inline-block;
				text-align: center;
				padding: 4px 10px;
				border-radius: 999px;
				background: rgba(0, 133, 155, 0.16);
				color: #00587c;
				font-weight: 800;
				font-size: 12px;
			}

			.pricing-trial {
				display: inline-block;
				text-align: center;
				padding: 4px 10px;
				border-radius: 999px;
				background: rgba(255, 193, 7, 0.16);
				color: #a65000;
				font-weight: 800;
				font-size: 12px;
			}

			.pricing-usage {
				margin-top: 28px;
				border: 1px solid #d6e8ee;
				border-radius: 16px;
				background: #f8fcfd;
				padding: 8px 12px;
			}

			.pricing-usage__details {
				margin: 0;
			}

			.pricing-usage__summary {
				font-weight: 700;
				color: #00587C;
				font-size: 18px;
				cursor: pointer;
				list-style: none;
				padding: 8px 4px;
			}

			.pricing-usage__summary::-webkit-details-marker {
				display: none;
			}

			.pricing-usage__summary::after {
				content: '＋';
				font-size: 18px;
				color: #52798b;
				float: right;
				transition: transform 0.2s ease;
			}

			.pricing-usage__details[open] .pricing-usage__summary::after {
				content: '－';
			}

			.pricing-usage__body {
				padding: 4px 6px 12px;
				display: grid;
				gap: 18px;
			}

			.pricing-usage__intro {
				margin: 0;
				color: #52798b;
			}

			.pricing-usage__plan {
				display: grid;
				gap: 12px;
			}

			.pricing-usage__divider {
				border: 0;
				border-top: 1px solid #e2f1f5;
				margin: 4px 0;
			}

			.pricing-usage__title {
				margin: 0;
				font-size: 20px;
				color: #0f2f40;
			}

			.pricing-usage__subtitle {
				margin: 4px 0 0;
				color: #52798b;
				font-size: 14px;
			}

			.pricing-usage__label {
				margin: 0 0 6px;
				font-size: 14px;
				text-transform: uppercase;
				letter-spacing: 0.5px;
				color: #00587C;
			}

			.pricing-usage__list {
				margin: 0;
				padding-left: 18px;
				color: #1b3f53;
				display: grid;
				gap: 4px;
			}

			.pricing-usage__text {
				margin: 0;
				color: #1b3f53;
			}

			.pricing-usage__note {
				margin: 0;
				color: #52798b;
				font-style: italic;
			}

			.register-actions .btn {
				padding-left: 18px;
				padding-right: 18px;
			}

			@media (min-width: 820px) {
				.advanced-feature {
					display: grid;
					grid-template-columns: minmax(0, 1.3fr) minmax(0, 1fr);
					align-items: center;
					gap: 32px;
				}

				.advanced-feature--reverse {
					grid-template-columns: minmax(0, 1fr) minmax(0, 1.3fr);
				}

				.advanced-feature--single {
					grid-template-columns: minmax(0, 1fr);
				}

				.advanced-feature--reverse .advanced-copy {
					order: 2;
				}

				.advanced-feature--reverse .advanced-media {
					order: 1;
				}

				.advanced-feature--single .advanced-copy,
				.advanced-feature--single .advanced-media {
					order: 0;
				}
			}
/* Register */
			.register-grid {
				display: grid;
				gap: 20px;
			}

			@media (min-width: 960px) {
				.register-grid {
					grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr);
					align-items: start;
				}
			}

			.register-copy {
				background: linear-gradient(140deg, #f4fcfd 0%, #eaf5f8 100%);
				border: 1px solid #c2e5ec;
				border-radius: 14px;
				padding: 20px;
				box-shadow: 0 12px 24px rgba(0, 88, 124, .05);
			}

			.register-note {
				margin: 0;
				color: #355263;
			}

			.register-card {
				background: #ffffff;
				border-radius: 18px;
				padding: 22px;
				box-shadow: 0 8px 20px rgba(0,0,0,0.05);
				border: 1px solid #e6edf2;
			}

			.register-form label {
				font-weight: 700;
				color: #1b3f53;
			}

			.register-form .form-control,
			.register-form .input-group-text {
				border-radius: 10px;
			}

			.register-legal {
				margin-top: 18px;
				padding: 0;
				background: transparent;
				border: 0;
				border-radius: 0;
			}

			.register-legal .form-check-label {
				font-weight: 400;
				color: #5b6b76;
			}

			.register-legal .form-check-label a {
				font-weight: 400;
				color: inherit;
			}

			.register-actions {
				display: flex;
				gap: 12px;
				flex-wrap: wrap;
				margin-top: 18px;
			}

			.register-actions .btn {
				padding-left: 18px;
				padding-right: 18px;
			}

			.cornerstone-hero {
				margin-bottom: 28px;
				display: grid;
				gap: 8px;
			}

			.cornerstone-kicker {
				letter-spacing: .4px;
				text-transform: uppercase;
				font-weight: 700;
				color: #52798b;
				margin: 0;
			}

            .cornerstone-story {
				padding: 16px;
				display: grid;
				gap: 8px;
			}
                        .cornerstone-grid {
                                display: grid;
                                gap: 16px;
                                grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
                                margin-bottom: 24px;
                                                                margin-top: 24px;
                        }

			@media (min-width: 992px) {
				.cornerstone-grid {
					grid-template-columns: repeat(2, minmax(0, 1fr));
				}
			}

                        .cornerstone-grid--use-case {
                                margin-top: 24px;
                        }

			.cornerstone-card {
				background: #f8fbff;
				border: 1px solid #d9e2ec;
				border-radius: 12px;
				box-shadow: 0 6px 12px rgba(0, 0, 0, .05);
				height: 100%;
			}

			.documentation-content-box .related-verticals {
				height: auto;
			}

			.cornerstone-card__body {
				padding: 16px;
				display: grid;
				gap: 8px;
			}

			.cornerstone-card__title {
				margin: 0;
			}

			.cornerstone-list {
				padding-left: 20px;
				margin: 0;
				color: #0f2f40;
			}

			.cornerstone-mermaid {
				margin: 1.75rem 0 0;
				max-width: 46rem;
				padding: 1rem;
				border: 1px solid rgba(0, 109, 182, 0.18);
				border-radius: 14px;
				background: #f5fbfd;
				box-shadow: 0 14px 34px rgba(0, 109, 182, 0.08);
				overflow-x: auto;
			}

			.cornerstone-mermaid .mermaid {
				margin: 0;
				min-width: 0;
				text-align: center;
			}

			.cornerstone-mermaid svg {
				max-width: 100%;
				height: auto;
			}

			@media (max-width: 640px) {
				.cornerstone-mermaid {
					max-width: 100%;
					margin-top: 1.35rem;
					padding: 0.75rem;
					border-radius: 12px;
				}
			}

			.cornerstone-faq {
				margin: 32px 0;
			}

			.cornerstone-faq__items {
				display: grid;
				gap: 10px;
			}

			.cornerstone-faq__item {
				border: 1px solid #d9e2ec;
				border-radius: 10px;
				padding: 12px 14px;
				background: #fff;
			}

			.cornerstone-faq__item summary {
				cursor: pointer;
				font-weight: 700;
			}

			.cornerstone-cta {
				margin-top: 32px;
				padding: 20px;
				border: 1px solid #d9e2ec;
				border-radius: 12px;
				display: flex;
				flex-direction: column;
				align-items: flex-start;
				gap: 12px;
				background: linear-gradient(90deg, rgba(0,133,155,0.06), rgba(0,88,124,0.08));
			}

			.cornerstone-cta h2,
			.cornerstone-cta h3 {
				margin: 0;
			}

			.cornerstone-cta .btn {
				align-self: flex-start;
			}

/* Role panel */
.role-panel__actions {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.75rem;
}

/* A gombok soha nem nyúlhatnak szét */
.welcome-hero__actions .btn,
.role-panel__actions .btn {
    white-space: wrap;        /* felirat sem törhet */
		text-align: left;
}


.how-it-works-highlight {
	margin: 12px 0 8px;
	padding: 14px 16px;
	background: #f1f3f5;
	border-radius: 10px;
	border: 1px solid #e2e6ea;
	box-shadow: none;
}

.how-it-works-highlight p {
	margin: 0;
}

.blog-article-cta__card {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    gap: 18px;
    padding: 22px;
    border: 1px solid #d9e2ec;
    border-radius: 14px;
    border-top-right-radius: 0;
    background: #ffffff;
    box-shadow: 0 14px 34px rgba(15, 47, 64, 0.07);
}

.blog-article-cta__card--commercial {
    border-color: rgba(0, 88, 124, 0.28);
    background: linear-gradient(135deg, rgba(0, 88, 124, 0.12), rgba(0, 133, 155, 0.08));
    box-shadow: 0 16px 38px rgba(0, 88, 124, 0.12);
}

.blog-article-cta__title {
    margin-bottom: 10px;
    color: #0f2f40;
}

.blog-article-cta__text {
    margin-bottom: 0;
    color: #425466;
}

.blog-article-cta__button {
    align-self: flex-start;
}

.blog-back-link {
    color: #00859b;
    font-weight: 600;
    text-decoration: none;
}

.blog-back-link:hover,
.blog-back-link:focus {
    color: #00587c;
    text-decoration: underline;
}

.blog-comments-card:not(:has(.accordion-collapse.show)) {
    background: #f8fafc;
    border-color: #e5edf3;
    box-shadow: none !important;
    color: #6c7a86;
}

.blog-comments-card:not(:has(.accordion-collapse.show)) .accordion-button,
.blog-comments-card:not(:has(.accordion-collapse.show)) .accordion-item {
    background: transparent;
    color: #6c7a86;
}

.blog-comments-card:not(:has(.accordion-collapse.show)) .card-body {
    opacity: 0.72;
}

.blog-comments-card:has(.accordion-collapse.show) .card-body {
    opacity: 1;
}
