/* RESET + FONT */
*{
    box-sizing: border-box;
    font-family: 'Segoe UI', Arial, sans-serif;
}

body{
    margin: 0;
    padding: 30px;
    background: #f4f6f8;
    color: #333;
}

section{
    margin-bottom: 70px;
}

h2{
    margin-bottom: 20px;
    font-size: 26px;
    position: relative;
}

h2::after{
    content: "";
    width: 60px;
    height: 4px;
    background: orange;
    position: absolute;
    bottom: -8px;
    left: 0;
}

/* ================= BÀI 1: BUTTON ================= */
.buttons{
    display: flex;
    gap: 20px;
}

.btn{
    background: linear-gradient(135deg, #007bff, #00c6ff);
    color: white;
    padding: 14px 30px;
    border: none;
    border-radius: 30px;
    cursor: pointer;
    font-size: 16px;
    transition: all .5s ease;
}

.btn:hover{
    background: linear-gradient(135deg, orange, #ff9800);
    box-shadow: 0 10px 25px rgba(255,165,0,.5);
    transform: translateY(-3px);
}

.btn:active{
    transform: scale(0.95);
}

/* ================= BÀI 2: GALLERY ================= */
.gallery{
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 20px;
}

.gallery img{
    width: 100%;
    height: 200px;
    object-fit: cover;
    border-radius: 15px;
    transition: transform .4s ease, box-shadow .4s ease;
}

.gallery img:hover{
    transform: scale(1.1);
    box-shadow: 0 20px 35px rgba(0,0,0,.35);
}

/* ================= BÀI 3: MENU ================= */
.nav{
    list-style: none;
    display: flex;
    gap: 35px;
    padding: 0;
}

.nav a{
    text-decoration: none;
    font-size: 18px;
    color: #333;
    position: relative;
    padding-bottom: 6px;
    transition: color .3s ease;
}

.nav a:hover{
    color: orange;
}

.nav a::after{
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    height: 3px;
    width: 0;
    background: linear-gradient(to right, orange, #ff9800);
    transition: width .3s ease;
}

.nav a:hover::after{
    width: 100%;
}

/* ================= BÀI 4: CARD ================= */
.cards{
    display: flex;
    gap: 30px;
}

.card{
    background: white;
    width: 300px;
    border-radius: 20px;
    overflow: hidden;
    box-shadow: 0 8px 15px rgba(0,0,0,.15);
    transition: transform .3s ease, box-shadow .3s ease;
}

.card img{
    width: 100%;
    height: 200px;
    object-fit: cover;
    transition: transform .4s ease;
}

.card h3{
    padding: 15px 15px 0;
}

.card p{
    padding: 0 15px 15px;
    color: #555;
}

.card:hover{
    transform: translateY(-12px);
    box-shadow: 0 25px 40px rgba(0,0,0,.3);
}

.card:hover img{
    transform: scale(1.05);
}

/* ================= BÀI 5: BANNER ================= */
 .banner {
            height: 200px;
            background: #222;
            display: flex;
            align-items: center;
            overflow: hidden;
        }

        .hero-title {
            color: white;
            font-size: 40px;
            white-space: nowrap;
            animation: moveText 5s linear infinite;
        }
@keyframes moveText {
            from {
                transform: translateX(-100%);
            }
            to {
                transform: translateX(100%);
            }
        }
