/* GLOBAL */
.gb-cr-2026-container {
    position: relative;
}

#confetti {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    max-width: 100%;
}

#c {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    max-width: 100%;
}

body {
    background-color: #182435;
}

/* FLOATING */
.gb-bullet-floating-login {
    display: none;
    opacity: 0;
    position: fixed;
    top: 2%;
    left: 1%;
    z-index: 3;
    width: 12%;
    transition: opacity 0.4s ease;
}

.gb-bullet-floating-login.visible {
    display: block !important;
    opacity: 1;
}

@media screen and (max-width: 768px) {
    .gb-bullet-floating-login,
    .gb-bullet-floating-login.visible {
        display: none !important;
    }
}
/* END FLOATING */
/* END GLOBAL */

/* SECTION 1 */
.gb-cr-2026-sc-1 {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;

    background: url('../../images/event/carnival2026/EN/sc1/bg.jpg');
    background-size: 100% 100%;
    background-repeat: no-repeat;
    background-position: bottom;

    padding-bottom: 4vw;
    padding-top: 0.9vw;
}

.gb-solar-sc-1-buttons {
    position: relative;
    z-index: 2;
    display: flex;
    justify-content: center;
    gap: 2vw;
}

.gb-solar-sc-1-buttons > a > img {
    display: block;
    width: 15vw;
}

.gb-cr-2026-sc-1-logo {
    position: relative;
    z-index: 2;
    display: block;
    width: 8.5vw; 
    margin-top: -0.7vw;
}

.gb-cr-2026-sc-1-title {
    position: relative;
    z-index: 2;
    display: block;
    width: 37vw;
    margin-top: -0.9vw;
}

.gb-cr-2026-sc-1-desc {
    position: relative;
    z-index: 2;
    display: block;
    width: 44vw;
}

.gb-cr-2026-sc-1-schedule {
    position: relative;
    display: block;
    width: 28vw;
    z-index: 2;
}

.gb-cr-2026-sc-1-desc-mobile {
    display: none;
}

.gb-bullet-sc-1-floating {
    position: absolute;
    left: 2%;
    top: 0.5%;
    width: 12vw;
    z-index: 1;
}

@media(max-width: 768px) {
    .gb-cr-2026-sc-1 {
        background: url('../../images/event/carnival2026/EN/sc1/bg-mobile.jpg');
        background-size: cover;
        background-repeat: no-repeat;
        background-position: bottom;
        padding: 9vw 0;
    }

    .gb-cr-2026-sc-1-desc {
        display: none;
    }

    .gb-solar-sc-1-buttons {
        flex-direction: column;
        z-index: 2;
    }

    .gb-solar-sc-1-buttons > a > img {
        width: 55vw;
    }

    .gb-cr-2026-sc-1-logo {
        width: 32.5vw;
    }

    .gb-cr-2026-sc-1-title {
        width: 92vw;
    }

    .gb-cr-2026-sc-1-schedule {
        width: 93vw;
    }

    .gb-cr-2026-sc-1-desc-mobile {
        position: relative;
        display: block;
        width: 72vw;
        z-index: 2;
    }

    .gb-bullet-sc-1-floating {
        width: 28vw;
    }
}
/* END SECTION 1 */

/* SECTION 2 */
.gb-cr-2026-sc-2 {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;

    /* allow absolutely-positioned clouds inside this section */
    position: relative;
    overflow: hidden;

    background: url('../../images/event/carnival2026/EN/sc2/bg.jpg');
    background-size: 100% 100%;
    background-repeat: no-repeat;
    background-position: bottom;

    padding-top: 9vw;
    padding-bottom: 6vw;
    gap: 1vw;
}

.gb-cr-2026-sc-2-gp {
    display: flex;
    justify-content: center;
    align-items: center;
}

.gb-cr-2026-sc-2-content {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 3vw;
}

.gb-cr-2026-sc-2-left {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    gap: 1vw;
}

.gb-cr-2026-sc-2-title {
    display: block;
    width: 41vw;
}

.gb-cr-2026-sc-2-desc {
    display: block;
    width: 45vw;
}

.gb-cr-2026-sc-2-reward {
    position: relative;
}

.gb-cr-2026-sc-2-reward-frame {
    display: block;
    width: 35vw;
}

.gb-cr-2026-sc-2-reward-item {
    display: block;
    position: absolute;
    top: 46%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 16vw;
}

