body {
    margin: 0;
    overflow-x: hidden;
}

#menuContainer {
	overflow: visible;
}

#headerContainer {
	z-index: 1999;
}

#headerContainer.bring-forward {
	z-index: 2001;
}

.menu-2019-menu-container {
	position: static;
}

.menu-2019-menu-container li.menu-item.poem-of-the-week {
    position: absolute;
    top: -85px;
    right: 0;
    width: 240px;
    font-size: 14px;
    padding: 0;
}

@media screen and (min-width: 1200px) {
	.menu-2019-menu-container li.menu-item.poem-of-the-week {
		right: 7.5%;
	} 
}

@media screen and (min-width: 1300px) {
	.menu-2019-menu-container li.menu-item.poem-of-the-week {
		right: 10%;
	} 
}

@media screen and (min-width: 1600px) {
	.menu-2019-menu-container li.menu-item.poem-of-the-week {
		right: 22.5%;
	} 
}

@media screen and (max-width: 640px) {
	.menu-2019-menu-container li.menu-item.poem-of-the-week {
		display: none;
	}
}


.menu-2019-menu-container li.menu-item.poem-of-the-week.hide {
	display: none !important;
}

.menu-2019-menu-container li.menu-item.poem-of-the-week h3 {
	font-size: 16px;
}

.menu-2019-menu-container li.menu-item.poem-of-the-week img {
	height: 11px;
}

.menu-2019-menu-container li.menu-item.poem-of-the-week span strong {
	font-size: 14px;
}

.advent-banner {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 40px;
	background-image: url(./assets/homepage_background.jpg);
	background-repeat: repeat-x;
	background-size: auto 100%;
	background-position: center;
	height: 540px;
	flex-direction: column;
	color: #ffffff;
	text-align: center;
}

.advent-banner:hover {
	text-decoration: none;
}

.advent-banner h2 {
	font-family: 'Sacramento', cursive;
	font-weight: 400;
	font-size: 110px;
	line-height: 120px;
	margin-top: 20px;
	position: relative;
	animation: topDrop 1.4s ease-out;
}

.advent-banner p {
	position: relative;
	animation: topDrop 1s ease-out;
	font-size: 16px;
}

.advent-banner .snowmen {
	position: absolute;
	bottom: -50px;
	left: 0;
	width: 80%;
	min-width: 768px;
	max-width: 1400px;
	animation: enterSnowman 1s ease-out;
}

.section-banner.advent-variant {
	position: relative;
	max-width: 1200px;
	margin: 0 auto;
	display: block;
}

.section-banner.advent-variant .holder-links {
	width: 420px;
	position: absolute;
	right: 20px;
	z-index: 2000;
	top: -170px;
	box-shadow: 1px 1px 15px rgba(0,0,0,0.4);
}

@media screen and (max-width: 768px) {
	.advent-banner h2 {
	    font-size: 64px;
	    line-height: 64px;
	    margin-top: 60px;
	}

	.section-banner.advent-variant {
		margin-bottom: 20px;
	}
	
	.section-banner.advent-variant .holder-links {
		width: 260px;
		left: 50%;
		right: auto;
		transform: translateX(-50%);
	}
	
	.advent-banner .snowmen {
		display: none;
	}
}

@keyframes topDrop {
	0% {
		top: -100px;
		opacity: 0;
	}
	
	100% {
		top: 0;
		opacity: 1;
	}
}

@keyframes enterSnowman {
	0% {
		opacity: 0;
		transform: scale(0.7);
		bottom: -120px;
		left: -40px;
	}
	
	100% {
		opacity: 1;
		transform: scale(1);
		bottom: -50px;
		left: 0px;
	}
}

.advent-audio-toggle {
	max-width: 1024px;
	padding-right: 100px;
	margin: 0 auto;
	display: flex;
	justify-content: flex-end;	
}

.advent-audio-toggle em {
	cursor: pointer;
	text-decoration: underline;
	font-style: normal;
	display: block;
	padding-left: 20px;
	background-repeat: no-repeat;
	background-position: left;
	background-size: 16px;
}

.advent-audio-toggle em.on {
	background-image: url(./assets/sound-on.png);
}

.advent-audio-toggle em.off {
	background-image: url(./assets/sound-off.png);
}

#advent-calendar {
    background-image: url(./assets/advent_background.svg);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center 90px;
    width: 100%;
    min-height: 100vh;
    padding-bottom: 100px;
}

#advent-calendar .background-hide {
    background-color: rgba(0,0,0,0.75);
    width: 100vw;
    height: 100vh;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 5500;
    opacity: 0;
    display: none;
    transition: opacity 0.4s linear;
}

#advent-calendar > div {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
}

#advent-calendar .star img {
    width: 84px;
}

#advent-calendar .tree .item {
    background-color: #121212;
    box-shadow: 5px 5px 5px rgba(0,0,0,0.75);
    margin: 4px;
    position: relative;
    width: 136px;
    height: 124px;
    cursor: not-allowed;
}

#advent-calendar .tree .item.openable {
    cursor: pointer;
}

