/* Cycle Valley – responsieve correcties voor de hele site (tablet, kleine laptop, gsm).
   Syne 800 is erg breed: lange Nederlandse woorden passen anders niet in smalle kolommen. */

/* Lange woorden/URL's nooit buiten hun kolom laten lopen. */
.main-content :is(h1, h2, h3, h4, h5, h6),
#footer-outer :is(h1, h2, h3, h4) {
	overflow-wrap: break-word;
}
.main-content p a,
.main-content li a {
	overflow-wrap: anywhere;
}

/* Kleine laptops en tablets liggend */
@media only screen and (max-width: 1300px) {
	.main-content h3 { font-size: 19px; line-height: 26px; }
}

/* Tablet */
@media only screen and (max-width: 1000px) {
	.main-content h1 { font-size: 36px; line-height: 42px; }
	.main-content h2 { font-size: 26px; line-height: 32px; }
	.main-content h3 { font-size: 18px; line-height: 24px; }
}

/* Gsm */
@media only screen and (max-width: 690px) {
	.main-content h1 { font-size: 27px; line-height: 33px; }
	.main-content h2 { font-size: 23px; line-height: 29px; }
	.main-content h3 { font-size: 17px; line-height: 23px; }
	body, .main-content p, .main-content li { font-size: 16px; line-height: 27px; }
	/* FAQ-vragen (toggles) compacter */
	.main-content .toggle > .toggle-title a { font-size: 17px !important; line-height: 24px !important; }
	/* Twee knoppen naast elkaar: onder elkaar laten vallen i.p.v. half buiten beeld */
	.main-content .nectar-button + .nectar-button { margin-left: 0 !important; }
	.main-content .nectar-button { margin-top: 10px; margin-right: 10px; }
}

/* Footer: slogan "Choose Lease Ride Repeat" schaalt mee met de smalle kolom */
@media only screen and (min-width: 691px) and (max-width: 1300px) {
	#footer-outer .footer-stack, .footer-stack { font-size: clamp(18px, 2.1vw, 29px); line-height: 1.1; }
}

/* Titels die er als h1 uitzien maar semantisch h2 zijn (één echte h1 per pagina). */
.main-content h2.cv-h1 {
	font-size: 54px;
	line-height: 62px;
}
@media only screen and (max-width: 1300px) {
	.main-content h2.cv-h1 { font-size: 41px; line-height: 45px; }
}
@media only screen and (max-width: 1000px) {
	.main-content h2.cv-h1 { font-size: 36px; line-height: 42px; }
}
@media only screen and (max-width: 690px) {
	.main-content h2.cv-h1 { font-size: 27px; line-height: 33px; }
}

/* Tellers (milestones): zelfde grootte als voorheen, nu als h2 i.p.v. h1. */
.nectar-milestone .number h2 { font-size: inherit; line-height: inherit; }

/* SEO-titel die niet zichtbaar is (homepage-hero toont het logo). */
.cv-sr-only {
	position: absolute !important;
	width: 1px; height: 1px;
	padding: 0; margin: -1px;
	overflow: hidden; clip: rect(0, 0, 0, 0);
	white-space: nowrap; border: 0;
}

/* Leeg standaard footer-widgetvak van Salient (grijze balk boven de copyright). */
#footer-outer #footer-widgets { display: none; }

/* Over ons – teamgrid: alle teamleden in één rij-element; 3 per rij (desktop/tablet), 2 per rij (gsm), laatste rij gecentreerd. */
.cv-team > .row_col_wrap_12 { display: flex !important; flex-wrap: wrap; justify-content: center; }
html body .cv-team > .row_col_wrap_12 > .wpb_column { width: 33.333% !important; flex: none; margin: 0 0 40px !important; padding: 0 15px !important; float: none; }
@media only screen and (max-width: 999px) {
	.cv-team .img-with-aniamtion-wrap img { max-width: 200px !important; margin: 0 auto; }
}
@media only screen and (max-width: 690px) {
	html body .cv-team > .row_col_wrap_12 > .wpb_column { width: 50% !important; padding: 0 8px !important; margin-bottom: 28px !important; }
	.cv-team .img-with-aniamtion-wrap img { max-width: 140px !important; }
	.cv-team h3 { font-size: 15px !important; line-height: 20px !important; }
	.cv-team .wpb_text_column, .cv-team .wpb_text_column p { font-size: 13px !important; line-height: 19px !important; }
}

/* Tussentitels (h3) in smalle kolommen (1/3, 1/4, 1/6): iets kleiner en nette woordafbreking met koppelteken
   i.p.v. een harde breuk midden in een woord ("stappenplanne-n"). */
@media only screen and (min-width: 1001px) {
	.main-content :is(.vc_col-sm-4, .vc_col-sm-3, .vc_col-sm-2) .wpb_text_column h3 { font-size: 20px; line-height: 26px; }
}
.main-content :is(.vc_col-sm-4, .vc_col-sm-3, .vc_col-sm-2) .wpb_text_column h3 {
	hyphens: auto;
	-webkit-hyphens: auto;
	hyphenate-limit-chars: 10 4 4;
}

/* Off-canvas menu (fullscreen): lettergrootte volgt de schermhoogte, zodat alle items op één scherm passen. */
html body #slide-out-widget-area.fullscreen-alt .inner .off-canvas-menu-container .menu > li > a {
	font-size: clamp(20px, 3.8vh, 44px) !important;
	line-height: 1.15 !important;
	padding: 2px 0 !important;
}
html body #slide-out-widget-area.fullscreen-alt .inner .off-canvas-menu-container .menu > li { margin-bottom: 4px !important; }
html body #slide-out-widget-area.fullscreen-alt .inner .off-canvas-menu-container .sub-menu li a {
	font-size: clamp(18px, 3vh, 30px) !important;
	line-height: 1.2 !important;
	padding: 3px 0 !important;
}
@media only screen and (max-width: 690px) {
	html body #slide-out-widget-area.fullscreen-alt .inner .off-canvas-menu-container .menu > li > a { font-size: clamp(20px, 3.5vh, 30px) !important; }
	html body #slide-out-widget-area.fullscreen-alt .inner .off-canvas-menu-container .sub-menu li a { font-size: clamp(16px, 2.6vh, 22px) !important; }
}