.gb-cr-2026-sc-2-personal-frame,
.gb-cr-2026-sc-2-total-frame {
    display: block;
    width: 16.5vw;
}

.gb-cr-2026-sc-2-desc-2 {
    display: block;
    width: 32vw;
}

.gb-cr-2026-sc-2-detail {
    display: block;
    width: 13vw;
}
/* clouds animation for section 2 */
.gb-cr-2026-sc-2-cloud-1,
.gb-cr-2026-sc-2-cloud-2 {
    position: absolute;
    top: 8%;
    z-index: 1;
    pointer-events: none;
    opacity: 0.95;
}

.gb-cr-2026-sc-2-cloud-1 {
    width: 22vw;
    animation: cloudScroll1 10s linear infinite;
    opacity: 0.5;
}

.gb-cr-2026-sc-2-cloud-2 {
    top: 20%;
    width: 28vw;
    animation: cloudScroll2 10s linear infinite;
    opacity: 0.5;
}

.gb-cr-2026-sc-2-personal-gp,
.gb-cr-2026-sc-2-total-gp {
    position: relative;
}

.gb-cr-2026-sc-2-personal-gp > span,
.gb-cr-2026-sc-2-total-gp > span {
    position: absolute;
    top: 65%;
    left: 49.3%;
    transform: translate(-50%, -50%);
    color: white;
    font-family: 'Anton Regular';
    font-size: 1.8vw;
    white-space: nowrap;
}

@keyframes cloudScroll1 {
    0% {
        left: -50px;
    }

    25% {
        left: 0px;
    }
    50% {
        left: -50px;
    }
    75% {
        left: 0px;
    }
    100% {
        left: -50px;
    }
}
@keyframes cloudScroll2 {
    0% {
        right: -50px;
    }

    25% {
        right: 0px;
    }
    50% {
        right: -50px;
    }
    75% {
        right: 0px;
    }
    100% {
        right: -50px;
    }
}

@media(max-width: 768px) {
    .gb-cr-2026-sc-2 {
        background: url(../../images/event/carnival2026/EN/sc2/bg-mobile.jpg);
        background-size: cover;
        background-repeat: no-repeat;
        background-position: bottom;

        padding-top: 20vw;
        padding-bottom: 14vw;
        gap: 4vw;
    }

    .gb-cr-2026-sc-2-content {
        display: flex;
        justify-content: center;
        align-items: center;
        flex-direction: column;
        gap: 3vw;
    }

    .gb-cr-2026-sc-2-left {
        order: 2;
    }

    .gb-cr-2026-sc-2-title {
        position: relative;
        width: 87vw;
        z-index: 2;
    }

    .gb-cr-2026-sc-2-desc {
        width: 86vw;
    }

    .gb-cr-2026-sc-2-reward-frame {
        width: 70vw;
    }

    .gb-cr-2026-sc-2-reward-item {
        width: 33vw;
    }

    .gb-cr-2026-sc-2-personal-frame, .gb-cr-2026-sc-2-total-frame {
        width: 43.5vw;
    }

    .gb-cr-2026-sc-2-desc-2 {
        width: 75vw;
    }

    .gb-cr-2026-sc-2-detail {
        width: 39vw;
    }

    .gb-cr-2026-sc-2-personal-gp > span, .gb-cr-2026-sc-2-total-gp > span {
        font-size: 5.8vw;
    }
}
/* END SECTION 2 */

/* SECTION 3 */
.gb-cr-2026-sc-3 {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;

    /* allow absolutely-positioned clouds inside this section */
    position: relative;
    overflow: hidden;

    background: url('../../images/event/carnival2026/EN/sc3/bg.jpg');
    background-size: 100% 100%;
    background-repeat: no-repeat;
    background-position: bottom;

    padding-top: 7vw;
    padding-bottom: 7vw;
    gap: 1vw;
}

.gb-cr-2026-sc-3-mission {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 0.5vw;
}

.gb-cr-2026-sc-3-mission-1,
.gb-cr-2026-sc-3-mission-2,
.gb-cr-2026-sc-3-mission-3,
.gb-cr-2026-sc-3-mission-4 {
    position: relative;
}

.gb-cr-2026-sc-3-mission-1 > img,
.gb-cr-2026-sc-3-mission-2 > img,
.gb-cr-2026-sc-3-mission-3 > img,
.gb-cr-2026-sc-3-mission-4 > img {
    display: block;
    width: 18vw;
}