#advent-calendar .tree .advent-divider {
    width: 100%;
}

#advent-calendar .tree .item .door {
    position: absolute;
    top: 0;
    width: 50%;
    height: 100%;
    display: block;
    background-size: 200%;
    transition: all 0.4s linear;
    -webkit-transition: all 0.4s linear;
    -moz-transition: all 0.4s linear;
    transform:  rotateX(0) rotateY(0) rotateZ(0) translateZ(0) skewX(0);
    -webkit-transform:  rotateX(0) rotateY(0) rotateZ(0) translateZ(0) skewX(0);
    -moz-transform:  rotateX(0) rotateY(0) rotateZ(0) translateZ(0) skewX(0);
    border-bottom: solid 1px #121212;
}

#advent-calendar .tree .item .door:after {
    content: ' ';
    position: absolute;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    border: solid 1px #121212;
    background-color: #ffffff;
    transform: rotateY(180deg);
    -webkit-transform: rotateY(180deg);
    -moz-transform: rotateY(180deg);
    backface-visibility: hidden;
    -webkit-backface-visibility: hidden;
    -moz-backface-visibility: hidden;
    transition: all 0.2s linear;
    -webkit-transition: all 0.2s linear;
    -moz-transition: all 0.2s linear;
    box-shadow: 2px 2px 2px rgba(0,0,0,0.25);
}

#advent-calendar .tree .item .door.left-door { 
    left: 0;
    transform-origin: top left;
}

#advent-calendar .tree .item .door.left-door:after {
    background-position: top left;
    transform-origin: top left;
    -webkit-transform-origin: top left;
    -moz-transform-origin: top left;
}

#advent-calendar .tree .item .door.right-door { 
    right: 0;
    background-position: top right;
    transform-origin: top right;
    -webkit-transform-origin: top right;
    -moz-transform-origin: top right;
}

#advent-calendar .tree .item .door.right-door:after {
    transform-origin: top left;
    -webkit-transform-origin: top left;
    -moz-transform-origin: top left;
}

#advent-calendar .tree .item.openable.visited:hover .door {
    transition: all 0.2s linear;
    -webkit-transition: all 0.2s linear;
    -moz-transition: all 0.2s linear;
}

#advent-calendar .tree .item.openable.visited.open:hover .door {
    transition: all 0.4s linear;
    -webkit-transition: all 0.4s linear;
    -moz-transition: all 0.4s linear;
}

#advent-calendar .tree .item.openable.visited .left-door {
    transform: rotateY(15deg) rotateZ(12deg) translateZ(0px) skewX(13deg) translateX(-2px);
    -webkit-transform: rotateY(15deg) rotateZ(12deg) translateZ(0px) skewX(13deg) translateX(-2px);
    -moz-transform: rotateY(15deg) rotateZ(12deg) translateZ(0px) skewX(13deg) translateX(-2px);
}

#advent-calendar .tree .item.openable:hover .left-door {
    transform: rotateY(20deg) rotateZ(12deg) translateZ(0px) skewX(13deg) translateX(-2px);
    -webkit-transform: rotateY(20deg) rotateZ(12deg) translateZ(0px) skewX(13deg) translateX(-2px);
    -moz-transform: rotateY(20deg) rotateZ(12deg) translateZ(0px) skewX(13deg) translateX(-2px);
}

#advent-calendar .tree .item.openable.visited .right-door {
    transform: rotateY(15deg) rotateZ(-12deg) translateZ(0px) skewX(-13deg) translateX(2px);
    -webkit-transform: rotateY(15deg) rotateZ(-12deg) translateZ(0px) skewX(-13deg) translateX(2px);
    -moz-transform: rotateY(15deg) rotateZ(-12deg) translateZ(0px) skewX(-13deg) translateX(2px);
}

#advent-calendar .tree .item.openable:hover .right-door {
    transform: rotateY(20deg) rotateZ(-12deg) translateZ(0px) skewX(-13deg) translateX(2px);
    -webkit-transform: rotateY(20deg) rotateZ(-12deg) translateZ(0px) skewX(-13deg) translateX(2px);
    -moz-transform: rotateY(20deg) rotateZ(-12deg) translateZ(0px) skewX(-13deg) translateX(2px);
}

#advent-calendar .tree .item.openable.open .door:after {
    transform: rotateY(0deg);
    -webkit-transform: rotateY(0deg);
    -moz-transform: rotateY(0deg);
}

#advent-calendar .tree .item.openable.open .left-door {
    transform: rotateY(180deg) rotateZ(12deg) translateZ(0px) skewX(13deg) translateX(-2px);
    -webkit-transform: rotateY(180deg) rotateZ(12deg) translateZ(0px) skewX(13deg) translateX(-2px);
    -moz-transform: rotateY(180deg) rotateZ(12deg) translateZ(0px) skewX(13deg) translateX(-2px);
}

