#CybotCookiebotDialog {

	/* Declare some variables */

	--color-primary: #de3400;

	--black: #222;
	--grey-dark: #4a4a4a;
	--grey-medium: #737373;
	--grey-light: #ccc;
	--grey-xlight: #eee;
	--white: #fff;

	--black-rgb: 0, 0, 0;
	--white-rgb: 255, 255, 255;

	--dialog-edge-offset: 2.5vw;
	--dialog-bkg-color: 34, 34, 34;

	--space-xs: 0.5rem;
	--space-sm: 1rem;
	--space-md-sm: 1.5rem;
	--space-md: 2rem;
	--space-lg: 4rem;

	--font-size-xs: 1.3rem;
	--font-size-sm: 1.5rem;
	--font-size-md: 1.8rem;
	--font-size-lg: 2.4rem;

	/* Override base styling */
	font-family: "apercu-pro", "Helvetica Neue", Helvetica, Arial, sans-serif;
	font-size: var(--font-size-sm);
	border-radius: 0;
	background-color: rgba(var(--dialog-bkg-color), 1);
	box-shadow: 0 15px 50px rgba(0,0,0,.6);

	* {
		font-size: inherit;
	}

	form {
		max-width: none;
	}

	.CybotCookiebotDialogContentWrapper {
		position: relative;
		z-index: 1;
		max-width: 1570px !important;
	}

	#CybotCookiebotDialogBodyContentText {
		max-width: 80ch;
		padding-bottom: var(--space-lg);
	}

	#CybotCookiebotDialogBodyContentTitle {
		margin-bottom: var(--space-xs);
		font-weight: bold;
		color: var(--white);
		text-transform: uppercase;

	}

	/* Background Weave Pattern */
	&::after {
		content: "";
		display: block;
		width: 200%;
		height: 200%;
		position: absolute;
		left: 50%;
		top: 50%;
		transform: translate(-50% -50%);
		z-index: 0;
		background-image: url("../images/svg-development/am-pattern-master-cookiebot-dialog.2173b4ecf4dc.svg");
		background-position: center center;
		background-size: 3000px auto;
		background-repeat: repeat;
		opacity: 0.03;
	}

	@media screen and (min-width: 650px) {

		&::after {
			background-size: 4000px auto;
		}

	}

	/* Hide CookieBot signatures */

	#CybotCookiebotDialogHeader,
	#CybotCookiebotDialogPoweredByText {
		display: none;
	}

	/* Tab Styling */
	#CybotCookiebotDialogNav .CybotCookiebotDialogNavItemLink {
		padding: var(--space-md);
		border-bottom: 4px solid transparent;
		font-size: var(--font-size-md);
		color: var(--grey-light);

		&:hover {
			color: var(--white);
		}

		&.CybotCookiebotDialogActive {
			border-bottom: 4px solid var(--color-primary);
			color: var(--white);
		}
	}

	/* Switches Styling */

	.CybotCookiebotDialogBodyLevelButtonWrapper {
		padding-top: var(--space-xs);
		padding-bottom: var(--space-sm);
		gap: var(--space-md-sm);

		@media screen and (min-width: 601px) {
			padding-top: var(--space-sm);
			padding-bottom: var(--space-md);
		}

		input[type=checkbox].CybotCookiebotDialogBodyLevelButton {
			opacity: 0 !important;
		}

	}

	.CybotCookiebotDialogBodyLevelButtonLabel {
		margin-bottom: 0;
		font-size: var(--font-size-sm);
		font-weight: bold;
		color: var(--white);
	}

	.CybotCookiebotDialogBodyLevelButtonDescription {

		&:hover {
			color: inherit !important;
		}

	}

	.CybotCookiebotDialogBodyLevelButtonSliderWrapper {

		.CybotCookiebotDialogBodyLevelButtonSlider {
			border: 2px solid rgba(var(--white-rgb), 0.5);
			background-color: transparent;
			transition: all .2s ease-in-out;

			&::before {
				width: 22px;
				height: 22px;
				left: 4px;
				bottom: 3px;
				background-color: var(--white);
			}

		}

		input[type=checkbox]:checked + .CybotCookiebotDialogBodyLevelButtonSlider,
		input[type=checkbox][disabled]:checked + .CybotCookiebotDialogBodyLevelButtonSlider {
			border-color: var(--color-primary);
			background-color: var(--color-primary);

			&::before {
				transform: translateX(24px);
			}
		}

	}

	.CybotCookiebotDialogBodyLevelButtonSliderWrapperDisabled {
		opacity: 0.6;
	}


	/* Button Styling */
	#CybotCookiebotDialogDetailBodyContentCookieContainerButton {
		color: var(--white);

		&:hover * {
			color: var(--color-primary) !important;
		}
	}

	#CybotCookiebotDialogBodyButtonsWrapper .CybotCookiebotDialogBodyButton {
		margin-bottom: 1vh !important;
		padding-top: 1.2rem;
		padding-bottom: 1.4rem;
		padding-left: var(--space-md);
		padding-right: var(--space-md);
		font-size: var(--font-size-md);
		font-weight: bold;
		line-height: 1.25;
		color: var(--white);
		text-align: center;
		text-transform: none;
		text-decoration: none;
		background-color: rgba(var(--white-rgb), 0.1);
		border: 1px solid transparent;
		border-radius: 0;
		cursor: pointer;
		transition: all .2s ease-in-out;

		&:hover {
			opacity: 1;
			background-color: var(--white);
			color: var(--black);
		}

		&#CybotCookiebotDialogBodyLevelButtonLevelOptinAllowAll {
			background-color: var(--white);
			color: var(--black);

			&:hover {
				background-color: var(--color-primary);
				color: var(--white);
			}

		}

	}

	/* Adjust scroll fader to match background */

	.CybotCookiebotFader {
		background-image: linear-gradient(to top, rgba(var(--dialog-bkg-color), 1), rgba(var(--dialog-bkg-color), 0.8), rgba(var(--dialog-bkg-color), 0)) !important;
	}

	/* Containers */

	#CybotCookiebotDialogBodyContent,
	#CybotCookiebotDialogTabContentDetails,
	#CybotCookiebotDialogDetailBodyContentTextAbout,
	#CybotCookiebotDialogFooter {
		padding: calc(var(--space-md) + 1vw);
	}

	#CybotCookiebotDialogBodyContent,
	#CybotCookiebotDialogDetailBodyContentTextAbout,
	#CybotCookiebotDialogFooter {
		max-width: 80ch;
		font-size: var(--font-size-md);
		line-height: 1.4;
	}

	#CybotCookiebotDialogFooter {
		background-color: rgb(var(--dialog-bkg-color));
	}

	.CybotCookiebotDialogDetailBodyContentCookieTypeIntro {
		max-width: 66ch;
		padding-left: 2.5em !important;
	}

	#CybotCookiebotDialogDetailFooter {
		padding-left: 1.125em !important;
	}

}


