/* ==========================================================================
   HOHENSTAUFEN FESTIVAL — COMPLETE ORIGINAL DESIGN THEME 2024
   ========================================================================== */

:root {
    --bs-body-line-height: 1.2;
    --gradient-home: linear-gradient(
    45deg, 
    rgb(255, 100, 61), 
    rgb(255, 175, 152),
    rgb(255, 240, 237)
    );
    --gradient-pic: linear-gradient(
    45deg, 
    rgb(255, 155, 129), 
    rgb(255, 192, 175),
    rgb(255, 255, 255)
    );
    --color-jamaica-yellow: rgb(255, 197, 0);
    --color-jamaica-black: rgb(0, 0, 0);
    --color-jamaica-green: rgb(0, 99, 58); 
    --color-kfh2024-bg: rgb(255, 226, 219);
    --color-kfh2024-head: rgb(255, 51, 0);
    --color-kfh2024-link: rgb(255, 51, 0);
    --color-kfh2024-body: #66665e;
}

/* GLOBAL */
html {
    scroll-behavior: smooth;
}

body {
    font-family: 'Helvetica Neue', 'Helvetica', sans-serif;
}
body#start {
  background: radial-gradient(#170f29, #5e4c86);
}
body#home {
    background-image: var(--gradient-home);
    background-size: 400%;
    animation: bg-animation 10s infinite alternate;
}
@keyframes bg-animation {
    0% {
        background-position: left;
    }
    100% {
        background-position: right;
    }
}

h1.kfh2024-headline {
    display: inline-block;
    font-weight: bold;
    color: var(--color-kfh2024-head);
}

a {
    outline: none;
    text-decoration: none;
    color: rgba(255, 51, 0, 1);
}
a:hover,
a:focus {
    text-decoration: none;
    color: rgba(255, 51, 0, .66);
}

.kfh2024-head,
.kfh2024-link {
  color: var(--color-kfh2024-head);
}
.kfh2024-body,
.kfh2024-programm {
  color: rgb(102, 102, 94);
}
.kfh2024-special-bg {
  background-color: var(--color-kfh2024-bg);
}
.color-jamaica-yellow {
  color: var(--color-jamaica-yellow);
}
.color-jamaica-black {
  color: var(--color-jamaica-black);
}
.color-jamaica-green {
  color: var(--color-jamaica-green);
}
.bg-jamaica-yellow {
  background-color: var(--color-jamaica-yellow);
}
.bg-jamaica-black {
  background-color: var(--color-jamaica-black);
}
.bg-jamaica-green {
  background-color: var(--color-jamaica-green);
}

.text-white-75 {
    color: rgba(255, 255, 255, 0.75) !important;
}

#kontakt i.bi-facebook,
#kontakt i.bi-youtube,
#kontakt i.bi-instagram,
i.bi-play-circle-fill,
i.bi-caret-up {
    font-size: 2rem;
}  
.pb-end {
    padding-bottom: 200px;
}
  
/* NAVIGATION */
.nav {
  --bs-nav-link-color: rgba(255, 51, 0, 1);
  --bs-nav-link-hover-color: rgba(255, 51, 0, .66);
}

nav.navbar-main,
nav.bg-light {
  background: transparent !important;
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
  box-shadow: none !important;
  border: none !important;
}
.navbar-light .navbar-toggler {
    border-color: rgba(0, 0, 0, 0);
}
.navbar {
  font-weight: normal;
--bs-navbar-color: rgba(255, 51, 0, .66);
--bs-navbar-hover-color: rgba(255, 51, 0, .8);
--bs-navbar-active-color: rgba(255, 51, 0, 1);
}
.nav-pills {
  --bs-nav-pills-link-active-color: #fff;
  --bs-nav-pills-link-active-bg: rgb(255, 51, 0);
}

/* SONDERKASTEN */
.sonderkasten {
  color: rgb(255, 51, 0);
  border: dotted 5px rgb(255, 51, 0);
  transform: rotate(5deg);
}
/* START */
div.promo {
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  min-height: 80vh;
}
.promo #festival-schriftzug:hover {
  cursor: pointer;
}
.promo #akademie-schriftzug {
	animation: 3s pulse1 infinite .5s;
}
.promo #festival-schriftzug {
	animation: 3s pulse1 infinite;
}
@keyframes pulse1 {
    0%{ transform: translateY(0px);}
   50%{ transform: translateY(7px);}
  100%{ transform: translateY(0px);}   
} 
#bogen-rot {
	animation: 7s pulse infinite;
}
@keyframes pulse {
    0%{ transform: scale(1);}
   50%{ transform: scale(0.97);}
  100%{ transform: scale(1);}   
}

/* MEDIA */
iframe {
    padding-bottom: 1.5rem;
}
  
/* KÜNSTLER */
.flip{
    transform-style: preserve-3d;
}

.flip .box{
    position: relative;
    width: 300px;
    height: 300px;
    margin: 20px;
    transform-style: preserve-3d;
    perspective: 1000px;
    cursor: pointer;
}

.flip .box .body{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    transform-style: preserve-3d;
    transition: 0.9s ease;
}

.flip .box .body .imgContainer{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    transform-style: preserve-3d;
}

.flip .box .body .imgContainer img{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.flip .box .body .content{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: #efefef;
    backface-visibility: hidden;
    transform-style: preserve-3d;
    transform: rotateY(180deg);
}

.flip .box:hover .body{
    transform: rotateY(180deg);
}

.flip .box .body .content div{
    transform-style: preserve-3d;
    padding: 10px;
    background: linear-gradient(135deg, rgb(255, 51, 0), rgb(255, 155, 129));
    transform: translateZ(100px);
}
