/*
Theme Name: GIB Framework
Theme URI: https://staging.edwinus.com
Description: Leeg Divi-child. 5 kolommen desktop, 3 onder --gib-phone-max. Geen oude CSS.
Author: Designy
Version: 2.0.36
Template: Divi
Text Domain: gib-framework
*/

@font-face {
	font-family: GIB;
	src: url("/wp-content/uploads/et-fonts/ITCFranklinGothicStd-BkCp.otf") format("opentype");
	font-weight: 400;
	font-style: normal;
	font-display: swap;
}
@font-face {
	font-family: GIB-demi;
	src: url("/wp-content/uploads/et-fonts/ITCFranklinGothicStd-Demi.otf") format("opentype");
	font-weight: 600;
	font-style: normal;
	font-display: swap;
}

:root {
	--gib-orange: #ed7203;
	--gib-orange-hot: #f15a22;
	--gib-pink: #c4043c;
	--gib-e: #ca043c;
	--gib-black: #000;
	--gib-white: #fff;
}

html, body {
	margin: 0;
	height: 100%;
	background: #cfcfcf;
	color: var(--gib-black);
	font-family: GIB, Helvetica, Arial, sans-serif;
}
body { overflow: hidden; }

#main-header,
#et-top-navigation,
.gib-phone-btn {
	display: none !important;
}
#page-container,
#et-boc,
#et-main-area,
#main-content,
.et_builder_inner_content {
	padding-top: 0 !important;
	margin: 0 !important;
	min-height: 100vh !important;
	height: 100% !important;
}

.et_pb_section:has(.gib-huis),
.et_pb_row.gib-huis {
	padding: 0 !important;
	margin: 0 !important;
	width: 100% !important;
	max-width: 100% !important;
	min-height: 100vh !important;
	height: 100vh !important;
	max-height: 100vh !important;
}

.et_pb_row.gib-huis {
	display: grid !important;
	grid-template-columns: 12.5% 25% 25% 25% 12.5%;
	gap: 0 !important;
	grid-template-rows: 100% !important;
	align-items: stretch !important;
}

.et_pb_row.gib-huis > .et_pb_column {
	width: auto !important;
	max-width: none !important;
	margin: 0 !important;
	padding: 0 !important;
	float: none !important;
	min-width: 0;
	min-height: 100vh !important;
	height: 100vh !important;
	overflow: hidden;
	position: relative;
}

.et_pb_row.gib-huis > .et_pb_column_empty {
	display: block !important;
}

.gib-content {
	background: var(--gib-white);
}
@media (min-width: 1176px) and (orientation: landscape) {
	.et_pb_row.gib-huis > .gib-content {
		background: transparent;
	}
}

.gib-content .et_pb_image,
.gib-content .et_pb_text,
.gib-fills .et_pb_image {
	margin: 0 !important;
	padding: 0 !important;
}

/* Col 3 logo: live 1080p 19.2px / 92% / 2vh */
body .et_pb_row.gib-huis > .gib-content > .gib-logo,
body .et_pb_row.gib-huis > .gib-content > .et_pb_image:first-of-type {
	width: 92% !important;
	max-width: 92% !important;
	margin-left: 4% !important;
	margin-top: 2vh !important;
	position: relative !important;
	z-index: 2;
}
body .et_pb_row.gib-huis > .gib-content > .gib-logo img,
body .et_pb_row.gib-huis > .gib-content > .et_pb_image:first-of-type img {
	width: 100% !important;
	height: auto !important;
	display: block;
}


/* Col 3 body: 2% of column = 9.5px @1920 */
.gib-content .et_pb_text {
	position: relative;
	z-index: 2;
	padding-left: 2% !important;
	padding-right: 2% !important;
	padding-top: 0.8em !important;
	font-size: clamp(13px, 1.2vw, 46px);
	line-height: 1.35;
	color: var(--gib-black);
}
.gib-content .et_pb_text_inner,
.gib-content .et_pb_text_inner p {
	padding: 0 !important;
	margin: 0 !important;
	font-family: GIB, Helvetica, Arial, sans-serif;
	color: var(--gib-black);
}
.gib-content .et_pb_text_inner a {
	color: var(--gib-black);
	text-decoration: underline;
}

/* Col 3 rode E: in document flow after copy (no absolute overlap) */
body .et_pb_row.gib-huis > .gib-content > .gib-e {
	position: relative !important;
	left: auto !important;
	right: auto !important;
	top: auto !important;
	bottom: auto !important;
	width: 100% !important;
	max-width: 100% !important;
	margin: 0 !important;
	z-index: auto;
	flex-shrink: 0;
}
body .et_pb_row.gib-huis > .gib-content > .gib-e img {
	width: 100% !important;
	max-width: 100% !important;
	height: auto !important;
	display: block;
	object-fit: fill;
}

