.advent-grid-inner{
	display: grid;
	grid-template-columns: repeat(6, 1fr);
	gap: 30px;
	margin: 0 auto 2rem;
	padding: 80px;
}
.advent-einleitung h2{
	color: #003620;
	text-shadow: 1px 1px rgba(255,255,255,0.5);
	hyphens: none;
}
.advent-einleitung{
	background: #896E00;
    padding: 30px 40px;
    color: #000;
    border-radius: 10px;
    column-count: 2;
	column-gap: 30px;
    font-size: 18px;
    letter-spacing: .5px;
	max-width: 1300px;
	margin: auto auto;
	margin-bottom: 30px;
	background: linear-gradient(to right,  rgba(188,150,43,1) 0%,rgba(229,179,52,1) 50%,rgba(188,150,43,1) 100%);
	font-family: Roboto;
	font-size: 16px;

}
.adventskalender-wrapper{
	padding: 50px;
	background: url(../images/adventskalender-bg.jpg) no-repeat center center;
	background-size: cover;
}


.page-id-63393 .ct-section-inner-wrap{
	padding-top: 0px !important;
}

.page-id-63393 .ct-section-inner-wrap{
	max-width: inherit;
}



.adventskalender-wrapper {
  position: relative;
  overflow: hidden;
}

.snowflake {
  position: absolute;
  top: -10px;
  background: white;
  border-radius: 50%; /* macht aus dem Punkt einen Kreis */
  opacity: 0.9;
  pointer-events: none;
  animation: fall linear forwards;
}

@keyframes fall {
  to {
    transform: translateY(120vh);
    opacity: 0.2;
  }
}

.door__thumb-wrapper{
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0px;
	z-index: -1;
	display: none;
}
.door__thumb-wrapper img{
	position: absolute;
	width: 100%;
	height: 100%;
	object-fit: contain;
}


.more-text-button{
	display: none;
	margin-bottom: 10px;
	cursor: pointer;
	border: 1px solid #003620;
	border-radius: 9999px;
	padding: 10px 10px 10px 25px;
	color: #003620;

	position: relative;
	font-family: Lato;
	max-width: 160px;
}
.more-text-button:after{
	content: "";
	width: 20px;
	height: 20px;
	mask: url(../images/icon-arrow-right.svg);
	-webkit-mask: url(../images/icon-arrow-right.svg);
	mask-position: center center;
	-webkit-mask-position:  center center;
	mask-repeat: no-repeat;
	-webkit-mask-repeat:  no-repeat;
	mask-size: contain;
	-webkit-mask-size: contain;
	background-color: #003620;
	position: absolute;
	right: 20px;
	top: 13px;
	transform: rotate(90deg);
}
.more-text-button.active{
	background: #003620;
	color: #fff;
	
}
.more-text-button.active:after{
	content: "";
	transform: rotate(-90deg);
	background-color: #fff;
}

.door__image-wrapper img{
	width: 100%;
}




/* Tür animierbar machen */
.door {
    transform-style: preserve-3d;
    transition: transform 1s ease, background-color 0.6s ease;
}

