.fit-cover {
  object-fit: cover;
}

#tags {
  position: fixed !important;
  top: 0 !important;
  left: 0 !important;
  margin-top: 260px !important;
  line-height: 1.2;
}

#footer1 {
  line-height: 1.2;
  margin-top: 10px;
  margin-left: 0px;
}

#footer2 {
  line-height: 1.2;
  margin-top: 10PX;
  text-align: right;
  margin-right: 5PX;
  font-size: 13px;
}

.btn:hover {
  color: var(--bs-btn-hover-color);
  background-color: var(--bs-btn-hover-bg);
  border-color: var(--bs-btn-hover-border-color);
}

.send_button:hover {
  box-shadow: 0 0 4px rgba(50,50,50,0.64) !important;
  background-color: #b8b2ff !important;
}

.container .row .col-md-12 .p-3 {
  padding-left: 0 !important;
  padding-right: 0 !important;
}

@media (max-width: 776px) {
  #formcard {
    margin-right: 0px !important;
    padding-right: 0px !important;
  }
}

#a {
  font-weight: 400;
}

.two-columns-lg {
  columns: 2;
  column-gap: 2rem;
  display: block;
}

@media (max-width: 769px) {
  .two-columns-lg {
    columns: 1;
  }
}

.row {
  --bs-gutter-x: 1rem;
}

.faq-question-js {
  background-color: transparent !important;
  padding: 0 !important;
  margin: 0 !important;
  cursor: pointer;
  border: none !important;
  font-family: 'DM Sans', sans-serif;
  font-size: 16px;
  color: #000 !important;
  font-weight: normal;
  transition: color 0.4s ease;
}

.faq-question-js:hover {
  color: #aaaaaa !important;
  background-color: transparent !important;
}

.faq-question-js.active::after {
  transform: translateY(-50%) rotate(45deg);
  color: #000 !important;
}

.faq-content-js p {
  padding: 10px 0 0 0;
  margin: 0;
  line-height: 1.6;
  font-family: 'DM Sans', sans-serif;
}

.faq-content-js {
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.1s ease;
  background-color: transparent;
  padding-bottom: 2px;
}

.faq-content-js.active {
  max-height: 400px;
}

.faq-content-js p {
  padding: 0px;
  margin: 0;
  line-height: 1;
}

.faq-question-js.active {
  color: #000 !important;
}

h6, .h6 {
  font-size: 0.8rem;
}

@media (max-width: 769px) {
  #team-row {
    display: block !important;
  }
}

@media (max-width: 769px) {
  #info_project {
    display: block !important;
  }
}

#team-img {
  width: auto;
  text-align: center;
}

#header_project {
  margin-right: 77px;
}

@media (max-width: 992px) {
  #header_project {
    margin-right: 7px;
  }
}

@media (max-width: 992px) {
  #caption_project_row {
    gap: 10px !important;
  }
}

@media (max-width: 400px) {
  #caption_project_row {
    gap: 0px !important;
  }
}

@media (max-width: 992px) {
  #caption_project_p {
    font-size: 12px !important;
  }
}

@media (max-width: 400px) {
  #caption_project_p {
    font-size: 8px !important;
  }
}

#upperlogo_h {
  font-size: 153px;
}

@media (max-width: 576px) {
  #upperlogo_h {
    font-size: 82px;
    /*display: flex;*/
    /*flex-direction: column;*/
    /*align-items: center;*/
    /*line-height: 1;*/
    /*white-space: pre;*/
  }
}

@media (max-width: 576px) {
  .logo-line {
    display: block;
    line-height: 0.7;
    margin-top: 15px;
  }
}

#lowerlogo_h {
  font-size: 153px;
}

@media (max-width: 576px) {
  #lowerlogo_h {
    font-size: 82px;
  }
}