#advent-calendar .tree .item.openable.open .right-door {
    transform: rotateY(180deg) rotateZ(-12deg) translateZ(0px) skewX(-13deg) translateX(2px);
    -webkit-transform: rotateY(180deg) rotateZ(-12deg) translateZ(0px) skewX(-13deg) translateX(2px);
    -moz-transform: rotateY(180deg) rotateZ(-12deg) translateZ(0px) skewX(-13deg) translateX(2px);
}

#advent-calendar .tree .item.openable.open.focused {
    z-index: 5000 !important;
}

#advent-calendar .text-panel {
    height: 100%;
    background-image: url(./assets/text-panel.jpg);
    width: 100%;
    background-size: cover;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: opacity 0.4s linear;
    -webkit-transition: opacity 0.4s linear;
    -moz-transition: opacity 0.4s linear;
}

#advent-calendar .text-panel p {
    font-family: 'Pacifico', cursive;
    color: #ffffff;
    font-size: 5px;
    line-height: 8px;
    text-align: center;
    max-width: 96px;
    transition: transform 0.4s linear;
    -webkit-transition: transform 0.4s linear;
    -moz-transition: transform 0.4s linear;
}

.advent-text-box {
    background-image: url(./assets/text-panel.jpg);
    background-size: cover;
    width: 100%;
    min-height: 360px;
    align-items: center;
    justify-content: center;
    display: flex;
}

.advent-text-box p {
    font-family: 'Pacifico', cursive;
    color: #ffffff;
    font-size: 36px;
    line-height: 48px;
    text-align: center;
    width: 90%;
}


#advent-calendar .tree .item .text-panel {
    opacity: 0.5;
}

#advent-calendar .tree .item.open .text-panel {
    opacity: 1;
}

#advent-calendar .zooming-panel {
    display: none;
    width: 136px;
    height: 124px;
}

#advent-calendar .zooming-panel.zooming {
    display: block;
    position: fixed;
    transition: left 0.4s ease-out, top 0.4s ease-out, width 0.4s ease-out, height 0.4s ease-out;
    -webkit-transition: left 0.4s ease-out, top 0.4s ease-out, width 0.4s ease-out, height 0.4s ease-out;
    -moz-transition: left 0.4s ease-out, top 0.4s ease-out, width 0.4s ease-out, height 0.4s ease-out;
}

#advent-calendar .snow {
    position: absolute;
    top: 120px;
    z-index: 6000;
}

.snowflake {
    position: relative;
    background-color: white;
    background-size: 100%;
    border-radius: 50px;
    animation: fallingSnow;
    -webkit-animation: fallingSnow;
    -moz-animation: fallingSnow;
    animation-iteration-count: infinite;
    -webkit-animation-iteration-count: infinite;
    -moz-animation-iteration-count: infinite;
    animation-timing-function: linear;
    -webkit-animation-timing-function: linear;
    -moz-animation-timing-function: linear;
}

