/*
Theme Name: Aurora Travel
Description: This is a child theme for Flatsome Theme
Author: UX Themes
Build by: Lâm Phúc Agency
Template: flatsome
Version: 3.0
*/
/* =========================================
   LUXURY HERO & CARDS - TONE VÀNG MATT & ĐEN (JOSEFIN SANS)
   ========================================= */

:root {
    --matte-gold: #C5A059;
    --deep-black: #121212;
    --card-black: #1e1e1e;
    --text-white: #ffffff;
    --text-gray: #a0a0a0;
    --font-main: 'Josefin Sans', sans-serif; 
}

/* Ép khung giao diện tràn viền màn hình (Full-width) */
.luxury-wrapper {
    font-family: var(--font-main);
    position: relative;
    width: 100vw;
    left: 50%;
    transform: translateX(-50%);
    overflow: hidden; /* Ngăn chặn cuộn ngang nếu có lỗi tràn phần tử */
}

/* Định hình Header nằm đè lên Hero Section */
.luxury-custom-header {
    position: absolute; 
    top: 0;
    left: 0;
    width: 100%;
    padding: 30px 5%;
    display: flex;
    justify-content: space-between;
    align-items: center;
    z-index: 100; 
    background: transparent; 
}

.logo {
    font-size: 32px;
    font-weight: 700;
    letter-spacing: 3px;
    color: var(--matte-gold);
    display: flex;
    align-items: center;
    gap: 12px;
}

.logo-icon {
    width: 32px;
    height: 32px;
    background: var(--matte-gold);
    clip-path: polygon(50% 0%, 100% 25%, 100% 75%, 50% 100%, 0% 75%, 0% 25%);
}

.main-nav ul {
    list-style: none;
    display: flex;
    gap: 40px;
    margin: 0; 
    padding: 0;
}

.main-nav a {
    text-decoration: none;
    color: var(--text-white);
    font-size: 15px;
    text-transform: uppercase;
    font-weight: 600;
    letter-spacing: 1px;
    transition: color 0.3s ease;
}

.main-nav a:hover {
    color: var(--matte-gold);
}

/* =========================================
   BỐ CỤC HERO CHIA HAI CỘT 
   ========================================= */
.luxury-hero {
    position: relative;
    width: 100%;
    min-height: 90vh;
    padding: 180px 5% 0 5%; 
    background: linear-gradient(to right, rgba(0, 0, 0, 0.9) 20%, rgba(0, 0, 0, 0.5) 100%), 
                url('http://banmai.webapps.io.vn/wp-content/uploads/2026/05/thailand.jpg') center/cover no-repeat;
}

.hero-container {
    max-width: 1300px;
    margin: 0 auto;
    width: 100%;
    display: flex;
    justify-content: space-between;
    align-items: flex-end; 
    position: relative;
    z-index: 10;
}

/* Cột trái: Văn bản */
.hero-content {
    flex: 1;
    max-width: 580px;
    padding-bottom: 120px; 
}

.hero-title {
    font-size: clamp(50px, 8vw, 95px); 
    font-weight: 600;
    letter-spacing: 8px;
    color: var(--matte-gold);
    margin-bottom: 25px;
    text-transform: uppercase;
    line-height: 1;
}

.hero-desc {
    font-size: 18px;
    line-height: 1.8;
    color: var(--text-gray);
    margin-bottom: 45px;
    font-weight: 300;
}

.btn-luxury-credentials {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    padding: 16px 40px;
    background: transparent;
    color: var(--matte-gold);
    border: 1px solid var(--matte-gold);
    text-decoration: none;
    font-weight: 600;
    border-radius: 40px;
    letter-spacing: 2px;
    transition: all 0.4s ease;
}

.btn-luxury-credentials:hover {
    background: var(--matte-gold);
    color: var(--deep-black);
    box-shadow: 0 10px 25px rgba(197, 160, 89, 0.3);
    transform: translateY(-3px);
}

