body{
    font-family: "Inter", sans-serif;
    /* background-color: #121212; */
    background-color: hsl(215 20% 12%);
    color: #ffff;
}

a{
    color: #fff;
    text-decoration: none;
}

ul{
    list-style: none;
    padding-left: 0;
}

.text-muted{
    color: #9CA3AF !important;
}


/* =================================================================
   CAPABILITIES PAGE STYLES
   ================================================================= */

.page-wrapper {
    padding-top: 140px; /* Space for fixed header */
    padding-bottom: 80px;
    background-color: #0D1117; /* Very dark page bg */
    min-height: 100vh;
}

/* --- HEADER --- */
.page-header h1 {
    font-size: 42px;
    font-weight: 700;
    color: #fff;
    margin-bottom: 20px;
}

.page-header p {
    font-size: 16px;
    color: #9CA3AF;
    max-width: 800px;
    margin: 0 auto 60px auto;
    line-height: 1.6;
}

.section-heading {
    font-size: 22px;
    font-weight: 600;
    color: #fff;
    margin-bottom: 20px;
}

/* --- 1. SPECS TABLE --- */
.specs-container {
    background-color: #161B22;
    border: 1px solid #30363D;
    border-radius: 12px;
    padding: 30px;
    overflow: hidden;
}

.specs-table {
    display: flex;
    flex-direction: column;
}

.spec-row {
    display: flex;
    border-bottom: 1px solid rgba(255,255,255,0.05);
    padding: 16px 0;
}

.spec-row:last-child {
    border-bottom: none;
}

.spec-row.header {
    border-bottom: 1px solid rgba(255,255,255,0.2);
    margin-bottom: 10px;
}

.spec-col {
    font-size: 14px;
}

.spec-col.param {
    width: 30%;
    color: #E5E7EB;
    font-weight: 600;
}

.spec-col.val {
    width: 70%;
    color: #9CA3AF;
    font-family: 'Courier New', Courier, monospace; /* Code look */
    letter-spacing: 0.5px;
}

/* --- 2. ADVANCED CAPABILITIES GRID --- */
.adv-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 25px;
}

.adv-card {
    background-color: #161B22;
    border: 1px solid #30363D;
    border-radius: 12px;
    padding: 30px;
    transition: 0.3s;
    position: relative;
    overflow: hidden;
}

/* Subtle blue corner accent idea */
.adv-card::before {
    content: '';
    position: absolute;
    top: 0; left: 0;
    width: 3px; height: 100%;
    background-color: #2563EB;
    opacity: 0;
    transition: 0.3s;
}

.adv-card:hover {
    border-color: #2563EB;
    transform: translateY(-2px);
}

.adv-card:hover::before {
    opacity: 1;
}

.adv-card h4 {
    color: #fff;
    font-size: 18px;
    font-weight: 700;
    margin-bottom: 20px;
}

.adv-card ul {
    list-style: none;
    padding: 0;
    margin: 0;
}

.adv-card ul li {
    color: #9CA3AF;
    font-size: 14px;
    margin-bottom: 12px;
    display: flex;
    align-items: center;
    gap: 10px;
}

.adv-card ul li i {
    color: #2563EB; /* Blue icons */
    font-size: 12px;
    width: 16px;
}

/* --- 3. MATERIALS GRID --- */
.materials-container {
    background-color: #161B22;
    border: 1px solid #30363D;
    border-radius: 12px;
    padding: 30px;
}

.materials-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 15px;
}

.mat-item {
    background-color: rgba(255,255,255,0.03);
    border: 1px solid rgba(255,255,255,0.05);
    color: #D1D5DB;
    padding: 15px;
    border-radius: 6px;
    font-size: 13px;
    font-family: 'Courier New', monospace;
    display: flex;
    align-items: center;
}

.mat-item.full-width {
    grid-column: span 3;
}

/* --- 4. PAGE CTA --- */
.page-cta-box {
    background-color: #161B22;
    border: 1px solid #30363D;
    border-radius: 12px;
    padding: 60px;
    text-align: center;
}

.page-cta-box h2 {
    color: #fff;
    font-size: 28px;
    font-weight: 700;
    margin-bottom: 15px;
}

.page-cta-box p {
    color: #9CA3AF;
    margin-bottom: 30px;
    max-width: 600px;
    margin-left: auto;
    margin-right: auto;
}

.btn-page-cta {
    background-color: #2563EB;
    color: #fff;
    padding: 12px 30px;
    border-radius: 6px;
    text-decoration: none;
    font-weight: 600;
    transition: 0.3s;
    display: inline-block;
}

.btn-page-cta:hover {
    background-color: #1D4ED8;
    color: #fff;
}