/* Cookie Banner */

#CybotCookiebotDialog.CybotEdge {
	font-size: var(--font-size-md);
	width: calc(100vw - (var(--dialog-edge-offset) * 2));
	min-width: calc(100vw - (var(--dialog-edge-offset) * 2));
	max-width: none;
	padding: calc(var(--dialog-edge-offset) + 1rem);

	#CybotCookiebotDialogBodyContent,
	#CybotCookiebotDialogTabContentDetails,
	#CybotCookiebotDialogDetailBodyContentTextAbout,
	#CybotCookiebotDialogFooter {
		max-width: none;
		padding: 0;
	}

	#CybotCookiebotDialogFooter {
		background-color: transparent;

		@media screen and (max-width: 1279px) {
			padding-top: var(--space-sm);
		}

	}

	#CybotCookiebotDialogBodyContentText {
		color: var(--grey-light);
	}

	@media screen and (min-width: 1280px) {

		&[data-template=bottom] {
			margin-top: calc(var(--dialog-edge-offset) * -1);
		}

	}

	.CybotCookiebotDialogContentWrapper {

		@media screen and (min-width: 1510px) {
			align-items: stretch;

			#CybotCookiebotDialogBodyButtons {
				height: 100%;

				#CybotCookiebotDialogBodyButtonsWrapper {
					height: 100%;
					justify-content: space-around;
				}

			}
		}

	}

	.CybotCookiebotDialogBodyBottomWrapper {
		padding-bottom: calc(var(--space-md) + var(--space-sm));

		@media screen and (min-width: 1280px) {
			align-items: center;
			justify-content: space-between;
		}

		@media screen and (min-width: 1510px) {
			max-width: 100ch;
			margin-top: 0;
			padding-right: 2vw;
		}

	}

	#CybotCookiebotDialogTabContent {
		margin-left: 0 !important;
	}

	#CybotCookiebotDialogHeader {
		margin-right: var(--space-md);
	}

	/* Details Button */
	#CybotCookiebotDialogBodyEdgeMoreDetails {
		height: auto;
		margin-right: var(--space-sm);
		padding-top: var(--space-xs);

		a {
			color: var(--white);

			&::after {
				border-color: var(--color-primary);
				transition: all .2s ease-in-out;
			}

			&:hover::after {
				border-color: var(--white);
				transform: translateX(1rem) rotate(45deg);
			}

		}

	}

}
