﻿* {
        margin: 0;
        padding: 0;
        box-sizing: border-box;
    }

    body {
        padding-top: 75px;
        font-family: 'Roboto', sans-serif;
        font-size: 16px;
        line-height: 1.7;
        color: #555;
        background-color: #FDF8F0; /* Màu nền kem ấm hơn chút */
        overflow-x: hidden; /* Tránh scroll ngang ngoài ý muốn */
    }

    .container {
        width: 90%;
        max-width: 1140px;
        margin: 0 auto;
        padding: 0 15px;
    }

    h1, h2, h3, h4, h5, h6 {
        font-family: 'Playfair Display', serif;
        color: #4A3B31; /* Nâu đậm */
        font-weight: 700;
        margin-bottom: 0.5em;
    }

    p {
        margin-bottom: 1em;
    }

    a {
        color: #8B5A2B; /* Nâu vừa */
        text-decoration: none;
        transition: color 0.3s ease;
    }

    a:hover {
        color: #4A3B31;
    }

    img {
        max-width: 100%;
        height: auto;
        display: block; /* Loại bỏ khoảng trống dưới ảnh inline */
        border-radius: 4px; /* Bo góc nhẹ cho ảnh */
    }

    /* --- Header & Navigation --- */
    .site-header {
        background-color: #ffffff;
        padding: 15px 0;
        box-shadow: 0 2px 10px rgba(0,0,0,0.07);
        position: fixed; /* Navbar cố định */
        width: 100%;
        top: 0;
        left: 0;
        z-index: 1000;
    }

    .site-header .container {
        display: flex;
        justify-content: space-between;
        align-items: center;
    }

    .site-logo a {
        font-family: 'Playfair Display', serif;
        font-size: 1.8em; /* ~28px */
        color: #4A3B31 !important; /* Dùng !important nếu cần ghi đè */
        font-weight: bold;
    }

    .main-navigation ul {
        list-style: none;
        display: flex;
        align-items: center; /* Căn giữa các mục menu theo chiều dọc */
    }

    .main-navigation ul li {
        margin-left: 25px;
    }

    .main-navigation ul li a {
        color: #4A3B31;
        text-transform: uppercase;
        font-size: 0.9em;
        font-weight: 700;
        letter-spacing: 0.5px;
        padding-bottom: 5px; /* Cho gạch chân khi hover */
        position: relative;
    }

    .main-navigation ul li a::after { /* Gạch chân hiệu ứng */
        content: '';
        position: absolute;
        bottom: 0;
        left: 0;
        width: 0;
        height: 2px;
        background-color: #8B5A2B;
        transition: width 0.3s ease;
    }
    .main-navigation ul li a:hover::after,
    .main-navigation ul li.active a::after { /* Class 'active' cho trang hiện tại */
        width: 100%;
    }


    .auth-links {
        display: flex;
        align-items: center;
    }
    .auth-links a {
        margin-left: 15px;
        font-size: 0.9em;
    }
    .auth-links .btn-register {
         background-color: #8B5A2B;
         color: white !important;
         padding: 8px 15px;
         border-radius: 4px;
         font-weight: 600;
         transition: background-color 0.3s ease;
    }
    .auth-links .btn-register:hover {
        background-color: #7A4D22; /* Nâu đậm hơn khi hover */
    }
    /* Style cho link đăng xuất dạng button */
    .auth-links form a {
        background-color: transparent;
        border: 1px solid #8B5A2B;
        color: #8B5A2B;
        padding: 7px 14px; /* Nhỏ hơn nút đăng ký chút */
        border-radius: 4px;
        font-weight: 600;
        transition: background-color 0.3s ease, color 0.3s ease;
    }
    .auth-links form a:hover {
        background-color: #8B5A2B;
        color: white !important;
    }


    /* --- Main Content Area (Cần padding top để không bị che bởi header cố định) --- */
    .main-content {
        padding-top: 80px; /* Chiều cao của header (cần đo hoặc tính) + chút khoảng cách */
    }


    /* --- Hero Section --- */
    .hero-section {
        background: linear-gradient(rgba(0,0,0,0.3), rgba(0,0,0,0.3)), url('@Url.Content("~/Content/Images/hero-bg-coffee-standalone.jpg")') no-repeat center center;
        background-size: cover;
        color: #fff;
        padding: 100px 0; /* Giảm padding một chút */
        text-align: center;
        min-height: 65vh; /* Giảm chiều cao tối thiểu */
        display: flex;
        align-items: center;
        justify-content: center;
    }
    .hero-content h1 {
        font-size: 3.2em; /* Điều chỉnh kích thước */
        color: #fff;
        margin-bottom: 20px;
        line-height: 1.2;
        text-shadow: 2px 2px 6px rgba(0,0,0,0.6);
    }
    .hero-content p {
        font-size: 1.15em; /* Điều chỉnh kích thước */
        margin-bottom: 30px;
        font-weight: 300;
        max-width: 650px;
        margin-left: auto;
        margin-right: auto;
        text-shadow: 1px 1px 4px rgba(0,0,0,0.5);
    }
    .btn-cta { /* Call to action button */
        background-color: #8B5A2B;
        color: white !important; /* Đảm bảo màu chữ trắng */
        padding: 14px 32px;
        font-size: 1.05em;
        font-weight: 700;
        text-transform: uppercase;
        letter-spacing: 1px;
        border-radius: 5px;
        transition: background-color 0.3s ease, transform 0.2s ease;
        border: none; /* Loại bỏ border nếu có */
    }
    .btn-cta:hover {
        background-color: #7A4D22;
        transform: translateY(-2px);
        color: white !important;
    }

    /* --- Section Chung --- */
    .section {
        padding: 60px 0; /* Giảm padding section */
    }
    .section-bg-light {
        background-color: #fff; /* Nền trắng cho các section xen kẽ */
    }
    .section-title {
        text-align: center;
        margin-bottom: 40px; /* Giảm margin */
    }
    .section-title h2 {
        font-size: 2.3em; /* Điều chỉnh kích thước */
        position: relative;
        padding-bottom: 15px;
    }
    .section-title h2::after { /* Gạch chân trang trí */
        content: '';
        position: absolute;
        display: block;
        width: 60px; /* Điều chỉnh kích thước */
        height: 3px;
        background: #8B5A2B;
        bottom: 0;
        left: 50%;
        transform: translateX(-50%);
    }
    .section-title p.subtitle {
        font-size: 1em; /* Điều chỉnh kích thước */
        color: #777;
        max-width: 580px;
        margin: 10px auto 0 auto;
    }

    /* --- Featured Products Section --- */
    .product-grid {
        display: flex;
        flex-wrap: wrap;
        gap: 25px; /* Điều chỉnh khoảng cách */
        justify-content: center;
    }
    .product-card {
        background-color: #fff;
        border: 1px solid #EAE0D1;
        border-radius: 6px;
        width: calc(33.333% - 17px); /* (gap * 2/3) = 25 * 2/3 ~= 16.67 -> 17px */
        min-width: 270px;
        box-shadow: 0 4px 12px rgba(0,0,0,0.06);
        text-align: center;
        overflow: hidden;
        transition: transform 0.3s ease, box-shadow 0.3s ease;
        display: flex; /* Cho phép info co giãn */
        flex-direction: column;
    }
    .product-card:hover {
        transform: translateY(-5px);
        box-shadow: 0 8px 20px rgba(74,59,49,0.1);
    }
    .product-card img {
        width: 100%;
        height: 200px; /* Giảm chiều cao ảnh */
        object-fit: cover;
    }
    .product-info {
        padding: 18px; /* Điều chỉnh padding */
        flex-grow: 1; /* Cho phép info co giãn để nút ở cuối */
        display: flex;
        flex-direction: column;
        justify-content: space-between; /* Đẩy nút xuống dưới */
    }
    .product-info h4 {
        font-size: 1.2em; /* Điều chỉnh kích thước */
        margin-bottom: 8px;
        height: 42px; /* Điều chỉnh chiều cao */
        overflow: hidden;
    }
    .product-info .price {
        font-size: 1.3em; /* Điều chỉnh kích thước */
        font-weight: 700;
        color: #8B5A2B;
        margin-bottom: 12px; /* Điều chỉnh margin */
    }
    .product-info .btn-view-product {
        background-color: transparent;
        border: 2px solid #8B5A2B;
        color: #8B5A2B;
        padding: 8px 18px; /* Điều chỉnh padding */
        border-radius: 4px;
        font-weight: 600;
        transition: background-color 0.3s ease, color 0.3s ease;
        align-self: center; /* Căn giữa nút nếu cần */
        margin-top: auto; /* Đẩy nút xuống dưới cùng */
    }
    .product-info .btn-view-product:hover {
        background-color: #8B5A2B;
        color: white;
    }

    /* --- About Us Teaser Section --- */
    .about-teaser {
        display: flex;
        align-items: center;
        gap: 35px; /* Điều chỉnh khoảng cách */
    }
    .about-teaser-image {
        flex: 1;
    }
    .about-teaser-content {
        flex: 1.2;
    }
    .about-teaser-content h3 { /* Không cần thiết nếu dùng section-title */
        font-size: 2em;
        margin-bottom: 15px;
    }

    /* --- Call to Action Bar --- */
    .cta-bar {
        background-color: #4A3B31;
        color: #fff;
        padding: 35px 0; /* Điều chỉnh padding */
        text-align: center;
    }
    .cta-bar h3 {
        color: #fff;
        font-size: 1.7em; /* Điều chỉnh kích thước */
        margin-bottom: 10px;
    }
    .cta-bar p {
        color: #EAE0D1;
        margin-bottom: 20px;
        font-size: 1em; /* Điều chỉnh kích thước */
    }

    /* --- Footer --- */
    .site-footer {
        background-color: #3E352F;
        color: #b0a9a2;
        padding: 45px 0 20px 0; /* Điều chỉnh padding */
        font-size: 0.92em; /* Điều chỉnh kích thước */
    }
    .footer-content {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        gap: 25px; /* Điều chỉnh khoảng cách */
        margin-bottom: 25px; /* Điều chỉnh margin */
    }
    .footer-widget {
        flex-basis: 22%;
        min-width: 190px; /* Điều chỉnh chiều rộng tối thiểu */
    }
    .footer-widget h4 {
        color: #fff;
        font-size: 1.15em; /* Điều chỉnh kích thước */
        margin-bottom: 15px;
        text-transform: uppercase;
        letter-spacing: 0.5px;
    }
    .footer-widget ul {
        list-style: none;
        padding-left: 0; /* Loại bỏ padding mặc định của ul */
    }
    .footer-widget ul li {
        margin-bottom: 8px;
    }
    .footer-widget ul li a:hover {
        color: #FFF8DC;
        padding-left: 3px;
    }
    .footer-widget p i, .footer-widget address i {
        margin-right: 8px;
        color: #8B5A2B;
        width: 1em; /* Căn chỉnh icon */
        text-align: center;
    }
    .social-icons-footer a {
        display: inline-block;
        width: 32px; /* Điều chỉnh kích thước */
        height: 32px;
        line-height: 32px;
        text-align: center;
        border-radius: 50%;
        background-color: rgba(255,255,255,0.1);
        color: #FFF8DC;
        margin-right: 5px;
        transition: background-color 0.3s ease, color 0.3s ease;
    }
    .social-icons-footer a:hover {
        background-color: #8B5A2B;
        color: #fff;
    }
    .footer-bottom {
        text-align: center;
        padding-top: 20px;
        border-top: 1px solid #50463E;
        font-size: 0.88em; /* Điều chỉnh kích thước */
        color: #90887F;
    }

    /* Responsive adjustments */
    media (max-width: 991px) {
        .main-navigation ul li { margin-left: 15px; } /* Giảm khoảng cách menu */
        .auth-links a { margin-left: 10px; }

        .product-card {
            width: calc(50% - 12.5px); /* 25px gap / 2 = 12.5px */
        }
        .footer-widget {
            flex-basis: 45%;
            margin-bottom: 25px; /* Thêm margin bottom cho widget khi xếp 2 cột */
        }
    }

    media (max-width: 767px) {
        .main-content { padding-top: 70px; } /* Điều chỉnh cho header nhỏ hơn trên mobile */
        .main-navigation { display: none; } /* Tạm ẩn menu, cần JS để làm menu mobile */
        .site-header .container {
            justify-content: center; /* Logo ra giữa khi không có menu */
             /* Nếu có menu hamburger thì để space-between và style nút hamburger */
        }
        .auth-links { display: none; } /* Tạm ẩn */

        .hero-content h1 { font-size: 2.2em; }
        .hero-content p { font-size: 1em; }
        .hero-section { padding: 80px 0; min-height: 50vh; }


        .section-title h2 { font-size: 2em; }
        .section { padding: 40px 0; }

        .product-grid { flex-direction: column; align-items: center; gap: 20px; }
        .product-card { width: 90%; max-width: 350px; }

        .about-teaser { flex-direction: column; text-align: center; }
        .about-teaser-image img { margin-bottom: 20px; max-width: 80%; margin-left:auto; margin-right:auto;}
        .about-teaser-content .section-title { text-align: center; }


        .footer-content { flex-direction: column; text-align: center; }
        .footer-widget { flex-basis: 100%; margin-bottom: 25px; }
        .social-icons-footer { margin-bottom: 15px; }
    }