/* --- RESPONSIVE --- */
@media (max-width: 768px) {
    .page-wrapper {
        padding-top: 100px;
    }

    .page-header h1 { font-size: 32px; }

    .adv-grid { grid-template-columns: 1fr; }

    .materials-grid { grid-template-columns: 1fr; }
    .mat-item.full-width { grid-column: span 1; }

    .spec-row { flex-direction: column; }
    .spec-col.param { width: 100%; margin-bottom: 5px; color: #fff; }
    .spec-col.val { width: 100%; }
}


/* =================================================================
   CONTACT PAGE STYLES
   ================================================================= */

.contact-page-wrapper {
    padding-top: 140px;
    padding-bottom: 100px;
    background-color: #0D1117; /* Dark Background */
    min-height: 100vh;
}

/* --- FORM BOX --- */
.contact-form-box {
    background-color: #161B22;
    border: 1px solid #30363D;
    border-radius: 12px;
    padding: 40px;
}

.form-title {
    font-size: 24px;
    color: #fff;
    font-weight: 600;
    margin-bottom: 30px;
}

.form-label {
    color: #E5E7EB;
    font-size: 14px;
    font-weight: 500;
    margin-bottom: 8px;
}

/* Input Styling */
.custom-input {
    background-color: #0D1117;
    border: 1px solid #30363D;
    color: #fff;
    padding: 12px 15px;
    font-size: 14px;
    border-radius: 6px;
}

.custom-input:focus {
    background-color: #0D1117;
    border-color: #2563EB;
    color: #fff;
    box-shadow: 0 0 0 2px rgba(37, 99, 235, 0.2);
}

.custom-input::placeholder {
    color: #6B7280;
}

/* File Upload Area */
.upload-area {
    border: 2px dashed #30363D;
    border-radius: 8px;
    padding: 40px;
    text-align: center;
    cursor: pointer;
    transition: 0.3s;
    background-color: rgba(255, 255, 255, 0.02);
    position: relative;
}

.upload-area:hover {
    border-color: #2563EB;
    background-color: rgba(37, 99, 235, 0.05);
}

.upload-area i {
    font-size: 32px;
    color: #6B7280;
    margin-bottom: 15px;
}

.upload-area p {
    color: #9CA3AF;
    font-size: 14px;
    margin: 0;
}

.file-input-hidden {
    position: absolute;
    top: 0; left: 0;
    width: 100%; height: 100%;
    opacity: 0;
    cursor: pointer;
}

/* Submit Button */
.btn-submit-quote {
    width: 100%;
    background-color: #3B82F6; /* Lighter Blue for button */
    color: #fff;
    font-weight: 600;
    border: none;
    padding: 14px;
    border-radius: 6px;
    font-size: 16px;
    transition: 0.3s;
}

.btn-submit-quote:hover {
    background-color: #2563EB;
}

/* --- SIDEBAR CARDS --- */
.sidebar-card {
    background-color: #161B22;
    border: 1px solid #30363D;
    border-radius: 12px;
    padding: 30px;
}

.sidebar-card h4 {
    font-size: 18px;
    color: #fff;
    margin-bottom: 25px;
    font-weight: 600;
}

/* Info Item */
.info-item {
    display: flex;
    gap: 15px;
    margin-bottom: 25px;
}

.info-item:last-child { margin-bottom: 0; }

.info-item i {
    color: #3B82F6;
    font-size: 18px;
    margin-top: 3px;
}

.info-item .label {
    display: block;
    font-size: 13px;
    color: #fff;
    font-weight: 600;
    margin-bottom: 4px;
}

.info-item p {
    color: #9CA3AF;
    font-size: 14px;
    margin: 0;
    line-height: 1.5;
}

/* Hours Row */
.hours-row {
    display: flex;
    justify-content: space-between;
    margin-bottom: 12px;
    font-size: 14px;
    color: #9CA3AF;
}

.hours-row .time {
    color: #fff;
    font-weight: 500;
}

.hours-row .closed {
    color: #9CA3AF;
}

/* --- RESPONSIVE --- */
@media (max-width: 768px) {
    .contact-form-box {
        padding: 25px;
    }

    .upload-area {
        padding: 30px;
    }
}


/* =================================================================
   HARDWARE ENGINEERING / SERVICE DETAIL STYLES
   ================================================================= */

/* Reuse generic page styles from Capabilities if available, or ensure these exist: */
.page-wrapper {
    padding-top: 140px;
    padding-bottom: 100px;
    background-color: #0D1117;
    min-height: 100vh;
}

.page-header h1 {
    font-size: 42px;
    font-weight: 700;
    color: #fff;
    margin-bottom: 15px;
}

.page-header p {
    font-size: 16px;
    color: #9CA3AF;
    line-height: 1.6;
}

/* --- GRID LAYOUT --- */
.service-details-grid {
    display: grid;
    grid-template-columns: 1fr 1fr; /* 50% split */
    gap: 30px;
    margin-top: 40px;
}

/* --- LEFT: CORE CAPABILITIES CARD --- */
.core-card {
    background-color: #161B22;
    border: 1px solid #30363D;
    border-radius: 12px;
    padding: 40px;
    height: 100%; /* Fills height of the grid row */
}

.core-card h3 {
    font-size: 20px;
    font-weight: 600;
    color: #fff;
    margin-bottom: 25px;
}

.core-list {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 18px;
}

.core-list li {
    display: flex;
    align-items: flex-start;
    gap: 15px;
    color: #9CA3AF;
    font-size: 14px;
    line-height: 1.5;
}

.core-list li i {
    color: #2563EB; /* Brand Blue Checkmark */
    font-size: 16px;
    margin-top: 3px; /* Align with text top */
    flex-shrink: 0;
}

/* --- RIGHT: FEATURE STACK --- */
.feature-stack {
    display: flex;
    flex-direction: column;
    gap: 30px;
}

.feature-card {
    background-color: #161B22;
    border: 1px solid #30363D;
    border-radius: 12px;
    padding: 30px;
    transition: transform 0.2s ease;
}

.feature-card:hover {
    border-color: #2563EB;
    transform: translateY(-2px);
}

.feature-card h4 {
    font-size: 18px;
    font-weight: 600;
    color: #fff;
    margin-bottom: 15px;
}

.feature-card p {
    font-size: 14px;
    color: #9CA3AF;
    line-height: 1.6;
    margin: 0;
}

/* --- CTA BOX (Reused style or defined here) --- */
.page-cta-box {
    background-color: #161B22;
    border: 1px solid #30363D;
    border-radius: 12px;
    padding: 60px;
    text-align: center;
}

.page-cta-box h2 {
    color: #fff;
    font-size: 24px;
    font-weight: 700;
    margin-bottom: 15px;
}

.page-cta-box p {
    color: #9CA3AF;
    font-size: 15px;
    margin-bottom: 30px;
    max-width: 600px;
    margin-left: auto;
    margin-right: auto;
}

.btn-page-cta {
    display: inline-block;
    background-color: #3B82F6;
    color: #fff;
    padding: 12px 32px;
    border-radius: 6px;
    text-decoration: none;
    font-weight: 600;
    transition: 0.3s;
}

.btn-page-cta:hover {
    background-color: #2563EB;
    color: #fff;
}

/* --- RESPONSIVE --- */
@media (max-width: 991px) {
    .service-details-grid {
        grid-template-columns: 1fr; /* Stack columns on tablet/mobile */
    }

    .core-card, .feature-card {
        padding: 30px;
    }

    .page-header h1 {
        font-size: 32px;
    }
}

/* =================================================================
   SERVICE DETAILS LAYOUT (Shared by Hardware & Firmware Pages)
   ================================================================= */

.page-wrapper {
    padding-top: 140px;
    padding-bottom: 100px;
    background-color: #0D1117;
    min-height: 100vh;
}

/* Headers */
.page-header h1 {
    font-size: 42px;
    font-weight: 700;
    color: #fff;
    margin-bottom: 15px;
}

.page-header p {
    font-size: 16px;
    color: #9CA3AF;
    line-height: 1.6;
}

/* Grid Layout */
.service-details-grid {
    display: grid;
    grid-template-columns: 1fr 1fr; /* 50% / 50% Split */
    gap: 30px;
    margin-top: 40px;
}

/* --- LEFT COLUMN: CORE CARD --- */
.core-card {
    background-color: #161B22;
    border: 1px solid #30363D;
    border-radius: 12px;
    padding: 40px;
    height: 100%;
}

.core-card h3 {
    font-size: 20px;
    font-weight: 600;
    color: #fff;
    margin-bottom: 25px;
}

/* Core List with Checkmarks */
.core-list {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 18px;
}

.core-list li {
    display: flex;
    align-items: flex-start;
    gap: 15px;
    color: #9CA3AF;
    font-size: 14px;
    line-height: 1.5;
}

.core-list li i {
    color: #2563EB; /* Blue Checkmark */
    font-size: 16px;
    margin-top: 3px;
    flex-shrink: 0;
}

/* Utility to make list tighter inside Feature cards */
.core-list.small-list {
    gap: 12px;
    margin-top: 15px;
}

/* --- RIGHT COLUMN: FEATURE STACK --- */
.feature-stack {
    display: flex;
    flex-direction: column;
    gap: 30px;
}

.feature-card {
    background-color: #161B22;
    border: 1px solid #30363D;
    border-radius: 12px;
    padding: 30px;
    transition: transform 0.2s ease;
}

.feature-card:hover {
    border-color: #2563EB;
    transform: translateY(-2px);
}

.feature-card h4 {
    font-size: 18px;
    font-weight: 600;
    color: #fff;
    margin-bottom: 15px;
}

.feature-card p {
    font-size: 14px;
    color: #9CA3AF;
    line-height: 1.6;
    margin: 0;
}

/* --- BOTTOM CTA --- */
.page-cta-box {
    background-color: #161B22;
    border: 1px solid #30363D;
    border-radius: 12px;
    padding: 60px;
    text-align: center;
}

.page-cta-box h2 {
    color: #fff;
    font-size: 24px;
    font-weight: 700;
    margin-bottom: 15px;
}

.page-cta-box p {
    color: #9CA3AF;
    font-size: 15px;
    margin-bottom: 30px;
    max-width: 600px;
    margin-left: auto;
    margin-right: auto;
}

.btn-page-cta {
    display: inline-block;
    background-color: #3B82F6;
    color: #fff;
    padding: 12px 32px;
    border-radius: 6px;
    text-decoration: none;
    font-weight: 600;
    transition: 0.3s;
}

.btn-page-cta:hover {
    background-color: #2563EB;
    color: #fff;
}

/* Responsive */
@media (max-width: 991px) {
    .service-details-grid {
        grid-template-columns: 1fr;
    }
    .core-card, .feature-card {
        padding: 30px;
    }
}

/* =================================================================
   MANUFACTURING PAGE SPECIFIC STYLES
   ================================================================= */

/* (Previous styles for .page-wrapper, .core-card, .feature-card are reused here automatically) */

/* --- WHY CHOOSE US SECTION --- */
.why-choose-section {
    margin-top: 80px;
}

.three-col-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr); /* 3 Equal Columns */
    gap: 25px;
}