.crazy-btn {
  font-family: 'Courier Prime', monospace !important;
  color: #000000 !important;
  background: linear-gradient(45deg, rgb(189,229,247), rgb(239,232,255), rgb(187,185,255), #ffffff) !important;
  background-size: 400% 400% !important;
  border: 1px solid #000000 !important;
  border-radius: 10px !important;
  padding: 15px 30px !important;
  font-size: 16px !important;
  font-weight: 500 !important;
  cursor: pointer !important;
  transition: all 0.8s cubic-bezier(0.25, 0.46, 0.45, 0.94) !important;
  transform: rotate(-90deg) !important;
  white-space: nowrap !important;
  position: relative !important;
  overflow: hidden !important;
  box-shadow: 0 4px 15px rgba(0,0,0,0.15) !important;
  animation: subtlePulse 10s ease-in-out infinite, gentleFloat 6s ease-in-out infinite, subtleWiggle 3s ease-in-out infinite !important;
  min-width: 200px !important;
  width: auto !important;
  height: auto !important;
  flex-shrink: 0 !important;
}

.crazy-btn::before {
  content: '';
  position: absolute;
  top: -50%;
  left: -50%;
  width: 200%;
  height: 200%;
  background: linear-gradient(45deg, transparent, rgba(255,255,255,0.2), transparent);
  transform: rotate(45deg);
  transition: all 0.6s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  opacity: 0;
  pointer-events: none;
}

.crazy-btn:hover {
  transform: rotate(0deg) scale(1.4) !important;
  border-radius: 15px !important;
  border-color: rgba(13,45,211,0.4) !important;
  box-shadow: 0 0 25px rgba(13,45,211,0.3), 0 0 50px rgba(119,78,205,0.2), 0 0 75px rgba(135,133,230,0.15), 0 20px 40px rgba(0,0,0,0.3) !important;
  animation: crazyWiggle 0.2s ease-in-out infinite !important;
}

.crazy-btn:hover::before {
  opacity: 0.7;
  animation: elegantShine 2s ease-in-out infinite;
}

.crazy-btn:active {
  transform: rotate(0deg) scale(1.05) !important;
  animation: none !important;
  box-shadow: 0 0 10px rgba(13,45,211,0.3), 0 4px 15px rgba(0,0,0,0.3) !important;
}

@keyframes subtlePulse {
  0%, 100% {
    filter: brightness(1) saturate(1);
  }
  50% {
    filter: brightness(1.1) saturate(1.2);
  }
}

@keyframes gentleFloat {
  0%, 100% {
    transform: rotate(-90deg) translateY(0px);
  }
  50% {
    transform: rotate(-90deg) translateY(-3px);
  }
}

@keyframes refinedPulse {
  0% {
    filter: brightness(1) saturate(1) hue-rotate(0deg);
  }
  100% {
    filter: brightness(1.15) saturate(1.3);
  }
}

@media (max-width: 768px) {
  #project_button {
    min-width: 200px !important;
    left: 1vw !important;
  }
}

@media (max-width: 768px) {
  .crazy-btn {
    min-width: 180px !important;
    font-size: 14px !important;
    padding: 12px 24px !important;
  }
}

@media (max-width: 480px) {
  #project_button {
    min-width: 160px !important;
    left: 0.5vw !important;
  }
}

@media (max-width: 480px) {
  .crazy-btn {
    min-width: 150px !important;
    font-size: 12px !important;
    padding: 10px 20px !important;
  }
}

@keyframes elegantShine {
  0% {
    transform: translateX(-100%) rotate(45deg);
    opacity: 0;
  }
  50% {
    opacity: 0.3;
  }
  100% {
    transform: translateX(100%) rotate(45deg);
    opacity: 0;
  }
}

@keyframes crazyPulse {
  0% {
    filter: brightness(1) saturate(1);
  }
  100% {
    filter: brightness(1.3) saturate(1.5);
  }
}

@keyframes crazyWiggle {
  0%, 100% {
    transform: rotate(0deg) scale(1.2) translateX(0) translateY(0);
  }
  25% {
    transform: rotate(0deg) scale(1.2) translateX(-3px) translateY(-2px);
  }
  50% {
    transform: rotate(0deg) scale(1.2) translateX(3px) translateY(2px);
  }
  75% {
    transform: rotate(0deg) scale(1.2) translateX(-2px) translateY(3px);
  }
}

.crazy-btn:hover, .crazy-btn.btn-primary:hover {
  background: linear-gradient(45deg, rgba(13,45,211,0.02), rgb(223,223,248), rgb(221,220,255), rgb(239,229,251)) !important;
  background-color: rgba(72,46,235,0.28) !important;
  border-color: rgba(0,0,0,0.69) !important;
  border-radius: 15px !important;
  box-shadow: 0 0 25px rgba(13,45,211,0.3), 0 0 50px rgba(119,78,205,0.2), 0 0 75px rgba(135,133,230,0.15), 0 20px 40px rgba(0,0,0,0.3) !important;
  animation: crazyWiggle 0.2s ease-in-out infinite !important;
  filter: none !important;
  transform: rotate(0deg) scale(1.2) !important;
}

@keyframes subtleWiggle {
  0%, 100% {
    transform: rotate(-90deg) translateY(0px) translateX(0px);
  }
  25% {
    transform: rotate(-90deg) translateY(-2px) translateX(1px);
  }
  50% {
    transform: rotate(-90deg) translateY(-3px) translateX(0px);
  }
  75% {
    transform: rotate(-90deg) translateY(-1px) translateX(-1px);
  }
}

