/* ----------------------------------------------------------------------------------------------------------------------- */
/* Aces Cookie Notice ---------------------------------------------------------------------------------------------------- */
/* ----------------------------------------------------------------------------------------------------------------------- */
.aces-cookie-notice {
	align-items: center;
	background: #fff;
	bottom: -500px;
	box-shadow: 0 10px 30px rgba(0,0,0,0.35);
	box-sizing: border-box;
	display: flex;
	left: 0;
	max-height: 100vh;
	overflow-y: scroll;
	-webkit-overflow-scrolling: touch;
	padding: 30px;
	position: fixed;
	right: 0;
	transition: bottom 1s ease, visibility 0.3s ease;
	visibility: hidden;
	z-index: 1000;
}

body.show-aces-cookie-notice .aces-cookie-notice {
	bottom: 0;
	visibility: visible;
}

.aces-cookie-notice .col {

}

.aces-cookie-notice .col.first {

}

.aces-cookie-notice .col.last {
	padding-left: 50px;
}

.aces-cookie-notice .col.first h3 {
	font-weight: bold;
}

.aces-cookie-notice .col.first p {
	margin: 0;
}

.aces-cookie-notice .col.last .button {
	width: 200px;
	justify-content: center;
}

.aces-cookie-notice .col.last .button.primary {
	background: #d92632;
	border-color: #d92632;
	color: #fff;
	font-weight: bold;
}

.aces-cookie-notice .col.last .button.primary:hover {
	background: #a3141d;
}

.aces-cookie-notice .col.last .button:last-child {
	margin-top: 20px;
}

.aces-cookie-notice-settings {
	background: #fff;
	box-shadow: 0 10px rgba(0,0,0,0.5);
	box-sizing: border-box;
	left: 50%;
	height: 90vh;
	max-width: 90vw;
	opacity: 0;
	position: fixed;
	top: 50%;
	transform: translate(-50%,-50%);
	transition: opacity 0.75s linear, visibility 0.5s linear;
	visibility: hidden;
	width: 900px;
	z-index: 1001;
}

body.show-aces-cookie-settings:before {
	background: #000;
	bottom: 0;
	content: '';
	left: 0;
	opacity: .9;
	position: fixed;
	right: 0;
	top: 0;
	z-index: 1000;
}

body.show-aces-cookie-settings .aces-cookie-notice-settings {
	opacity: 1;
	transform: translate(-50%,-50%);
	visibility: visible;
}

.aces-cookie-notice-settings .heading-bar {
	align-items: flex-start;
	border-bottom: 1px solid #ccc;
	box-sizing: border-box;
	display: flex;
	flex-wrap: wrap;
	gap: 30px;
	height: 120px;
	justify-content: space-between;
	padding: 40px;
}

.aces-cookie-notice-settings .heading-bar h2 {
	max-width: calc(100% - 200px);
	margin: 0;
}

.aces-cookie-notice-settings .heading-bar .actions {
	margin-left: auto;
	display: flex;
	gap: 20px;
}

.aces-cookie-notice-settings .heading-bar .actions .button {
	background: #d92632;
	border-color: #d92632;
	color: #fff;
	margin: 0;
	font-weight: bold;
}

.aces-cookie-notice-settings .heading-bar .actions .button:hover {
	background: #a3141d;
}

.aces-cookie-notice-settings .heading-bar .actions .button.white {
	background: #fff;
	color: #d92632;
}

.aces-cookie-notice-settings .heading-bar .actions .button.white:hover {
	background: #d92632;
	color: #fff;
}

.aces-cookie-notice-settings .cookie-notice-middle-area {
    box-sizing: border-box;
    height: calc(100% - 120px);
    overflow-y: scroll;
    -webkit-overflow-scrolling: touch;
    padding: 40px;
    position: absolute;
    width: 100%;
    top: 120px;
}

.aces-cookie-notice-settings .cookies-selection-wrap {
	margin-bottom: 30px;
}

.aces-cookie-notice-settings .cookies-selection-wrap:last-child {
	margin: 0;
}

.aces-cookie-notice-settings .cookies-selection-wrap .subheading {

}

.aces-cookie-notice-settings .cookies-selection-wrap .subheading h3 {
	font-weight: bold;
}

