        :root {
            --primary-color: #0f172a; 
            --accent-color: #06b6d4; 
            --text-color: #334155;
            --light-bg: #f8fafc;
            --white: #ffffff;
            --transition: all 0.4s ease;
        }


        h1, h2, h3 {
            font-weight: 700;
            line-height: 1.3;
        }

        .container {
            max-width: 1320px;
            margin: 0 auto;
            padding: 0 20px;
        }

        /* === Hero Section (首頁大圖 - 已加入背景圖片) === */
        .hero {
            height: 100vh;
            /* 這裡使用了雙重背景：上一層是半透明深藍色遮罩，下一層是網路圖片 */
            background: url(../images/judge_main.png) no-repeat center center; 
            background-size: cover;
            background-attachment: fixed; 
            display: flex;
            align-items: center;
            justify-content: center;
            /* text-align: center */;
            color: var(--white);
            position: relative;
        }

        .hero-content {
            position: relative;
            z-index: 2;
            padding: 20px;
        }

        .hero h1 {
            font-family: sans-serif;
            font-size: 3rem;
            margin-bottom: 20px;
            text-shadow: 2px 2px 10px rgba(0,0,0,0.5);
        }
        .hero h1 p {
            font-size: 18px;
            color: #e2e8f0;
            letter-spacing: 1px;
            font-family: system-ui;
            font-weight: 100;
        }
        .hero h1 span {
            font-size: 30px;
            font-weight: normal;
            letter-spacing: 1px;
        }
        .hero h1 + p {
            font-size: 1.2em;
            color: #ffffff;
            width: 36vw;
            margin: 0 0 40px;
            font-weight: 300;
            text-shadow: 0 0 5px #000;
            padding: 1em 1.5em;
            transition: all .25s;
            background: #1d40675c;
            border-radius: 3px;
        }
        .btn-scroll {
            display: inline-block;
            color: var(--white);
            font-size: 2rem;
            animation: bounce 2s infinite;
            cursor: pointer;
            text-decoration: none;
            opacity: 0.8;
            margin-left: 30%;
        }
        
        .btn-scroll:hover {
            opacity: 1;
            color: var(--accent-color);
        }

        @keyframes bounce {
            0%, 20%, 50%, 80%, 100% {transform: translateY(0);}
            40% {transform: translateY(-10px);}
            60% {transform: translateY(-5px);}
        }

        /* === Section Styles === */
        section {
            padding: 100px 0;
        }

        .section-title {
            text-align: center;
            margin-bottom: 60px;
        }

        .section-title h2 {
            font-size: 2.5rem;
            color: var(--primary-color);
            margin-bottom: 20px;
        }

        .section-title .line {
            width: 60px;
            height: 4px;
            background: var(--accent-color);
            margin: 0 auto;
            border-radius: 2px;
        }

        /* === About Section === */
        .about-grid {
            display: grid;
            grid-template-columns: 1fr 1fr;
            gap: 60px;
            align-items: start;
        }

        .about-text h3 {
            font-size: 1.8rem;
            margin-bottom: 20px;
            color: var(--primary-color);
        }

        /* 右側品牌故事區塊 */
        .brand-box {
            background: var(--white);
            padding: 50px;
            border-top: 5px solid var(--accent-color);
            border-radius: 10px;
            box-shadow: 0 20px 40px rgba(0,0,0,0.08);
            position: relative;
        }
        
        /* 裝飾用的大引號 */
        .brand-box::before {
            content: '\f10d'; /* FontAwesome quote icon */
            font-family: "Font Awesome 6 Free";
            font-weight: 900;
            position: absolute;
            top: -30px;
            left: 30px;
            font-size: 60px;
            color: var(--accent-color);
            background: var(--white);
            padding: 0 10px;
        }

        .brand-box strong {
            color: var(--accent-color);
            font-size: 1.2rem;
            display: block;
            margin-bottom: 15px;
        }

        /* === Service Section (Customer Centric) - 這裡有三個重要圖示 === */
        #challenge.services-section {