.gb-cr-2026-sc-3-title {
    display: block;
    width: 30vw;
}

.gb-cr-2026-sc-3-desc {
    display: block;
    width: 58vw;
}

.gb-cr-2026-sc-3-login-1 {
    position: absolute;
    top: 16.5%;
    left: 68.8%;
    z-index: 2;
    font-family: 'Anton Regular';
    color: white;
    text-shadow: 0 0 7px red;
    font-size: 1vw;
    transform: translateX(-7.5%);
}

.gb-cr-2026-sc-3-login-3 {
    position: absolute;
    top: 25.9%;
    left: 67.7%;
    z-index: 2;
    font-family: 'Anton Regular';
    color: white;
    text-shadow: 0 0 7px red;
    font-size: 1vw;
}

.gb-cr-2026-sc-3-login-5 {
    position: absolute;
    top: 35.2%;
    left: 67.7%;
    z-index: 2;
    font-family: 'Anton Regular';
    color: white;
    text-shadow: 0 0 7px red;
    font-size: 1vw;
}

.gb-cr-2026-sc-3-gp-500 {
    position: absolute;
    top: 16.1%;
    left: 67.2%;
    z-index: 2;
    font-family: 'Anton Regular';
    color: white;
    text-shadow: 0 0 7px red;
    font-size: 0.8vw;
    transform: translateX(-7.5%);
}

.gb-cr-2026-sc-3-gp-1000 {
    position: absolute;
    top: 25.5%;
    left: 65.8%;
    z-index: 2;
    font-family: 'Anton Regular';
    color: white;
    text-shadow: 0 0 7px red;
    font-size: 0.8vw;
    transform: translateX(-7.5%);
}

.gb-cr-2026-sc-3-gp-2000 {
    position: absolute;
    top: 35.1%;
    left: 65.6%;
    z-index: 2;
    font-family: 'Anton Regular';
    color: white;
    text-shadow: 0 0 7px red;
    font-size: 0.8vw;
    transform: translateX(-7.5%);
}

.gb-cr-2026-sc-3-15-random {
    position: absolute;
    top: 16.9%;
    left: 70.4%;
    z-index: 2;
    font-family: 'Anton Regular';
    color: white;
    text-shadow: 0 0 7px red;
    font-size: 1vw;
    transform: translateX(-7.5%);
}

.gb-cr-2026-sc-3-15-aduka {
    position: absolute;
    top: 25.9%;
    left: 70.4%;
    z-index: 2;
    font-family: 'Anton Regular';
    color: white;
    text-shadow: 0 0 7px red;
    font-size: 1vw;
    transform: translateX(-7.5%);
}

.gb-cr-2026-sc-3-15-trico {
    position: absolute;
    top: 35%;
    left: 70.4%;
    z-index: 2;
    font-family: 'Anton Regular';
    color: white;
    text-shadow: 0 0 7px red;
    font-size: 1vw;
    transform: translateX(-7.5%);
}

.gb-cr-2026-sc-3-win-10x {
    position: absolute;
    top: 16.2%;
    left: 66.4%;
    z-index: 2;
    font-family: 'Anton Regular';
    color: white;
    text-shadow: 0 0 7px red;
    font-size: 1vw;
    transform: translateX(-7.5%);
}

.gb-cr-2026-sc-3-win-30x {
    position: absolute;
    top: 25.9%;
    left: 65.9%;
    z-index: 2;
    font-family: 'Anton Regular';
    color: white;
    text-shadow: 0 0 7px red;
    font-size: 1vw;
    transform: translateX(-7.5%);
}

.gb-cr-2026-sc-3-win-50x {
    position: absolute;
    top: 35%;
    left: 65.9%;
    z-index: 2;
    font-family: 'Anton Regular';
    color: white;
    text-shadow: 0 0 7px red;
    font-size: 1vw;
    transform: translateX(-7.5%);
}

.gb-cr-2026-sc-3-desc-mobile {
    display: none;
}

.gb-cr-2026-sc-3-mission-1-achieved {
    position: absolute;
    z-index: 2;
    bottom: 0;
    width: 36% !important;
    top: 61%;
    left: 50%;
    transform: translateX(-50%);
}

