main::before {
    background-image: url('/userfiles/_thumbs/sm/images/product/C-31/C31-4-removebg-preview.png');
    background-size: 25%;
}
@media (max-width:787px) {
    main::before { background-size: 35%; }
    section#article {
        & .act-last2 {
            & .card {
                aspect-ratio: 4 / 3 !important;
                .card-image {
                    aspect-ratio: 4 / 3 !important;
                }
            }
        }
    }
    section#activity {
        & .act-last2 {
            & .card {
                aspect-ratio: 4 / 3 !important;
                .card-image {}
            }
        }
    }
}
h1, h2, h3, h4, h5, h6 {
    color: #212529;
}
section#presentation {
    aspect-ratio:16/9;
    * {}
    .slides {
        width: 100% !important;
        height: 100% !important;
        margin: 0 !important;
        inset: 0 !important;
        * {}
        .present {
            display: flex !important;
            height: 100%;
            margin: auto 0;
            justify-content: center;
            * {}
            div:has(>picture) {
                display: flex;
            }
            picture {
                margin: auto;
                margin-right: 0;
                * {}
                img {
                    animation-name: zoomPop;
                    animation-duration: 4s;
                    animation-iteration-count: infinite;
                    animation-timing-function: ease-in-out;
                    width: 90% !important;
                }
            }
            .present-box {
                color: white !important;
                text-shadow: 2px 2px #333;
                height: 80%;
                width: 90%;
                border-radius: 8px;
                *:not(button) {color: white !important;text-shadow: 2px 2px #333;}
            }
        }
    }
}
.reveal .slide-background {
    background-color: #4db6ac;
}
@keyframes zoomPop {
    0% { scale: 1; }
    50% { scale: 0.95; }
    100% { scale: 1; }
}
.deck.present h2,
.deck.present p {
    animation: fadeIn 3s ease-in-out forwards !important;
}
div:has(>.title-text) {
    text-align: center;
    justify-content: center;
}
.title-text {
    font-family: "Kanit", sans-serif !important;
    position: relative;
    width: fit-content;
    padding: 0 8px;
    * {}
    &::after,
    &::before {
        position: absolute !important;
        top: 50% !important;
        content: "";
        width: 36px;
        height: 2px;
        background-color: var(--avs-color-01);
        display: inline-block;
    }
    &::before {
        right: 100% !important;
    }
    &::after {
        left: 100% !important;
    }
}
@keyframes fadeIn {
    from { opacity: 0; }
    to { opacity: 1; }
}
section#top-product {
    * {}
    .card {
        background-color: whitesmoke;
        border: none;
        cursor: pointer;
        aspect-ratio: auto !important;
        box-shadow: rgba(50, 50, 93, 0.25) 0px 13px 27px -5px, rgba(0, 0, 0, 0.3) 0px 8px 16px -8px;
        * {}
        .card-header {
            border-radius: 0 !important;
            border: 0;
            aspect-ratio: 3/4 !important;
            * {}
            .card-image {
                border-radius: 0 !important;
                aspect-ratio: 3/4 !important;
            }
        }
        .card-body {
            border: 1px solid var(--avs-color-01);
            padding: 4px 8px;
            font-family: "Kanit", sans-serif !important;
            * {}
            span {
                font-size: 12px;
            }
            p {
                margin: 0;
                font-weight: 700;
                font-size: 18px;
            }
        }
        .card-image {
            aspect-ratio: 4/3;
            background-position: center;
            box-shadow: inset #000000 0px -42px 58px -48px;
        }
        .card-text {
            background-color: transparent;
        }
    }
    .row > h4+p+div .card,
    .row > h3+p+div .card {
        aspect-ratio: 16/9;
        * {}
        .card-image {
            aspect-ratio: 16/9;
        }
    }
}
section#category-product {
    background-color: #DCE775cc;
    z-index: 1;
    * {}
    .card {
        background-color: whitesmoke;
        border: none;
        cursor: pointer;
        aspect-ratio: 1/1;
        border: 12px solid white !important;
        transition: 0.3s ease-in-out all;
        box-shadow: rgb(74 166 14 / 40%) 0px 0px 0px 2px, rgb(36 62 5 / 65%) 0px 4px 6px -1px, rgba(255, 255, 255, 0.08) 0px 1px 0px inset;
        * {}
        .card-image {
            aspect-ratio: 1/1;
            background-position: center;
        }
        .card-text {
            background-color: transparent !important;
            position: absolute;
            height: fit-content;
            display: flex;
            justify-content: center;
            top:50%;
            transform:translateY(-50%);
            * {}
            p {
                font-family: "Kanit", sans-serif !important;
                padding: 4px;
                line-height: 20px;
                font-weight: 700;
                border: 1px solid white;
                width: 90%;
                background-color: #0000002e !important;
            }
        }
    }
    div:has(>.card-preview) {
        * {}
        .card-preview {
            * {}
            .card-header {
                background-color: #F0F4C3;
            }
        }
    }
}
@keyframes productPreview {
    0% {    transform: translateX(0); }
    25% {   transform: translateX(-200%); }
    50% {   transform: translateX(0); }
    75% {   transform: translateX(200%); }
    100% {  transform: translateX(0); }
}
section#activity {
    font-family: "Kanit", sans-serif !important;
    * {}
    .container {
        padding-top: 32px;
    }
    .act-last1 {
        * {border-radius: inherit;}
        .card {
            height: 100%;
            width: 100%;
            background-color: whitesmoke;
            border: none;
            cursor: pointer;
            * {}
            .card-header {
                height: inherit;
                box-shadow: rgba(0, 0, 0, 0.07) 0px 1px 1px, rgba(0, 0, 0, 0.07) 0px 2px 2px, rgba(0, 0, 0, 0.07) 0px 4px 4px, rgba(0, 0, 0, 0.07) 0px 8px 8px, rgba(0, 0, 0, 0.07) 0px 16px 16px;
                * {}
                .card-image {
                    height: inherit;
                    aspect-ratio: 4/3;
                    background-position: center;
                    box-shadow: inset #000000 0px -80px 64px -32px;
                    * {}
                    &:hover {
                        box-shadow: inset #030303 0px -40px 64px -32px;
                    }
                }
            }
        }
    }
    .act-last2 {
        border: 1px solid transparent;
        transition: all ease-in-out 0.4s;
        * {}
        .card {
            width: 100%;
            background-color: whitesmoke;
            border: none;
            cursor: pointer;
            aspect-ratio: 16/9;
            * {}
            .card-header {
                box-shadow: rgba(0, 0, 0, 0.07) 0px 1px 1px, rgba(0, 0, 0, 0.07) 0px 2px 2px, rgba(0, 0, 0, 0.07) 0px 4px 4px, rgba(0, 0, 0, 0.07) 0px 8px 8px, rgba(0, 0, 0, 0.07) 0px 16px 16px;
                * {}
                p {
                    vertical-align: middle;
                    font-size: 12px;
                    line-height: 12px;
                    height: 20px;
                }
                i {
                    font-size: 14px;
                    height: 16px;
                }
            }
            .card-image {
                aspect-ratio: 4/3;
                background-position: center;
                box-shadow: inset #000000 0px -30px 48px -32px;
                * {}
                &:hover {
                    box-shadow: inset #030303 0px -20px 48px -32px;
                }
            }
            .card-body {
            }
            b {
                text-overflow: ellipsis;
                -webkit-box-orient: vertical;
                display: -webkit-box;
                overflow: hidden;
                -webkit-line-clamp: 3;
                padding-top: 4px;
                height: 57px;
                width: 100%;
                text-align: left;
                text-indent: 16px;
            }
        }
        .act-body {
            display: flex;
            flex-direction: column;
            * {}
        }
        &:has(button:hover) {
            border-color: lightgrey;
            background-color: rgba(255, 255, 255, 0.3);
        }
        b {
            transition: all ease-in-out 0.4s;
            cursor: pointer;
        }
        div:is(.act-last1,.act-last2):has(.card-header:hover) b,
        b:hover {
            color: var(--avs-color-03);
        }
    }
    .act-last2:last-child {
        display: none;
    }
    button {
        font-size: 14px;
        width: 140px;
        transition: all ease-in-out 0.4s;
    }
}
section#article {
    font-family: "Kanit", sans-serif !important;
    * {}
    .container {
        background-color: #dddddd75;
        padding-top: 32px;
    }
    .act-last1 {
        aspect-ratio: 4/3;
        height: auto;
        * {}
        .card {
            width: 100%;
            background-color: whitesmoke;
            border: none;
            cursor: pointer;
            aspect-ratio: 4/3;
            height: 100%;
            * {}
            .card-header {
                height: 100%;
            }
            .card-image {
                height: 100%;
                background-position: center;
            }
        }
    }
    .act-last2 {
        border: 1px solid transparent;
        transition: all ease-in-out 0.4s;
        * {}
        .card {
            min-height: 100%;
            width: 100%;
            background-color: whitesmoke;
            border: none;
            cursor: pointer;
            aspect-ratio: 16/9;
            box-shadow: none !important;
            * {}
            .card-header {
            }
            .card-image {
                aspect-ratio: 16/9;
                background-position: center;
            }
            .card-text {
                * {}
                p {
                    font-size: 16px;
                }
            }
        }
    }
    .act-last2:has(button:hover) {
        border-color: lightgrey;
        background-color: rgba(255, 255, 255, 0.3);
    }
    .card {
        * {}
        .card-header {
        }
        .card-text {
            color: white !important;
            * {}
            p {
                font-size: 18px;
                text-shadow: 1px 1px 2px #222;
            }
        }
        .card-image {
            box-shadow: inset #000000 0px -40px 64px -32px;
        }
    }
    b {
        transition: all ease-in-out 0.4s;
        cursor: pointer;
    }
    .card:hover {
        * {}
        .card-image {
            box-shadow: inset #000000 0px -20px 64px -32px;
        }
    }
}
.hero {
    min-height: 75vh;
    * {}
    .carousel#hero-carousel {
        position: relative;
        width: 100%;
        height: 100%;
        min-height: inherit;
        aspect-ratio: 1.8/1;
        margin: 0;
        * {position: relative;}
        .carousel-item {
            background-position: center;
            background-size: cover;
            background-repeat: no-repeat;
            min-height: inherit !important;
            height: 100%;
            * {}
            > .info {
                min-height: inherit !important;
            }
        }
        .carousel-control-prev,
        .carousel-control-next {
            position: absolute !important;
            width: 50px !important;
            * {}
            span {
                height: 56px;
                width: 56px;
                aspect-ratio: 1 / 1 !important;
                margin: auto 12px;
                scale: 0.6;
                filter: drop-shadow(2px 4px 6px black);
            }
            span::after {
                content: '';
                position: absolute;
                top: -6px;
                left: -6px;
                border-radius: 50%;
                background-color: #d3d3d34a;
                width: calc(100% + 12px);
                height: calc(100% + 12px);
            }
            span::before {
                content: '' !important;
            }
        }
        .container,
        .container > .row {
            height: 100%;
            position: relative;
        }
        .container {
            width: calc(100vw - 100px) !important;
            * {}
            .row > div {
                vertical-align: middle;
                align-items: center;
                display: flex;
                justify-items: center;
                height: 100%;
                margin: auto;
                * {}
            }
        }
        .col-8 {
            margin: auto 0;
        }
        img {
            width: 80%;
            filter: drop-shadow(4px 4px 4px black);
        }
        .carousel-detail {
            margin: auto 0;
            width: 100%;
            height: fit-content;
            filter: drop-shadow(2px 2px 2px #164d00) !important;
            * {}
            h2 {
                padding-bottom: 8px;
                margin-bottom: 12px;
            }
            p {
                display: -webkit-box;
                overflow: hidden;
                text-overflow: ellipsis;
                white-space: initial;
                -webkit-line-clamp: 3;
                -webkit-box-orient: vertical;
                font-size: 18px;
            }
            a {
                font-weight: 500;
                font-size: 16px;
                letter-spacing: 1px;
                display: inline-block;
                padding: 6px 12px;
                border-radius: 50px;
                transition: 0.5s;
                margin: 12px 0 0 0 !important;
                color: #fff;
                border: 2px solid var(--avs-color-01);
                text-decoration: none !important;
                transition: 0.3s ease-in-out all;
                width: 60%;
            }
            a:hover {
                background-color: var(--avs-color-01) !important;
                color: #fff !important;
            }
            :is(h2,p) {
                width: 100%;
                color: #fff;
                margin-bottom: 4px;
            }
            .info h2::after {
                content: "";
                position: absolute;
                display: block;
                width: 100px;
                height: 4px;
                left: 0px;
                right: 0px;
                bottom: 0px;
                background: var(--avs-color-01);
                margin: auto;
            }
        }
        .carousel-item::before {
            background-color: rgba(0, 0, 0, 0) !important;
        }
    }
}
.product__slider {
    position: relative;
    width: 100%;
    padding-block: 1.5rem;
    min-height: 360px;
    * {}
    .section__header {
        position: absolute;
        top: calc(50% - 12px);
        left: 0;
        width: 100%;
        z-index: 1;
        * {}
        h3 {
            text-transform: uppercase;
            font-size: calc(1.2rem + 0.4vw);
            color: #000;
            opacity: 0.8;
        }
        .slider__controls {
            display: flex;
            justify-content: start;
            gap: 10px;
            * {}
            .btn,
            .btn:is(:active,:hover,:focus) {
                padding: 0px 6px;
                background-color: #ffffff69;
                border: 2px solid #ddd;
                border-radius: 3px;
                opacity: 0.8;
                cursor: pointer;
            }
            .btn {
                * {}
                &.next {
                    margin-left: auto;
                }
                i {
                    font-size: 1.5rem;
                }
            }
        }
    }
    .slider__wrapper {
        position: relative;
        width: 100%;
        * {}
        .slider {
            position: relative;
            width: 100%;
            * {}
            .slider__item {
                position: relative;
                width: auto;
                height: 280px;
                * { transition: all ease-in-out 0.3s;}
                .item__content {
                    width: 100%;
                    height: 100%;
                    display: flex;
                    justify-content: start;
                    align-items: center;
                    gap: 5px;
                    background-color: #ffffff;
                    border-radius: 5px;
                    overflow: hidden;
                    * {}
                    .img__box {
                        position: relative;
                        width: 100%;
                        height: 100%;
                        * {}
                        img {
                            width: 100%;
                            height: 100%;
                            object-fit: contain;
                        }
                    }
                    .slider__body {
                        display: flex;
                        flex-direction: column;
                        gap: 10px;
                        padding-inline: 16px;
                        * {}
                        h3 {
                            font-size: calc(1rem + 0.5vw);
                            font-weight: 700;
                            text-transform: capitalize;
                            color: #000;
                            opacity: 0.8;
                        }
                        a {
                            border: 1px solid #444;
                            padding: 4px 12px;
                            text-transform: capitalize;
                            font-size: 0.875rem;
                            width: max-content;
                            text-decoration: none;
                            user-select: none;
                            border-radius: 2px;
                            margin-block-start: 8px;
                            color: #444444;
                            opacity: 0.8;
                            font-weight: 500;
                            transition: all ease-in-out 0.3s;
                            * {}
                            &:hover {
                                color: #fff;
                                border-color: #fff;
                                background-color: var(--avs-color-02);
                            }
                        }
                    }
                    &:hover {
                        box-shadow: rgba(50, 50, 93, 0.25) 0px 30px 60px -12px inset, rgba(0, 0, 0, 0.3) 0px 18px 36px -18px inset;
                        * {}
                        .img__box {
                            scale: 1.1;
                        }
                    }
                }
            }
        }
        .tns-nav {
            text-align: center;
            margin-block-start: 8px;
            * {}
            button {
                background-color: #b8b6b6;
                border: none;
                padding: 5px;
                margin-right: 10px;
                border-radius: 50%;
            }
            .tns-nav-active {
                background-color: #000;
            }
            button [data-action="stop"] {
                display: none;
            }
        }
        .tns-outer [data-action] {
            display: none;
            margin: 10px auto;
            font-size: 17px;
            min-width: 3em;
            text-align: center;
            background: transparent;
            border: 0;
        }
    }
}
@media (max-width:767px) {
    section#presentation {
        height: calc(var(--avs-main-height) - 40vh) !important;
        * {}
        section {
            top: 0 !important;
        }
        img {
            width: 40% !important;
            margin-right: auto;
        }
    }
    .slides {
        transform: none !important;
        inset: 0 !important;
        * {}
        h2 {
            font-size: 20px;
        }
        p {
            font-size: 16px;
        }
        .present-box {
            height: 100% !important;
        }
    }
    .reveal .controls .controls-arrow {
        height: 1rem !important;
        width: 1rem !important;
    }
    .reveal .controls .controls-arrow:after, .reveal .controls .controls-arrow:before {
        width: 1rem;
    }
    .reveal:not(.has-vertical-slides) .controls .navigate-left, .reveal[data-navigation-mode=linear].has-horizontal-slides .navigate-left {
        bottom: 34px;
    }
    section#activity {
        * {}
        div:has(>.act-last2) {
            * {}
            p {
                text-overflow: ellipsis;
                -webkit-box-orient: vertical;
                display: -webkit-box;
                overflow: hidden;
                -webkit-line-clamp: 2;
                max-height: 44px;
                height: 44px;
                width: 100%;
                * {}
                b {
                    display: block;
                    height: inherit;
                }
            }
        }
        .act-last2:last-child {
            display: flex !important;
        }
    }
    .hero {
        min-height: 35vh !important;
        * {}
        img {
            width: 100% !important;
        }
        p {
            font-size: 12px !important;
        }
        .btn-get-started {
            font-size: 10px !important;
            padding: 4px 8px !important;
            width: 80%;
        }
    }
    .product__slider {
        * {}
        .slider__item {
            height: 200px !important;
        }
    }
}
@media (max-width: 767px) and (orientation: portrait) {
    section#presentation {
        aspect-ratio: 4/3;
        * {}
        .slides {
            * {}
            .present {
                * {}
                div:has(>picture) {
                }
                picture {
                    margin-bottom: 0 !important;
                    * {}
                    img {
                        width: 40% !important;
                        margin-bottom: 0 !important;
                    }
                }
                .present-box {
                    * {margin: 0 0 8px !important; }
                }
            }
        }
    }
}
@media (max-height: 767px) and (orientation: landscape) {
    section#presentation {
        * {}
        .slides {
            * {}
            .present {
                top: 0 !important;
                * {}
                div:has(>picture) {
                }
                picture {
                    * {}
                    img {
                        width: 50% !important;
                    }
                }
                .present-box {
                    * {}
                }
            }
        }
    }
}
