
    :root {
        --primary-navy: #003366;
        --safety-orange: #ff6600;
        --border-color: #e0e0e0;
        --bg-light: #f5f7fa;
        --text-main: #333;
    }

    body {
        font-family: 'Segoe UI', Roboto, Helvetica, Arial, sans-serif;
        color: var(--text-main);
        line-height: 1.6;
        margin: 0;
        padding: 20px;
        background-color: #fff;
    }

    .container {
        max-width: 1200px;
        margin: 0 auto;
    }

    /* --- 1. Header & Intro --- */
    .product-header {
        border-bottom: 3px solid var(--primary-navy);
        padding-bottom: 20px;
        margin-bottom: 30px;
    }

    .product-header h1 {
        font-size: 30px;
        color: var(--primary-navy);
        margin: 0 0 10px 0;
    }

    .badges {
        display: flex;
        flex-wrap: wrap;
        gap: 10px;
        margin-bottom: 20px;
    }

    .badge {
        background: var(--bg-light);
        border: 1px solid #ccc;
        padding: 4px 12px;
        font-size: 13px;
        font-weight: 600;
        border-radius: 4px;
        color: #555;
    }

    .badge.highlight {
        background: var(--primary-navy);
        color: #fff;
        border-color: var(--primary-navy);
    }

    /* --- 2. Product Hero (Image + Features) --- */
    .hero-grid {
        display: grid;
        grid-template-columns: 1fr;
        gap: 40px;
        margin-bottom: 50px;
    }

    @media (min-width: 768px) {
        .hero-grid { grid-template-columns: 1fr 1.5fr; }
    }

    .image-gallery {
        display: flex;
        flex-direction: column;
        gap: 15px;
    }

    .main-image {
        border: 1px solid var(--border-color);
        border-radius: 8px;
        padding: 20px;
        text-align: center;
        background: #fff;
    }

    .main-image img {
        max-width: 100%;
        height: auto;
    }

    .features-grid {
        display: grid;
        grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
        gap: 20px;
    }

    .feature-card {
        background: var(--bg-light);
        padding: 15px;
        border-radius: 6px;
        border-left: 4px solid var(--safety-orange);
    }

    .feature-title {
        font-weight: 700;
        color: var(--primary-navy);
        display: block;
        margin-bottom: 5px;
        font-size: 15px;
    }

    /* --- 3. Technical Table --- */
    .tech-section {
        margin-top: 50px;
    }

    .section-title {
        font-size: 24px;
        color: var(--primary-navy);
        margin-bottom: 20px;
        border-bottom: 1px solid var(--border-color);
        padding-bottom: 10px;
    }

    .diagram-placeholder {
        background: #fff;
        border: 1px dashed #999;
        padding: 20px;
        text-align: center;
        margin-bottom: 20px;
        color: #666;
        font-style: italic;
    }

    .table-container {
        width: 100%;
        overflow-x: auto;
        box-shadow: 0 2px 10px rgba(0,0,0,0.05);
        border-radius: 8px;
        border: 1px solid var(--border-color);
    }

    table {
        width: 100%;
        border-collapse: collapse;
        min-width: 1200px; /* Forces horizontal scroll on mobile */
        font-size: 13px;
        background: #fff;
    }

    th {
        background-color: var(--primary-navy);
        color: #fff;
        padding: 12px 8px;
        text-align: center;
        border: 1px solid #004080;
        vertical-align: middle;
        white-space: nowrap;
    }

    td {
        padding: 8px;
        border: 1px solid #eee;
        text-align: center;
        color: #444;
    }

    tr:nth-child(even) { background-color: #f9f9f9; }
    tr:hover { background-color: #eef6ff; }