@media(max-width: 768px) {
    .gb-cr-2026-sc-3 {
        background: url('../../images/event/carnival2026/EN/sc3/bg-mobile.jpg');
        background-size: cover;
        background-repeat: no-repeat;
        background-position: bottom;
        gap: 4vw;
        padding-top: 12vw;
        padding-bottom: 12vw;
    }

    .gb-cr-2026-sc-3-mission {
        flex-direction: column;
    }

    .gb-cr-2026-sc-3-mission-1 > img, 
    .gb-cr-2026-sc-3-mission-2 > img, 
    .gb-cr-2026-sc-3-mission-3 > img, 
    .gb-cr-2026-sc-3-mission-4 > img {
        width: 69vw;
    }

    .gb-cr-2026-sc-3-login-1,
    .gb-cr-2026-sc-3-login-3,
    .gb-cr-2026-sc-3-login-5,
    .gb-cr-2026-sc-3-gp-500,
    .gb-cr-2026-sc-3-gp-1000,
    .gb-cr-2026-sc-3-gp-2000,
    .gb-cr-2026-sc-3-15-random,
    .gb-cr-2026-sc-3-15-aduka,
    .gb-cr-2026-sc-3-15-trico,
    .gb-cr-2026-sc-3-win-10x,
    .gb-cr-2026-sc-3-win-30x,
    .gb-cr-2026-sc-3-win-50x {
        font-size: 3.2vw;
    }

    .gb-cr-2026-sc-3-desc {
        display: none;
    }

    .gb-cr-2026-sc-3-desc-mobile {
        display: block;
        width: 94%;
    }

    .gb-cr-2026-sc-3-title {
        width: 77vw;
    }
}
/* END SECTION 3 */

/* SECTION 4 */
.gb-cr-2026-sc-4 {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    overflow: hidden;
    background: url(../../images/event/carnival2026/EN/sc4/bg.jpg);
    background-size: 100% 100%;
    background-repeat: no-repeat;
    background-position: bottom;
    padding-top: 5vw;
    padding-bottom: 16vw;
    gap: 2vw;
    overflow: hidden;
}

.gb-cr-2026-sc-4-title {
    display: block;
    width: 45vw;
}

.gb-cr-2026-sc-4-desc {
    display: block;
    width: 58vw;
}

.gb-cr-2026-sc-4-items {
    display: flex;
    justify-content: center;
    align-items: center;
    margin-top: 2vw;
}

.gb-cr-2026-sc-4-items > img {
    display: block;
    width: 14vw;
    animation: eyeGlow 5.5s ease-in-out infinite; 
}

.gb-cr-2026-sc-4-items > img:nth-child(odd) {
    animation: eyeGlow 2.5s ease-in-out infinite;
    margin-top: -2vw;
}

.gb-cr-2026-sc-4-items > img:nth-child(even) {
    animation: eyeGlow 2.5s ease-in-out infinite; 
    margin-bottom: -2vw;
}

.gb-cr-2026-sc-4-desc-mobile {
    display: none;
}

@media(max-width: 768px) {
    .gb-cr-2026-sc-4 {
        background: url(../../images/event/carnival2026/EN/sc4/bg-mobile.jpg);
        background-size: 100% 100%;
        background-repeat: no-repeat;
        background-position: bottom;

        padding-top: 16vw;
        padding-bottom: 28vw;
        gap: 3vw;
    }

    .gb-cr-2026-sc-4-item {
        flex: 0 0 33.3%;
        width: 33.3%;
    }

    .gb-cr-2026-sc-4-items {
        flex-wrap: wrap;
    }

    .gb-cr-2026-sc-4-title {
        width: 88vw;
    }

    .gb-cr-2026-sc-4-items > img {
        width: 15.4vw;
        animation: eyeGlow 5.5s ease-in-out infinite;
    }

    .gb-cr-2026-sc-4-desc {
        display: none;
    }

    .gb-cr-2026-sc-4-desc-mobile {
        display: block;
        width: 90vw;
    }

    .gb-cr-2026-sc-4-items {
        row-gap: 7vw;
    }
}

/* ANIMATIONS */
@keyframes float {
    0% {
        transform: translateY(0);
    }
    50% {
        transform: translateY(-15px);
    }
    100% {
        transform: translateY(0);
    }
}

