/* Minification failed. Returning unminified contents.
(444,27): run-time error CSS1039: Token not allowed after unary operator: '-vh'
(2162,31): run-time error CSS1039: Token not allowed after unary operator: '-vh'
 */
.aptbox-container,.aptbox-thumbs,.aptbox-thumbs__list a{-webkit-tap-highlight-color:transparent}body.compensate-for-scrollbar{overflow:hidden}.aptbox-active{height:auto}.aptbox-is-hidden{left:-9999px;margin:0;position:absolute!important;top:-9999px;visibility:hidden}.aptbox-container{-webkit-backface-visibility:hidden;height:100%;left:0;outline:0;position:fixed;top:0;-ms-touch-action:manipulation;touch-action:manipulation;transform:translateZ(0);width:100%;z-index:99992}.aptbox-container *{box-sizing:border-box}.aptbox-bg,.aptbox-inner,.aptbox-outer,.aptbox-stage{bottom:0;left:0;position:absolute;right:0;top:0}.aptbox-outer{-webkit-overflow-scrolling:touch;overflow-y:auto}.aptbox-bg{background:#1e1e1e;opacity:0;transition-duration:inherit;transition-property:opacity;transition-timing-function:cubic-bezier(.47,0,.74,.71)}.aptbox-is-open .aptbox-bg{opacity:.9;transition-timing-function:cubic-bezier(.22,.61,.36,1)}.aptbox-caption,.aptbox-infobar,.aptbox-navigation .aptbox-button,.aptbox-toolbar{direction:ltr;opacity:0;position:absolute;transition:opacity .25s ease,visibility 0s ease .25s;visibility:hidden;z-index:99997}.aptbox-show-caption .aptbox-caption,.aptbox-show-infobar .aptbox-infobar,.aptbox-show-nav .aptbox-navigation .aptbox-button,.aptbox-show-toolbar .aptbox-toolbar{opacity:1;transition:opacity .25s ease 0s,visibility 0s ease 0s;visibility:visible}.aptbox-slide,.aptbox-slide--image .aptbox-content{transition-property:transform,opacity;-webkit-backface-visibility:hidden}.aptbox-infobar{color:#ccc;font-size:13px;-webkit-font-smoothing:subpixel-antialiased;height:44px;left:0;line-height:44px;min-width:44px;mix-blend-mode:difference;padding:0 10px;pointer-events:none;top:0;-webkit-touch-callout:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.aptbox-toolbar{right:0;top:0}.aptbox-stage{direction:ltr;overflow:visible;transform:translateZ(0);z-index:99994}.aptbox-is-open .aptbox-stage{overflow:hidden}.aptbox-slide{display:none;height:100%;left:0;outline:0;overflow:auto;-webkit-overflow-scrolling:touch;padding:44px;position:absolute;text-align:center;top:0;white-space:normal;width:100%;z-index:99994}.aptbox-slide::before{content:'';display:inline-block;font-size:0;height:100%;vertical-align:middle;width:0}.aptbox-is-sliding .aptbox-slide,.aptbox-slide--current,.aptbox-slide--next,.aptbox-slide--previous{display:block}.aptbox-slide--image{overflow:hidden;padding:44px 0}.aptbox-slide--image::before{display:none}.aptbox-slide--html{padding:6px}.aptbox-content{background:#fff;display:inline-block;margin:0;max-width:100%;overflow:auto;-webkit-overflow-scrolling:touch;padding:44px;position:relative;text-align:left;vertical-align:middle}.aptbox-image,.aptbox-slide--image .aptbox-content,.aptbox-spaceball{max-width:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;top:0;left:0}.aptbox-slide--image .aptbox-content{animation-timing-function:cubic-bezier(.5,0,.14,1);background:no-repeat;background-size:100% 100%;overflow:visible;padding:0;position:absolute;-ms-transform-origin:top left;transform-origin:top left;user-select:none;z-index:99995}.aptbox-can-zoomOut .aptbox-content{cursor:zoom-out}.aptbox-can-zoomIn .aptbox-content{cursor:zoom-in}.aptbox-can-pan .aptbox-content,.aptbox-can-swipe .aptbox-content{cursor:-webkit-grab;cursor:grab}.aptbox-is-grabbing .aptbox-content{cursor:-webkit-grabbing;cursor:grabbing}.aptbox-container [data-selectable=true]{cursor:text}.aptbox-image,.aptbox-spaceball{background:0 0;border:0;height:100%;margin:0;max-height:none;padding:0;position:absolute;user-select:none;width:100%}.aptbox-spaceball{z-index:1}.aptbox-slide--iframe .aptbox-content,.aptbox-slide--map .aptbox-content,.aptbox-slide--pdf .aptbox-content,.aptbox-slide--video .aptbox-content{height:100%;overflow:visible;padding:0;width:100%}.aptbox-slide--video .aptbox-content{background:#000}.aptbox-slide--map .aptbox-content{background:#e5e3df}.aptbox-slide--iframe .aptbox-content{background:#fff}.aptbox-iframe,.aptbox-video{background:0 0;border:0;display:block;height:100%!important;margin:0;overflow:hidden;padding:0;width:100%!important;max-width:none!important;max-height: none!important;}.aptbox-iframe{left:0;position:absolute;top:0}.aptbox-error{background:#fff;cursor:default;max-width:400px;padding:40px;width:100%}.aptbox-error p{color:#444;font-size:16px;line-height:20px;margin:0;padding:0}.aptbox-button{background:rgba(30,30,30,.6);border:0;border-radius:0;box-shadow:none;cursor:pointer;display:inline-block;height:44px;margin:0;padding:10px;position:relative;transition:color .2s;vertical-align:top;visibility:inherit;width:44px}.aptbox-button,.aptbox-button:link,.aptbox-button:visited{color:#ccc}.aptbox-button:hover{color:#fff}.aptbox-button:focus{outline:0}.aptbox-button.aptbox-focus{outline:dotted 1px}.aptbox-button[disabled],.aptbox-button[disabled]:hover{color:#888;cursor:default;outline:0}.aptbox-button div{height:100%}.aptbox-button svg{display:block;height:100%;overflow:visible;position:relative;width:100%}.aptbox-button--fsenter svg:nth-child(2),.aptbox-button--fsexit svg:nth-child(1),.aptbox-button--pause svg:nth-child(1),.aptbox-button--play svg:nth-child(2),.aptbox-is-scaling .aptbox-close-small,.aptbox-is-zoomable.aptbox-can-pan .aptbox-close-small{display:none}.aptbox-button svg path{fill:currentColor;stroke-width:0}.aptbox-progress{background:#ff5268;height:2px;left:0;position:absolute;right:0;top:0;-ms-transform:scaleX(0);transform:scaleX(0);-ms-transform-origin:0;transform-origin:0;transition-property:transform;transition-timing-function:linear;z-index:99998}.aptbox-close-small{background:0 0;border:0;border-radius:0;color:#ccc;cursor:pointer;opacity:.8;padding:8px;position:absolute;right:-12px;top:-44px;z-index:401}.aptbox-close-small:hover{color:#fff;opacity:1}.aptbox-slide--html .aptbox-close-small{color:currentColor;padding:10px;right:0;top:0}.aptbox-slide--image.aptbox-is-scaling .aptbox-content{overflow:hidden}.aptbox-navigation .aptbox-button{background-clip:content-box;height:100px;opacity:0;position:absolute;top:calc(50% - 50px);width:70px}.aptbox-navigation .aptbox-button div{padding:7px}.aptbox-navigation .aptbox-button--arrow_left{left:0;left:env(safe-area-inset-left);padding:31px 26px 31px 6px}.aptbox-navigation .aptbox-button--arrow_right{padding:31px 6px 31px 26px;right:0;right:env(safe-area-inset-right)}.aptbox-caption{background:linear-gradient(to top,rgba(0,0,0,.85) 0,rgba(0,0,0,.3) 50%,rgba(0,0,0,.15) 65%,rgba(0,0,0,.075) 75.5%,rgba(0,0,0,.037) 82.85%,rgba(0,0,0,.019) 88%,rgba(0,0,0,0) 100%);bottom:0;color:#eee;font-size:14px;font-weight:400;left:0;line-height:1.5;padding:75px 44px 25px;pointer-events:none;right:0;text-align:center;z-index:99996}@supports (padding:max(0px)){.aptbox-caption{padding:75px max(44px,env(safe-area-inset-right)) max(25px,env(safe-area-inset-bottom)) max(44px,env(safe-area-inset-left))}}.aptbox-caption--separate{margin-top:-50px}.aptbox-caption__body{max-height:50vh;overflow:auto;pointer-events:all}.aptbox-caption a,.aptbox-caption a:link,.aptbox-caption a:visited{color:#ccc;text-decoration:none}.aptbox-caption a:hover{color:#fff;text-decoration:underline}.aptbox-loading{animation:aptbox-rotate 1s linear infinite;background:0 0;border:4px solid #888;border-bottom-color:#fff;border-radius:50%;height:50px;left:50%;margin:-25px 0 0 -25px;opacity:.7;padding:0;position:absolute;top:50%;width:50px;z-index:99999}@keyframes aptbox-rotate{100%{transform:rotate(360deg)}}.aptbox-animated{transition-timing-function:cubic-bezier(0,0,.25,1)}.aptbox-fx-slide.aptbox-slide--previous{opacity:0;transform:translate3d(-100%,0,0)}.aptbox-fx-slide.aptbox-slide--next{opacity:0;transform:translate3d(100%,0,0)}.aptbox-fx-slide.aptbox-slide--current{opacity:1;transform:translate3d(0,0,0)}.aptbox-fx-fade.aptbox-slide--next,.aptbox-fx-fade.aptbox-slide--previous{opacity:0;transition-timing-function:cubic-bezier(.19,1,.22,1)}.aptbox-fx-fade.aptbox-slide--current{opacity:1}.aptbox-fx-zoom-in-out.aptbox-slide--previous{opacity:0;transform:scale3d(1.5,1.5,1.5)}.aptbox-fx-zoom-in-out.aptbox-slide--next{opacity:0;transform:scale3d(.5,.5,.5)}.aptbox-fx-zoom-in-out.aptbox-slide--current{opacity:1;transform:scale3d(1,1,1)}.aptbox-fx-rotate.aptbox-slide--previous{opacity:0;-ms-transform:rotate(-360deg);transform:rotate(-360deg)}.aptbox-fx-rotate.aptbox-slide--next{opacity:0;-ms-transform:rotate(360deg);transform:rotate(360deg)}.aptbox-fx-rotate.aptbox-slide--current{opacity:1;-ms-transform:rotate(0);transform:rotate(0)}.aptbox-fx-circular.aptbox-slide--previous{opacity:0;transform:scale3d(0,0,0) translate3d(-100%,0,0)}.aptbox-fx-circular.aptbox-slide--next{opacity:0;transform:scale3d(0,0,0) translate3d(100%,0,0)}.aptbox-fx-circular.aptbox-slide--current{opacity:1;transform:scale3d(1,1,1) translate3d(0,0,0)}.aptbox-fx-tube.aptbox-slide--previous{transform:translate3d(-100%,0,0) scale(.1) skew(-10deg)}.aptbox-fx-tube.aptbox-slide--next{transform:translate3d(100%,0,0) scale(.1) skew(10deg)}.aptbox-fx-tube.aptbox-slide--current{transform:translate3d(0,0,0) scale(1)}@media all and (max-height:576px){.aptbox-slide{padding-left:6px;padding-right:6px}.aptbox-slide--image{padding:6px 0}.aptbox-close-small{right:-6px}.aptbox-slide--image .aptbox-close-small{background:#4e4e4e;color:#f2f4f6;height:36px;opacity:1;padding:6px;right:0;top:0;width:36px}.aptbox-caption{padding-left:12px;padding-right:12px}@supports (padding:max(0px)){.aptbox-caption{padding-left:max(12px,env(safe-area-inset-left));padding-right:max(12px,env(safe-area-inset-right))}}}.aptbox-share{background:#f4f4f4;border-radius:3px;max-width:90%;padding:30px;text-align:center}.aptbox-share h1{color:#222;font-size:35px;font-weight:700;margin:0 0 20px}.aptbox-share p{margin:0;padding:0}.aptbox-share__button{border:0;border-radius:3px;display:inline-block;font-size:14px;font-weight:700;line-height:40px;margin:0 5px 10px;min-width:130px;padding:0 15px;text-decoration:none;transition:all .2s;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;white-space:nowrap}.aptbox-share__button:link,.aptbox-share__button:visited{color:#fff}.aptbox-share__button:hover{text-decoration:none}.aptbox-share__button--fb{background:#3b5998}.aptbox-share__button--fb:hover{background:#344e86}.aptbox-share__button--pt{background:#bd081d}.aptbox-share__button--pt:hover{background:#aa0719}.aptbox-share__button--tw{background:#1da1f2}.aptbox-share__button--tw:hover{background:#0d95e8}.aptbox-share__button svg{height:25px;margin-right:7px;position:relative;top:-1px;vertical-align:middle;width:25px}.aptbox-share__button svg path{fill:#fff}.aptbox-share__input{background:0 0;border:0;border-bottom:1px solid #d7d7d7;border-radius:0;color:#5d5b5b;font-size:14px;margin:10px 0 0;outline:0;padding:10px 15px;width:100%}.aptbox-thumbs{background:#ddd;bottom:0;display:none;margin:0;-webkit-overflow-scrolling:touch;-ms-overflow-style:-ms-autohiding-scrollbar;padding:2px 2px 4px;position:absolute;right:0;top:0;width:212px;z-index:99995}.aptbox-thumbs-x{overflow-x:auto;overflow-y:hidden}.aptbox-show-thumbs .aptbox-thumbs{display:block}.aptbox-show-thumbs .aptbox-inner{right:212px}.aptbox-thumbs__list{font-size:0;height:100%;list-style:none;margin:0;overflow-x:hidden;overflow-y:auto;padding:0;position:absolute;position:relative;white-space:nowrap;width:100%}.aptbox-thumbs-x .aptbox-thumbs__list{overflow:hidden}.aptbox-thumbs-y .aptbox-thumbs__list::-webkit-scrollbar{width:7px}.aptbox-thumbs-y .aptbox-thumbs__list::-webkit-scrollbar-track{background:#fff;border-radius:10px;box-shadow:inset 0 0 6px rgba(0,0,0,.3)}.aptbox-thumbs-y .aptbox-thumbs__list::-webkit-scrollbar-thumb{background:#2a2a2a;border-radius:10px}.aptbox-thumbs__list a{-webkit-backface-visibility:hidden;backface-visibility:hidden;background-color:rgba(0,0,0,.1);background-position:center center;background-repeat:no-repeat;background-size:cover;cursor:pointer;float:left;height:75px;margin:2px;max-height:calc(100% - 8px);max-width:calc(50% - 4px);outline:0;overflow:hidden;padding:0;position:relative;width:100px}.aptbox-thumbs__list a::before{border:6px solid #ff5268;bottom:0;content:'';left:0;opacity:0;position:absolute;right:0;top:0;transition:all .2s cubic-bezier(.25,.46,.45,.94);z-index:99991}.aptbox-thumbs__list a:focus::before{opacity:.5}.aptbox-thumbs__list a.aptbox-thumbs-active::before{opacity:1}@media all and (max-width:576px){.aptbox-thumbs{width:110px}.aptbox-show-thumbs .aptbox-inner{right:110px}.aptbox-thumbs__list a{max-width:calc(100% - 10px)}}
*{
	margin:0;
	padding:0;
	border:0;
	outline:none;
}

a{ 
	text-decoration: none; 
}

body {
	background-color:#ccc;
}

.sg-gallery{
	position: relative;
	z-index: 10;
    width: 100%;
    min-height: 300px;/* mainly for preloader space, otherwise not necessary */
}
.sg-playlist{
	position: relative;
	z-index: 9;
	opacity: 0;
	transition: opacity 350ms ease-out;
}
.sg-content{
	position: relative;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    overflow: hidden;
}
.sg-content-url{
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    margin:10px;
    overflow: hidden;
    background: #111;
}
.sg-centered{
	align-items: center;
    justify-content: center;
    display: flex;
}
.sg-slide{
    position: absolute;
    background: #fff;
    padding: 10px;
 	box-shadow: 1px 1px 5px #484848;
    box-sizing:content-box;
	transition-timing-function: ease;
    backface-visibility: hidden;
 	transition-property: transform;
 	overflow: hidden;
}
.sg-slide-duration{
    transition-duration: .5s;
}
.sg-slide-img{
    display: block;
    width: 100%;
    position: relative;
    backface-visibility: hidden;
    user-select: none;
    max-width: none!important;
    opacity: 1; 
    transition: opacity 300ms ease-out;
}
.sg-lazy-image {
    opacity: 0; 
    position: absolute;
}
.sg-blocker{
    position: absolute;
    top: 0;
    left:0;
    bottom:0;
    right:0;
    background: rgba(0,0,123,0);
    z-index: 99999999;
}


/* controls */
.sg-controls{
	z-index: 9999999;
    opacity: 0;
}

/* buttons */
.sg-button-controls{
	position:relative;
	display: flex;
	justify-content:space-between;
	flex-direction:row;
	width:115px;
	left:50%;
	top:0;
	margin-top: 20px;
	transform: translateX(-50%);
	z-index: 100;
	transition: opacity 350ms ease-out;
}
.sg-backward,
.sg-playback-toggle,
.sg-forward{
	position: relative;
	width:30px;	
	height:30px;
	cursor: pointer;
	border-radius: 100%;
	background: #111;
}
.sg-backward:hover,
.sg-playback-toggle:hover,
.sg-forward:hover{
	background: #9e9e9e;
}
.sg-backward img,
.sg-playback-toggle img,
.sg-forward img{
    display: block;
    position: absolute;
    left:50%;
    top:50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    user-select: none;
}


/* thumbs */
.sg-backward-thumb,
.sg-forward-thumb{
    position:absolute;
    top:0;
    height:100%;
    width:40px;
    cursor: pointer;
    display: none;
    background: rgba(255, 255, 255, 0);
}
.sg-backward-thumb img,
.sg-forward-thumb img{
    display: block;
    position: absolute;
    left:50%;
    top:50%;
    transform: translate(-50%, -50%);
    user-select: none;
}
.sg-backward-thumb{
    left:0;
}
.sg-forward-thumb{
    right:0;
}
.sg-thumb-controls{
    position: relative;
    max-width: 424px;
    width: 100%;
    height: 52px;
    left:50%;
    top:auto;
    transform: translateX(-50%);
    margin-top: 10px;
}
.sg-thumb-controls-inner{
    position:absolute;
    top: 0;
    bottom: 0;
    left: 40px;
    right: 40px;
    height:100%;
    width: auto;
    overflow: hidden;
}
.sg-thumb-controls-content{
    position:absolute;
    left: 0;
    height: 100%;
    transition:transform ease-in-out 0.3s;
}
.sg-thumb{
    float: left;
    overflow: hidden;
    cursor: pointer;
    border:3px solid rgba(0,0,0,0);
    box-sizing:border-box;
    width: 86px;
    height: 100%;
}
.sg-thumb:hover,
.sg-thumb-selected{
    border:3px solid rgba(114,142,253,1);
}
.sg-thumb-selected{
    cursor: default;
}
.sg-thumb img{
    display: block;
    width: 100%;
    min-height: 100%;
    max-width: none;
    background: rgba(229, 229, 229, 0.28);
}



/* bullets */
.sg-bullet-controls{
    position: relative;
    left:50%;
    transform: translateX(-50%);
    display: flex;
    flex-wrap:wrap;
    justify-content: center;
    margin-top: 20px;
}
.sg-bullet{
    cursor: pointer;
    width: 18px;
    height: 18px;
    border-radius: 100%;
    background:#ddd;
    margin: 10px;
    flex-shrink:0;
}
.sg-bullet:hover,
.sg-bullet-selected{
    background: #e24b70;
}
.sg-bullet-selected{
    cursor: default;
}
.sg-bullet-tooltip{
    position: absolute;
    z-index: 99999999;
    border: 2px solid #fff;
    box-sizing:border-box;
    box-shadow: 1px 1px 5px #999;
    display: none;
}
.sg-bullet-tooltip img{
    position: relative;
    display: block;
}




/* link, lightbox buttons */

.sg-slide-detail{
	position:absolute; 
	width:30px;
	right:20px;
	top:20px;
	display: flex;
    justify-content: space-between;
    flex-direction: column;
    max-height: 70px;
}
.sg-slide-detail a{
	position:relative; 
	display:block;
	width:30px;
	height:30px;
	left:0;
	top:0;
	border-radius: 100%;
	background: #ccc;
}
.sg-slide-detail a:nth-child(2){
    margin-top: 10px;
}
.sg-slide-detail a:hover{
	background: #9e9e9e;
}
.sg-slide-detail img{
	display: block;
	position: absolute;
	left:50%;
	top:50%;
	-webkit-transform: translate(-50%, -50%);
  	-ms-transform: translate(-50%, -50%);
  	transform: translate(-50%, -50%);
  	user-select: none;
}


/* loader */

.sg-loader {
	position:absolute;
	top:50%;
	left:50%;
    width: 40px;
    height: 40px;
    margin-left:-20px;
	margin-top:-20px;
    background-color: #03a9f4;
    -webkit-animation: sg_loader 1.2s infinite ease-in-out;
    animation: sg_loader 1.2s infinite ease-in-out;
}
@-webkit-keyframes sg_loader {
    0% { -webkit-transform: perspective(120px) }
    50% { -webkit-transform: perspective(120px) rotateY(180deg) }
    100% { -webkit-transform: perspective(120px) rotateY(180deg)  rotateX(180deg) }
}
@keyframes sg_loader {
    0% { 
	    transform: perspective(120px) rotateX(0deg) rotateY(0deg);
	    -webkit-transform: perspective(120px) rotateX(0deg) rotateY(0deg) 
    } 50% { 
	    transform: perspective(120px) rotateX(-180.1deg) rotateY(0deg);
	    -webkit-transform: perspective(120px) rotateX(-180.1deg) rotateY(0deg) 
    } 100% { 
	    transform: perspective(120px) rotateX(-180deg) rotateY(-179.9deg);
	    -webkit-transform: perspective(120px) rotateX(-180deg) rotateY(-179.9deg);
    }
}


/* captions */

.sg-caption{
	position: absolute;
    left: 0;
    bottom: 0;
    right: 0;
}
.sg-caption-left{
	position: relative;
	margin-bottom: 20px;
    padding: 5px;
    font-size:16px;
	float: left;
	clear: left;
	opacity: 0;
	left: -100px;
	margin-left: 20px;
	margin-right: 20px;
    transition: all 500ms ease-out;
    line-height: normal;
}
.sg-caption-left.sg-caption-shown{
	opacity: 1;
	left: 0;
}
.sg-c1{
	color: #E32636; 
	background-color: rgba(255, 255, 255, 0.9);
}
.sg-c2{
	color: #fff; 
	background-color: rgba(255, 0, 0, 0.9);
}
.sg-c3{
	color: #fff; 
	background-color: rgba(114, 142, 253, 0.8);
}
.sg-c4{
	color: #000; 
	background-color: rgba(255, 255, 255, 0.9);
}
.sg-c5{
	color: #fff; 
	background-color: rgba(204, 204, 153, 0.9);
}
.sg-c5 a{
	color: #fff; 
	text-decoration: underline;
}
.sg-c6{
	color: #fff; 
	background-color: rgba(30,144,255, 0.9);
}
.sg-c7{
	color: #fff; 
	background-color: rgba(60,179,113, 0.8);
}

.sg-caption-bottom{
    position: relative;
    left: 0;
    overflow: hidden;
    background: rgba(0,0,0,0.5);
    padding: 10px;
    opacity: 0;
    font-size:16px;
    transition: all 250ms ease-out;
    color:#e7e7e7;
    line-height: normal;
}
.sg-caption-bottom.sg-caption-shown{
    bottom:0!important; 
}
.sg-caption a{
    color: inherit;
}

@media only screen and (min-device-width: 480px){
    .sg-caption-left{
        font-size:20px;
        padding: 5px 12px;
    }
    .sg-caption-bottom{
        font-size:20px;
    }
}
@media only screen and (min-device-width: 768px){
    .sg-caption-left{
        font-size:23px;
        padding: 5px 20px;
    }
}





/* GENERIC */

body {
	background: #222020;
	color: #FFF;
}

/* HOME */

.home .wrapper {
	background:#EFEFEF;
	justify-content: flex-start;
    min-height: 100vh;
    min-height: calc(var(--vh, 1vh) * 100);
}

.home .top-content {
	width:100%;
	position:relative;
	background:#fff;
}

.home .top-content .key-visual {
	width:100%;
	position:relative;
	z-index:1;
	margin:27px 0 0 0;
}

.home .top-content .inner {
	width:100%;
	height:100%;
	position:absolute;
	top:0;
	left:0;
	z-index:2;
}

.home .top-content .date {
	height:40px;
	display:inline-flex;
	justify-content:center;
	align-items:center;
	padding:0 15px;
	background:#fff;
	color:#D0103A;
	font-size:20px;
}

.home .top-content h1 {
	text-align:left;
	margin:0 0 25px 6px;
	font-weight:normal;
}

.home .top-content h1 strong {
	color:#000;
	font-weight:normal;
}

.home .top-content p {
	font-size:30px;
	line-height:125%;
	margin:0;
}

.home .top-content a.cta {
	width:auto;
	align-self:center;
	margin:0 0 15px 0;
}

.home .pastille {
	width: 100px;
	height: 100px;
	display: inline-flex;
	flex-direction: column;
	justify-content:flex-start;
	padding:4.5% 0 0 0;
	align-items: center;
	border-radius: 50%;
	background: #00C1E7;
	text-align:center;
	position:absolute;
	right:15px;
	bottom:95px;
}

.home .pastille h2{
	font-size:20px;
	font-weight:700;
	line-height:100%;
	margin:0;
}

.home .pastille h2 span{
	font-size:15px;
}

.home .flag {
	width: 80px;
	height: 80px;
	position: absolute;
	top: 0;
	right: 0;
	z-index: 999;
	display: inline-block;
}

	.home .flag img {
		width: 100%;
	}

.home .fixed-cta-contest {
	position:fixed;
	top:50px;
	right:0;
	z-index:99;
	opacity:0;
	transition:all 0.2s linear;
	display:none;
}

/* SUBSCRIBE */
.account-page .wrapper,
.news-page .wrapper,
.winners-page .wrapper,
.calendar-page .wrapper {
	background-color: #222020;
	background-position: top center;
	background-repeat: no-repeat;
	background-size: 100% auto;
	justify-content: space-between;
}

.webp .account-page .wrapper,
.webp .news-page .wrapper,
.webp .winners-page .wrapper,
.webp .calendar-page .wrapper {
    background-image: url("/Content/img/bg-pages.webp");
}

.no-webp .account-page .wrapper,
.no-webp .news-page .wrapper,
.no-webp .winners-page .wrapper,
.no-webp .calendar-page .wrapper {
	background-image: url("/Content/img/bg-pages.jpg");
}

.home .content,
.account-page .content,
.news-page .content,
.winners-page .content,
.calendar-page .content {
	padding: 20px 0;
	flex-grow: 1;
	display: flex;
	flex-direction: column;
	justify-content: flex-start;
    position:relative;
    z-index:1;
}

.home .content {
	padding: 15px;
	justify-content: center;
}

.account-page  h1,
.news-page  h1,
.winners-page h1,
.calendar-page h1 {
    text-transform:none;
}

.account-page  h2,
.news-page  h2,
.winners-page h2,
.calendar-page h2 {
    color: #D0103A;
}

.news-page h3{
    color: #222020;
    font-weight:700;
    margin:15px 0 10px 0;
}

.winners-page h3{
    color: #222020;
    font-size:16px;
    margin:25px 0 10px 0;
}

.account-page .sep-small,
.news-page .sep-small,
.winners-page .sep-small,
.calendar-page .sep-small {
    margin: 0 0 10px 0;
}

.account-page .sep-big,
.news-page .sep-big,
.winners-page .sep-big,
.calendar-page .sep-big {
	margin: 0 0 20px 0;
}

.account-page p,
.news-page p,
.winners-page p,
.calendar-page p {
    color: #222020;
	line-height: 125%;
}

.winners-page p {
    color:#8BA0B5;
    font-style:italic;
}

.account-page form,
.account-page .white-container {
    width:100%;
	padding: 20px;
	background: #FFF;
}

form .form-group,
form .form-group.full {
	width: 100%;
	position: relative;
}

form .form-group.checkbox-wrap {
	width: auto;
}

form .form-group {
	margin: 0 0 20px 0;
}

.account-page  form .errorMessage.Password p {
	color: #C4C5C6;
	font-size:12px;
	line-height: 125%;
	margin: 10px 0 0 0;
	align-self: flex-start;
}

form label {
	font-weight: 700;
	font-size:16px;
	color: #222020;
	margin: 0 0 10px 0;
}

form label span{
	font-size: 12px;
}

form p.mandatory {
	font-weight: 700;
	font-size:16px;
	color: #222020;
}

form .form-control {
	-webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
	width: 100%;
	height: 40px;
	border:1px solid rgba(155,155,155,0.3);
	border-radius: 0px;
	background: #fff;
	color: #9B9B9B;
	font-size: 16px;
	padding: 0 15px;
	position: relative;
	z-index: 1;
	overflow: hidden;
}

.form-control:focus{
	outline:none;
	box-shadow: none;
	border:1px solid rgba(155,155,155,0.3);
}

.form-control::-moz-placeholder {
  	color: #C4C5C6;
  	opacity: 1;
}

.form-control:-ms-input-placeholder {
  	color: #C4C5C6;
}

.form-control::-webkit-input-placeholder {
	color: #C4C5C6;
}

form .input-container {
	width: 100%;
	overflow: hidden;
	position: relative;
	display: flex;
	align-items: center;
}

form .input-container .prefix {
    display:inline-flex;
    justify-content:center;
    align-items:center;
    height:40px;
    font-size: 16px;
    color: #9B9B9B;
    background:rgba(155,155,155,0.3);
    padding: 0 10px;
}

form .error .form-control {
	color: #D0113A;
	border: 2px solid #D11000;
}

form .error .input-container::after {
	font-family: "Font Awesome\ 5 Pro";
	font-weight: normal;
	content: "\f057";
	font-size: 18px;
	position: absolute;
    top:50%;
	transform: translateY(-50%);
	right:20px;
	color: #D0113A;
	align-self: center;
	z-index: 2;
}

form .error .form-control::-moz-placeholder {
	color: #D0113A;
  	opacity: 1;
}

form .error .form-control:-ms-input-placeholder {
	color: #D0113A;
}

form .error .form-control::-webkit-input-placeholder {
	color: #D0113A;
}

form .success .form-control {
	color: #222020;
}

form .success .input-container::after {
	font-family: "Font Awesome\ 5 Pro";
	font-weight: normal;
	content: "\f058";
	font-size: 20px;
	position: absolute;
    top:50%;
	transform: translateY(-50%);
	right:20px;
	color: #81C747;
	align-self: center;
	z-index: 2;
}

form .success .form-control::-moz-placeholder {
	color: #222020;
  	opacity: 1;
}

form .success .form-control:-ms-input-placeholder {
	color: #222020;
}

form .success .form-control::-webkit-input-placeholder {
	color: #222020;
}

form .checkbox-container {
    width:100%;
    overflow:hidden;
	display: flex;
	align-items: flex-start;
	justify-content: flex-start;
}

form input[type="checkbox"] {
    width:25px;
    height:25px;
}

.ez-hide { 
	opacity:0; 
	filter:alpha(opacity=0);
}

.ez-checkbox {
    background: transparent url('/Content/img/checkbox.jpg') 0 0 no-repeat;
    background-size:15px 30px;
    display:inline-block;
    float:left;
}

.ez-checked{ 
	background-position: 0 -15px;
}

.ez-checkbox { 
	zoom:1; 
	*display:inline;
	width:15px;
    height:15px;
    z-index:99;
    position:relative;
}

form label.checkbox {
	font-weight: 400;
	line-height:110%;
	margin:2px 0 0 5px;
	font-size:11px;
	display:inline-block;
	flex: 1;
	text-transform:none;
	float: left;
}

form .error label.checkbox {
    color:#D1103A;
}

form .success label.checkbox {
    color:#222020;
}

form label.checkbox a,
form a {
	color: #222020;
	text-decoration: underline;
}

form a.lost-password {
	font-size: 11px;
}

form label.checkbox a:hover,
form a:hover {
	color: #D1103A;
	text-decoration: underline;
}

form .error label.checkbox a {
	color: #D1103A;
	text-decoration: underline;
}

form .error label.checkbox a:hover {
	color: #D1103A;
	text-decoration: underline;
}

form .radios {
	display: flex;
	align-items: center;
	margin: 0;
}

form .radios label {
	font-weight: 400;
	width:auto;
    display: block;
    cursor: pointer;
    line-height: 25px;
    float: left;
    margin: 0 20px 0 0;
	padding: 0 0 0 40px;
	position: relative;
}

form .label-radio.checked {
    color:#222020;
}

form .error .radios .label-radio {
    color:#D1103A;
}

form .success .radios .label-radio {
    color:#222020;
}

form .label-radio .radio_image {
	position: absolute;
	left: 0;
    width: 25px;
	height: 25px;
    background:url(/Content/img/radio-button.png) no-repeat 0 0;
	background-size: 25px 50px;
}

form .label-radio.checked .radio_image {
    background-position: 0 -25px;
}

form .radios input {
	position: absolute;
    visibility: hidden;
}

form button[type=submit] {
	margin:0;
	align-self: center;
}

button[type=submit]:hover,
button[type=submit]:focus,
button[type=submit]:active {
    outline:none;
}

.subscribeForm button[type=submit],
.lostPasswordform button[type=submit] {
	margin: 10px 0 0 0;
}

.account-page a.cta {
    margin:20px 0 0 0;
}

form .errorValidation {
    display:none;
    width:100%;
    margin:20px 0 0 0;
}

form .errorValidation p {
    color: #D11000;
    font-weight: 400;
    margin:0;
}

form p.tips {
    color: #C4C5C6;
    margin:30px 0 0 0;
    font-size:12px;
	line-height: 125%;
} 

form p.tips a {
	color: #C4C5C6;
	text-decoration: underline;
}

form p.tips a:hover {
	color: #222020;
	text-decoration: underline;
}

form .sep {
	width: 100%;
	height: 1px;
	background: rgba(139,160,181,0.3);
	margin: 10px 0 30px 0;
}

.account-page .loginForm {
    margin: 15px 0 0 0;
}

.account-page .newAccount-container {
	width:100%;
	padding: 20px;
	background: #D0103A;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
}

.account-page .newAccount-container h2 {
	color: #FECB00;
}

.account-page .newAccount-container p {
	color: #fff;
}

.account-page .newAccount-container a.cta {
	align-self:flex-start;
}

.account-page .cta-delete {
    margin:10px 0 0 0;
}

.newAccount a.cta {
	align-self: flex-start;
	margin: 30px 0 0 0;
}

/* NEWS */

.news-page a.cta-back {
    height:40px;
    padding: 0 15px;
    font-size:16px;
    display:inline-flex;
    justify-content:center;
    align-items:center;
    background:#fff;
    color:#D0103A;
    font-weight:700;
}

.news-page a.cta-back i {
    margin: 0 10px 0 0;
}

.news-page a:hover.cta-back {
    background:#D0103A;
    color:#FFF;
}

.news-page .card {
	padding: 0;
	border-radius: 0;
	border: none;
	margin: 0 0 15px 0;
	flex-grow: 1;
	display: flex;
}

.news-page .card a {
	width: 100%;
	flex-grow: 1;
	display: flex;
}

.news-page .card .card-visu {
	width: 100%;
    height:auto;
	position: relative;
    overflow:hidden;
}

.news-page .card .card-visu img {
	width: 100%;
	position: relative;
	z-index: 1;
}

.news-page .date {
	align-self: flex-start;
	display: inline-flex;
	align-items: center;
	font-size: 16px;
	color: #FFF;
	height: 30px;
	background: #FECB00;
	padding: 0 8px;
}

.news-page .card .card-visu .date {
	position: absolute;
	left: 0;
	bottom: 0;
	z-index: 2;
}

.news-page .card .card-body{
	width: 55%;
	padding: 0;
	display: flex;
	flex-direction: column;
}

.news-page .card .card-body h2 {
	width: 100%;
	padding: 15px;
	font-size: 14px;
	color: #222020;
	margin: 0;
}

.news-page .card .card-body .cta {
	align-self: flex-start;
}

.news-page .card.contest {
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
}

.news-page .card.contest::before,
.news-page .card.contest::after{
    content: '';
    position: absolute;
    top: 0;
    right: 0;
	z-index: 3;
    border-color: transparent;
    border-style: solid;
}

.news-page .card.contest::before {
    border-width: 40px;
    border-right-color: #50BEE3;
    border-top-color: #50BEE3;
}

.news-page .card.contest::after {
	border-width: 19px;
	right: -13px;
    content: "CONCOURS";
    font-size: 9px;
    font-weight: 900;
    transform: rotate(45deg);
	color: #fff;
}

.news-page .card.contest.fr::after {
    content: "CONCOURS";
}

.news-page .card.contest.nl::after {
    content: "WEDSTRIJD";
}

.news-page .card.contest.detail {
	flex-grow: 0;
}

.news-page .card.contest .visu {
	width: 100%;
	height: 100%;
	position: absolute;
	top:0;
	left: 0;
	z-index: 1;
}

.news-page .card.contest img {
	width: 100%;
	position: relative;
	z-index: 1;
    align-self:flex-start;
}

.news-page .card.contest .cta {
	align-self: center;
	position: absolute;
	z-index: 2;
	left: 50%;
	bottom: 20px;
	transform: translateX(-50%);
}

.news-page .card .card-visu-mob {
	width: 45%;
}

.news-page .card .card-visu-mob img{
	width: 100%;
}

.news-page section.detail .visu {
	width: 100%;
	overflow: hidden;
	position: relative;
}

.news-page section.detail .visu img {
	width: 100%;
}

.news-page section.detail .date {
	color: #222020;
	background: #FFF;
}

.news-page section.detail .visu .title-container {
	width: 100%;
	position: absolute;
	bottom: 0;
	left: 0;
	display: flex;
	flex-direction: column;
}

.news-page section.detail .visu .title {
	align-self: flex-start;
	display: inline-flex;
	align-items: center;
	min-height: 40px;
	padding: 6px 8px;
	background: #FECB00;
	color: #FFF;
	font-size: 20px;
    line-height:125%;
}

.news-page section.detail .article {
	width: 100%;
	background: #FFF;
	padding: 20px;
	margin: 0 0 20px 0;
}

.news-page section.detail .article ul {
    width:100%;
    margin:0 0 20px 0;
}

.news-page section.detail .article ul li {
	width: 100%;
	color: #222020;
	font-size: 16px;
	line-height: 125%;
	padding: 2.5px 0 2.5px 15px;
	position: relative;
	display: inline-flex;
	flex-direction: column;
}

.news-page section.detail .article ul li:before {
	content: "\f105";
    font-family: "Font Awesome\ 5 Pro";
	position:absolute;
    left:0;
	align-self: center;
    font-size:12px;
}

.news-page section.detail .article .img-article {
	width: 100%;
	margin: 1rem 0 2rem 0;
}

.news-page p a {
    font-weight:bold;
    text-decoration:underline;
    color:#000;
}

.news-page p a:hover {
    color:#D0103A;
}

.responsive-video {
    overflow:hidden;
    padding-bottom:56.25%;
    position:relative;
    height:0;
	background: black;
	margin: 0 0 2rem 0;
}
.responsive-video iframe {
    left:0;
    top:0;
    height:100%;
    width:100%;
    position:absolute;
}

/* WINNERS */

.winners-page h1 {
	color: #000000;
	margin:0 0 20px 0;
}

.winners-page .content {
	padding:15px 0;
}

.winners-page .date {
	align-self: flex-start;
	display: inline-flex;
	align-items: center;
	font-size: 16px;
	line-height: 125%;
	color: #FFF;
	min-height: 30px;
	background: #FECB00;
	padding: 5px 8px;
}

.winners-page section.detail .visu {
	width: 100%;
	overflow: hidden;
	position: relative;
}

.winners-page section.detail .visu img {
	width: 100%;
}

.winners-page section.detail .visu .title-container {
	width: 100%;
	display: flex;
	flex-direction: column;
    margin:-30px 0 0 0;
}

.winners-page section.detail .visu .title {
	align-self: flex-start;
	display: inline-flex;
	align-items: center;
	min-height: 40px;
	padding: 6px 8px;
	background: #FECB00;
	color: #FFF;
	font-size: 20px;
    line-height:125%;
}

.winners-page section.detail .article {
	width: 100%;
	background: #FFF;
	padding: 20px;
	margin: 0 0 20px 0;
}

.winners-page section.detail .article p.last {
    margin:0;
}

.winners-page section.detail .article ul {
    width:100%;
    margin:0 0 20px 0;
}

.winners-page section.detail .article ul li {
	width: 100%;
	color: #222020;
	font-size: 16px;
	line-height: 125%;
	padding: 2.5px 0 2.5px 15px;
	position: relative;
	display: inline-flex;
	flex-direction: column;
}

.winners-page section.detail .article ul li:before {
	content: "\f105";
    font-family: "Font Awesome\ 5 Pro";
	position:absolute;
    left:0;
	align-self: center;
    font-size:12px;
}

.winners-page .card {
	padding: 0;
	border-radius: 0;
	border: none;
	margin: 0 0 15px 0;
	flex-grow: 1;
	display: flex;
}

.winners-page .card a {
	width: 100%;
	flex-grow: 1;
	display: flex;
}

.winners-page .card .card-visu {
	width: 100%;
	position: relative;
}

.winners-page .card .card-visu img {
	width: 100%;
	position: relative;
	z-index: 1;
}

.winners-page .card .card-body{
	width: 55%;
	padding: 0;
	display: flex;
	flex-direction: column;
}

.winners-page .card .card-body h2 {
	width: 100%;
	padding: 15px;
	font-size: 14px;
	color: #D0103A;
	margin: 0;
}

.winners-page .card .card-body .cta {
	align-self: flex-start;
}

.winners-page .card.contest {
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
}

.winners-page .card.contest::before,
.winners-page .card.contest::after{
    content: '';
    position: absolute;
    top: 0;
    right: 0;
	z-index: 3;
    border-color: transparent;
    border-style: solid;
}

.winners-page .card.contest::before {
    border-width: 40px;
    border-right-color: #50BEE3;
    border-top-color: #50BEE3;
}

.winners-page .card.contest::after {
	border-width: 19px;
	right: -13px;
    content: "CONCOURS";
    font-size: 9px;
    font-weight: 900;
    transform: rotate(45deg);
	color: #fff;
}

.winners-page .card.contest.fr::after {
    content: "CONCOURS";
}

.winners-page .card.contest.nl::after {
    content: "WEDSTRIJD";
}

.winners-page .card.contest.detail {
	flex-grow: 0;
}

.winners-page .card.contest .visu {
	width: 100%;
	height: 100%;
	position: absolute;
	top:0;
	left: 0;
	z-index: 1;
}

.winners-page .card.contest img {
	width: 100%;
	position: relative;
	z-index: 1;
    align-self:flex-start;
}

.winners-page .card.contest .cta {
	align-self: center;
	position: absolute;
	z-index: 2;
	left: 50%;
	bottom: 20px;
	transform: translateX(-50%);
}

.winners-page .card .card-visu-mob {
	width: 45%;
}

.winners-page .card .card-visu-mob img{
	width: 100%;
}

.winners-page section.detail .visu {
	width: 100%;
	overflow: hidden;
	position: relative;
}

.winners-page section.detail .visu img {
	width: 100%;
}

/* CALENDAR */

.calendar-page section.detail .article {
	width: 100%;
	background: #FFF;
	padding: 20px;
	margin: 0 0 20px 0;
}

.calendar-page .month-container {
    border-radius:0;
    border:none;
    margin:0 0 20px 0;
}

.calendar-page .month-container-header {
    border:none;
    background:#FECB00;
    border-radius:0;
    padding:8px 10px;
}

.calendar-page .month-container-header .btn {
    width:100%;
    border-radius:0;
    text-align:left;
    color:#D0103A;
    font-size:20px;
    display:flex;
    justify-content:space-between;
    align-items:center;
    text-decoration:none;
}

.calendar-page .month-container-header .btn:hover {
    text-decoration:none;
}

.calendar-page .month-container-header .btn span.arrow {
    width:30px;
    height:30px;
    border-radius:50%;
    display:inline-flex;
    flex-direction:column;
    justify-content:center;
    text-align:center;
    background:#fff;
    color: #D0103A;
    font-size:15px;
}

.calendar-page .month-container-header .btn span.arrow::after {
    content:"\f105";
    font-family: "Font Awesome\ 5 Pro";
	font-weight: bold;
}

.calendar-page .month-container-header .btn[aria-expanded="true"] span.arrow{
    padding:5px 0 0 0;
}

.calendar-page .month-container-header .btn[aria-expanded="true"] span.arrow::after{
    content:"\f107";
}

.calendar-page .month-container-body {
    padding:20px 0 0 0;
    display:flex;
    justify-content:space-between;
    flex-wrap:wrap;
}

.calendar-page .box {
    width:100%;
    border-top:1px solid rgba(139,160,181,0.3);
    padding:10px 0;
    display:flex;
    align-items:flex-start;
    justify-content:flex-start;
}

.calendar-page .box .picto {
    width:60px;
    height:72px;
    background:url(/Content/img/picto-calendar.png) no-repeat 0 0;
	background-size: 60px 72px;
    display:inline-flex;
    flex-direction:column;
    justify-content:space-between;
    text-align:center;
    padding:9px 0 0 0;
    font-weight:900;
}

.calendar-page .box .picto .month {
    font-size:12px;
}

.calendar-page .box .picto .day {
    font-size:20px;
    color:#222020;
    margin:0 0 12px 0;
}

.calendar-page .box .info {
    width:70%;
    color:#000;
    margin:0 0 0 20px;
    display:flex;
    flex-direction:column;
    justify-content:space-between;
}

.calendar-page .box .info .title {
    width:100%;
    display:flex;
    flex-direction:column;
    margin:0 0 10px 0;
    font-size:18px;
    color:#222020;
}

.calendar-page .box .info .title span {
    color:#8BA0B5;
    font-size:16px;
}

.calendar-page .box .info .country {
    color:#D0103A;
    font-size:18px;
}

.calendar-page .card {
	padding: 0;
	border-radius: 0;
	border: none;
	margin: 0 0 15px 0;
	flex-grow: 1;
	display: flex;
}

.calendar-page .card a {
	width: 100%;
	flex-grow: 1;
	display: flex;
}

.calendar-page .card .card-visu {
	width: 100%;
	position: relative;
}

.calendar-page .card .card-visu img {
	width: 100%;
	position: relative;
	z-index: 1;
}

.calendar-page .card .card-body{
	width: 55%;
	padding: 0;
	display: flex;
	flex-direction: column;
}

.calendar-page .card .card-body h2 {
	width: 100%;
	padding: 15px;
	font-size: 14px;
	color: #D0103A;
	margin: 0;
}

.calendar-page .card .card-body .cta {
	align-self: flex-start;
}

.calendar-page .card.contest {
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
}

.calendar-page .card.contest::before,
.calendar-page .card.contest::after{
    content: '';
    position: absolute;
    top: 0;
    right: 0;
	z-index: 3;
    border-color: transparent;
    border-style: solid;
}

.calendar-page .card.contest::before {
    border-width: 40px;
    border-right-color: #50BEE3;
    border-top-color: #50BEE3;
}

.calendar-page .card.contest::after {
	border-width: 19px;
	right: -13px;
    content: "CONCOURS";
    font-size: 9px;
    font-weight: 900;
    transform: rotate(45deg);
	color: #fff;
}

.calendar-page .card.contest.fr::after {
    content: "CONCOURS";
}

.calendar-page .card.contest.nl::after {
    content: "WEDSTRIJD";
}

.calendar-page .card.contest.detail {
	flex-grow: 0;
}

.calendar-page .card.contest .visu {
	width: 100%;
	height: 100%;
	position: absolute;
	top:0;
	left: 0;
	z-index: 1;
}

.calendar-page .card.contest img {
	width: 100%;
	position: relative;
	z-index: 1;
    align-self:flex-start;
}

.calendar-page .card.contest .cta {
	align-self: center;
	position: absolute;
	z-index: 2;
	left: 50%;
	bottom: 20px;
	transform: translateX(-50%);
}

.calendar-page .card .card-visu-mob {
	width: 45%;
}

.calendar-page .card .card-visu-mob img{
	width: 100%;
}

.calendar-page section.detail .visu {
	width: 100%;
	overflow: hidden;
	position: relative;
}

.calendar-page section.detail .visu img {
	width: 100%;
}

.calendar-page section.detail .visu .title {
	align-self: flex-start;
	display: inline-flex;
	align-items: center;
	min-height: 40px;
	padding: 6px 8px;
	background: #FECB00;
	color: #D0103A;
	font-size: 20px;
    line-height:125%;
}

/* MEDIA QUERIES */

@media (min-width: 375px) {

	.home .top-content .key-visual {
		margin: 33px 0 0 0;
	}
	
	.news-page .card .card-body h2 {
		padding: 20px;
		font-size: 16px;
	}

    .winners-page .card .card-body h2 {
		padding: 20px;
		font-size: 16px;
	}

    .calendar-page .card .card-body h2 {
		padding: 20px;
		font-size: 16px;
	}

    .calendar-page .box .info {
        width:60%;
        margin:0 0 0 30px;
    }
	
}

@media (min-width: 414px) {

	.home .top-content .key-visual {
		margin: 37px 0 0 0;
	}
	
}

@media (min-width: 576px) {
	
}

@media (min-width: 768px) {
	
	.home .content {
		padding: 30px;
		justify-content: center;
	}

	.home .top-content .key-visual {
		margin: 43px 0 0 0;
	}

	.home .top-content a.cta {
		margin:0 0 50px 0;
	}

	.home .pastille {
		width: 150px;
		height: 150px;
		right:0px;
		bottom:130px;
	}

	.home .pastille h2{
		font-size:30px;
	}

	.home .pastille h2 span{
		font-size:22px;
	}

    .home .sound-btn {
        position:absolute;
        top:30px;
        right:30px;
        z-index:2;
        background:rgba(34,32,32,0.3);
        width:40px;
        height:40px;
        border-radius:50%;
    }

    .home .sound-btn:hover {
        background:rgba(34,32,32,0.5);
    }
	
	.account-page .content,
	.news-page .content,
	.winners-page .content,
	.calendar-page .content {
		justify-content: center;
	}
	
	.account-page .sep-big,
	.news-page .sep-big,
	.winners-page .sep-big,
	.calendar-page .sep-big {
		margin: 0 0 30px 0;
	}
	
	.account-page form,
	.account-page .newAccount-container,
	.account-page .white-container {
		padding: 40px;
	}
	
	.account-page .newAccount-container {
		margin: 0;
	}
	
	.subscribeForm .form-group,
	.subscribeForm .checkbox-wrapper {
		width: calc(50% - 15px); 
	}
	
	.subscribeForm .form-group.full {
		width: 100%;
	}
	
	.ez-checkbox {
		background-size:25px 50px;
	}

	.ez-checked{ 
		background-position: 0 -25px;
	}

	.ez-checkbox { 
		width:25px;
		height:25px;
	}

	form label.checkbox {
		font-weight: 400;
		line-height:125%;
		margin:4px 0 0 15px;
		font-size:16px;
	}
	
	form a.lost-password {
		font-size: 16px;
	}
	
	.loginForm button[type=submit],
    .lostPasswordForm button[type=submit],
    .confirmAccountForm button[type=submit],
    .errorAccountForm button[type=submit],
    .resetPasswordForm button[type=submit],
    .sendValidationCodeForm button[type=submit] {
		margin: 10px 0 0 0;
	}

    .account-page .cta-delete {
        margin:10px 0 0 20px;
    }

	.news-page .card .visu {
        background-position:top center;
        background-repeat:no-repeat;
		background-size: 100% auto;
	}
	
	.news-page .card {
        min-height:300px;
		margin: 0 0 30px 0;
	}
	
	.news-page .card a {
		flex-direction: column;
	}
	
	.news-page .card .card-body{
		width: 100%;
		padding: 20px;
		flex-grow: 1;
		display: flex;
		flex-direction: column;
		justify-content: space-between;
	}

	.news-page .card .card-body h2 {
		padding: 0;
		margin: 0 0 20px 0;
	}
	
	.news-page .card.contest a {
		padding: 20px;
		justify-content: flex-end;
	}
	
	.news-page .card.contest.detail a {
		padding: 0;
	}
	
	.news-page .card.contest .cta {
		position: relative;
		left: 0;
		bottom: 0;
		transform: none;
	}
	
	.news-page .card.contest.detail .cta-container {
		width: 100%;
		position: absolute;
		z-index: 2;
		left: 0;
		bottom: 20px;
		display: flex;
		justify-content: center;
	}

	.news-page section.detail .article {
		padding: 30px;
		margin: 0 0 30px 0;
	}

	.winners-page .content {
		padding: 30px 0;
	}

    .winners-page section.detail .visu .title-container {
	    width: 100%;
	    position: absolute;
	    bottom: 0;
	    left: 0;
        margin:0;
    }

    .winners-page .card .visu {
        background-position:top center;
        background-repeat:no-repeat;
		background-size: cover;
	}
	
	.winners-page .card {
		margin: 0 0 30px 0;
	}
	
	.winners-page .card a {
		flex-direction: column;
	}
	
	.winners-page .card .card-body{
		width: 100%;
		padding: 20px;
		flex-grow: 1;
		display: flex;
		flex-direction: column;
		justify-content: space-between;
	}

	.winners-page .card .card-body h2 {
		padding: 0;
		margin: 0 0 20px 0;
	}
	
	.winners-page .card.contest a {
		padding: 20px;
		justify-content: flex-end;
	}
	
	.winners-page .card.contest.detail a {
		padding: 0;
	}
	
	.winners-page .card.contest .cta {
		position: relative;
		left: 0;
		bottom: 0;
		transform: none;
	}
	
	.winners-page .card.contest.detail .cta-container {
		width: 100%;
		position: absolute;
		z-index: 2;
		left: 0;
		bottom: 20px;
		display: flex;
		justify-content: center;
	}

    .winners-page section.detail .article {
		padding: 30px;
		margin: 0 0 30px 0;
	}

    .calendar-page section.detail .article {
		padding: 30px;
		margin: 0 0 30px 0;
	}

    .calendar-page .card .visu {
        background-position:top center;
        background-repeat:no-repeat;
		background-size: cover;
	}
	
	.calendar-page .card {
		margin: 0 0 30px 0;
	}
	
	.calendar-page .card a {
		flex-direction: column;
	}
	
	.calendar-page .card .card-body{
		width: 100%;
		padding: 20px;
		flex-grow: 1;
		display: flex;
		flex-direction: column;
		justify-content: space-between;
	}

	.calendar-page .card .card-body h2 {
		padding: 0;
		margin: 0 0 20px 0;
	}
	
	.calendar-page .card.contest a {
		padding: 20px;
		justify-content: flex-end;
	}
	
	.calendar-page .card.contest.detail a {
		padding: 0;
	}
	
	.calendar-page .card.contest .cta {
		position: relative;
		left: 0;
		bottom: 0;
		transform: none;
	}

    .calendar-page .card.contest.detail .cta-container {
		width: 100%;
		position: absolute;
		z-index: 2;
		left: 0;
		bottom: 20px;
		display: flex;
		justify-content: center;
	}

    .calendar-page .box .info {
        width:100%;
    }

}

@media (min-width: 992px) {
	
	body.home {
		position: relative;
	}

    .home .wrapper {
        height:auto;
        min-height: 100vh;
        min-height: calc(var(--vh, 1vh) * 100);
    }

	.home .top-content h1 {
		text-align: left;
		margin: 0 0 0 17px;
		font-weight: normal;
	}

	.home .top-content a.cta {
		margin:30px 0 0 0;
		align-self:flex-start;
	}

	.home .top-content .key-visual {
		margin:0;
	}

	.home .pastille {
		bottom: 30px;
		background: #D0103A;
	}
	
	.home .content,
	.account-page .content {
		padding: 30px;
	}
	
	.news-page .content,
    .winners-page .content,
    .calendar-page .content {
		padding: 30px 30px 0 30px;
	}
	
	.account-page form,
	.account-page .newAccount-container,
	.account-page .white-container{
		padding: 30px;
	}
	
	form .form-group {
		margin: 0 0 25px 0;
	}
	
	.loginForm .form-group,
    .confirmAccountForm .form-group,
    .resetPasswordForm .form-group,
	form .form-group.checkbox-wrap {
		width: calc(50% - 15px); 
	}
	
	form .radios {
		height: 40px;
	}
	
	.news-page .card .card-body{
		padding: 30px;
	}

	.news-page .card .card-body h2 {
		font-size: 18px;
		margin: 0 0 30px 0;
	}
	
	.news-page .card.contest a {
		padding: 30px;
	}
	
	.news-page .card.contest.detail a {
		padding: 0;
	}
	
	.news-page .card.contest.detail .cta-container {
		bottom: 30px;
	}

    .winners-page .card .card-body{
		padding: 30px;
	}

	.winners-page .card .card-body h2 {
		font-size: 18px;
		margin: 0 0 30px 0;
	}
	
	.winners-page .card.contest a {
		padding: 30px;
	}
	
	.winners-page .card.contest.detail a {
		padding: 0;
	}
	
	.winners-page .card.contest.detail .cta-container {
		bottom: 30px;
	}

    .calendar-page .card .card-body{
		padding: 30px;
	}

	.calendar-page .card .card-body h2 {
		font-size: 18px;
		margin: 0 0 30px 0;
	}
	
	.calendar-page .card.contest a {
		padding: 30px;
	}

    .calendar-page .card.contest.detail a {
		padding: 0;
	}
	
	.calendar-page .card.contest.detail .cta-container {
		bottom: 30px;
	}

    .calendar-page .month-container {
        margin:0 0 30px 0;
    }

    .calendar-page .box {
        width:calc(50% - 15px);
        padding:20px 0;
    }

    .calendar-page .box .info {
        width:60%;
        margin:0 0 0 20px;
    }
	
}

@media (min-width: 1200px) {

	.home .flag {
		width: 150px;
		height: 150px;
	}
	
}

@media (min-width: 1440px) {

	.home .top-content a.cta {
		margin: 40px 0 0 0;
	}

	.home .pastille {
		width: 200px;
		height: 200px;
		right: 0px;
		bottom: 50px;
	}

		.home .pastille h2 {
			font-size: 40px;
		}

			.home .pastille h2 span {
				font-size: 28px;
			}

    .home .sound-btn {
        position:absolute;
        top:30px;
        right:30px;
        font-size:20px;
        width:60px;
        height:60px;
    }
	
	.home .content,
	.account-page .content {
		padding: 50px;
	}
	
	.news-page .content,
    .winners-page .content,
	.calendar-page .content {
		padding: 50px 50px 0 50px;
	}
	
	.account-page .sep-small,
	.news-page .sep-small,
    .winners-page .sep-small,
    .calendar-page .sep-small {
		margin: 0 0 20px 0;
	}
	
	.account-page .sep-big,
	.news-page .sep-big,
    .winners-page .sep-big,
    .calendar-page .sep-big {
		margin: 0 0 40px 0;
	}

    .winners-page h3 {
        font-size:18px;
    }
	
	.account-page p,
	.news-page p,
	.winners-page p,
	.calendar-page p {
		font-size: 18px;
	}

    .account-page a.cta {
        margin:30px 0 0 0;
    }

	.account-page form,
	.account-page .newAccount-container,
    .account-page .white-container {
		padding: 60px;
	}
	
	form label {
		font-size:18px;
	}
	
	form p.mandatory {
		font-size:18px;
	}
	
	form .radios {
		height: 60px;
	}
	
	form .form-control {
		height: 60px;
		font-size: 18px;
		padding: 0 20px;
	}

	form .input-container .prefix {
		height:60px;
		font-size: 18px;
	}
	
	.subscribe .sep {
		margin: 30px 0 50px 0;
	}
	
	.loginForm button[type=submit],
    .lostPasswordForm button[type=submit],
    .confirmAccountForm button[type=submit],
    .errorAccountForm button[type=submit],
    .resetPasswordForm button[type=submit],
    .sendValidationCodeForm button[type=submit] {
		margin: 15px 0 0 0;
	}

    .account-page .cta-delete {
        margin:15px 0 0 20px;
    }

    .news-page .card {
        min-height:360px;
    }
	
	.news-page .date {
		font-size: 20px;
		height: 40px;
		padding: 0 10px;
	}
	
	.news-page .card .card-body h2 {
		font-size: 22px;
	}
	
	.news-page .card.contest::before {
		border-width: 50px;
	}

	.news-page .card.contest::after {
		border-width: 27px;
		right: -22px;
		font-size: 12px;
	}
	
	.news-page section.detail .visu .title {
		min-height: 60px;
		padding: 8px 10px;
		font-size: 30px;
	}

	.news-page section.detail .article {
		padding: 40px;
		margin: 0 0 50px 0;
	}

    .news-page section.detail .article ul li {
        font-size:18px;
    }

    .winners-page .date {
		font-size: 20px;
		height: 40px;
		padding: 0 10px;
	}
	
	.winners-page .card .card-body h2 {
		font-size: 20px;
	}
	
	.winners-page .card.contest::before {
		border-width: 50px;
	}

	.winners-page .card.contest::after {
		border-width: 27px;
		right: -22px;
		font-size: 12px;
	}

    .winners-page section.detail .visu .title {
		min-height: 60px;
		padding: 8px 10px;
		font-size: 30px;
	}

	.winners-page section.detail .article {
		padding: 40px;
		margin: 0 0 50px 0;
	}

    .winners-page section.detail .article ul li {
        font-size:18px;
    }

    .calendar-page section.detail .article {
		padding: 40px;
		margin: 0 0 50px 0;
	}

    .calendar-page .card .card-body h2 {
		font-size: 22px;
	}
	
	.calendar-page .card.contest::before {
		border-width: 50px;
	}

	.calendar-page .card.contest::after {
		border-width: 27px;
		right: -22px;
		font-size: 12px;
	}

    .calendar-page .month-container-header {
        padding:10px 20px;
    }

    .calendar-page .month-container-header .btn {
        font-size:30px;
    }

    .calendar-page .month-container-body {
        padding:50px 0 0 0;
    }

    .calendar-page .box {
        width: calc(50% - 25px);
    }

    .calendar-page .box .info {
        width:70%;
    }
	
}

@media (min-width: 1600px) {

    .home #sg-wrapper {
		max-width: 480px;
	}
	
	.news-page .card {
		margin: 0 0 50px 0;
	}

    .winners-page .card {
		margin: 0 0 50px 0;
	}

    .winners-page h2 {
		font-size: 25px;
	}

    .calendar-page .card {
		margin: 0 0 50px 0;
	}
	
}