#clock {
  font-size: 30px;
}

@media (max-width: 768px) {
  #clock {
    font-size: 20px;
  }
}

#date {
  font-size: 30px;
}

@media (max-width: 768px) {
  #date {
    font-size: 20px;
  }
}

#Team_p {
  font-size: 13px;
  line-height: 1.2;
}

@media (max-width: 768px) {
  #Team_p {
    font-size: 10px;
    line-height: 1.2;
  }
}

#caption_photo_project {
  font-size: 13px;
  line-height: 1;
  margin-top: 5px;
}

@media (max-width: 768px) {
  #caption_photo_project {
    font-size: 11px;
  }
}

.event-separator::after {
  content: '';
  display: block;
  height: 1px;
  background: linear-gradient(to right, transparent 0%, #252525 20%, #252525 80%, transparent 100%);
  margin: 40px 0;
  opacity: 0.6;
}

@media (max-width: 500px) {
  .event-item {
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 15px !important;
  }
}

@media (max-width: 500px) {
  .event-button {
    margin-right: 0 !important;
    margin-left: 12px !important;
  }
}

@media (max-width: 500px) {
  .event-button button {
    min-width: 80px !important;
    font-size: 11px !important;
  }
}

@media (max-width: 500px) {
  .event-button-div {
    margin-left: 12px;
  }
}

.event_button:hover {
  box-shadow: 0 0 4px rgba(50,50,50,0.64) !important;
  background-color: #f448ce !important;
}

.event_button:hover {
  background: linear-gradient(to right, #f448ce, #ff91f2);
  color: #fff !important;
  transform: scale(1.05);
  transition: all 0.3s ease;
}

#Project_place {
  position: relative;
  cursor: pointer;
  transform-style: preserve-3d;
  transition: transform 2s ease;
}

#Project_place:hover {
  transform: perspective(1000px) rotateY(180deg);
  transition: transform 2s ease;
}

#Project_place.flipped {
  transform: perspective(1000px) rotateY(180deg);
}

#Project_place:hover h6 {
  transform: rotateY(180deg);
}

#Project_place.flipped h6 {
  transform: rotateY(180deg);
}

@media (max-width: 576px) {
  #header_project {
    font-size: 23px;
  }
}

.event-item {
}

.event-item {
  position: relative;
  transition: all 2s ease;
  cursor: pointer;
  overflow: visible;
  background: transparent;
  border-radius: 0;
  padding: 15px 0;
}

.event-item::after {
  content: '';
  position: absolute;
  top: -20px;
  left: -20px;
  right: -20px;
  bottom: -20px;
  background: radial-gradient(circle at 50% 50%, rgba(255, 0, 255, 0.3) 0%, rgba(0, 255, 255, 0.3) 30%, rgba(255, 255, 0, 0.3) 60%, transparent 100%);
  opacity: 0;
  z-index: -1;
  transition: opacity 2s ease;
  filter: saturate(300%) contrast(150%);
}

.event-item:hover::after {
  opacity: 1;
  animation: pulse-radial 4s ease-in-out infinite;
}

.event-item:hover {
  transform: scale(1.02);
  filter: brightness(200%) saturate(200%) contrast(150%);
  background: transparent;
  box-shadow: none;
}

.event-item:hover .tickets-title {
  color: #ff00ff;
  text-shadow: 0 0 10px rgba(255, 0, 255, 0.8), 0 0 20px rgba(255, 0, 255, 0.6), 0 0 30px rgba(255, 0, 255, 0.4);
  filter: brightness(150%) saturate(200%);
}

.event-item:hover .tickets-caption {
  color: #00ffff;
  text-shadow: 0 0 10px rgba(0, 255, 255, 0.8), 0 0 20px rgba(0, 255, 255, 0.6), 0 0 30px rgba(0, 255, 255, 0.4);
  filter: brightness(150%) saturate(200%);
}