/* Vòng tròn trang trí */
.luxury-decor-circle {
    position: absolute;
    top: 25%;
    right: 40%;
    width: 60px;
    height: 60px;
    background: var(--matte-gold);
    border-radius: 50%;
    opacity: 0.15;
    animation: floatAnim 6s ease-in-out infinite;
}

@keyframes floatAnim {
    0%, 100% { transform: translateY(0); }
    50% { transform: translateY(-40px); }
}

/* =========================================
   CỘT PHẢI: KHỐI CARD SỨ MỆNH / TẦM NHÌN
   ========================================= */
.luxury-cards-wrapper {
    display: flex;
    gap: 30px;
    margin-bottom: -60px; 
}

.luxury-feature-card {
    background: var(--card-black);
    border: 1px solid #2a2a2a;
    width: 300px;
    padding: 50px 25px;
    text-align: center;
    transition: all 0.4s ease;
}

.luxury-feature-card:hover {
    border-color: var(--matte-gold);
    transform: translateY(-12px);
    box-shadow: 0 20px 40px rgba(0,0,0,0.8);
}

.hex-icon {
    width: 80px;
    height: 80px;
    border: 1px solid var(--matte-gold);
    margin: 0 auto 25px;
    display: flex;
    justify-content: center;
    align-items: center;
    clip-path: polygon(50% 0%, 100% 25%, 100% 75%, 50% 100%, 0% 75%, 0% 25%);
}

/* CSS CHO THẺ IMG THAY THẾ ICON */
.hex-icon img {
    width: 40px;      /* Độ rộng của ảnh bên trong lục giác */
    height: 40px;     /* Chiều cao của ảnh */
    object-fit: contain; /* Đảm bảo ảnh không bị méo */
    transition: transform 0.3s ease;
}

.luxury-feature-card:hover .hex-icon img {
    transform: scale(1.15); /* Hiệu ứng phóng to ảnh khi hover */
}

.luxury-feature-card h3 {
    color: var(--text-white);
    margin-bottom: 15px;
    font-size: 24px;
    letter-spacing: 1.5px;
}

.luxury-feature-card p {
    color: var(--text-gray);
    font-size: 15px;
    line-height: 1.7;
    font-weight: 300;
}

/* =========================================
   ĐƯỜNG SÓNG VÀ RESPONSIVE
   ========================================= */
.hero-wave-divider {
    position: absolute;
    bottom: -1px;
    left: 0;
    width: 100%;
    line-height: 0;
}

.hero-wave-divider svg {
    width: 100%;
    height: 140px;
}

/* Chỉnh bố cục xếp dọc cho Mobile và Tablet */
@media (max-width: 1100px) {
    .hero-container {
        flex-direction: column;
        align-items: center;
        text-align: center;
        gap: 60px;
    }
    
    .hero-content {
        padding-bottom: 0;
        margin-top: 80px;
    }

    .luxury-cards-wrapper {
        margin-bottom: -50px;
        flex-wrap: wrap;
        justify-content: center;
    }
}




/* =========================================
   PHẦN GIẢI PHÁP TRUYỀN THÔNG 
   ========================================= */

/* Định dạng khu vực bao ngoài (Tràn viền, Nền tối) */
.luxury-solution-section {
    position: relative;
    width: 100vw;
    left: 50%;
    transform: translateX(-50%);
    background-color: #161616; /* Màu nền đen nhạt hơn phần Hero một chút để phân tách không gian */
    padding: 100px 5%;
    overflow: hidden;
    font-family: var(--font-main); /* Kế thừa font Josefin Sans */
}

/* Container chính chia 2 cột */
.solution-container {
    max-width: 1300px;
    margin: 0 auto;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 60px;
    position: relative;
    z-index: 10;
}

/* --- CỘT TRÁI (HÌNH ẢNH) --- */
.solution-image-col {
    flex: 1;
    max-width: 50%;
}

