.banner{
    background: linear-gradient(135deg, #003366 0%, #004a99 100%);
    background-blend-mode: multiply;
    background-repeat: no-repeat;
    background-position: 50% 70% !important;
    background-size: cover;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    position: relative;
    padding: 80px 0;
}

.banner p{
    color: #f1e9e9;
}

.banner h1{
    color: #fff;
    font-weight: 600;
    margin-top: 20px;
}

.banner-content {
    position: absolute;
}

.banner-content p {
    text-align: center;
    color: #fff;
}

.w3-content {
    padding-bottom: 0 !important;
}

a {
    width: 100%;
    display: contents;

}

h2 {
    font-size: 20px;
    font-weight: 600;
    color: #000;
    text-align: left;
}


        /* --- 專案列表容器樣式 --- */
        .project-section-container {
            max-width: 80rem; /* 1280px */
            margin: 0 auto;
            padding: 6rem 1.5rem;
        }

        /* --- 基礎卡片排版 (手機版優先) --- */
        .project-card {
            display: flex;
            flex-direction: column;
            align-items: center;
            gap: 2.5rem;
            margin-bottom: 3rem;
            transition: all 0.3s ease;
        }

        .project-image-wrapper {
            width: 100%;
            overflow: hidden;
            border-radius: 1rem;
            box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.25);
            background-color: #f1f5f9;
            aspect-ratio: 4 / 3;
        }

        .project-image {
            width: 100%;
            height: 100%;
            object-fit: cover;
            transition: transform 0.7s cubic-bezier(0.4, 0, 0.2, 1);
        }

        .project-content {
            width: 100%;
        }

        .case-label {
            color: #2563eb;
            font-weight: 700;
            text-transform: uppercase;
            letter-spacing: 0.1em;
            font-size: 0.875rem;
            margin-bottom: 0.5rem;
            display: block;
        }

        .project-title {
            font-size: 1.875rem;
            color: #111827;
            margin-top: 0.5rem;
            margin-bottom: 1rem;
            transition: color 0.3s ease;
        }

        .project-description {
            color: #524e63;
            font-size: 1.125rem;
            margin-bottom: 2rem;
            display: -webkit-box;
            -webkit-line-clamp: 4;
            -webkit-box-orient: vertical;
            overflow: hidden;
            line-height: 1.625;
        }

        .cta-wrapper {
            padding-top: 1.5rem;
            border-top: 1px solid #f3f4f6;
        }

        .cta-link {
            display: inline-flex;
            align-items: normal;
            color: #111827;
            text-decoration: none;
            transition: color 0.3s ease;
        }

        .cta-link span {
           /* border-bottom: 2px solid #2563eb;*/
            padding-bottom: 0.25rem;
        }

        .cta-icon {
            width: 1.25rem;
            height: 1.25rem;
            margin-left: 0.5rem;
            transition: transform 0.3s ease;
        }

        /* --- 電腦版樣式整合區塊 (min-width: 768px) --- */
        @media (min-width: 768px) {
            .project-card {
                flex-direction: row;
                gap: 5rem;
                margin-bottom: 5rem;
            }

            /* Z 字型交替排版核心邏輯 */
            .project-card:nth-child(even) {
                flex-direction: row-reverse;
            }

            .project-image-wrapper {
                width: 30%;
            }

            .project-content {
                width: 50%;
            }

            .project-title {
                font-size: 1.875rem;
            }
        }

        /* --- 懸停互動樣式 --- */
        .project-card:hover .project-image {
            transform: scale(1.05);
        }

        .project-card:hover .project-title {
            color: #1d4ed8;
        }

        .cta-link span:hover{
            color: #1d4ed8;
        }

        .cta-link:hover {
            color: #1d4ed8;
        }

        .cta-link:hover .cta-icon {
            transform: translateX(0.5rem);
        }

/* 響應式設計 (手機與平板) */
@media (max-width: 768px) {
    .banner {
        height: auto;
        padding: 110px 20px 20px 20px;
    }
    .banner h1{
        color: #fff;
        font-weight: 600;
        margin-top: 20px;
        font-size: 23px;
        text-align: center;
    }
    .banner p {
        text-align: center;
    }

}