@media (min-width: 1920px) {

	.home .top-content a.cta {
		margin: 50px 0 0 0;
	}

	.home .flag {
		width: 225px;
		height: 225px;
	}

	.home .pastille {
		width: 250px;
		height: 250px;
		right: 0px;
		bottom: 75px;
	}

		.home .pastille h2 {
			font-size: 50px;
		}

			.home .pastille h2 span {
				font-size: 35px;
			}

	.home .fixed-cta-contest {
		display:inline-block;
	}

	.home .sound-btn {
		position: absolute;
		top: 30px;
		right: 30px;
		font-size: 20px;
		width: 60px;
		height: 60px;
	}
	
	.home .content,
	.account-page .content {
		padding: 60px;
	}
	
	.news-page .content {
		padding: 60px 60px 0 60px;
	}
	
	.news-page section.detail .article {
		padding: 50px;
		margin: 0 0 60px 0;
	}

    .winners-page .content {
		padding: 60px 60px 0 60px;
	}

    .winners-page h2 {
		font-size: 30px;
	}
	
	.winners-page section.detail .article {
		padding: 40px 50px;
		margin: 0 0 60px 0;
	}

    .calendar-page .content {
		padding: 60px 60px 0 60px;
	}
	
	.calendar-page section.detail .article {
		padding: 50px;
		margin: 0 0 60px 0;
	}
	
}

