/*************** CSS for Desktop ***************/
@keyframes pulse_old {
	0% {
		transform: scale(0.95);
	}

	70% {
		transform: scale(1);
	}

	100% {
		transform: scale(0.95);
	}
}
@-webkit-keyframes pulse {
    0% {
		transform: scale(0.95);
        -webkit-filter: brightness(1.6);
        filter: brightness(1.6);
    }

    50% {
        transform: scale(1);
        -webkit-filter: brightness(1);
        filter: brightness(1);
    }

    100% {
		transform: scale(0.95);
        -webkit-filter: brightness(1.6);
        filter: brightness(1.6);
    }
}
.pulse {
	transform: scale(1);
	animation: pulse 1s linear infinite;
}html, body, #main, #wrapper, .j-section {
    /* height: 100%; */
}
html, body {
    background-color: #010719 !important;
}
#main, #wrapper {
    background-color: transparent !important;
}
body, #main, #wrapper {
    /* overflow: hidden; */
}
.j-section {
    margin: 0 auto;
    max-width: 100%;
	align-items: flex-start;
}
body {
    background-image: url(../img/bg.webp);
    background-repeat: no-repeat;
    background-position: center top;
    background-size: cover;
    /* background-attachment: fixed; */
}
#main, #wrapper {
    background-color: transparent;
}
.col-inner>.img:not(:last-child), .col>.img:not(:last-child), blockquote, dl, figure, form, ol, p, pre, ul {
    margin-bottom: 0;
}
.j-slider .img {
    width: 33.333333% !important;
    display: flex;
    align-items: flex-end;
    min-height: 8.5vw;
}
.j-img {
    padding: 0 0.6% !important;
}
.j-img .img-inner {
    margin-bottom: 2%;
    margin-left: -13.5%;
    z-index: 99;
}
/*.slider-style-focus {
	padding: 0;
}
.slider-style-focus div {
	overflow: visible !important;
}
.slider-style-focus .flickity-slider>* {
    transform: scale(1.4) !important;
}
.slider-style-focus .flickity-slider>.is-selected {
    transform: scale(2) !important;
    z-index: 10;
}/**/
/*************** CSS for landscape Desktop ***************/
@media (max-width: 1750px) {
    .j-slider .img {
        min-height: calc(8.5vw*0.92);
    }
}
@media (max-width: 1500px) {
    .j-slider .img {
        min-height: calc(8.5vw*0.93);
    }
}
@media (max-height: 660px) and (orientation: landscape) {

}
/*************** CSS for Tablet ***************/
@media (max-width: 1023px) and (orientation: landscape) {
    .j-section {
        height: 100dvh;
        min-height: auto !important;
        max-width: 95% !important;
    }
}
@media (min-width: 720px) and (max-height: 330px) and (orientation: landscape) {
    .j-section {
        max-width: 73% !important;
    }
}
@media (min-width: 820px) and (max-height: 360px) and (orientation: landscape) {
    .j-section {
		max-width: 66% !important;
    }
}
@media (min-width: 860px) and (max-height: 300px) and (orientation: landscape) {
	.j-section {
		max-width: 58% !important;
	}
}
@media (orientation: portrait) {
    body {
        background-image: url(../img/bg-mb2.webp);
    }
    body::before {
        display: none;
    }
	.section-bg :is(img,picture,video) {
		display: none;
	}
    .j-section {
        max-width: 100%;
        min-height: 0 !important;
    }
    .col, .row-collapse>.col {
        flex-basis: 100%;
        max-width: 100%;
        /* padding: 0 5% !important; */
    }
    .col.small-1, .row-collapse>.col.small-1 {
        flex-basis: 8.3333333333%;
        max-width: 8.3333333333%
    }
    
    .col.small-2, .row-collapse>.col.small-2 {
        flex-basis: 16.6666666667%;
        max-width: 16.6666666667%
    }
    
    .col.small-3, .row-collapse>.col.small-3 {
        flex-basis: 25%;
        max-width: 25%
    }
    
    .col.small-4, .row-collapse>.col.small-4 {
        flex-basis: 33.3333333333%;
        max-width: 33.3333333333%
    }
    
    .col.small-5, .row-collapse>.col.small-5 {
        flex-basis: 41.6666666667%;
        max-width: 41.6666666667%
    }
    
    .col.small-6, .row-collapse>.col.small-6 {
        flex-basis: 50%;
        max-width: 50%
    }
    
    .col.small-7, .row-collapse>.col.small-7 {
        flex-basis: 58.3333333333%;
        max-width: 58.3333333333%
    }
    
    .col.small-8, .row-collapse>.col.small-8 {
        flex-basis: 66.6666666667%;
        max-width: 66.6666666667%
    }
    
    .col.small-9, .row-collapse>.col.small-9 {
        flex-basis: 75%;
        max-width: 75%
    }
    
    .col.small-10, .row-collapse>.col.small-10 {
        flex-basis: 83.3333333333%;
        max-width: 83.3333333333%
    }
    
    .col.small-11, .row-collapse>.col.small-11 {
        flex-basis: 91.6666666667%;
        max-width: 91.6666666667%
    }
    .hide-for-small, [data-show=hide-for-small], .hide-for-medium, [data-show=hide-for-medium] {
        display: none !important;
    }
    .show-for-small, [data-show=show-for-small] {
        display: flex !important;
    }
}
@media (min-width: 750px) and (orientation: portrait) {
    .j-section {
        max-width: 80% !important;
    }
}