/* Col 4 empty: absolute 4Boven/4onder. NEVER when .gib-col4-open (1080p overlap). */
body:not(.gib-col4-open) .et_pb_row.gib-huis > .gib-fills > .et_pb_image:first-of-type {
	position: absolute !important;
	top: 0 !important;
	left: 0 !important;
	width: calc(100% + 1px) !important;
	max-width: none !important;
	margin: 0 !important;
}
body:not(.gib-col4-open) .et_pb_row.gib-huis > .gib-fills > .et_pb_image:last-of-type {
	position: absolute !important;
	top: 66.39% !important;
	left: 0 !important;
	width: calc(100% + 1px) !important;
	max-width: none !important;
	margin: 0 !important;
}
body:not(.gib-col4-open) .et_pb_row.gib-huis > .gib-fills > .et_pb_image img {
	width: calc(100% + 1px) !important;
	max-width: none !important;
	height: auto !important;
	display: block;
	object-fit: fill;
	object-position: left top;
}


/* Phone: ≤1175 OR portrait. Desktop: ≥1176 AND landscape. */
@media (max-width: 1175px), (orientation: portrait) {
	/* Workshops/Galerie open: detail overlays 75% card; do not reintroduce fills into 3-col grid */
	html body.gib-col4-open #et-boc .et_pb_row.gib-huis {
		position: relative !important;
	}
	html body.gib-col4-open #et-boc .et_pb_row.gib-huis > .gib-rail {
		display: none !important;
	}
	html body.gib-col4-open #et-boc .et_pb_row.gib-huis > .gib-fills {
		display: block !important;
		position: absolute !important;
		left: 12.5% !important;
		width: 75% !important;
		max-width: 75% !important;
		top: 0 !important;
		bottom: 0 !important;
		right: auto !important;
		z-index: 25 !important;
		overflow-x: hidden !important;
		overflow-y: auto !important;
		background: #fff !important;
		box-sizing: border-box !important;
		padding: 2% !important;
		flex-direction: unset !important;
	}
	html body.gib-col4-open.page-id-39 #et-boc .gib-fills > .et_pb_image {
		display: none !important;
	}
	html body.gib-col4-open.page-id-39 #et-boc .gib-fills .gibr-target,
	html body.gib-col4-open.page-id-39 #et-boc .gib-fills .gibr-target.et_pb_module {
		display: block !important;
		position: relative !important;
		height: auto !important;
		max-height: none !important;
		background: transparent !important;
		width: 100% !important;
		order: unset !important;
		flex: unset !important;
	}
	html body.gib-col4-open.page-id-41 #et-boc .gib-fills > .et_pb_image {
		display: none !important;
	}
	html body.gib-col4-open.page-id-41 #et-boc .gib-fills .gib_interactive_gallery,
	html body.gib-col4-open.page-id-41 #et-boc .gib-fills [class*="gib_interactive_gallery"] {
		display: block !important;
		width: 100% !important;
	}

	/* Open menu: true 100vw over BOTH flanks (flank-r paints after content — lower it) */
	html body #et-boc .gib-nav,
	html body.gib-nav-open #et-boc .gib-nav {
		display: none;
		width: 100vw !important;
		max-width: 100vw !important;
		box-sizing: border-box !important;
		background: #000 !important;
		padding: 14px 0 !important;
		top: auto !important;
		left: 50% !important;
		right: auto !important;
		margin-left: -50vw !important;
		/* 2× logo inset (2% of content) → clear gap under logo */
		margin-top: 4% !important;
		align-items: center !important;
		gap: 0 !important;
		position: relative !important;
		z-index: 40 !important;
	}
	html body.gib-nav-open #et-boc .gib-nav {
		display: flex !important;
		flex-direction: column !important;
	}
	html body.gib-nav-open #et-boc .et_pb_row.gib-huis,
	html body.gib-nav-open #et-boc .et_pb_row.gib-huis > .gib-content,
	html body.gib-nav-open #et-boc .et_pb_section,
	html body.gib-nav-open #et-boc #page-container,
	html body.gib-nav-open #et-boc .et-l {
		overflow: visible !important;
		overflow-x: visible !important;
	}
	html body.gib-nav-open #et-boc .et_pb_row.gib-huis {
		isolation: isolate !important;
	}
	html body.gib-nav-open #et-boc .et_pb_row.gib-huis > .gib-flank-l,
	html body.gib-nav-open #et-boc .et_pb_row.gib-huis > .gib-flank-r {
		z-index: 0 !important;
		position: relative !important;
	}
	html body.gib-nav-open #et-boc .et_pb_row.gib-huis > .gib-content {
		overflow: visible !important;
		overflow-x: visible !important;
		overflow-y: visible !important;
		z-index: 20 !important;
		position: relative !important;
	}
	html body #et-boc .gib-nav a {
		background: transparent !important;
		color: #fff !important;
		width: max-content !important;
		max-width: 100% !important;
		font-size: 36px !important;
		line-height: 1.25 !important;
		padding: 10px 16px !important;
		margin: 0 0 6px 0 !important;
		text-align: left !important;
		white-space: nowrap !important;
		box-sizing: border-box !important;
	}
	html body #et-boc .gib-nav a:last-child { margin-bottom: 0 !important; }
	html body #et-boc .gib-nav {
		padding: 14px 0 !important;
	}
	html body #et-boc .gib-nav a.is-current { color: #ed7203 !important; }

	/* Body type = live (23/27.6/500) — phone only */
	html body #et-boc .gib-content .et_pb_text,
	html body #et-boc .gib-content .et_pb_text_inner,
	html body #et-boc .gib-content .et_pb_text_inner p,
	html body #et-boc .gib-content .et_pb_text_inner li,
	html body #et-boc .gib-content .et_pb_text p,
	html body.gib-col4-open #et-boc .gib-fills .gibr-target,
	html body.gib-col4-open #et-boc .gib-fills .gibr-target p,
	html body.gib-col4-open #et-boc .gib-fills .gibr-target li {
		font-size: 23px !important;
		line-height: 27.6px !important;
		font-weight: 500 !important;
	}

	/* WS title = H1, no grey pill (2.0.30) */
	html body.gib-col4-open #et-boc .gib-fills .gibr-target .gib-ws-title,
	html body.gib-col4-open #et-boc .gib-fills .gibr-target h1.gib-ws-title {
		display: block !important;
		box-sizing: border-box !important;
		max-width: 100% !important;
		margin: 0 0 0.55em 0 !important;
		padding: 0 !important;
		background: transparent !important;
		background-color: transparent !important;
		color: #000 !important;
		font-family: GIB-demi, GIB, Helvetica, Arial, sans-serif !important;
		font-size: 30px !important;
		line-height: 1.15 !important;
		font-weight: 600 !important;
		text-transform: uppercase !important;
		letter-spacing: 0.02em !important;
	}
	/* remove 2.0.29 chrome (Terug / Vorige / Volgende) */
	html body.gib-col4-open #et-boc .gib-fills .gib-ws-chrome,
	html body.gib-col4-open #et-boc .gib-fills .gib-ws-back {
		display: none !important;
	}

	/* Galerie: 3 thumbs per row; gap under body text (2.0.30) */
	html body.page-id-41 #et-boc .gib-content .gib_interactive_gallery,
	html body.page-id-41 #et-boc .gib-content [class*="gib_interactive_gallery"] {
		margin-top: 1.75em !important;
	}
	html body.page-id-41 #et-boc .gib-content .gib-thumbs,
	html body #et-boc .gib-content .gib-thumbs {
		display: grid !important;
		grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
		--gib-columns: 3 !important;
		gap: 8px !important;
		margin-top: 1.75em !important;
		margin-left: 2% !important;
		margin-right: 2% !important;
		width: 96% !important;
		max-width: 96% !important;
		box-sizing: border-box !important;
	}
	html body.page-id-41 #et-boc .gib-content .gib-thumb,
	html body #et-boc .gib-content .gib-thumb {
		width: 100% !important;
		max-width: none !important;
		margin: 0 !important;
	}
	html body.page-id-41 #et-boc .gib-content .gib-thumb img,
	html body #et-boc .gib-content .gib-thumb img {
		width: 100% !important;
		height: auto !important;
		aspect-ratio: 1 / 1 !important;
		object-fit: cover !important;
		display: block !important;
	}

	/* 75% card: scroll overflow, no visible scrollbar (closed + open except x for menu bleed) */
	html body #et-boc .et_pb_section:has(.et_pb_row.gib-huis),
	html body #et-boc .et_pb_row.gib-huis {
		height: 100vh !important;
		max-height: 100vh !important;
		min-height: 0 !important;
	}
	html body #et-boc .et_pb_row.gib-huis > .et_pb_column.gib-content,
	html body #et-boc .et_pb_row.gib-huis > .gib-content {
		overflow-x: hidden !important;
		overflow-y: auto !important;
		overflow: hidden auto !important;
		-webkit-overflow-scrolling: touch !important;
		scrollbar-width: none !important;
		-ms-overflow-style: none !important;
		height: 100% !important;
		max-height: 100vh !important;
		min-height: 0 !important;
	}
	html body #et-boc .et_pb_row.gib-huis > .et_pb_column.gib-content::-webkit-scrollbar,
	html body #et-boc .et_pb_row.gib-huis > .gib-content::-webkit-scrollbar {
		display: none !important;
		width: 0 !important;
		height: 0 !important;
	}
	/* when menu open: keep y-scroll; x visible so 100vw nav bleeds */
	html body.gib-nav-open #et-boc .et_pb_row.gib-huis > .et_pb_column.gib-content,
	html body.gib-nav-open #et-boc .et_pb_row.gib-huis > .gib-content {
		/* both visible: x/y mismatch computes to auto and clips 100vw nav */
		overflow: visible !important;
		overflow-x: visible !important;
		overflow-y: visible !important;
	}

	/* Gallery/module shell full-bleed inside card so .gib-thumbs 2%/96% matches text */
	html body #et-boc .gib-content .gib_interactive_gallery,
	html body #et-boc .gib-content [class*="gib_interactive_gallery"],
	html body.page-id-41 #et-boc .gib-content .gib_interactive_gallery,
	html body #et-boc .gib-content .gib_interactive_gallery .et_pb_module_inner,
	html body #et-boc .gib-content [class*="gib_interactive_gallery"] .et_pb_module_inner {
		margin-left: 0 !important;
		margin-right: 0 !important;
		width: 100% !important;
		max-width: 100% !important;
		box-sizing: border-box !important;
	}

	/* Thumbs / workshop grid: same 2% L/R as body text (not full-bleed) */
	html body #et-boc .gib-content .gib-thumbs,
	html body.page-id-41 #et-boc .gib-content .gib-thumbs,
	html body #et-boc .gib-content .dondivi_grid,
	html body #et-boc .gib-content .ddb-grid,
	html body.page-id-39 #et-boc .gib-content .dondivi_grid,
	html body.page-id-39 #et-boc .gib-content .ddb-grid {
		margin-left: 2% !important;
		margin-right: 2% !important;
		width: 96% !important;
		max-width: 96% !important;
		box-sizing: border-box !important;
	}

	/* Dropshadow BOTH sides of 75% card (flank gradients — overflow:auto would clip box-shadow) */
	html body #et-boc .et_pb_row.gib-huis > .gib-flank-l,
	html body #et-boc .et_pb_row.gib-huis > .gib-flank-r {
		position: relative !important;
		overflow: visible !important;
	}
	html body #et-boc .et_pb_row.gib-huis > .gib-flank-l::after {
		content: "" !important;
		position: absolute !important;
		top: 0 !important;
		right: 0 !important;
		bottom: 0 !important;
		width: 18px !important;
		pointer-events: none !important;
		z-index: 5 !important;
		background: linear-gradient(to left, rgba(0, 0, 0, 0.28), rgba(0, 0, 0, 0)) !important;
	}
	html body #et-boc .et_pb_row.gib-huis > .gib-flank-r::before {
		content: "" !important;
		position: absolute !important;
		top: 0 !important;
		left: 0 !important;
		bottom: 0 !important;
		width: 18px !important;
		pointer-events: none !important;
		z-index: 5 !important;
		background: linear-gradient(to right, rgba(0, 0, 0, 0.28), rgba(0, 0, 0, 0)) !important;
	}

	/* Open menu ABOVE body/fills (nav lives inside content stacking context) */
	html body.gib-nav-open #et-boc .gib-nav {
		z-index: 80 !important;
	}
	html body.gib-nav-open #et-boc .et_pb_row.gib-huis > .gib-content {
		z-index: 70 !important;
	}
	html body.gib-nav-open.gib-col4-open #et-boc .et_pb_row.gib-huis > .gib-fills {
		z-index: 15 !important;
	}
	/* 2.0.30: flank-l was z90 over nav z80 → left 12.5% looked missing. Keep ham above; clear flank paint so 100vw black shows. */
	html body.gib-nav-open #et-boc .et_pb_row.gib-huis > .gib-flank-l {
		z-index: 90 !important;
		position: relative !important;
		background: transparent !important;
		background-image: none !important;
	}
	html body.gib-nav-open #et-boc .et_pb_row.gib-huis > .gib-flank-r {
		background: transparent !important;
		background-image: none !important;
	}
	html body.gib-nav-open #et-boc .gib-nav {
		left: 50% !important;
		width: 100vw !important;
		max-width: 100vw !important;
		margin-left: -50vw !important;
		right: auto !important;
	}
	html body.gib-nav-open #et-boc .gib-ham {
		z-index: 95 !important;
	}
	html body.gib-nav-open #et-boc .et_pb_row.gib-huis > .gib-flank-l::after,
	html body.gib-nav-open #et-boc .et_pb_row.gib-huis > .gib-flank-r::before {
		display: none !important;
	}
	html body.gib-nav-open #et-boc .gib-content .dondivi_grid,
	html body.gib-nav-open #et-boc .gib-content .ddb-grid,
	html body.gib-nav-open #et-boc .gib-content .gib-thumbs,
	html body.gib-nav-open #et-boc .gib-content .gib-e,
	html body.gib-nav-open #et-boc .gib-content .et_pb_image {
		z-index: 1 !important;
		position: relative !important;
	}
	html body.gib-nav-open #et-boc .gib-content > .gib-logo,
	html body.gib-nav-open #et-boc .gib-content > .et_pb_image:first-of-type {
		z-index: 55 !important;
	}

	/* Workshops open: keep logo on top of fills overlay */
	html body.gib-col4-open #et-boc .gib-content > .gib-logo,
	html body.gib-col4-open #et-boc .gib-content > .et_pb_image:first-of-type,
	html body.gib-col4-open.page-id-39 #et-boc .gib-content > .gib-logo,
	html body.gib-col4-open.page-id-39 #et-boc .gib-content > .et_pb_image:first-of-type {
		position: relative !important;
		z-index: 45 !important;
	}
	/* Clear gap under logo → first content (phone pages + WS open) */
	html body #et-boc .et_pb_row.gib-huis > .gib-content > .gib-logo,
	html body #et-boc .et_pb_row.gib-huis > .gib-content > .et_pb_image:first-of-type {
		margin-bottom: 16px !important;
	}
	html body #et-boc .gib-content .et_pb_text {
		padding-top: 0.35em !important;
	}
	/* Hide col3 copy/grid under open overlay so it cannot peek in logo→fills gap */
	html body.gib-col4-open #et-boc .gib-content > .et_pb_text,
	html body.gib-col4-open #et-boc .gib-content > .dondivi_grid,
	html body.gib-col4-open #et-boc .gib-content > .ddb-grid,
	html body.gib-col4-open #et-boc .gib-content > .gib-e,
	html body.gib-col4-open #et-boc .gib-content .et_pb_text,
	html body.gib-col4-open #et-boc .gib-content .dondivi_grid,
	html body.gib-col4-open #et-boc .gib-content .ddb-grid {
		visibility: hidden !important;
	}
	html body.gib-col4-open #et-boc .et_pb_row.gib-huis > .gib-fills {
		z-index: 25 !important;
		/* cover from under logo; pad inside = breathing room to H1 */
		top: max(72px, 18vw) !important;
		padding-top: 20px !important;
	}

	/* Hamburger thicker+bigger; open → X (phone only) */
	html body #et-boc .gib-ham,
	.gib-ham {
		width: 30px !important;
		height: 30px !important;
		display: block !important;
		transform: translateX(-50%) !important;
		position: absolute !important;
		z-index: 40 !important;
	}
	html body #et-boc .gib-ham span,
	.gib-ham span {
		position: absolute !important;
		left: 0 !important;
		right: 0 !important;
		width: 100% !important;
		height: 3px !important;
		margin: 0 !important;
		background: #000 !important;
		border-radius: 1px !important;
		transition: top .2s ease, transform .2s ease, opacity .15s ease !important;
	}
	html body #et-boc .gib-ham span:nth-child(1),
	.gib-ham span:nth-child(1) { top: 6px !important; }
	html body #et-boc .gib-ham span:nth-child(2),
	.gib-ham span:nth-child(2) { top: 13.5px !important; }
	html body #et-boc .gib-ham span:nth-child(3),
	.gib-ham span:nth-child(3) { top: 21px !important; }
	html body.gib-nav-open #et-boc .gib-ham span:nth-child(1),
	body.gib-nav-open .gib-ham span:nth-child(1) {
		top: 13.5px !important;
		transform: rotate(45deg) !important;
	}
	html body.gib-nav-open #et-boc .gib-ham span:nth-child(2),
	body.gib-nav-open .gib-ham span:nth-child(2) {
		opacity: 0 !important;
	}
	html body.gib-nav-open #et-boc .gib-ham span:nth-child(3),
	body.gib-nav-open .gib-ham span:nth-child(3) {
		top: 13.5px !important;
		transform: rotate(-45deg) !important;
	}
}