.event-item:hover .event_button {
  background: linear-gradient(45deg, #ff0080, #ff8000, #ffff00, #80ff00, #00ff80, #00ffff, #8000ff, #ff0080);
  background-size: 800% 800%;
  animation: hyper-gradient 2s linear infinite;
  color: #000;
  border: 2px solid #fff;
  box-shadow: 0 0 20px rgba(255, 255, 255, 0.8), 0 0 40px rgba(255, 0, 255, 0.6), 0 0 60px rgba(0, 255, 255, 0.4);
  text-shadow: 0 0 5px rgba(255, 255, 255, 1);
  filter: brightness(200%) saturate(300%);
}

@keyframes hyper-gradient {
  0% {
    background-position: 0% 50%;
  }
  100% {
    background-position: 800% 50%;
  }
}

@keyframes pulse-radial {
  0%, 100% {
    transform: scale(1);
    opacity: 1;
  }
  50% {
    transform: scale(1.1);
    opacity: 0.7;
  }
}

@media (max-width: 576px) {
  #about_main_heading {
    font-size: 24px;
  }
}

#engaging_heading {
  width: 90%;
  position: relative;
  z-index: 10;
  height: 150px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.pulse-ring {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%) translateZ(0);
  width: 70%;
  height: 80%;
  border: 1px solid #abb3ff;
  border-radius: 50%;
  animation: pulseRing 9s ease-out infinite;
  opacity: 0;
  will-change: transform, opacity;
}

.pulse-ring:nth-child(2) {
  animation-delay: 5s;
}

.pulse-ring:nth-child(3) {
  animation-delay: 8s;
}

@keyframes pulseRing {
  0% {
    transform: translate(-50%, -50%) scale(0.8);
    opacity: 1;
  }
  100% {
    transform: translate(-50%, -50%) scale(1.5);
    opacity: 0;
  }
}

@media (min-width: 768px) {
  #engaging_heading {
    width: 70%;
    margin-top: 100px;
  }
}

@media (max-width: 768px) {
  #tags {
    display: none;
  }
}

#footer1 {
  font-size: 13px;
}

@media (max-width: 576px) {
  #footer1 {
    font-size: 11px;
  }
}

@media (max-width: 576px) {
  #footer2 {
    font-size: 11px;
  }
}

#Info {
  margin-top: 200px;
  margin-right: 0;
}

@media (max-width: 576px) {
  #Info {
    margin-top: 100px;
  }
}

#footer_div {
  margin-bottom: 50px;
  width: 70%;
  margin-left: auto;
  margin-right: 0;
}

.faq-section-title {
  margin-bottom: 0px;
  font-family: 'DM Sans', sans-serif;
  font-size: 30px;
}

@media (max-width: 576px) {
  .faq-section-title {
    font-size: 25px;
  }
}

.faq-question-js {
  font-family: 'DM Sans', sans-serif;
  font-size: 30px;
}

@media (max-width: 576px) {
  .faq-question-js {
    font-family: 'DM Sans', sans-serif;
    font-size: 25px;
  }
}

.w-100 {
  color: rgb(170,170,170);
  font-size: 30px;
}

@media (max-width: 576px) {
  .w-100 {
    color: rgb(170,170,170);
    font-size: 25px;
  }
}

#faq_section {
  margin-top: 200px;
  margin-right: 0;
}

@media (max-width: 576px) {
  #faq_section {
    margin-top: 100px;
    margin-right: 0;
  }
}

#ROW-CARD {
  font-family: 'Courier Prime', monospace;
  font-size: 13px;
  --bs-body-font-size: 1rem;
  --bs-body-font-weight: normal;
  line-height: 1.2 !important;
}

@media (max-width: 576px) {
  #ROW-CARD {
    font-size: 13px;
    line-height: 1.2 !important;
  }
}

#infocontainer_project {
  margin-top: 200px;
  margin-right: 0;
}

@media (max-width: 576px) {
  #infocontainer_project {
    margin-top: 100px;
    margin-right: 0;
  }
}

#Cards {
  width: 70%;
  margin-right: 0;
  /*margin-top: 50px;*/
}

@media (max-width: 768px) {
  #Cards {
    width: 100%;
  }
}

@media (max-width: 768px) {
  #Cards {
    margin-top: 0px;
  }
}

.calmer-glow {
  animation: gentle-glow-breathe 20s ease-in-out infinite;
}