.solution-demo-img {
    width: 100%;
    height: auto;
    object-fit: contain;
    border-radius: 10px;
    /* Hiệu ứng nổi nhẹ cho ảnh */
    animation: floatImage 6s ease-in-out infinite;
}

@keyframes floatImage {
    0%, 100% { transform: translateY(0); }
    50% { transform: translateY(-15px); }
}

/* --- CỘT PHẢI (NỘI DUNG) --- */
.solution-content-col {
    flex: 1;
    max-width: 50%;
}

.solution-title {
    color: var(--matte-gold);
    font-size: clamp(32px, 4vw, 42px);
    font-weight: 700;
    margin-bottom: 25px;
    line-height: 1.3;
    letter-spacing: 2px;
    text-transform: uppercase;
}

.solution-desc {
    color: var(--text-gray);
    font-size: 16px;
    line-height: 1.8;
    margin-bottom: 40px;
    font-weight: 300;
}

/* Nút bấm (Button) */
.btn-luxury-outline {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    padding: 14px 35px;
    border: 1px solid var(--text-gray);
    color: var(--text-white);
    text-decoration: none;
    border-radius: 40px;
    font-weight: 600;
    letter-spacing: 1.5px;
    font-size: 14px;
    transition: all 0.4s ease;
}

.btn-luxury-outline:hover {
    border-color: var(--matte-gold);
    color: var(--matte-gold);
    transform: translateX(5px); /* Hiệu ứng trượt sang phải khi di chuột */
}

/* --- HỌA TIẾT TRANG TRÍ (DECORATIONS) --- */
.decor-dots-pattern {
    position: absolute;
    top: 50px;
    left: 5%;
    width: 150px;
    height: 80px;
    /* Tạo pattern dấu chấm bi */
    background-image: radial-gradient(var(--text-gray) 2px, transparent 2px);
    background-size: 20px 20px;
    opacity: 0.15;
}

.decor-circle-top {
    position: absolute;
    top: 30px;
    left: 45%;
    width: 45px;
    height: 45px;
    background: var(--text-gray);
    border-radius: 50%;
    opacity: 0.1;
}

.decor-polygon-bottom {
    position: absolute;
    bottom: -80px;
    right: -80px;
    width: 300px;
    height: 300px;
    background: var(--matte-gold);
    clip-path: polygon(25% 0%, 100% 0%, 100% 100%, 0% 100%, 0% 25%);
    opacity: 0.05; /* Rất mờ để tạo cảm giác sang trọng, không bị gắt */
    transform: rotate(-15deg);
}

/* --- RESPONSIVE (MOBILE & TABLET) --- */
@media (max-width: 991px) {
    .solution-container {
        flex-direction: column;
        text-align: center;
        gap: 40px;
    }
    
    .solution-image-col, .solution-content-col {
        max-width: 100%;
    }

    .decor-dots-pattern, .decor-circle-top {
        display: none; /* Ẩn bớt họa tiết trên mobile cho gọn */
    }
}






/* =========================================
   PHẦN DỰ ÁN TIÊU BIỂU (3D SLIDER)
   ========================================= */