.confetti.snowflake-confetti.style-1,
.snowflake.style-1 {
    background-color: transparent;
    background-image: url("data:image/svg+xml;base64,PHN2ZyBoZWlnaHQ9JzMwMHB4JyB3aWR0aD0nMzAwcHgnICBmaWxsPSIjRkZGRkZGIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB2ZXJzaW9uPSIxLjEiIHg9IjBweCIgeT0iMHB4IiB2aWV3Qm94PSIwIDAgNTIgNTIiIGVuYWJsZS1iYWNrZ3JvdW5kPSJuZXcgMCAwIDUyIDUyIiB4bWw6c3BhY2U9InByZXNlcnZlIj48cGF0aCBkPSJNNDYuNCwzMy45Yy0wLjUtMC4zLTEuMS0wLjUtMS43LTAuNWMtMC45LDAtMS43LDAuMy0yLjMsMC45bC01LjItM2MwLDAsMCwwLDAsMGwtMC40LTAuMmw0LjEtMS4xYzAuNS0wLjEsMC45LTAuNywwLjctMS4yICBzLTAuNy0wLjktMS4yLTAuN2wtNC41LDEuMmwxLjYtMi44YzAuMi0wLjMsMC4yLTAuNywwLTFsLTIuMi0zLjdsMS41LTAuOWw2LDEuNmMwLjEsMCwwLjIsMCwwLjMsMGMwLjQsMCwwLjgtMC4zLDEtMC43ICBjMC4xLTAuNS0wLjItMS4xLTAuNy0xLjJsLTQuMS0xLjFsMy4yLTEuOGMyLjgsMi42LDcuMS0wLjksNS4yLTQuMmMtMC42LTEtMS43LTEuNy0yLjktMS43Yy0xLjUsMC0yLjgsMS0zLjIsMi41ICBjLTAuMSwwLjUtMC4xLDEuMSwwLDEuNmwtNS4yLDNjMCwwLTAuMSwwLTAuMSwwbC0wLjQsMC4ybDEuMS00LjFjMC4xLTAuNS0wLjItMS4xLTAuNy0xLjJjLTAuNS0wLjEtMS4xLDAuMi0xLjIsMC43bC0xLjIsNC41ICBsLTEuNi0yLjhjLTAuMi0wLjMtMC41LTAuNS0wLjktMC41SDI3di0xLjdsNC40LTQuNGMwLjQtMC40LDAuNC0xLDAtMS40cy0xLTAuNC0xLjQsMGwtMywzVjcuNmMxLjQtMC40LDIuNC0xLjcsMi40LTMuMiAgQzI5LjMsMi41LDI3LjgsMSwyNiwxcy0zLjQsMS41LTMuNCwzLjRjMCwxLjUsMSwyLjgsMi40LDMuMnY2LjFjMCwwLDAsMCwwLDB2MC40bC0zLTNjLTAuNC0wLjQtMS0wLjQtMS40LDBzLTAuNCwxLDAsMS40bDMuMywzLjMgIGgtMy4yYy0wLjQsMC0wLjcsMC4yLTAuOSwwLjVMMTcuNywyMGwtMS41LTAuOWwtMS42LTZjLTAuMS0wLjUtMC43LTAuOS0xLjItMC43Yy0wLjUsMC4xLTAuOSwwLjctMC43LDEuMmwxLjEsNC4xbC0zLjItMS44ICBjMC4zLTEuNC0wLjMtMi45LTEuNi0zLjZjLTEuNi0wLjktMy43LTAuNC00LjYsMS4yYy0wLjksMS42LTAuNCwzLjcsMS4yLDQuNmMxLjMsMC43LDIuOSwwLjYsNC0wLjRsNS42LDMuM0wxMS4xLDIyICBjLTAuNSwwLjEtMC45LDAuNy0wLjcsMS4yYzAuMSwwLjUsMC43LDAuOSwxLjIsMC43bDQuNS0xLjJsLTEuNiwyLjhjLTAuMiwwLjMtMC4yLDAuNywwLDFsMi4yLDMuN2wtMS41LDAuOWwtNi0xLjYgIGMtMC41LTAuMS0xLjEsMC4yLTEuMiwwLjdjLTAuMSwwLjUsMC4yLDEuMSwwLjcsMS4ybDQuMSwxLjFsLTMuMiwxLjhjLTEuMS0xLTIuNy0xLjItNC0wLjRjLTEuNiwwLjktMi4yLDMtMS4yLDQuNiAgYzAuNiwxLDEuNywxLjcsMi45LDEuN2MwLjYsMCwxLjItMC4yLDEuNy0wLjVjMS4zLTAuOCwxLjktMi4yLDEuNi0zLjZsNS42LTMuM2wtMS4xLDQuMWMtMC4xLDAuNSwwLjIsMS4xLDAuNywxLjIgIGMwLjUsMC4xLDEuMS0wLjIsMS4yLTAuN2wxLjItNC41bDEuNiwyLjhjMC4yLDAuMywwLjUsMC41LDAuOSwwLjVIMjV2MS43bC00LjQsNC40Yy0wLjQsMC40LTAuNCwxLDAsMS40YzAuNCwwLjQsMSwwLjQsMS40LDBsMy0zICB2My43Yy0xLjQsMC40LTIuNCwxLjctMi40LDMuMmMwLDEuOSwxLjUsMy40LDMuNCwzLjRzMy40LTEuNSwzLjQtMy40YzAtMS41LTEtMi44LTIuNC0zLjJjMC0xLjUsMC0zLjEsMC02LjVsMywzICBjMC40LDAuNCwxLDAuNCwxLjQsMGMwLjQtMC40LDAuNC0xLDAtMS40bC0zLjMtMy4zaDMuMmMwLjQsMCwwLjctMC4yLDAuOS0wLjVsMi4yLTMuN2wxLjUsMC45bDEuNiw2YzAuMSwwLjUsMC43LDAuOSwxLjIsMC43ICBjMC41LTAuMSwwLjktMC43LDAuNy0xLjJsLTEuMS00LjFsMy4yLDEuOGMtMC4zLDEuNCwwLjMsMi45LDEuNiwzLjZDNDYuOSw0Miw1MC4zLDM2LjEsNDYuNCwzMy45eiBNMzUuNSwyNmwtMS45LDMuMmwtMS43LTFsMS0xLjcgIGMwLjItMC4zLDAuMi0wLjcsMC0xbC0xLTEuN2wxLjctMUwzNS41LDI2eiBNMjMuNiwzMC4yTDIxLjEsMjZsMi40LTQuMmg0LjlsMi40LDQuMmwtMi40LDQuMkgyMy42eiBNNDMuNCwxNC44YzAuMi0wLjYsMC43LTEsMS4zLTEgIGMwLjUsMCwwLjksMC4zLDEuMiwwLjdjMC45LDEuNi0xLjUsMi45LTIuNCwxLjRDNDMuNCwxNS41LDQzLjMsMTUuMiw0My40LDE0Ljh6IE0zMC43LDE3LjhsMS45LDMuMmwtMS43LDFsLTEtMS43ICBjLTAuMi0wLjMtMC41LTAuNS0wLjktMC41aC0ydi0ySDMwLjd6IE0yNiwzYzAuOCwwLDEuNCwwLjYsMS40LDEuNGMwLDAuNy0wLjYsMS40LTEuNCwxLjRjMCwwLDAsMCwwLDBjMCwwLDAsMCwwLDAgIGMtMC43LDAtMS40LTAuNi0xLjQtMS40QzI0LjYsMy42LDI1LjIsMywyNiwzeiBNMjEuMywxNy44SDI1djJoLTJjLTAuNCwwLTAuNywwLjItMC45LDAuNWwtMSwxLjdsLTEuNy0xTDIxLjMsMTcuOHogTTYuNiwxNi40ICBjLTAuNy0wLjQtMC45LTEuMi0wLjUtMS45YzAuNC0wLjYsMS4yLTAuOSwxLjktMC41YzAuNywwLjQsMC45LDEuMiwwLjUsMS45YzAsMCwwLDAsMCwwdjBDOC4xLDE2LjUsNy4yLDE2LjcsNi42LDE2LjR6IE0xOC40LDIyLjggIGwxLjcsMWwtMSwxLjdjLTAuMiwwLjMtMC4yLDAuNywwLDFsMSwxLjdsLTEuNywxTDE2LjUsMjZMMTguNCwyMi44eiBNNy45LDM4Yy0wLjYsMC40LTEuNSwwLjEtMS45LTAuNWMtMC40LTAuNy0wLjItMS41LDAuNS0xLjkgIGMwLjctMC40LDEuNS0wLjEsMS45LDAuNWMwLDAsMCwwLDAsMGMwLDAsMCwwLDAsMEM4LjgsMzYuOCw4LjYsMzcuNiw3LjksMzh6IE0yMS4zLDM0LjJMMTkuNCwzMWwxLjctMWwxLDEuNyAgYzAuMiwwLjMsMC41LDAuNSwwLjksMC41aDJ2MkgyMS4zeiBNMjYsNDljLTAuOCwwLTEuNC0wLjYtMS40LTEuNGMwLTAuNywwLjYtMS40LDEuNC0xLjRjMCwwLDAsMCwwLDBjMCwwLDAsMCwwLDAgIGMwLjcsMCwxLjQsMC42LDEuNCwxLjRDMjcuNCw0OC40LDI2LjcsNDksMjYsNDl6IE0zMC43LDM0LjJIMjd2LTJoMmMwLjQsMCwwLjctMC4yLDAuOS0wLjVsMS0xLjdsMS43LDFMMzAuNywzNC4yeiBNNDQsMzggIGMtMC42LTAuNC0wLjktMS4yLTAuNS0xLjljMCwwLDAsMCwwLDBjMCwwLDAsMCwwLDBjMC4yLTAuNCwwLjctMC43LDEuMi0wLjdjMC4yLDAsMC41LDAuMSwwLjcsMC4yQzQ3LDM2LjUsNDUuNiwzOC45LDQ0LDM4eiI+PC9wYXRoPjwvc3ZnPg==");
}