@media (min-width: 1176px) and (orientation: landscape) {
/* Open @1080p+: 4onder after module in document flow — kills absolute 66.39% */
body.gib-col4-open .et_pb_row.gib-huis > .gib-fills {
	display: flex !important;
	flex-direction: column !important;
}
body.gib-col4-open .et_pb_row.gib-huis > .gib-fills > .et_pb_image:first-of-type {
	order: 1 !important;
	position: relative !important;
	top: auto !important;
	left: auto !important;
	width: 100% !important;
	max-width: 100% !important;
	height: auto !important;
	margin: 0 !important;
}
body.gib-col4-open .et_pb_row.gib-huis > .gib-fills > .gibr-target,
body.gib-col4-open .et_pb_row.gib-huis > .gib-fills > .gib_interactive_gallery,
body.gib-col4-open .et_pb_row.gib-huis > .gib-fills > [class*="gib_interactive_gallery"] {
	order: 2 !important;
	position: relative !important;
	z-index: 2 !important;
	height: auto !important;
	min-height: min-content !important;
	max-height: none !important;
	flex: 0 0 auto !important;
	flex-shrink: 0 !important;
}
/* Workshops open text: transparent so col4 dropshadow shows through */
body.gib-col4-open .et_pb_row.gib-huis > .gib-fills > .gibr-target {
	background: transparent !important;
	background-color: transparent !important;
}
body.gib-col4-open .et_pb_row.gib-huis > .gib-fills > .gib_interactive_gallery,
body.gib-col4-open .et_pb_row.gib-huis > .gib-fills > [class*="gib_interactive_gallery"] {
	background: #fff !important;
	background-color: #fff !important;
}
body.gib-col4-open .et_pb_row.gib-huis > .gib-fills > .et_pb_image {
	flex: 0 0 auto !important;
	flex-shrink: 0 !important;
}
body.gib-col4-open .et_pb_row.gib-huis > .gib-fills > .et_pb_image:last-of-type {
	order: 3 !important;
	position: relative !important;
	top: auto !important;
	bottom: auto !important;
	left: auto !important;
	right: auto !important;
	inset: auto !important;
	width: 100% !important;
	max-width: 100% !important;
	height: auto !important;
	margin: 0 !important;
	z-index: 0 !important;
}
body.gib-col4-open .et_pb_row.gib-huis > .gib-fills > .et_pb_image img {
	width: 100% !important;
	max-width: 100% !important;
	height: auto !important;
	display: block;
	object-fit: contain;
	object-position: left top;
}
}


