* { box-sizing: border-box; }
        body { font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif; margin: 0; padding: 0; color: #333; background: #fff; }
        
        /* TOP NAV & HEADER */
        .top-bar { display: flex; justify-content: space-between; padding: 5px 20px; font-size: 12px; border-bottom: 1px solid #eee; }
        .top-bar a { color: #0053a0; text-decoration: none; margin-right: 15px; }
        header { display: flex; align-items: center; padding: 15px 20px; gap: 20px; border-bottom: 1px solid #ddd; }
        .search-box { flex-grow: 1; display: flex; }
        .search-box input { flex-grow: 1; padding: 10px; border: 2px solid #333; }
        .search-box button { background: #0053a0; color: white; border: none; padding: 0 25px; cursor: pointer; font-weight: bold; }

        .container { max-width: 1200px; margin: 0 auto; padding: 20px; }

        /* PRODUCT MAIN */
        .main-layout { display: grid; grid-template-columns: 1fr 1fr; gap: 30px; margin-bottom: 40px; }
        .main-image img { width: 100%; border: 1px solid #eee; }
        .price-area { background: #f7f7f7; padding: 20px; border-radius: 8px; }
        .price { font-size: 32px; font-weight: bold; margin: 10px 0; }
        .btn-buy { display: block; width: 100%; padding: 12px; margin: 5px 0; border-radius: 25px; border: none; font-weight: bold; cursor: pointer; text-align: center; text-decoration: none; }
        .blue { background: #0053a0; color: white; }
        .light-blue { background: #3498db; color: white; }

        /* SECTION TITLES */
        .section-title { font-size: 22px; font-weight: bold; border-bottom: 1px solid #ddd; padding-bottom: 10px; margin: 40px 0 20px; }

        /* GALLERY GRID */
        .gallery-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(150px, 1fr)); gap: 10px; }
        .gallery-grid img { width: 100%; height: 150px; object-fit: cover; border: 1px solid #ddd; }

        /* DESCRIPTION TABLE */
        .specs-table { width: 100%; border-collapse: collapse; margin-top: 15px; }
        .specs-table td { padding: 10px; border: 1px solid #eee; font-size: 14px; }
        .label { background: #f9f9f9; font-weight: bold; width: 25%; }

        /* REVIEWS */
        .review-card { border-bottom: 1px solid #eee; padding: 20px 0; }
        .stars { color: #f39c12; font-size: 18px; }
        .review-user { font-weight: bold; font-size: 14px; margin-bottom: 5px; }
        .review-text { font-size: 14px; color: #555; }

        /* FOOTER */
        footer { border-top: 2px solid #0053a0; margin-top: 50px; padding: 40px 20px; background: #fff; font-size: 12px; }
        .footer-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); gap: 20px; max-width: 1200px; margin: 0 auto; }
        .footer-col ul { list-style: none; padding: 0; }
        .footer-col li { margin-bottom: 5px; }
        .footer-col a { color: #666; text-decoration: none; }
        .copy { text-align: center; margin-top: 30px; border-top: 1px solid #eee; padding-top: 20px; color: #888; }