        :root {
            --cg-bg: #f8fafc;
            --cg-surface: #ffffff;
            --cg-card: #ffffff;
            --cg-border: #e5e7eb;
            --cg-text: #0f172a;
            --cg-muted: #4b5563;
            --cg-accent: #0ea5e9;
            --cg-accent-2: #fbbf24;
            --cg-shadow: 0 16px 40px rgba(15, 23, 42, .08);
            --radius-xl: 22px;
            --radius-lg: 16px;
            --radius-md: 12px;
        }

        html {
            scroll-behavior: smooth;
        }

        body {
            background: radial-gradient(1200px 700px at 20% -10%, rgba(14, 165, 233, .12), transparent 55%),
                radial-gradient(900px 600px at 90% 0%, rgba(251, 191, 36, .10), transparent 55%),
                linear-gradient(180deg, #fdfdfd 0%, #f5f8fb 50%, #ffffff 100%);
            color: var(--cg-text);
            font-family: ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial, "Apple Color Emoji", "Segoe UI Emoji";
        }

        /* Navbar */
        .navbar {
            backdrop-filter: blur(10px);
            background: rgba(255, 255, 255, .92);
            border-bottom: 1px solid var(--cg-border);
            box-shadow: 0 10px 30px rgba(15, 23, 42, .08);
        }

        .navbar .nav-link {
            color: #0f172a;
            opacity: .85;
        }

        .navbar .nav-link:hover {
            opacity: 1;
            color: var(--cg-accent);
        }

        .navbar-brand {
            letter-spacing: .3px;
            font-weight: 700;
            flex-wrap: wrap;
        }

        .navbar-nav {
            text-align: center;
            margin-left: auto;
            margin-right: auto;
        }

        /* Hero */
        .hero {
            padding: 5.2rem 0 2.5rem;
            background: linear-gradient(135deg, rgba(14, 165, 233, .08), rgba(251, 191, 36, .08));
        }

        .hero-badge {
            display: inline-flex;
            align-items: center;
            gap: .5rem;
            padding: .35rem .75rem;
            border: 1px solid var(--cg-border);
            background: #fff;
            border-radius: 999px;
            color: var(--cg-muted);
            font-size: .9rem;
        }

        .hero h1 {
            font-size: clamp(2rem, 4.2vw, 3.3rem);
            line-height: 1.05;
            margin: .9rem 0 1rem;
            letter-spacing: -0.5px;
        }

        .hero p.lead {
            color: var(--cg-muted);
            max-width: 60ch;
        }

        /* Cards */
        .cg-card {
            background: var(--cg-card);
            border: 1px solid var(--cg-border);
            border-radius: var(--radius-xl);
            box-shadow: var(--cg-shadow);
        }

        .cg-card .card-header {
            background: transparent;
            border-bottom: 1px solid var(--cg-border);
            padding: 1.1rem 1.25rem;
        }

        .cg-card .card-body {
            padding: 1.25rem;
        }

        .cg-pill {
            display: inline-flex;
            align-items: center;
            gap: .5rem;
            padding: .35rem .65rem;
            border-radius: 999px;
            background: rgba(14, 165, 233, .12);
            border: 1px solid rgba(14, 165, 233, .35);
            color: #0f172a;
            font-size: .9rem;
            white-space: nowrap;
        }

        /* Section wrapper */
        section {
            padding: 2.4rem 0;
        }

        .section-title {
            font-size: 1.6rem;
            letter-spacing: -0.2px;
            margin-bottom: .6rem;
        }

        .section-subtitle {
            color: var(--cg-muted);
            margin-bottom: 1.2rem;
        }

        /* Video */
        .ratio.cg-video {
            border-radius: var(--radius-xl);
            overflow: hidden;
            border: 1px solid var(--cg-border);
            box-shadow: var(--cg-shadow);
            background: #fff;
        }

        /* Buttons */
        .btn-cg-primary {
            --bs-btn-color: #061022;
            --bs-btn-bg: #0ea5e9;
            --bs-btn-border-color: rgba(14, 165, 233, .4);
            --bs-btn-hover-bg: #38bdf8;
            --bs-btn-hover-border-color: rgba(14, 165, 233, .55);
            --bs-btn-active-bg: #0891b2;
            --bs-btn-active-border-color: rgba(14, 165, 233, .65);
            border-radius: 999px;
            font-weight: 700;
        }

        .btn-cg-ghost {
            --bs-btn-color: var(--cg-text);
            --bs-btn-bg: #fff;
            --bs-btn-border-color: var(--cg-border);
            --bs-btn-hover-bg: rgba(14, 165, 233, .1);
            --bs-btn-hover-border-color: var(--cg-accent);
            --bs-btn-hover-color: var(--cg-text);
            border-radius: 999px;
            font-weight: 600;
            transition: all 0.2s ease-in-out;
        }

        .btn-cg-ghost:hover i,
        .btn-cg-ghost:active i,
        .btn-cg-ghost:focus i {
            color: var(--cg-accent) !important;
        }

        /* Embedded legacy content styling */
        .legacy-wrap {
            color: var(--cg-text);
        }

        .legacy-wrap h1,
        .legacy-wrap h2,
        .legacy-wrap h3,
        .legacy-wrap h4 {
            color: #0f172a !important;
            letter-spacing: -0.2px;
        }

        .legacy-wrap p,
        .legacy-wrap li {
            color: #1f2937;
            line-height: 1.55;
        }

        .legacy-wrap .separator {
            display: none;
        }

        .legacy-wrap .lead {
            color: var(--cg-muted) !important;
        }

        .legacy-wrap a {
            color: #0ea5e9;
            text-decoration: none;
        }

        .legacy-wrap a:hover {
            text-decoration: underline;
        }

        .legacy-wrap .bg-groc,
        .legacy-wrap .gray-bg,
        .legacy-wrap .default-bg {
            background: transparent !important;
        }

        .legacy-wrap img {
            max-width: 100%;
            height: auto;
            border-radius: var(--radius-md);
        }

        .legacy-wrap .box-style-1 {
            background: #ffffff !important;
            border: 1px solid var(--cg-border);
            border-radius: var(--radius-lg);
            padding: 1.1rem 1.1rem;
            margin-bottom: 1rem;
        }

        .legacy-wrap .btn,
        .legacy-wrap button {
            border-radius: 999px !important;
        }

        .legacy-wrap .category .box-style-1 {
            padding: 16px 18px 14px;
        }

        .legacy-wrap .category .box-style-1 img {
            max-height: 160px;
            object-fit: contain;
        }

        .cg-iframe {
            width: 100%;
            border: 1px solid var(--cg-border);
            border-radius: var(--radius-xl);
            overflow: hidden;
            box-shadow: var(--cg-shadow);
            background: #fff;
        }

        footer {
            padding: 2.2rem 0 2.8rem;
            border-top: 1px solid var(--cg-border);
            color: var(--cg-muted);
            background: #f5f7fb;
        }

        footer a {
            color: #0ea5e9;
        }

        .soft-hr {
            height: 1px;
            background: var(--cg-border);
            margin: 1.6rem 0;
        }
