/* Card untuk trainer */
.card-container{
    width: 100%;
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 1rem;
}
.card{
    margin: auto;
    user-select: none;
    text-align: center;
    border-radius: 20px;
    transform: scale(.7);
    transition: 2s;
    background-color: white;
    background-image: url(../img/bg-card3.webp);
    background-repeat: no-repeat;
    background-size: cover;
    padding: 20px 10px 10px 10px;
    margin-top: 2rem;
    margin-bottom: 0;
    box-shadow: 0 0 8px black;
}
.card.animate{
    transform: scale(1);
}
.card .profil{
    position: relative;
    width: 50%;
    aspect-ratio: 4/4;
    border-radius: 50%;
    margin-bottom: 2rem;
    box-shadow: none;
    filter: drop-shadow(0 -2px 2px black);
    background-color: rgba(245, 77, 77, 0.5);
    transition: 1s;
}
.card .card-content{
    background-color: white;
    border-radius: 20px;
    padding-block: .5rem;
}
.card .card-content h4{
    margin-bottom: 1rem;
}  
/* Target Audience */
.target-audience{
    position: relative;
    background-color: var(--gold2);
    margin-bottom: 0;
}
.target-audience .wave{
    fill: var(--white);
    background-color: inherit;
    height: 3rem;
    width: 100%;
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
}
.side.target{
    margin-bottom: 0;
    padding-bottom: 2rem;
}
.target-block{
    opacity: 0;
    transition: all 1s;
    transform: scale(.3);
}
.target-block.animate{
    opacity: 1;
    transform: scale(1);
}


/* Bagian testimoni */
.testimoni{
    position: relative;
    padding: 6rem 10% 3rem;
    margin-top: 0;
    background-color: var(--glossy-blue);
    fill: var(--glossy-blue);
    color: var(--gold2);
}
.testimoni .wave-top{
    position : absolute;
    top: 0;
    left: 0;
    fill: var(--gold2);
    background-color: inherit;
    outline: none;
    border: none;
}
.testimoni .wave-bottom{
    position: absolute;
    bottom: 0;
    left: 0;
    fill: inherit;
    background-color: var(--white);
}
.testimoni .wave-bottom *{
    transform-origin: center;
    animation: wave-animation alternate 3s linear infinite;
}
.testimoni .wave-bottom *:nth-child(2){
    animation-delay: -5s;
}
.testimoni-content{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-around;
    gap: 10px;
}
.carousel-wrapper {
    position: relative;
    width: 100%;
    overflow: hidden;
}

.carousel-container2 {
    width: 96%;
    margin: 0 auto;
    position: relative;
    overflow: hidden;
}

.carousel-track {
    display: flex;
    gap: 1rem;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    scroll-behavior: smooth;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
    -ms-overflow-style: none;
    padding: 1rem;
}

.carousel-track::-webkit-scrollbar {
    display: none;
}

.carousel-item {
    min-width: 300px;
    flex: 0 0 auto;
    scroll-snap-align: start;
    border-radius: 8px;
    overflow: hidden;
    position: relative;
}

/* Create 9:16 aspect ratio container */
.carousel-item::before {
    content: "";
    display: block;
    aspect-ratio: 9/16;
}