.benefit-card {
    background-color: #161B22;
    border: 1px solid #30363D;
    border-radius: 12px;
    padding: 30px;
    transition: transform 0.2s ease;
}

.benefit-card:hover {
    border-color: #2563EB;
    transform: translateY(-3px);
}

.benefit-card h5 {
    font-size: 17px;
    font-weight: 600;
    color: #fff;
    margin-bottom: 12px;
}

.benefit-card p {
    font-size: 13px;
    color: #9CA3AF;
    line-height: 1.6;
    margin: 0;
}

/* --- RESPONSIVE --- */
@media (max-width: 991px) {
    /* Stack the 3 columns on tablet/mobile */
    .three-col-grid {
        grid-template-columns: 1fr;
    }

    .benefit-card {
        padding: 25px;
    }
}


/* =================================================================
   ABOUT US PAGE STYLES
   ================================================================= */

.page-wrapper {
    padding-top: 140px;
    padding-bottom: 100px;
    background-color: #0D1117;
    min-height: 100vh;
}

/* Header */
.page-header h1 {
    font-size: 42px;
    font-weight: 700;
    color: #fff;
    margin-bottom: 10px;
}

.page-header .subtitle {
    font-size: 18px;
    color: #9CA3AF;
    font-weight: 400;
    margin: 0;
}

.section-title {
    font-size: 24px;
    font-weight: 600;
    color: #fff;
    margin-bottom: 20px;
}

/* --- STORY SECTION --- */
.story-text p {
    color: #9CA3AF;
    font-size: 15px;
    line-height: 1.7;
    margin-bottom: 20px;
}

.story-image img {
    width: 100%;
    border-radius: 12px;
    border: 1px solid #30363D;
    box-shadow: 0 10px 30px rgba(0,0,0,0.3);
}

/* --- STATS GRID --- */
.stats-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 20px;
}

.stat-card {
    background-color: #161B22;
    border: 1px solid #30363D;
    border-radius: 12px;
    padding: 30px 20px;
    text-align: center;
}

.stat-card h2 {
    color: #3B82F6; /* Blue numbers */
    font-size: 36px;
    font-weight: 700;
    margin-bottom: 5px;
}

.stat-card span {
    color: #9CA3AF;
    font-size: 13px;
    text-transform: capitalize;
}

/* --- VALUES GRID --- */
.values-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20px;
}

.value-card {
    background-color: #161B22;
    border: 1px solid #30363D;
    border-radius: 12px;
    padding: 30px;
    display: flex;
    gap: 20px;
    align-items: flex-start;
}

.value-icon {
    width: 40px;
    height: 40px;
    background-color: rgba(37, 99, 235, 0.1); /* Faint blue bg */
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.value-icon i {
    color: #3B82F6;
    font-size: 18px;
}

.value-card h4 {
    color: #fff;
    font-size: 16px;
    font-weight: 600;
    margin-bottom: 8px;
}

.value-card p {
    color: #9CA3AF;
    font-size: 13px;
    line-height: 1.5;
    margin: 0;
}

/* --- WHAT WE DO BOX --- */
.what-we-do-box {
    background-color: #161B22;
    border: 1px solid #30363D;
    border-radius: 12px;
    padding: 40px;
}

.wwd-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 20px;
    text-align: left;
}

.wwd-item {
    padding: 0 10px;
    border-right: 1px solid rgba(255, 255, 255, 0.1);
}

.wwd-item:last-child {
    border-right: none;
}

.wwd-item h5 {
    color: #fff;
    font-size: 14px;
    font-weight: 600;
    margin-bottom: 8px;
}

.wwd-item p {
    color: #9CA3AF;
    font-size: 12px;
    line-height: 1.5;
    margin: 0;
}

/* --- BLUE CTA BOX --- */
.blue-cta-box {
    background: linear-gradient(90deg, #3B82F6 0%, #2563EB 100%);
    border-radius: 12px;
    padding: 60px 40px;
    text-align: center;
    color: #fff;
    margin-top: 60px;
}

.blue-cta-box h2 {
    font-size: 28px;
    font-weight: 700;
    margin-bottom: 15px;
}

.blue-cta-box p {
    font-size: 16px;
    max-width: 600px;
    margin: 0 auto 30px auto;
    color: rgba(255, 255, 255, 0.9);
}

.btn-white-cta {
    display: inline-block;
    background-color: #fff;
    color: #2563EB;
    padding: 12px 30px;
    border-radius: 6px;
    text-decoration: none;
    font-weight: 600;
    transition: 0.3s;
}

.btn-white-cta:hover {
    background-color: #f0f0f0;
    transform: translateY(-2px);
}

/* --- RESPONSIVE --- */
@media (max-width: 991px) {
    .stats-grid {
        grid-template-columns: 1fr 1fr;
    }

    .values-grid {
        grid-template-columns: 1fr;
    }

    .wwd-grid {
        grid-template-columns: 1fr;
        gap: 30px;
    }

    .wwd-item {
        border-right: none;
        padding: 0;
        text-align: center;
    }
}

@media (max-width: 576px) {
    .stats-grid {
        grid-template-columns: 1fr;
    }
    .page-header h1 {
        font-size: 32px;
    }
}

/* =================================================================
   FLEX & RIGID PAGE STYLES
   ================================================================= */

/* --- 1. FEATURE INFO CARDS (2x2 Grid) --- */
.info-card {
    background-color: #161B22;
    border: 1px solid #30363D;
    border-radius: 12px;
    padding: 30px;
    height: 100%;
    transition: 0.3s;
}

.info-card:hover {
    border-color: #2563EB;
    transform: translateY(-2px);
}

.info-card h4 {
    color: #fff;
    font-size: 18px;
    font-weight: 600;
    margin-bottom: 15px;
}

.info-card p {
    color: #9CA3AF;
    font-size: 14px;
    line-height: 1.6;
    margin: 0;
}

/* --- 2. SPECS TABLE (Reusable) --- */
.specs-container {
    background-color: #161B22;
    border: 1px solid #30363D;
    border-radius: 12px;
    padding: 30px;
    overflow: hidden;
}

.specs-table {
    display: flex;
    flex-direction: column;
}

.spec-row {
    display: flex;
    border-bottom: 1px solid rgba(255,255,255,0.05);
    padding: 16px 0;
}

.spec-row:last-child {
    border-bottom: none;
}

.spec-row.header {
    border-bottom: 1px solid rgba(255,255,255,0.2);
    margin-bottom: 10px;
}

.spec-col {
    font-size: 13px;
}

.spec-col.param {
    width: 30%;
    color: #E5E7EB;
    font-weight: 600;
}

.spec-col.val {
    width: 70%;
    color: #9CA3AF;
    font-family: 'Courier New', Courier, monospace; /* Tech/Code Look */
    letter-spacing: 0.5px;
}

/* --- 3. APPLICATIONS GRID (Pills) --- */
.app-section {
    background-color: #161B22;
    border: 1px solid #30363D;
    border-radius: 12px;
    padding: 30px;
}

.app-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 15px;
}

.app-item {
    background-color: rgba(255,255,255,0.05);
    color: #D1D5DB;
    padding: 12px;
    border-radius: 6px;
    font-size: 13px;
    text-align: center;
    border: 1px solid transparent;
    transition: 0.3s;
    cursor: default;
}