body .et_pb_section:has(.et_pb_row.gib-huis) {
	background-position: 50% 0% !important;
}


body.gib-scroll-1 .gib-flank-l,
body.gib-scroll-2 .gib-rail,
body.gib-scroll-3 .gib-content,
body.gib-scroll-4 .gib-fills,
body.gib-scroll-5 .gib-flank-r {
	overflow: auto;
	scrollbar-width: none;
	-ms-overflow-style: none;
}
body.gib-scroll-1 .gib-flank-l::-webkit-scrollbar,
body.gib-scroll-2 .gib-rail::-webkit-scrollbar,
body.gib-scroll-3 .gib-content::-webkit-scrollbar,
body.gib-scroll-4 .gib-fills::-webkit-scrollbar,
body.gib-scroll-5 .gib-flank-r::-webkit-scrollbar {
	display: none;
	width: 0;
	height: 0;
}

/* 2.0.31: cookie banner KILLED entirely (no bar, no OK, no space) */
#gib-cookie,
.gib-cookie,
.gib-cookie-ok {
	display: none !important;
	visibility: hidden !important;
	height: 0 !important;
	max-height: 0 !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	overflow: hidden !important;
	pointer-events: none !important;
	opacity: 0 !important;
}

/* 2.0.32: Privacy line = contact copy (not footer). In flow after address, before gib-e. */
.gib-content .gib-copy .et_pb_text_inner,
.gib-content .et_pb_text.gib-copy .et_pb_text_inner {
	padding-left: 2% !important;
	padding-right: 2% !important;
	box-sizing: border-box !important;
	padding-bottom: 0 !important;
}
.gib-legal-foot {
	/* 2.0.32: NOT a footer — continuation of contact copy after address block */
	font-family: GIB, Helvetica, Arial, sans-serif !important;
	font-size: 23px !important;
	line-height: 27.6px !important;
	font-weight: 500 !important;
	color: #000 !important;
	position: static !important;
	left: auto !important;
	right: auto !important;
	bottom: auto !important;
	top: auto !important;
	width: auto !important;
	z-index: auto !important;
	margin: 5.5em 2% 0.55em 2% !important; /* LARGE gap after contact copy; SMALL gap before E */
	padding: 0 !important;
	box-sizing: border-box !important;
}
.gib-legal-foot a.gib-legal-link {
	color: #000 !important;
	text-decoration: underline !important;
	background: transparent !important;
	cursor: pointer;
}
.gib-legal-foot a.gib-legal-link:hover,
.gib-legal-foot a.gib-legal-link:focus-visible {
	color: var(--gib-orange) !important;
	background: transparent !important;
}