.aces-cookie-notice-settings .cookies-selection-wrap > p {

}

.aces-cookie-notice-settings .cookies-selection-wrap .cookie-toggle-wrap {
	align-items: center;
	border: 1px solid #ccc;
	display: flex;
	margin: 0 0 20px 0;
	padding: 30px;
}

.aces-cookie-notice-settings .cookies-selection-wrap .cookie-toggle-wrap .cookie-desc {
	width: calc(100% - 100px);
}

.aces-cookie-notice-settings .cookies-selection-wrap .cookie-toggle-wrap .cookie-desc strong {

}

.aces-cookie-notice-settings .cookies-selection-wrap .cookie-toggle-wrap .toggle {
	text-align:right;
	width: 100px;
}

.aces-cookie-notice-settings .cookies-selection-wrap .cookie-toggle-wrap .toggle .toggle-switch {
	background: #808080;
	border-radius: 30px;
	display: inline-block;
	height: 30px;
	position: relative;
	text-align: center;
	width: 57px;
}

.aces-cookie-notice-settings .cookies-selection-wrap .cookie-toggle-wrap .toggle .toggle-switch:before {
	background: #fff;
	border-radius: 100%;
	content: '';
	height: 26px;
	left: 2px;
	position: absolute;
	transition: left 0.2s ease;
	top: 2px;
	width: 26px;
}

.aces-cookie-notice-settings .cookies-selection-wrap .cookie-toggle-wrap .toggle .toggle-switch:after {
	bottom: -25px;
	color: #333;
	content: 'OFF';
	font-size: 12px;
	left: 50%;
	position: absolute;
	text-transform: uppercase;
	transform: translateX(-50%);
}

.aces-cookie-notice-settings .cookies-selection-wrap .cookie-toggle-wrap .toggle .toggle-switch.on {
	background: #d92632;
}

.aces-cookie-notice-settings .cookies-selection-wrap .cookie-toggle-wrap .toggle .toggle-switch.on:before {
	left: 28px;
}

.aces-cookie-notice-settings .cookies-selection-wrap .cookie-toggle-wrap .toggle .toggle-switch.on:after {
	color: #d92632;
	content: 'ON';
}

.aces-cookie-notice-settings .cookies-selection-wrap .cookie-toggle-wrap .toggle .toggle-switch.off {

}

.aces-cookie-notice-settings .cookies-selection-wrap .cookie-toggle-wrap .toggle .toggle-switch.hover {

}

.aces-cookie-notice-settings .cookies-selection-wrap .cookie-toggle-wrap .toggle .toggle-switch.locked {
	cursor: not-allowed;
}

@media (max-width: 800px) {
	.aces-cookie-notice {
		display: block;
	}

	.aces-cookie-notice .col.first {
		border-bottom: 1px solid #ccc;
		margin-bottom: 20px;
		padding-bottom: 20px;
	}

	.aces-cookie-notice .col.last {
		padding-left: 0;
		text-align: center;
	}

	.aces-cookie-notice .col.last .button {
		box-sizing: border-box;
		width: calc(50% - 15px);
	}

	.aces-cookie-notice .col.last .button:first-child {
		margin-right: 20px;
	}

	.aces-cookie-notice .col.last .button:last-child {
		margin: 0;
	}

	.aces-cookie-notice-settings,
	body.show-aces-cookie-settings .aces-cookie-notice-settings {
		bottom: 0;
		height: auto;
		left: 0;
		max-width: 100vw;
		right: 0;
		top: 0;
		transform: none;
    }
    
    .aces-cookie-notice-settings .heading-bar {
        height: 155px;
        padding: 20px;
        text-align: center;
    }

    .aces-cookie-notice-settings .heading-bar h2 {
        float: none;
        font-size: 24px;
        font-weight: bold;
        max-width: none;
    }

    .aces-cookie-notice-settings .heading-bar .actions {
        float: none;
    }

	.aces-cookie-notice-settings .cookies-selection-wrap .cookie-toggle-wrap .cookie-desc {
		width: calc(100% - 70px);
    }
    
    .aces-cookie-notice-settings .cookie-notice-middle-area {
        height: calc(100% - 155px);
        padding: 20px;
        top: 155px;
    }
}