* {
    font-family: "Roboto", sans-serif;
    margin: 0;
    padding: 0;
    text-decoration: none;
}
:root {
    --max-width: 1920px;
    --container: 1200px;
    --width-100: 100%;

    --color-white: white;
    --color-black: black;
    --color-FF9E30: #ff9e30;

    --background-white: white;
    --background-black: black;
    --background-F5911F: #f5911f;
}
/* 1. Đặt font-display để tránh font shift */
@font-face {
    font-display: swap; /* hoặc optional */
}

body {
    width: var(--width-100);
    font-size: 1rem;
    max-width: var(--max-width);
    min-width: 275px;
    min-height: 100vh;
    overflow-x: hidden;
}

main {
    margin-top: 110px;
}

/* carousel */
.carousel img {
    width: 100%;
    height: 100%;
    display: block;
}

.carousel {
    width: 100%;
    overflow: hidden;
    position: relative;
    aspect-ratio: 1920 / 700;
}

.carousel-track {
    display: flex;
    height: 100%;
    will-change: transform;
    transition: transform 0.4s ease;
}

.slide {
    min-width: 100%;
    flex-shrink: 0;
    height: 100%;
}

.slide img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
}

.nav {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    background: #0008;
    color: white;
    border: none;
    padding: 10px 14px;
    cursor: pointer;
    z-index: 10;
}

.prev {
    left: 10px;
}
.next {
    right: 10px;
}

.dots {
    position: absolute;
    bottom: 10px;
    left: 50%;
    transform: translateX(-50%);
    display: flex;
    gap: 6px;
}

.dot {
    width: 10px;
    height: 10px;
    background: #bbb;
    border-radius: 50%;
    cursor: pointer;
}

.dot.active {
    background: white;
}

@media only screen and (max-width: 999px) {
    main {
        margin-top: 51px !important;
    }
}