.gib-legal .gib-legal-back,
.gib-legal-back {
	display: none !important;
}
.gib-legal {
	/* 2.0.35: match Contact logo→first body line (0.8em pad + 2.2px module seam). NOT Privacy spacer. */
	margin-top: calc(0.8em + 2.2px) !important;
	padding-left: 2% !important;
	padding-right: 2% !important;
	box-sizing: border-box !important;
	font-family: GIB, Helvetica, Arial, sans-serif !important;
	font-size: 23px !important;
	line-height: 27.6px !important;
	font-weight: 500 !important;
	color: #000 !important;
}
/* 2.0.32: breadcrumb ← Contact removed */
/* 2.0.35 phone: Contact gap = logo MB 16px + text pad 0.35em + 2px seam */
@media (max-width: 1175px), (orientation: portrait) {
	.gib-legal {
		margin-top: calc(16px + 0.35em + 2px) !important;
	}
}

.gib-legal h1 {
	font-family: GIB-demi, GIB, Helvetica, Arial, sans-serif !important;
	font-size: 23px !important;
	line-height: 27.6px !important;
	font-weight: 700 !important;
	color: #000 !important;
	margin: 0 0 1em 0 !important; /* type size unchanged; gap is on .gib-legal */
	padding: 0 !important;
}
.gib-legal h2 {
	font-family: GIB-demi, GIB, Helvetica, Arial, sans-serif !important;
	font-size: 23px !important;
	line-height: 27.6px !important;
	font-weight: 700 !important;
	color: #000 !important;
	margin: 1.1em 0 0.35em 0 !important;
	padding: 0 !important;
}
.gib-legal h3 {
	font-family: GIB-demi, GIB, Helvetica, Arial, sans-serif !important;
	font-size: 23px !important;
	line-height: 27.6px !important;
	font-weight: 700 !important;
	color: #000 !important;
	margin: 0.85em 0 0.25em 0 !important;
	padding: 0 !important;
}
.gib-legal p {
	margin: 0 0 0.55em 0 !important;
	padding: 0 !important;
	font-size: 23px !important;
	line-height: 27.6px !important;
	font-weight: 500 !important;
	color: #000 !important;
}
.gib-legal a.gib-legal-mail,
.gib-legal a[href^="mailto:info@goedinbeeld.com"] {
	color: #0066cc !important;
	text-decoration: underline !important;
	background: transparent !important;
	background-color: transparent !important;
	box-shadow: none !important;
}
.gib-legal a.gib-legal-mail:hover,
.gib-legal a[href^="mailto:info@goedinbeeld.com"]:hover {
	color: #004499 !important;
	background: transparent !important;
}
.gib-legal mark,
.gib-legal a mark,
.gib-legal .gib-hl {
	background: transparent !important;
	background-color: transparent !important;
	color: inherit !important;
}
.gib-legal .gib-legal-strong {
	font-weight: 700 !important;
	font-family: GIB-demi, GIB, Helvetica, Arial, sans-serif !important;
}
.gib-copy.is-legal-hidden,
.gib-legal-foot.is-legal-hidden {
	display: none !important;
}
.gib-legal[hidden] {
	display: none !important;
}