.confetti.snowflake-confetti.style-2,
.snowflake.style-2 {
    background-color: transparent;
    background-image: url("data:image/svg+xml;base64,PHN2ZyBoZWlnaHQ9JzMwMHB4JyB3aWR0aD0nMzAwcHgnICBmaWxsPSIjRkZGRkZGIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB2ZXJzaW9uPSIxLjEiIHg9IjBweCIgeT0iMHB4IiB2aWV3Qm94PSIwIDAgNTIgNTIiIGVuYWJsZS1iYWNrZ3JvdW5kPSJuZXcgMCAwIDUyIDUyIiB4bWw6c3BhY2U9InByZXNlcnZlIj48cGF0aCBkPSJNNDcsMzIuN2wtNSwxLjNsLTMuMi0xLjlsNi43LTEuOGMwLjUtMC4xLDAuOS0wLjcsMC43LTEuMnMtMC43LTAuOS0xLjItMC43bC04LjYsMi4zbC0zLTEuOGwzLjYtMWMwLjUtMC4xLDAuOS0wLjcsMC43LTEuMiAgYy0wLjEtMC41LTAuNy0wLjktMS4yLTAuN2wtNS42LDEuNUwyOCwyNmwyLjgtMS42bDUuNiwxLjVjMC41LDAuMSwxLjEtMC4yLDEuMi0wLjdjMC4xLTAuNS0wLjItMS4xLTAuNy0xLjJsLTMuNi0xbDMtMS44bDguNiwyLjMgIGMwLjUsMC4xLDEuMS0wLjIsMS4yLTAuN2MwLjEtMC41LTAuMi0xLjEtMC43LTEuMmwtNi43LTEuOGwzLjItMS45bDUsMS4zYzAuNSwwLjEsMS4xLTAuMiwxLjItMC43YzAuMS0wLjUtMC4yLTEuMS0wLjctMS4yICBsLTMuMS0wLjhsMi45LTEuN2MwLjUtMC4zLDAuNi0wLjksMC40LTEuNGMtMC4zLTAuNS0wLjktMC42LTEuNC0wLjRsLTIuOSwxLjdsMC44LTMuMWMwLjEtMC41LTAuMi0xLjEtMC43LTEuMiAgYy0wLjUtMC4xLTEuMSwwLjItMS4yLDAuN2wtMS4zLDVsLTMuMiwxLjlsMS44LTYuN2MwLjEtMC41LTAuMi0xLjEtMC43LTEuMmMtMC41LTAuMS0xLjEsMC4yLTEuMiwwLjdsLTIuMyw4LjZsLTMsMS44bDEtMy42ICBjMC4xLTAuNS0wLjItMS4xLTAuNy0xLjJjLTAuNS0wLjEtMS4xLDAuMi0xLjIsMC43bC0xLjUsNS42TDI3LDI0LjN2LTMuMmw0LjEtNC4xYzAuNC0wLjQsMC40LTEsMC0xLjRjLTAuNC0wLjQtMS0wLjQtMS40LDAgIEwyNywxOC4ydi0zLjVsNi4zLTYuM2MwLjQtMC40LDAuNC0xLDAtMS40cy0xLTAuNC0xLjQsMEwyNywxMS45VjguMWwzLjctMy43YzAuNC0wLjQsMC40LTEsMC0xLjRzLTEtMC40LTEuNCwwTDI3LDUuM1YyICBjMC0wLjYtMC40LTEtMS0xcy0xLDAuNC0xLDF2My4zbC0yLjMtMi4zYy0wLjQtMC40LTEtMC40LTEuNCwwcy0wLjQsMSwwLDEuNEwyNSw4LjF2My44TDIwLjEsN2MtMC40LTAuNC0xLTAuNC0xLjQsMHMtMC40LDEsMCwxLjQgIGw2LjMsNi4zdjMuNWwtMi43LTIuN2MtMC40LTAuNC0xLTAuNC0xLjQsMGMtMC40LDAuNC0wLjQsMSwwLDEuNGw0LjEsNC4xdjMuMmwtMi44LTEuNmwtMS41LTUuNmMtMC4xLTAuNS0wLjctMC45LTEuMi0wLjcgIGMtMC41LDAuMS0wLjksMC43LTAuNywxLjJsMSwzLjZsLTMtMS44bC0yLjMtOC42Yy0wLjEtMC41LTAuNy0wLjktMS4yLTAuN2MtMC41LDAuMS0wLjksMC43LTAuNywxLjJsMS44LDYuN0wxMSwxNi4ybC0xLjMtNSAgYy0wLjEtMC41LTAuNy0wLjktMS4yLTAuN2MtMC41LDAuMS0wLjksMC43LTAuNywxLjJsMC44LDMuMWwtMi45LTEuN2MtMC41LTAuMy0xLjEtMC4xLTEuNCwwLjRjLTAuMywwLjUtMC4xLDEuMSwwLjQsMS40bDIuOSwxLjcgIGwtMy4xLDAuOEM0LDE3LjUsMy43LDE4LDMuOCwxOC42YzAuMSwwLjUsMC43LDAuOCwxLjIsMC43bDUtMS4zbDMuMiwxLjlsLTYuNywxLjhjLTAuNSwwLjEtMC45LDAuNy0wLjcsMS4yICBjMC4xLDAuNSwwLjcsMC45LDEuMiwwLjdsOC42LTIuM2wzLDEuOGwtMy42LDFjLTAuNSwwLjEtMC45LDAuNy0wLjcsMS4yYzAuMSwwLjUsMC43LDAuOSwxLjIsMC43bDUuNi0xLjVMMjQsMjZsLTIuOCwxLjZsLTUuNi0xLjUgIGMtMC41LTAuMS0xLjEsMC4yLTEuMiwwLjdzMC4yLDEuMSwwLjcsMS4ybDMuNiwxbC0zLDEuOGwtOC42LTIuM2MtMC41LTAuMS0xLjEsMC4yLTEuMiwwLjdjLTAuMSwwLjUsMC4yLDEuMSwwLjcsMS4ybDYuNywxLjggIEwxMCwzNC4xbC01LTEuM2MtMC41LTAuMS0xLjEsMC4yLTEuMiwwLjdDMy43LDM0LDQsMzQuNSw0LjUsMzQuNmwzLjEsMC44bC0yLjksMS43Yy0wLjUsMC4zLTAuNiwwLjktMC40LDEuNCAgYzAuMywwLjUsMC45LDAuNiwxLjQsMC40bDIuOS0xLjdsLTAuOCwzLjFjLTAuMSwwLjUsMC4yLDEuMSwwLjcsMS4yYzAuNSwwLjEsMS4xLTAuMiwxLjItMC43bDEuMy01bDMuMi0xLjlsLTEuOCw2LjcgIGMtMC4xLDAuNSwwLjIsMS4xLDAuNywxLjJjMC41LDAuMSwxLjEtMC4yLDEuMi0wLjdsMi4zLTguNmwzLTEuOGwtMSwzLjZjLTAuMSwwLjUsMC4yLDEuMSwwLjcsMS4yYzAuNSwwLjEsMS4xLTAuMiwxLjItMC43bDEuNS01LjYgIGwyLjgtMS42djMuMkwyMC45LDM1Yy0wLjQsMC40LTAuNCwxLDAsMS40czEsMC40LDEuNCwwbDIuNy0yLjd2My41bC02LjMsNi4zYy0wLjQsMC40LTAuNCwxLDAsMS40czEsMC40LDEuNCwwbDQuOS00Ljl2My44ICBsLTMuNywzLjdjLTAuNCwwLjQtMC40LDEsMCwxLjRzMSwwLjQsMS40LDBsMi4zLTIuM1Y1MGMwLDAuNiwwLjQsMSwxLDFzMS0wLjQsMS0xdi0zLjNsMi4zLDIuM2MwLjQsMC40LDEsMC40LDEuNCwwICBjMC40LTAuNCwwLjQtMSwwLTEuNEwyNyw0My45di0zLjhsNC45LDQuOWMwLjQsMC40LDEsMC40LDEuNCwwYzAuNC0wLjQsMC40LTEsMC0xLjRMMjcsMzcuM3YtMy41bDIuNywyLjdjMC40LDAuNCwxLDAuNCwxLjQsMCAgYzAuNC0wLjQsMC40LTEsMC0xLjRMMjcsMzAuOXYtMy4ybDIuOCwxLjZsMS41LDUuNmMwLjEsMC41LDAuNywwLjksMS4yLDAuN2MwLjUtMC4xLDAuOS0wLjcsMC43LTEuMmwtMS0zLjZsMywxLjhsMi4zLDguNiAgYzAuMSwwLjUsMC43LDAuOSwxLjIsMC43YzAuNS0wLjEsMC45LTAuNywwLjctMS4ybC0xLjgtNi43bDMuMiwxLjlsMS4zLDVjMC4xLDAuNSwwLjcsMC45LDEuMiwwLjdjMC41LTAuMSwwLjktMC43LDAuNy0xLjIgIGwtMC44LTMuMWwyLjksMS43YzAuNSwwLjMsMS4xLDAuMSwxLjQtMC40YzAuMy0wLjUsMC4xLTEuMS0wLjQtMS40bC0yLjktMS43bDMuMS0wLjhjMC41LTAuMSwwLjktMC43LDAuNy0xLjJTNDcuNSwzMi42LDQ3LDMyLjd6Ij48L3BhdGg+PC9zdmc+");
}