/*************** CSS for mobile ***************/
@media (max-width: 325px) {
	.j-section {
		max-width: 89% !important;
	}
}

/*************** CSS for mobile ***************/
@media (max-width: 390px) {

}

/* =====================================================
   ULTRA FINAL STABLE FLICKITY SLIDER
   - SAFE FOR FLATSOME / BUILDER
   - NO LAYOUT BREAK
   - RESPONSIVE %
   - NO CORE OVERRIDE
===================================================== */

/* ===== WRAPPER SAFE ===== */
.slider-style-focus.slider-wrapper {
  width: 100%;
  position: relative;
  overflow: hidden;
  padding: 2% 0 4%;
  box-sizing: border-box;
  min-width: 0;
}

/* ===== FLICKITY CORE SAFE ===== */
.slider-style-focus .flickity-viewport {
  overflow: hidden !important;
}

/* ⚠️ KHÔNG đụng .flickity-slider nữa */

/* ===== SLIDE ITEM ===== */
.slider-style-focus .img {
  width: 68%;
  margin: 0 auto;
  display: block;
  transition: transform 0.35s ease, opacity 0.35s ease;
}

/* IMAGE */
.slider-style-focus .img img {
  width: 100%;
  height: auto;
  display: block;
  border-radius: 14px;
}

/* ===== CENTER ACTIVE ===== */
.slider-style-focus .img.is-selected {
  transform: scale(1.06);
  opacity: 1;
  z-index: 2;
}

/* ===== SIDE ITEMS ===== */
.slider-style-focus .img:not(.is-selected) {
  opacity: 0.38;
  transform: scale(0.95);
}

/* LIGHT FIX */
.slider-style-focus .img:not(.is-selected) img {
  filter: brightness(0.88);
}

/* =====================================================
   DOT NAV CLEAN (GAME STYLE)
===================================================== */

.slider-style-focus .flickity-page-dots {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 12px;
  margin-top: 16px;
  padding: 0;
	bottom: 0%;
}

/* dot */
.slider-style-focus .flickity-page-dots .dot {
  width: 10px;
  height: 10px;
  border-radius: 999px;
  background: rgba(0, 220, 229, 0.25);
  margin: 0;
  border: none !important;
  transition: all 0.25s ease;
}

/* active dot */
.slider-style-focus .flickity-page-dots .dot.is-selected {
  width: 44px;
  background: #00dce5;
}

/* remove theme artifacts */
.slider-style-focus .flickity-page-dots .dot::before,
.slider-style-focus .flickity-page-dots .dot::after {
  display: none !important;
}

/* ===== GLOBAL SAFETY ===== */
.slider-style-focus * {
  box-sizing: border-box;
}


/* ===============================
   FIX: padding + brightness
   (NO PX VERSION)
=============================== */

/* KHÔNG CẮT TRÊN DƯỚI */
.slider-style-focus {
  background: transparent;
  padding: 10% 8% 12%;
  overflow: hidden;
}

.slider-style-focus .flickity-viewport {
  overflow: visible !important;
}

/* 2 BÊN SÁNG HƠN */
.slider-style-focus .img:not(.is-selected) {
  opacity: 0.55;
}

.slider-style-focus .img:not(.is-selected) img {
  filter: brightness(0.95) contrast(1.02);
}

/* giữ center đẹp hơn chút (không px) */
.slider-style-focus .img.is-selected {
  transform: scale(1.5);
}