/*
Theme Name: Cloe Brooks Child Theme
Theme URI: http://cloe-brooks.themerex.net/
Description: Cloe Brooks is a Premium WordPress theme that has built-in support for popular Page Builders, slider with swipe gestures, and is SEO- and Retina-ready. The unique system of inheritance and override options allows setting up individual parameters for different sections of your site and supported plugins.
Author: ThemeREX
Author URI: https://themerex.net/
Version: 2.25.0
Tested up to: 7.0
Requires at least: 5.5
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Tags: blog, e-commerce, portfolio, grid-layout, one-column, two-columns, three-columns, four-columns, left-sidebar, right-sidebar, custom-background, custom-colors, custom-header, custom-logo, custom-menu, editor-style, featured-image-header, featured-images, flexible-header, footer-widgets, full-width-template, microformats, post-formats, sticky-post, theme-options, threaded-comments, translation-ready, block-styles, wide-blocks
Text Domain: cloe-brooks
Template: cloe-brooks
*/


/* =Child-Theme customization starts here
------------------------------------------------------------ */

/* Relatietherapie Zwolle: the old Cloe Brooks 1.x design on top of 2.x.
   Rules for deviations from the old design: local/design-rules.md */

:root {
	--rtz-lime: #bacc13;
	--rtz-lime-bar: #c7da16;
	--rtz-lime-light: #d4e914;
	--rtz-yellow: #faffd1;
	--rtz-dark: #4c4c4b;
	--rtz-dark-2: #504b47;
}

/* ---------- Content width of the old site: 1170 / 1000 (1024-1439) / max 900 below ---------- */
@media (min-width: 1024px) and (max-width: 1439px) {
	html:root { --theme-var-page_width: 1000px; }
}
@media (min-width: 961px) and (max-width: 1023px) {
	html:root { --theme-var-page_width: 900px; }
}

/* ---------- Full-width rows (WPBakery "stretch row") ---------- */
html, body { overflow-x: clip; }
.rtz-stretch {
	width: 100vw !important;
	max-width: 100vw !important;
	margin-left: calc(50% - 50vw) !important;
	margin-right: calc(50% - 50vw) !important;
}