.snowflake.fast {
    animation-duration: 1.5s;
    -webkit-animation-duration: 1.5s;
    -moz-animation-duration: 1.5s;
}

.snowflake.medium {
    animation-duration: 3s;
    -webkit-animation-duration: 3s;
    -moz-animation-duration: 3s;
}

.snowflake.slow {
    animation-duration: 6s;
    -webkit-animation-duration: 6s;
    -moz-animation-duration: 6s;
}

.confetti {
    position: absolute;
    height: 7px;
    width: 2px;
    opacity: 0;
    animation-timing-function: linear;
    -webkit-animation-timing-function: linear;
    -moz-animation-timing-function: linear;
    bottom: -10px;
}

.confetti.snowflake-confetti {
    height: 8px;
    width: 8px;
    border-radius: 10px;
    background-size: 100%;
    background-color: #ffffff;
}

.confetti:nth-of-type(10n) { animation-duration: 0.5s; }
.confetti:nth-of-type(10n+1) { animation-duration: 0.55s; }
.confetti:nth-of-type(10n+2) { animation-duration: 0.6s; }
.confetti:nth-of-type(10n+3) { animation-duration: 0.65s; }
.confetti:nth-of-type(10n+4) { animation-duration: 0.7s; }
.confetti:nth-of-type(10n+5) { animation-duration: 0.75s; }
.confetti:nth-of-type(10n+6) { animation-duration: 0.85s; }
.confetti:nth-of-type(10n+7) { animation-duration: 0.9s; }
.confetti:nth-of-type(10n+8) { animation-duration: 0.95s; }
.confetti:nth-of-type(10n+9) { animation-duration: 1s; }

