
        /* --- Branding Variables (HKSEV Blue) --- */
        :root {
            --primary: #0060a9;        /* Brand Blue */
            --primary-dark: #00457a;
            --secondary: #e3f2fd;      /* Light Blue Bg */
            --emergency-red: #d32f2f;  /* Urgent Alert Color */
            --text-main: #2c3e50;
            --text-light: #546e7a;
            --bg-body: #f8f9fa;
            --radius: 12px;
            --shadow: 0 8px 24px rgba(0, 96, 169, 0.12);
        }

        /* --- Base Styles --- */
        body {
            font-family: 'Noto Sans TC', sans-serif;
            line-height: 1.6;
            color: var(--text-main);
            background: var(--bg-body);
            margin: 0;
            padding: 0;
        }
        h1, h2, h3 { font-weight: 700; margin-top: 0; }
        a { text-decoration: none; transition: 0.3s; }
        
        .page-wrapper {
            max-width: 800px;
            margin: 0 auto;
            background: #fff;
            min-height: 100vh;
            box-shadow: 0 0 20px rgba(0,0,0,0.05);
        }

        /* --- Emergency Sticky Header (Mobile Optimization) --- */
        .sticky-alert {
            position: sticky;
            top: 0;
            z-index: 1000;
            background: var(--emergency-red);
            color: white;
            padding: 12px 20px;
            display: flex;
            justify-content: space-between;
            align-items: center;
            box-shadow: 0 2px 10px rgba(211, 47, 47, 0.3);
        }
        .alert-text { font-weight: 700; font-size: 0.95rem; display: flex; align-items: center; gap: 8px; }
        .alert-btn {
            background: white;
            color: var(--emergency-red);
            padding: 6px 16px;
            border-radius: 20px;
            font-weight: 900;
            font-size: 0.9rem;
            display: flex;
            align-items: center;
            gap: 5px;
        }
        
        /* --- Hero Section --- */
        .hero {
            background: linear-gradient(135deg, var(--primary) 0%, #0d47a1 100%);
            color: white;
            padding: 50px 30px;
            text-align: center;
        }
        .hero h1 { font-size: 2rem; margin-bottom: 15px; line-height: 1.3; }
        .hero .subtitle { font-size: 1.1rem; opacity: 0.9; margin-bottom: 25px; }
        .breadcrumb { font-size: 0.85rem; color: rgba(255,255,255,0.7); margin-bottom: 20px; display: block; }
        .breadcrumb a { color: white; border-bottom: 1px dotted rgba(255,255,255,0.5); }

        /* --- Triage Traffic Light System --- */
        .triage-section { padding: 40px 30px; }
        .triage-card {
            border-radius: var(--radius);
            padding: 25px;
            margin-bottom: 25px;
            border-left: 6px solid #ccc;
            background: #fff;
            box-shadow: 0 4px 12px rgba(0,0,0,0.05);
        }
        .triage-red { border-left-color: var(--emergency-red); background: #fff5f5; }
        .triage-yellow { border-left-color: #fbc02d; background: #fffde7; }
        
        .triage-title { font-size: 1.2rem; font-weight: 700; display: flex; align-items: center; gap: 10px; margin-bottom: 10px; }
        .text-red { color: var(--emergency-red); }
        .text-yellow { color: #f57f17; }
        
        ul.symptom-list { margin: 0; padding-left: 20px; }
        ul.symptom-list li { margin-bottom: 6px; color: #555; }

        /* --- Service Cards --- */
        .services-grid {
            display: grid;
            grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
            gap: 20px;
            padding: 0 30px 40px;
        }
        .service-item {
            background: var(--secondary);
            padding: 20px;
            border-radius: var(--radius);
            text-align: center;
        }
        .service-icon { font-size: 2rem; margin-bottom: 10px; display: block; }
        .service-item h3 { color: var(--primary); font-size: 1.1rem; margin-bottom: 8px; }
        .service-item p { font-size: 0.9rem; color: #666; margin: 0; }

        /* --- CTA Block --- */
        .location-cta {
            background: #263238;
            color: white;
            padding: 40px 30px;
            text-align: center;
        }
        .big-phone { font-size: 2rem; font-weight: 900; color: var(--secondary); margin: 15px 0; display: block; }
        
        /* Map styling */
        .map-container {
            margin-top: 25px;
            border-radius: var(--radius);
            overflow: hidden;
            box-shadow: 0 5px 15px rgba(0,0,0,0.3);
        }

        /* --- FAQ --- */
        .faq-section { padding: 40px 30px; background: #fff; }
        details {
            border: 1px solid #eee;
            border-radius: 8px;
            margin-bottom: 15px;
            padding: 15px;
        }
        summary { font-weight: 700; color: var(--primary); cursor: pointer; }
        details[open] { border-color: var(--primary); background: var(--secondary); }

        @media (max-width: 600px) {
            .hero h1 { font-size: 1.6rem; }
            .triage-section, .services-grid, .location-cta { padding-left: 20px; padding-right: 20px; }
        }
    