@media (max-width: 1175px), (orientation: portrait) {
	body .et_pb_section.et_pb_with_background:has(.et_pb_row.gib-huis),
	body .et_pb_section:has(.et_pb_row.gib-huis) {
		background-image: url("/wp-content/uploads/2023/10/achtergrond_phone_kolom_1_3.png") !important;
		background-size: 100% 100% !important;
		background-position: center center !important;
		background-repeat: no-repeat !important;
	}
}

@media (min-width: 1176px) and (orientation: landscape) {
	.gib-content .et_pb_text,
	.gib-content .et_pb_text_inner,
	.gib-content .et_pb_text_inner p,
	.gib-copy .et_pb_text,
	.gib-copy .et_pb_text_inner,
	.gib-copy .et_pb_text_inner p {
		font-size: 23px !important;
		line-height: 27.6px !important;
		font-weight: 500 !important;
	}

	/* B: logo top 2vh (live y=21.6 @1080). Keep locked L/R 2% width 96%. */
	html body #et-boc .et_pb_image_0_tb_body.et_pb_module.gib-logo,
	html body #et-boc .gib-logo {
		margin-top: 2vh !important;
		margin-left: 2% !important;
		margin-right: 2% !important;
		width: 96% !important;
		max-width: 96% !important;
	}

	/* C: live dropshadow is PNG achtergrond_kolom_1_2_5 under col3 (same file as col 2/4). No CSS box-shadow. */
	html body #et-boc .et_pb_row.gib-huis {
		background-image: url("/wp-content/uploads/2023/09/achtergrond_kolom_1_2_5.png") !important;
		background-size: cover !important;
		background-position: center top !important;
		background-repeat: no-repeat !important;
		overflow: visible !important;
	}
	html body #et-boc .et_pb_row.gib-huis > .et_pb_column.gib-content {
		background: transparent !important;
		box-shadow: none !important;
		overflow: visible !important;
	}

	/* D: 50% of col2 plane; L/R 3.96% of col2 (ACHTERGROND glyph ink L=R); T/B/gap 0.5667vw; items left.
	   Top = GOEDINBEELD letters. Logo natural cap @2588. 2.0.28 */
	html body #et-boc .gib-nav {
		width: 50% !important;
		max-width: 50% !important;
		background: #000 !important;
		padding: 0.5667vw 3.96% !important;
		box-sizing: border-box !important;
		top: calc(2vh + 1.1205vw) !important;
		left: 0 !important;
		gap: 0 !important;
		overflow: hidden !important;
		align-items: flex-start !important;
	}
	html body #et-boc .gib-nav a {
		background: transparent !important;
		width: auto !important;
		max-width: 100% !important;
		padding: 0 !important;
		margin: 0 0 0.5667vw 0 !important;
		height: auto !important;
		line-height: 1 !important;
		font-size: 1.5vw !important;
		display: block !important;
		overflow: visible !important;
		white-space: nowrap !important;
		text-align: left !important;
	}
	html body #et-boc .gib-nav a:last-child {
		margin-bottom: 0 !important;
	}
}
@media (min-width: 2588px) {
	html body #et-boc .gib-nav {
		top: calc(2vh + 29px) !important;
	}
}