.confetti:nth-of-type(4n) { 
    animation-name: confettiLeft;
}

@keyframes confettiLeft {
    0% { opacity: 0; transform: translateY(0px) translateX(0px) rotate(0deg); }
    5% { opacity: 1; }
    20% { transform: translateY(-20px) translateX(-30px) rotate(-180deg); }
    30% { transform: translateY(-10px) translateX(-40px) rotate(-270deg); }
    40% { transform: translateY(20px) translateX(-50px) rotate(-360deg); }
    40% { opacity: 1; }
    60% { transform: translateY(50px) translateX(-60px) rotate(-540deg); }
    80% { transform: translateY(100px) translateX(-70px) rotate(-720deg); }
    100% { opacity: 0; transform: translateY(150px) translateX(-80px) rotate(-900deg); }
}

.confetti:nth-of-type(4n+1) { 
    animation-name: confettiRight;
}

@keyframes confettiRight {
    0% { opacity: 0; transform: translateY(0px) translateX(0px) rotate(0deg); }
    5%  { opacity: 1; }
    20% { transform: translateY(-20px) translateX(30px) rotate(-180deg); }
    30% { transform: translateY(-10px) translateX(40px) rotate(-270deg); }
    40% { transform: translateY(20px) translateX(50px) rotate(-360deg); }
    40% { opacity: 1; }
    60% { transform: translateY(50px) translateX(60px) rotate(-540deg); }
    80% { transform: translateY(100px) translateX(70px) rotate(-720deg); }
    100% { opacity: 0; transform: translateY(150px) translateX(80px) rotate(-900deg); }
}

