/*
 * Redstone Energy – egyedi stílusok
 *
 * A Divi modulokhoz tartozó egyedi CSS-osztályokat az adott modul
 * Advanced > CSS ID & Classes > CSS Class mezőjében kell megadni.
 */

:root {
	--redstone-font-heading: "Sora", sans-serif;
	--redstone-font-body: "Hanken Grotesk", sans-serif;

	--redstone-body-bg: #F6F6F2;
	--redstone-title: #181F03;
	--redstone-text: #6C6F60;
	--redstone-text-dark: #6F7559;
	--redstone-text-light: #BDC4A5;

	--redstone-header-bg: rgba(32, 33, 23, 0.8);
	--redstone-footer-bg: #21260D;
	--redstone-menu-accent: #D8E0BF;
	--redstone-bg-gradient-start: #D7DCC9;
	--redstone-bg-gradient-end: #F6F6F2;
	--redstone-bg-light: #E4E6DC;

	/* Közös layout tokenek. */
	--rs-container-xl: 1320px;
	--rs-container-lg: 1180px;
	--rs-container-md: 1080px;
	--rs-container-header: 1320px;
	--rs-container-hero: 1050px;
	--rs-gutter: 30px;
	--rs-gutter-mobile: 24px;
	--redstone-section-padding-vertical: clamp(42px, 4vw, 60px);
	--redstone-section-padding-vertical-large: clamp(50px, 5vw, 80px);
	--rs-section-padding: var(--redstone-section-padding-vertical-large);
	--rs-grid-gap: 24px;

	/* Közös gomb tokenek; a régi változó kompatibilitási alias marad. */
	--rs-btn-radius: 999px;
	--rs-btn-padding-block: 13px;
	--rs-btn-padding-inline: 30px;
	--rs-btn-font-size: 15px;
	--rs-btn-font-weight: 600;
	--rs-btn-transition: 180ms ease;
	--rs-btn-primary-bg: #6F7559;
	--rs-btn-primary-text: #F6F6F2;
	--rs-btn-primary-border: #6F7559;
	--rs-btn-primary-hover-bg: #181F03;
	--rs-btn-primary-hover-text: #F6F6F2;
	--rs-btn-primary-hover-border: #181F03;
	--rs-btn-secondary-bg: #F6F6F2;
	--rs-btn-secondary-text: #181F03;
	--rs-btn-secondary-border: #F6F6F2;
	--rs-btn-secondary-hover-bg: #D8E0BF;
	--rs-btn-secondary-hover-text: #181F03;
	--rs-btn-secondary-hover-border: #D8E0BF;
	--rs-btn-ghost-bg: transparent;
	--rs-btn-ghost-text: #F6F6F2;
	--rs-btn-ghost-border: rgba(246, 246, 242, 0.75);
	--rs-btn-ghost-hover-bg: rgba(246, 246, 242, 0.1);
	--rs-btn-ghost-hover-text: #F6F6F2;
	--rs-btn-ghost-hover-border: #F6F6F2;
	--rs-btn-arrow-gap: 12px;
	--rs-btn-arrow-offset: 20px;
	--redstone-button-bg: var(--rs-btn-primary-bg);

	/* Közös tipográfiai és felületi tokenek. */
	--rs-eyebrow-size: 11px;
	--rs-eyebrow-weight: 600;
	--rs-eyebrow-spacing: 3px;
	--rs-eyebrow-line-width: 22px;
	--rs-eyebrow-line-gap: 12px;
	--rs-heading-xl: clamp(44px, 5vw, 68px);
	--rs-heading-lg: clamp(38px, 4.4vw, 60px);
	--rs-heading-md: clamp(34px, 3.4vw, 48px);
	--rs-lead-size: 16px;
	--rs-lead-line-height: 1.65;
	--rs-card-padding: 24px;
	--rs-card-radius: 12px;
	--rs-card-border: 1px solid rgba(108, 111, 96, 0.18);
	--rs-card-bg: rgba(255, 255, 255, 0.92);
	--rs-card-shadow: 0 10px 28px rgba(24, 31, 3, 0.03);
	--rs-glass-bg: rgba(246, 246, 242, 0.2);
	--rs-glass-border: 1px solid rgba(246, 246, 242, 0.68);
	--rs-glass-blur: 2px;
	--rs-glass-saturate: 115%;
	--rs-overlay-dark: rgba(24, 31, 3, 0.84);
	--rs-overlay-hero: linear-gradient(
		180deg,
		rgba(13, 18, 8, 0.3) 0%,
		rgba(13, 18, 8, 0.18) 45%,
		rgba(13, 18, 8, 0.42) 100%
	);
}

/* Globális alapszínek. A Diviben beállított modulstílusok felülírhatják ezeket. */
body {
	background-color: var(--redstone-body-bg);
	color: var(--redstone-text);
	font-family: var(--redstone-font-body);
	font-weight: 400;
}

:where(h1, h2, h3, h4, h5, h6),
:where(h1, h2, h3, h4, h5, h6) *,
.et_pb_module_heading,
.et_pb_module_header,
.et_pb_timeline_title {
	color: var(--redstone-title);
	font-family: var(--redstone-font-heading) !important;
	font-weight: 600 !important;
}

input,
textarea,
select,
button {
	font-family: var(--redstone-font-body);
}

/* Szövegmodulban megvalósított, vizuálisan címsorként működő elemek. */
.redstone-about-quote,
.redstone-about-quote p {
	font-family: var(--redstone-font-heading) !important;
	font-weight: 400 !important;
	line-height: 1.3 !important;
}

.redstone-stat-value,
.redstone-stat-unit {
	font-family: var(--redstone-font-heading) !important;
	font-weight: 600 !important;
}

/* Minden Redstone eyebrow/címke egységes tipográfiája. */
[class*="redstone-"][class*="-eyebrow"],
[class*="redstone-"][class*="-eyebrow"] p {
	font-family: var(--redstone-font-heading) !important;
	font-weight: 600 !important;
}

a {
	color: var(--redstone-text-dark);
}

::selection {
	background-color: var(--redstone-text-light);
	color: var(--redstone-title);
}

/* Billentyűzettel is jól látható fókuszállapot. */
:where(a, button, input, textarea, select):focus-visible {
	outline: 2px solid var(--redstone-button-bg);
	outline-offset: 3px;
}

/* Egyszerű segédosztályok Divi szekciókhoz és modulokhoz. */
.redstone-bg-ink {
	background-color: var(--redstone-footer-bg);
}

.redstone-bg-sage {
	background-color: var(--redstone-bg-light);
}

.redstone-bg-body {
	background-color: var(--redstone-body-bg);
}

.redstone-bg-light {
	background-color: var(--redstone-bg-light);
}

.redstone-bg-header {
	background-color: var(--redstone-header-bg);
}

.redstone-bg-footer {
	background-color: var(--redstone-footer-bg);
}

.redstone-bg-gradient {
	background: linear-gradient(
		180deg,
		var(--redstone-bg-gradient-start) 0%,
		var(--redstone-bg-gradient-end) 100%
	);
}

.redstone-text-ink,
.redstone-text-ink :is(h1, h2, h3, h4, h5, h6, p, a) {
	color: var(--redstone-title);
}

.redstone-text-body,
.redstone-text-body :is(h1, h2, h3, h4, h5, h6, p, a) {
	color: var(--redstone-text);
}

.redstone-text-dark,
.redstone-text-dark :is(h1, h2, h3, h4, h5, h6, p, a) {
	color: var(--redstone-text-dark);
}

.redstone-text-light,
.redstone-text-light :is(h1, h2, h3, h4, h5, h6, p, a) {
	color: var(--redstone-text-light);
}

/* ============================================================
   Közös CSS komponensrendszer

   Az rs-* osztályok közvetlenül használhatók új Divi modulokon. A :where()
   kompatibilitási aliasok alacsony specificitásúak, így a meglévő blokkok
   saját, vizuálisan beállított szabályai továbbra is elsőbbséget élveznek.
   ============================================================ */

.rs-btn.et_pb_button,
.rs-btn .et_pb_button,
:is(a, button).rs-btn {
	display: inline-flex !important;
	width: max-content;
	max-width: 100%;
	padding: var(--rs-btn-padding-block) var(--rs-btn-padding-inline) !important;
	border: 1px solid var(--rs-btn-border, transparent) !important;
	border-radius: var(--rs-btn-radius);
	background: var(--rs-btn-bg, transparent) !important;
	color: var(--rs-btn-text, inherit) !important;
	font-size: var(--rs-btn-font-size);
	font-weight: var(--rs-btn-font-weight);
	line-height: 1.2 !important;
	align-items: center;
	flex-wrap: nowrap !important;
	justify-content: center;
	text-align: center;
	white-space: nowrap !important;
	transition:
		background-color var(--rs-btn-transition),
		border-color var(--rs-btn-transition),
		color var(--rs-btn-transition),
		transform var(--rs-btn-transition);
}

:is(.rs-btn--primary, .redstone-button, .redstone-hero-primary, .redstone-services-cta-button, .redstone-service-intro-primary, .redstone-audit-scope-cta) {
	--rs-btn-bg: var(--rs-btn-primary-bg);
	--rs-btn-text: var(--rs-btn-primary-text);
	--rs-btn-border: var(--rs-btn-primary-border);
	--rs-btn-hover-bg: var(--rs-btn-primary-hover-bg);
	--rs-btn-hover-text: var(--rs-btn-primary-hover-text);
	--rs-btn-hover-border: var(--rs-btn-primary-hover-border);
}

:is(.rs-btn--secondary, .redstone-hero-secondary, .redstone-service-intro-secondary) {
	--rs-btn-bg: var(--rs-btn-secondary-bg);
	--rs-btn-text: var(--rs-btn-secondary-text);
	--rs-btn-border: var(--rs-btn-secondary-border);
	--rs-btn-hover-bg: var(--rs-btn-secondary-hover-bg);
	--rs-btn-hover-text: var(--rs-btn-secondary-hover-text);
	--rs-btn-hover-border: var(--rs-btn-secondary-hover-border);
}

:is(.rs-btn--ghost, .redstone-header-cta) {
	--rs-btn-bg: var(--rs-btn-ghost-bg);
	--rs-btn-text: var(--rs-btn-ghost-text);
	--rs-btn-border: var(--rs-btn-ghost-border);
	--rs-btn-hover-bg: var(--rs-btn-ghost-hover-bg);
	--rs-btn-hover-text: var(--rs-btn-ghost-hover-text);
	--rs-btn-hover-border: var(--rs-btn-ghost-hover-border);
}

.rs-btn.et_pb_button:hover,
.rs-btn .et_pb_button:hover,
:is(a, button).rs-btn:hover {
	border-color: var(--rs-btn-hover-border, var(--rs-btn-border)) !important;
	background: var(--rs-btn-hover-bg, var(--rs-btn-bg)) !important;
	color: var(--rs-btn-hover-text, var(--rs-btn-text)) !important;
}

.rs-btn--full.et_pb_button,
.rs-btn--full .et_pb_button,
:is(a, button).rs-btn--full {
	width: 100%;
}

/* A Divi alapértelmezett hover ikonját csak az arrow modifier engedélyezi. */
.rs-btn:not(.rs-btn--arrow).et_pb_button::after,
.rs-btn:not(.rs-btn--arrow) .et_pb_button::after,
.rs-btn--secondary.et_pb_button::after,
.rs-btn--secondary .et_pb_button::after,
.rs-btn--ghost.et_pb_button::after,
.rs-btn--ghost .et_pb_button::after {
	display: none !important;
	content: none !important;
}

.rs-btn--arrow {
	--rs-btn-arrow-position: absolute;
	--rs-btn-arrow-display: block;
	--rs-btn-arrow-margin: 0;
	--rs-btn-arrow-top: 50%;
	--rs-btn-arrow-right: var(--rs-btn-arrow-offset);
	--rs-btn-arrow-transform: translateY(-50%);
}

.rs-btn--arrow.et_pb_button,
.rs-btn--arrow .et_pb_button {
	position: relative;
	padding-right: calc(var(--rs-btn-padding-inline) + var(--rs-btn-arrow-gap) + 1em) !important;
}

.rs-eyebrow,
:where(
	.redstone-services-eyebrow,
	.redstone-services-cta-eyebrow,
	.redstone-process-eyebrow,
	.redstone-about-eyebrow,
	.redstone-stats-eyebrow,
	.redstone-references-eyebrow,
	.redstone-contact-eyebrow,
	.redstone-audit-scope-eyebrow
) {
	position: relative;
	padding-left: calc(var(--rs-eyebrow-line-width) + var(--rs-eyebrow-line-gap));
	color: var(--rs-eyebrow-color, var(--redstone-text-dark));
	font-family: var(--redstone-font-heading) !important;
	font-size: var(--rs-eyebrow-size);
	font-weight: var(--rs-eyebrow-weight) !important;
	line-height: 1.3;
	letter-spacing: var(--rs-eyebrow-spacing);
	text-transform: uppercase;
}

.rs-eyebrow::before,
:where(
	.redstone-services-eyebrow,
	.redstone-services-cta-eyebrow,
	.redstone-process-eyebrow,
	.redstone-about-eyebrow,
	.redstone-stats-eyebrow,
	.redstone-references-eyebrow,
	.redstone-contact-eyebrow,
	.redstone-audit-scope-eyebrow
)::before {
	position: absolute;
	top: 0.62em;
	left: 0;
	width: var(--rs-eyebrow-line-width);
	height: 1px;
	content: "";
	background: currentColor;
}

.rs-eyebrow p {
	padding: 0;
	color: inherit;
	font: inherit;
	letter-spacing: inherit;
	text-transform: inherit;
}

.rs-eyebrow--dark {
	--rs-eyebrow-color: var(--redstone-title);
}

.rs-eyebrow--light {
	--rs-eyebrow-color: var(--redstone-text-light);
}

.rs-eyebrow--accent {
	--rs-eyebrow-color: var(--redstone-menu-accent);
}

.rs-heading,
.rs-heading :is(.et_pb_module_heading, h1, h2, h3, h4, h5, h6),
:where([class*="redstone-"][class*="-title"]) :is(.et_pb_module_heading, h1, h2, h3, h4, h5, h6) {
	margin: 0;
	padding: 0;
	color: var(--rs-heading-color, var(--redstone-title));
	font-family: var(--redstone-font-heading) !important;
	font-weight: 600 !important;
	line-height: 1.04;
	letter-spacing: -0.035em;
}

.rs-heading--xl,
.rs-heading--xl :is(.et_pb_module_heading, h1, h2, h3, h4, h5, h6) {
	font-size: var(--rs-heading-xl) !important;
}

.rs-heading--lg,
.rs-heading--lg :is(.et_pb_module_heading, h1, h2, h3, h4, h5, h6) {
	font-size: var(--rs-heading-lg) !important;
}

.rs-heading--md,
.rs-heading--md :is(.et_pb_module_heading, h1, h2, h3, h4, h5, h6) {
	font-size: var(--rs-heading-md) !important;
}

.rs-heading--on-dark {
	--rs-heading-color: var(--redstone-body-bg);
}

.rs-lead,
.rs-lead p,
:where([class*="redstone-"][class*="-lead"]),
:where([class*="redstone-"][class*="-lead"]) p {
	padding: 0;
	color: var(--rs-lead-color, var(--redstone-text));
	font-size: var(--rs-lead-size);
	font-weight: 400;
	line-height: var(--rs-lead-line-height);
}

.rs-lead--dark {
	--rs-lead-color: var(--redstone-title);
}

.rs-lead--muted {
	--rs-lead-color: var(--redstone-text-dark);
}

.rs-lead--light {
	--rs-lead-color: var(--redstone-text-light);
}

.rs-container,
:where(.redstone-header-row, .redstone-hero-content) {
	width: min(calc(100% - (2 * var(--rs-gutter))), var(--rs-container-width, var(--rs-container-lg)));
	max-width: var(--rs-container-width, var(--rs-container-lg));
	margin-right: auto;
	margin-left: auto;
}

.rs-container--header {
	--rs-container-width: var(--rs-container-header);
}