@keyframes gentle-glow-breathe {
  0%, 100% {
    filter: brightness(1.02) drop-shadow(1px 2px 11px #ffb70080);
  }
  20% {
    filter: brightness(2.08) drop-shadow(0 0 1px #b6bee1);
  }
  50% {
    filter: brightness(0.98) drop-shadow(-2px 0 1px #00ffe0a0);
  }
  80% {
    filter: brightness(1.30) drop-shadow(-4px 0 1px #b6bee1);
  }
}

#button_index {
  width: 100%;
  height: 100%;
  min-height: 100%;
  box-sizing: border-box;
  display: flex!important;
  align-items: center !important;
  justify-content: center!important;
  text-align: center;
  word-wrap: break-word;
  overflow-wrap: break-word;
  hyphens: auto;
  flex: 1;
  align-self: stretch;
  transition: all 0.3s ease;
  font-size: 11px;
}

#button_index:hover {
  transform: scale(1.02);
  box-shadow: 0 0 0 1px #000000, 0 0 30px rgba(255,0,128,0.6), inset 0 0 0 1px rgba(255,255,255,0.1);
  /*transform: translateY(-1px);*/
  /*box-shadow: inset 0 0 50px rgba(255,255,255,0.1), 0 8px 25px rgba(0,0,0,0.3), 0 0 0 1px rgba(255,255,255,0.2);*/
  background: #000000;
}

#main-heading {
  margin-top: 150px;
  margin-right: 10px;
  width: 70%;
  margin-left: auto;
}

#main-heading-item {
  margin-right: 12px;
  margin-left: 12px;
  transform: skew(0deg);
  font-size: clamp(22px, 5vw, 32px);
  line-height: 1.2;
  word-wrap: break-word;
  hyphens: auto;
  width: 600px;
  text-align: left;
  margin-bottom: 70px;
  font-family: Silkscreen, serif;
}

@media (max-width: 576px) {
  #main-heading-item {
    margin-top: 30px;
    /*font-size: 21px;*/
    width: 400px;
    margin-bottom: 40px;
  }
}

.outlined-text {
  color: transparent;
  display: inline-block;
  -webkit-text-stroke: 1px #2c3e50;
  position: relative;
  letter-spacing: 0.09em;
  filter: brightness(1.12);
  /*text-shadow: 0 2px 8px #ffb70080, 0 0 16px #e2f7f8;*/
  transition: filter 2s cubic-bezier(.66,0,.34,1), text-shadow 0.4s;
}

@media (max-width: 768px) {
  .outlined-text {
    color: transparent;
    position: relative;
    display: inline-block;
    margin: -16px -8px;
    background: transparent;
  }
}

@media (max-width: 576px) {
  #main-heading {
    width: 100%;
    margin-top: 80px;
  }
}

@media (max-width: 992px) {
  #button_index {
    font-size: 9px;
  }
}

@media (max-width: 768px) {
  #button_index {
    font-size: 11px;
  }
}

.plain-link a {
  color: inherit;
  text-decoration: none;
}

.subscribe:hover {
  background-color: #b8b2ff!important;
}

.custom-placeholder::placeholder {
  opacity: 0.6;
  color: inherit;
}

.custom-input {
  opacity: 1;
}

.custom-placeholder {
  opacity: 1;
  color: inherit;
}

#contact_section {
  margin-top: 200px;
}

@media (max-width: 576px) {
  #contact_section {
    margin-top: 100px;
  }
}

@media (max-width: 576px) {
  #infocontainer_project {
    margin-top: 100px;
  }
}

#logo, #logo2, #Menu, .dh-col.time, #main-heading, #Cards, #engaging_heading, #footer, #Info, #faq, #tickets, #event_section, #footer_div, #contact_heading, #contactForm, #news {
  opacity: 0;
  transition: opacity 1s ease-in-out;
}

body {
}

.two-columns-lg p {
  break-inside: avoid;
  margin-bottom: 1rem;
}

@media (min-width: 992px) {
  .two-columns-lg {
    column-count: 2;
    column-width: 300px;
  }
}

body.about-page {
  background-color: rgb(199,210,255);
}

#tickets_div {
  width: 70%;
  margin-left: auto;
  margin-bottom: 30px;
}

@media (max-width: 769px) {
  #tickets_div {
    width: 100%;
  }
}

#tickets_span {
  font-size: 30px;
}

@media (max-width: 769px) {
  #tickets_span {
    font-size: 25px;
  }
}

#tickets_heading {
  font-size: 56px;
}

@media (max-width: 769px) {
  #tickets_heading {
    font-size: 48px;
  }
}

#tickets {
  margin-top: 200px;
}

@media (max-width: 769px) {
  #tickets {
    margin-top: 100px;
  }
}

#faq-row {
  width: 70%;
  margin-right: 0;
  margin-left: auto;
}

@media (max-width: 576px) {
  #faq-row {
    width: 100%;
  }
}

#news {
  width: 70%;
  margin-right: 0;
  margin-top: 200px;
}

.video-center {
  text-align: center;
  margin: 40px 0;
}

.video-center video {
  max-width: 100%;
  height: auto;
  width: 100%;
  max-width: 800px;
}

@media (max-width: 768px) {
  #news {
    width: 100%;
    margin-top: 100px;
  }
}

