@import url('https://fonts.googleapis.com/css2?family=Open+Sans:ital,wght@0,300..800;1,300..800&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Roboto:ital,wght@0,100;0,300;0,400;0,500;0,700;0,900;1,100;1,300;1,400;1,500;1,700;1,900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Roboto+Slab:wght@100..900&display=swap');

html, body, #app, #__nuxt, #__layout, .w-full, .min-h-screen, .h-screen, .h-full {
  max-width: 500px !important;
  width: 100% !important;
  margin: 0 auto !important;
  box-sizing: border-box;
}
body {
  overflow-x: auto !important;
}
.bg-primary{
    background-color: #7E7E7E;
}
.bg-secondary{
    background-color: #B1B1B1;
}
.bg-third{
    background-color: #B1B1B1;
}

.savethedate{
  background-color: #7F7F7F;
}

.text-200{
    color: #7E7E7E;
}

.bg-hightlight {
  background: linear-gradient(to top, #7E7E7E, rgba(0, 0, 0, 0));
}
.to-bottom {
  background: linear-gradient(to top, #7E7E7E, rgba(0, 0, 0, 0));
}
.bg-hightlight-top {
  background: linear-gradient(to bottom, #7E7E7E, rgba(0, 0, 0, 0));
}

.text-cus{
    font-size: 3.5rem;

}
@font-face {
    font-family: 'Abaya';
    src: url('./assets/fonts/abaya.woff2') format('woff2');
}
@font-face {
    font-family: 'Alice';
    src: url('./assets/fonts/alice.woff2') format('woff2');
}
@font-face {
    font-family: 'Aurelia';
    src: url('./assets/fonts/Aurelia.woff2') format('woff2');
}
@font-face {
    font-family: 'Average';
    src: url('./assets/fonts/average.woff2') format('woff2');
}
@font-face {
    font-family: 'Cinzel';
    src: url('./assets/fonts/cinzel.woff2') format('woff2');
}
@font-face {
    font-family: 'Cormor';
    src: url('./assets/fonts/cormor.woff2') format('woff2');
}
.Roboto{
    font-family: 'Roboto', sans-serif;
}

.Alice {
    font-family: 'Alice', sans-serif;
}
.Aurelia {
    font-family: 'Aurelia', sans-serif;
}
.Average {
    font-family: 'Average', sans-serif;
}
.Cinzel {
    font-family: 'Cinzel', sans-serif;
}
.Cormor {
    font-family: 'Cormor', sans-serif;
}
.Abaya {
    font-family: 'Abaya', sans-serif;
}

.map-container {
  width: 100%;
  height: 0;
  padding-bottom: 56.25%;
  position: relative;
  border-radius: 1rem;
  overflow: hidden;
}

.map-container iframe {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  border-radius: 1rem;
}


.background-slideshow {
  position: relative;
  width: 100%;
  height: 100vh;
  overflow: hidden;
}

.background-slide {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 0;
  width: 100%;
  height: 100%;
  background-size: cover;
  background-position: center;
  opacity: 0;
  transition: opacity 1s ease-in-out;
}

.background-slide.active {
  opacity: 1;
}

.onHover{
  transition: transform 0.5s ease-in-out;
}
.onHover:hover{
  transform: scale(1.03);
}

.shadow-custom{
  box-shadow: 0 6px 12px rgba(255, 255, 255, 0.282);
}

.bg-toBottom {
  background: linear-gradient(180deg, #7E7E7E 0%, rgba(57, 41, 28, 0) 100%);
}

.z-cus{
  z-index: 9999;
}

#carousel-4 .transition-transform {
  animation: carousel4Animation 35s cubic-bezier(0.5, 1, 0.5, 1) infinite;
}

@keyframes carousel4Animation {
  0%, 12.5% { transform: translateX(0%); }
  30%, 37.5% { transform: translateX(-30%); }
  45%, 62.5% { transform: translateX(-60%); }
  70%, 87.5% { transform: translateX(-90%); }
  100% { transform: translateX(-100%); }
}

.gallery-container {
  margin-top: 24px;
  display: flex;
  flex-wrap: wrap;
  gap: 5px;
  justify-content: center;
}



.gallery-item img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;

}
.gallery-item:hover img {
  transform: scale(1.25);
}

@media (max-width: 4096px) {
  .h-pengantin{
    height:100vh;
  }

   .gallery-item {
    flex: 1 1 calc(33.333% - 30px);
    box-sizing: border-box;
  }
}




.bg-loader {
  height: 100vh;
  width: 100vw;
  background: #7E7E7E;
  display: flex;
  align-items: center;
  justify-content: center;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 9999;
  opacity: 1;
  transition: opacity 1000ms;
}

@-webkit-keyframes leftAnim {
  0% {
    -webkit-transform: translateX(97px);
    -moz-transform: translateX(97px);
    transform: translateX(97px);
  }
  100% {
    -webkit-transform: translateX(0);
    -moz-transform: translateX(0);
    transform: translateX(0);
  }
}
@-moz-keyframes leftAnim {
  0% {
    -webkit-transform: translateX(97px);
    -moz-transform: translateX(97px);
    transform: translateX(97px);
  }
  100% {
    -webkit-transform: translateX(0);
    -moz-transform: translateX(0);
    transform: translateX(0);
  }
}
@-ms-keyframes leftAnim {
  0% {
    -webkit-transform: translateX(97px);
    -moz-transform: translateX(97px);
    transform: translateX(97px);
  }
  100% {
    -webkit-transform: translateX(0);
    -moz-transform: translateX(0);
    transform: translateX(0);
  }
}
@keyframes leftAnim {
  0% {
    -webkit-transform: translateX(97px);
    -moz-transform: translateX(97px);
    transform: translateX(97px);
  }
  100% {
    -webkit-transform: translateX(0);
    -moz-transform: translateX(0);
    transform: translateX(0);
  }
}
@-webkit-keyframes rightAnim {
  0% {
    -webkit-transform: translateX(0);
    -moz-transform: translateX(0);
    transform: translateX(0);
  }
  100% {
    -webkit-transform: translateX(-93px);
    -moz-transform: translateX(-93px);
    transform: translateX(-93px);
  }
}
@-moz-keyframes rightAnim {
  0% {
    -webkit-transform: translateX(0);
    -moz-transform: translateX(0);
    transform: translateX(0);
  }
  100% {
    -webkit-transform: translateX(-93px);
    -moz-transform: translateX(-93px);
    transform: translateX(-93px);
  }
}
@-ms-keyframes rightAnim {
  0% {
    -webkit-transform: translateX(0);
    -moz-transform: translateX(0);
    transform: translateX(0);
  }
  100% {
    -webkit-transform: translateX(-93px);
    -moz-transform: translateX(-93px);
    transform: translateX(-93px);
  }
}
@keyframes rightAnim {
  0% {
    -webkit-transform: translateX(0);
    -moz-transform: translateX(0);
    transform: translateX(0);
  }
  100% {
    -webkit-transform: translateX(-93px);
    -moz-transform: translateX(-93px);
    transform: translateX(-93px);
  }
}
.loader {
  width: 300px;
  height: 150px;
  margin: 0 auto;
  position: relative;
}
.loader::after {
  content: "";
  display: inline-block;
  position: absolute;
  left: 50%;
  margin-left: -1px;
  width: 2px;
  z-index: 1;
  height: 150px;
  border-left: 2px dotted #7E7E7E;
}
.loader__box {
  position: absolute;
  top: 0;
  width: 150px;
  height: 150px;
  overflow: hidden;
  z-index: 2;
}
.loader--left {
  left: 0;
}
.loader--left .loader__circle {
  /* background-color: #fff; */
  right: 10px;
  -webkit-animation: leftAnim 1.3s ease-in-out alternate infinite;
  -moz-animation: leftAnim 1.3s ease-in-out alternate infinite;
  animation: leftAnim 1.3s ease-in-out alternate infinite;
}
.loader--left .loader__circle i{
  font-size: 60px;
  color: white;
}
.loader--right {
  right: 0;
}
.loader--right .loader__circle {
  left: 10px;
  -webkit-animation: rightAnim 1.3s ease-in-out alternate infinite;
  -moz-animation: rightAnim 1.3s ease-in-out alternate infinite;
  animation: rightAnim 1.3s ease-in-out alternate infinite;
}
.loader--right .loader__circle i{
  font-size: 75px;
  color: palevioletred;
}
.loader__circle {
  width: 75px;
  height: 75px;
  /* border: solid 2px #7E7E7E; */
  display: block;
  /* background-color: #7E7E7E; */
  /* -webkit-border-radius: 50%; */
  /* -moz-border-radius: 50%; */
  /* border-radius: 50%; */
  position: absolute;
  top: 50%;
  margin-top: -37.5px;
}

.names-container {
  position: relative;
}

.names-container::before {
  content: '';
  position: absolute;
  background-color: white; 
  width: 2px; 
  height: 96px; 
  left: 0px; 
  top: -112px; 
}

.section-title-right {
  position: relative;
  display: inline-block;
}

.section-title-right::before {
  content: '';
  position: absolute;
  background-color: white;
  width: 2px;
  height: 96px;
  right: 0;
  bottom: 100%;
  margin-bottom: 1rem;
}

.section-title-left {
  position: relative;
  display: inline-block;
}
.section-title-left::before {
  content: '';
  position: absolute;
  background-color: white;
  width: 2px;
  height: 96px;
  left: 0;
  bottom: 100%;
  margin-bottom: 1rem;
}

.gradient-overlay {
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  background: linear-gradient(to top, #B1B1B1, transparent) !important;
  z-index: 2 !important; /* Pastikan di atas gambar */
}

.image-underlay {
  position: relative !important;
  z-index: 1 !important; /* Pastikan di bawah gradien */
}