@media (min-width: 992px) and (pointer: coarse) {
	
	.home .overlay-door .door {
        padding:30px 30px 105px 30px;
    }
	
}

#ei_cookie {
	position: fixed;
	left: 0;
	right: 0;
	top: 0;
	background-color: rgba(0,0,0,.65);
	padding: 0 0;
	font-size: 16px;
	z-index: 9999;
	min-height: 40px;
	color: #888;
	padding:20px;
}

.ei_cookie {
	height: 100%;
}

.ei_cookie__wrapper {
	display: flex;
	flex-direction: column;
	align-items: center;
	text-align: center;
	background-color: #fff;
	box-sizing: border-box;
	position: fixed;
	top: 50%;
	left: 50%;
	transform: translateX(-50%) translateY(-50%);
	width: calc(100% - 20px);
	max-width: 800px;
	max-height: 600px;
	margin: 0 auto;
	padding:20px;
}

@media screen and (min-width: 461px) {
	.ei_cookie__wrapper {
		background-position-y: 30px;
		padding: 56px;
	}
}

#ei_cookie p {
	padding: 0;
	font-size: 16px;
	max-width: 100%;
}

.ei_cookie__blocboutons {
	display: flex;
	align-items:center;
	margin-top: 24px;
}

#ei_cookie a:hover {
	color: #888;
	text-decoration: underline;
	opacity: 1;
}

#ei_cookie a {
	color: #888;
	font-weight: 600;
	text-decoration: underline;
	opacity: .9;
}