/* ---------- Header: top bar ---------- */
.rtz-topbar > .elementor-container { min-height: 51px; }
.rtz-topbar .elementor-column > .elementor-widget-wrap {
	display: flex;
	flex-wrap: nowrap;
	align-items: center;
	padding-top: 0 !important;
	padding-bottom: 0 !important;
}
.rtz-topbar .elementor-column:last-child > .elementor-widget-wrap { justify-content: flex-end; }
.rtz-topbar .sc_layouts_item { margin: 0 !important; }
.rtz-topbar .elementor-column:last-child .sc_layouts_item + .sc_layouts_item { margin-left: 2.6em !important; }
.rtz-topbar .sc_layouts_iconed_text,
.rtz-topbar .sc_layouts_iconed_text a,
.rtz-topbar .sc_layouts_item_details_line1 {
	display: inline-flex;
	align-items: center;
	font-size: 13px;
	line-height: 1.4;
	color: var(--rtz-dark) !important; /* the old white e-mail/phone on lime was 1.6:1 */
}
.rtz-topbar .sc_layouts_item_icon {
	font-size: 16px;
	line-height: 1;
	margin-right: 7px;
	color: var(--rtz-dark) !important;
}
.rtz-topbar a.sc_layouts_iconed_text_link:hover .sc_layouts_item_details_line1,
.rtz-topbar a.sc_layouts_iconed_text_link:hover .sc_layouts_item_icon,
.rtz-topbar a.sc_layouts_iconed_text_link:focus-visible .sc_layouts_item_details_line1 { color: #000 !important; }
.rtz-topbar-cta .sc_button.sc_button_default {
	display: flex;
	align-items: center;
	height: 51px;
	padding: 0 31px;
	border: 0;
	border-radius: 0;
	background: var(--rtz-yellow) !important;
	color: var(--rtz-dark-2) !important;
	font-size: 13px;
	font-weight: 400;
	letter-spacing: 0;
	text-transform: none;
}
.rtz-topbar-cta .sc_button.sc_button_default:hover,
.rtz-topbar-cta .sc_button.sc_button_default:focus-visible { background: #fff !important; color: #000 !important; }

/* ---------- Header: logo bar + menu ---------- */
.rtz-mainbar .elementor-widget-trx_sc_layouts_logo { position: relative; }
.rtz-mainbar .sc_layouts_logo img { height: 60px; max-height: none; width: auto; }
.rtz-mainbar .elementor-column:first-child > .elementor-widget-wrap { position: relative; }
/* The slogan hangs under the logo, out of the flow, so the menu is centred on the logo itself. */
.rtz-mainbar .rtz-slogan { position: absolute; top: 100%; left: auto; margin-top: 2px !important; white-space: nowrap; }
.rtz-slogan,
.rtz-slogan p {
	margin: 0;
	font-size: 15px;
	font-style: italic;
	line-height: 1.4;
	color: #c4c3c2; /* old #6f6f6f on #4c4c4b was 1.6:1 */
}
.rtz-mainbar .elementor-column:last-child > .elementor-widget-wrap { justify-content: flex-end; }
.rtz-mainbar .sc_layouts_menu_nav > li > a {
	padding: 1.8em 1.05em !important;
	color: var(--rtz-yellow) !important;
	font-size: 13px;
	font-weight: 400;
	letter-spacing: 1px;
}
.rtz-mainbar .sc_layouts_menu_nav > li.menu-item-has-children > a { padding-right: 2em !important; }
.rtz-mainbar .sc_layouts_menu_nav > li.current-menu-item > a,
.rtz-mainbar .sc_layouts_menu_nav > li.current-menu-ancestor > a,
.rtz-mainbar .sc_layouts_menu_nav > li.current-menu-parent > a,
.rtz-mainbar .sc_layouts_menu_nav > li > a:hover,
.rtz-mainbar .sc_layouts_menu_nav > li > a:focus-visible,
.rtz-mainbar .sc_layouts_menu_nav > li.sfHover > a { color: var(--rtz-lime-light) !important; }
.rtz-mainbar .sc_layouts_menu_nav > li.menu-item-has-children > a:after { color: inherit !important; }
.rtz-mainbar .sc_layouts_menu_nav > li > ul,
.rtz-mainbar .sc_layouts_menu_nav li > ul ul {
	width: 220px;
	padding: 1.4em 0 !important;
	background: var(--rtz-lime-light) !important;
	border: 0 !important;
	box-shadow: none !important;
}
.rtz-mainbar .sc_layouts_menu_nav > li ul li > a {
	padding: 0.45em 2em !important;
	color: var(--rtz-dark) !important;
	font-size: 13px;
	font-weight: 300;
	letter-spacing: 1px;
	text-transform: uppercase;
	background: transparent !important;
}
.rtz-mainbar .sc_layouts_menu_nav > li ul li > a:hover,
.rtz-mainbar .sc_layouts_menu_nav > li ul li > a:focus-visible,
.rtz-mainbar .sc_layouts_menu_nav > li ul li.current-menu-item > a { color: #000 !important; }
.rtz-mainbar .sc_layouts_menu_mobile_button .sc_layouts_item_icon,
.rtz-mainbar .sc_layouts_menu_mobile_button a { color: var(--rtz-yellow) !important; }

/* ---------- Homepage slider ---------- */
/* Old Slider Revolution "fullwidth" 1170x640: 640px high, scaling down below 1170px. */
.rtz-stretch-content .elementor-widget-trx_widget_slider,
.rtz-stretch-content .widget_slider { margin: 0 !important; }
.rtz-stretch-content .slider_container.slider_swiper,
.rtz-stretch-content .slider_container .slider-slide { height: min(640px, 54.7vw) !important; }
.rtz-stretch-content .slider_container .slide_overlay { background: none !important; }
.rtz-stretch-content .slider_outer .slider_container .slider-slide .slide_info,
.rtz-stretch-content .slider_outer .slider_container .slider-slide .slide_info.slide_info_large {
	position: absolute;
	top: 50% !important;
	bottom: auto !important;
	left: max(30px, calc(50% - var(--theme-var-page_width) / 2)) !important;
	right: auto !important;
	width: auto !important;
	max-width: 520px;
	margin: 0 !important;
	padding: 0 !important;
	background: none !important;
	text-align: left !important;
	transform: translateY(-50%) !important;
}
.rtz-stretch-content .slider_outer .slider_container .slider-slide .slide_title,
.rtz-stretch-content .slider_outer .slider_container .slider-slide .slide_title a {
	margin: 0 0 0.9em !important;
	font-family: Lato, sans-serif !important;
	font-size: 64px !important;
	font-weight: 300 !important;
	line-height: 1.25 !important;
	letter-spacing: 0 !important;
	text-transform: none !important;
	color: #fff !important;
}
.rtz-stretch-content .slider_outer .slider_container .slider-slide .slide_cats,
.rtz-stretch-content .slider_outer .slider_container .slider-slide .slide_cats a {
	margin: 0 0 2em !important;
	font-family: Aller, sans-serif !important;
	font-size: 17px !important;
	font-weight: 300 !important;
	letter-spacing: 0 !important;
	text-transform: none !important;
	color: var(--rtz-lime-light) !important;
}
.rtz-stretch-content .slider_container .slide_number { display: none !important; }
.rtz-stretch-content .slider_outer .slider_container .slide_button { margin: 0 !important; }
.rtz-stretch-content .slider_outer .slider_container .slide_button a {
	display: inline-block;
	padding: 0.9em 2em !important;
	border: 0 !important;
	border-radius: 25px !important;
	background: var(--rtz-lime-bar) !important;
	color: var(--rtz-dark) !important;
	font-size: 15px !important;
	line-height: 1.4 !important;
}
.rtz-stretch-content .slider_outer .slider_container .slide_button a:hover,
.rtz-stretch-content .slider_outer .slider_container .slide_button a:focus-visible { background: #fff !important; color: #000 !important; }
.rtz-stretch-content .slider_container .swiper-pagination-bullet { background: #fff !important; opacity: .6; border-color: transparent !important; }
.rtz-stretch-content .slider_container .swiper-pagination-bullet-active { background: var(--rtz-lime-light) !important; opacity: 1; }
@media (max-width: 1023px) {
	.rtz-stretch-content .slider_outer .slider_container .slider-slide .slide_title,
	.rtz-stretch-content .slider_outer .slider_container .slider-slide .slide_title a { font-size: 40px !important; }
}
/* Tablet: no arrows (as before; they covered the headline). Phone: photo only, the old slider hid the texts and button */
@media (max-width: 1023px) {
	.rtz-stretch-content .slider_outer .slider_controls_wrap { display: none !important; }
}
@media (max-width: 767px) {
	.rtz-stretch-content .slider_outer .slider_container .slider-slide .slide_info { display: none !important; }
}

/* ---------- Pages built with Elementor start right under the header, like before ---------- */
.page-template-elementor_header_footer .page_content_wrap { padding-top: 0 !important; padding-bottom: 0 !important; }

/* ---------- Header on tablet and phone: hamburger menu below 1024px (old breakpoint) ---------- */
@media (max-width: 1023px) {
	.rtz-mainbar .sc_layouts_menu_mobile_button { display: inline-block !important; }
	.rtz-mainbar .sc_layouts_menu_mobile_button + .sc_layouts_menu { display: none !important; }
	.rtz-mainbar .rtz-slogan { position: static; margin-top: 4px !important; white-space: normal; }
	.rtz-mainbar .sc_layouts_logo img { height: 44px; }
}
.rtz-mainbar .sc_layouts_menu_mobile_button .sc_layouts_item_icon { font-size: 26px !important; line-height: 1 !important; }
.rtz-mainbar .sc_layouts_menu_mobile_button a { display: inline-flex; padding: 9px; }
@media (max-width: 767px) {
	.rtz-mainbar .sc_layouts_logo img { height: 34px; }
	.rtz-mainbar .rtz-slogan p { font-size: 13px; }
}

/* ---------- Footer ---------- */
.rtz-footer-contacts,
.rtz-footer-contacts p,
.rtz-footer-contacts a { color: var(--rtz-dark); } /* old #6f6f6f on lime was 3:1 */
.rtz-footer-contacts a:hover { color: #000; }
.rtz-footer-contacts .sc_layouts_logo { display: inline-block; }
.rtz-footer-contacts .rtz-slogan,
.rtz-footer-contacts .rtz-slogan p { color: var(--rtz-dark); margin-top: -6px; }
.rtz-footer-address { display: flex; justify-content: center; gap: 40px; margin: 0 0 1.5em; font-size: 16px; line-height: 1.75; }
.rtz-footer-address > span:first-child { text-align: right; }
.rtz-footer-address > span:last-child { text-align: left; }
@media (max-width: 767px) {
	.rtz-footer-address { flex-direction: column; gap: 1em; }
	.rtz-footer-address > span:first-child,
	.rtz-footer-address > span:last-child { text-align: center; }
}
.rtz-footer-socials .socials_wrap .social_item .social_icon {
	width: 38px;
	height: 38px;
	line-height: 38px;
	border-radius: 50%;
	background: var(--rtz-dark);
	color: #fff;
}
.rtz-footer-socials .socials_wrap .social_item:hover .social_icon { background: #000; }
.rtz-copyright p { margin: 0; font-size: 14px; color: #c4c3c2; } /* old #b1b0af on #504b47 was 4.1:1 */
.rtz-copyright a { color: var(--rtz-lime-light); }
.rtz-copyright a:hover { color: var(--rtz-yellow); }
/* Header fine-tuning */
.rtz-mainbar .sc_layouts_logo { display: inline-block; max-width: none; }
.rtz-mainbar .sc_layouts_logo img { max-width: none !important; }
.rtz-topbar .elementor-column > .elementor-widget-wrap { min-height: 51px; }
.rtz-topbar.sc_layouts_row { padding-top: 0 !important; padding-bottom: 0 !important; }
.rtz-topbar > .elementor-container { height: 51px; }
.rtz-topbar-cta,
.rtz-topbar-cta > .elementor-widget-container,
.rtz-topbar-cta .sc_item_button { height: 51px; margin: 0 !important; padding: 0 !important; }

/* Slide titles keep their line breaks */
.rtz-stretch-content .slider_outer .slider_container .slider-slide .slide_title { white-space: pre-line; }
@media (max-width: 767px) {
	.rtz-mainbar .rtz-slogan p { font-size: 12px; white-space: nowrap; }
	.rtz-mainbar .sc_layouts_menu_mobile_button .sc_layouts_item_icon { font-size: 20px !important; }
}
@media (min-width: 768px) and (max-width: 1023px) {
	.rtz-mainbar .sc_layouts_menu_mobile_button .sc_layouts_item_icon { font-size: 22px !important; }
}

/* ---------- Old theme classes used inside page content (homepage intro) ---------- */
.sc_item_title {
	position: relative;
	margin: 0 0 1.1em;
	padding-bottom: 0.45em;
	font-size: 3.666em;
	line-height: 1.3;
	color: var(--theme-color-text_dark, #33302e);
}
.sc_item_title:after {
	content: '';
	position: absolute;
	left: 50%;
	bottom: 0;
	width: 15px;
	height: 1px;
	margin-left: -7px;
	background-color: var(--rtz-lime-light);
}
.sc_item_descr,
.sc_item_descr p {
	font-size: 0.93em;
	letter-spacing: 1px;
	text-transform: uppercase;
	text-align: center;
}
@media (max-width: 767px) {
	.sc_item_title { font-size: 2.2em; }
}

/* ---------- Typography details of the old theme ---------- */
b, strong { font-weight: 700; }
.rtz-topbar .sc_layouts_item_details_line1 { font-weight: 300; }
.sc_item_descr { max-width: 520px; margin-left: auto; margin-right: auto; }
.sc_item_descr h4, .sc_item_descr h5, .sc_item_descr h6 { text-transform: inherit; letter-spacing: inherit; }

/* ---------- Call to action (old style 2, accented) ---------- */
.rtz-cta .rtz-cta-subtitle .elementor-heading-title { font-family: Lato, sans-serif; font-size: 12.9px; font-weight: 400; text-transform: uppercase; line-height: 1.3; }
.rtz-cta .rtz-cta-title .elementor-heading-title { font-family: Aller, sans-serif; font-size: 3.3em; font-weight: 300; line-height: 1.3; margin: 0 30px; }
.rtz-cta .rtz-cta-descr, .rtz-cta .rtz-cta-descr p { margin: 0 30px; font-size: 20px; line-height: 1.3; letter-spacing: 1px; color: var(--rtz-dark); }
.rtz-cta .elementor-button { font-size: 15px; padding: 15px 30px; }
.rtz-cta .elementor-button:hover, .rtz-cta .elementor-button:focus-visible { background-color: #000 !important; }
@media (max-width: 767px) {
	.rtz-cta .rtz-cta-title .elementor-heading-title { font-size: 1.9em; margin: 0; }
	.rtz-cta .rtz-cta-descr, .rtz-cta .rtz-cta-descr p { margin: 0; font-size: 17px; }
}

/* ---------- Services (old "images" style) ---------- */
.sc_services_default .sc_services_item {
	padding: 0 !important;
	background: #fff !important;
	text-align: center;
	box-shadow: none !important;
}
.sc_services_default .sc_services_item_thumb {
	width: 200px;
	height: 200px;
	margin: 0 auto 34px !important;
	border-radius: 50%;
	overflow: hidden;
}
.sc_services_default .sc_services_item_thumb img { width: 200px; height: 200px; object-fit: cover; }
.sc_services_default .sc_services_item_info { padding: 0 7px !important; background: none !important; }
.sc_services_default .sc_services_item_title,
.sc_services_default .sc_services_item_title a {
	margin: 0 0 25px;
	font-family: Lato, sans-serif;
	font-size: 20.9px;
	font-weight: 400;
	line-height: 1.3;
	color: var(--theme-color-text_dark) !important;
}
.sc_services_default .sc_services_item_title a:hover { color: var(--rtz-lime) !important; }
.sc_services_default .sc_services_item_subtitle,
.sc_services_default .sc_services_item_button,
.sc_services_default .sc_services_item .more-link { display: none !important; }
.sc_services_default .sc_services_item_content,
.sc_services_default .sc_services_item_content p {
	margin: 0;
	font-size: 15px;
	line-height: 1.75;
	display: -webkit-box;
	-webkit-line-clamp: 4;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

/* ---------- Text basics ---------- */
em, i { font-style: italic; }
.elementor-widget-heading .elementor-heading-title { line-height: 1.3; }

/* ---------- Blog cards (old "classic_3": image on top, pale yellow body, centred) ---------- */
.sc_blogger_item_default_classic_3 { background: #faffd2 !important; text-align: center; }
.sc_blogger_item_default_classic_3 .sc_blogger_item_body { padding: 0 !important; background: none !important; }
.sc_blogger_item_default_classic_3 .sc_blogger_item_featured { margin: 0 !important; }
.sc_blogger_item_default_classic_3 .sc_blogger_item_content { padding: 35px 40px 30px !important; }
.sc_blogger_item_default_classic_3 .sc_blogger_item_meta,
.sc_blogger_item_default_classic_3 .sc_blogger_item_meta a {
	justify-content: center;
	font-size: 12px;
	font-weight: 400;
	line-height: 1.3;
	text-transform: uppercase;
	color: #767676; /* old #afafaf on #faffd2 was 2.2:1 */
}
.sc_blogger_item_default_classic_3 .sc_blogger_item_meta .post_meta_item_label,
.sc_blogger_item_default_classic_3 .sc_blogger_item_meta .post_meta_label { display: none; }
.sc_blogger_item_default_classic_3 .sc_blogger_item_meta .post_meta_views,
.sc_blogger_item_default_classic_3 .sc_blogger_item_meta .post_meta_likes,
.sc_blogger_item_default_classic_3 .sc_blogger_item_meta .post_meta_comments { color: var(--rtz-dark); }
.sc_blogger_item_default_classic_3 .sc_blogger_item_meta .post_meta_views:before,
.sc_blogger_item_default_classic_3 .sc_blogger_item_meta .post_meta_likes:before,
.sc_blogger_item_default_classic_3 .sc_blogger_item_meta .post_meta_comments:before { color: var(--rtz-lime); }
.sc_blogger_item_default_classic_3 .sc_blogger_item_title,
.sc_blogger_item_default_classic_3 .sc_blogger_item_title a {
	margin: 12px 0 20px;
	font-family: Lato, sans-serif;
	font-size: 21px !important;
	font-weight: 400 !important;
	line-height: 1.3;
	color: var(--theme-color-text_dark);
}
.sc_blogger_item_default_classic_3 .sc_blogger_item_title a:hover { color: var(--rtz-lime); }
.sc_blogger_item_default_classic_3 .sc_blogger_item_excerpt,
.sc_blogger_item_default_classic_3 .sc_blogger_item_excerpt p { font-size: 15px; line-height: 1.85; margin: 0 0 15px; color: var(--theme-color-text); }
.sc_blogger_item_default_classic_3 .sc_blogger_item_button { margin-top: 5px; }
.sc_blogger_item_default_classic_3 .sc_blogger_item_button .item_more_link,
.rtz-button,
.sc_services .sc_item_button .sc_button,
.sc_blogger .sc_item_button .sc_button {
	display: inline-block;
	padding: 15px 30px !important;
	border-radius: 25px !important;
	background: var(--rtz-lime-bar) !important;
	color: var(--rtz-dark) !important;
	font-size: 15px;
	font-weight: 300;
	line-height: 1.4;
	text-transform: none;
	letter-spacing: 0;
}
.sc_blogger_item_default_classic_3 .sc_blogger_item_button .item_more_link .link_icon { display: none; }
.sc_blogger_item_default_classic_3 .sc_blogger_item_button .item_more_link:hover,
.sc_blogger_item_default_classic_3 .sc_blogger_item_button .item_more_link:focus-visible,
.sc_services .sc_item_button .sc_button:hover,
.sc_blogger .sc_item_button .sc_button:hover { background: var(--rtz-dark) !important; color: #fff !important; }

/* Slider arrows: small round grey buttons at the edges, like the old slider */
.rtz-stretch-content .slider_outer .slider_controls_wrap > a,
.rtz-stretch-content .slider_container .slider_controls_wrap > a {
	width: 30px !important;
	height: 30px !important;
	margin-top: -15px !important;
	line-height: 30px !important;
	border: 0 !important;
	border-radius: 50% !important;
	background: rgba(255, 255, 255, 0.35) !important;
	color: #fff !important;
	font-size: 12px !important;
	opacity: 1;
}
.rtz-stretch-content .slider_controls_wrap > .slider_prev { left: 12px !important; }
.rtz-stretch-content .slider_controls_wrap > .slider_next { right: 12px !important; }
.rtz-stretch-content .slider_controls_wrap > a:hover,
.rtz-stretch-content .slider_controls_wrap > a:focus-visible { background: var(--rtz-lime-light) !important; color: var(--rtz-dark) !important; }
@media (max-width: 767px) {
	.rtz-stretch-content .slider_outer .slider_container .slider-slide .slide_info,
	.rtz-stretch-content .slider_outer .slider_container .slider-slide .slide_info.slide_info_large { max-width: calc(100% - 40px); }
	.rtz-stretch-content .slider_outer .slider_container .slide_button a { white-space: nowrap; font-size: 12px !important; padding: .55em 1.1em !important; }
	.rtz-stretch-content .slider_controls_wrap { display: none !important; }
	.rtz-stretch-content .slider_container .swiper-pagination { bottom: 6px !important; }
}

/* ---------- Testimonials (old style: lime quote box, avatar over the bottom edge, name below) ---------- */
.sc_testimonials_default .sc_testimonials_item { text-align: center; background: none !important; padding: 0 !important; box-shadow: none !important; }
.sc_testimonials_default .sc_testimonials_item_content {
	position: relative;
	margin: 0 0 -31px;
	padding: 56px 70px 62px;
	background: var(--rtz-lime-bar);
	text-align: left;
}
.sc_testimonials_default .sc_testimonials_item_content:before,
.sc_testimonials_default .sc_testimonials_item_content:after {
	position: absolute;
	font-family: Georgia, serif;
	font-size: 40px;
	line-height: 1;
	color: var(--rtz-dark);
	opacity: .55;
}
.sc_testimonials_default .sc_testimonials_item_content:before { content: '\201C'; top: 26px; left: 26px; }
.sc_testimonials_default .sc_testimonials_item_content:after { content: '\201D'; bottom: 22px; right: 26px; }
.sc_testimonials_default .sc_testimonials_item_content,
.sc_testimonials_default .sc_testimonials_item_content p,
.sc_testimonials_default .sc_testimonials_item_content a {
	font-size: 18px;
	font-style: italic;
	font-weight: 300;
	line-height: 1.5;
	color: var(--rtz-dark) !important;
}
.sc_testimonials_default .sc_testimonials_item_content a:hover { text-decoration: underline; }
.sc_testimonials_default .sc_testimonials_item_content p { margin: 0; }
.sc_testimonials_default .sc_testimonials_item_author { display: block; position: relative; text-align: center; }
.sc_testimonials_default .sc_testimonials_item_author_avatar {
	display: block;
	width: 120px;
	height: 120px;
	margin: 0 auto 14px;
	border-radius: 50%;
	overflow: hidden;
}
.sc_testimonials_default .sc_testimonials_item_author_avatar img { width: 120px; height: 120px; object-fit: cover; }
.sc_testimonials_default .sc_testimonials_item_author_data { text-align: center; }
.sc_testimonials_default .sc_testimonials_item_author_title {
	margin: 0;
	font-family: Aller, sans-serif;
	font-size: 18px;
	font-weight: 400;
	line-height: 1.2;
	color: var(--theme-color-text_dark);
}
.sc_testimonials_default .sc_testimonials_item_author_subtitle { font-size: 15px; font-weight: 300; color: #6f6c6a; } /* old 60% opacity was 2.9:1 */
@media (max-width: 767px) {
	.sc_testimonials_default .sc_testimonials_item_content { padding: 44px 30px 56px; }
	.sc_testimonials_default .sc_testimonials_item_content,
	.sc_testimonials_default .sc_testimonials_item_content p,
	.sc_testimonials_default .sc_testimonials_item_content a { font-size: 16px; }
}

/* ---------- Contact form (Ninja Forms, styled like the old theme form) ---------- */
.rtz-contact-form .nf-form-content { max-width: none; padding: 0; }
.rtz-contact-form nf-fields-wrap { display: flex; flex-wrap: wrap; gap: 0 30px; }
.rtz-contact-form nf-field { flex: 1 1 100%; }
/* Naam, E-mail and Mobiel nummer side by side (old: 3 x 170px with 30px gaps), stacked on phones */
.rtz-contact-form nf-field:has(.rtz-col-third) { flex: 1 1 calc(33.333% - 20px); min-width: 0; }
@media (min-width: 768px) and (max-width: 1023px) { .rtz-contact-form nf-field:has(.rtz-col-third) { flex-basis: calc(33.333% - 8px); } }
@media (max-width: 767px) { .rtz-contact-form nf-field:has(.rtz-col-third) { flex-basis: 100%; } }
.rtz-contact-form .nf-field-container { margin-bottom: 16px; }
.rtz-contact-form .nf-field-element input:not([type=submit]):not([type=button]),
.rtz-contact-form .nf-field-element textarea {
	width: 100%;
	height: auto;
	padding: 14px 20px;
	border: 2px solid transparent;
	border-radius: 25px;
	background: #fff;
	color: var(--theme-color-text);
	font-family: Aller, sans-serif;
	font-size: 15px;
	font-weight: 300;
	line-height: 1.3;
	box-shadow: none;
}
.rtz-contact-form .nf-field-element textarea { height: 120px; border-radius: 12px; resize: none; }
.rtz-contact-form .nf-field-element input:focus,
.rtz-contact-form .nf-field-element textarea:focus { border-color: var(--rtz-lime); outline: none; }
.rtz-contact-form ::placeholder { color: #767676; opacity: 1; } /* old placeholders were #afafaf (2.3:1) */
.rtz-contact-form .submit-container { text-align: left; }
.rtz-contact-form input[type=submit] {
	height: auto;
	padding: 15px 30px;
	border: 0;
	border-radius: 25px;
	background: var(--rtz-lime-bar);
	color: var(--rtz-dark);
	font-family: Aller, sans-serif;
	font-size: 15px;
	font-weight: 300;
	letter-spacing: 0;
	text-transform: none;
	cursor: pointer;
}
.rtz-contact-form input[type=submit]:hover,
.rtz-contact-form input[type=submit]:focus-visible { background: var(--rtz-dark); color: #fff; }
.rtz-contact-form .nf-error-msg,
.rtz-contact-form .nf-error .ninja-forms-field { color: #b00020; }
.rtz-contact-form .nf-error .ninja-forms-field { border-color: #b00020 !important; }
.rtz-contact-form .nf-form-fields-required { display: none; }
.rtz-contact-form .nf-response-msg { padding: 16px 20px; border-radius: 12px; background: var(--rtz-lime-bar); color: var(--rtz-dark); }
/* Old card order: image first, then date/counters, title, excerpt, button */
.sc_blogger_item_default_classic_3 { display: flex !important; flex-direction: column; }
.sc_blogger_item_default_classic_3 .sc_blogger_item_body { display: contents; }
.sc_blogger_item_default_classic_3 .sc_blogger_item_featured { order: -1; }
.sc_blogger_item_default_classic_3 .sc_blogger_item_header { padding: 35px 40px 0; }
.sc_blogger_item_default_classic_3 .sc_blogger_item_content { padding: 0 40px 30px !important; }
.sc_blogger_item_default_classic_3 .item_more_link .link_text { color: inherit !important; }
.sc_blogger_item_default_classic_3 .sc_blogger_item_title { margin-bottom: 0 !important; }
.sc_blogger .sc_blogger_item_default_classic_3 .sc_blogger_item_button .item_more_link .link_text { visibility: visible !important; opacity: 1 !important; transform: none !important; }

/* Divider (WPBakery separator): thin lime line like before */
.elementor-widget-divider .elementor-divider-separator { border-top: 1px solid #ebebeb !important; } /* old vc_separator: 1px #ebebeb */

/* Contact form on a photo background: slightly translucent fields, centred button (old look) */
.rtz-stretch .rtz-contact-form .nf-field-element input:not([type=submit]),
.rtz-stretch .rtz-contact-form .nf-field-element textarea { background: rgba(255, 255, 255, 0.85); }
.rtz-contact-form .submit-container { text-align: center; }

/* Footer: logo, slogan, address and socials stacked and centred */
.rtz-footer-contacts .elementor-widget-wrap { flex-direction: column; align-items: center; }
.rtz-footer-contacts .elementor-widget-wrap > .elementor-element { width: 100%; text-align: center; }
.rtz-footer-contacts .rtz-slogan { margin-top: 0 !important; }
/* Slogan left-aligned under the logo, as before */
.rtz-footer-contacts .rtz-slogan p { width: 450px; max-width: 100%; margin: 0 auto; text-align: left; font-size: 15px; }
.rtz-footer-socials { margin-top: 32px !important; }
.rtz-footer-socials .socials_wrap { display: flex; justify-content: center; gap: 8px; }
@media (max-width: 767px) {
	.rtz-footer-contacts .rtz-slogan p { width: 304px; }
	.rtz-footer-socials { margin-top: 24px !important; }
}
/* Tablet and phone: phone number and e-mail on their own lines instead of "… 81 | Mail: …" wrapping */
@media (max-width: 1023px) {
	.rtz-footer-address .rtz-sep { display: none; }
	.rtz-footer-address > span:last-child a { display: block; }
}
.rtz-footer-socials .socials_wrap .social_item { margin: 0 !important; }
.rtz-footer-socials .socials_wrap .social_item .social_icon {
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	width: 38px !important;
	height: 38px !important;
	border: 0 !important;
	border-radius: 50% !important;
	background: var(--rtz-dark) !important;
	color: #fff !important;
	font-size: 14px;
}
.rtz-footer-socials .socials_wrap .social_item .social_icon span { color: #fff !important; }
.rtz-footer-socials .socials_wrap .social_item:hover .social_icon,
.rtz-footer-socials .socials_wrap .social_item:focus-visible .social_icon { background: #000 !important; }

/* Section descriptions of ThemeREX widgets: narrow centred column like the old .sc_item_descr */
.sc_blogger .sc_item_descr, .sc_services .sc_item_descr, .sc_testimonials .sc_item_descr { max-width: 520px; margin-left: auto; margin-right: auto; }
.sc_testimonials_item_author_subtitle { font-weight: 300 !important; }

/* Copyright bar */
.rtz-copyright p { font-weight: 400 !important; }
.rtz-copyright .elementor-widget-container a,
.rtz-copyright p a { color: var(--rtz-lime) !important; font-weight: 400; }
.rtz-copyright .elementor-widget-container a:hover,
.rtz-copyright p a:hover { color: var(--rtz-yellow) !important; }

/* Stretched rows keep the page gutters on tablet and phone (content of boxed rows) */
/* (the theme's --content-width already subtracts the gutters, which would double them with this padding) */
@media (max-width: 1023px) {
	.rtz-stretch.e-con-boxed > .e-con-inner { max-width: none; padding-left: 30px; padding-right: 30px; }
}
@media (max-width: 767px) {
	.rtz-stretch.e-con-boxed > .e-con-inner { padding-left: 20px; padding-right: 20px; }
}

/* Widget section titles (e.g. "Kwesties waarmee ...") */
.sc_item_title.sc_item_title_style_default,
.sc_item_title .sc_item_title_text { line-height: 1.3 !important; }

/* Testimonial avatars keep their size on small screens */
.sc_testimonials .sc_testimonials_item_author_avatar { width: 120px !important; height: 120px !important; flex: 0 0 120px; }
.sc_testimonials .sc_testimonials_item_author_avatar img { width: 120px !important; height: 120px !important; max-width: none; }
.sc_testimonials .sc_testimonials_item_author_avatar:after { display: none !important; } /* theme's quote badge */
.sc_blogger .sc_blogger_item_default_classic_3 .sc_blogger_item_button .item_more_link {
	width: auto !important;
	height: auto !important;
	min-width: 0 !important;
	white-space: nowrap;
	border: 0 !important;
}
.sc_blogger .sc_blogger_item_default_classic_3 .sc_blogger_item_button .item_more_link .link_text { position: static !important; }
.sc_blogger .sc_blogger_item_default_classic_3 .sc_blogger_item_button .item_more_link { display: inline-block !important; }
.sc_blogger .sc_blogger_item_default_classic_3 .sc_blogger_item_button .item_more_link .link_text { width: auto !important; flex: none !important; }
body .sc_blogger .sc_blogger_item.sc_blogger_item_default_classic_3 .sc_blogger_item_button a.item_more_link { overflow: visible !important; }
body .sc_blogger .sc_blogger_item.sc_blogger_item_default_classic_3 .sc_blogger_item_button a.item_more_link span.link_text { width: auto !important; text-indent: 0 !important; }

/* ---------- Breadcrumbs bar (not on the homepage, as before) ---------- */
body.home .rtz-titlebar { display: none !important; }
.rtz-titlebar > .elementor-container { min-height: 74px; }
.rtz-titlebar .elementor-widget-wrap { padding-top: 0 !important; padding-bottom: 0 !important; justify-content: flex-end; }
.rtz-titlebar .sc_layouts_title { margin: 0; padding: 0; min-height: 0 !important; }
.rtz-titlebar .sc_layouts_title_breadcrumbs,
.rtz-titlebar .breadcrumbs { font-size: 13px; font-weight: 300; line-height: 1.5; color: #c4c3c2; } /* current page: old #6f6f6f on dark was 2.4:1 */
.rtz-titlebar .breadcrumbs a { color: #fff !important; }
.rtz-titlebar .breadcrumbs a:hover, .rtz-titlebar .breadcrumbs a:focus-visible { color: var(--rtz-lime-light) !important; }
.rtz-titlebar .breadcrumbs .breadcrumbs_delimiter { color: #fff; }
@media (max-width: 1023px) { .rtz-titlebar > .elementor-container { min-height: 64px; } }
@media (max-width: 767px) { .rtz-titlebar > .elementor-container { min-height: 60px; } }

/* ---------- Sidebar (old: lime box, 300px, below the content on small screens) ---------- */
.sidebar .sidebar_inner {
	padding: 45px 50px 45px !important;
	background: var(--rtz-lime) !important;
}
.sidebar .widget { margin: 0 0 30px !important; padding: 0 !important; background: none !important; border: 0 !important; }
.sidebar .widget:last-child { margin-bottom: 0 !important; }
.sidebar .widget_title,
.sidebar .widgettitle {
	margin: 0 0 21px !important;
	font-family: Lato, sans-serif !important;
	font-size: 21px !important;
	font-weight: 400 !important;
	line-height: 1.3 !important;
	color: var(--theme-color-text_dark) !important; /* old white on lime was 1.8:1 */
}
.sidebar .widget li { padding-left: 18px !important; margin-bottom: 4px !important; font-size: 15px; line-height: 1.85; }
.sidebar .widget li:before { color: var(--rtz-dark) !important; }
.sidebar .widget li a { color: var(--rtz-dark) !important; }
.sidebar .widget li a:hover, .sidebar .widget li a:focus-visible { color: #000 !important; text-decoration: underline; }
.sidebar { margin-top: 80px; }
@media (max-width: 1023px) { .sidebar { margin-top: 40px; } }

/* ---------- Content tables (old: thin cell borders, no stripes; now always within the column) ---------- */
.elementor-widget-text-editor table {
	width: 100% !important;
	height: auto !important;
	max-width: 100%;
	border-collapse: collapse;
	margin: 1.5em 0;
}
.elementor-widget-text-editor table td,
.elementor-widget-text-editor table th {
	width: auto !important;
	padding: 4px 8px;
	border: 1px solid #e4e7e8;
	background: none !important;
	font-size: 15px;
	line-height: 1.6;
	color: var(--theme-color-text);
	text-align: left;
	vertical-align: top;
}
.elementor-widget-text-editor table tr:nth-child(odd) td,
.elementor-widget-text-editor table tr:nth-child(even) td { background: none !important; }
@media (max-width: 767px) {
	.elementor-widget-text-editor table { display: block; overflow-x: auto; }
	.elementor-widget-text-editor table td { font-size: 14px; padding: .5em; white-space: nowrap; } /* scrolls sideways instead of squeezing */
}

/* ---------- Quote (old trx_quote: lime box) ---------- */
.rtz-quote blockquote {
	margin: 0 0 1.5em;
	padding: 36px 40px; /* old: 36px 70px + 72px left margin left ~100px for the text */
	border: 0;
	background: var(--rtz-lime-bar);
	font-size: 18px;
	font-style: normal;
	line-height: 1.66;
	color: var(--rtz-dark);
}
.rtz-quote blockquote:before { display: none; }
.rtz-quote blockquote h1, .rtz-quote blockquote h2, .rtz-quote blockquote h3,
.rtz-quote blockquote h4, .rtz-quote blockquote h5, .rtz-quote blockquote h6 {
	margin: 0 0 .5em;
	font-family: Lato, sans-serif;
	font-size: 25.2px;
	font-weight: 400;
	line-height: 1.3;
	color: var(--theme-color-text_dark);
}
.rtz-quote blockquote p { margin: 0; font-size: 18px; color: var(--rtz-dark); }
.rtz-quote blockquote a { color: var(--rtz-dark); text-decoration: underline; }

/* ---------- Section titles of trx_section ---------- */
.rtz-section-title .elementor-heading-title { font-size: 3.666em; }
@media (max-width: 767px) { .rtz-section-title .elementor-heading-title { font-size: 2.2em; } }

/* ---------- Elementor buttons: the old theme button (lime, dark text, round) ---------- */
.elementor-button {
	padding: 15px 30px;
	border-radius: 25px;
	background-color: var(--rtz-lime-bar);
	color: var(--rtz-dark);
	font-family: Aller, sans-serif;
	font-size: 15px;
	font-weight: 300;
	line-height: 1.4;
	fill: var(--rtz-dark);
}
.elementor-button:hover, .elementor-button:focus-visible { background-color: var(--rtz-dark) !important; color: #fff !important; }

/* ---------- Team (old: square photo, name left, position in capitals) ---------- */
.sc_team_default .sc_team_item { text-align: left !important; background: none !important; padding: 0 !important; box-shadow: none !important; }
.sc_team_default .sc_team_item_thumb { margin: 0 0 30px; border-radius: 0 !important; }
.sc_team_default .sc_team_item_thumb img { width: 100%; aspect-ratio: 1; object-fit: cover; border-radius: 0 !important; }
.sc_team_default .sc_team_item_info { padding: 0 !important; background: none !important; text-align: left !important; }
.sc_team_default .sc_team_item_title,
.sc_team_default .sc_team_item_title a { margin: 0; font-family: Lato, sans-serif; font-size: 21px !important; font-weight: 400 !important; line-height: 1.3; color: var(--theme-color-text_dark) !important; }
.sc_team_default .sc_team_item_subtitle {
	margin: 0 0 10px;
	font-size: 12px !important;
	font-weight: 400;
	line-height: 2.3;
	letter-spacing: 0;
	text-transform: uppercase;
	color: #6a7700 !important; /* old lime #bacc13 on white was 1.8:1 */
}
.sc_team_default .sc_team_item_socials { justify-content: flex-start; }

/* WPBakery row gutters: columns have 15px padding, the row compensates with -15px */
.e-con.rtz-row:not(.rtz-stretch) { margin-left: -15px !important; margin-right: -15px !important; width: calc(100% + 30px) !important; max-width: none; }
.e-con.rtz-row.rtz-stretch.e-con-boxed > .e-con-inner { margin-left: auto; margin-right: auto; }
@media (min-width: 1024px) {
	.e-con.rtz-row.rtz-stretch.e-con-boxed > .e-con-inner { max-width: calc(var(--theme-var-page_width) + 30px); padding-left: 0; padding-right: 0; }
}

/* Circle images: square crop */
.rtz-circle img { aspect-ratio: 1 / 1; object-fit: cover; }

/* Quote box: stronger than the theme's blockquote style; quote marks like before */
.rtz-quote blockquote { position: relative; background: var(--rtz-lime-bar) !important; color: var(--rtz-dark) !important; padding: 44px 46px !important; }
.rtz-quote blockquote:before,
.rtz-quote blockquote:after { display: block !important; position: absolute; font-family: Georgia, serif; font-size: 34px; line-height: 1; color: var(--rtz-dark); opacity: .55; }
.rtz-quote blockquote:before { content: '\201C' !important; top: 16px; left: 18px; }
.rtz-quote blockquote:after { content: '\201D' !important; bottom: 4px; right: 18px; }
.rtz-quote blockquote h1, .rtz-quote blockquote h2, .rtz-quote blockquote h3,
.rtz-quote blockquote h4, .rtz-quote blockquote h5, .rtz-quote blockquote h6 { font-style: italic; }

/* Quotes inside dark sections: dark box, italic lime text (old inverse style) */
.rtz-quote blockquote p, .rtz-quote blockquote { font-style: italic; }
.rtz-quote-dark blockquote { background: var(--rtz-dark) !important; border: 1px solid #5f5f5e; }
.rtz-quote-dark blockquote, .rtz-quote-dark blockquote p { font-size: 16px; color: #d5e800 !important; }
.rtz-quote-dark blockquote:before, .rtz-quote-dark blockquote:after { color: #d5e800; }

/* Title bar: page title only on service pages (as before), left; breadcrumbs right */
.rtz-titlebar .sc_layouts_title { display: flex; align-items: center; justify-content: space-between; gap: 30px; width: 100%; }
.rtz-titlebar .sc_layouts_title_title { display: none; margin: 0; }
body.single-cpt_services .rtz-titlebar .sc_layouts_title_title { display: block; }
.rtz-titlebar .sc_layouts_title_caption { margin: 0; font-family: Lato, sans-serif; font-size: 23px; font-weight: 400; line-height: 1.2; color: #fff !important; text-align: left; }
.rtz-titlebar .sc_layouts_title_breadcrumbs { margin-left: auto; }
.rtz-titlebar .elementor-widget-trx_sc_layouts_title { width: 100%; }
.rtz-titlebar .elementor-widget-trx_sc_layouts_title,
.rtz-titlebar .elementor-widget-trx_sc_layouts_title > .elementor-widget-container,
.rtz-titlebar .sc_layouts_title { width: 100% !important; max-width: none !important; }
.rtz-titlebar .sc_layouts_title { flex-direction: row !important; flex-wrap: nowrap; }
.rtz-titlebar .sc_layouts_title_breadcrumbs { white-space: nowrap; text-align: right; }
@media (max-width: 767px) {
	.rtz-titlebar .sc_layouts_title { flex-direction: column !important; align-items: flex-start; gap: 4px; }
	.rtz-titlebar .sc_layouts_title_breadcrumbs { margin-left: 0; white-space: normal; text-align: left; }
	.rtz-titlebar .sc_layouts_title_caption { font-size: 19px; }
}
.rtz-titlebar .sc_layouts_title_content { display: flex; align-items: center; justify-content: space-between; gap: 30px; width: 100%; }
@media (max-width: 767px) {
	.rtz-titlebar .sc_layouts_title_content { flex-direction: column; align-items: flex-start; gap: 4px; }
}
@media (min-width: 768px) {
	.rtz-titlebar .sc_layouts_title .sc_layouts_title_content { flex-direction: row !important; align-items: center !important; justify-content: space-between !important; }
}
.rtz-titlebar .sc_layouts_title_title { flex: 1 1 auto; text-align: left !important; }
.rtz-titlebar .sc_layouts_title_breadcrumbs { flex: 0 1 auto; }
.rtz-titlebar .elementor-widget-wrap > .elementor-widget-trx_sc_layouts_title { flex: 1 1 100% !important; margin-left: 0 !important; }

/* Plain <blockquote> in text: the old theme's lime quote */
.post_content blockquote,
.elementor-widget-text-editor blockquote {
	position: relative;
	margin: 0 0 1.5em;
	padding: 44px 46px !important;
	border: 0;
	background: var(--rtz-lime-bar) !important;
	font-size: 18px;
	font-style: italic;
	line-height: 1.66;
	color: var(--rtz-dark) !important;
}
.post_content blockquote p,
.elementor-widget-text-editor blockquote p { margin: 0; font-size: 18px; font-style: italic; color: var(--rtz-dark) !important; }

/* ---------- Single post (old layout: title, one meta line, content, tags line, related) ---------- */
.post_header_single { display: flex; flex-wrap: wrap; align-items: baseline; margin-bottom: 38px; }
.post_header_single .post_title { order: 1; flex: 0 0 100%; margin: 0 0 15px; font-size: 3.666em; line-height: 1.3; }
.post_header_single .post_meta { margin: 0; font-size: 12px; font-weight: 400; line-height: 1.3; text-transform: uppercase; color: #767676; }
.post_header_single .post_meta_categories { order: 2; margin-right: 1.2em; }
.post_header_single .post_meta_categories:before { content: 'in '; }
.post_header_single .post_meta_other { order: 3; }
.post_header_single .post_meta a { color: #6a7700; } /* old lime #bacc13 on white was 1.8:1 at 12px */
.post_header_single .post_meta a:hover { color: var(--rtz-dark); }
.post_header_single .post_categories a { padding: 0 !important; background: none !important; border-radius: 0; font-size: 12px; letter-spacing: 0; }
.post_header_single .post_meta_item + .post_meta_item:before { content: '\00B7'; margin: 0 .5em; }
.post_header_single .post_meta_label { display: none; }
@media (max-width: 767px) { .post_header_single .post_title { font-size: 2.2em; } }

.post_footer_single .post_meta,
.post_footer_single .post_meta_likes { display: none !important; }
.post_tags_single { margin: 2em 0 0; font-size: 12px; font-weight: 400; line-height: 1.6; text-transform: uppercase; color: #767676; }
.post_tags_single .post_meta_label { display: inline; }
.post_tags_single a { display: inline; padding: 0 !important; margin: 0 !important; border: 0 !important; background: none !important; font-size: 12px; color: #6a7700; }
.post_tags_single a:not(:last-child):after { content: ','; color: #767676; } /* trailing commas, so no line starts with one */
.post_tags_single a:hover { color: var(--rtz-dark); }

.related_wrap .related_wrap_title { margin: 63px 0 45px; font-size: 3em; font-weight: 400; }
.related_wrap .related_item { background: rgba(76, 76, 75, 0.05); padding: 0 0 20px; }
.related_wrap .related_item .post_header,
.related_wrap .related_item .post_meta { padding: 0 19px; }
.related_wrap .related_item .post_title { margin: 15px 0 6px; font-size: 21px; font-weight: 400; line-height: 1.3; }
.related_wrap .related_item .post_title a { color: var(--theme-color-text_dark); }
.related_wrap .related_item .post_title a:hover { color: #6a7700; }

/* ---------- Archive cards (old classic grid: image, pale yellow body, centred) ---------- */
.post_layout_classic { background: #faffd2; text-align: center; padding-bottom: 30px; }
.post_layout_classic .post_featured { margin: 0 0 32px !important; }
.post_layout_classic .post_header { padding: 0 30px; }
.post_layout_classic .post_meta { justify-content: center; font-size: 12px; font-weight: 400; text-transform: uppercase; color: #767676; }
.post_layout_classic .post_meta a { color: #767676; }
.post_layout_classic .post_title { position: relative; margin: 14px 0 20px; padding-bottom: 14px; font-family: Lato, sans-serif; font-size: 21px; font-weight: 400; line-height: 1.3; }
.post_layout_classic .post_title:after { content: ''; position: absolute; left: 50%; bottom: 0; width: 15px; height: 1px; margin-left: -7px; background: var(--rtz-lime-light); }
.post_layout_classic .post_title a { color: var(--theme-color-text_dark); }
.post_layout_classic .post_title a:hover { color: #6a7700; }
.post_layout_classic .post_content_inner { font-size: 15px; line-height: 1.85; color: var(--theme-color-text); margin-bottom: 20px; }
.post_layout_classic .more-wrap { margin: 0; }
.post_layout_classic .more-link {
	display: inline-block;
	padding: 15px 30px;
	border: 0;
	border-radius: 25px;
	background: var(--rtz-lime-bar);
	color: var(--rtz-dark);
	font-size: 15px;
	font-weight: 300;
	letter-spacing: 0;
	text-transform: none;
}
.post_layout_classic .more-link:hover, .post_layout_classic .more-link:focus-visible { background: var(--rtz-dark); color: #fff; }
.post_layout_classic .post_header .post_meta { position: static !important; margin: 0 !important; transform: none !important; }
.post_layout_classic .post_featured img { width: 100%; aspect-ratio: 16 / 9; object-fit: cover; }

/* Narrow columns: testimonial padding scales with the box; long words (e-mail addresses) wrap instead of being cut */
.sc_testimonials_default .sc_testimonials_item_content { padding-left: clamp(22px, 12%, 70px); padding-right: clamp(22px, 12%, 70px); }
.elementor-widget-text-editor, .elementor-heading-title { overflow-wrap: break-word; }
.elementor-widget-icon-box, .elementor-widget-text-editor a[href^="mailto:"] { overflow-wrap: anywhere; }

/* Links inside headings in running text stay inline (the theme makes h1-h6 > a a block) */
.elementor-widget-text-editor :is(h1, h2, h3, h4, h5, h6) > a,
.post_content :is(h1, h2, h3, h4, h5, h6) > a { display: inline; }

/* Hand-written WPBakery buttons inside text (class vc_btn3), styled like before */
.elementor-widget-text-editor a.vc_btn3,
.post_content a.vc_btn3 {
	display: inline-block;
	padding: 14px 20px;
	border: 1px solid transparent;
	border-radius: 2em;
	font-size: 14px;
	line-height: 1.4;
	text-decoration: none;
	transition: background-color .2s, color .2s;
}
.elementor-widget-text-editor a.vc_btn3.vc_btn3-size-lg { padding: 18px 25px; font-size: 15px; }
.elementor-widget-text-editor a.vc_btn3.vc_btn3-size-sm { padding: 11px 17px; font-size: 12px; }
.elementor-widget-text-editor a.vc_btn3:not([style*="background"]) { background: var(--rtz-lime-bar); color: var(--rtz-dark); }
.elementor-widget-text-editor a.vc_btn3:hover,
.elementor-widget-text-editor a.vc_btn3:focus-visible { background: var(--rtz-dark) !important; color: #fff !important; }

/* Event pages: no tags line and no related posts (as before) */
.rtz-no-post-extras .post_footer_single,
.rtz-no-post-extras .related_wrap,
.rtz-no-post-extras .post_header_single .post_meta { display: none !important; } /* event pages had no meta line */

/* Team: the old cards showed a short description under the position */
.sc_team_default .sc_team_item .sc_team_item_content { display: block !important; margin-top: 4px; }
.sc_team_default .sc_team_item .sc_team_item_content p {
	margin: 0;
	font-size: 15px;
	line-height: 1.75;
	color: var(--theme-color-text);
	display: -webkit-box;
	-webkit-line-clamp: 5;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

/* Sidebar lists: checkmarks like before (old: light lime on lime, barely visible; now the text colour) */
.sidebar .widget ul li { position: relative; padding-left: 20px !important; list-style: none; }
.sidebar .widget ul li:before {
	content: '\2713' !important;
	display: block !important;
	position: absolute;
	left: 0;
	top: 0;
	font-family: "Segoe UI Symbol", "DejaVu Sans", sans-serif;
	font-size: 13px;
	line-height: 1.85rem;
	color: var(--rtz-dark) !important;
	background: none !important;
	width: auto;
	height: auto;
}

/* Testimonials: name and position centred under the avatar; arrows under the slider like before */
.sc_testimonials .sc_testimonials_item_author { flex-direction: column; align-items: center; }
.sc_testimonials .sc_testimonials_item_author_data { width: 100%; text-align: center !important; }
.sc_testimonials .slider_outer_controls_bottom .slider_controls_wrap { display: flex; justify-content: center; gap: 8px; margin-top: 20px; }
.sc_testimonials .slider_outer_controls_bottom .slider_controls_wrap > a {
	position: static !important;
	width: 30px; height: 30px; margin: 0 !important;
	border: 0 !important; border-radius: 50%;
	background: var(--rtz-dark) !important; color: #fff !important;
	line-height: 30px; font-size: 12px;
}
.sc_testimonials .slider_outer_controls_bottom .slider_controls_wrap > a:hover,
.sc_testimonials .slider_outer_controls_bottom .slider_controls_wrap > a:focus-visible { background: #000 !important; }

/* ---------- All Ninja Forms in one style (also the Imago registration form with visible labels) ---------- */
.nf-form-cont .nf-field-element input:not([type=submit]):not([type=button]):not([type=checkbox]):not([type=radio]),
.nf-form-cont .nf-field-element textarea,
.nf-form-cont .nf-field-element select {
	width: 100%;
	height: auto;
	padding: 14px 20px;
	border: 2px solid transparent;
	border-radius: 25px;
	background: #fff;
	color: var(--theme-color-text);
	font-family: Aller, sans-serif;
	font-size: 15px;
	font-weight: 300;
	line-height: 1.3;
	box-shadow: none;
}
.nf-form-cont .nf-field-element textarea { min-height: 120px; border-radius: 12px; }
.rtz-stretch .nf-form-cont .nf-field-element input:not([type=submit]):not([type=checkbox]):not([type=radio]),
.rtz-stretch .nf-form-cont .nf-field-element textarea { background: rgba(255, 255, 255, 0.85); }
.nf-form-cont .nf-field-element input:focus,
.nf-form-cont .nf-field-element textarea:focus { border-color: var(--rtz-lime); outline: none; }
.nf-form-cont .nf-field-label label { font-family: Aller, sans-serif; font-size: 15px; font-weight: 700; color: var(--theme-color-text_dark); }
.nf-form-cont .nf-field-container { margin-bottom: 20px; }
.nf-form-cont input[type=submit] {
	height: auto;
	padding: 15px 30px;
	border: 0;
	border-radius: 25px;
	background: var(--rtz-lime-bar);
	color: var(--rtz-dark);
	font-family: Aller, sans-serif;
	font-size: 15px;
	font-weight: 300;
	cursor: pointer;
}
.nf-form-cont input[type=submit]:hover,
.nf-form-cont input[type=submit]:focus-visible { background: var(--rtz-dark); color: #fff; }
.nf-form-cont .ninja-forms-req-symbol { color: #b00020; }
/* On a photo or dark background (as on the Imago page): white labels and help text, like before */
.rtz-stretch[class*="e-con"] .nf-form-cont .nf-field-label label,
.rtz-stretch .nf-form-cont .nf-form-fields-required,
.rtz-quote-dark .nf-form-cont .nf-field-label label { color: #fff; }
.rtz-stretch .nf-form-cont .ninja-forms-req-symbol { color: #ffb3b3; } /* readable on the dark photo */

/* ---------- Header and title bar on tablet and phone, as before ---------- */
/* Bold three-bar menu icon (the old one) instead of the thin trx_addons glyph */
.rtz-mainbar .sc_layouts_menu_mobile_button .sc_layouts_item_icon:before {
	content: '' !important;
	display: block;
	width: 20px; /* old icon-menu glyph: ~20px wide, 3px bars */
	height: 3px;
	margin: 0 0 14px;
	border-radius: 1px;
	background: currentColor;
	box-shadow: 0 7px 0 currentColor, 0 14px 0 currentColor;
}
.rtz-mainbar .sc_layouts_menu_mobile_button a { padding: 10px 9px 8px; }
.rtz-titlebar .breadcrumbs .breadcrumbs_delimiter { font-size: inherit; line-height: inherit; }
.rtz-titlebar .sc_layouts_title_caption { font-family: Aller, sans-serif; font-weight: 300; }
body.single-cpt_services .rtz-titlebar > .elementor-container { min-height: 138px; }
/* Tablet: menu button left, logo centred with the slogan under its left edge; breadcrumbs left, under the title */
@media (min-width: 768px) and (max-width: 1023px) {
	.rtz-mainbar > .elementor-container { position: relative; }
	.rtz-mainbar .elementor-column:first-child { width: 100% !important; }
	.rtz-mainbar .elementor-column:first-child .elementor-widget-wrap { flex-direction: column !important; align-items: center !important; }
	.rtz-mainbar .elementor-column:first-child .elementor-widget-wrap > .elementor-element { width: 336px !important; max-width: 336px; margin: 0 !important; }
	.rtz-mainbar .rtz-slogan p { white-space: nowrap; }
	.rtz-mainbar .sc_layouts_logo img { height: 53px; }
	.rtz-mainbar .elementor-column:last-child { position: absolute; top: 50%; left: 21px; width: auto !important; transform: translateY(-50%); }
	.rtz-mainbar .elementor-column:last-child { left: 6px; }
	.rtz-titlebar .sc_layouts_title .sc_layouts_title_content,
	.rtz-titlebar .sc_layouts_title { flex-direction: column !important; align-items: flex-start !important; justify-content: center !important; gap: 8px; }
	.rtz-titlebar .sc_layouts_title_breadcrumbs { margin-left: 0; text-align: left; }
	body.single-cpt_services .rtz-titlebar > .elementor-container { min-height: 107px; }
}
/* Phone: logo left with the slogan tucked under it, menu button right; title and breadcrumbs centred */
@media (max-width: 767px) {
	.rtz-mainbar .sc_layouts_logo img { height: 30px; }
	.rtz-mainbar .rtz-slogan { margin-top: -6px !important; }
	.rtz-titlebar .sc_layouts_title,
	.rtz-titlebar .sc_layouts_title_content { align-items: center !important; justify-content: center; text-align: center; }
	.rtz-titlebar .sc_layouts_title_breadcrumbs,
	.rtz-titlebar .sc_layouts_title_title { text-align: center !important; }
	body.single-cpt_services .rtz-titlebar > .elementor-container { min-height: 115px; }
}

/* ---------- Blog cards (classic_3): lime dash under the title and smaller type on tablets, as before ---------- */
.sc_blogger_item_default_classic_3 .sc_blogger_item_title { position: relative; padding-bottom: 1.2em !important; margin-bottom: 1em !important; overflow-wrap: normal; word-break: normal; hyphens: manual; }
.sc_blogger_item_default_classic_3 .sc_blogger_item_title:after { content: ''; position: absolute; left: 50%; bottom: 0; width: 14px; height: 2px; margin-left: -7px; background: #d4e914; }
@media (min-width: 768px) and (max-width: 1023px) {
	.sc_blogger_item_default_classic_3 .sc_blogger_item_header { padding: 30px 35px 0; }
	.sc_blogger_item_default_classic_3 .sc_blogger_item_content { padding: 0 35px 25px !important; }
	.sc_blogger_item_default_classic_3 .sc_blogger_item_title,
	.sc_blogger_item_default_classic_3 .sc_blogger_item_title a { font-size: 16px !important; line-height: 1.3 !important; }
	.sc_blogger_item_default_classic_3 .sc_blogger_item_meta,
	.sc_blogger_item_default_classic_3 .sc_blogger_item_meta a { font-size: 11px !important; }
	.sc_blogger_item_default_classic_3 .sc_blogger_item_excerpt,
	.sc_blogger_item_default_classic_3 .sc_blogger_item_excerpt p { font-size: 13px; }
	.sc_blogger .sc_blogger_item_default_classic_3 .sc_blogger_item_button .item_more_link { padding: 10px 14px !important; font-size: 13px !important; }
}
@media (max-width: 767px) {
	.sc_blogger_item_default_classic_3 .sc_blogger_item_title,
	.sc_blogger_item_default_classic_3 .sc_blogger_item_title a { font-size: 18px !important; }
}

/* ---------- Quote marks, as before: white, opening mark level with the first line, closing mark bottom right ---------- */
.sc_testimonials_default .sc_testimonials_item_content:before { display: block !important; }
.sc_testimonials_default .sc_testimonials_item_content:before,
.sc_testimonials_default .sc_testimonials_item_content:after { font-size: 36px; color: #fff; opacity: 1; }
/* The opening mark hangs in the left padding, level with the first line (old: mark at 30px, text at 70px) */
.sc_testimonials_default .sc_testimonials_item_content { padding-left: clamp(56px, 18%, 70px) !important; }
.sc_testimonials_default .sc_testimonials_item_content:before { top: 54px; left: clamp(16px, 7%, 28px); }
.sc_testimonials_default .sc_testimonials_item_content:after { bottom: 34px; right: clamp(14px, 6%, 28px); }
@media (max-width: 767px) {
	.sc_testimonials_default .sc_testimonials_item_content { padding: 40px 24px 52px 48px !important; }
	.sc_testimonials_default .sc_testimonials_item_content:before { top: 38px; left: 14px; }
	.sc_testimonials_default .sc_testimonials_item_content:after { bottom: 14px; right: 14px; }
}
/* Plain quotes in text (e.g. "Wat zeiden deelnemers" on Relatieweekend): indented box with the same marks */
.post_content blockquote:not(.rtz-quote blockquote),
.elementor-widget-text-editor:not(.rtz-quote) blockquote { margin: 36px 0 36px 72px; padding: 36px 70px !important; font-style: italic; }
.post_content blockquote:not(.rtz-quote blockquote):before,
.post_content blockquote:not(.rtz-quote blockquote):after,
.elementor-widget-text-editor:not(.rtz-quote) blockquote:before,
.elementor-widget-text-editor:not(.rtz-quote) blockquote:after { display: block !important; position: absolute; font-family: Georgia, serif; font-size: 36px; font-style: normal; line-height: 1; color: #fff; }
.post_content blockquote:not(.rtz-quote blockquote):before,
.elementor-widget-text-editor:not(.rtz-quote) blockquote:before { content: '\201C' !important; top: 34px; left: 32px; }
.post_content blockquote:not(.rtz-quote blockquote):after,
.elementor-widget-text-editor:not(.rtz-quote) blockquote:after { content: '\201D' !important; bottom: 14px; right: 32px; }
@media (max-width: 1023px) {
	.post_content blockquote:not(.rtz-quote blockquote),
	.elementor-widget-text-editor:not(.rtz-quote) blockquote { margin: 24px 0 24px 36px; padding: 32px 50px !important; }
}
@media (max-width: 767px) {
	.post_content blockquote:not(.rtz-quote blockquote),
	.elementor-widget-text-editor:not(.rtz-quote) blockquote { margin: 20px 0; padding: 28px 24px 40px 46px !important; }
	.post_content blockquote:not(.rtz-quote blockquote):before,
	.elementor-widget-text-editor:not(.rtz-quote) blockquote:before { top: 26px; left: 12px; }
	.post_content blockquote:not(.rtz-quote blockquote):after,
	.elementor-widget-text-editor:not(.rtz-quote) blockquote:after { bottom: 0; right: 12px; }
}

/* The theme's tablet/phone type scale sets fixed px line heights smaller than the font size, so two-line headings collide */
.sc_item_title,
.related_wrap .section_title { line-height: 1.3 !important; }
@media (max-width: 767px) { .related_wrap .section_title { font-size: 24px !important; } }

/* Image carousels (old vc_images_carousel): one round 300px image at a time */
.rtz-images-carousel .elementor-image-carousel-wrapper { max-width: 300px; margin: 0 auto; border-radius: 50%; overflow: hidden; }
.rtz-images-carousel .swiper-slide-image { width: 100%; aspect-ratio: 1; object-fit: cover; }

/* Team cards: name 37px under the photo, dark round LinkedIn button, no "Read more" link (as before) */
.sc_team_default .sc_team_item_info { margin-top: 0 !important; padding-top: 38px !important; } /* old gap photo - name */
.sc_team_default .sc_team_item_button { display: none !important; }
body .sc_team_default .sc_team_item_info .sc_team_item_socials .social_item .social_icon {
	display: inline-flex !important;
	background-color: #4c4c4b !important;
	line-height: 1 !important;
	align-items: center;
	justify-content: center;
	width: 38px !important;
	height: 38px !important;
	border: 0 !important;
	border-radius: 50% !important;
	background: #4c4c4b !important;
	color: #fff !important;
	font-size: 15px;
}
body .sc_team_default .sc_team_item_info .sc_team_item_socials .social_item .social_icon span { color: #fff !important; }
body .sc_team_default .sc_team_item_info .sc_team_item_socials .social_item:hover .social_icon,
body .sc_team_default .sc_team_item_info .sc_team_item_socials .social_item:focus-visible .social_icon { background-color: #000 !important; top: 0; }
/* Posts on phones: the theme's -10px on the Elementor wrapper plus the row's -15px pushed content 5px off screen */
@media (max-width: 767px) { .post_content > .elementor { margin-left: 0 !important; margin-right: 0 !important; } }

/* "Lees meer..." / "Bekijk..." buttons on cards: bold label, as before */
.post_layout_classic .more-link,
.sc_blogger .sc_blogger_item_default_classic_3 .sc_blogger_item_button .item_more_link,
.sc_blogger .sc_blogger_item_default_classic_3 .sc_blogger_item_button .item_more_link .link_text { font-weight: 700 !important; }
@media (min-width: 768px) and (max-width: 1023px) {
	.post_layout_classic .more-link { padding: 10px 14px !important; font-size: 13px !important; }
}
/* A post that ends with a full-width section (Imago: the sign-up form) runs straight into the footer, as before */
.page_content_wrap:has(.post_content > .elementor > .rtz-stretch:last-child) { padding-bottom: 0 !important; }
/* Pages with a sidebar started right under the breadcrumbs (the content's own top padding gives the space) */
body.page.sidebar_show .page_content_wrap { padding-top: 0 !important; }
@media (min-width: 1024px) { body.page.sidebar_show .sidebar { margin-top: 80px; } }

/* Headings inside text blocks had ~2em space above them, also when first in the block (old theme: h4 { margin-top: 2em }) */
.elementor .elementor-widget-text-editor :is(h1, h2, h3, h4, h5, h6):not(.sc_item_title) { margin-top: 2em; }

/* Section titles (old trx_section title): lime dash under the title, description close below, as .sc_item_title */
.rtz-section-title .elementor-heading-title { position: relative; padding-bottom: 0.45em; margin-bottom: 0.4em; }
.rtz-section-title .elementor-heading-title:after { content: ''; position: absolute; left: 50%; bottom: 0; width: 20px; height: 2px; margin-left: -10px; background: #d4e914; }
.rtz-section-title + .elementor-widget-text-editor .sc_item_descr { margin-bottom: 53px; }

/* No automatic hyphenation (the old site had none); long words still wrap instead of overflowing */
body, body * { -webkit-hyphens: manual !important; hyphens: manual !important; }
body { overflow-wrap: break-word; }

/* Archive cards (category pages): side padding on all screens, smaller type on tablets as before */
.post_layout_classic .post_header { padding: 0 30px !important; }
@media (min-width: 768px) and (max-width: 1023px) {
	.post_layout_classic .post_title { font-size: 16px !important; }
	.post_layout_classic .post_content_inner { font-size: 13px !important; }
	.post_layout_classic .post_meta { font-size: 11px !important; }
}
@media (max-width: 767px) { .post_layout_classic .post_header { padding: 0 24px !important; } }
/* Blog cards: dash to excerpt ~29px, as before (title margin 1em + 13px) */
.sc_blogger_item_default_classic_3 .sc_blogger_item_header { margin-bottom: 0 !important; }
.sc_blogger_item_default_classic_3 .sc_blogger_item_content { margin-top: 13px !important; }

/* ---------- Sidebar (old: 300px of 1000 / 360px of 1170, 30-40px gap; widgets split by thin lines) ---------- */
@media (min-width: 1024px) {
	body.sidebar_show .content_wrap > .content { width: 66% !important; }
	body.sidebar_show .content_wrap > .sidebar { width: 30.77% !important; }
	body.single-post.sidebar_show .sidebar { margin-top: 0 !important; }
}
.sidebar .sidebar_inner { padding: 0 !important; }
.sidebar .widget { margin: 0 !important; padding: 45px 50px 30px !important; }
.sidebar .widget + .widget { border-top: 1px solid rgba(105, 100, 96, 0.5) !important; }
.sidebar .textwidget, .sidebar .widget li { color: #4c4c4b; } /* old dark grey, #6f6f6f on lime was too faint */
.sidebar .search-form { position: relative; }
.sidebar .search-form .search-field {
	height: auto;
	margin: 0;
	padding: 14px 50px 14px 20px !important;
	border: 0 !important;
	border-radius: 30px !important;
	background: #fff !important;
	color: var(--theme-color-text);
}
.sidebar .search-form:after { left: auto !important; right: 20px; top: 50% !important; bottom: auto !important; transform: translateY(-50%); pointer-events: none; }
.sidebar .search-form .search-submit { left: auto !important; right: 0; }
@media (max-width: 1023px) { .sidebar .widget { padding: 35px 30px 20px !important; } }

body .post_tags_single .post_meta_label { display: inline !important; width: auto !important; height: auto !important; margin-right: .4em; }
body .post_tags_single a { font-size: 12px !important; color: #6a7700 !important; margin-right: .3em !important; }
body .post_tags_single a:hover { color: var(--rtz-dark) !important; }

/* Icon blocks (Contact): text 45px under the icon, and space between the blocks once they stack */
.elementor-widget-icon + .elementor-widget-text-editor { margin-top: 0; }
@media (max-width: 767px) { .e-con:has(> .elementor-widget-icon + .elementor-widget-text-editor):not(:last-child) { margin-bottom: 60px; } }
@media (min-width: 768px) and (max-width: 1023px) { .elementor-widget-icon + .elementor-widget-text-editor h4 { font-size: 15px; } }
/* Three fields in a row on tablets: room for "Mobiel nummer" (old fields were 113px wide with smaller text) */
@media (min-width: 768px) and (max-width: 1023px) {
	.rtz-contact-form nf-fields-wrap { gap: 0 12px; }
	.rtz-contact-form nf-field:has(.rtz-col-third) .nf-field-element input { padding: 13px 8px 13px 10px !important; font-size: 12.5px !important; }
}

/* Narrow blog cards (e.g. 3 cards in a 2/3 column on Relatieweekend): padding and title size scale with the card, so long words fit.
   Containment sits on the card header (its width never depends on its content; containing the card or grid broke the layout script). */
.sc_blogger_item_default_classic_3 .sc_blogger_item_header { container-type: inline-size; padding-left: clamp(15px, 12.8%, 40px) !important; padding-right: clamp(15px, 12.8%, 40px) !important; }
.sc_blogger_item_default_classic_3 .sc_blogger_item_content { padding-left: clamp(15px, 12.8%, 40px) !important; padding-right: clamp(15px, 12.8%, 40px) !important; }
.sc_blogger_item_default_classic_3 .sc_blogger_item_title,
.sc_blogger_item_default_classic_3 .sc_blogger_item_title a { font-size: clamp(16px, 11.5cqi, 21px) !important; }
/* Imago sign-up form (Ninja Forms #3): message field 200px high, as before */
#nf-form-3-cont .nf-field-element textarea { height: 200px; }
/* Boxed rows inside the content: the inner box fills the row, so the -15px row margin and 15px column padding cancel out */
.e-con.rtz-row:not(.rtz-stretch).e-con-boxed > .e-con-inner { max-width: none !important; margin-left: 0 !important; margin-right: 0 !important; }

/* Footer: spaces around the "|" between phone and e-mail (the non-breaking spaces render without width in Aller) */
.rtz-footer-address .rtz-sep { margin: 0 0.3em; }
/* Blog card sliders: each card is as tall as its own content (the button ends the card), not stretched to the tallest */
.sc_blogger_slider .slider_container .slider-wrapper { align-items: flex-start; }
/* Archive cards: the "Lees meer" button sits close under the excerpt, as before */
.post_layout_classic .more-wrap { padding-top: 0 !important; margin-top: 0 !important; }
/* Testimonial slides keep their own height (the slider follows the current slide) */
.sc_testimonials .slider_container .slider-wrapper { align-items: flex-start; }
/* Service slider arrows: dark circles with a small white arrow, lime on hover (old .sc_slider_controls_wrap) */
.sc_services .slider_controls_wrap > a { background-color: #4c4c4b !important; color: #fff !important; border-color: #4c4c4b !important; }
.sc_services .slider_controls_wrap > a:before { font-size: 12px !important; }
.sc_services .slider_controls_wrap > a:hover,
.sc_services .slider_controls_wrap > a:focus-visible { background-color: #c8da17 !important; border-color: #c8da17 !important; color: #4c4c4b !important; }
/* Testimonial avatar overlaps the bottom of the quote box by 30px, as before */
.sc_testimonials_default .sc_testimonials_item_author { margin-top: 1px !important; z-index: 1; }
/* Quote box (trx_quote): 72px indent on desktop and large white quote marks, as before (padding stays smaller so the text is not one word per line) */
@media (min-width: 1024px) { .rtz-quote:not(.rtz-quote-dark) blockquote { margin-left: 72px; } }
.rtz-quote:not(.rtz-quote-dark) blockquote:before,
.rtz-quote:not(.rtz-quote-dark) blockquote:after { color: #fff; opacity: 1; font-size: 36px; }
/* Team cards on tablet and phone scale down like before (old theme: smaller root font size) */
@media (max-width: 1023px) {
	.sc_team_default .sc_team_item_info { padding-top: 33px !important; }
	.sc_team_default .sc_team_item_title,
	.sc_team_default .sc_team_item_title a { font-size: 18px !important; }
	body .sc_team_default .sc_team_item_info .sc_team_item_socials .social_item .social_icon { width: 33px !important; height: 33px !important; font-size: 13px; }
}
@media (max-width: 767px) {
	.sc_team_default .sc_team_item_info { padding-top: 30px !important; }
	body .sc_team_default .sc_team_item_info .sc_team_item_socials .social_item .social_icon { width: 30px !important; height: 30px !important; }
}
/* Footer phone and e-mail in the same colour as the address (old: all one grey; dark for contrast on lime) */
.rtz-footer-address a { color: inherit !important; }
.rtz-footer-address a:hover, .rtz-footer-address a:focus-visible { color: #000 !important; text-decoration: underline; }
/* Phones: small images floated in text stay floated beside the text (e.g. the CRKBO badge next to "De opleiding"), as before */
@media (max-width: 767px) {
	.elementor-widget-text-editor img.alignright { float: right !important; display: inline-block !important; max-width: 40%; height: auto; margin: 0 0 1em 1em !important; }
	.elementor-widget-text-editor img.alignleft { float: left !important; display: inline-block !important; max-width: 40%; height: auto; margin: 0 1em 1em 0 !important; }
}
/* Phones: a column with its own background stays within the content edges (the 15px row overhang would put it at the screen edge with the narrower phone gutter) */
@media (max-width: 767px) { .e-con.rtz-row > .e-con.rtz-col-fill { margin-left: 15px; margin-right: 15px; width: calc(100% - 30px) !important; } }
/* Tablet: page headings 39px, as before (theme: 51px) */
@media (min-width: 768px) and (max-width: 1023px) { .page_content_wrap h1, .page_content_wrap h1 a { font-size: 39px !important; } }
/* Phone: section titles ("Al onze Relatie activiteiten", "Andere Relatietherapie gebieden") as large as before */
@media (max-width: 767px) { .sc_item_title.sc_item_title_style_default { font-size: 44px !important; } }
/* Quotes in text: comfortable line height on all sizes (was 1.2 on phones) */
.post_content blockquote p, .elementor-widget-text-editor blockquote p { line-height: 1.66 !important; }
/* Icon blocks (Contact): 75px above the icon and 75px from the icon to the text, at every width (as before) */
.e-con > .elementor-widget-icon:has(+ .elementor-widget-text-editor) { margin-top: 75px; }
.elementor .elementor-widget-icon + .elementor-widget-text-editor > :first-child { margin-top: 75px !important; }
/* Stretched rows with columns: the columns' 15px padding comes off the gutter, so the text lines up with the page text */
@media (max-width: 1023px) { .e-con.rtz-stretch.rtz-row.e-con-boxed > .e-con-inner { padding-left: 15px; padding-right: 15px; } }
@media (max-width: 767px) { .e-con.rtz-stretch.rtz-row.e-con-boxed > .e-con-inner { padding-left: 5px; padding-right: 5px; } }
/* Service pages on tablet and phone: title and breadcrumbs centred over a darker photo, as before */
@media (max-width: 1023px) {
	body.single-cpt_services .rtz-titlebar { position: relative; }
	body.single-cpt_services .rtz-titlebar:before { content: ''; position: absolute; inset: 0; background: rgba(0, 0, 0, .55); pointer-events: none; }
	body.single-cpt_services .rtz-titlebar > .elementor-container { position: relative; z-index: 1; }
	body.single-cpt_services .rtz-titlebar .sc_layouts_title,
	body.single-cpt_services .rtz-titlebar .sc_layouts_title_content { align-items: center !important; text-align: center; }
	body.single-cpt_services .rtz-titlebar .sc_layouts_title_breadcrumbs,
	body.single-cpt_services .rtz-titlebar .sc_layouts_title_caption { text-align: center !important; }
}
@media (max-width: 767px) { body.single-cpt_services .rtz-titlebar > .elementor-container { min-height: 125px; } }
/* Circle images: as large as the old "medium" image (240px), not the new 300px */
.rtz-circle img { max-width: min(100%, 240px) !important; }
/* Testimonial avatars scale down on tablet and phone, as before */
@media (max-width: 1023px) {
	.sc_testimonials .sc_testimonials_item_author_avatar { width: 104px !important; height: 104px !important; flex-basis: 104px; }
	.sc_testimonials .sc_testimonials_item_author_avatar img { width: 104px !important; height: 104px !important; }
}
@media (max-width: 767px) {
	.sc_testimonials .sc_testimonials_item_author_avatar { width: 96px !important; height: 96px !important; flex-basis: 96px; }
	.sc_testimonials .sc_testimonials_item_author_avatar img { width: 96px !important; height: 96px !important; }
}