.app-item:hover {
    background-color: rgba(37, 99, 235, 0.1);
    border-color: #2563EB;
    color: #fff;
}

/* --- 4. DESIGN CONSIDERATIONS CARD --- */
.design-card {
    background-color: #161B22;
    border: 1px solid #30363D;
    border-radius: 12px;
    padding: 30px 40px;
}

/* --- RESPONSIVE --- */
@media (max-width: 991px) {
    .app-grid {
        grid-template-columns: 1fr 1fr;
    }

    .spec-row {
        flex-direction: column;
    }
    .spec-col.param {
        width: 100%;
        margin-bottom: 5px;
        color: #fff;
    }
    .spec-col.val {
        width: 100%;
    }
}

@media (max-width: 576px) {
    .app-grid {
        grid-template-columns: 1fr;
    }
}

/* =================================================================
   MULTILAYER PCB PAGE STYLES
   ================================================================= */

/* --- 1. STACKED CONFIG CARDS --- */
.config-stack {
    display: flex;
    flex-direction: column;
    gap: 15px;
}

.config-card {
    background-color: #161B22;
    border: 1px solid #30363D;
    border-radius: 8px; /* Slightly less rounded for stack feel */
    padding: 25px 30px;
    transition: 0.3s;
}

.config-card:hover {
    border-color: #2563EB;
    background-color: rgba(255, 255, 255, 0.02);
}

.config-card h4 {
    color: #fff;
    font-size: 16px;
    font-weight: 600;
    margin-bottom: 8px;
}

.config-card p {
    color: #9CA3AF;
    font-size: 14px;
    margin: 0;
    line-height: 1.5;
}

/* --- 2. CONTENT TEXT BOXES --- */
.content-box {
    background-color: #161B22;
    border: 1px solid #30363D;
    border-radius: 12px;
    padding: 40px;
}

.content-box h4 {
    color: #fff;
    font-size: 18px;
    font-weight: 600;
    margin-bottom: 20px;
}

.content-box p {
    color: #9CA3AF;
    font-size: 14px;
    line-height: 1.7;
    margin-bottom: 15px;
}

