:root {
            --accent: #0077b5; /* LinkedIn Blue */
            --accent-glow: rgba(0, 119, 181, 0.2);
            --card-bg: rgba(255, 255, 255, 0.02);
            --card-border: rgba(255, 255, 255, 0.08);
            --text-primary: #f1f1f1;
            --text-secondary: #a3a3a3;
            
            /* Framer Mesh Gradients colors */
            --mesh-a: rgba(0, 119, 181, 0.18);
            --mesh-b: rgba(139, 92, 246, 0.12);
        }

        body, html {
            margin: 0;
            padding: 0;
            height: 100%;
            width: 100%;
            background-color: #050505;
            font-family: 'DM Sans', 'Inter', sans-serif;
            overflow: hidden;
            display: flex;
            justify-content: center;
            align-items: center;
        }

        /* Ambient background glow (Framer Style) */
        .ambient-bg {
            position: absolute;
            inset: 0;
            pointer-events: none;
            z-index: 0;
            background: 
                radial-gradient(900px 500px at 20% 20%, rgba(139, 92, 246, 0.15), transparent 60%), 
                radial-gradient(800px 500px at 80% 70%, rgba(0, 119, 181, 0.12), transparent 60%), 
                radial-gradient(700px 500px at 70% 20%, rgba(244, 63, 94, 0.1), transparent 60%);
        }

        #particles-canvas {
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            z-index: 1;
            pointer-events: none;
        }

        /* Card Container with Perspective */
        .card-container {
            position: relative;
            z-index: 10;
            perspective: 900px; /* tiltPerspective */
            width: min(380px, 90%);
            display: flex;
            align-self: center;
            justify-content: center;
        }

        /* Interactive 3D Card */
        .card {
            width: 100%;
            min-height: 480px;
            position: relative;
            border-radius: 20px;
            background: var(--card-bg);
            border: 1px solid var(--card-border);
            box-sizing: border-box;
            transform-style: preserve-3d;
            will-change: transform;
            transition: transform 0.6s cubic-bezier(0.23, 1, 0.32, 1), box-shadow 0.3s ease;
            box-shadow: 0 10px 30px rgba(0, 0, 0, 0.5);
            user-select: none;
            overflow: hidden;
        }

        .card:hover {
            box-shadow: 0 30px 80px var(--accent-glow);
        }

        /* 1. Noise Overlay (Framer style SVG fractal noise) */
        .card-noise {
            position: absolute;
            inset: 0;
            border-radius: 20px;
            background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160' viewBox='0 0 160 160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix type='matrix' values='1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 .7 0'/%3E%3C/filter%3E%3Crect width='160' height='160' filter='url(%23n)' opacity='1'/%3E%3C/svg%3E");
            background-size: 160px 160px;
            background-repeat: repeat;
            opacity: 0.04;
            mix-blend-mode: overlay;
            pointer-events: none;
            z-index: 1;
        }

        /* 2. Mesh Gradient Layer */
        .card-mesh {
            position: absolute;
            inset: 0;
            border-radius: 20px;
            background-image: 
                radial-gradient(600px circle at 0% 0%, var(--mesh-a) 0%, transparent 60%),
                radial-gradient(700px circle at 100% 100%, var(--mesh-b) 0%, transparent 60%);
            opacity: 0.6;
            transition: opacity 0.3s ease;
            pointer-events: none;
            z-index: 2;
        }

        .card:hover .card-mesh {
            opacity: 1;
        }

        /* 3. Shimmer Glow Layer (tracks cursor) */
        .card-shimmer {
            position: absolute;
            inset: 0;
            border-radius: 20px;
            background-image: radial-gradient(200px circle at var(--shimmer-x, 50%) var(--shimmer-y, 50%), rgba(255, 255, 255, 0.07) 0%, transparent 65%);
            opacity: 0;
            transition: opacity 0.3s ease;
            pointer-events: none;
            mix-blend-mode: screen;
            z-index: 3;
        }

        .card:hover .card-shimmer {
            opacity: 1;
        }

        /* 4. Glare Layer */
        .card-glare {
            position: absolute;
            inset: 0;
            border-radius: 20px;
            background-image: linear-gradient(135deg, rgba(255, 255, 255, 0.08) 0%, transparent 55%);
            opacity: 0;
            transition: opacity 0.3s ease;
            pointer-events: none;
            z-index: 4;
        }

        .card:hover .card-glare {
            opacity: 1;
        }

        /* Content Wrapper */
        .card-content {
            position: relative;
            z-index: 5;
            min-height: 480px;
            padding: 28px;
            box-sizing: border-box;
            display: flex;
            flex-direction: column;
            gap: 16px;
            transform: translateZ(30px); /* 3D depth pop */
        }

        /* Tag Label and Line */
        .card-tag-wrapper {
            display: flex;
            align-items: center;
            gap: 10px;
            color: var(--accent);
            text-transform: uppercase;
            letter-spacing: 0.18em;
            font-weight: 500;
            font-size: 10px;
            word-break: break-word;
        }

        .card-tag-line {
            width: 16px;
            height: 1px;
            background: var(--accent);
            display: block;
            flex: 0 0 auto;
        }

        .card-tag {
            line-height: 1;
        }

        /* Profile Image Container */
        .card-logo-container {
            width: 130px;
            height: 130px;
            border-radius: 50%;
            background: rgba(0, 119, 181, 0.14);
            border: 1px solid rgba(0, 119, 181, 0.2);
            overflow: hidden;
            display: flex;
            align-items: center;
            justify-content: center;
            transform: translateZ(30px) scale(1);
            transition: transform 0.3s ease;
            box-sizing: border-box;
            flex: 0 0 auto;
            will-change: transform;
        }

        .card:hover .card-logo-container {
            transform: translateZ(40px) scale(1.05); /* Lifts and scales */
        }

        .card-logo-img {
            width: 100%;
            height: 100%;
            object-fit: cover;
            object-position: right center; /* Aligned to right as user requested */
            border-radius: 50%;
            display: block;
        }

        /* Typography */
        .card-title {
            margin: 0;
            white-space: pre-wrap;
            word-break: break-word;
            color: var(--text-primary);
            font-size: 22px;
            font-weight: 400;
            line-height: 1.2;
            transform: translateZ(30px);
            transition: transform 0.3s ease;
            will-change: transform;
        }

        .card:hover .card-title {
            transform: translateZ(40px);
        }

        .card-desc {
            margin: 0;
            color: var(--text-secondary);
            font-size: 13.5px;
            font-weight: 300;
            line-height: 1.65;
            flex: 1;
            word-break: break-word;
        }

        .card-email {
            color: var(--accent);
            text-decoration: none;
            font-size: 13.5px;
            font-weight: 500;
            margin-top: -8px; /* Slightly closer to description */
            transition: color 0.2s ease;
            align-self: flex-start;
            transform: translateZ(35px);
            position: relative;
            z-index: 10;
        }

        .card-email:hover {
            color: #ffffff;
        }

        /* Footer */
        .card-footer {
            margin-top: auto;
            border-top: 1px solid rgba(255, 255, 255, 0.07);
            padding-top: 16px;
            display: flex;
            align-items: flex-end;
            justify-content: space-between;
            gap: 16px;
        }

        .card-footer-stats {
            display: flex;
            flex-direction: column;
            gap: 6px;
            min-width: 0;
        }

        .card-stat-val {
            margin: 0;
            color: #f0eef8;
            font-size: 18px;
            font-weight: 400;
            line-height: 1.05;
            word-break: break-word;
        }

        .card-stat-lbl {
            margin: 0;
            color: rgba(240, 238, 248, 0.45);
            font-size: 10px;
            letter-spacing: 0.08em;
            text-transform: uppercase;
            font-weight: 500;
            line-height: 1;
            opacity: 0.95;
            word-break: break-word;
        }

        /* LinkedIn Interactive Button */
        .card-btn {
            width: 36px;
            height: 36px;
            border-radius: 10px;
            background: rgba(0, 119, 181, 0.15);
            border: 1px solid rgba(0, 119, 181, 0.3);
            display: flex;
            align-items: center;
            justify-content: center;
            flex: 0 0 auto;
            transform: translateZ(30px);
            transition: transform 0.3s ease, background 0.2s ease, border-color 0.2s ease;
            will-change: transform;
            box-sizing: border-box;
            cursor: pointer;
            text-decoration: none;
        }

        .card:hover .card-btn {
            transform: translateZ(40px);
            background: rgba(0, 119, 181, 0.25);
            border-color: rgba(0, 119, 181, 0.6);
        }

        .card-btn svg {
            stroke: var(--accent);
            stroke-width: 2;
            stroke-linecap: round;
            stroke-linejoin: round;
            fill: none;
            transition: transform 0.2s ease;
        }

        .card-btn:hover svg {
            transform: translateX(2px);
        }

        /* Responsive Media Queries */
        @media (max-width: 480px), (max-height: 600px) {
            body, html {
                overflow-y: auto;
                height: auto;
                min-height: 100%;
                align-items: flex-start;
                padding: 24px 0;
            }
            .card-btn {
                width: 48px;
                height: 48px;
            }
        }

/* Screen reader utility to avoid inline styles */
.sr-only {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border-width: 0;
}
