/**
 * Theme Name:  ruwa
 * Description: Aangepast Theme voor Ruwa
 * Author:      FoxWise
 * Author URI:  https://foxwise.eu
 * Template:    blocksy
 * Version:     1.0.0
 * Text Domain: ruwa
 */
/* Home hero-kop: meeschalen met schermbreedte zodat "betrouwbaar" niet afbreekt */
@media screen and (min-width: 768px) {
	body .stk-8ee82f9 .stk-block-heading__text {
		font-size: clamp(28px, 3.4vw, 56px) !important;
	}
}

/* Retourritten-agenda ([ruwa_retourritten]) */
.ruwa-retour {
	list-style: none;
	margin: 0 0 2em;
	padding: 0;
	display: grid;
	gap: 14px;
}
.ruwa-retour__rit {
	display: grid;
	grid-template-columns: 76px 1fr auto;
	gap: 20px;
	align-items: center;
	margin: 0;
	padding: 18px 20px;
	background: var(--theme-palette-color-8, #fff);
	border: 1px solid var(--theme-palette-color-5, #f2ddd5);
	border-left: 4px solid var(--theme-palette-color-1, #e8461e);
	border-radius: 6px;
}
.ruwa-retour__datum {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	padding: 8px 4px;
	line-height: 1.1;
	text-align: center;
	background: var(--theme-palette-color-6, #fbf4f1);
	border-radius: 6px;
}
.ruwa-retour__dag,
.ruwa-retour__maand {
	font-size: 13px;
	text-transform: uppercase;
	letter-spacing: .05em;
	color: var(--theme-palette-color-3, #5d6369);
}
.ruwa-retour__nr {
	font-size: 28px;
	font-weight: 700;
	color: var(--theme-palette-color-1, #e8461e);
}
.ruwa-retour__info p {
	margin: 0;
}
.ruwa-retour__route {
	font-size: 20px;
	font-weight: 700;
	color: var(--theme-palette-color-4, #1c1f1a);
}
.ruwa-retour__pijl {
	color: var(--theme-palette-color-1, #e8461e);
	margin: 0 .25em;
}
.ruwa-retour__meta {
	display: flex;
	flex-wrap: wrap;
	gap: 4px 18px;
	margin-top: 4px !important;
	font-size: 15px;
}
.ruwa-retour__opmerking {
	margin-top: 4px !important;
	font-size: 15px;
	font-style: italic;
}
.ruwa-retour__knop {
	white-space: nowrap;
}
.ruwa-retour__vol {
	display: inline-block;
	padding: 8px 16px;
	font-weight: 700;
	text-transform: uppercase;
	color: var(--theme-palette-color-3, #5d6369);
	background: #ececec;
	border-radius: 4px;
}
.ruwa-retour__rit.is-vol {
	border-left-color: #c9c9c9;
	opacity: .7;
}
.ruwa-retour__rit.is-vol .ruwa-retour__nr {
	color: var(--theme-palette-color-3, #5d6369);
}
.ruwa-retour--leeg {
	padding: 20px 24px;
	background: var(--theme-palette-color-6, #fbf4f1);
	border-radius: 6px;
}
.ruwa-retour--leeg p {
	margin: 0;
}
@media (max-width: 689px) {
	.ruwa-retour__rit {
		grid-template-columns: 64px 1fr;
		gap: 14px;
		padding: 16px;
	}
	.ruwa-retour__actie {
		grid-column: 1 / -1;
	}
	.ruwa-retour__knop {
		display: flex;
		align-items: center;
		justify-content: center;
		width: 100%;
	}
	.ruwa-retour__datum {
		align-self: start;
	}
	.ruwa-retour__route {
		font-size: 18px;
	}
}

/* Footer: donker, vier kolommen met NIWO-kaart */
#footer [data-row="middle"] {
	background: var(--theme-palette-color-4, #1c1f1a);
	--theme-text-color: #c9ccc6;
	color: #c9ccc6;
	font-size: 15px;
	line-height: 1.7;
}
#footer [data-row="middle"] > .ct-container {
	padding-top: 64px;
	padding-bottom: 56px;
}
#footer [data-row="middle"] p {
	margin: 0 0 1em;
}
#footer [data-row="middle"] a {
	color: #fff;
	text-decoration: none;
	transition: color .15s ease;
}
#footer [data-row="middle"] a:hover,
#footer [data-row="middle"] a:focus-visible {
	color: var(--theme-palette-color-1, #e8461e);
}
#footer .ruwa-footer-logo {
	margin: 0 0 18px;
}
#footer .ruwa-footer-kop {
	margin: 0 0 16px;
	font-size: 15px;
	letter-spacing: .08em;
	text-transform: uppercase;
	color: #fff;
}
#footer .ruwa-footer-kop::after {
	content: "";
	display: block;
	width: 28px;
	height: 3px;
	margin-top: 10px;
	background: var(--theme-palette-color-1, #e8461e);
	border-radius: 2px;
}
#footer .ruwa-footer-links {
	list-style: none;
	margin: 0;
	padding: 0;
}
#footer .ruwa-footer-links li {
	margin: 0 0 8px;
}
#footer .ruwa-footer-contact li:first-child {
	color: #c9ccc6;
}
#footer .ruwa-niwo {
	padding: 16px 18px;
	background: #fff;
	border-radius: 8px;
	color: var(--theme-palette-color-3, #5d6369);
	font-size: 14px;
	line-height: 1.5;
}
#footer .ruwa-niwo > * {
	margin: 0 !important;
}
#footer .ruwa-niwo__logo {
	margin-bottom: 10px !important;
}
#footer .ruwa-niwo__logo img {
	display: block;
}
#footer .ruwa-niwo__tekst strong {
	color: var(--theme-palette-color-4, #1c1f1a);
}
#footer .ruwa-niwo__nr {
	margin-top: 8px !important;
	padding-top: 8px;
	border-top: 1px solid #eee;
	font-size: 13px;
	font-weight: 600;
	color: var(--theme-palette-color-4, #1c1f1a);
}
#footer .ruwa-niwo__check {
	margin-top: 12px !important;
	font-size: 14px;
}
#footer [data-row="bottom"] {
	background: #141613;
	--theme-text-color: #9a9d97;
	color: #9a9d97;
	font-size: 14px;
}
#footer [data-row="bottom"] > .ct-container {
	padding-top: 20px;
	padding-bottom: 20px;
	border-top: 0;
}
#footer [data-row="bottom"] a {
	color: #c9ccc6;
	text-decoration: none;
}
#footer [data-row="bottom"] a:hover {
	color: var(--theme-palette-color-1, #e8461e);
}
#footer [data-row="middle"] > .ct-container {
	--grid-template-columns: 1.3fr 1fr 1fr 1.2fr;
	column-gap: 48px;
	row-gap: 40px;
}
@media (max-width: 999.98px) {
	#footer [data-row="middle"] > .ct-container {
		--grid-template-columns: repeat(2, 1fr);
	}
}
@media (max-width: 689.98px) {
	#footer [data-row="middle"] > .ct-container {
		--grid-template-columns: 1fr;
		padding-top: 48px;
		padding-bottom: 40px;
	}
	#footer .ruwa-niwo {
		max-width: 320px;
	}
}

/* Diensten: videoblok "Wat wij voor u doen" op een drukke foto -> donkere laag + witte kop */
body .stk-ff0d3c2.stk-block-background {
	background-position: center 70% !important;
}
body .stk-ff0d3c2.stk-block-background::before {
	content: "" !important;
	position: absolute !important;
	inset: 0 !important;
	background: linear-gradient(180deg, rgba(20, 22, 19, .6) 0%, rgba(20, 22, 19, .3) 55%, rgba(20, 22, 19, .1) 100%) !important;
	opacity: 1 !important;
	pointer-events: none;
	z-index: 0 !important;
}
body .stk-ff0d3c2 > * {
	position: relative;
	z-index: 1;
}
body .stk-ff0d3c2 .stk-block-heading__text {
	color: #fff !important;
	text-shadow: 0 2px 12px rgba(0, 0, 0, .55);
}
body .stk-ff0d3c2 .stk-d1e5a07 .stk--inner-svg {
	background-color: var(--theme-palette-color-1, #e8461e) !important;
}
