        :root {
            --cream: #fef8f0;
            --card: #ffffff;
            --deep-cocoa: #2b1a10;
            --accent-coral: #e8815b;
            --accent-amber: #d4943a;
            --accent-gold: #c4853a;
            --text-dark: #2e1f14;
            --text-body: #4a3729;
            --border-warm: #f0e0d0;
            --border-soft: #f5e8da;
            --shadow-warm: 0 12px 32px -10px rgba(120, 70, 30, 0.10);
            --shadow-hover: 0 20px 40px -12px rgba(180, 100, 40, 0.20);
            --radius-xl: 1.75rem;
            --radius-lg: 1.25rem;
            --radius-md: 0.85rem;
            --transition: all 0.22s cubic-bezier(0.4, 0, 0.2, 1);
        }
        * { margin:0; padding:0; box-sizing:border-box; }
        html { scroll-behavior:smooth; }
        body {
            font-family: 'Inter', system-ui, -apple-system, 'Segoe UI', Roboto, 'Noto Sans SC', sans-serif;
            background-color: var(--cream);
            color: var(--text-body);
            line-height: 1.7;
            -webkit-font-smoothing: antialiased;
        }

        /* Header */
        header {
            background:#fffaf5; border-bottom:1px solid var(--border-soft);
            position:sticky; top:0; z-index:100;
            backdrop-filter:blur(6px); background:rgba(255,250,245,0.92);
        }
        .header-inner {
            display:flex; align-items:center; justify-content:space-between;
            flex-wrap:wrap; padding:0.9rem 0; gap:0.6rem;
            max-width:1280px; margin:0 auto; padding-left:1.5rem; padding-right:1.5rem;
        }
        .logo-area { display:flex; align-items:baseline; gap:0.45rem; text-decoration:none; }
        .logo-text { font-size:1.55rem; font-weight:750; color:var(--deep-cocoa); }
        .logo-dot {
            width:8px; height:8px; border-radius:50%;
            background:var(--accent-coral); animation:pulse-dot 2.4s ease-in-out infinite;
        }
        @keyframes pulse-dot {
            0%,100%{ transform:scale(1); opacity:0.8; }
            50%{ transform:scale(1.7); opacity:1; }
        }
        .logo-badge {
            background:#fef0e6; color:#c0703a; font-size:0.7rem;
            padding:0.2rem 0.6rem; border-radius:20px; font-weight:600;
            border:1px solid #f5d5ba;
        }
        .nav-links { display:flex; gap:1.1rem; list-style:none; flex-wrap:wrap; align-items:center; }
        .nav-links a {
            color:#5c3d2e; text-decoration:none; font-weight:530; font-size:0.9rem;
            padding:0.3rem 0; border-bottom:2px solid transparent; transition:var(--transition);
        }
        .nav-links a:hover, .nav-links a.active { color:#c06030; border-bottom-color:#e0a070; }
        .nav-dl {
            background:#fbe9d9; color:#b8552a !important; padding:0.4rem 1rem !important;
            border-radius:22px; font-weight:620; border-bottom:none !important;
        }

        /* Hero */
        .tech-hero {
            background:linear-gradient(160deg, #2b1a0e 0%, #1f1108 100%);
            position:relative; overflow:hidden; padding:3.5rem 0 2.5rem; text-align:center;
        }
        .tech-hero::before {
            content:""; position:absolute; width:100%; height:100%; top:0; left:0;
            background:radial-gradient(circle at 25% 50%, rgba(220,140,80,0.14) 0%, transparent 60%);
        }
        .tech-hero .container { position:relative; z-index:2; max-width:900px; margin:0 auto; padding:0 1.5rem; }
        .tech-hero h1 {
            font-size:clamp(1.8rem, 4vw, 2.5rem); font-weight:800; color:#fff; margin-bottom:0.8rem;
        }
        .tech-hero h1 span {
            background:linear-gradient(135deg, #f5c080, #e8784a);
            -webkit-background-clip:text; -webkit-text-fill-color:transparent;
        }
        .tech-hero p { font-size:1.05rem; color:#d4b896; max-width:650px; margin:0 auto; }

        /* Content */
        .article-content { max-width:900px; margin:0 auto; padding:3rem 1.5rem; }
        .section-title {
            font-size:1.7rem; font-weight:700; color:var(--deep-cocoa);
            margin:2.5rem 0 1.2rem; padding-bottom:0.5rem;
            border-bottom:2px dashed #f0d8c0;
        }
        p { margin-bottom:1rem; color:#4a3729; }
        .highlight-box {
            background:#fffaf2; border-left:4px solid #e0a060;
            padding:0.8rem 1.2rem; border-radius:0 0.5rem 0.5rem 0;
            margin:1.2rem 0; font-size:0.95rem; color:#5c3020;
        }
        .card-grid {
            display:grid; grid-template-columns:repeat(auto-fit, minmax(230px, 1fr));
            gap:1.2rem; margin:1.5rem 0;
        }
        .layer-card {
            background:var(--card); border-radius:var(--radius-lg); padding:1.5rem;
            border:1px solid var(--border-warm); box-shadow:var(--shadow-warm);
            transition:var(--transition);
        }
        .layer-card:hover { transform:translateY(-3px); box-shadow:var(--shadow-hover); }
        .layer-card h4 { color:var(--deep-cocoa); margin-bottom:0.5rem; font-size:1.05rem; }
        .flow-diagram {
            display:flex; flex-wrap:wrap; align-items:center; justify-content:center;
            gap:0.5rem; background:var(--card); border-radius:var(--radius-lg);
            padding:1.5rem; margin:1.5rem 0; border:1px solid var(--border-warm);
            font-weight:600; color:var(--deep-cocoa); font-size:0.95rem;
        }
        .flow-diagram span { background:#fffaf2; padding:0.4rem 1rem; border-radius:20px; border:1px solid var(--border-soft); }
        .flow-diagram .arrow { color:var(--accent-coral); background:none; border:none; padding:0; }
        .protocol-grid {
            display:grid; grid-template-columns:repeat(auto-fit, minmax(200px, 1fr));
            gap:1rem; margin:1.5rem 0;
        }
        .protocol-card {
            background:var(--card); border-radius:var(--radius-md); padding:1.3rem;
            border:1px solid var(--border-warm); box-shadow:var(--shadow-warm);
        }
        .protocol-card h4 { color:var(--accent-coral); margin-bottom:0.4rem; }
        .cta-banner {
            background:linear-gradient(150deg, #2b180c 0%, #3d2015 50%, #1f0f06 100%);
            border-radius:var(--radius-xl); padding:2.5rem 2rem; text-align:center;
            margin:3rem 0 1rem; color:#fff;
        }
        .cta-banner h3 { font-size:1.6rem; margin-bottom:0.8rem; }
        .cta-banner p { color:#e0c8a8; margin-bottom:1.8rem; }
        .btn-warm {
            background:linear-gradient(135deg, #e8784a, #d06038);
            color:#fff; padding:0.7rem 2rem; border-radius:30px;
            font-weight:620; text-decoration:none; display:inline-block;
            box-shadow:0 4px 14px rgba(200,90,40,0.25); transition:var(--transition);
        }
        .btn-warm:hover {
            background:linear-gradient(135deg, #f09060, #d86840);
            box-shadow:0 8px 22px rgba(200,90,40,0.35);
        }

        footer {
            background:#1f1108; color:#b09880; padding:2.5rem 0; margin-top:2rem;
        }
        .footer-inner {
            display:flex; justify-content:space-between; flex-wrap:wrap; gap:2rem;
            max-width:1280px; margin:0 auto; padding:0 1.5rem;
        }
        .footer-col h5 { color:#f0d8b8; margin-bottom:0.7rem; }
        .footer-col ul { list-style:none; }
        .footer-col ul li a { color:#b09880; text-decoration:none; font-size:0.82rem; }
        .copyright {
            text-align:center; padding-top:1.4rem; margin-top:1rem;
            border-top:1px solid #3d2518; font-size:0.78rem;
            max-width:1280px; margin-left:auto; margin-right:auto;
        }

        @media (max-width:768px) {
            .header-inner { flex-direction:column; align-items:flex-start; }
            .flow-diagram { flex-direction:column; gap:0.3rem; }
        }