.rs-container--hero {
	--rs-container-width: var(--rs-container-hero);
}

.rs-container--xl {
	--rs-container-width: var(--rs-container-xl);
}

.rs-container--lg {
	--rs-container-width: var(--rs-container-lg);
}

.rs-container--md {
	--rs-container-width: var(--rs-container-md);
}

.rs-container.et_pb_row,
.rs-row-reset.et_pb_row,
:where([class*="redstone-"].et_pb_row) {
	padding: 0;
}

.rs-container.et_pb_row::after,
.rs-row-reset.et_pb_row::after {
	display: none;
}

.rs-section.et_pb_section {
	padding-top: var(--rs-section-padding);
	padding-bottom: var(--rs-section-padding);
}

.rs-grid {
	display: grid !important;
	gap: var(--rs-grid-gap);
}

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

.rs-grid--3 {
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.rs-grid--4 {
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

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

.rs-card,
:where(.redstone-service-card, .redstone-audit-scope-card, .redstone-contact-form-card) {
	padding: var(--rs-card-padding);
	border: var(--rs-card-border);
	border-radius: var(--rs-card-radius);
	background: var(--rs-card-bg);
	box-shadow: var(--rs-card-shadow);
}

.rs-glass {
	border: var(--rs-glass-border);
	background: var(--rs-glass-bg);
	backdrop-filter: blur(var(--rs-glass-blur));
	-webkit-backdrop-filter: blur(var(--rs-glass-blur));
}

@media (max-width: 980px) {
	.rs-grid--4,
	.rs-grid--6 {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 767px) {
	.rs-grid--2,
	.rs-grid--3,
	.rs-grid--4,
	.rs-grid--6 {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 479px) {
	.rs-container {
		width: min(calc(100% - (2 * var(--rs-gutter-mobile))), var(--rs-container-width, var(--rs-container-lg)));
	}
}

/* Divi Button modul: Advanced > CSS Class = redstone-button */
.redstone-button.et_pb_button,
.redstone-button .et_pb_button {
	background-color: var(--rs-btn-primary-bg);
	border-color: var(--rs-btn-primary-border);
	color: var(--rs-btn-primary-text);
	transition:
		background-color 180ms ease,
		border-color 180ms ease,
		color 180ms ease;
}

.redstone-button.et_pb_button:hover,
.redstone-button .et_pb_button:hover {
	background-color: var(--rs-btn-primary-hover-bg);
	border-color: var(--rs-btn-primary-hover-border);
	color: var(--rs-btn-primary-hover-text);
}

/* A logó ne kapjon a Divitől nem kívánt extra térközt. */
.redstone-logo img {
	display: block;
	height: auto;
}

/* ============================================================
   Globális fejléc és főmenü

   Divi CSS-osztályok:
   Section: redstone-site-header
   Row:     redstone-header-row
   Image:   redstone-header-logo
   Menu:    redstone-main-menu
   Button:  redstone-header-cta
   ============================================================ */

.redstone-site-header.et_pb_section {
	position: absolute;
	z-index: 9999;
	top: 0;
	right: 0;
	left: 0;
	padding: 0;
	background: var(--redstone-header-bg);
	backdrop-filter: blur(8px);
	-webkit-backdrop-filter: blur(8px);
}

.redstone-header-row.et_pb_row {
	display: flex;
	width: min(94%, 1320px);
	max-width: 1320px !important;
	min-height: 88px;
	padding: 0;
	align-items: center;
	gap: clamp(24px, 4vw, 64px);
}

.redstone-header-row.et_pb_row::after {
	display: none;
}

.redstone-header-row > .et_pb_column {
	display: flex;
	margin: 0;
	align-items: center;
}

.redstone-header-row > .et_pb_column:nth-child(2) {
	flex: 1 1 auto;
	justify-content: flex-end;
}

.redstone-header-logo {
	flex: 0 0 auto;
	margin: 0 !important;
}

.redstone-header-logo img {
	display: block;
	width: clamp(160px, 15vw, 210px);
	height: auto;
}

.redstone-main-menu.et_pb_menu {
	width: 100%;
	margin: 0;
	background: transparent !important;
	background-color: transparent !important;
}

.redstone-main-menu.et_pb_menu .et_pb_menu_inner_container {
	background: transparent !important;
	background-color: transparent !important;
}

.redstone-main-menu.et_pb_menu .et_pb_menu__wrap {
	justify-content: flex-end;
}

.redstone-main-menu.et_pb_menu .et-menu {
	align-items: stretch;
	gap: clamp(18px, 2.3vw, 42px);
	margin: 0;
}

.redstone-main-menu.et_pb_menu .et-menu > li {
	margin: 0;
	padding: 0;
}

.redstone-main-menu.et_pb_menu .et-menu > li > a {
	position: relative;
	padding: 34px 0;
	color: var(--redstone-body-bg);
	font-size: 14px;
	font-weight: 400;
	line-height: 20px;
	opacity: 0.82;
	transition:
		color 180ms ease,
		opacity 180ms ease;
}

.redstone-main-menu.et_pb_menu .et-menu > li.menu-item-has-children > a {
	padding-right: 0;
}

.redstone-main-menu.et_pb_menu
	.et-menu
	> li.menu-item-has-children
	> a:first-child::after {
	display: none;
	content: none;
}

.redstone-main-menu.et_pb_menu .et-menu > li > a:hover,
.redstone-main-menu.et_pb_menu .et-menu > li.current-menu-item > a,
.redstone-main-menu.et_pb_menu .et-menu > li.current-menu-ancestor > a {
	color: var(--redstone-body-bg);
	opacity: 1;
}

.redstone-main-menu.et_pb_menu .et-menu > li > a::before {
	position: absolute;
	right: 0;
	bottom: 25px;
	left: 0;
	height: 1px;
	content: "";
	background: var(--redstone-menu-accent);
	transform: scaleX(0);
	transform-origin: center;
	transition: transform 180ms ease;
}

.redstone-main-menu.et_pb_menu .et-menu > li > a:hover::before,
.redstone-main-menu.et_pb_menu .et-menu > li.current-menu-item > a::before,
.redstone-main-menu.et_pb_menu .et-menu > li.current-menu-ancestor > a::before {
	transform: scaleX(1);
}

/*
 * Főoldali anchor-menüpontok: a WordPress current-menu-item aktív vonalát
 * kikapcsolja. WordPress Menü > menüpont > CSS Classes mezőbe: rs-menu-ignore-active
 */
.redstone-main-menu.et_pb_menu .et-menu > li.rs-menu-ignore-active.current-menu-item > a,
.redstone-main-menu.et_pb_menu .et-menu > li.rs-menu-ignore-active.current-menu-ancestor > a,
.redstone-main-menu.et_pb_menu .et-menu > li.rs-menu-ignore-active.current_page_item > a {
	opacity: 0.82;
}

.redstone-main-menu.et_pb_menu .et-menu > li.rs-menu-ignore-active.current-menu-item > a::before,
.redstone-main-menu.et_pb_menu .et-menu > li.rs-menu-ignore-active.current-menu-ancestor > a::before,
.redstone-main-menu.et_pb_menu .et-menu > li.rs-menu-ignore-active.current_page_item > a::before {
	transform: scaleX(0);
}

.redstone-main-menu.et_pb_menu .et-menu > li.rs-menu-ignore-active > a:hover,
.redstone-main-menu.et_pb_menu .et-menu > li.rs-menu-ignore-active.current-menu-item > a:hover,
.redstone-main-menu.et_pb_menu .et-menu > li.rs-menu-ignore-active.current-menu-ancestor > a:hover {
	opacity: 1;
}

.redstone-main-menu.et_pb_menu .et-menu > li.rs-menu-ignore-active > a:hover::before,
.redstone-main-menu.et_pb_menu .et-menu > li.rs-menu-ignore-active.current-menu-item > a:hover::before,
.redstone-main-menu.et_pb_menu .et-menu > li.rs-menu-ignore-active.current-menu-ancestor > a:hover::before {
	transform: scaleX(1);
}

/* Desktop legördülő menü. */
.redstone-main-menu.et_pb_menu .et-menu-nav > ul > li > ul.sub-menu {
	top: 100%;
	width: 330px;
	padding: 10px 0;
	border: 0;
	background: rgba(32, 33, 23, 0.9);
	box-shadow: 0 18px 40px rgba(0, 0, 0, 0.22);
	backdrop-filter: blur(10px);
	-webkit-backdrop-filter: blur(10px);
}

.redstone-main-menu.et_pb_menu ul.sub-menu li {
	width: 100%;
	padding: 0;
}

.redstone-main-menu.et_pb_menu ul.sub-menu li a {
	width: 100%;
	padding: 8px 18px;
	color: var(--redstone-body-bg);
	font-size: 13px;
	font-weight: 400;
	line-height: 1.35;
	opacity: 0.82;
	transition:
		background-color 180ms ease,
		color 180ms ease,
		opacity 180ms ease;
}

.redstone-main-menu.et_pb_menu ul.sub-menu li a:hover,
.redstone-main-menu.et_pb_menu ul.sub-menu li.current-menu-item > a {
	background: rgba(246, 246, 242, 0.1);
	color: var(--redstone-body-bg);
	opacity: 1;
}

/* Jobb oldali konzultáció gomb. */
.redstone-header-cta.et_pb_button,
.redstone-header-cta .et_pb_button {
	min-width: max-content;
	margin: 0;
	padding: 9px 20px !important;
	border: 1px solid var(--rs-btn-ghost-border) !important;
	border-radius: 999px;
	background: var(--rs-btn-ghost-bg);
	color: var(--rs-btn-ghost-text) !important;
	font-size: 13px;
	font-weight: 400;
	line-height: 1.2 !important;
}

.redstone-header-cta.et_pb_button:hover,
.redstone-header-cta .et_pb_button:hover {
	padding: 9px 20px !important;
	border-color: var(--rs-btn-ghost-hover-border) !important;
	background: var(--rs-btn-ghost-hover-bg) !important;
	color: var(--rs-btn-ghost-hover-text) !important;
}

.redstone-header-cta.et_pb_button::after,
.redstone-header-cta .et_pb_button::after {
	display: none;
}

@media (max-width: 980px) {
	.redstone-site-header.et_pb_section {
		background: rgba(32, 33, 23, 0.88);
	}

	.redstone-header-row.et_pb_row {
		display: grid;
		width: 100%;
		min-height: 90px;
		padding: 0 30px;
		grid-template-columns: minmax(0, 1fr) auto;
		gap: 20px;
	}

	.redstone-header-row > .et_pb_column {
		float: none;
		width: auto !important;
	}

	.redstone-header-row > .et_pb_column:first-child {
		justify-content: flex-start;
	}

	.redstone-header-row > .et_pb_column:nth-child(2) {
		justify-content: flex-end;
	}

	.redstone-header-row > .et_pb_column:nth-child(3),
	.redstone-header-cta {
		display: none !important;
	}

	.redstone-header-logo img {
		width: min(200px, 52vw);
		margin-right: auto;
		margin-left: 0;
	}

	.redstone-header-logo.et_pb_image {
		width: auto;
		margin-right: auto !important;
		margin-left: 0 !important;
		text-align: left !important;
	}

	.redstone-header-logo .et_pb_image_wrap {
		display: block;
	}

	.redstone-main-menu.et_pb_menu {
		position: static;
		width: auto;
	}

	.redstone-main-menu.et_pb_menu .et_pb_menu__wrap {
		position: static;
	}

	.redstone-main-menu.et_pb_menu .et_mobile_nav_menu {
		display: flex;
		margin: 0;
		align-items: center;
	}

	.redstone-main-menu.et_pb_menu .mobile_menu_bar {
		padding: 0;
	}

	.redstone-main-menu.et_pb_menu .mobile_menu_bar::before {
		color: var(--redstone-body-bg) !important;
		font-size: 36px;
	}

	.redstone-main-menu.et_pb_menu .et_mobile_menu {
		position: fixed;
		top: 90px !important;
		right: 0 !important;
		left: 0 !important;
		width: 100vw !important;
		max-width: none !important;
		max-height: calc(100vh - 90px);
		margin: 0;
		padding: 18px 30px 28px;
		overflow-y: auto;
		border: 0;
		background: rgba(32, 33, 23, 0.98);
		box-shadow: 0 18px 40px rgba(0, 0, 0, 0.28);
	}

	.redstone-main-menu.et_pb_menu .et_mobile_menu li a {
		padding: 13px 0;
		border-bottom: 1px solid rgba(246, 246, 242, 0.12);
		color: var(--redstone-body-bg);
		font-size: 16px;
		line-height: 1.35;
		opacity: 0.9;
	}

	.redstone-main-menu.et_pb_menu .et_mobile_menu li a:hover,
	.redstone-main-menu.et_pb_menu .et_mobile_menu li.current-menu-item > a {
		background: transparent;
		color: var(--redstone-text-light);
		opacity: 1;
	}

	.redstone-main-menu.et_pb_menu .et_mobile_menu li.rs-menu-ignore-active.current-menu-item > a,
	.redstone-main-menu.et_pb_menu .et_mobile_menu li.rs-menu-ignore-active.current-menu-ancestor > a {
		color: var(--redstone-body-bg);
		opacity: 0.9;
	}

	.redstone-main-menu.et_pb_menu .et_mobile_menu li.rs-menu-ignore-active > a:hover {
		color: var(--redstone-text-light);
		opacity: 1;
	}

	.redstone-main-menu.et_pb_menu .et_mobile_menu .sub-menu {
		padding: 4px 0 6px 16px;
		background: transparent;
	}

	.redstone-main-menu.et_pb_menu .et_mobile_menu .sub-menu li a {
		padding: 9px 0;
		border-bottom: 0;
		color: var(--redstone-text-light);
		font-size: 13px;
	}
}

@media (max-width: 479px) {
	.redstone-header-row.et_pb_row {
		padding-right: 24px;
		padding-left: 24px;
	}

	.redstone-header-logo img {
		width: min(190px, 56vw);
	}

	.redstone-main-menu.et_pb_menu .et_mobile_menu {
		padding-right: 24px;
		padding-left: 24px;
	}
}

/* ============================================================
   Globális lábléc

   Divi CSS-osztályok:
   Section:      redstone-site-footer
   Main row:     redstone-footer-main
   Logo:         redstone-footer-logo
   Contact text: redstone-footer-contact
   Menu modules: redstone-footer-menu
   Bottom row:   redstone-footer-bottom
   Copyright:    redstone-footer-copyright
   Credit:       redstone-footer-credit
   ============================================================ */

.redstone-site-footer.et_pb_section {
	padding: 54px 0 0;
	background: var(--redstone-footer-bg);
	color: var(--redstone-text-light);
}

.redstone-footer-main.et_pb_row,
.redstone-footer-bottom.et_pb_row {
	width: min(78%, 1120px);
	max-width: 1120px;
	padding: 0;
}

.redstone-footer-main.et_pb_row {
	display: grid;
	padding-bottom: 48px;
	grid-template-columns: 1.25fr 1fr 0.75fr;
	gap: clamp(48px, 8vw, 120px);
}

.redstone-footer-main.et_pb_row::after,
.redstone-footer-bottom.et_pb_row::after {
	display: none;
}

.redstone-footer-main > .et_pb_column,
.redstone-footer-bottom > .et_pb_column {
	float: none;
	width: auto !important;
	margin: 0 !important;
}

.redstone-footer-logo {
	margin: 0 0 22px !important;
	text-align: left;
}

.redstone-footer-logo img {
	display: block;
	width: 118px;
	max-width: 100%;
	height: auto;
}

.redstone-footer-contact {
	margin: 0 !important;
}

.redstone-footer-contact,
.redstone-footer-contact p,
.redstone-footer-contact a {
	color: var(--redstone-text-light);
	font-size: 13px;
	font-weight: 400;
	line-height: 1.9;
}

.redstone-footer-contact a:hover {
	color: var(--redstone-body-bg);
}

.redstone-footer-heading,
.redstone-footer-heading .et_pb_module_heading,
.redstone-footer-heading :is(h1, h2, h3, h4, h5, h6) {
	margin: 0 0 15px !important;
	padding: 0 !important;
	color: var(--redstone-menu-accent);
	font-size: 12px;
	font-weight: 700;
	line-height: 1.3;
	letter-spacing: 3px;
	text-transform: uppercase;
}

.redstone-footer-heading .et_pb_module_heading,
.redstone-footer-heading :is(h1, h2, h3, h4, h5, h6) {
	margin: 0 !important;
}

/* A footer Menu moduljai mobilon is függőleges linklisták maradnak. */
.redstone-footer-menu.et_pb_menu {
	margin: 0;
	background: transparent !important;
}

.redstone-footer-menu.et_pb_menu .et_pb_menu_inner_container {
	background: transparent !important;
}

.redstone-footer-menu.et_pb_menu .et_pb_menu__wrap {
	justify-content: flex-start;
}

.redstone-footer-menu.et_pb_menu .et_pb_menu__menu {
	display: flex !important;
}

.redstone-footer-menu.et_pb_menu .et_mobile_nav_menu {
	display: none !important;
}

.redstone-footer-menu.et_pb_menu .et-menu-nav,
.redstone-footer-menu.et_pb_menu .et-menu {
	width: 100%;
}

.redstone-footer-menu.et_pb_menu .et-menu {
	display: flex;
	margin: 0;
	padding: 0;
	flex-direction: column;
	align-items: flex-start;
}

.redstone-footer-menu.et_pb_menu .et-menu > li {
	display: block;
	width: 100%;
	margin: 0;
	padding: 0;
}

.redstone-footer-menu.et_pb_menu .et-menu > li > a {
	display: inline-block;
	padding: 5px 0;
	color: var(--redstone-text-light);
	font-size: 13px;
	font-weight: 400;
	line-height: 1.45;
	opacity: 0.84;
	transition:
		color 180ms ease,
		opacity 180ms ease;
}

.redstone-footer-menu.et_pb_menu .et-menu > li > a:hover,
.redstone-footer-menu.et_pb_menu .et-menu > li.current-menu-item > a {
	color: var(--redstone-body-bg);
	opacity: 1;
}

.redstone-footer-bottom.et_pb_row {
	display: grid;
	padding: 10px 0 12px;
	border-top: 1px solid rgba(216, 224, 191, 0.16);
	grid-template-columns: 1fr 1fr;
	align-items: center;
	gap: 30px;
}

.redstone-footer-copyright,
.redstone-footer-credit {
	margin: 0 !important;
}

.redstone-footer-copyright,
.redstone-footer-copyright p,
.redstone-footer-credit,
.redstone-footer-credit p,
.redstone-footer-credit a {
	color: var(--redstone-text-light);
	font-size: 11px;
	font-weight: 400;
	line-height: 1.4;
}

.redstone-footer-credit,
.redstone-footer-credit p {
	text-align: right;
}

.redstone-footer-credit a:hover {
	color: var(--redstone-body-bg);
}

@media (max-width: 980px) {
	.redstone-site-footer.et_pb_section {
		padding-top: 44px;
	}

	.redstone-footer-main.et_pb_row,
	.redstone-footer-bottom.et_pb_row {
		width: calc(100% - 60px);
	}

	.redstone-footer-main.et_pb_row {
		padding-bottom: 38px;
		grid-template-columns: 1fr 1fr;
		gap: 42px 56px;
	}

	.redstone-footer-main > .et_pb_column:first-child {
		grid-column: 1 / -1;
	}

	.redstone-footer-logo {
		text-align: center;
	}

	.redstone-footer-logo> .et_pb_image_wrap {
		width: 100% !important;
	}

	.redstone-footer-logo img {
		margin-right: auto;
		margin-left: auto;
	}

	.redstone-footer-contact,
	.redstone-footer-contact p {
		text-align: center;
	}

	.redstone-footer-menu.et_pb_menu .et_pb_menu__wrap {
		justify-content: flex-start;
	}

	.redstone-footer-menu.et_pb_menu .et-menu {
		align-items: flex-start;
	}

	.redstone-footer-menu.et_pb_menu .et-menu > li {
		text-align: left;
	}

	.redstone-footer-menu.et_pb_menu .et-menu > li > a {
		display: inline-block;
		text-align: left;
	}

	.redstone-footer-service-column.et_pb_column {
		text-align: right;
	}

	.redstone-footer-service-column.et_pb_column .redstone-footer-menu.et_pb_menu .et-menu > li > a {
		display: inline-block;
		text-align: right;
	}

	.redstone-footer-service-column.et_pb_column .redstone-footer-menu.et_pb_menu .et_pb_menu__wrap {
		flex: 1 1 auto;
		justify-content: flex-end;
	}

	.redstone-footer-service-column.et_pb_column .redstone-footer-menu.et_pb_menu .et-menu {
		align-items: flex-end;
	}

	.redstone-footer-service-column.et_pb_column .redstone-footer-menu.et_pb_menu .et-menu > li {
		text-align: right;
	}

}

@media (max-width: 600px) {
	.redstone-footer-heading .et_pb_module_heading,
	.redstone-footer-heading :is(h1, h2, h3, h4, h5, h6) {
		text-align: center;
	}

	.redstone-footer-main.et_pb_row,
	.redstone-footer-bottom.et_pb_row {
		width: calc(100% - 48px);
	}

	.redstone-footer-main.et_pb_row {
		grid-template-columns: 1fr;
		gap: 34px;
	}

	.redstone-footer-main > .et_pb_column:first-child {
		grid-column: auto;
	}

	.redstone-footer-menu.et_pb_menu .et_pb_menu__wrap {
		justify-content: center;
		margin: 0 auto;
	}

	.redstone-footer-menu.et_pb_menu .et-menu {
		align-items: center;
	}

	.redstone-footer-menu.et_pb_menu .et-menu > li {
		text-align: center;
	}

	.redstone-footer-bottom.et_pb_row {
		padding: 16px 0 20px;
		grid-template-columns: 1fr;
		gap: 8px;
	}

	.redstone-footer-credit,
	.redstone-footer-credit p {
		text-align: left;
	}

	.redstone-footer-service-column.et_pb_column .redstone-footer-menu.et_pb_menu .et_pb_menu__wrap {
		flex: 0 1 auto;
		justify-content: center;
	}

	.redstone-footer-service-column.et_pb_column .redstone-footer-menu.et_pb_menu .et-menu > li {
		text-align: center;
	}
}

/* ============================================================
   Főoldali videós hero

   Divi CSS-osztályok:
   Section:         redstone-hero-video
   Row:             redstone-hero-content
   Heading:         redstone-hero-title
   Text:            redstone-hero-lead
   Primary button:  redstone-hero-primary
   Secondary button:redstone-hero-secondary
   ============================================================ */

.redstone-hero-video.et_pb_section {
	position: relative;
	display: flex;
	min-height: min(860px, 100svh);
	padding: 130px 0 72px;
	overflow: hidden;
	align-items: center;
	background-color: var(--redstone-title);
}

/* A háttérvideó minden képarányon kitölti a hero teljes felületét. */
.redstone-hero-video .et_pb_section_video_bg {
	position: absolute;
	z-index: 0;
	inset: 0;
}

.redstone-hero-video .et_pb_section_video_bg video {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

/* Sötét fedőréteg a videó és a szöveg között. */
.redstone-hero-video.et_pb_section::after {
	position: absolute;
	z-index: 1;
	content: "";
	pointer-events: none;
	background: var(--rs-overlay-hero);
	inset: 0;
}

.redstone-hero-content.et_pb_row {
	position: relative;
	z-index: 2;
	width: min(90%, 1050px);
	max-width: 1050px;
	padding: 0;
	text-align: center;
}

.redstone-hero-content.et_pb_row::after {
	display: none;
}

.redstone-hero-content > .et_pb_column {
	float: none;
	width: 100%;
}

.redstone-hero-title.et_pb_module {
	position: relative;
	width: min(100%, 830px);
	margin: 0 auto 20px !important;
	padding: clamp(22px, 3vw, 38px) clamp(64px, 8vw, 108px) !important;
	border: 1px solid rgba(246, 246, 242, 0.68);
	background: rgba(246, 246, 242, 0.2);
	clip-path: polygon(8% 0, 100% 0, 92% 100%, 0 100%);
	backdrop-filter: blur(2px);
	-webkit-backdrop-filter: blur(2px);
}

.redstone-hero-title .et_pb_module_heading,
.redstone-hero-title :is(h1, h2, h3, h4, h5, h6) {
	margin: 0 !important;
	padding: 0 !important;
	color: var(--redstone-body-bg) !important;
	font-size: clamp(44px, 5vw, 68px) !important;
	font-weight: 600 !important;
	line-height: 1.02 !important;
	letter-spacing: -0.035em;
	text-align: center;
}

.redstone-hero-lead.et_pb_module {
	width: min(100%, 760px);
	margin: 0 auto 24px !important;
}

.redstone-hero-lead,
.redstone-hero-lead p {
	padding: 0;
	color: var(--redstone-body-bg);
	font-size: clamp(16px, 1.4vw, 20px);
	font-weight: 400;
	line-height: 1.55;
	text-align: center;
}

.redstone-hero-content .et_pb_button_module_wrapper {
	display: inline-block;
	margin: 0 6px !important;
	vertical-align: middle;
}

.redstone-hero-primary .et_pb_button,
.redstone-hero-primary.et_pb_button,
.redstone-hero-secondary .et_pb_button,
.redstone-hero-secondary.et_pb_button {
	min-width: 190px;
	padding: 13px 24px !important;
	border: 1px solid transparent !important;
	border-radius: 999px;
	font-size: 14px;
	font-weight: 600;
	line-height: 1.2 !important;
	text-align: center;
	transition:
		background-color 180ms ease,
		border-color 180ms ease,
		color 180ms ease,
		transform 180ms ease;
}

.redstone-hero-primary .et_pb_button,
.redstone-hero-primary.et_pb_button {
	border-color: var(--rs-btn-primary-border) !important;
	background: var(--rs-btn-primary-bg) !important;
	color: var(--rs-btn-primary-text) !important;
}

.redstone-hero-secondary .et_pb_button,
.redstone-hero-secondary.et_pb_button {
	border-color: var(--rs-btn-secondary-border) !important;
	background: var(--rs-btn-secondary-bg) !important;
	color: var(--rs-btn-secondary-text) !important;
}

.redstone-hero-primary .et_pb_button:hover,
.redstone-hero-primary.et_pb_button:hover,
.redstone-hero-secondary .et_pb_button:hover,
.redstone-hero-secondary.et_pb_button:hover {
	padding: 13px 24px !important;
	transform: translateY(-2px);
}

.redstone-hero-primary .et_pb_button:hover,
.redstone-hero-primary.et_pb_button:hover {
	background: var(--rs-btn-primary-hover-bg) !important;
	border-color: var(--rs-btn-primary-hover-border) !important;
	color: var(--rs-btn-primary-hover-text) !important;
}

.redstone-hero-secondary .et_pb_button:hover,
.redstone-hero-secondary.et_pb_button:hover {
	border-color: var(--rs-btn-secondary-hover-border) !important;
	background: var(--rs-btn-secondary-hover-bg) !important;
	color: var(--rs-btn-secondary-hover-text) !important;
}

.redstone-hero-primary .et_pb_button::after,
.redstone-hero-primary.et_pb_button::after {
	position: static;
	display: inline-block;
	margin: 0 0 0 12px !important;
	content: "→";
	font-family: inherit !important;
	font-size: 1em;
	line-height: 1;
	opacity: 1;
}

.redstone-hero-secondary .et_pb_button::after,
.redstone-hero-secondary.et_pb_button::after {
	display: none;
}

@media (max-width: 980px) {
	.redstone-hero-video.et_pb_section {
		min-height: 100svh;
		padding: 145px 30px 64px;
	}

	.redstone-hero-content.et_pb_row {
		width: 100%;
	}

	.redstone-hero-title.et_pb_module {
		width: min(100%, 680px);
		padding: 30px clamp(46px, 9vw, 82px) !important;
	}

	.redstone-hero-title .et_pb_module_heading,
	.redstone-hero-title :is(h1, h2, h3, h4, h5, h6) {
		font-size: clamp(42px, 7vw, 58px) !important;
	}
}

@media (max-width: 600px) {
	.redstone-hero-video.et_pb_section {
		min-height: max(760px, 100svh);
		padding: 128px 24px 52px;
		align-items: center;
	}

	.redstone-hero-title.et_pb_module {
		margin-bottom: 54px !important;
		padding: 30px 30px !important;
		clip-path: polygon(10% 0, 100% 0, 90% 100%, 0 100%);
	}

	.redstone-hero-title .et_pb_module_heading,
	.redstone-hero-title :is(h1, h2, h3, h4, h5, h6) {
		font-size: clamp(33px, 11vw, 38px) !important;
		line-height: 1.08 !important;
	}

	.redstone-hero-lead.et_pb_module {
		margin-bottom: 28px !important;
	}

	.redstone-hero-lead,
	.redstone-hero-lead p {
		font-size: 18px;
		line-height: 1.75;
	}

	.redstone-hero-content .et_pb_button_module_wrapper {
		display: block;
		width: 100%;
		margin: 0 auto 14px !important;
	}

	.redstone-hero-primary .et_pb_button,
	.redstone-hero-primary.et_pb_button,
	.redstone-hero-secondary .et_pb_button,
	.redstone-hero-secondary.et_pb_button {
		width: auto;
		min-width: 240px;
	}
}

@media (max-width: 480px) {
	.redstone-hero-title :is(h1, h2, h3, h4, h5, h6) {
		font-size: clamp(25px, 6.5vw, 34px) !important;
		line-height: 1.18 !important;
	}
}

/* ============================================================
   Szolgáltatások bemutató szekció

   Divi CSS-osztályok:
   Section:      redstone-services-section
   Intro row:    redstone-services-intro
   Eyebrow:      redstone-services-eyebrow
   Heading:      redstone-services-title
   Lead:         redstone-services-lead
   Logo:         redstone-services-logo
   Card rows:    redstone-services-grid
   Blurb cards:  redstone-service-card + redstone-service-card-01..07
   Final row:    redstone-services-final-row
   CTA content:  redstone-services-cta
   CTA eyebrow:  redstone-services-cta-eyebrow
   CTA heading:  redstone-services-cta-title
   CTA button:   redstone-services-cta-button
   ============================================================ */

.redstone-services-section.et_pb_section {
	position: relative;
	z-index: 0;
	padding: var(--redstone-section-padding-vertical-large) 0;
	overflow: hidden;
	background: var(--redstone-body-bg);
	isolation: isolate;
}

/* A Rectangle 139 grafika skálázható, CSS-ből rajzolt megfelelője. */
.redstone-services-section.et_pb_section::before {
	position: absolute;
	z-index: -1;
	content: "";
	pointer-events: none;
	background:
		linear-gradient(
			145deg,
			var(--redstone-bg-gradient-start) 0%,
			var(--redstone-bg-gradient-end) 100%
		);
	clip-path: polygon(0 0, 65% 0, 23% 100%, 0 100%);
	inset: 0;
}

.redstone-services-intro.et_pb_row,
.redstone-services-grid.et_pb_row,
.redstone-services-final-row.et_pb_row {
	position: relative;
	z-index: 1;
	width: min(82%, 1180px);
	max-width: 1180px;
	padding: 0;
}

.redstone-services-intro.et_pb_row::after,
.redstone-services-grid.et_pb_row::after,
.redstone-services-final-row.et_pb_row::after {
	display: none;
}

.redstone-services-intro.et_pb_row {
	display: grid;
	margin-bottom: 54px;
	grid-template-columns: minmax(0, 1.2fr) minmax(260px, 0.8fr);
	align-items: start;
	gap: 64px;
}

.redstone-services-intro > .et_pb_column,
.redstone-services-grid > .et_pb_column,
.redstone-services-final-row > .et_pb_column {
	float: none;
	width: auto !important;
	margin: 0 !important;
}

.redstone-services-eyebrow,
.redstone-services-cta-eyebrow {
	position: relative;
	margin: 0 0 18px !important;
	padding-left: 34px;
	color: var(--redstone-text-dark);
	font-size: 11px;
	font-weight: 500;
	line-height: 1.3;
	letter-spacing: 3px;
	text-transform: uppercase;
}

.redstone-services-eyebrow::before,
.redstone-services-cta-eyebrow::before {
	position: absolute;
	top: 0.62em;
	left: 0;
	width: 22px;
	height: 1px;
	content: "";
	background: var(--redstone-text-dark);
}

.redstone-services-eyebrow p,
.redstone-services-cta-eyebrow p {
	padding: 0;
	color: inherit;
	font: inherit;
	letter-spacing: inherit;
	text-transform: inherit;
}

.redstone-services-title.et_pb_module {
	max-width: 570px;
	margin: 0 0 12px !important;
}

.redstone-services-title .et_pb_module_heading,
.redstone-services-title :is(h1, h2, h3, h4, h5, h6) {
	margin: 0 !important;
	padding: 0 !important;
	color: var(--redstone-title) !important;
	font-size: clamp(36px, 3.7vw, 54px) !important;
	font-weight: 600 !important;
	line-height: 1.04 !important;
	letter-spacing: -0.035em;
}

.redstone-services-lead.et_pb_module {
	max-width: 590px;
	margin: 0 !important;
}

.redstone-services-lead,
.redstone-services-lead p {
	padding: 0;
	color: var(--redstone-text-dark);
	font-size: 16px;
	line-height: 1.65;
}

.redstone-services-logo.et_pb_image {
	margin: 28px 0 0 auto !important;
	text-align: right;
}

.redstone-services-logo img {
	width: min(270px, 100%);
	height: auto;
}

.redstone-services-grid.et_pb_row { 
	display: block;
	margin-bottom: 22px; 
}

.redstone-services-grid.et_pb_column,
.redstone-services-grid > .et_pb_column {
	display: grid !important;
	width: 100% !important;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 22px;
}

.redstone-service-card.et_pb_blurb {
	position: relative;
	width: 100%;
	min-height: 218px;
	margin: 0 !important;
	padding: 24px 24px 22px;
	overflow: hidden;
	border: 1px solid rgba(108, 111, 96, 0.22);
	border-radius: 12px;
	background: rgba(255, 255, 255, 0.9);
	box-shadow: 0 8px 26px rgba(24, 31, 3, 0);
	cursor: pointer;
	transition:
		border-color 180ms ease,
		box-shadow 180ms ease,
		transform 180ms ease;
}

.redstone-service-card.et_pb_blurb:hover {
	border-color: rgba(111, 117, 89, 0.44);
	box-shadow: 0 12px 30px rgba(24, 31, 3, 0.08);
	transform: translateY(-3px);
}

.redstone-service-card .et_pb_blurb_content {
	display: flex;
	max-width: none;
	height: 100%;
	margin: 0;
	flex-direction: column;
	align-items: flex-start;
	text-align: left;
}

.redstone-service-card .et_pb_main_blurb_image {
	width: auto;
	margin: 0 0 18px;
	line-height: 1;
}

.redstone-service-card .et_pb_main_blurb_image img {
	display: block;
	width: 48px;
	height: 48px;
	object-fit: contain;
}

.redstone-service-card .et_pb_blurb_container {
	width: 100%;
	padding: 0;
}

.redstone-service-card .et_pb_module_header {
	margin: 0 0 8px !important;
	padding: 0 !important;
	color: var(--redstone-title) !important;
	font-size: 24px !important;
	font-weight: 600 !important;
	line-height: 1.2 !important;
	letter-spacing: -0.02em;
}

.redstone-service-card .et_pb_module_header a::after {
	position: absolute;
	z-index: 2;
	inset: 0;
	content: "";
}

.redstone-service-card .et_pb_blurb_description,
.redstone-service-card .et_pb_blurb_description p {
	padding: 0;
	color: var(--redstone-text);
	font-size: 17px;
	font-weight: 400;
	line-height: 1.4;
}

.redstone-service-card::after {
	position: absolute;
	top: 22px;
	right: 22px;
	color: var(--redstone-text-dark);
	font-size: 13px;
	font-weight: 500;
	line-height: 1;
	opacity: 0.8;
}

.redstone-service-card-01::after {
	content: "01";
}

.redstone-service-card-02::after {
	content: "02";
}

.redstone-service-card-03::after {
	content: "03";
}

.redstone-service-card-04::after {
	content: "04";
}

.redstone-service-card-05::after {
	content: "05";
}

.redstone-service-card-06::after {
	content: "06";
}

.redstone-service-card-07::after {
	content: "07";
}

.redstone-services-final-row.et_pb_row {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 2fr);
	gap: 40px;
}

.redstone-services-final-row > .et_pb_column:first-child {
	display: flex;
}

.redstone-services-cta {
	display: flex;
	height: 100%;
	min-height: 218px;
	padding: 8px 24px 8px 26px;
	flex-direction: column;
	justify-content: center;
}

.redstone-services-cta-eyebrow {
	margin-bottom: 18px !important;
}

.redstone-services-cta-title.et_pb_module {
	max-width: 650px;
	margin: 0 0 22px !important;
}

.redstone-services-cta-title .et_pb_module_heading,
.redstone-services-cta-title :is(h1, h2, h3, h4, h5, h6) {
	margin: 0 !important;
	padding: 0 !important;
	color: var(--redstone-title) !important;
	font-size: clamp(34px, 3.4vw, 48px) !important;
	font-weight: 600 !important;
	line-height: 1.04 !important;
	letter-spacing: -0.035em;
}

.redstone-services-cta-button.et_pb_button_module_wrapper {
	width: min(100%, 390px);
	margin: 0 !important;
}

.redstone-services-cta-button .et_pb_button,
.redstone-services-cta-button.et_pb_button {
	width: 100%;
	padding: 13px 24px !important;
	border: 1px solid var(--rs-btn-primary-border) !important;
	border-radius: 999px;
	background: var(--rs-btn-primary-bg) !important;
	color: var(--rs-btn-primary-text) !important;
	font-size: 14px;
	font-weight: 600;
	line-height: 1.2 !important;
	text-align: center;
}

.redstone-services-cta-button .et_pb_button:hover,
.redstone-services-cta-button.et_pb_button:hover {
	padding: 13px 24px !important;
	border-color: var(--rs-btn-primary-hover-border) !important;
	background: var(--rs-btn-primary-hover-bg) !important;
	color: var(--rs-btn-primary-hover-text) !important;
}

.redstone-services-cta-button .et_pb_button::after,
.redstone-services-cta-button.et_pb_button::after {
	position: static;
	display: inline-block;
	margin: 0 0 0 12px !important;
	content: "→";
	font-family: inherit !important;
	font-size: 1em;
	line-height: 1;
	opacity: 1;
}

@media (max-width: 980px) {
	.redstone-services-section.et_pb_section::before {
		clip-path: polygon(0 0, 82% 0, 35% 100%, 0 100%);
	}

	.redstone-services-intro.et_pb_row,
	.redstone-services-grid.et_pb_row,
	.redstone-services-final-row.et_pb_row {
		width: calc(100% - 60px);
	}

	.redstone-services-intro.et_pb_row {
		margin-bottom: 42px;
		grid-template-columns: 1fr;
		gap: 0;
	}

	.redstone-services-logo {
		display: none;
	}

	.redstone-services-grid.et_pb_column,
	.redstone-services-grid > .et_pb_column {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.redstone-services-final-row.et_pb_row {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 700px) {
	.redstone-services-section.et_pb_section {
		padding: 64px 0;
	}

	.redstone-services-section.et_pb_section::before {
		clip-path: polygon(0 0, 100% 0, 52% 100%, 0 100%);
		opacity: 0.72;
	}

	.redstone-services-intro.et_pb_row,
	.redstone-services-grid.et_pb_row,
	.redstone-services-final-row.et_pb_row {
		width: calc(100% - 48px);
	}

	.redstone-services-grid.et_pb_column,
	.redstone-services-grid > .et_pb_column,
	.redstone-services-final-row.et_pb_row {
		grid-template-columns: 1fr;
	}

	.redstone-services-title .et_pb_module_heading,
	.redstone-services-title :is(h1, h2, h3, h4, h5, h6) {
		font-size: clamp(34px, 9vw, 44px) !important;
	}

	.redstone-services-lead,
	.redstone-services-lead p {
		font-size: 15px;
	}

	.redstone-service-card.et_pb_blurb {
		min-height: 0;
		padding: 24px;
	}

	.redstone-services-cta {
		min-height: 0;
		padding: 36px 0 8px;
	}

	.redstone-services-cta-title .et_pb_module_heading,
	.redstone-services-cta-title :is(h1, h2, h3, h4, h5, h6) {
		font-size: clamp(32px, 9vw, 42px) !important;
	}
}

/* ============================================================
   Ötlépéses folyamat

   Divi CSS-osztályok:
   Section:         redstone-process-section
   Intro row:       redstone-process-intro
   Eyebrow:         redstone-process-eyebrow
   Heading:         redstone-process-title
   Lead:            redstone-process-lead
   Timeline row:    redstone-process-timeline-row
   Timeline module: redstone-process-timeline
   ============================================================ */

.redstone-process-section.et_pb_section {
	position: relative;
	z-index: 0;
	padding: var(--redstone-section-padding-vertical-large) 0;
	overflow: hidden;
	background-color: var(--redstone-footer-bg);
	background-position: center;
	background-size: cover;
	isolation: isolate;
}

/* Sötét, olívazöld fedőréteg a Diviben megadott háttérkép fölött. */
.redstone-process-section.et_pb_section::before {
	position: absolute;
	z-index: -1;
	content: "";
	pointer-events: none;
	background:
		linear-gradient(
			90deg,
			rgba(32, 38, 13, 0.88) 0%,
			rgba(32, 38, 13, 0.78) 48%,
			rgba(24, 31, 3, 0.82) 100%
		);
	inset: 0;
}

.redstone-process-intro.et_pb_row,
.redstone-process-timeline-row.et_pb_row {
	position: relative;
	z-index: 1;
	width: min(82%, 1180px);
	max-width: 1180px;
	padding: 0;
}

.redstone-process-intro.et_pb_row::after,
.redstone-process-timeline-row.et_pb_row::after {
	display: none;
}

.redstone-process-intro.et_pb_row {
	margin-bottom: 52px;
}

.redstone-process-intro > .et_pb_column,
.redstone-process-timeline-row > .et_pb_column {
	float: none;
	width: 100% !important;
	margin: 0 !important;
}

.redstone-process-eyebrow {
	position: relative;
	margin: 0 0 17px !important;
	padding-left: 34px;
	color: var(--redstone-menu-accent);
	font-size: 11px;
	font-weight: 500;
	line-height: 1.3;
	letter-spacing: 3px;
	text-transform: uppercase;
}

.redstone-process-eyebrow::before {
	position: absolute;
	top: 0.62em;
	left: 0;
	width: 22px;
	height: 1px;
	content: "";
	background: currentColor;
}

.redstone-process-eyebrow p {
	padding: 0;
	color: inherit;
	font: inherit;
	letter-spacing: inherit;
	text-transform: inherit;
}

.redstone-process-title.et_pb_module {
	max-width: 600px;
	margin: 0 0 13px !important;
}

.redstone-process-title .et_pb_module_heading,
.redstone-process-title :is(h1, h2, h3, h4, h5, h6) {
	margin: 0 !important;
	padding: 0 !important;
	color: var(--redstone-body-bg) !important;
	font-size: clamp(38px, 4vw, 56px) !important;
	font-weight: 600 !important;
	line-height: 1.04 !important;
	letter-spacing: -0.035em;
}

.redstone-process-lead.et_pb_module {
	max-width: 540px;
	margin: 0 !important;
}

.redstone-process-lead,
.redstone-process-lead p {
	padding: 0;
	color: var(--redstone-text-light);
	font-size: 16px;
	font-weight: 400;
	line-height: 1.55;
}

.redstone-process-timeline.et_pb_timeline {
	width: 100%;
	margin: 0 !important;
	background: transparent;
}

.redstone-process-timeline .et_pb_timeline_track_wrapper {
	width: 100%;
	max-width: none;
	overflow: visible;
}

.redstone-process-timeline .et_pb_timeline_track {
	display: flex;
	width: 100%;
	min-width: 0;
	flex-direction: row;
	align-items: stretch;
	gap: 0 !important;
}

.redstone-process-timeline .et_pb_timeline_item {
	width: auto !important;
	min-width: 0;
	margin: 0 !important;
	flex: 1 1 0;
	grid-template-columns: 1fr !important;
	grid-template-rows: auto auto 1fr !important;
	column-gap: 0 !important;
	row-gap: 0 !important;
}

.redstone-process-timeline .et_pb_timeline_spacer {
	min-height: 0;
	order: 1;
}

.redstone-process-timeline .et_pb_timeline_ornament {
	position: relative;
	width: 100%;
	height: 37px;
	flex-direction: row;
	align-items: center;
	order: 2;
}

.redstone-process-timeline .et_pb_timeline_connector {
	top: 18px;
	right: 0;
	bottom: auto;
	left: 0;
	width: auto;
	height: 1px;
	background: rgba(216, 224, 191, 0.48);
}

.redstone-process-timeline
	.et_pb_timeline_item:last-child
	.et_pb_timeline_connector {
	right: calc(100% - 37px);
}

.redstone-process-timeline .et_pb_timeline_marker {
	position: relative;
	z-index: 2;
	display: grid;
	width: 37px;
	height: 37px;
	border: 1px solid rgba(216, 224, 191, 0.38);
	border-radius: 50%;
	background: var(--redstone-text-dark);
	color: var(--redstone-body-bg);
	font-size: 13px;
	font-weight: 600;
	line-height: 1;
	place-items: center;
}

.redstone-process-timeline .et_pb_timeline_marker .et-pb-icon {
	display: none;
}

.redstone-process-timeline .et_pb_timeline_marker::before {
	line-height: 1;
}

.redstone-process-timeline
	.et_pb_timeline_item:nth-child(1)
	.et_pb_timeline_marker::before {
	content: "1";
}

.redstone-process-timeline
	.et_pb_timeline_item:nth-child(2)
	.et_pb_timeline_marker::before {
	content: "2";
}

.redstone-process-timeline
	.et_pb_timeline_item:nth-child(3)
	.et_pb_timeline_marker::before {
	content: "3";
}

.redstone-process-timeline
	.et_pb_timeline_item:nth-child(4)
	.et_pb_timeline_marker::before {
	content: "4";
}

.redstone-process-timeline
	.et_pb_timeline_item:nth-child(5)
	.et_pb_timeline_marker::before {
	content: "5";
}

.redstone-process-timeline .et_pb_timeline_card {
	padding: 16px 18px 0 0;
	background: transparent;
	order: 3;
}

.redstone-process-timeline .et_pb_timeline_date {
	display: none;
}

.redstone-process-timeline .et_pb_timeline_title {
	margin: 0 0 9px !important;
	padding: 0 !important;
	color: var(--redstone-body-bg) !important;
	font-size: 15px !important;
	font-weight: 600 !important;
	line-height: 1.2 !important;
	letter-spacing: 0;
}

.redstone-process-timeline .et_pb_timeline_content,
.redstone-process-timeline .et_pb_timeline_content p {
	padding: 0;
	color: var(--redstone-text-light);
	font-size: 14px;
	font-weight: 400;
	line-height: 1.5;
}

@media (max-width: 980px) {
	.redstone-process-intro.et_pb_row,
	.redstone-process-timeline-row.et_pb_row {
		width: calc(100% - 60px);
	}

	.redstone-process-intro.et_pb_row {
		margin-bottom: 44px;
	}

	.redstone-process-timeline .et_pb_timeline_track {
		flex-direction: column !important;
	}

	.redstone-process-timeline .et_pb_timeline_item {
		width: 100% !important;
		min-height: 118px;
		flex: none;
		grid-template-columns: auto 1fr !important;
		grid-template-rows: auto !important;
	}

	.redstone-process-timeline .et_pb_timeline_spacer {
		display: none;
	}

	.redstone-process-timeline .et_pb_timeline_ornament {
		width: 37px;
		height: 100%;
		min-height: 118px;
		flex-direction: column;
		align-items: center;
		justify-content: flex-start;
		grid-column: 1;
		grid-row: 1;
	}

	.redstone-process-timeline .et_pb_timeline_connector {
		position: absolute !important;
		top: 0;
		right: auto !important;
		bottom: 0 !important;
		left: 50% !important;
		width: 1px !important;
		height: auto !important;
		transform: translateX(-50%);
	}

	.redstone-process-timeline
		.et_pb_timeline_item:last-child
		.et_pb_timeline_ornament {
		min-height: 37px;
		height: 37px;
	}

	.redstone-process-timeline
		.et_pb_timeline_item:last-child
		.et_pb_timeline_connector {
		display: none !important;
	}

	.redstone-process-timeline .et_pb_timeline_card {
		padding: 0 0 34px 18px;
		grid-column: 2;
		grid-row: 1;
	}

	.redstone-process-timeline .et_pb_timeline_item:last-child {
		min-height: 37px;
	}

	.redstone-process-timeline
		.et_pb_timeline_item:last-child
		.et_pb_timeline_card {
		padding-bottom: 0;
	}
}

@media (max-width: 600px) {
	.redstone-process-section.et_pb_section {
		padding: var(--redstone-section-padding-vertical-large) 0;
		background-position: 42% center;
	}

	.redstone-process-section.et_pb_section::before {
		background: rgba(24, 31, 3, 0.84);
	}

	.redstone-process-intro.et_pb_row,
	.redstone-process-timeline-row.et_pb_row {
		width: calc(100% - 48px);
	}

	.redstone-process-title .et_pb_module_heading,
	.redstone-process-title :is(h1, h2, h3, h4, h5, h6) {
		font-size: clamp(34px, 10vw, 44px) !important;
	}

	.redstone-process-lead,
	.redstone-process-lead p {
		font-size: 15px;
	}
}

/* ============================================================
   Rólunk / alapítói bemutatkozás

   Divi CSS-osztályok:
   Section:      redstone-about-section
   Row:          redstone-about-row
   Photo column: redstone-about-visual
   Image:        redstone-about-photo
   Caption:      redstone-about-caption
   Eyebrow:      redstone-about-eyebrow
   Quote:        redstone-about-quote
   Signature:    redstone-about-signature
   Credentials:  redstone-about-credentials
   ============================================================ */

.redstone-about-section.et_pb_section {
	padding: var(--redstone-section-padding-vertical-large) 0 !important;
	overflow: hidden;
	background: var(--redstone-body-bg);
}

.redstone-about-row.et_pb_row {
	display: grid;
	width: min(78%, 1180px) !important;
	max-width: 1180px !important;
	padding: 0;
	grid-template-columns: minmax(320px, 0.95fr) minmax(0, 1.05fr);
	align-items: start;
	gap: clamp(48px, 6vw, 76px);
}

.redstone-about-row.et_pb_row::after {
	display: none;
}

.redstone-about-row > .et_pb_column {
	float: none;
	width: auto !important;
	margin: 0 !important;
}

.redstone-about-visual.et_pb_column {
	position: relative;
	z-index: 0;
	justify-self: start;
}

.redstone-about-row > .et_pb_column:nth-child(2) {
	padding-top: 8px;
}

/* Bal oldali, CSS-ből rajzolt üvegcsíkok. */
.redstone-about-visual.et_pb_column::before,
.redstone-about-visual.et_pb_column::after,
.redstone-about-photo.et_pb_image::before,
.redstone-about-photo.et_pb_image::after {
	position: absolute;
	z-index: 2;
	width: 132px;
	content: "";
	pointer-events: none;
	background: rgba(216, 224, 191, 0.18);
	clip-path: polygon(66% 0, 100% 0, 34% 100%, 0 100%);
	filter: drop-shadow(0 0 0.7px rgba(216, 224, 191, 0.72));
	backdrop-filter: blur(var(--rs-glass-blur)) saturate(var(--rs-glass-saturate));
	-webkit-backdrop-filter: blur(var(--rs-glass-blur)) saturate(var(--rs-glass-saturate));
}

.redstone-about-visual.et_pb_column::before {
	top: -84px;
	left: -58px;
	height: 174px;
	background: rgba(189, 196, 165, 0.24);
}

.redstone-about-visual.et_pb_column::after {
	top: 14px;
	left: -44px;
	height: 172px;
	background:
		linear-gradient(
			90deg,
			rgba(216, 224, 191, 0.14),
			rgba(216, 224, 191, 0.26)
		);
}

.redstone-about-photo.et_pb_image::before {
	right: -56px;
	bottom: 20px;
	height: 150px;
}

.redstone-about-photo.et_pb_image::after {
	right: -72px;
	bottom: -52px;
	height: 126px;
	background: rgba(189, 196, 165, 0.24);
}

.redstone-about-photo.et_pb_image {
	position: relative;
	z-index: 1;
	width: 100%;
	max-width: 470px;
	margin: 0 !important;
}

.redstone-about-photo .et_pb_image_wrap {
	display: block;
	overflow: hidden;
	border-radius: 18px;
	box-shadow: 0 24px 54px rgba(24, 31, 3, 0.12);
}

.redstone-about-photo img {
	display: block;
	width: 100%;
	aspect-ratio: 0.78;
	object-fit: cover;
	object-position: center top;
}

.redstone-about-caption.et_pb_module {
	position: absolute;
	z-index: 4;
	bottom: 18px;
	left: 16px;
	width: max-content;
	max-width: calc(100% - 32px);
	margin: 0 !important;
	padding: 11px 18px !important;
	border: 1px solid rgba(246, 246, 242, 0.72);
	border-radius: 10px;
	background: rgba(246, 246, 242, 0.9);
	box-shadow: 0 10px 25px rgba(24, 31, 3, 0.1);
	backdrop-filter: blur(10px);
	-webkit-backdrop-filter: blur(10px);
}

.redstone-about-caption,
.redstone-about-caption p {
	padding: 0;
	color: var(--redstone-text-dark);
	font-size: 13px !important;
	font-weight: 400;
	line-height: 1.35;
}

.redstone-about-caption strong {
	color: var(--redstone-title);
	font-weight: 700;
}

.redstone-about-eyebrow {
	position: relative;
	margin: 0 0 30px !important;
	padding-left: 34px;
	color: var(--redstone-text-dark);
	font-size: 11px;
	font-weight: 500;
	line-height: 1.3;
	letter-spacing: 3px;
	text-transform: uppercase;
}

.redstone-about-eyebrow::before {
	position: absolute;
	top: 0.62em;
	left: 0;
	width: 22px;
	height: 1px;
	content: "";
	background: currentColor;
}

.redstone-about-eyebrow p {
	padding: 0;
	color: inherit;
	font: inherit;
	letter-spacing: inherit;
	text-transform: inherit;
}

.redstone-about-quote.et_pb_module {
	max-width: 650px;
	margin: 0 0 30px !important;
}

.redstone-about-quote,
.redstone-about-quote p {
	padding: 0;
	color: var(--redstone-title);
	font-size: clamp(26px, 2.45vw, 35px) !important;
	font-weight: 500;
	line-height: 1.12;
}

.redstone-about-signature {
	color: var(--redstone-text-light);
	font-size: 90%;
}

.redstone-about-credentials.et_pb_module {
	margin: 0 !important;
}

.redstone-about-credential {
	display: flex !important;
	padding: 11px 0;
	border-bottom: 1px solid rgba(108, 111, 96, 0.18);
	align-items: baseline;
	justify-content: space-between;
	gap: 28px;
}

.redstone-about-credential:first-child {
	border-top: 1px solid rgba(108, 111, 96, 0.18);
}

.redstone-about-credential span {
	flex: 1 1 auto;
	color: var(--redstone-text);
	font-size: 12px;
	font-weight: 400;
	line-height: 1.4;
}

.redstone-about-credential strong {
	flex: 0 0 auto;
	color: var(--redstone-title);
	font-size: 13px;
	font-weight: 700;
	line-height: 1.4;
	white-space: nowrap;
}

@media (max-width: 980px) {
	.redstone-about-row.et_pb_row {
		width: calc(100% - 60px) !important;
		grid-template-columns: minmax(280px, 0.8fr) minmax(0, 1.2fr);
		gap: 48px;
	}

	.redstone-about-quote,
	.redstone-about-quote p {
		font-size: clamp(26px, 3.4vw, 34px) !important;
	}
}

@media (max-width: 767px) {
	.redstone-about-section.et_pb_section {
		padding: var(--redstone-section-padding-vertical-large) 0 !important;
	}

	.redstone-about-row.et_pb_row {
		width: calc(100% - 48px) !important;
		grid-template-columns: 1fr;
		gap: 62px;
	}

	.redstone-about-row > .et_pb_column:nth-child(2) {
		padding-top: 0;
	}

	.redstone-about-visual.et_pb_column {
		width: min(100%, 500px) !important;
		margin: 0 auto !important;
	}

	.redstone-about-photo.et_pb_image {
		max-width: none;
	}

	.redstone-about-visual.et_pb_column::before {
		top: -54px;
		left: -32px;
		height: 130px;
	}

	.redstone-about-visual.et_pb_column::after {
		top: 70px;
		left: -24px;
		height: 114px;
	}

	.redstone-about-photo.et_pb_image::before {
		right: -24px;
		bottom: 28px;
		height: 106px;
	}

	.redstone-about-photo.et_pb_image::after {
		right: -34px;
		bottom: -42px;
		height: 94px;
	}

	.redstone-about-visual.et_pb_column::before,
	.redstone-about-visual.et_pb_column::after,
	.redstone-about-photo.et_pb_image::before,
	.redstone-about-photo.et_pb_image::after {
		width: 96px;
	}

	.redstone-about-eyebrow {
		margin-bottom: 22px !important;
	}

	.redstone-about-quote.et_pb_module {
		margin-bottom: 32px !important;
	}

	.redstone-about-quote,
	.redstone-about-quote p {
		font-size: clamp(27px, 8vw, 36px) !important;
	}
}

@media (max-width: 479px) {
	.redstone-about-caption.et_pb_module {
		right: 14px;
		bottom: 14px;
		left: 14px;
		width: auto;
		max-width: none;
		padding: 10px 14px !important;
	}

	.redstone-about-credential {
		flex-direction: column;
		gap: 5px;
	}
}

/* ============================================================
   Miért minket / eredmények

   Divi CSS-osztályok:
   Section:     redstone-stats-section
   Intro row:   redstone-stats-intro
   Eyebrow:     redstone-stats-eyebrow
   Heading:     redstone-stats-title
   Stats row:   redstone-stats-row
   Grid column: redstone-stats-grid
   Stat module: redstone-stat
   ============================================================ */

.redstone-stats-section.et_pb_section {
	padding: var(--redstone-section-padding-vertical) 0 !important;
	background: var(--redstone-bg-light);
}

.redstone-stats-intro.et_pb_row,
.redstone-stats-row.et_pb_row {
	width: min(72%, 1080px) !important;
	max-width: 1080px !important;
	padding: 0;
}

.redstone-stats-intro.et_pb_row::after,
.redstone-stats-row.et_pb_row::after {
	display: none;
}

.redstone-stats-intro.et_pb_row {
	margin-bottom: 44px;
}

.redstone-stats-intro > .et_pb_column,
.redstone-stats-row > .et_pb_column {
	float: none;
	width: 100% !important;
	margin: 0 !important;
}

.redstone-stats-eyebrow {
	position: relative;
	margin: 0 0 14px !important;
	padding-left: 34px;
	color: var(--redstone-text-dark);
	font-size: 11px;
	font-weight: 500;
	line-height: 1.3;
	letter-spacing: 3px;
	text-transform: uppercase;
}

.redstone-stats-eyebrow::before {
	position: absolute;
	top: 0.62em;
	left: 0;
	width: 22px;
	height: 1px;
	content: "";
	background: currentColor;
}

.redstone-stats-eyebrow p {
	padding: 0;
	color: inherit;
	font: inherit;
	letter-spacing: inherit;
	text-transform: inherit;
}

.redstone-stats-title.et_pb_module {
	max-width: 520px;
	margin: 0 !important;
}

.redstone-stats-title .et_pb_module_heading,
.redstone-stats-title :is(h1, h2, h3, h4, h5, h6) {
	margin: 0 !important;
	padding: 0 !important;
	color: var(--redstone-title) !important;
	font-size: clamp(38px, 4vw, 56px) !important;
	font-weight: 600 !important;
	line-height: 1.04 !important;
	letter-spacing: -0.035em;
}

.redstone-stats-grid.et_pb_column {
	display: grid !important;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	align-items: stretch;
}

.redstone-stat.et_pb_module {
	min-width: 0;
	min-height: 124px;
	margin: 0 !important;
	padding: 0 22px 0 22px;
	border-left: 1px solid rgba(24, 31, 3, 0.65);
}

.redstone-stat-value {
	margin: 0 0 9px;
	color: var(--redstone-title);
	font-size: clamp(42px, 4.4vw, 62px);
	font-weight: 600;
	line-height: 0.95;
	letter-spacing: -0.045em;
	white-space: nowrap;
	font-variant-numeric: tabular-nums;
}

.redstone-stat-value span {
	margin-left: 2px;
	font-size: 0.55em;
	font-weight: 600;
	vertical-align: 0.25em;
}

.redstone-stat-label,
.redstone-stat-label p {
	max-width: 180px;
	margin: 0;
	padding: 0;
	color: var(--redstone-text);
	font-size: 12px;
	font-weight: 400;
	line-height: 1.45;
}

@media (max-width: 980px) {
	.redstone-stats-intro.et_pb_row,
	.redstone-stats-row.et_pb_row {
		width: calc(100% - 60px) !important;
	}

	.redstone-stats-grid.et_pb_column {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		row-gap: 42px;
	}

	.redstone-stat.et_pb_module {
		min-height: 112px;
	}
}

@media (max-width: 600px) {
	.redstone-stats-section.et_pb_section {
		padding: var(--redstone-section-padding-vertical) 0 !important;
	}

	.redstone-stats-intro.et_pb_row,
	.redstone-stats-row.et_pb_row {
		width: calc(100% - 48px) !important;
	}

	.redstone-stats-intro.et_pb_row {
		margin-bottom: 38px;
	}

	.redstone-stats-title .et_pb_module_heading,
	.redstone-stats-title :is(h1, h2, h3, h4, h5, h6) {
		font-size: clamp(34px, 10vw, 44px) !important;
	}

	.redstone-stats-grid.et_pb_column {
		grid-template-columns: 1fr;
		row-gap: 30px;
	}

	.redstone-stat.et_pb_module {
		min-height: 0;
		padding: 0 0 0 20px;
	}

	.redstone-stat-label,
	.redstone-stat-label p {
		max-width: none;
	}
}

/* ============================================================
   Referenciák / partnerlogók

   Divi CSS-osztályok:
   Section:     redstone-references-section
   Intro row:   redstone-references-intro
   Eyebrow:     redstone-references-eyebrow
   Heading:     redstone-references-title
   Lead:        redstone-references-lead
   Logos row:   redstone-references-row
   Grid column: redstone-references-grid
   Image module:redstone-reference-logo
   ============================================================ */

.redstone-references-section.et_pb_section {
	padding: var(--redstone-section-padding-vertical-large) 0 !important;
	background: var(--redstone-body-bg);
}

.redstone-references-intro.et_pb_row,
.redstone-references-row.et_pb_row {
	width: min(72%, 1080px) !important;
	max-width: 1080px !important;
	padding: 0;
}

.redstone-references-intro.et_pb_row::after,
.redstone-references-row.et_pb_row::after {
	display: none;
}

.redstone-references-intro.et_pb_row {
	margin-bottom: clamp(54px, 6vw, 76px);
}

.redstone-references-intro > .et_pb_column,
.redstone-references-row > .et_pb_column {
	float: none;
	width: 100% !important;
	margin: 0 !important;
}

.redstone-references-eyebrow {
	position: relative;
	margin: 0 0 14px !important;
	padding-left: 34px;
	color: var(--redstone-text-dark);
	font-size: 11px;
	font-weight: 500;
	line-height: 1.3;
	letter-spacing: 3px;
	text-transform: uppercase;
}

.redstone-references-eyebrow::before {
	position: absolute;
	top: 0.62em;
	left: 0;
	width: 22px;
	height: 1px;
	content: "";
	background: currentColor;
}

.redstone-references-eyebrow p {
	padding: 0;
	color: inherit;
	font: inherit;
	letter-spacing: inherit;
	text-transform: inherit;
}

.redstone-references-title.et_pb_module {
	max-width: 540px;
	margin: 0 0 34px !important;
}

.redstone-references-title .et_pb_module_heading,
.redstone-references-title :is(h1, h2, h3, h4, h5, h6) {
	margin: 0 !important;
	padding: 0 !important;
	color: var(--redstone-title) !important;
	font-size: clamp(38px, 4vw, 56px) !important;
	font-weight: 600 !important;
	line-height: 1.04 !important;
	letter-spacing: -0.035em;
}

.redstone-references-lead.et_pb_module {
	max-width: 620px;
	margin: 0 !important;
}

.redstone-references-lead,
.redstone-references-lead p {
	padding: 0;
	color: var(--redstone-text);
	font-size: 15px;
	font-weight: 400;
	line-height: 1.65;
}

.redstone-references-grid.et_pb_column {
	display: grid !important;
	grid-template-columns: repeat(6, minmax(0, 1fr));
	align-items: center;
	column-gap: clamp(26px, 3vw, 48px);
	row-gap: clamp(46px, 5vw, 68px);
}

.redstone-reference-logo.et_pb_image {
	display: flex;
	width: 100%;
	height: 74px;
	margin: 0 !important;
	align-items: center;
	justify-content: center;
	text-align: center;
}

.redstone-reference-logo .et_pb_image_wrap {
	display: flex;
	width: 100%;
	height: 100%;
	align-items: center;
	justify-content: center;
}

.redstone-reference-logo img {
	display: block;
	width: auto;
	max-width: 100%;
	height: auto;
	max-height: 58px;
	margin: auto;
	object-fit: contain;
	filter: grayscale(1) contrast(0.9);
	opacity: 0.72;
	transition:
		filter 180ms ease,
		opacity 180ms ease,
		transform 180ms ease;
}

.redstone-reference-logo:hover img {
	filter: grayscale(1) contrast(1);
	opacity: 1;
	transform: translateY(-2px);
}

/* Széles logók vizuális méretének kiegyenlítésére adható kiegészítő osztály. */
.redstone-reference-logo-wide img {
	max-width: 112%;
}

/* Magas vagy négyzetes logókhoz adható kiegészítő osztály. */
.redstone-reference-logo-compact img {
	max-height: 48px;
}

@media (max-width: 980px) {
	.redstone-references-intro.et_pb_row,
	.redstone-references-row.et_pb_row {
		width: calc(100% - 60px) !important;
	}

	.redstone-references-grid.et_pb_column {
		grid-template-columns: repeat(4, minmax(0, 1fr));
	}
}

@media (max-width: 600px) {
	.redstone-references-section.et_pb_section {
		padding: var(--redstone-section-padding-vertical-large) 0 !important;
	}

	.redstone-references-intro.et_pb_row,
	.redstone-references-row.et_pb_row {
		width: calc(100% - 48px) !important;
	}

	.redstone-references-intro.et_pb_row {
		margin-bottom: 44px;
	}

	.redstone-references-title.et_pb_module {
		margin-bottom: 24px !important;
	}

	.redstone-references-title .et_pb_module_heading,
	.redstone-references-title :is(h1, h2, h3, h4, h5, h6) {
		font-size: clamp(34px, 10vw, 44px) !important;
	}

	.redstone-references-grid.et_pb_column {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		column-gap: 32px;
		row-gap: 38px;
	}

	.redstone-reference-logo.et_pb_image {
		height: 62px;
	}

	.redstone-reference-logo img {
		max-height: 50px;
	}
}

/* ============================================================
   Kapcsolat / visszahíváskérő CTA – Fluent Forms

   Divi CSS-osztályok:
   Section:     redstone-contact-section
   Row:         redstone-contact-row
   Eyebrow:     redstone-contact-eyebrow
   Heading:     redstone-contact-title
   Lead:        redstone-contact-lead
   Benefits:    redstone-contact-benefits
   Form column: redstone-contact-form-card
   Form intro:  redstone-contact-form-intro
   Form module: redstone-contact-form
   ============================================================ */

.redstone-contact-section.et_pb_section {
	position: relative;
	z-index: 0;
	padding: var(--redstone-section-padding-vertical-large) 0 !important;
	overflow: hidden;
	background-color: var(--redstone-footer-bg);
	background-position: center;
	background-size: cover;
	isolation: isolate;
}

.redstone-contact-section.et_pb_section::before {
	position: absolute;
	z-index: -1;
	content: "";
	pointer-events: none;
	background:
		linear-gradient(
			90deg,
			rgba(24, 31, 3, 0.92) 0%,
			rgba(32, 38, 13, 0.8) 52%,
			rgba(24, 31, 3, 0.76) 100%
		);
	inset: 0;
}

.redstone-contact-row.et_pb_row {
	display: grid;
	width: min(72%, 1080px) !important;
	max-width: 1080px !important;
	padding: 0;
	grid-template-columns: minmax(0, 1fr) minmax(380px, 0.82fr);
	align-items: center;
	gap: clamp(58px, 8vw, 112px);
}

.redstone-contact-row.et_pb_row::after {
	display: none;
}

.redstone-contact-row > .et_pb_column {
	float: none;
	width: auto !important;
	margin: 0 !important;
}

.redstone-contact-eyebrow {
	position: relative;
	margin: 0 0 16px !important;
	padding-left: 34px;
	color: var(--redstone-text-light);
	font-size: 11px;
	font-weight: 500;
	line-height: 1.3;
	letter-spacing: 3px;
	text-transform: uppercase;
}

.redstone-contact-eyebrow::before {
	position: absolute;
	top: 0.62em;
	left: 0;
	width: 22px;
	height: 1px;
	content: "";
	background: currentColor;
}

.redstone-contact-eyebrow p {
	padding: 0;
	color: inherit;
	font: inherit;
	letter-spacing: inherit;
	text-transform: inherit;
}

.redstone-contact-title.et_pb_module {
	max-width: 530px;
	margin: 0 0 18px !important;
}

.redstone-contact-title .et_pb_module_heading,
.redstone-contact-title :is(h1, h2, h3, h4, h5, h6) {
	margin: 0 !important;
	padding: 0 !important;
	color: var(--redstone-body-bg) !important;
	font-size: clamp(36px, 3.75vw, 62px) !important;
	font-weight: 600 !important;
	line-height: 1.02 !important;
	letter-spacing: -0.04em;
}

.redstone-contact-lead.et_pb_module {
	max-width: 560px;
	margin: 0 0 28px !important;
}

.redstone-contact-lead,
.redstone-contact-lead p {
	padding: 0;
	color: var(--redstone-text-light);
	font-size: 15px;
	font-weight: 400;
	line-height: 1.65;
}

.redstone-contact-benefits.et_pb_module {
	margin: 0 !important;
}

.redstone-contact-benefits ul {
	display: grid;
	margin: 0;
	padding: 0;
	list-style: none;
	gap: 12px;
}

.redstone-contact-benefits li {
	position: relative;
	padding-left: 32px;
	color: var(--redstone-body-bg);
	font-size: 13px;
	font-weight: 400;
	line-height: 1.45;
}

.redstone-contact-benefits li::before {
	position: absolute;
	top: 0.05em;
	left: 0;
	display: grid;
	width: 20px;
	height: 20px;
	border: 1px solid rgba(216, 224, 191, 0.38);
	border-radius: 50%;
	content: "✓";
	background: rgba(189, 196, 165, 0.26);
	color: var(--redstone-body-bg);
	font-size: 11px;
	font-weight: 700;
	line-height: 1;
	place-items: center;
}

.redstone-contact-form-card.et_pb_column {
	padding: 32px 32px 28px !important;
	border: 1px solid rgba(108, 111, 96, 0.14);
	border-radius: 18px;
	background: var(--redstone-body-bg);
	box-shadow: 0 24px 60px rgba(0, 0, 0, 0.18);
}

.redstone-contact-form-intro.et_pb_module {
	margin: 0px !important;
}

.redstone-contact-form-intro,
.redstone-contact-form-intro p {
	padding: 0;
	color: var(--redstone-text);
	font-size: 15px;
	line-height: 1.45;
}

.redstone-contact-form-intro :is(h2, h3, h4) {
	margin: 0 0 4px !important;
	padding: 0 !important;
	color: var(--redstone-title) !important;
	font-size: 20px !important;
	font-weight: 600 !important;
	line-height: 1.2 !important;
}

.redstone-contact-form.et_pb_module {
	margin: 0 !important;
}

.redstone-contact-form .fluentform {
	color: var(--redstone-title);
}

.redstone-contact-form .fluentform .ff-el-group {
	margin-bottom: 14px;
}

.redstone-contact-form .fluentform .ff-el-input--label {
	margin-bottom: 6px;
}

.redstone-contact-form .fluentform .ff-el-input--label label {
	color: var(--redstone-title);
	font-size: 13px;
	font-weight: 600;
	line-height: 1.3;
}

.redstone-contact-form .fluentform :is(input, textarea, select) {
	width: 100%;
	border: 1px solid rgba(108, 111, 96, 0.12) !important;
	border-radius: 7px !important;
	background: rgba(228, 230, 220, 0.42) !important;
	color: var(--redstone-title) !important;
	font-family: inherit;
	font-size: 12px !important;
	line-height: 1.4;
	box-shadow: none !important;
	transition:
		border-color 180ms ease,
		background-color 180ms ease,
		box-shadow 180ms ease;
}

.redstone-contact-form .fluentform input,
.redstone-contact-form .fluentform select {
	min-height: 42px;
	padding: 10px 12px !important;
}

.redstone-contact-form .fluentform textarea {
	min-height: 88px;
	padding: 11px 12px !important;
	resize: vertical;
}

.redstone-contact-form .fluentform :is(input, textarea, select)::placeholder {
	color: rgba(108, 111, 96, 0.65);
	opacity: 1;
}

.redstone-contact-form .fluentform :is(input, textarea, select):focus {
	border-color: var(--redstone-text-dark) !important;
	background: var(--redstone-body-bg) !important;
	box-shadow: 0 0 0 3px rgba(111, 117, 89, 0.12) !important;
	outline: none;
}

.redstone-contact-form .fluentform .ff-t-container {
	gap: 12px;
}

.redstone-contact-form .fluentform .ff-el-form-check {
	margin-top: 2px;
}

.redstone-contact-form .fluentform .ff-el-form-check-label {
	display: grid;
	color: var(--redstone-text);
	font-size: 10px;
	line-height: 1.4;
	grid-template-columns: auto 1fr;
	align-items: start;
	gap: 7px;
}

.redstone-contact-form .fluentform input[type="checkbox"] {
	width: 15px;
	min-height: 15px;
	margin: 1px 0 0;
	padding: 0 !important;
	accent-color: var(--redstone-button-bg);
}

.redstone-contact-form .fluentform a {
	color: var(--redstone-text-dark);
	text-decoration: underline;
}

.redstone-contact-form .fluentform .ff-btn-submit {
	width: 100%;
	min-height: 44px;
	margin-top: 2px;
	padding: 12px 24px !important;
	border: 1px solid var(--rs-btn-primary-border) !important;
	border-radius: 999px !important;
	background: var(--rs-btn-primary-bg) !important;
	color: var(--rs-btn-primary-text) !important;
	font-family: inherit;
	font-size: 13px !important;
	font-weight: 600 !important;
	line-height: 1.2 !important;
	opacity: 1 !important;
	transition:
		background-color 180ms ease,
		border-color 180ms ease,
		transform 180ms ease;
}

.redstone-contact-form .fluentform .ff-btn-submit::after {
	margin-left: 12px;
	content: "→";
}

.redstone-contact-form .fluentform .ff-btn-submit:hover {
	border-color: var(--rs-btn-primary-hover-border) !important;
	background: var(--rs-btn-primary-hover-bg) !important;
	color: var(--rs-btn-primary-hover-text) !important;
	transform: translateY(-1px);
}

.redstone-contact-form .fluentform .error {
	color: #8b2f2f;
	font-size: 10px;
}

.redstone-contact-form .fluentform .ff-message-success {
	padding: 14px 16px;
	border: 1px solid rgba(111, 117, 89, 0.28);
	border-radius: 8px;
	background: rgba(189, 196, 165, 0.22);
	color: var(--redstone-title);
	font-size: 12px;
}

@media (max-width: 980px) {
	.redstone-contact-row.et_pb_row {
		width: calc(100% - 60px) !important;
		grid-template-columns: minmax(0, 1fr) minmax(350px, 0.9fr);
		gap: 48px;
	}

	.redstone-contact-title .et_pb_module_heading,
	.redstone-contact-title :is(h1, h2, h3, h4, h5, h6) {
		font-size: clamp(38px, 5vw, 50px) !important;
	}
}

@media (max-width: 767px) {
	.redstone-contact-section.et_pb_section {
		padding: var(--redstone-section-padding-vertical-large) 0 !important;
	}

	.redstone-contact-row.et_pb_row {
		width: calc(100% - 48px) !important;
		grid-template-columns: 1fr;
		gap: 46px;
	}

	.redstone-contact-form-card.et_pb_column {
		padding: 28px 24px 24px !important;
	}
}

@media (max-width: 479px) {
	.redstone-contact-title .et_pb_module_heading,
	.redstone-contact-title :is(h1, h2, h3, h4, h5, h6) {
		font-size: clamp(32px, 10vw, 44px) !important;
	}

	.redstone-contact-form .fluentform .ff-t-container {
		display: block;
	}
}

/* ============================================================
   Szolgáltatások oldal – bevezető blokk

   Divi CSS-osztályok:
   Section:          redstone-service-intro-section
   Row:              redstone-service-intro-row
   Content column:   redstone-service-intro-content
   Heading:          redstone-service-intro-title
   Text:             redstone-service-intro-lead
   Primary button:   redstone-service-intro-primary
   Secondary button: redstone-service-intro-secondary
   Visual column:    redstone-service-intro-visual
   Image:            redstone-service-intro-image
   ============================================================ */

.redstone-service-intro-section.et_pb_section {
	padding: var(--redstone-section-padding-vertical-large) 0 !important;
	overflow: hidden;
	background: var(--redstone-body-bg);
}

.redstone-service-intro-row.et_pb_row {
	display: grid;
	width: min(88%, 1220px) !important;
	max-width: 1220px !important;
	padding: 0;
	grid-template-columns: minmax(0, 1.35fr) minmax(300px, 0.75fr);
    gap: clamp(58px, 8vw, 108px);
}

.redstone-service-intro-row.et_pb_row::after {
	display: none;
}

.redstone-service-intro-row > .et_pb_column {
	float: none;
	width: auto !important;
	margin: 0 !important;
}

.redstone-service-intro-content.et_pb_column {
	display: flex !important;
	min-width: 0;
	flex-flow: row wrap;  
	align-items: center;
	column-gap: 30px;
}

.redstone-service-intro-title.et_pb_module {
	flex: 0 0 100%;
	max-width: 650px;
	margin: 0 0 26px !important;
}

.redstone-service-intro-title .et_pb_module_heading,
.redstone-service-intro-title :is(h1, h2, h3, h4, h5, h6) {
	margin: 0 !important;
	padding: 0 !important;
	color: var(--redstone-title) !important;
	font-size: clamp(38px, 3vw, 48px) !important;
	font-weight: 600 !important;
	line-height: 1.15 !important;
	letter-spacing: -0.04em;
}

.redstone-service-intro-lead.et_pb_module {
	flex: 0 0 100%;
	max-width: 700px;
	margin: 0 0 44px !important;
}

.redstone-service-intro-lead,
.redstone-service-intro-lead p {
	margin: 0;
	padding: 0;
	color: var(--redstone-text-dark);
	font-size: 15px;
	font-weight: 400;
	line-height: 1.75;
	text-align: justify;
	text-wrap: pretty;
	hyphens: auto;
}

.redstone-service-intro-content .et_pb_button_module_wrapper {
	display: flex;
	flex: 0 0 auto;
	margin: 0 !important;
	align-items: center;
	vertical-align: middle;
}

.redstone-service-intro-primary .et_pb_button,
.redstone-service-intro-primary.et_pb_button {
	position: relative;
	display: inline-flex;
	min-width: 250px;
	min-height: 46px;
	padding: 14px 48px 14px 24px !important;
	border: 1px solid var(--rs-btn-primary-border) !important;
	border-radius: 999px;
	background: var(--rs-btn-primary-bg) !important;
	color: var(--rs-btn-primary-text) !important;
	font-size: 13px;
	font-weight: 600;
	line-height: 1.2 !important;
	align-items: center;
	justify-content: center;
	text-align: center;
	white-space: nowrap;
}

.redstone-service-intro-primary .et_pb_button::after,
.redstone-service-intro-primary.et_pb_button::after {
	position: absolute;
	top: 50%;
	right: 20px;
	display: block;
	margin: 0 !important;
	content: "→";
	font-family: inherit !important;
	font-size: 1em;
	line-height: 1;
	opacity: 1;
	transform: translateY(-50%) !important;
}

.redstone-service-intro-primary .et_pb_button:hover,
.redstone-service-intro-primary.et_pb_button:hover {
	padding: 14px 48px 14px 24px !important;
	border-color: var(--rs-btn-primary-hover-border) !important;
	background: var(--rs-btn-primary-hover-bg) !important;
	color: var(--rs-btn-primary-hover-text) !important;
}

.redstone-service-intro-secondary .et_pb_button,
.redstone-service-intro-secondary.et_pb_button {
	display: inline-flex;
	min-width: 210px;
	min-height: 46px;
	padding: 14px 24px !important;
	border: 1px solid var(--rs-btn-secondary-border) !important;
	border-radius: 999px;
	background: var(--rs-btn-secondary-bg) !important;
	color: var(--rs-btn-secondary-text) !important;
	font-size: 13px;
	font-weight: 600;
	line-height: 1.2 !important;
	align-items: center;
	justify-content: center;
	text-align: center;
}

.redstone-service-intro-secondary .et_pb_button::after,
.redstone-service-intro-secondary.et_pb_button::after {
	display: none;
}

.redstone-service-intro-secondary .et_pb_button:hover,
.redstone-service-intro-secondary.et_pb_button:hover {
	padding: 14px 24px !important;
	border-color: var(--rs-btn-secondary-hover-border) !important;
	background: var(--rs-btn-secondary-hover-bg) !important;
	color: var(--rs-btn-secondary-hover-text) !important;
}

.redstone-service-intro-visual.et_pb_column {
	position: relative;
	z-index: 0;
	justify-self: end;
	overflow: visible;
}

.redstone-service-intro-image.et_pb_image {
	position: relative;
	z-index: 1;
	width: 100%;
	max-width: 390px;
	margin: 0 !important;
	overflow: visible;
}

.redstone-service-intro-image .et_pb_image_wrap {
	position: relative;
	z-index: 1;
	display: block;
	overflow: hidden;
	border-radius: 16px;
	box-shadow: 0 22px 54px rgba(24, 31, 3, 0.1);
}

.redstone-service-intro-image img {
	display: block;
	width: 100%;
	aspect-ratio: 0.82;
	object-fit: cover;
	object-position: center;
}

/* Jobb alsó ferde csíkok: csak a képen, a körülötte lévő oszlopon nincs. */
.redstone-service-intro-visual.et_pb_column::before,
.redstone-service-intro-visual.et_pb_column::after {
	content: none !important;
	display: none !important;
}

.redstone-service-intro-image.et_pb_image::before,
.redstone-service-intro-image.et_pb_image::after {
	position: absolute;
	z-index: 0;
	width: 112px;
	content: "";
	pointer-events: none;
	background: rgba(216, 224, 191, 0.55);
	clip-path: polygon(66% 0, 100% 0, 34% 100%, 0 100%);
	filter: drop-shadow(0 0 0.7px rgba(216, 224, 191, 0.72));
}

.redstone-service-intro-image.et_pb_image::before {
	right: -46px;
	bottom: 18px;
	height: 142px;
	background: rgba(228, 230, 220, 0.92);
}

.redstone-service-intro-image.et_pb_image::after {
	right: -64px;
	bottom: -52px;
	height: 126px;
	background: rgba(216, 224, 191, 0.78);
}

@media (max-width: 980px) {
	.redstone-service-intro-row.et_pb_row {
		width: calc(100% - 60px) !important;
		grid-template-columns: minmax(0, 1.2fr) minmax(280px, 0.8fr);
		gap: 48px;
	}

	.redstone-service-intro-title .et_pb_module_heading,
	.redstone-service-intro-title :is(h1, h2, h3, h4, h5, h6) {
		font-size: clamp(36px, 5vw, 48px) !important;
	}

}

@media (max-width: 767px) {
	.redstone-service-intro-section.et_pb_section {
		padding: var(--redstone-section-padding-vertical-large) 0 !important;
	}

	.redstone-service-intro-row.et_pb_row {
		width: calc(100% - 48px) !important;
		grid-template-columns: 1fr;
		gap: 58px;
	}

	.redstone-service-intro-lead,
	.redstone-service-intro-lead p {
		text-align: left;
	}

	.redstone-service-intro-visual.et_pb_column {
		width: min(100%, 900px) !important;
		margin: 0 auto !important;
		justify-self: center;
	}

	.redstone-service-intro-image.et_pb_image {
		max-width: none;
	}

	.redstone-service-intro-content .et_pb_button_module_wrapper {
		flex: 1 0 auto;
	}

	.redstone-service-intro-content .et_pb_button_module_wrapper > a {
		margin: 0 auto !important;
	}
}

@media (max-width: 479px) {
	.redstone-service-intro-title .et_pb_module_heading,
	.redstone-service-intro-title :is(h1, h2, h3, h4, h5, h6) {
		font-size: clamp(28px, 8vw, 43px) !important;
		line-height: 1.2 !important;
	}

	.redstone-service-intro-lead.et_pb_module {
		margin-bottom: 34px !important;
	}

	.redstone-service-intro-content .et_pb_button_module_wrapper,
	.redstone-service-intro-primary .et_pb_button,
	.redstone-service-intro-primary.et_pb_button,
	.redstone-service-intro-secondary .et_pb_button,
	.redstone-service-intro-secondary.et_pb_button {
		width: 100%;
	}

	.redstone-service-intro-content.et_pb_column {
		row-gap: 10px;
	}

	.redstone-service-intro-image.et_pb_image::before,
	.redstone-service-intro-image.et_pb_image::after {
		width: 86px;
	}
}

/* ============================================================
   Szolgáltatások oldal – audit területei

   Divi CSS-osztályok:
   Section:     redstone-audit-scope-section
   Intro row:   redstone-audit-scope-intro
   Eyebrow:     redstone-audit-scope-eyebrow
   Heading:     redstone-audit-scope-title
   Lead:        redstone-audit-scope-lead
   Logo:        redstone-audit-scope-logo
   Cards row:   redstone-audit-scope-row
   Grid column: redstone-audit-scope-grid
   Card:        redstone-audit-scope-card
   CTA row:     redstone-audit-scope-cta-row
   CTA button:  redstone-audit-scope-cta
   ============================================================ */

.redstone-audit-scope-section.et_pb_section {
	position: relative;
	z-index: 0;
	padding: var(--redstone-section-padding-vertical-large) 0 !important;
	overflow: hidden;
	background: var(--redstone-body-bg);
	isolation: isolate;
}

.redstone-audit-scope-section.et_pb_section::before {
	position: absolute;
	z-index: -1;
	content: "";
	pointer-events: none;
	background:
		linear-gradient(
			145deg,
			var(--redstone-bg-gradient-start) 0%,
			var(--redstone-bg-gradient-end) 100%
		);
	clip-path: polygon(0 0, 65% 0, 39% 100%, 0 100%);
	inset: 0;
}

.redstone-audit-scope-intro.et_pb_row,
.redstone-audit-scope-row.et_pb_row,
.redstone-audit-scope-cta-row.et_pb_row {
	position: relative;
	z-index: 1;
	width: min(78%, 1120px) !important;
	max-width: 1120px !important;
	padding: 0;
}

.redstone-audit-scope-intro.et_pb_row::after,
.redstone-audit-scope-row.et_pb_row::after,
.redstone-audit-scope-cta-row.et_pb_row::after {
	display: none;
}

.redstone-audit-scope-intro.et_pb_row {
	display: grid;
	margin-bottom: 38px;
	grid-template-columns: minmax(0, 1.15fr) minmax(250px, 0.85fr);
	align-items: center;
	gap: 64px;
}

.redstone-audit-scope-intro > .et_pb_column,
.redstone-audit-scope-row > .et_pb_column,
.redstone-audit-scope-cta-row > .et_pb_column {
	float: none;
	width: auto !important;
	margin: 0 !important;
}

.redstone-audit-scope-eyebrow {
	position: relative;
	margin: 0 0 14px !important;
	padding-left: 34px;
	color: var(--redstone-text-dark);
	font-size: 11px;
	font-weight: 600;
	line-height: 1.3;
	letter-spacing: 3px;
	text-transform: uppercase;
}

.redstone-audit-scope-eyebrow::before {
	position: absolute;
	top: 0.62em;
	left: 0;
	width: 22px;
	height: 1px;
	content: "";
	background: currentColor;
}

.redstone-audit-scope-eyebrow p {
	padding: 0;
	color: inherit;
	font: inherit;
	letter-spacing: inherit;
	text-transform: inherit;
}

.redstone-audit-scope-title.et_pb_module {
	max-width: 610px;
	margin: 0 0 14px !important;
}

.redstone-audit-scope-title .et_pb_module_heading,
.redstone-audit-scope-title :is(h1, h2, h3, h4, h5, h6) {
	margin: 0 !important;
	padding: 0 !important;
	color: var(--redstone-title) !important;
	font-size: clamp(38px, 4vw, 56px) !important;
	font-weight: 600 !important;
	line-height: 1.04 !important;
	letter-spacing: -0.035em;
}

.redstone-audit-scope-lead.et_pb_module {
	max-width: 650px;
	margin: 0 !important;
}

.redstone-audit-scope-lead,
.redstone-audit-scope-lead p {
	padding: 0;
	color: var(--redstone-text-dark);
	font-size: 15px;
	font-weight: 400;
	line-height: 1.65;
}

.redstone-audit-scope-logo.et_pb_image {
	margin: 10px 0 0 auto !important;
	text-align: right;
}

.redstone-audit-scope-logo img {
	width: min(280px, 100%);
	height: auto;
}

.redstone-audit-scope-row.et_pb_row {
	margin-bottom: 42px;
}

.redstone-audit-scope-row.et_pb_row.rs-a-s-3row .redstone-audit-scope-grid.et_pb_column {
	grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
}

.redstone-audit-scope-row.et_pb_row.rs-a-s-1row .redstone-audit-scope-grid.et_pb_column {
	grid-template-columns: repeat(1, minmax(0, 1fr)) !important;
}


.redstone-audit-scope-grid.et_pb_column {
	display: grid !important;
	width: 100% !important;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	align-items: stretch;
	gap: clamp(26px, 3vw, 44px);
}

.redstone-audit-scope-card.et_pb_module {
	height: 100%;
	min-height: 100px;
	margin: 0 !important;
	padding: 28px 30px !important;
	border: 1px solid rgba(108, 111, 96, 0.18);
	border-radius: 12px;
	background: rgba(255, 255, 255, 0.92);
	box-shadow: 0 10px 28px rgba(24, 31, 3, 0.03);
}

.redstone-audit-scope-card,
.redstone-audit-scope-card p {
	color: var(--redstone-title);
	font-size: 14px;
	font-weight: 400;
	line-height: 1.8;
	text-align: justify;
	hyphens: auto;
}

.redstone-audit-scope-card p {
	margin: 0;
	padding: 0 0 20px;
}

.redstone-audit-scope-card p:last-child {
	padding-bottom: 0;
}

.redstone-audit-scope-card strong {
	font-weight: 600;
}

.redstone-audit-scope-cta-row.et_pb_row {
	text-align: center;
}

.redstone-audit-scope-cta.et_pb_button_module_wrapper {
	display: inline-block;
	margin: 0 auto !important;
}

.redstone-audit-scope-cta .et_pb_button,
.redstone-audit-scope-cta.et_pb_button {
	position: relative;
	display: inline-flex;
	min-width: 290px;
	min-height: 46px;
	padding: 14px 48px 14px 24px !important;
	border: 1px solid var(--rs-btn-primary-border) !important;
	border-radius: 999px;
	background: var(--rs-btn-primary-bg) !important;
	color: var(--rs-btn-primary-text) !important;
	font-size: 13px;
	font-weight: 600;
	line-height: 1.2 !important;
	align-items: center;
	justify-content: center;
	text-align: center;
	white-space: nowrap;
}

.redstone-audit-scope-cta .et_pb_button::after,
.redstone-audit-scope-cta.et_pb_button::after {
	position: absolute;
	top: 50%;
	right: 20px;
	display: block;
	margin: 0 !important;
	content: "→";
	font-family: inherit !important;
	font-size: 1em;
	line-height: 1;
	opacity: 1;
	transform: translateY(-50%) !important;
}

.redstone-audit-scope-cta .et_pb_button:hover,
.redstone-audit-scope-cta.et_pb_button:hover {
	padding: 14px 48px 14px 24px !important;
	border-color: var(--rs-btn-primary-hover-border) !important;
	background: var(--rs-btn-primary-hover-bg) !important;
	color: var(--rs-btn-primary-hover-text) !important;
}

@media (max-width: 980px) {
	.redstone-audit-scope-intro.et_pb_row,
	.redstone-audit-scope-row.et_pb_row,
	.redstone-audit-scope-cta-row.et_pb_row {
		width: calc(100% - 60px) !important;
	}

	.redstone-audit-scope-section.et_pb_section::before {
		clip-path: polygon(0 0, 82% 0, 48% 100%, 0 100%);
	}
}

@media (max-width: 767px) {
	.redstone-audit-scope-section.et_pb_section {
		padding: var(--redstone-section-padding-vertical-large) 0 !important;
	}

	.redstone-audit-scope-intro.et_pb_row,
	.redstone-audit-scope-row.et_pb_row,
	.redstone-audit-scope-cta-row.et_pb_row {
		width: calc(100% - 48px) !important;
	}

	.redstone-audit-scope-intro.et_pb_row {
		grid-template-columns: 1fr;
		gap: 0;
	}

	.redstone-audit-scope-logo {
		display: none;
	}

	.redstone-audit-scope-grid.et_pb_column {
		grid-template-columns: 1fr;
	}

	.redstone-audit-scope-card.et_pb_module {
		min-height: 0;
	}

	.redstone-audit-scope-row.et_pb_row.rs-a-s-3row .redstone-audit-scope-grid.et_pb_column {
		grid-template-columns: 1fr !important;
	}
}

@media (max-width: 479px) {
	.redstone-audit-scope-title .et_pb_module_heading,
	.redstone-audit-scope-title :is(h1, h2, h3, h4, h5, h6) {
		font-size: clamp(28px, 8vw, 44px) !important;
		line-height: 1.2 !important;
	}

	.redstone-audit-scope-card.et_pb_module {
		padding: 24px !important;
	}

	.redstone-audit-scope-card,
	.redstone-audit-scope-card p {
		text-align: left;
	}

	.redstone-audit-scope-cta.et_pb_button_module_wrapper,
	.redstone-audit-scope-cta .et_pb_button,
	.redstone-audit-scope-cta.et_pb_button {
		width: 100%;
	}
}


/* ============================================================
   Nagy szám alatt kis szöveg
   ============================================================ */

   .redstone-big-num.et_pb_module .et_pb_text_inner {
	font-size: 16px;
   }  
   .redstone-big-num.et_pb_module .et_pb_text_inner strong {
	font-size: clamp(28px, 5vw, 38px) !important;
	white-space: nowrap;
   }

   @media (max-width: 980px) {
	.redstone-big-num.et_pb_module .et_pb_text_inner strong {
		font-size: clamp(24px, 3.5vw, 32px) !important;
		white-space: nowrap;
	   }
   }

/* ============================================================
   Szolgáltatások oldal – megfelelési támogatás

   Divi CSS-osztályok:
   Section:    redstone-compliance-section
   Rows:       redstone-compliance-row
   Top row:    redstone-compliance-row-top
   Heading:    redstone-compliance-title
   Lead:       redstone-compliance-lead
   Details:    redstone-compliance-details
   ============================================================ */

.redstone-compliance-section.et_pb_section {
	position: relative;
	z-index: 0;
	padding: var(--redstone-section-padding-vertical-large) 0 !important;
	overflow: hidden;
	background-color: var(--redstone-footer-bg);
	background-position: center;
	background-size: cover;
	isolation: isolate;
}

.redstone-compliance-section.et_pb_section::before {
	position: absolute;
	z-index: -1;
	content: "";
	pointer-events: none;
	background:
		linear-gradient(
			90deg,
			rgba(32, 38, 13, 0.86) 0%,
			rgba(32, 38, 13, 0.78) 50%,
			rgba(24, 31, 3, 0.84) 100%
		);
	inset: 0;
}

.redstone-compliance-row.et_pb_row {
	display: grid;
	width: min(78%, 1120px) !important;
	max-width: 1120px !important;
	padding: 0;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	align-items: start;
	gap: clamp(54px, 7vw, 96px);
}

.redstone-compliance-row.et_pb_row::after {
	display: none;
}

.redstone-compliance-row > .et_pb_column {
	float: none;
	width: auto !important;
	margin: 0 !important;
}

.redstone-compliance-row-top.et_pb_row {
	margin-bottom: 34px;
	padding-bottom: 42px;
	border-bottom: 1px solid rgba(216, 224, 191, 0.3);
}

.redstone-compliance-title.et_pb_module {
	max-width: 540px;
	margin: 0 0 20px !important;
}

.redstone-compliance-title .et_pb_module_heading,
.redstone-compliance-title :is(h1, h2, h3, h4, h5, h6) {
	margin: 0 !important;
	padding: 0 !important;
	color: var(--redstone-body-bg) !important;
	font-size: clamp(32px, 3vw, 46px) !important;
	font-weight: 400 !important;
	line-height: 1.15 !important;
	letter-spacing: 0;
}

.redstone-compliance-lead.et_pb_module,
.redstone-compliance-details.et_pb_module {
	margin: 0 !important;
}

.redstone-compliance-lead,
.redstone-compliance-lead p {
	padding: 0;
	color: var(--redstone-text-light);
	font-size: 15px;
	font-weight: 400;
	line-height: 1.65;
}

.redstone-compliance-details,
.redstone-compliance-details p {
	color: var(--redstone-body-bg);
	font-size: 14px;
	font-weight: 400;
	line-height: 1.9;
	text-align: justify;
	hyphens: auto;
}

.redstone-compliance-details p {
	margin: 0;
	padding: 0 0 20px;
}

.redstone-compliance-details p:last-child {
	padding-bottom: 0;
}

.redstone-compliance-details strong {
	font-weight: 600;
}

@media (max-width: 980px) {
	.redstone-compliance-row.et_pb_row {
		width: calc(100% - 60px) !important;
		gap: 48px;
	}

	.redstone-compliance-title .et_pb_module_heading,
	.redstone-compliance-title :is(h1, h2, h3, h4, h5, h6) {
		font-size: clamp(34px, 4.5vw, 44px) !important;
	}
}

@media (max-width: 767px) {
	.redstone-compliance-section.et_pb_section {
		padding: var(--redstone-section-padding-vertical-large) 0 !important;
		background-position: 42% center;
	}

	.redstone-compliance-section.et_pb_section::before {
		background: rgba(24, 31, 3, 0.86);
	}

	.redstone-compliance-row.et_pb_row {
		width: calc(100% - 48px) !important;
		grid-template-columns: 1fr;
		gap: 30px;
	}

	.redstone-compliance-row-top.et_pb_row {
		margin-bottom: 34px;
		padding-bottom: 40px;
	}

	.redstone-compliance-details,
	.redstone-compliance-details p {
		text-align: left;
	}
}

@media (max-width: 479px) {
	.redstone-compliance-title .et_pb_module_heading,
	.redstone-compliance-title :is(h1, h2, h3, h4, h5, h6) {
		font-size: clamp(33px, 10vw, 42px) !important;
	}
}

/* ============================================================
   Rólunk oldal – szakértői bemutatkozás

   Divi CSS-osztályok:
   Section:        redstone-about-detail-section
   Row:            redstone-about-detail-row
   Content column: redstone-about-detail-content
   Logo:           redstone-about-detail-logo
   Heading:        redstone-about-detail-title
   Text:           redstone-about-detail-copy
   Visual column:  redstone-about-detail-visual
   Photo:          redstone-about-detail-photo
   Caption:        redstone-about-detail-caption
   ============================================================ */

.redstone-about-detail-section.et_pb_section {
	padding: var(--redstone-section-padding-vertical-large) 0 !important;
	overflow: hidden;
	background: var(--redstone-body-bg);
}

.redstone-about-detail-row.et_pb_row {
	display: grid;
	width: min(82%, 1180px) !important;
	max-width: 1180px !important;
	padding: 0;
	grid-template-columns: minmax(0, 1.28fr) minmax(320px, 0.72fr);
	align-items: center;
	gap: clamp(62px, 8vw, 112px);
}

.redstone-about-detail-row.et_pb_row::after {
	display: none;
}

.redstone-about-detail-row > .et_pb_column {
	float: none;
	width: auto !important;
	margin: 0 !important;
}

.redstone-about-detail-content.et_pb_column {
	min-width: 0;
}

.redstone-about-detail-logo.et_pb_image {
	margin: 0 0 42px !important;
	text-align: left;
}

.redstone-about-detail-logo img {
	display: block;
	width: min(280px, 70%);
	height: auto;
}

.redstone-about-detail-title.et_pb_module {
	max-width: 650px;
	margin: 0 0 34px !important;
}

.redstone-about-detail-title .et_pb_module_heading,
.redstone-about-detail-title :is(h1, h2, h3, h4, h5, h6) {
	margin: 0 !important;
	padding: 0 !important;
	color: var(--redstone-title) !important;
	font-size: clamp(40px, 4.4vw, 60px) !important;
	font-weight: 600 !important;
	line-height: 1.04 !important;
	letter-spacing: -0.04em;
}

.redstone-about-detail-copy.et_pb_module {
	max-width: 720px;
	margin: 0 !important;
}

.redstone-about-detail-copy,
.redstone-about-detail-copy p {
	color: var(--redstone-text-dark);
	font-size: 15px;
	font-weight: 400;
	line-height: 1.75;
	text-align: justify;
	text-wrap: pretty;
	hyphens: auto;
}

.redstone-about-detail-copy p {
	margin: 0;
	padding: 0 0 24px;
}

.redstone-about-detail-copy p:last-child {
	padding-bottom: 0;
}

.redstone-about-detail-copy strong {
	font-weight: 600;
}

.redstone-about-detail-visual.et_pb_column {
	position: relative;
	z-index: 0;
	justify-self: end;
}

.redstone-about-detail-photo.et_pb_image {
	position: relative;
	z-index: 1;
	width: 100%;
	max-width: 410px;
	margin: 0 !important;
}

.redstone-about-detail-photo .et_pb_image_wrap {
	display: block;
	overflow: hidden;
	border-radius: 16px;
	box-shadow: 0 24px 54px rgba(24, 31, 3, 0.12);
}

.redstone-about-detail-photo img {
	display: block;
	width: 100%;
	aspect-ratio: 0.78;
	object-fit: cover;
	object-position: center top;
}

/* Bal felső és jobb alsó ferde glass dekorációk. */
.redstone-about-detail-visual.et_pb_column::before,
.redstone-about-detail-visual.et_pb_column::after,
.redstone-about-detail-photo.et_pb_image::before,
.redstone-about-detail-photo.et_pb_image::after {
	position: absolute;
	z-index: 2;
	width: 120px;
	content: "";
	pointer-events: none;
	background: rgba(216, 224, 191, 0.19);
	clip-path: polygon(66% 0, 100% 0, 34% 100%, 0 100%);
	filter: drop-shadow(0 0 0.7px rgba(216, 224, 191, 0.7));
	backdrop-filter: blur(7px) saturate(115%);
	-webkit-backdrop-filter: blur(7px) saturate(115%);
}

.redstone-about-detail-visual.et_pb_column::before {
	top: -66px;
	left: -58px;
	height: 154px;
	background: rgba(189, 196, 165, 0.25);
}

.redstone-about-detail-visual.et_pb_column::after {
	top: 14px;
	left: -42px;
	height: 142px;
}

.redstone-about-detail-photo.et_pb_image::before {
	right: -42px;
	bottom: 22px;
	height: 134px;
}

.redstone-about-detail-photo.et_pb_image::after {
	right: -62px;
	bottom: -54px;
	height: 118px;
	background: rgba(189, 196, 165, 0.25);
}

.redstone-about-detail-caption.et_pb_module {
	position: absolute;
	z-index: 4;
	right: 14px;
	bottom: 14px;
	left: 14px;
	width: max-content;
	max-width: calc(100% - 28px);
	margin: 0 !important;
	padding: 11px 16px !important;
	border: 1px solid rgba(246, 246, 242, 0.72);
	border-radius: 10px;
	background: rgba(246, 246, 242, 0.9);
	box-shadow: 0 10px 25px rgba(24, 31, 3, 0.1);
	backdrop-filter: blur(10px);
	-webkit-backdrop-filter: blur(10px);
}

.redstone-about-detail-caption,
.redstone-about-detail-caption p {
	padding: 0;
	color: var(--redstone-text-dark);
	font-size: 12px;
	font-weight: 400;
	line-height: 1.35;
}

.redstone-about-detail-caption strong {
	color: var(--redstone-title);
	font-weight: 600;
}

@media (max-width: 980px) {
	.redstone-about-detail-row.et_pb_row {
		width: calc(100% - 60px) !important;
		grid-template-columns: minmax(0, 1.15fr) minmax(300px, 0.85fr);
		gap: 48px;
	}

	.redstone-about-detail-title .et_pb_module_heading,
	.redstone-about-detail-title :is(h1, h2, h3, h4, h5, h6) {
		font-size: clamp(36px, 4.8vw, 48px) !important;
	}
}

@media (max-width: 767px) {
	.redstone-about-detail-section.et_pb_section {
		padding: var(--redstone-section-padding-vertical-large) 0 !important;
	}

	.redstone-about-detail-row.et_pb_row {
		width: calc(100% - 48px) !important;
		grid-template-columns: 1fr;
		gap: 64px;
	}

	.redstone-about-detail-copy,
	.redstone-about-detail-copy p {
		text-align: left;
	}

	.redstone-about-detail-visual.et_pb_column {
		width: min(100%, 500px) !important;
		margin: 0 auto !important;
		justify-self: center;
	}

	.redstone-about-detail-photo.et_pb_image {
		max-width: none;
	}
}

@media (max-width: 479px) {
	.redstone-about-detail-logo.et_pb_image {
		margin-bottom: 34px !important;
	}

	.redstone-about-detail-title .et_pb_module_heading,
	.redstone-about-detail-title :is(h1, h2, h3, h4, h5, h6) {
		font-size: clamp(34px, 10vw, 43px) !important;
	}

	.redstone-about-detail-visual.et_pb_column::before,
	.redstone-about-detail-visual.et_pb_column::after,
	.redstone-about-detail-photo.et_pb_image::before,
	.redstone-about-detail-photo.et_pb_image::after {
		width: 90px;
	}

	.redstone-about-detail-caption.et_pb_module {
		width: auto;
		max-width: none;
	}
}

/* ============================================================
   Kompatibilitási híd a meglévő Divi modulokhoz

   Ezek a közös szabályok szándékosan a blokkstílusok után állnak. Csak az
   ismétlődő geometriát központosítják; a modulonként eltérő méret, margó és
   elrendezés változatlan marad.
   ============================================================ */

:is(
	.redstone-services-eyebrow,
	.redstone-services-cta-eyebrow,
	.redstone-process-eyebrow,
	.redstone-about-eyebrow,
	.redstone-stats-eyebrow,
	.redstone-references-eyebrow,
	.redstone-contact-eyebrow,
	.redstone-audit-scope-eyebrow
) {
	position: relative;
	padding-left: calc(var(--rs-eyebrow-line-width) + var(--rs-eyebrow-line-gap));
	font-family: var(--redstone-font-heading) !important;
	font-size: var(--rs-eyebrow-size);
	font-weight: var(--rs-eyebrow-weight) !important;
	line-height: 1.3;
	letter-spacing: var(--rs-eyebrow-spacing);
	text-transform: uppercase;
}

:is(
	.redstone-services-eyebrow,
	.redstone-services-cta-eyebrow,
	.redstone-process-eyebrow,
	.redstone-about-eyebrow,
	.redstone-stats-eyebrow,
	.redstone-references-eyebrow,
	.redstone-contact-eyebrow,
	.redstone-audit-scope-eyebrow
)::before {
	position: absolute;
	top: 0.62em;
	left: 0;
	width: var(--rs-eyebrow-line-width);
	height: 1px;
	content: "";
	background: currentColor;
}

:is(
	.redstone-services-eyebrow,
	.redstone-services-cta-eyebrow,
	.redstone-process-eyebrow,
	.redstone-about-eyebrow,
	.redstone-stats-eyebrow,
	.redstone-references-eyebrow,
	.redstone-contact-eyebrow,
	.redstone-audit-scope-eyebrow
) p {
	padding: 0;
	color: inherit;
	font: inherit;
	letter-spacing: inherit;
	text-transform: inherit;
}

:is(.redstone-service-intro-primary, .redstone-audit-scope-cta) {
	--rs-btn-arrow-position: absolute;
	--rs-btn-arrow-display: block;
	--rs-btn-arrow-margin: 0;
	--rs-btn-arrow-top: 50%;
	--rs-btn-arrow-right: var(--rs-btn-arrow-offset);
	--rs-btn-arrow-transform: translateY(-50%);
}

.rs-btn--arrow.et_pb_button::after,
.rs-btn--arrow .et_pb_button::after,
.redstone-hero-primary.et_pb_button::after,
.redstone-hero-primary .et_pb_button::after,
.redstone-services-cta-button.et_pb_button::after,
.redstone-services-cta-button .et_pb_button::after,
.redstone-service-intro-primary.et_pb_button::after,
.redstone-service-intro-primary .et_pb_button::after,
.redstone-audit-scope-cta.et_pb_button::after,
.redstone-audit-scope-cta .et_pb_button::after,
.redstone-contact-form .fluentform .ff-btn-submit::after {
	flex: 0 0 auto;
	position: var(--rs-btn-arrow-position, static) !important;
	top: var(--rs-btn-arrow-top, auto) !important;
	right: var(--rs-btn-arrow-right, auto) !important;
	display: var(--rs-btn-arrow-display, inline-block) !important;
	margin: var(--rs-btn-arrow-margin, 0 0 0 var(--rs-btn-arrow-gap)) !important;
	content: "→";
	font-family: inherit !important;
	font-size: 1em;
	line-height: 1;
	opacity: 1;
	transform: var(--rs-btn-arrow-transform, none) !important;
}