/* Workshops col4 only (page 39): text in flow between 4Boven and 4onder.
   Match col3: GIB 23px / 27.6 / 500 / 2% L+R. A–D unchanged. */
@media (min-width: 1176px) and (orientation: landscape) {
	html body.page-id-39 #et-boc .et_pb_row.gib-huis > .gib-fills {
		overflow: auto !important;
		overflow-x: hidden !important;
		scrollbar-width: none;
		-ms-overflow-style: none;
	}
	html body.page-id-39 #et-boc .et_pb_row.gib-huis > .gib-fills::-webkit-scrollbar {
		display: none !important;
		width: 0 !important;
		height: 0 !important;
	}
	html body.page-id-39 #et-boc .et_pb_row.gib-huis > .gib-fills > .et_pb_image:first-of-type,
	html body.page-id-39 #et-boc .et_pb_row.gib-huis > .gib-fills > .et_pb_image:last-of-type,
	html body.page-id-39 #et-boc .gib-fills .et_pb_image:first-of-type,
	html body.page-id-39 #et-boc .gib-fills .et_pb_image:last-of-type {
		position: relative !important;
		top: auto !important;
		left: auto !important;
		width: 100% !important;
		max-width: 100% !important;
		height: auto !important;
	}
	html body.page-id-39 #et-boc .gib-fills .et_pb_image img {
		width: 100% !important;
		max-width: 100% !important;
		height: auto !important;
		display: block;
		object-fit: contain;
		object-position: left top;
	}
	html body.page-id-39 #et-boc .gib-fills .gibr-target {
		position: relative !important;
		z-index: 2;
		display: block !important;
		padding-left: 2% !important;
		padding-right: 2% !important;
		padding-top: 0.8em !important;
		padding-bottom: 0.8em !important;
		box-sizing: border-box !important;
		max-width: 100% !important;
	}
	html body.page-id-39 #et-boc .gib-fills .gibr-target,
	html body.page-id-39 #et-boc .gib-fills .gibr-target .et_pb_text_inner,
	html body.page-id-39 #et-boc .gib-fills .gibr-target p,
	html body.page-id-39 #et-boc .gib-fills .gibr-target li,
	html body.page-id-39 #et-boc .gib-fills .gibr-target h1,
	html body.page-id-39 #et-boc .gib-fills .gibr-target h2,
	html body.page-id-39 #et-boc .gib-fills .gibr-target h3,
	html body.page-id-39 #et-boc .gib-fills .gibr-target h4 {
		font-family: GIB, Helvetica, Arial, sans-serif !important;
		font-size: 23px !important;
		line-height: 27.6px !important;
		font-weight: 500 !important;
		color: #000 !important;
		max-width: 100% !important;
		box-sizing: border-box !important;
	}
	html body.page-id-39 #et-boc .gib-fills .gibr-target .et_pb_text_inner p,
	html body.page-id-39 #et-boc .gib-fills .gibr-target p {
		margin: 0 0 0.6em 0 !important;
		padding: 0 !important;
	}
}