/* Checklist Style */
.check-list {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.check-list li {
    color: #D1D5DB;
    font-size: 14px;
    display: flex;
    gap: 10px;
    align-items: flex-start;
}

.check-list li i {
    color: #3B82F6; /* Blue Check */
    font-size: 14px;
    margin-top: 4px;
    flex-shrink: 0;
}

.check-list li strong {
    color: #fff;
    font-weight: 600;
}

/* --- 3. ICONS IN CARDS --- */
.icon-blue {
    color: #3B82F6;
    font-size: 24px;
    display: block;
}

/* --- 4. 3-COLUMN APP GRID --- */
.app-grid-3 {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 15px;
}

/* Reusing .app-item from previous page styles */
/* If missing, ensure .app-item style is present in main.css */

/* --- RESPONSIVE --- */
@media (max-width: 991px) {
    .app-grid-3 {
        grid-template-columns: 1fr; /* Stack on mobile */
    }

    .config-card {
        padding: 20px;
    }
}


/* =================================================================
   HIGH FREQUENCY PCB PAGE STYLES
   ================================================================= */

/* --- 1. BLUE CALLOUT BOX --- */
.callout-box {
    border-left: 3px solid #3B82F6; /* Blue Line */
    background-color: rgba(59, 130, 246, 0.05); /* Faint Blue BG */
    padding: 20px 25px;
    border-radius: 0 6px 6px 0;
    margin: 20px 0;
}

.callout-box h5 {
    color: #fff;
    font-size: 16px;
    font-weight: 600;
    margin-bottom: 10px;
}

.callout-box p {
    color: #D1D5DB;
    font-size: 13px;
    line-height: 1.6;
}

/* --- 2. DATA LIST (Key/Value Rows) --- */
.data-list {
    display: flex;
    flex-direction: column;
}

.data-row {
    display: flex;
    justify-content: space-between;
    padding: 15px 0;
    border-bottom: 1px solid rgba(255, 255, 255, 0.05);
}

.data-row:last-child {
    border-bottom: none;
}

.data-row .label {
    color: #fff;
    font-weight: 600;
    font-size: 14px;
}

.data-row .value {
    color: #9CA3AF;
    font-size: 14px;
    font-family: 'Courier New', Courier, monospace; /* Tech font */
    text-align: right;
    max-width: 60%;
}

/* --- 3. BULLET LIST (Small Grey Dots) --- */
.bullet-list {
    list-style: none;
    padding: 0;
    margin: 0;
}

.bullet-list li {
    color: #9CA3AF; /* Grey text */
    font-size: 13px;
    margin-bottom: 8px;
    position: relative;
    padding-left: 15px;
}

.bullet-list li::before {
    content: '•';
    color: #6B7280; /* Darker grey dot */
    position: absolute;
    left: 0;
    font-size: 16px;
    line-height: 14px;
}

/* --- 4. INDUSTRY PILLS (With Icons) --- */
.industry-pill {
    background-color: #1F2937; /* Slightly lighter than card */
    padding: 15px;
    border-radius: 6px;
    display: flex;
    align-items: center;
    gap: 12px;
    color: #E5E7EB;
    font-size: 13px;
    font-weight: 500;
    border: 1px solid transparent;
    transition: 0.2s;
}

.industry-pill:hover {
    border-color: #374151;
    background-color: #252D3B;
}

.industry-pill i {
    color: #3B82F6; /* Blue Icon */
    font-size: 16px;
}

/* --- RESPONSIVE --- */
@media (max-width: 768px) {
    .data-row {
        flex-direction: column;
        align-items: flex-start;
        gap: 5px;
    }
    .data-row .value {
        text-align: left;
        max-width: 100%;
    }
}

/* =================================================================
   ALUMINUM PCB PAGE STYLES
   ================================================================= */

/* --- 1. VERTICAL PROCESS STEPS --- */
.process-steps {
    display: flex;
    flex-direction: column;
    gap: 25px;
    padding-left: 20px;
    border-left: 2px solid rgba(59, 130, 246, 0.3); /* Faint Blue Line */
}

.step-item {
    position: relative;
    padding-left: 25px;
}

/* Active Blue Indicator Line */
.step-item::before {
    content: '';
    position: absolute;
    left: -22px; /* Aligns with main border */
    top: 0;
    width: 2px;
    height: 100%;
    background-color: #3B82F6; /* Bright Blue */
    display: block;
}

.step-item h5 {
    color: #fff;
    font-size: 16px;
    font-weight: 600;
    margin-bottom: 8px;
}

.step-item p {
    color: #9CA3AF;
    font-size: 13px;
    line-height: 1.6;
    margin: 0;
}

/* --- 2. DARK APP CARDS (Grid) --- */
.app-card-dark {
    background-color: #1F2937; /* Slightly lighter than main bg */
    border: 1px solid #374151;
    border-radius: 8px;
    padding: 20px;
    height: 100%;
    transition: 0.2s;
}

.app-card-dark:hover {
    border-color: #4B5563;
    background-color: #252D3B;
}

.app-card-dark h6 {
    color: #fff;
    font-size: 14px;
    font-weight: 600;
    margin-bottom: 5px;
}

.app-card-dark span {
    color: #9CA3AF;
    font-size: 12px;
    display: block;
}

/* --- ICONS & CHECKLIST --- */
/* (Reused from previous pages: .icon-blue, .check-list) */
/* Ensure these exist in main.css if you haven't added them yet */

.icon-blue {
    color: #3B82F6;
    font-size: 24px;
    display: block;
}

.check-list {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.check-list li {
    color: #D1D5DB;
    font-size: 14px;
    display: flex;
    gap: 10px;
    align-items: flex-start;
}

.check-list li i {
    color: #3B82F6;
    font-size: 14px;
    margin-top: 4px;
    flex-shrink: 0;
}

.check-list li strong {
    color: #fff;
    font-weight: 600;
}

/* =================================================================
   LED PCB PAGE STYLES
   ================================================================= */

/* --- TYPE CARDS (3 Col Grid) --- */
.type-card {
    background-color: #161B22;
    border: 1px solid #30363D;
    border-radius: 8px;
    padding: 25px;
    height: 100%; /* Ensures equal height in row */
    transition: 0.3s;
}

.type-card:hover {
    border-color: #2563EB;
    background-color: rgba(255, 255, 255, 0.02);
}

.type-card h5 {
    color: #fff;
    font-size: 16px;
    font-weight: 600;
    margin-bottom: 12px;
}

.type-card p {
    color: #9CA3AF;
    font-size: 13px;
    line-height: 1.6;
    margin: 0;
}

/* --- ENSURE ICONS ARE BLUE (Global Utility) --- */
.icon-blue {
    color: #3B82F6;
    font-size: 24px;
    display: block;
}

/* --- TEXT UTILITIES --- */
.text-muted {
    color: #9CA3AF !important;
}

.small {
    font-size: 14px;
}

/* =================================================================
   EXOTIC MATERIALS PAGE STYLES
   ================================================================= */

/* --- 1. MATERIALS DATA TABLE --- */
/* This reuses the container style but defines specific columns */
.materials-table {
    display: flex;
    flex-direction: column;
    width: 100%;
    overflow-x: auto; /* Allows scroll on small mobile */
}

.mat-row {
    display: flex;
    align-items: center;
    padding: 16px 0;
    border-bottom: 1px solid rgba(255,255,255,0.05);
    min-width: 600px; /* Ensures table doesn't squash on mobile */
}

.mat-row:last-child {
    border-bottom: none;
}

.mat-row.header {
    border-bottom: 1px solid rgba(255,255,255,0.2);
    font-weight: 600;
    color: #fff;
    font-size: 13px;
    margin-bottom: 5px;
}

/* Column Widths for Large Table */
.col-name { width: 20%; color: #fff; font-weight: 600; font-size: 14px; }
.col-data { width: 15%; color: #9CA3AF; font-family: 'Courier New', monospace; font-size: 13px; }
.col-range { width: 20%; color: #9CA3AF; font-family: 'Courier New', monospace; font-size: 13px; }
.col-app { width: 30%; color: #9CA3AF; font-size: 13px; }

/* Column Widths for Simple (Small) Table */
.materials-table.simple .col-name { width: 40%; }
.materials-table.simple .col-data { width: 30%; }

/* --- 2. TAGS (PILLS) --- */
.tag-container {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 15px;
}

.tag {
    background-color: #21262D; /* Darker pill background */
    border: 1px solid #30363D;
    color: #D1D5DB;
    font-size: 11px;
    padding: 4px 10px;
    border-radius: 4px;
    white-space: nowrap;
}

/* --- RESPONSIVE --- */
@media (max-width: 991px) {
    .col-app { display: none; } /* Hide App column on tablet to save space if needed */
    .col-name { width: 25%; }
    .col-data { width: 20%; }
    .col-range { width: 35%; }
}

@media (max-width: 576px) {
    /* Let table scroll horizontally */
    .specs-container {
        padding: 20px 15px;
    }
}

/* =================================================================
   SURFACE FINISH PAGE STYLES
   ================================================================= */

/* --- 1. FINISH CARDS (Vertical Stack) --- */
.finish-stack {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.finish-card {
    background-color: #161B22;
    border: 1px solid #30363D;
    border-radius: 8px;
    padding: 30px;
    transition: 0.3s;
}

.finish-card:hover {
    border-color: #2563EB;
    background-color: rgba(255, 255, 255, 0.02);
}

.finish-card h4 {
    color: #fff;
    font-size: 18px;
    font-weight: 600;
    margin-bottom: 12px;
}

.finish-card .sub-label {
    display: block;
    color: #9CA3AF; /* Muted Grey */
    font-size: 13px;
    font-weight: 400;
    margin-top: 4px;
}

.finish-card p {
    color: #D1D5DB; /* Lighter Grey for body */
    font-size: 14px;
    line-height: 1.6;
    margin: 0;
}

/* --- 2. SELECTION GUIDE --- */
/* (Uses .content-box from previous pages) */

.guide-title {
    font-size: 15px;
    color: #fff;
    font-weight: 600;
    margin-bottom: 12px;
}

.guide-list {
    list-style: none;
    padding: 0;
    margin: 0;
}

.guide-list li {
    display: flex;
    gap: 10px;
    align-items: flex-start;
    color: #9CA3AF;
    font-size: 13px;
    margin-bottom: 8px;
    line-height: 1.5;
}

.guide-list li i {
    color: #3B82F6; /* Blue Icon */
    font-size: 12px;
    margin-top: 4px;
    flex-shrink: 0;
}

/* --- RESPONSIVE --- */
@media (max-width: 768px) {
    .finish-card {
        padding: 20px;
    }

    .finish-card h4 {
        font-size: 16px;
    }
}


/* =================================================================
   MANUFACTURING TECH PAGE STYLES
   ================================================================= */

/* --- 1. SPECIFICATION TABS --- */
.spec-tabs {
    border-bottom: 1px solid rgba(255,255,255,0.1);
    background-color: #161B22; /* Matches container bg */
    border-radius: 12px 12px 0 0;
    padding: 0 20px;
}

.spec-tabs .nav-item {
    margin-bottom: -1px;
}

.spec-tabs .nav-link {
    color: #9CA3AF;
    background: transparent;
    border: 1px solid transparent;
    border-bottom: none;
    padding: 15px 25px;
    font-size: 14px;
    font-weight: 500;
    transition: 0.3s;
}

.spec-tabs .nav-link:hover {
    color: #fff;
    border-color: transparent;
}

.spec-tabs .nav-link.active {
    color: #fff;
    background-color: #1F2937; /* Active Tab BG */
    border-color: rgba(255,255,255,0.1);
    border-bottom-color: #1F2937; /* Blend with content */
    border-radius: 8px 8px 0 0;
}

/* Tab Content Area */
#techTabsContent {
    background-color: #1F2937; /* Content Area BG */
    border: 1px solid rgba(255,255,255,0.1);
    border-top: none;
    border-radius: 0 0 12px 12px;
}

/* --- 2. 3-COLUMN TABLE (Item | Standard | Advanced) --- */
.specs-table.three-col .spec-row {
    display: flex;
    align-items: center;
}

.col-item { width: 40%; color: #fff; font-size: 13px; font-weight: 600; }
.col-std  { width: 30%; color: #D1D5DB; font-family: 'Courier New', monospace; font-size: 13px; }
.col-adv  { width: 30%; color: #3B82F6; font-family: 'Courier New', monospace; font-size: 13px; } /* Blue for Advanced */

/* --- 3. BLUE BULLET LIST --- */
.bullet-list-blue {
    list-style: none;
    padding: 0;
    margin: 0;
}

.bullet-list-blue li {
    color: #9CA3AF;
    font-size: 13px;
    margin-bottom: 10px;
    display: flex;
    align-items: center;
    gap: 10px;
}

.bullet-list-blue li i {
    color: #2563EB;
    font-size: 12px;
    width: 16px;
    text-align: center;
}

/* --- RESPONSIVE --- */
@media (max-width: 768px) {
    /* Allow horizontal scroll for tabs */
    .spec-tabs {
        flex-wrap: nowrap;
        overflow-x: auto;
        white-space: nowrap;
    }

    .three-col .spec-row {
        flex-direction: column;
        align-items: flex-start;
        gap: 5px;
    }

    .col-item, .col-std, .col-adv {
        width: 100%;
    }
}

/* =================================================================
   HDI PAGE STYLES
   ================================================================= */

/* --- 1. TOP FEATURE BOXES --- */
.feature-box {
    background-color: #161B22;
    border: 1px solid #30363D;
    border-radius: 8px;
    padding: 30px;
    height: 100%;
    transition: 0.3s;
    position: relative;
}

/* Subtle Blue Corner Lines (Optional Decor) */
.feature-box::before, .feature-box::after {
    content: '';
    position: absolute;
    width: 10px; height: 10px;
    border-color: #2563EB;
    border-style: solid;
    opacity: 0.5;
}
.feature-box::before { top: 0; left: 0; border-width: 1px 0 0 1px; border-radius: 8px 0 0 0; }
.feature-box::after { bottom: 0; right: 0; border-width: 0 1px 1px 0; border-radius: 0 0 8px 0; }

.feature-box:hover {
    border-color: #2563EB;
    transform: translateY(-2px);
}

.feature-box h4 {
    color: #fff;
    font-size: 18px;
    font-weight: 600;
    margin-bottom: 12px;
}

.feature-box p {
    color: #9CA3AF;
    font-size: 13px;
    line-height: 1.6;
    margin: 0;
}

/* --- 2. PROCESS CARDS (Middle Section) --- */
.process-card {
    background-color: #161B22;
    border: 1px solid #30363D;
    border-radius: 8px;
    padding: 30px;
    height: 100%;
}

.process-card h4 {
    color: #fff;
    font-size: 18px;
    font-weight: 600;
    margin-bottom: 10px;
}

/* --- 3. APP GRID 3 (Reused from Multilayer) --- */
.app-grid-3 {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 15px;
}

/* --- RESPONSIVE --- */
@media (max-width: 991px) {
    .app-grid-3 {
        grid-template-columns: 1fr 1fr;
    }
}

@media (max-width: 576px) {
    .app-grid-3 {
        grid-template-columns: 1fr;
    }
}

/* =================================================================
   FLEX CAPABILITY PAGE STYLES
   ================================================================= */

/* Reuse existing .specs-container, .specs-table from previous pages */

/* Specific Column adjustment for Flex Page tables to fit long values */
.flex-page .spec-col.param {
    width: 35%;
}
.flex-page .spec-col.val {
    width: 65%;
}

/* Font Style Utility */
.fst-italic {
    font-style: italic !important;
}

/* Small Text Color Override if needed */
.text-muted.small {
    font-size: 13px;
    color: #9CA3AF !important;
}

/* Responsive Table Scrolling for long data */
@media (max-width: 768px) {
    .specs-table {
        min-width: 600px; /* Force scroll on mobile so data isn't crushed */
    }

    .specs-container {
        overflow-x: auto;
    }
}

/* =================================================================
   THICK COPPER PCB PAGE STYLES
   ================================================================= */

/* --- 1. APP PILLS (Darker, Boxy Style) --- */
.app-grid-4 {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 15px;
}

.app-pill-dark {
    background-color: #21262D; /* Dark grey background */
    border: 1px solid #30363D;
    border-radius: 6px;
    padding: 12px 10px;
    text-align: center;
    font-size: 13px;
    font-weight: 600;
    color: #E5E7EB;
    transition: 0.2s;
    cursor: default;
}

.app-pill-dark:hover {
    border-color: #4B5563;
    background-color: #2D333B;
}

/* --- 2. CALLOUT BOX (Darker Theme) --- */
/* Overrides or ensures specific look for this page */
.callout-box {
    border-left: 3px solid #3B82F6;
    background-color: rgba(33, 38, 45, 0.8); /* Slightly darker than regular content box */
    padding: 20px 25px;
    border-radius: 0 6px 6px 0;
    margin: 20px 0;
}

.callout-box h5 {
    color: #fff;
    font-size: 15px;
    font-weight: 700;
    margin-bottom: 8px;
}

.callout-box p {
    color: #9CA3AF;
    font-size: 13px;
    line-height: 1.6;
}

/* --- 3. BULLET LIST (Specific spacing) --- */
.bullet-list li {
    margin-bottom: 10px;
}
.bullet-list li strong {
    color: #fff;
    font-weight: 600;
}

/* --- RESPONSIVE --- */
@media (max-width: 991px) {
    .app-grid-4 {
        grid-template-columns: 1fr 1fr; /* 2 columns on tablet */
    }
}

@media (max-width: 576px) {
    .app-grid-4 {
        grid-template-columns: 1fr; /* 1 column on mobile */
    }
}

.callout-box {
    border-left: 3px solid #3B82F6;
    background-color: rgba(59, 130, 246, 0.05); /* or darker variant */
    padding: 20px 25px;
    border-radius: 0 6px 6px 0;
}

/* =================================================================
   HIGH TG PCB PAGE STYLES
   ================================================================= */

/* --- TG LEVEL STACK --- */
.tg-stack {
    display: flex;
    flex-direction: column;
    gap: 15px;
    background-color: #161B22;
    border: 1px solid #30363D;
    border-radius: 12px;
    padding: 30px;
}

.tg-item {
    display: flex;
    align-items: center;
    gap: 25px;
    padding: 20px;
    border-bottom: 1px solid rgba(255,255,255,0.05);
    transition: 0.2s;
}

.tg-item:last-child {
    border-bottom: none;
}

.tg-item:hover {
    background-color: rgba(255,255,255,0.02);
    border-radius: 8px;
}

/* Blue Badge */
.tg-badge {
    background-color: rgba(37, 99, 235, 0.15); /* Faint Blue */
    color: #3B82F6; /* Bright Blue Text */
    font-weight: 700;
    padding: 8px 16px;
    border-radius: 6px;
    border: 1px solid rgba(37, 99, 235, 0.3);
    min-width: 120px;
    text-align: center;
    font-size: 14px;
    white-space: nowrap;
}

/* Text Info */
.tg-info h6 {
    color: #fff;
    font-size: 16px;
    font-weight: 600;
    margin-bottom: 4px;
}

.tg-info p {
    color: #9CA3AF;
    font-size: 13px;
    margin: 0;
}

/* --- APP PILLS (3 Col) --- */
/* Reuses .app-grid-3 and .app-pill-dark from previous pages */
/* Ensure these classes exist in main.css */

/* --- RESPONSIVE --- */
@media (max-width: 768px) {
    .tg-item {
        flex-direction: column;
        align-items: flex-start;
        gap: 10px;
    }

    .tg-badge {
        min-width: auto;
        width: 100%;
    }
}

/* =================================================================
   MICRO-VIAS PAGE STYLES
   ================================================================= */

/* --- INFO CARDS (Reusable) --- */
.info-card {
    background-color: #161B22;
    border: 1px solid #30363D;
    border-radius: 12px;
    padding: 30px;
    height: 100%;
    transition: 0.3s;
}

.info-card:hover {
    border-color: #2563EB;
    background-color: rgba(255, 255, 255, 0.02);
    transform: translateY(-2px);
}

.info-card h4 {
    color: #fff;
    font-size: 18px;
    font-weight: 600;
    margin-bottom: 15px;
}

.info-card p {
    color: #9CA3AF;
    font-size: 14px;
    line-height: 1.6;
    margin: 0;
}

/* --- ICON STYLE --- */
.icon-blue {
    color: #3B82F6;
    font-size: 24px;
    display: block;
}

/* --- TEXT CONTENT BOXES --- */
.content-box {
    background-color: #161B22;
    border: 1px solid #30363D;
    border-radius: 12px;
    padding: 40px;
}

.content-box h4 {
    color: #fff;
    font-size: 20px;
    font-weight: 600;
    margin-bottom: 20px;
}

/* --- CALLOUT BOX (Blue Left Border) --- */
.callout-box {
    border-left: 3px solid #3B82F6;
    background-color: rgba(33, 38, 45, 0.8); /* Darker background inside content box */
    padding: 20px 25px;
    border-radius: 0 6px 6px 0;
    margin-top: 20px;
}

.callout-box h5 {
    color: #fff;
    font-size: 15px;
    font-weight: 700;
    margin-bottom: 8px;
}

.callout-box p {
    color: #9CA3AF;
    font-size: 13px;
    line-height: 1.6;
}

/* --- RESPONSIVE --- */
@media (max-width: 768px) {
    .info-card, .content-box {
        padding: 25px;
    }
}

/* =================================================================
   ROHS PAGE STYLES
   ================================================================= */

/* --- SUBSTANCE LIST ITEMS --- */
.substance-item {
    background-color: #1F2937; /* Dark Grey BG */
    border: 1px solid #374151;
    border-radius: 6px;
    padding: 12px 15px;
    color: #E5E7EB;
    font-size: 14px;
    font-weight: 500;
    margin-bottom: 10px; /* Spacing between items */
    display: flex;
    align-items: center;
    gap: 10px;
}

.substance-item:last-child {
    margin-bottom: 0;
}

.substance-item i {
    font-size: 14px;
}

/* Helper for Red X Mark */
.text-danger {
    color: #EF4444 !important; /* Tailwind Red-500 */
}

/* --- APP CARD DARK (Reused) --- */
.app-card-dark {
    background-color: #1F2937;
    border: 1px solid #374151;
    border-radius: 8px;
    padding: 20px;
    height: 100%;
}

.app-card-dark h6 {
    color: #fff;
    font-size: 14px;
    font-weight: 600;
    margin-bottom: 5px;
}

.app-card-dark span {
    color: #9CA3AF;
    font-size: 12px;
    display: block;
}

/* --- RESPONSIVE --- */
@media (max-width: 768px) {
    .substance-item {
        font-size: 13px;
    }
}

/* =================================================================
   TESTING PARAMETERS PAGE STYLES
   ================================================================= */

/* --- 3-STEP PROCESS VISUALIZATION --- */
.process-grid-3 {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 30px;
    text-align: center;
    position: relative;
}

/* Connecting Line (Optional, simple version) */
.process-grid-3::before {
    content: '';
    position: absolute;
    top: 25px; /* Center of circle approx */
    left: 16%;
    right: 16%;
    height: 1px;
    background-color: rgba(255, 255, 255, 0.1);
    z-index: 0;
}

.process-step {
    position: relative;
    z-index: 1; /* Sits above line */
    display: flex;
    flex-direction: column;
    align-items: center;
}

.step-circle {
    width: 50px;
    height: 50px;
    background-color: #1F2937; /* Dark Circle BG */
    border: 1px solid #30363D;
    border-radius: 50%;
    color: #3B82F6; /* Blue Number */
    font-size: 20px;
    font-weight: 700;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 20px;
    box-shadow: 0 0 0 5px #161B22; /* Fakes a gap around circle */
}

.process-step h5 {
    color: #fff;
    font-size: 16px;
    font-weight: 600;
    margin-bottom: 10px;
}

.process-step p {
    color: #9CA3AF;
    font-size: 13px;
    line-height: 1.5;
    max-width: 250px;
}

/* --- RESPONSIVE --- */
@media (max-width: 768px) {
    .process-grid-3 {
        grid-template-columns: 1fr;
        gap: 40px;
    }

    .process-grid-3::before {
        display: none; /* Hide line on mobile */
    }
}

/* =================================================================
   PARTS ORDERING PAGE STYLES
   ================================================================= */

/* --- 4-STEP PROCESS VISUALIZATION --- */
.process-grid-4 {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 20px;
    text-align: center;
    position: relative;
}

/* Connecting Line */
.process-grid-4::before {
    content: '';
    position: absolute;
    top: 25px; /* Approx center of circle */
    left: 12%;
    right: 12%;
    height: 1px;
    background-color: rgba(255, 255, 255, 0.1);
    z-index: 0;
}

/* Reuse .process-step and .step-circle from Testing Page CSS */
/* Ensure those classes exist in main.css */

/* --- RESPONSIVE --- */
@media (max-width: 991px) {
    .process-grid-4 {
        grid-template-columns: 1fr 1fr; /* 2x2 on Tablet */
        gap: 40px;
    }
    .process-grid-4::before {
        display: none;
    }
}

@media (max-width: 576px) {
    .process-grid-4 {
        grid-template-columns: 1fr; /* Stack on Mobile */
    }
}


/* =================================================================
   ASSEMBLY CAPABILITIES PAGE STYLES
   ================================================================= */

/* --- VOLUME GRID (4 Columns) --- */
.volume-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 15px;
}

.volume-card {
    background-color: #1F2937; /* Slightly lighter card inside dark box */
    border: 1px solid #374151;
    border-radius: 8px;
    padding: 20px;
    transition: 0.2s;
}

.volume-card:hover {
    background-color: #252D3B;
    border-color: #4B5563;
}

.volume-card h6 {
    color: #fff;
    font-size: 14px;
    font-weight: 700;
    margin-bottom: 8px;
}

.volume-card .range {
    display: block;
    color: #E5E7EB; /* White-ish */
    font-size: 13px;
    font-weight: 600;
    margin-bottom: 4px;
}

.volume-card .time {
    display: block;
    color: #9CA3AF; /* Grey */
    font-size: 13px;
}

/* --- BULLET LIST STYLE (Blue Dash/Icon) --- */
.bullet-list-blue {
    list-style: none;
    padding: 0;
    margin: 0;
}

.bullet-list-blue li {
    color: #9CA3AF;
    font-size: 13px;
    margin-bottom: 8px;
    display: flex;
    align-items: center;
    gap: 10px;
}

.bullet-list-blue li i {
    color: #3B82F6; /* Blue Icon */
    font-size: 12px;
    width: 16px;
    text-align: center;
}

/* --- RESPONSIVE --- */
@media (max-width: 991px) {
    .volume-grid {
        grid-template-columns: 1fr 1fr; /* 2x2 on Tablet */
    }
}

@media (max-width: 576px) {
    .volume-grid {
        grid-template-columns: 1fr; /* Stack on Mobile */
    }
}

/* =================================================================
   BGA ASSEMBLY PAGE STYLES
   ================================================================= */

/* --- QA STEP CARDS (Blue Left Border) --- */
.qa-step {
    border-left: 3px solid #3B82F6;
    background-color: rgba(33, 38, 45, 0.5); /* Darker inside box */
    padding: 20px 25px;
    height: 100%; /* Equal height */
    border-radius: 0 6px 6px 0;
}

.qa-step h5 {
    color: #fff;
    font-size: 15px;
    font-weight: 700;
    margin-bottom: 10px;
}

.qa-step p {
    color: #9CA3AF;
    font-size: 13px;
    line-height: 1.6;
    margin: 0;
}

/* --- PILL GRID (Reused .app-grid-4) --- */
/* Ensure this class exists in main.css */
.app-grid-4 {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 15px;
}

/* --- RESPONSIVE --- */
@media (max-width: 991px) {
    .app-grid-4 {
        grid-template-columns: 1fr 1fr;
    }
}

@media (max-width: 576px) {
    .qa-step {
        padding: 15px;
    }
}

/* =================================================================
   REWORK PAGE STYLES
   ================================================================= */

/* --- 5-STEP PROCESS VISUALIZATION --- */
.process-grid-5 {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 15px;
    text-align: center;
    position: relative;
}

/* Connecting Line */
.process-grid-5::before {
    content: '';
    position: absolute;
    top: 25px; /* Approx center of circle */
    left: 10%;
    right: 10%;
    height: 1px;
    background-color: rgba(255, 255, 255, 0.1);
    z-index: 0;
}

/* Reuse .process-step and .step-circle from Testing Page CSS */
/* Ensure those classes exist in main.css */

/* --- RESPONSIVE --- */
@media (max-width: 991px) {
    .process-grid-5 {
        grid-template-columns: 1fr 1fr; /* Wrap */
        gap: 40px;
    }
    .process-grid-5::before {
        display: none;
    }
}

@media (max-width: 576px) {
    .process-grid-5 {
        grid-template-columns: 1fr; /* Stack on Mobile */
    }
}

/* Ensure Feature Box headers align nicely with icons */
.feature-box h4 {
    display: flex;
    align-items: center;
    font-size: 16px; /* Slightly smaller for certification titles */
}

.feature-box h4 i {
    font-size: 18px; /* Icon size */
}

.app-grid-3 {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 15px;
}

@media (max-width: 768px) {
    .app-grid-3 {
        grid-template-columns: 1fr;
    }
}

/* --- 5-STEP PROCESS GRID (Required for Soft Gold & Rework pages) --- */
.process-grid-5 {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 15px;
    text-align: center;
    position: relative;
}

.process-grid-5::before {
    content: '';
    position: absolute;
    top: 25px;
    left: 10%;
    right: 10%;
    height: 1px;
    background-color: rgba(255, 255, 255, 0.1);
    z-index: 0;
}

/* Small dot icon for bullet list if not already defined */
.fa-circle-small {
    font-size: 6px !important;
    vertical-align: middle;
}

/* Responsive */
@media (max-width: 991px) {
    .process-grid-5 {
        grid-template-columns: 1fr 1fr;
        gap: 30px;
    }
    .process-grid-5::before { display: none; }
}

@media (max-width: 576px) {
    .process-grid-5 {
        grid-template-columns: 1fr;
    }
}

/* =================================================================
   ENEPIG PAGE STYLES
   ================================================================= */

/* --- LAYER STACK VISUALIZATION --- */
.layer-stack {
    display: flex;
    flex-direction: column;
    gap: 2px; /* Small gap between layers */
}

.layer-item {
    padding: 15px 20px;
    display: flex;
    flex-direction: column;
    border-left: 4px solid; /* Color indicator */
    background-color: #1F2937;
    transition: 0.2s;
}

.layer-item:hover {
    background-color: #252D3B;
}

/* Specific Layer Colors */
.layer-item.gold { border-left-color: #FFD700; }      /* Gold */
.layer-item.palladium { border-left-color: #C0C0C0; } /* Silver/Grey */
.layer-item.nickel { border-left-color: #708090; }    /* Slate */
.layer-item.copper { border-left-color: #B87333; }    /* Copper */

.layer-name {
    color: #fff;
    font-weight: 600;
    font-size: 14px;
    margin-bottom: 2px;
}

.layer-desc {
    color: #9CA3AF;
    font-size: 12px;
}

/* --- COMPARISON TABLE UTILS --- */
.text-success { color: #10B981 !important; } /* Green check */
.text-warning { color: #F59E0B !important; } /* Yellow warning */

/* Responsive */
@media (max-width: 576px) {
    .spec-col.val {
        font-size: 12px;
    }
}

/* =================================================================
   ENIG / ENEPIG LAYER STACK STYLES
   ================================================================= */

.layer-stack {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.layer-item {
    padding: 15px 20px;
    display: flex;
    flex-direction: column;
    border-left: 4px solid;
    background-color: #1F2937;
    transition: 0.2s;
}

.layer-item:hover {
    background-color: #252D3B;
}

/* Specific Colors */
.layer-item.gold { border-left-color: #FFD700; }      /* Gold */
.layer-item.nickel { border-left-color: #708090; }    /* Slate */
.layer-item.copper { border-left-color: #B87333; }    /* Copper */

.layer-name {
    color: #fff;
    font-weight: 600;
    font-size: 14px;
    margin-bottom: 2px;
}

.layer-desc {
    color: #9CA3AF;
    font-size: 12px;
}

/* App Pill Dark (Used for Standards) */
.app-pill-dark {
    background-color: #21262D;
    border: 1px solid #30363D;
    border-radius: 6px;
    padding: 12px;
    text-align: center;
    font-size: 13px;
    font-weight: 600;
    color: #E5E7EB;
    transition: 0.2s;
}

.app-pill-dark:hover {
    border-color: #4B5563;
    background-color: #2D333B;
}

/* =================================================================
   CONSUMER ELECTRONICS PAGE STYLES
   ================================================================= */

/* --- 1. KEY APPLICATIONS LIST --- */
.app-list-check {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.app-list-check li {
    color: #D1D5DB;
    font-size: 14px;
    display: flex;
    align-items: center;
    gap: 10px;
}

.app-list-check li i {
    color: #3B82F6; /* Blue Icon */
    font-size: 16px;
}

/* --- 2. CAPABILITY CARDS (3 Col) --- */
.capability-card {
    background-color: #161B22;
    border: 1px solid #30363D;
    border-radius: 12px;
    padding: 30px;
    height: 100%;
    transition: 0.3s;
}

.capability-card:hover {
    border-color: #2563EB;
    transform: translateY(-3px);
}

/* Icon in a square box */
.icon-square {
    width: 48px;
    height: 48px;
    background-color: rgba(37, 99, 235, 0.1); /* Faint Blue BG */
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 20px;
    color: #3B82F6;
    font-size: 20px;
}

.capability-card h4 {
    color: #fff;
    font-size: 18px;
    font-weight: 600;
    margin-bottom: 15px;
}

/* Small bullet list inside cards */
.bullet-list-small {
    list-style: none;
    padding: 0;
    margin: 0;
}

.bullet-list-small li {
    color: #9CA3AF;
    font-size: 13px;
    margin-bottom: 8px;
    padding-left: 12px;
    position: relative;
    line-height: 1.5;
}

.bullet-list-small li::before {
    content: '•';
    color: #6B7280;
    position: absolute;
    left: 0;
    font-weight: bold;
}

/* --- 3. BLUE CTA BOX (Gradient) --- */
/* Reused from About Page if present, otherwise add this: */
.blue-cta-box {
    background: linear-gradient(135deg, #3B82F6 0%, #1D4ED8 100%);
    border-radius: 12px;
    padding: 60px 40px;
    text-align: center;
    color: #fff;
    box-shadow: 0 20px 40px rgba(0,0,0,0.2);
}

.blue-cta-box h2 {
    font-size: 28px;
    font-weight: 700;
    margin-bottom: 15px;
}

.blue-cta-box p {
    font-size: 16px;
    max-width: 700px;
    margin: 0 auto;
    color: rgba(255, 255, 255, 0.9);
}

/* Optional White Button for Blue Box */
.btn-white-cta {
    display: inline-block;
    background-color: #fff;
    color: #1D4ED8;
    font-weight: 600;
    padding: 12px 30px;
    border-radius: 6px;
    text-decoration: none;
    margin-top: 25px;
    transition: 0.3s;
}

.btn-white-cta:hover {
    background-color: #F3F4F6;
    transform: translateY(-2px);
}

/* --- RESPONSIVE --- */
@media (max-width: 991px) {
    .col-lg-5 {
        margin-top: 30px;
    }
}