@keyframes float-down {
    0% {
        transform: translateY(0);
    }
    50% {
        transform: translateY(15px);
    }
    100% {
        transform: translateY(0);
    }
}
@keyframes eyeGlow {
    0%, 100% {
        filter: drop-shadow(0 0 10px #ad7dd4);
    }
    50% {
        filter: drop-shadow(0 0 20px #594080);
    }
}

@keyframes floatBreath {
    0%, 100% {
        transform: translate(0, 0) scale(1);
    }
    50% {
        transform: translate(0, -10px) scale(1.03);
    }
}
/* END ANIMATIONS */

/* ---------- Fog ---------- */
.fogwrapper {
  height: 100%;
  position: absolute;
  top: 0;
  width: 100%;
  -webkit-filter: blur(1px) grayscale(0.2) saturate(1.2) sepia(0.2);
  filter: blur(1px) grayscale(0.2) saturate(1.2) sepia(0.2);
}
#foglayer_01, #foglayer_02, #foglayer_03 {
  top: 0;
  height: 100%;
  position: absolute;
  width: 200%;
}
#foglayer_01 .image01, #foglayer_01 .image02,
#foglayer_02 .image01, #foglayer_02 .image02,
#foglayer_03 .image01, #foglayer_03 .image02 {
  float: left;
  height: 100%;
  width: 50%;
}
#foglayer_01 {
  -webkit-animation: foglayer_01_opacity 10s linear infinite, foglayer_moveme 15s linear infinite;
  -moz-animation: foglayer_01_opacity 10s linear infinite, foglayer_moveme 15s linear infinite;
  animation: foglayer_01_opacity 10s linear infinite, foglayer_moveme 15s linear infinite;
}
#foglayer_02, #foglayer_03 {
  -webkit-animation: foglayer_02_opacity 21s linear infinite, foglayer_moveme 13s linear infinite;
  -moz-animation: foglayer_02_opacity 21s linear infinite, foglayer_moveme 13s linear infinite;
  animation: foglayer_02_opacity 21s linear infinite, foglayer_moveme 13s linear infinite;
}

/* ---------- Moving Fog ---------- */
/*
  'size: cover' || 'size: 100%'; results remain the same
  'attachment: scroll' can be added or removed; results remain the same
  'attachment: fixed' causing unexpected results in Chrome
  'repeat-x' || 'no-repeat'; results remain the same
*/ 
#foglayer_01 .image01, #foglayer_01 .image02 {
  background: url("../../images/event/carnival2026/EN/sc4/fog1.png") center center/cover no-repeat transparent;
}
#foglayer_02 .image01, #foglayer_02 .image02,
#foglayer_03 .image01, #foglayer_03 .image02{
  background: url("../../images/event/carnival2026/EN/sc4/fog2.png") center center/cover no-repeat transparent;
}

/* ---------- Keyframe Layer 1 ---------- */
@-webkit-keyframes foglayer_01_opacity {
  0% { opacity: .1; }
  22% { opacity: .5; }
  40% { opacity: .28; }
  58% { opacity: .4; }
  80% { opacity: .16; }
  100% { opacity: .1; }
}
@-moz-keyframes foglayer_01_opacity {
  0% { opacity: .1; }
  22% { opacity: .5; }
  40% { opacity: .28; }
  58% { opacity: .4; }
  80% { opacity: .16; }
  100% { opacity: .1; }
}
@-o-keyframes foglayer_01_opacity {
  0% { opacity: .1; }
  22% { opacity: .5; }
  40% { opacity: .28; }
  58% { opacity: .4; }
  80% { opacity: .16; }
  100% { opacity: .1; }
}
@keyframes foglayer_01_opacity {
  0% { opacity: .1; }
  22% { opacity: .5; }
  40% { opacity: .28; }
  58% { opacity: .4; }
  80% { opacity: .16; }
  100% { opacity: .1; }
}
/* ---------- Keyframe Layer 2 ---------- */
@-webkit-keyframes foglayer_02_opacity {
  0% { opacity: .5; }
  25% { opacity: .2; }
  50% { opacity: .1; }
  80% { opacity: .3; }
  100% { opacity: .5; }
}
@-moz-keyframes foglayer_02_opacity {
  0% { opacity: .5; }
  25% { opacity: .2; }
  50% { opacity: .1; }
  80% { opacity: .3; }
  100% { opacity: .5; }
}
@-o-keyframes foglayer_02_opacity {
  0% { opacity: .5; }
  25% { opacity: .2; }
  50% { opacity: .1; }
  80% { opacity: .3; }
  100% { opacity: .5; }
}
@keyframes foglayer_02_opacity {
  0% { opacity: .5; }
  25% { opacity: .2; }
  50% { opacity: .1; }
  80% { opacity: .3; }
  100% { opacity: .5; }
}
/* ---------- Keyframe Layer 3 ---------- */
@-webkit-keyframes foglayer_03_opacity {
  0% { opacity: .8 }
  27% { opacity: .2; }
  52% { opacity: .6; }
  68% { opacity: .3; }
  100% { opacity: .8; }
}
@-moz-keyframes foglayer_03_opacity {
  0% { opacity: .8 }
  27% { opacity: .2; }
  52% { opacity: .6; }
  68% { opacity: .3; }
  100% { opacity: .8; }
}
@-o-keyframes foglayer_03_opacity {
  0% { opacity: .8 }
  27% { opacity: .2; }
  52% { opacity: .6; }
  68% { opacity: .3; }
  100% { opacity: .8; }
}
@keyframes foglayer_03_opacity {
  0% { opacity: .8; }
  27% { opacity: .2; }
  52% { opacity: .6; }
  68% { opacity: .3; }
  100% { opacity: .8; }
}
/* ---------- Keyframe moveMe ---------- */
@-webkit-keyframes foglayer_moveme {
  0% { left: 0; }
  100% { left: -100%; }
}
@-moz-keyframes foglayer_moveme {
  0% { left: 0; }
  100% { left: -100%; }
}
@-o-keyframes foglayer_moveme {
  0% { left: 0; }
  100% { left: -100%; }
}
@keyframes foglayer_moveme {
  0% { left: 0; }
  100% { left: -100%; }
}

