/********************************************************/
/*
/*      General CSS
/*
/********************************************************/

	/******************************/
	/* Modifier classes
	/******************************/
	/* Layout */
	.flex									{ display: flex; }
	.flex-column							{ flex-direction: column; }
	.justify-start							{ justify-content: start; }
	.justify-center							{ justify-content: center; }
	.justify-end							{ justify-content: end; }
	.justify-around							{ justify-content: space-around; }
	.justify-between						{ justify-content: space-between; }
	.justify-evenly							{ justify-content: space-evenly; }
	.align-start							{ align-items: start; }
	.align-center							{ align-items: center; }
	.align-end								{ align-items: end; }
	
	/* Color */
	.black,
	.focus-black:is(:hover, :focus) 		{ color: var(--wp--preset--color--black); }
	.chathams-blue,
	.focus-chathams-blue:is(:hover, :focus) { color: var(--wp--preset--color--chathams-blue); }
	.gull-gray,
	.focus-gull-gray:is(:hover, :focus) 	{ color: var(--wp--preset--color--gull-gray); }
	.pampas-white,
	.focus-pampas-white:is(:hover, :focus)  { color: var(--wp--preset--color--pampas-white); }
	.white,
	.focus-white:is(:hover, :focus) 		{ color: var(--wp--preset--color--white); }
	.bg-black								{ background-color: var(--wp--preset--color--black); }
	.bg-chathams-blue						{ background-color: var(--wp--preset--color--chathams-blue); }
	.bg-gull-gray							{ background-color: var(--wp--preset--color--gull-gray); }
	.bg-pampas-white						{ background-color: var(--wp--preset--color--pampas-white); }
	.bg-white								{ background-color: var(--wp--preset--color--white); }
	
	/* Text */
	.small									{ font-size: var(--wp--preset--font-size--small); }
	.medium-size							{ font-size: var(--wp--preset--font-size--medium); }
	.large									{ font-size: var(--wp--preset--font-size--large); }
	.x-large								{ font-size: var(--wp--preset--font-size--x-large); }
	.xx-large								{ font-size: var(--wp--preset--font-size--2-x-large); }
	.xxx-large								{ font-size: var(--wp--preset--font-size--3-x-large); }
	.omega									{ font-size: var(--wp--preset--font-size--omega); }
	.thin									{ font-weight: 100; }
	.extra-light							{ font-weight: 200; }
	.light									{ font-weight: 300; }
	.regular								{ font-weight: 400; }
	.medium-weight							{ font-weight: 500; }
	.semibold								{ font-weight: 600; }
	.bold									{ font-weight: 700; }
	.extra-bold								{ font-weight: 800; }
	.heavy									{ font-weight: 900; }
	.uppercase								{ text-transform: uppercase; }
	.lowercase								{ text-transform: lowercase; }
	.underline								{ text-decoration: underline; }
	.text-deco-none,
	.text-deco-none	a						{ text-decoration: none; }
	
	/* Opacity */
	.opacity-full							{ opacity: 1; }
	.opacity-half							{ opacity: .5; }
	.opacity-zero							{ opacity: 0; }
	
	/* Other */
	.user-select-none						{ user-select: none; }
	
	/******************************/
	/* Buttons
	/******************************/
	.wp-block-button__link,
	body:not(.wp-admin) .gform_footer {
		display: flex;
		align-items: start;
		column-gap: var(--wp--preset--spacing--1-5);
		min-height: 50px;
		text-align: start;
		color: var(--wp--custom--color--default--text);
		background-color: transparent;
		padding: .25rem 0 !important;
		padding-inline-end: 0 !important;
		box-sizing: border-box;
		transition: color .3s, padding-inline-end .3s !important;
	}
	
	.wp-block-button__link:is(:hover, :focus, :active),
	body:not(.wp-admin) .gform_footer:is(:hover, :focus, :active) {
		color: var(--wp--custom--color--default--focus);
		padding-inline-end: 25px !important;
	}
	
	.wp-block-button__link::before,
	body:not(.wp-admin) .gform_footer::before {
		content: '';
		width: 100px;
		height: 1px;
		background-color: var(--wp--custom--color--default--accent);
		translate: 0 calc((1em * 1.087) / 2);
		transition: width .3s;
	}
	
	.wp-block-button__link:is(:hover, :focus, :active)::before,
	body:not(.wp-admin) .gform_footer:is(:hover, :focus, :active)::before {
		width: 75px;
	}
	
	/******************************/
	/* Forms & inputs
	/******************************/
	body:not(.wp-admin) .gform_fields {
		gap: var(--wp--preset--spacing--2);
	}
	
	body:not(.wp-admin) .gfield .gfield_label,
	body:not(.wp-admin) .gfield .gfield_required::before {
		font-size: var(--wp--preset--font-size--medium);
		line-height: 1.5;
		font-weight: 400;
		color: var(--wp--custom--color--default--text);
	}
	
	body:not(.wp-admin) .gfield .gfield_label {
		gap: 0;
		margin-block-end: var(--wp--preset--spacing--0-50);
	}
	
	body:not(.wp-admin) .gfield .gfield_required_text {
		display: none;
	}
	
	body:not(.wp-admin) .gfield .gfield_required::before {
		content: '*';
	}
	
	body:not(.wp-admin) :is(input, select, textarea):not([type="submit"], [type="button"], [type="file"], [class*="adminbar"]) {
		font-family: var(--wp--preset--font-family--familjen-grotesk);
		font-size: var(--wp--preset--font-size--medium);
		line-height: 1.5;
		font-weight: 400;
		color: var(--wp--custom--color--default--accent);
		background: transparent;
		outline: unset !important;
		box-shadow: unset !important;
		resize: none;
	}
	
	body:not(.wp-admin) :is(input, select):not([type="submit"], [type="button"], [type="file"], [class*="adminbar"]) {
		padding: var(--wp--preset--spacing--0-75) 0;
		border: unset;
		border-block-end: 1px solid var(--wp--custom--color--default--accent);
		border-radius: unset;
		box-sizing: border-box;
	}
	
	body:not(.wp-admin) :is(select) {
		height: max-content;
		box-sizing: content-box !important;
	}
	
	body:not(.wp-admin) :is(textarea) {
		padding: var(--wp--preset--spacing--1-5) var(--wp--preset--spacing--2);
		border: 1px solid var(--wp--custom--color--default--accent);
		border-radius: 8px;
	}
	
	/* Form footer */
	body:not(.wp-admin) .gform_footer {
		width: max-content;
	}
	
	body:not(.wp-admin) .gform_footer input[type="submit"] {
		min-height: unset !important;
		font-family: var(--wp--preset--font-family--familjen-grotesk) !important;
		font-size: var(--wp--preset--font-size--x-large) !important;
		line-height: 1.087 !important;
		color: var(--wp--custom--color--default--text) !important;
		background-color: unset !important;
		padding: unset !important;
		border: unset !important;
		outline: none !important;
		box-shadow: unset !important;
	}
	
	/* Form error/confirmation messages & loading icon */
	body:not(.wp-admin) .gform_validation_errors {
		display: none;
	}
	
	body:not(.wp-admin) .gform_confirmation_message {
		font-size: var(--wp--preset--font-size--large) !important;
		color: var(--wp--custom--color--default--accent) !important;
		text-align: center;
	}
	
	body:not(.wp-admin) .gform-loader {
		right: -10px;
		width: 20px;
		height: 20px;
		border-block-start-color: transparent !important;
		border-block-end-color: var(--wp--custom--color--default--accent) !important;
		border-inline-start-color: var(--wp--custom--color--default--accent) !important;
		border-inline-end-color: transparent !important;
	}
	
	@media (max-width: 750px) {
		body:not(.wp-admin) .gfield { grid-column: span 12 !important; }
	}
	
	/******************************/
	/* Cards
	/******************************/
	.canevabec-card {
		display: grid;
		grid-template-columns: 100%;
		grid-template-rows: 65% auto max-content;
		align-items: end;
		gap: var(--wp--preset--spacing--0-75);
		aspect-ratio: 17/25 !important;
		text-decoration: unset;
		background-color: var(--wp--custom--color--default--bg);
		border: 5px solid var(--wp--custom--color--default--bg);
		box-shadow: 2px 2px 4px rgba(var(--wp--custom--color--rgb-values--black), .25);
	}
	
	.canevabec-card > * {
		grid-column: 1;
		margin-block: unset;
	}
	
	.canevabec-card > figure {
		grid-row: 1;
		width: 100%;
		height: 100%;
	}
	
	.canevabec-card > figure img {
		width: 100%;
		height: 100%;
		object-fit: cover;
	}
	
	:not(a).canevabec-card > :is(h3, p) {
		display: contents;
	}
	
	.canevabec-card > :is(h3, p) > a,
	a.canevabec-card > :is(h3, p) {
		display: block;
		margin-inline: var(--wp--preset--spacing--1);
		text-decoration: unset;
	}
	
	.canevabec-card > h3 > a,
	a.canevabec-card > h3 {
		grid-row: 2;
		line-height: .9;
		padding-inline-end: calc(var(--card-width) / 2);
		margin-block-start: -2em;
	}
	
	.canevabec-card > p > a,
	a.canevabec-card > p {
		grid-row: 3;
		padding-block: var(--wp--preset--spacing--0-50) var(--wp--preset--spacing--1);
		border-block-start: 1px solid var(--wp--custom--color--default--text);
	}
	
	/******************************/
	/* Other
	/******************************/
	/* Cookie banner/modal styling */
	.moove-gdpr-info-bar-container {
		width: 100%;
		background-color: var(--wp--preset--color--gull-gray);
		border: 1px solid var(--wp--preset--color--chathams-blue);
		border-radius: 10px !important;
	}
	
	.moove-gdpr-info-bar-container *,
	#moove_gdpr_cookie_modal * {
		-webkit-font-smoothing: auto !important;
	}	
	
	.moove-gdpr-cookie-notice > p,
	.moove-gdpr-infobar-settings-btn {
		color: var(--wp--preset--color--chathams-blue) !important;
	}
	
	.moove-gdpr-infobar-settings-btn {
		border-color: var(--wp--preset--color--chathams-blue) !important;
	}
	
	.moove_gdpr_text {
		color: var(--wp--preset--color--pampas-white) !important;
	}
	
	.moove-gdpr-company-logo-holder img {
		object-fit: contain;
	}
	
	#moove-gdpr-menu li::before,
	#moove_gdpr_cookie_modal .cookie-switch::before,
	#moove_gdpr_cookie_modal .cookie-switch::after {
		display: none;
	}
	
	.moove-gdpr-infobar-allow-all,
	.moove-gdpr-infobar-reject-btn {
		background-color: var(--wp--preset--color--chathams-blue);
	}
	
	#moove_gdpr_save_popup_settings_button {
		background-color: var(--wp--preset--color--chathams-blue) !important;
		padding: unset !important;
		border: 1px solid var(--wp--preset--color--pampas-white) !important;
		box-sizing: content-box;
		cursor: pointer;
		scale: 1 !important;
		translate: unset !important;
		z-index: 4 !important;
	}
	
	#moove_gdpr_save_popup_settings_button span.moove_gdpr_icon svg {
		translate: -.5px .5px;
	}
	
	/* Why Canevabec? block */
	@media (max-width: 1400px) {
		.wp-block-group.why-canevabec .wp-block-columns:last-child > .wp-block-column:last-child > .wp-block-group {
			display: grid;
			grid-template-columns: 30px auto;
		}	
		
		.wp-block-group.why-canevabec .wp-block-columns:last-child > .wp-block-column:last-child > .wp-block-group .wp-block-separator {
			grid-column: 1;
		}
		
		.wp-block-group.why-canevabec .wp-block-columns:last-child > .wp-block-column:last-child > .wp-block-group .wp-block-separator + * {
			grid-column: 2;
		}
		
		.wp-block-group.why-canevabec .wp-block-columns:last-child > .wp-block-column:last-child > .wp-block-group + .wp-block-group {
			margin-block-start: var(--wp--preset--spacing--3);
		}
	}