.luxury-projects-section {
    position: relative;
    width: 100vw;
    left: 50%;
    transform: translateX(-50%);
    background-color: var(--deep-black, #121212);
    padding: 80px 0 100px 0;
    overflow: hidden;
    font-family: var(--font-main, 'Josefin Sans', sans-serif);
}

.projects-container {
    max-width: 1400px;
    margin: 0 auto;
    text-align: center;
}

.projects-title {
    color: var(--matte-gold, #C5A059);
    font-size: clamp(35px, 5vw, 45px);
    font-weight: 700;
    letter-spacing: 3px;
    margin-bottom: 50px;
    text-transform: uppercase;
}

/* Khu vực Slider */
.slider-wrapper {
    position: relative;
    width: 100%;
    height: 500px; /* Chiều cao cố định cho slider */
    display: flex;
    justify-content: center;
    align-items: center;
}

.slider-track {
    position: relative;
    width: 100%;
    height: 100%;
}

/* Các thẻ Dự án mặc định (Bị ẩn) */
.project-slide {
    position: absolute;
    top: 0;
    left: 50%;
    width: 320px;
    height: 450px;
    border-radius: 15px;
    overflow: hidden;
    background: #1e1e1e;
    box-shadow: 0 15px 35px rgba(0,0,0,0.5);
    /* Gốc tọa độ ở giữa, tiện cho việc scale và translate */
    transform-origin: center center;
    transition: transform 0.6s cubic-bezier(0.25, 1, 0.5, 1), 
                opacity 0.6s ease, z-index 0.6s;
    opacity: 0;
    pointer-events: none; /* Không thể click khi bị ẩn */
    border: 1px solid #333;
}

/* Ảnh bên trong thẻ */
.project-slide img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.4s ease;
}

/* Tiêu đề chèn lên ảnh */
.project-info {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    padding: 20px 15px;
    background: linear-gradient(to top, rgba(0,0,0,0.9), transparent);
    color: white;
}

.project-info h3 {
    font-size: 18px;
    letter-spacing: 1px;
    margin: 0;
    color: var(--text-white, #fff);
}

/* --- CÁC TRẠNG THÁI HIỂN THỊ CỦA SLIDE (Tạo hiệu ứng 3D) --- */

/* Slide đang active (Nằm giữa) */
.project-slide.active {
    opacity: 1;
    z-index: 5;
    transform: translateX(-50%) scale(1);
    pointer-events: auto;
    border-color: var(--matte-gold, #C5A059);
}

/* Slide hai bên (Bên cạnh Active) */
.project-slide.prev {
    opacity: 0.6;
    z-index: 4;
    transform: translateX(-140%) scale(0.85); /* Đẩy sang trái 140%, thu nhỏ 85% */
}

.project-slide.next {
    opacity: 0.6;
    z-index: 4;
    transform: translateX(40%) scale(0.85); /* Đẩy sang phải 40%, thu nhỏ 85% */
}

/* Slide ngoài cùng (Bên cạnh Prev và Next) */
.project-slide.prev-outer {
    opacity: 0.2;
    z-index: 3;
    transform: translateX(-210%) scale(0.7);
}

.project-slide.next-outer {
    opacity: 0.2;
    z-index: 3;
    transform: translateX(110%) scale(0.7);
}

/* =========================================
   CẬP NHẬT KÍCH THƯỚC NÚT MŨI TÊN (45px) GỌN GÀNG
   ========================================= */

/* 1. Kích thước vòng tròn bên ngoài */
.slider-btn {
    display: flex;
    justify-content: center; /* Căn giữa icon theo chiều ngang */
    align-items: center;     /* Căn giữa icon theo chiều dọc */
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    background: transparent;
    color: var(--matte-gold, #C5A059);
    border: 2px solid var(--matte-gold, #C5A059);
    
    /* Khóa cứng kích thước vòng tròn ở mức 45px */
    width: 45px !important; 
    height: 45px !important; 
    padding: 0 !important; /* Xóa mọi khoảng đệm mặc định đẩy icon ra ngoài */
    
    border-radius: 50%;
    cursor: pointer;
    z-index: 10;
    transition: all 0.3s ease;
}

/* 2. Kích thước mũi tên độc lập bên trong */
.slider-btn i,
.slider-btn svg {
    /* Đặt kích thước icon ở mức 20px để cân đối với vòng 45px */
    font-size: 20px !important; /* Dành cho thẻ i (FontAwesome) */
    width: 20px !important;     /* Dành cho thẻ svg */
    height: 20px !important;    /* Dành cho thẻ svg */
    
    line-height: 1;
    margin: 0 !important; /* Đảm bảo không có lề thừa làm lệch tâm */
    color: inherit; 
    display: block;
}

/* Hiệu ứng khi rê chuột */
.slider-btn:hover {
    background: var(--matte-gold, #C5A059);
    color: var(--deep-black, #121212);
}

.prev-btn { left: 5%; }
.next-btn { right: 5%; }

/* --- ĐIỀU HƯỚNG BẰNG ĐƯỜNG KẺ NGANG (LINE INDICATORS) --- */

.slider-dots {
    display: flex;
    justify-content: center;
    gap: 8px; /* Khoảng cách giữa các đường kẻ */
    margin-top: 30px;
}

.dot {
    width: 30px; /* Độ dài mặc định của đường kẻ */
    height: 4px; /* Độ dày (chiều cao) của đường kẻ */
    border-radius: 4px; /* Bo góc nhẹ nhàng ở 2 đầu */
    background: #444; /* Màu xám tối cho slide chưa chọn */
    cursor: pointer;
    transition: all 0.4s cubic-bezier(0.25, 1, 0.5, 1); /* Hiệu ứng chuyển động mượt */
}

/* Trạng thái khi slide đang được hiển thị */
.dot.active {
    background: var(--matte-gold, #C5A059); /* Chuyển sang màu vàng sang trọng */
    width: 55px; /* Kéo dài hơn để làm nổi bật vị trí hiện tại */
}

/* --- RESPONSIVE MOBILE --- */
@media (max-width: 768px) {
    .project-slide { width: 260px; height: 380px; }
    .project-slide.prev { transform: translateX(-110%) scale(0.8); opacity: 0; }
    .project-slide.next { transform: translateX(10%) scale(0.8); opacity: 0; }
    .slider-btn { display: none; } /* Ẩn nút mũi tên trên điện thoại */
}



/* =========================================
   PHẦN ĐỐI TÁC - KHÁCH HÀNG (DARK THEME)
   ========================================= */

.luxury-partners-section {
    position: relative;
    width: 100vw;
    left: 50%;
    transform: translateX(-50%);
    background-color: #161616; /* Nền tối khác biệt nhẹ với #121212 */
    padding: 100px 5%;
    overflow: hidden;
    font-family: var(--font-main, 'Josefin Sans', sans-serif);
}

.partners-container {
    max-width: 1300px;
    margin: 0 auto;
    position: relative;
    z-index: 10;
}

.partners-title {
    color: var(--matte-gold, #C5A059);
    font-size: clamp(32px, 5vw, 42px);
    font-weight: 700;
    text-align: center;
    letter-spacing: 3px;
    margin-bottom: 60px;
    text-transform: uppercase;
}

/* --- KHUNG TRƯỢT --- */
.partners-slider-wrapper {
    position: relative;
    display: flex;
    align-items: center;
}

.partners-track {
    display: flex;
    gap: 25px; /* Khoảng cách giữa các cột */
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    scroll-behavior: smooth;
    padding: 15px 0;
    width: calc(100% - 130px); /* Chừa không gian cho 2 nút bấm ở hai bên */
    margin: 0 auto;
    
    /* Ẩn thanh cuộn mặc định cho đẹp */
    scrollbar-width: none; 
    -ms-overflow-style: none;
}

.partners-track::-webkit-scrollbar {
    display: none;
}

/* --- CỘT VÀ Ô LOGO --- */
.partner-column {
    /* Hiển thị 5 cột trên Desktop. Tính toán chiều rộng = (100% / 5) - gap */
    flex: 0 0 calc(20% - 20px);
    scroll-snap-align: start;
    display: flex;
    flex-direction: column;
    gap: 25px; /* Khoảng cách giữa logo trên và logo dưới */
}

.partner-box {
    background-color: var(--card-black, #1e1e1e);
    border: 1px solid #333;
    border-radius: 10px;
    height: 120px;
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 20px;
    transition: all 0.4s ease;
    cursor: pointer;
}

/* Hiệu ứng xám logo mặc định và hiện màu khi Hover */
.partner-box img {
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
    filter: grayscale(100%) brightness(0.8); /* Làm xám và hơi tối đi */
    transition: all 0.4s ease;
}

.partner-box:hover {
    border-color: var(--matte-gold, #C5A059);
    transform: translateY(-5px);
    box-shadow: 0 10px 25px rgba(197, 160, 89, 0.15); /* Tỏa sáng vàng nhẹ */
}

.partner-box:hover img {
    filter: grayscale(0%) brightness(1); /* Hiện màu gốc */
}

/* --- ĐỊNH VỊ LẠI NÚT BẤM --- */
.prev-partner { left: 0; }
.next-partner { right: 0; }

/* --- HỌA TIẾT TRANG TRÍ CHUẨN DARK THEME --- */
.decor-partner-polygon {
    position: absolute;
    top: -50px;
    left: -50px;
    width: 200px;
    height: 200px;
    background: var(--matte-gold, #C5A059);
    clip-path: polygon(0% 0%, 100% 0%, 50% 100%, 0% 100%);
    opacity: 0.03; /* Cực kỳ mờ để không tranh giành sự chú ý */
}

.decor-partner-dots {
    position: absolute;
    bottom: 50px;
    right: 5%;
    width: 100px;
    height: 150px;
    background-image: radial-gradient(var(--text-gray, #a0a0a0) 2px, transparent 2px);
    background-size: 20px 20px;
    opacity: 0.1;
}

/* --- RESPONSIVE CHO ĐIỆN THOẠI & TABLET --- */
@media (max-width: 1024px) {
    .partner-column { flex: 0 0 calc(33.333% - 17px); } /* 3 cột trên Tablet */
}

@media (max-width: 768px) {
    .partner-column { flex: 0 0 calc(50% - 12.5px); } /* 2 cột trên Mobile */
    .prev-partner, .next-partner { display: none; } /* Mobile vuốt tay tiện hơn bấm nút */
    .partners-track { width: 100%; }
}



/* =========================================
   PHẦN TIN MỚI NHẤT (NEWS SLIDER)
   ========================================= */

.luxury-news-section {
    position: relative;
    width: 100vw;
    left: 50%;
    transform: translateX(-50%);
    background-color: var(--deep-black, #121212);
    padding: 80px 5%;
    overflow: hidden;
    font-family: var(--font-main, 'Josefin Sans', sans-serif);
}

.news-container {
    max-width: 1300px;
    margin: 0 auto;
}

/* Phần Header chứa Tiêu đề và Mũi tên */
.news-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 40px;
}

.news-title {
    color: var(--matte-gold, #C5A059);
    font-size: clamp(28px, 4vw, 36px);
    font-weight: 700;
    letter-spacing: 2px;
    text-transform: uppercase;
    margin: 0;
}

.news-arrows {
    display: flex;
    gap: 15px;
}

.news-nav-btn {
    background: transparent;
    color: var(--text-gray, #a0a0a0);
    border: none;
    cursor: pointer;
    transition: color 0.3s ease;
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 5px;
}

.news-nav-btn svg {
    width: 30px;
    height: 30px;
}

.news-nav-btn:hover {
    color: var(--matte-gold, #C5A059);
}

/* Khung trượt */
.news-slider-wrapper {
    position: relative;
}

.news-track {
    display: flex;
    gap: 30px;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    scroll-behavior: smooth;
    padding-bottom: 20px;
    
    /* Ẩn thanh cuộn mặc định */
    scrollbar-width: none; 
    -ms-overflow-style: none;
}

.news-track::-webkit-scrollbar {
    display: none;
}

/* Thẻ Bài Viết (Card) */
.news-card {
    flex: 0 0 calc(33.333% - 20px); /* Hiển thị 3 thẻ trên PC */
    scroll-snap-align: start;
    background-color: var(--card-black, #1e1e1e);
    border-radius: 12px;
    overflow: hidden;
    border: 1px solid #2a2a2a;
    transition: transform 0.4s ease, box-shadow 0.4s ease;
}

.news-card:hover {
    transform: translateY(-8px);
    box-shadow: 0 15px 30px rgba(0,0,0,0.6);
    border-color: #333;
}

/* Ảnh bài viết */
.news-img-wrap {
    width: 100%;
    aspect-ratio: 16 / 10;
    overflow: hidden;
}

.news-img-wrap img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.6s ease;
}

.news-card:hover .news-img-wrap img {
    transform: scale(1.08); /* Phóng to ảnh nhẹ khi hover */
}

/* Nội dung chữ */
.news-content {
    padding: 30px 25px;
}

.news-date {
    display: block;
    color: var(--matte-gold, #C5A059);
    font-size: 13px;
    margin-bottom: 15px;
    letter-spacing: 1px;
}

.news-card-title {
    font-size: 20px;
    line-height: 1.4;
    margin-bottom: 15px;
}

.news-card-title a {
    color: var(--text-white, #ffffff);
    text-decoration: none;
    transition: color 0.3s ease;
}

.news-card:hover .news-card-title a {
    color: var(--matte-gold, #C5A059);
}

.news-excerpt {
    color: var(--text-gray, #a0a0a0);
    font-size: 15px;
    line-height: 1.6;
    margin: 0;
    font-weight: 300;
}

/* Đường kẻ điều hướng (Line Indicators) */
.news-indicators {
    display: flex;
    justify-content: center;
    gap: 8px;
    margin-top: 20px;
}

.news-dot {
    width: 30px;
    height: 4px;
    border-radius: 4px;
    background: #444;
    cursor: pointer;
    transition: all 0.4s cubic-bezier(0.25, 1, 0.5, 1);
}

.news-dot.active {
    background: var(--matte-gold, #C5A059);
    width: 55px;
}

/* Responsive Mobile & Tablet */
@media (max-width: 991px) {
    .news-card { flex: 0 0 calc(50% - 15px); } /* 2 thẻ trên Tablet */
}

@media (max-width: 768px) {
    .news-header {
        flex-direction: column;
        gap: 20px;
        align-items: flex-start;
    }
    .news-card { flex: 0 0 100%; } /* 1 thẻ trên Mobile */
    .news-track { gap: 20px; }
}




/* =========================================
   PHẦN FOOTER VÀ BIỂU MẪU (DARK THEME)
   ========================================= */

.luxury-footer-section {
    position: relative;
    width: 100vw;
    left: 50%;
    transform: translateX(-50%);
    
    /* Thay thế màu nền trơn bằng Ảnh nền + Lớp phủ Gradient đen mờ */
    background: linear-gradient(to bottom, rgba(18, 18, 18, 0.95) 0%, rgba(18, 18, 18, 0.8) 100%), 
                url('https://images.unsplash.com/photo-1511795409834-ef04bbd61622?auto=format&fit=crop&w=1920&q=80') center/cover no-repeat;
    
    /* Hiệu ứng Parallax nhẹ: Ảnh nền đứng yên khi cuộn trang */
    background-attachment: fixed;
    
    padding: 100px 5% 50px 5%;
    font-family: var(--font-main, 'Josefin Sans', sans-serif);
    color: var(--text-white, #fff);
}

.footer-container {
    max-width: 1000px; /* Thu hẹp lại một chút để form nhìn tập trung hơn */
    margin: 0 auto;
}

.footer-title {
    text-align: center;
    font-size: clamp(30px, 4vw, 40px);
    font-weight: 700;
    letter-spacing: 2px;
    margin-bottom: 50px;
}

/* --- ĐỊNH DẠNG FORM --- */
.emera-contact-form {
    margin-bottom: 80px;
}

.form-row {
    display: flex;
    gap: 40px;
    margin-bottom: 30px;
}

.form-group {
    flex: 1;
}

.form-group.full-width {
    width: 100%;
}

/* Thiết kế Input chỉ có viền dưới */
.form-group input {
    width: 100%;
    background: transparent;
    border: none;
    border-bottom: 1px solid var(--text-gray, #888);
    color: var(--text-white, #fff);
    padding: 10px 5px;
    font-size: 16px;
    font-family: inherit;
    transition: border-color 0.3s ease;
}

.form-group input:focus {
    outline: none;
    border-bottom-color: var(--matte-gold, #C5A059); /* Sáng vàng lên khi gõ */
}

.form-group input::placeholder {
    color: var(--text-gray, #888);
}

.form-submit-wrap {
    text-align: center;
    margin-top: 40px;
}

.btn-submit-gold {
    background: var(--matte-gold, #C5A059);
    color: var(--deep-black, #121212);
    border: none;
    padding: 15px 40px;
    font-size: 16px;
    font-weight: 700;
    border-radius: 30px;
    cursor: pointer;
    letter-spacing: 1px;
    transition: all 0.3s ease;
}

.btn-submit-gold:hover {
    background: #dfb96e;
    transform: translateY(-3px);
    box-shadow: 0 10px 20px rgba(197, 160, 89, 0.2);
}

/* Thông báo phản hồi */
.form-response-message {
    text-align: center;
    margin-top: 20px;
    font-size: 16px;
}
.msg-success { color: #4CAF50; }
.msg-error { color: #F44336; }

/* --- ĐỊNH DẠNG THÔNG TIN LIÊN HỆ --- */
.footer-contact-info {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin-bottom: 80px;
    text-align: center;
}

.contact-item {
    flex: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 15px;
}

.contact-icon {
    width: 45px;
    height: 45px;
    background: var(--matte-gold, #C5A059);
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    color: var(--deep-black, #121212);
}

.contact-icon svg {
    width: 20px;
    height: 20px;
}

.contact-item p {
    font-size: 15px;
    line-height: 1.6;
    color: var(--text-white, #fff);
    font-weight: 300;
}

/* --- LOGO FOOTER --- */
.footer-logo-wrap {
    text-align: center;
    border-top: 1px solid #222;
    padding-top: 40px;
}

.footer-logo {
    font-size: 36px;
    font-weight: 700;
    letter-spacing: 3px;
    color: var(--matte-gold, #C5A059);
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 15px;
    margin-bottom: 10px;
}

.company-name {
    color: var(--text-gray, #a0a0a0);
    letter-spacing: 1.5px;
    font-size: 14px;
}

/* --- RESPONSIVE MOBILE --- */
@media (max-width: 768px) {
    .form-row { flex-direction: column; gap: 20px; margin-bottom: 20px; }
    .footer-contact-info { flex-direction: column; gap: 40px; }
}




/* =========================================
   ĐỒNG BỘ MÀU SẮC ABSOLUTE FOOTER (BẢN QUYỀN)
   ========================================= */

/* Đổi màu nền và màu chữ tổng thể của thanh dưới cùng */
.absolute-footer {
    background-color: #121212 !important; /* Nền đen sâu đồng bộ với footer trên */
    color: var(--matte-gold, #C5A059) !important; /* Màu chữ vàng matte */
    border-top: 1px solid #222; /* Thêm một đường viền siêu mỏng phía trên để phân cách nhẹ nhàng */
}

/* Đảm bảo toàn bộ chữ, thẻ in đậm (strong) hoặc liên kết bên trong đều hiển thị đúng màu vàng */
.absolute-footer .copyright,
.absolute-footer strong,
.absolute-footer a {
    color: var(--matte-gold, #C5A059) !important;
}

/* Hiệu ứng khi di chuột vào link (nếu sau này bạn có chèn link) */
.absolute-footer a:hover {
    color: #fff !important; 
    transition: color 0.3s ease;
}