/* geöffnete heutige Tür → Gold + Glow */
.door--today.door--open .door__number{
    background: linear-gradient(135deg, #d4af37, #f7e98e);
    border: 2px solid #f4d742;
    box-shadow: 0 0 20px rgba(255, 215, 0, 0.6);
}

/* Tür klappt nach links */
.door.door--today.door--open{
	background: #000;
}
.door--open .door__button {
    transform-origin: left center;
    transform: rotateY(-115deg) skewY(10deg);
    transition: transform 1s ease;
	box-shadow: 10px 5px 15px rgba(0,0,0,1);
}

/* 3D Rendering */
.door__button {
    backface-visibility: hidden;
}




	
@media (min-width: 651px) {
	.adventskalender-wrapper .more-text{
		display: block !important;
	}

}
@media (max-width: 650px) {
	
	.adventskalender-wrapper .more-text-button{
		display: block;
	}
	.adventskalender-wrapper .more-text{
		display: none;
	}
	
	.advent-grid-inner {
	  grid-template-columns: repeat(4, 1fr);
	  padding: 40px 20px;
	}
	.adventskalender-wrapper{
		padding: 30px;
	}
	
	
	.advent-einleitung{
		column-count: 1;
	}
	
}

	
  .door {
	position: relative;
	border: 2px dashed #fff;
	border-radius: 10px;
	background: transparent;
	position: relative;
	padding-top: 100%;
  }

  .door:hover {
	transform: scale(1.03);
	box-shadow: 0 4px 10px rgba(0,0,0,0.12);
  }

  .door__button {
	all: unset;
	cursor: pointer;
	position: absolute;
	top: 0px;
	width: 100%;
	height: 100%;
	font-weight: 700;
	font-size: 2rem;
	border-radius: 10px;
	color: #b00;
  }
  
  
	.door__button .door__number{
		position: absolute;
		top: 50%;
		left: 50%;
		transform: translate(-50%, -50%);
		width: 100%;
		height: 100%;
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
		align-items: center;
		box-shadow:   1px 1px 10px #000;
		border-radius: 10px;
		
		/* Permalink - use to edit and share this gradient. Permalink - Zum Bearbeiten und Teilen dieses Verlaufs verwenden: https://colorzilla.com/gradient-editor/#000000+0,000000+100&0.3+0,0+100 */
		background: linear-gradient(to right,  rgba(0,0,0,0.3) 0%,rgba(0,0,0,0) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	}

  .door--red .door__button {
	color: #fff;
	text-shadow: 0 0 50px #000, 0 0 10px #000;
	box-shadow: 0 0 10px rgba(0,0,0,0.3);
  }

  .door--today .door__button {
	color: #fff;
	opacity: 1;
  }

  .advent-modal {
	position: fixed;
	inset: 0;
	background: rgba(0,0,0,0.6);
	display: flex;
	justify-content: center;
	align-items: center;
	z-index: 9999;
	padding: 1rem;
	visibility: hidden;
	opacity: 0;
	transition: opacity .3s ease, visibility .3s ease;
  }

  .advent-modal.is-visible {
	visibility: visible;
	opacity: 1;
  }

  .advent-modal__content {
	background: #012819;
	border-radius: 12px;
	max-width: 500px;
	width: 100%;
	padding: 20px;
	position: relative;
	box-shadow: 0 10px 25px rgba(0,0,0,0.2);
	max-height: calc(100% - 50px);
	overflow-y: scroll;
	/* Permalink - use to edit and share this gradient. Permalink - Zum Bearbeiten und Teilen dieses Verlaufs verwenden: https://colorzilla.com/gradient-editor/#bc962b+0,e5b334+50,bc962b+100 */
	background: linear-gradient(to right,  rgba(188,150,43,1) 0%,rgba(229,179,52,1) 50%,rgba(188,150,43,1) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */

  }


.door__number--modal{
	font-size: 30px;
	text-shadow: 0 0 10px rgba(0,0,0.5);
	line-height: 100%;
	padding: 15px;
	font-weight: bold;
	border: 1px dashed #fff;
	color: #fff;
	position: absolute;
	top: 30px;
	left: 30px;
	border-radius: 3px;
	background: #002718;
}

.advent-modal__content::-webkit-scrollbar{
	display: none;
}
.advent-modal__content{
	overflow-y: scroll;
	-ms-overflow-style: none;  /* IE and Edge */
	scrollbar-width: none;  /* Firefox */
}

  @keyframes fadeInUp {
	from {transform: translateY(30px); opacity: 0;}
	to {transform: translateY(0); opacity: 1;}
  }

	.door__image{
		max-width: 500px;
		margin: auto auto;
	}
  .advent-modal__close {
	position: absolute;
	top: 10px;
	right: 12px;
	background: none;
	border: none;
	font-size: 30px;
	cursor: pointer;
	color: #BC962B;
	width: 35px;
	height: 35px;
	background: #fff;
	border-radius: 9999px;
  }

  .door__image img {
	width: 100%;
	height: auto;
	border-radius: 5px;
	margin-bottom: 20px;
	display: block;
  }

  .door__code {
	margin-top: 10px;
	border-radius: 6px;
	font-family: monospace;
	color: #003620;
	font-weight: 600;
	text-align: center;
	border: 1px solid #003620;
	display: flex;
	flex-wrap: wrap;
  }

  .door__link {
	margin-top: 15px;
	text-align: center;
  }

  .door__link a {
	letter-spacing: 1px;
    line-height: 1.2;
	display: block;
	padding: 16px 24px;
	text-decoration: none;
	border-radius: 9999px;
	font-family: Lato;
    background-color: #003620;
    color: #fff;
	margin-top: 10px;
    font-size: 15px;
  }

  .door__link a:hover {
	opacity: .9;
  }

	#adventModalInner{
		color: #000;
		text-align: center;
	}
	
	
	#adventModalInner h3{
		font-size: 22px;
		font-weight: 600;
		color: #003620;
		text-shadow: 1px 1px rgba(255,255,255,0.5);
	}
	
	
	

	.door__code__wrapper{
		display: flex;
		flex-wrap: wrap;
		width: 100%;
		min-height: 50px;
	}
  .door__code__title{
	  content: "CODE";
	  letter-spacing: 1px;
	  background: #003620;
	  color: #fff;
	  padding: 10px;
	  width: 90px;
	  border-top-left-radius: 5px;
	  border-bottom-left-radius: 5px;
		    display: flex;
    flex-wrap: wrap;
    align-content: center;
    justify-content: center;
  }
  .copy-button {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	color: #003620;
	cursor: pointer;
	border: none; 
	padding: 0px;
	width: calc(100% - 90px);
	border-top-right-radius: 5px;
	border-bottom-right-radius: 5px;
	background: #fff;
	position: relative;
	align-items: center;
	padding: 10px 50px 10px 10px;

  }
    .copy-button:after{
		content: "";
		width: 25px;
		height: 25px;
		display: block;
		mask: url(../images/copy.svg);
		-webkit-mask: url(../images/copy.svg);
		mask-position: center center;
		-webkit-mask-position:  center center;
		mask-repeat: no-repeat;
		-webkit-mask-repeat:  no-repeat;
		mask-size: contain;
		-webkit-mask-size: contain;
		background-color: #003620;	
		position: absolute;
		right: 10px;
		top: 12px;
		
	}




	.copy-button.active {	
		background-color: #2A843F;	
		color: #fff;
	}
	.copy-button.active:after{
		background-color: #fff;	
		
		mask: url(../images/copy-success.svg);
		-webkit-mask: url(../images/copy-success.svg);
		mask-position: center center;
		-webkit-mask-position:  center center;
		mask-repeat: no-repeat;
		-webkit-mask-repeat:  no-repeat;
		mask-size: contain;
		-webkit-mask-size: contain;
	}


/* Modal standardmäßig verkleinert & unsichtbar */
.advent-modal.is-visible .advent-modal__content {
    animation: adventZoomIn 1s ease forwards;
}

@keyframes adventZoomIn {
    0% {
        transform: scale(0.4);
        opacity: 0;
    }
    100% {
        transform: scale(1);
        opacity: 1;
    }
}


/* Glitter-Container */
.door-glitter-container {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
    overflow: visible;
}

/* Einzelne Glitter-Partikel */
.door-glitter {
    position: absolute;
    background: radial-gradient(circle, #ffd700, #ffea8a 50%, #fff 90%);
    border-radius: 50%;
    opacity: 0;
    transform: translate(-50%, -50%);
    animation: glitterPop 1s ease-out forwards;
}

/* Glitter-Animation */
@keyframes glitterPop {
    0% {
        opacity: 1;
        transform: translate(-50%, -50%) scale(0.4);
    }
    70% {
        opacity: 1;
        transform: translate(calc(-50% + var(--tx)), calc(-50% + var(--ty))) scale(1);
    }
    100% {
        opacity: 0;
        transform: translate(calc(-50% + var(--tx)), calc(-50% + var(--ty))) scale(0.2);
    }
}

	

@media (max-width: 1200px) {
	.advent-grid-inner {
	  padding: 60px;
	}
}


@media (max-width: 920px) {
	.advent-grid-inner {
	  padding: 45px;
	  gap: 20px;
	}
	.door__button{
		font-size: 22px;
	}
}


@media (max-width: 680px) {
	.door{
		padding-top: 75%;
	}
	.advent-grid-inner{
		padding: 35px;
		grid-template-columns: repeat(5, 1fr);
	}
}


@media (max-width: 680px) {
	.advent-grid-inner{
		grid-template-columns: repeat(4, 1fr);
	}
}



@media (max-width: 550px) {
	.advent-grid-inner{
		padding: 20px;
	}
	.advent-grid-inner{
		gap: 15px;
	}
}