/*             background-color: var(--primary-color);
 */            color: var(--white);
            position: relative;
            /* background-image: linear-gradient(rgba(15, 23, 42, 0.9), rgba(15, 23, 42, 0.9)), url('https://www.transparenttextures.com/patterns/cubes.png'); /* 加入細微紋理背景 */ 
        }

       /*  .services-section .section-title h2 {
            color: var(--white);
        }
 */
        .services-grid {
            display: grid;
            grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
            gap: 20px;
        }

        .service-card {
            background: rgba(255, 255, 255, 0.05);
            padding: 50px 35px;
            border-radius: 15px;
            border: 1px solid rgba(255, 255, 255, 0.1);
            transition: var(--transition);
            text-align: left; 
        }

        .service-card:hover {
            transform: translateY(-10px);
            background: rgba(255, 255, 255, 0.1);
            border-color: var(--accent-color);
            box-shadow: 0 15px 30px rgba(0,0,0,0.2);
        }

        /* 這就是您需要的「圖片」圖示 */
        .service-icon {
            font-size: 3.5rem;
            color: var(--accent-color);
            margin-bottom: 25px;
            display: inline-block;
        }

        .service-card h3 {
            margin-bottom: 15px;
            font-size: 1.5rem;
        }

        .service-card p {
            color: #cbd5e1;
            font-size: 1rem;
        }

        /* === Solutions Section (Point, Line, Plane) - 視覺化圖表 === */
        .solutions-section {
            background-color: var(--light-bg);
        }

        .solution-flow {
            display: flex;
            position: relative;
            flex-wrap: wrap;
            gap: 20px;
            margin-top: 20px;
            flex-direction: row;
            align-content: center;
            justify-content: center;
        }

        .solution-item {
            
            width: 400px;
            position: relative;
            z-index: 1;
            background: var(--white);
            padding: 20px;
            border-radius: 15px;
            box-shadow: 0 10px 25px rgba(0,0,0,0.05);
            transition: var(--transition);
            border-bottom: 4px solid transparent;
        }

        .solution-item:hover {
            box-shadow: 0 20px 40px rgba(0,0,0,0.1);
            transform: translateY(-5px);
            border-bottom-color: var(--accent-color);
        }

        /* 圓形圖示 */
        .circle-icon {
            width: 100px;
            height: 100px;
            background: var(--white);
            border: 4px solid var(--accent-color);
            color: var(--primary-color);
            border-radius: 50%;
            display: flex;
            align-items: center;
            justify-content: center;
            font-size: 2.2rem;
            margin: -90px auto 30px; 
            font-weight: 700;
            box-shadow: 0 10px 20px rgba(6, 182, 212, 0.2);
        }
        

        .solution-item h3 {
            color: var(--primary-color);
            margin-bottom: 15px;
            font-size: 1.3rem;
        }

        
        .section-title::after {
            display: none!important;
        }
        
        .services-section  .line + p {
            margin-top: 15px;
            color: #284e83;
            font-size: 1.35rem;
            font-weight: normal;
        }
        #design.services-section {
            background-color: #f6fbff;
        }
        #design .service-card p {
            color: #6e839b;
            font-size: 1.2rem;
        }

        #design .container {
            width: 1366px;
            height: 600px;
            max-width: initial;
            display: flex;
            align-items: center;
            justify-content: space-between;
            overflow: hidden;
            position: relative
        }

        #design .text-section {
            flex: 0 0 40%;
            z-index: 10;
        }

        #design h1 {
            font-size: 3rem;
            line-height: 1.35;
            margin-bottom: 30px;
            font-weight: 700;
            color: #1a1a1a;
        }

        #design h1 span {
            color: #1978dd; 
            display: block;
        }

        #design .subtitle {
            font-size: 1.35rem;
        }
        #design .graphic-section {
            flex: 1;
            height: 100%;
            position: relative;
        }

        #design .main-image-circle {
            position: absolute;
            width: 400px;
            height: 400px;
            border-radius: 50%;
            overflow: hidden;
            left: 0;
            top: 50%;
            transform: translateY(-50%);
            z-index: 1;
        }

        #design .main-image-circle img {
            width: 100%;
            height: 100%;
            object-fit: cover;
        }

        #design .bubble {
            position: absolute;
            border-radius: 50%;
            display: flex;
            flex-direction: column;
            justify-content: center;
            align-items: center;
            text-align: center;
            box-shadow: 0 10px 25px rgba(0,0,0,0.1);
            padding: 20px;
            /* transition: transform 0.3s ease; */
            transition: var(--transition);
        }

        #design .bubble:hover {
            transform: scale(1.05);
        }

        #design .bubble h3 {
            font-size: 1.5rem;
            margin: 5px 0;
        }

        #design .bubble p {
            font-size: 1.1rem;
            line-height: 1.4;
        }

        #design .bubble.blue {
            width: 260px;
            height: 260px;
            background-color: #1a71e3;
            color: white;
            z-index: 5; 
            left: 175px; 
            top: 50%;
            transform: translateY(-50%);
            box-shadow: 0 15px 35px rgba(26, 90, 255, 0.4);
        }

        #design .bubble.blue:hover {
            transform: translateY(-50%) scale(1.05);
        }

        #design .bubble.white {
            width: 240px;
            height: 240px;
            background-color:#ffffffa1;
            color: #333;
            z-index: 4;
        }
        
        #design .bubble img {
            width: 60px;
        }

        #design .bubble.top {
            top: 5%;
            left: 380px;
        }

        #design .bubble.right {
            top: 50%;
            right: 0;
            transform: translateY(-50%);
        }
        #design .bubble.right:hover {
             transform: translateY(-50%) scale(1.05);
        }

        #design .bubble.bottom {
            bottom: 5%;
            left: 380px;
        }
        #ui {
            background-color: #4580d3;
        }
        #ui .solution-flow img {
            width: 100%;
            height: auto;
            margin-bottom: .5em;
        }
        #ui .solution-flow ul {
            padding-left: 1.5em;
        }
        #ui .solution-flow p {
            line-height: 1.5;
        }
        #ui .section-title h2 {
            color: #fff;
        }
        #ui .container {
            max-width: 1366px;
        }
        #ui .section-title p {
            color: #fff;
            margin-top: 15px;
            font-size: 1.35em;
            font-weight: normal;
        }
        #ui .solution-item h3 {
            color: #333;
            text-align: center;
        }
        #ui .solution-item .tag {
            font-size: 15px;
        }


        #industries div img {
            width: 100%;
        }
        #industries .line + p {
            margin-top: 15px;
            font-size: 1.35em;
            font-weight: normal;
        }
        #industries table {
            background-color: #fff;
            padding: 5px;
            display: inline-block;
        }
        #industries table tr th {
            text-align: center;
            font-weight: normal;
            background-color: #ebebeb;
            font-size: 1.1em;
            line-height: 1;
            color: #424242;
            white-space: nowrap;
            padding: .8em 1em;
            border-right: 1px solid #ffffff;
            border-bottom: 2px solid #6eabed;
        }
        #industries table tr th:last-child {
            border-right: none;
        }
        #industries table tr td {
            padding: 10px 16px;
            font-size: 17px;
            border-bottom: 1px solid #84a5c052;
            border-right: 1px solid #84a5c052;
        }
        #industries table tr td:nth-child(1) {
            min-width: 10em;
            text-align: center;
        }
        #industries table tr td:nth-child(2) {
            color: #333!important;
        }
       #industries table tr td:nth-child(3) {
            max-width: 41em;
            color: #0056b1;
        }
        #industries table tr th:nth-child(3) {
            font-weight: bold;
            color: #0056b1;
        }
        th.relative {
            position: relative;
        }
        th.relative img {
            position: absolute;
            width: 3.5em!important;
            left: 4em;
            top: -2em;
        }
        #industries .solution-flow {
            display: flex;
            justify-content: center;
            position: relative;
            flex-wrap: wrap;
            gap: 30px;
            margin-top: 20px;
        }
        #industries h3 {
            font-size: 1.65em;
        }
        #industries h3 img {
            width: 4em;
            display: block;
            margin: 1.5em auto .5em;
            border: 1px solid #ffffff;
            background-color: #ffffff59;
            border-radius: 50em;
            padding: .5em;
        }
        #industries {
            background-color: #daefff;
        }

        section#ui {
            padding: 70px 0;
        }
        td ul {
            margin: 0;
        }
        /* === RWD Media Queries === */
        @media (max-width: 1366px) {
            .hero h1 + p {
                width: 57vw;
            }

            .hero h1 + p {
                width: 57vw;
            }
            .hero h1 + p {
                width: 70vw;
            }
            .hero h1 + p {
                margin: 0 0 20px;
            }

            .hero h1 + p {
                width: 57vw;
            }
            
            .hero h1 + p {
                width: 57vw;
            }
            #design h1 {
                font-size: 2.5em;
                margin-bottom: 10px;
                max-width: 82%;
            }
            #design .container {
                height: 77vh;
            }
            #design .subtitle {
                font-size: 1.25rem;
                width: 94%;
                line-height: 1.5;
            }
            #design .bubble {
                padding: 12px;
                width: 230px !important;
                height: 230px !important;
            }
            /* design .bubble h3 {
                font-size: 1.35em;
                margin: 5px 0 0;
            } */
            #design .bubble p {
                font-size: 1em;
            }
            #design .main-image-circle {
                width: 300px;
                height: 300px;
            }
            #design .bubble.blue {
                left: 21%;
            }
            #design .bubble img {
                width: 50px;
            }
            #design .bubble.bottom,
            #design .bubble.top {
                left: 45%;
            }
            #design .text-section {
                flex: .6;
            }
            .solution-flow {
                margin-top: 20px;
            }
        }

        @media (min-width: 992px) {
            .solution-flow::before {
                display: block;
            }
        }

        @media (max-width: 768px) {
            .hero h1 { font-size: 2.5rem; }
            .about-grid { grid-template-columns: 1fr; gap: 40px;}
            .brand-box { padding: 30px; margin-top: 20px;}
            .solution-flow { flex-direction: column; gap: 60px; margin-top: 50px;}
            .circle-icon { margin-top: -70px; width: 80px; height: 80px; font-size: 1.8rem;}
        }

        @media screen and (max-width:576px) {
            #industries table tr td:nth-child(1),
            #industries table tr td:nth-child(2) {
                display: none!important;
            }
            #industries table tr td {
                color: #000!important;
            }
            .hero {
                height: auto;
                padding: 0 0 2em;
            }
            
            #design .subtitle {
                font-size: 18px;
                width: 100%;
                margin-bottom: 1em;
            }
            .hero h1 + p {
                font-size: 18px;
                padding: 0;
                background: initial;
                width: initial !important;
            }
            #design .container {
                flex-direction: column !important;
                height: auto;
                width: initial;
                align-items: initial;
            }
            #uninterrupted .section-title p, #ui .section-title p {
                font-size: 18px;
                line-height: 1.5;
                width: 100%;
            }
            .solution-item {
                width: 90%;
                margin: 0 auto;
            }
            .solution-flow {
                margin-top: 5%;
                gap: 1em;
            }
            .section-title h2 {
                font-size: 1.75em !important;
            }
            #uninterrupted table tr td:first-child,
            #industries table tr td:first-child {
                width: 36%;
                line-height: 1.35;
            }
            #uninterrupted table tr td, #industries table tr td {
                line-height: 1.5;
                white-space: initial !important;
            }
            section#ui {
                padding: 10% 0;
            }
            #design {
                padding: 10% 0;
            }
            #design h1 {
                font-size: 1.75em;
            }
            .detect {
                display: none;
            }
            #design .main-image-circle {
                position: initial;
                width: initial;
                height: initial;
                border-radius: initial;
                overflow: initial;
                transform: initial!important;
            }
            .main-image-circle.reveal.active {
                display: none;
            }
            #design .bubble {
                position: initial;
                width: initial !important;
                height: initial !important;
                border-radius: initial;
                color: initial !important;
                background-color: initial !important;
                transform: initial !important;
                padding: 5px 0;
                box-shadow: none !important;
            }
            #design .bubble::after {
                content: '';
                width: 90%;
                height: 1px;
                margin: 5% 0;
                border-bottom: 1px dashed #a8d5fd;
            }
            #design .bubble:last-child::after {
                display: none;
            }
            section {
                padding: 10% 0;
            }
        }