.confetti:nth-of-type(4n+2) { 
    animation-name: confettiSlightLeft;
}

@keyframes confettiSlightLeft {
    0% { opacity: 0; transform: translateY(0px) translateX(0px) rotate(0deg); }
    5% { opacity: 1; }
    20% { transform: translateY(-20px) translateX(-15px) rotate(-180deg); }
    30% { transform: translateY(-10px) translateX(-20px) rotate(-270deg); }
    40% { transform: translateY(20px) translateX(-25px) rotate(-360deg); }
    40% { opacity: 1; }
    60% { transform: translateY(50px) translateX(-30px) rotate(-540deg); }
    80% { transform: translateY(100px) translateX(-35px) rotate(-720deg); }
    100% { opacity: 0; transform: translateY(150px) translateX(-40px) rotate(-900deg); }
}

.confetti:nth-of-type(4n+3) { 
    animation-name: confettiSlightRight;
}

@keyframes confettiSlightRight {
    0% { opacity: 0; transform: translateY(0px) translateX(0px) rotate(0deg); }
    5%  { opacity: 1; }
    20% { transform: translateY(-20px) translateX(15px) rotate(-180deg); }
    30% { transform: translateY(-10px) translateX(20px) rotate(-270deg); }
    40% { transform: translateY(20px) translateX(25px) rotate(-360deg); }
    40% { opacity: 1; }
    60% { transform: translateY(50px) translateX(30px) rotate(-540deg); }
    80% { transform: translateY(100px) translateX(35px) rotate(-720deg); }
    100% { opacity: 0; transform: translateY(150px) translateX(40px) rotate(-900deg); }
}

@keyframes fallingSnow {
    0% {
        transform: translateX(0px) translateY(0px);
        opacity: 0;
    }

    12.5% {
        transform: translateX(7.5px) translateY(120px);
    }

    25% {
        opacity: 0.75;
        transform: translateX(15px) translateY(240px);
    }

    37.5% {
        transform: translateX(7.5px) translateY(360px);
    }

    50% {
        transform: translateX(0px) translateY(480px);
    }

    62.5% {
        transform: translateX(-7.5px) translateY(600px);
    }

    75% {
        opacity: 0.75;
        transform: translateX(-15px) translateY(720px);
    }

    87.5% {
        transform: translateX(-7.5px) translateY(840px);
    }

    100% {
        opacity: 0;
        transform: translateX(0px) translateY(960px);
    }
}

.rocket {
    position: fixed;
    top: 100vh;
    z-index: 7000;
}

.rocket .missile {
    height: 10px;
    width: 10px;
    border-radius: 10px;
    box-shadow: 0px 0px 20px white;
    animation: rocket 1 1.5s linear;
    opacity: 0;
}

.spark {
    position: fixed;
    height: 40px;
    width: 4px;
    z-index: 7000;
}

.spark .spark-container {
    height: 4px;
    width: 4px;
    border-radius: 4px;
    box-shadow: 0px 0px 20px white;
    animation: rocket 1 0.5s linear;
    opacity: 0;
}


@keyframes rocket {
    0% {
        opacity: 0.9;
        transform: translateY(0px);
    }

    30% {
        transform: translateY(-30vh);
    }

    70% {
        transform: translateY(-45vh);
    }

    95% {
        opacity: 0.9;
    }

    100% {
        opacity: 0;
        transform: translateY(-50vh);
    }
}

@media screen and (max-width: 900px) {
	#advent-calendar .tree .item {
		height: 100px;
		width: 100px;
	}
}

@media screen and (max-width: 700px) {
	#advent-calendar .tree .item {
		height: 75px;
		width: 75px;
	}
	
	#ajaxcontent {
		margin-top: 150px !important;
	}
	
	#advent-calendar .text-panel p {
	    font-size: 4px;
	    line-height: 6px;
	    max-width: calc(85vw / 7);
	}
	
	.advent-audio-toggle {
		padding-right: 20px;
		font-size: 12px;
	}
	
	#advent-calendar .star img {
	    width: 48px;
	}
}

@media screen and (max-width: 640px) {
	#ajaxcontent {
	    margin-top: 100px !important;
	}
}

@media screen and (max-width: 540px) {
	#advent-calendar .tree .item {
		height: 60px;
		width: 60px;
	}
	
}

@media screen and (max-width: 450px) {
	#advent-calendar .tree .item {
		height: 42px;
		width: 42px;
	}
}