@media only screen
  and (min-width: 280px)
  and (max-width: 767px) {
    #foglayer_01 .image01, #foglayer_01 .image02,
    #foglayer_02 .image01, #foglayer_02 .image02,
    #foglayer_03 .image01, #foglayer_03 .image02 {
      width: 100%;
    }
  }

/* END SECTION 4 */

/* SECTION 5 */
.gb-cr-2026-sc-5 {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    position: relative;
    background: url(../../images/event/carnival2026/EN/sc5/bg.jpg);
    background-size: 100% 100%;
    background-repeat: no-repeat;
    background-position: bottom;
    padding-top: 11vw;
    padding-bottom: 16vw;
    gap: 1vw;
}

.gb-cr-2026-sc-5-title {
    display: block;
    width: 46vw;
}

.gb-cr-2026-sc-5-desc {
    display: block;
    width: 41vw;
}

.gb-cr-2026-sc-5-char-right {
    position: absolute;
    bottom: 0;
    right: -13vw;
    display: block;
    width: 37vw;

    animation-name: floatIdle;
    animation-duration: 4s;
    animation-timing-function: ease-in-out;
    animation-iteration-count: infinite;
}

.gb-cr-2026-sc-5-char-left {
    position: absolute;
    bottom: 0;
    left: -3vw;
    display: block;
    width: 27vw;

    animation-name: floatIdle;
    animation-delay: 0.5s;
    animation-duration: 4s;
    animation-timing-function: ease-in-out;
    animation-iteration-count: infinite;
}

.gb-cr-2026-sc-5-cloud {
    position: absolute;
    top: -63%;
    width: 100%;
    opacity: 0.8;
    pointer-events: none;
}

.gb-cr-2026-char-container {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    overflow: hidden;
}

@keyframes floatIdle {
    0% {
        transform: translateY(0);
    }
    25% {
        transform: translateY(-18px);
    }

    50% {
        transform: translateY(0);
    }
    75% {
        transform: translateY(10px);
    }
    100% {
        transform: translateY(0);
    }
}

@media(max-width: 768px) {
    .gb-cr-2026-sc-5 {
        background: url(../../images/event/carnival2026/EN/sc5/bg-mobile.jpg);
        background-size: 100% 100%;
        background-repeat: no-repeat;
        background-position: bottom;

        padding-top: 14vw;
        padding-bottom: 102vw;
        gap: 5vw;
    }

    .gb-cr-2026-sc-5-title {
        width: 87vw;
    }

    .gb-cr-2026-sc-5-desc {
        width: 78vw;
    }

    .gb-cr-2026-sc-5-char-left {
        bottom: 6%;
        left: -3vw;
        width: 60vw;
    }

    .gb-cr-2026-sc-5-char-right {
        bottom: 5%;
        right: -25vw;
        width: 85vw;
    }

    .gb-cr-2026-sc-5-cloud {
        top: -33vw;
    }
}
/* END SECTION 5 */