.cookie-container { position: fixed; top: 0; left: 0; width: 100%; height: 100%; z-index: 1000000; background: rgba(7, 27, 58, .7); display: flex; align-items: center; justify-content: center; }
.cookie-container * { box-sizing: border-box; }
.cookie-container>.cookie-bar-body { display: flex; flex-direction: column; gap: 20px; width: 785px; background: #fff; background-size: cover; border-radius: 5px; padding: 25px 45px 45px 45px; margin-bottom: 20px; box-sizing: border-box; }
.cookie-container>.cookie-bar-body p { font-size: 16px; color: #071B3A; line-height: 24px; padding: 0; text-align: center; margin: 0; }
.cookie-container>.cookie-bar-body a { color: #7BA7E3; font-size: 16px; font-weight: bold; text-decoration: underline; }
.cookie-container .cookie-info { display: flex; flex-direction: column; justify-content: center; align-items: center; }
.cookie-container .cookie-info-header { font-size: 24px; font-weight: 600; margin-bottom: 20px; }
.cookie-container .cookie-buttons { display: flex; align-items: center; justify-content: center; flex-wrap: wrap; gap: 10px; }
.cookie-container .cookie-buttons a { background: var(--mainColour); color: #fff; font-weight: bold; font-size: 17px; line-height: 60px; width: 150px; text-decoration: none; border-radius: 3px; display: flex; align-items: center; justify-content: center; }
.cookie-container .cookie-buttons a.cookies-settings { gap: 6px; }
.cookie-container .cookie-buttons a.cookies-settings::before { content: ""; height: 22px; width: 22px; background: url(../images/cookies/gear.svg) center no-repeat; }
@keyframes wiggle {
    0% { transform: rotate(0); }
    33% { transform: rotate(-3deg); }
    66% { transform: rotate(3deg); }
    100% { transform: rotate(0); }
}
.cookie-bar { width: 100%; height: 60px; display: flex; align-items: center; padding: 0 20px; position: fixed; z-index: 100000000; left: 0; bottom: 0; box-sizing: border-box; background: #fff; box-shadow: 0px -3px 8px #00000029; }
.cookie-bar>p { margin: 0 auto 0 0; padding: 0; font-size: 14px; }
.cookie-mini { position: fixed; z-index: 100000; bottom: 0; left: 0; width: 50px; height: 50px; border-radius: 0 50px 0 0; background: var(--mainColour) url(../images/cookies/cog-white.svg) no-repeat left 7px bottom 7px; box-shadow: 0px 0px 8px #00000029; background-size: 50%; }
.cookie-bar>a { border-radius: 4px; color: #fff; margin-right: 10px; background: var(--mainColour); width: 120px; height: 40px; display: flex; align-items: center; justify-content: center; border: 2px solid var(--mainColour); font-size: 16px; box-sizing: border-box; }
.cookie-bar a.cookies-settings { color: var(--mainColour); background: #fff; }
.cookie-bar a.cookies-settings:before { content: ''; width: 16px; height: 16px; margin-right: 10px; background: url(../images/cookies/cog-solid.svg) no-repeat center; background-size: contain; }
.cookie-window-overlay { position: absolute; top: 0; left: 0; right: 0; min-height: 100%; background: rgba(12, 35, 76, .5); z-index: 1000000001; display: none; }
.cookie-window-overlay.active { display: flex; }
.cookie-window { width: 0px; background: #fff; height: 100%; box-shadow: 3px -3px 8px rgba(0, 0, 0, 0.16); transition: all 0.3s ease-in-out; }
.cookie-window-overlay.active .cookie-window { width: 380px; }
.cookie-back { font-size: 14px; font-weight: bold; }
.cookie-header { background: var(--mainColour); border-bottom: 1px solid var(--mainColour); display: flex; position: relative; align-items: center; justify-content: center; height: 80px; }
.cookie-header img { max-height: 70px; max-width: 80%; }
.cookie-header a { display: block; width: 30px; height: 30px; background: url(../images/cookies/times-solid.svg) no-repeat center; background-size: 50%; position: absolute; top: 10px; right: 10px; }
.cookie-body { padding: 10px; }
.cookie-h1 { font-weight: bold; font-size: 20px; line-height: 40px; color: var(--mainColour); }
.cookie-body p { font-size: 13px; margin: 0; padding: 10px 10px 10px 0; line-height: 20px; }
.cookie-consent { margin: 5px 0 20px; }
.cookie-consent>div:nth-child(1) { display: flex; font-size: 16px; align-items: center; color: #071B3A; }
.cookie-consent>div:nth-child(1)>div:nth-child(2) { display: flex; align-items: center; color: #36AC88; margin-left: auto; }
.cookie-toggle { height: 24px; width: 44px; background: #e4e4e4; border-radius: 12px; padding: 2px; box-sizing: border-box; display: flex; align-items: center; justify-content: flex-end; transition: all 0.3s ease-in-out; cursor: pointer; border: 1px solid #c3c3c3; }
.cookie-toggle>div { width: 20px; height: 20px; border-radius: 50%; background: #c3c3c3; transition: all 0.3s ease-in-out; }
.cookie-toggle.active { justify-content: flex-start; background: #cbdaf5; border-color: #6188CE; }
.cookie-toggle.active>div { background: #6188CE; }
.cookie-actions { margin: 20px 0 0; display: flex; align-items: center; width: 100%; }
.cookie-actions a { height: 40px; display: flex; align-items: center; justify-content: center; flex: auto; margin: 0 5px; font-size: 16px; border-radius: 4px; }
.cookie-details { background: #F4F4F4; padding: 5px; margin: 5px 0; }
.cookie-details>div { display: flex; align-items: flex-start; color: #494A4C; font-size: 13px; line-height: 21px; }
.cookie-details>div>div:first-child { width: 90px; flex: 0 0 auto; }
.cookie-details>div>div:nth-child(2) { width: 0px; flex: auto; }
.cookie-loader { display: block; width: 64px; height: 64px; margin: 20px auto; }
.cookie-loader:after { content: " "; display: block; width: 26px; height: 26px; margin: 1px; border-radius: 50%; border: 5px solid #000; border-color: #000 transparent #000 transparent; animation: lds-dual-ring 1.2s linear infinite; }

@keyframes lds-dual-ring {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}
@media (min-width:768px) and (max-width:959px) {
    .cookie-bar { flex-wrap: wrap; justify-content: center; text-align: center; height: auto; padding: 10px; }
    .cookie-bar p { width: 100%; margin: 20px 0; }
    .cookie-window-overlay.active .cookie-window { width: 450px; }
    .cookie-container>.cookie-body { width: 600px; padding: 25px; }
}
@media (max-width:767px) {
    .cookie-bar { flex-wrap: wrap; justify-content: center; text-align: center; height: auto; padding: 10px; }
    .cookie-bar p { width: 100%; margin: 20px 0; }
    .cookie-window-overlay.active .cookie-window { width: 100%; }
    .cookie-container>.cookie-bar-body.active { background-image: url(../images/cookies/cookie-bg_mobile.svg); }
    .cookie-container>.cookie-bar-body { width: 310px; padding: 25px 10px; }
    .cookie-container>.cookie-bar-body p { font-size: 14px; }
    .cookie-container>.cookie-bar-body a { font-size: 14px; width: 100%; }
}