.carousel-item img {
    position: absolute;
    border-radius: 0;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.carousel-button {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    background: rgba(65, 65, 65, 0.8);
    border: none;
    border-radius: 50%;
    width: 40px;
    height: 40px;
    cursor: pointer;
    z-index: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 20px;
}

.carousel-button:hover {
    background: rgba(65, 65, 65, 0.9);
}

.carousel-button.prev {
    left: 1rem;
}

.carousel-button.next {
    right: 1rem;
}
.video-content{
    justify-self: center;
    aspect-ratio: 4/3;
    margin-bottom: 3rem;
}

/* Bagian pendaftaran */
.pendaftaran{
    width: 100vw;
    padding: 0 5%;
    overflow-x: hidden;
    background-color: var(--white);
}
.pendaftaran h3{
    text-align: center;
    font-size: 2rem;
    margin-bottom: 2rem;
}
.blink-text{
    animation: blink 1.2s infinite linear;
}

/* Card pendaftaran */
.card-daftar-wrapper{
    display: flex;
    flex-wrap: wrap;
    width: 100%;
    justify-content: space-around;
}
.card-daftar{
    padding: 2rem;
    background-color: white;
    background-image: radial-gradient(circle at 100% 100%, var(--light-blue), white);
    border-radius: 20px;
    box-shadow: -3px 0 2px var(--blue), 0 2px 2px var(--light-blue);
    margin-bottom: 3rem;
}
.card-icons{
    box-shadow: none;
    width: 4rem;
    fill: black;
}
.card-daftar .card-content{
    display: flex;
    flex-direction: column;
    text-align: center;
    align-items: center;
}
.card-daftar .card-title{
    font-size: 1.5rem;
    font-weight: bold;
    margin-bottom: 1rem;
}
.card-daftar .jadwal{
    font-weight: bold;
    font-size: 1.2rem;
    line-height: 1.4rem;
    color: var(--rose-red);
}
.card-daftar .promo{
    font-size: 1.2rem;
    line-height: 1.4rem;
}
.card-daftar .sm-jadwal{
    font-size: 1rem;
    margin-bottom: 1rem;
    color: var(--blue);
}
.card-daftar .sm-promo{
    font-size: .8rem;
}
.card-daftar .price{
    margin-bottom: 1rem;
}
.card-daftar .location{
    padding: .2rem .8rem .4rem;
    margin-bottom: 1rem;
    color: purple;
    font-weight: bold;
    border-radius: 20px;
    transition: color 1s ease;
}
.card-daftar .location svg{
    padding: none;
    margin: none;
    width: 1rem;
}
.card-daftar .location:hover{
    color: var(--green);
}
.card-daftar .price span:nth-child(1){
    color: red;
    text-decoration: line-through;
    font-size: 90%;
}
.card-daftar .price span:nth-child(2){
    font-size: 1.4rem;
    color: var(--dark-green);
    font-weight: bold;
}
.card-daftar .percentage{
    width: 80%;
    height: 1.2rem;
}
.card-daftar .pendaftaran-btn{
    display: flex;
    margin: 2rem 0 1rem 0;
    padding: .8rem 1.6rem;
    border-radius: 20px;
    color: white;
    align-items: center;
    background-color: var(--dark-green);
    transition: background-color .8s;
}
.card-daftar .pendaftaran-btn:hover{
    background-color: var(--green);
}
.card-daftar .pendaftaran-btn .btn-daftar-image{
    box-shadow: none;
    width: 40px;
    margin: 0;
}
.faq{
    padding-inline: 10%;
    margin-bottom: 2rem;
}
.accordion-container{
  display: flex;
  flex-direction: column;
  gap: 1rem;
  height: fit-content;
}
.accordion{
  width: 100%;
  height: fit-content;
}
.accordion-q{
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: 100%;
  min-height: 80px;
  font-size: 1.8rem;
  text-align: start;
  padding-inline: 20px;
  background-color: white;
  transition: .6s;
}
.accordion-q p{
    display: inline-block;
}
.accordion-q span{
    padding-left: 1rem;
    display: inline-block;
    transform: rotate(90deg) translateX(-10px);
}
.accordion-q.show{
    background-color: var(--light-gray);
    color: var(--white);
}
.accordion-q.show span{
    transform: rotate(-90deg) translateX(-10px);
}
.accordion-q:hover{
  background-color: var(--light-gray);
  color: var(--white);
}
.accordion-a{
  display: none;
}
.accordion-a.show{
  display: block;
  text-align: justify;
  text-align-last: left;
  hyphens: auto;
  overflow-wrap: break-word;
  padding-inline: 20px;
  background-color: white;
  border: 1px solid black;
  border-top: none;
}
div.accordion-a.show p{
 text-align: start;
}
.accordion-a ol{
    padding-left: 1rem;
    margin-bottom: 1rem;
}

/* Bagian Footer */
footer{
    background-color: var(--black);
    color: var(--lighter-gray);
    text-align: center;
    padding: 2rem 0; 
    font-size: 1.2rem;
}
footer a{
    display: inline-block;
}
footer > *{
    margin-bottom: 1rem;
}
.socials{
    width: fit-content;
    margin: auto;
}
.socials svg{
    width: 3rem;
    border-radius: 50%;
    border: 1px solid var(--lighter-gray);
    margin: 1rem;
    padding: .5rem;
    transition: scale .4s;
    fill: var(--lighter-gray);

}
.socials svg:hover{
    fill: var(--rose-red);
    color: var(--rose-red);
    border-color: var(--rose-red);
    scale: 1.25;

}
.copyright{
    margin: auto;
    padding: 1rem 0;
    width: 80%;
}
.terms::before{
    content: '';
    margin-right: 10px;
    position: absolute;
    background-color: var(--gold);
    left: 0;
    top: 0;
    bottom: 0;  
    width: 2px; 
    transform: scaleY(.4);
    transition: 1s;
}
.terms:hover::before{
    content: '';
    transform: scaleY(1);
}
.terms{
    position: relative;
    margin-bottom: 1rem;
    display: inline-block;
    padding-left: 10px;
    color: var(--lighter-gray);
}
.terms:hover{
    color: var(--gold);
}