        :root {
            --bg: #07070D;
            --bg2: #0D0D16;
            --bg3: #12121C;
            --surface: #181824;
            --glass: rgba(255,255,255,0.03);
            --glass-border: rgba(255,255,255,0.07);
            --border: #1F1F2E;
            --text: #ECE8DC;
            --text-muted: #8886A2;
            --text-dim: #6B6882;
            --accent: #F5A623;
            --accent-dim: rgba(245,166,35,0.12);
            --violet: #7B5CFF;
            --teal: #00C4A7;
            --font-display: 'Syne', sans-serif;
            --font-body: 'Fraunces', serif;
            --ease: cubic-bezier(0.16, 1, 0.3, 1);
        }

        *, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }

        html { scroll-behavior: smooth; }

        :focus-visible {
            outline: 2px solid var(--accent);
            outline-offset: 3px;
        }

        @media (prefers-reduced-motion: reduce) {
            html { scroll-behavior: auto; }
            * { animation: none !important; transition: none !important; }
        }

        body {
            background: var(--bg);
            color: var(--text);
            font-family: var(--font-body);
            font-size: 16px;
            line-height: 1.7;
            overflow-x: hidden;
        }

        /* ── GRAIN OVERLAY ── */
        body::after {
            content: '';
            position: fixed;
            inset: -50%;
            z-index: 9998;
            pointer-events: none;
            opacity: 0.04;
            width: 300%;
            height: 300%;
            background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
            background-repeat: repeat;
            background-size: 256px;
            animation: grainShift 6s steps(8) infinite;
        }

        @keyframes grainShift {
            0%, 100% { transform: translate(0, 0); }
            10% { transform: translate(-5%, -10%); }
            30% { transform: translate(7%, -20%); }
            50% { transform: translate(-10%, 10%); }
            70% { transform: translate(5%, 15%); }
            90% { transform: translate(-8%, 5%); }
        }

        /* ── ANIMATED GRADIENT PROPERTIES ── */
        @property --gradient-angle {
            syntax: "<angle>";
            initial-value: 0deg;
            inherits: false;
        }

        @keyframes gradientSpin {
            to { --gradient-angle: 360deg; }
        }

        /* ── SCROLLBAR ── */
        ::-webkit-scrollbar { width: 3px; }
        ::-webkit-scrollbar-track { background: var(--bg); }
        ::-webkit-scrollbar-thumb { background: var(--accent); border-radius: 2px; }

        /* ── BG GRADIENTS ── */
        .bg-gradient-static {
            position: fixed;
            inset: 0;
            z-index: -1;
            pointer-events: none;
            background:
                radial-gradient(circle at 80% -10%, rgba(123, 92, 255, 0.15) 0%, transparent 40%),
                radial-gradient(circle at 20% 110%, rgba(0, 212, 255, 0.15) 0%, transparent 40%),
                var(--bg);
        }

        /* ── NAV ── */
        nav {
            position: fixed;
            top: 0;
            left: 0;
            right: 0;
            z-index: 1000;
            display: flex;
            align-items: center;
            justify-content: space-between;
            padding: 1.25rem 2.5rem;
            transition: all 0.4s var(--ease);
        }

        nav.scrolled {
            background: rgba(7, 7, 13, 0.88);
            backdrop-filter: blur(12px);
            -webkit-backdrop-filter: blur(12px);
            border-bottom: 1px solid var(--glass-border);
        }

        .nav-logo {
            font-family: var(--font-display);
            font-weight: 800;
            font-size: 1rem;
            letter-spacing: 0.06em;
            color: var(--text);
            text-decoration: none;
            display: flex;
            align-items: center;
            gap: 0.6rem;
        }

        .nav-dot {
            width: 6px;
            height: 6px;
            background: var(--accent);
            border-radius: 50%;
            animation: navPulse 2.5s ease-in-out infinite;
        }

        @keyframes navPulse {
            0%, 100% { box-shadow: 0 0 0 0 rgba(245,166,35,0.5); }
            50% { box-shadow: 0 0 0 7px rgba(245,166,35,0); }
        }

        .nav-links {
            display: flex;
            gap: 2rem;
            list-style: none;
            align-items: center;
        }

        .nav-links a {
            font-family: var(--font-display);
            font-size: 0.7rem;
            font-weight: 500;
            letter-spacing: 0.14em;
            text-transform: uppercase;
            color: var(--text-muted);
            text-decoration: none;
            transition: color 0.2s;
            position: relative;
        }

        .nav-links a::after {
            content: '';
            position: absolute;
            left: 0;
            bottom: -3px;
            width: 0;
            height: 1px;
            background: var(--accent);
            transition: width 0.25s var(--ease);
        }

        .nav-links a:hover { color: var(--text); }
        .nav-links a:hover::after { width: 100%; }

        .nav-cta {
            color: var(--bg) !important;
            background: var(--accent);
            padding: 0.6rem 1.2rem;
            min-height: 44px;
            display: inline-flex;
            align-items: center;
            font-weight: 700 !important;
            transition: box-shadow 0.2s, transform 0.2s !important;
        }

        .nav-cta:hover {
            box-shadow: 0 4px 20px rgba(245,166,35,0.4) !important;
            transform: translateY(-1px);
        }

        .nav-cta::after { display: none !important; }

        /* ── MOBILE MENU ── */
        .menu-toggle {
            display: none;
            background: none;
            border: none;
            cursor: pointer;
            width: 44px;
            height: 44px;
            position: relative;
            z-index: 1100;
            padding: 12px 8px;
        }

        .menu-toggle span {
            display: block;
            width: 100%;
            height: 2px;
            background: var(--text);
            border-radius: 1px;
            position: absolute;
            left: 0;
            transition: transform 0.3s var(--ease), opacity 0.2s;
        }

        .menu-toggle span:nth-child(1) { top: 12px; }
        .menu-toggle span:nth-child(2) { top: 21px; }
        .menu-toggle span:nth-child(3) { top: 30px; }

        .menu-toggle.open span:nth-child(1) { transform: translateY(9px) rotate(45deg); }
        .menu-toggle.open span:nth-child(2) { opacity: 0; }
        .menu-toggle.open span:nth-child(3) { transform: translateY(-9px) rotate(-45deg); }

        .mobile-overlay {
            display: none;
            position: fixed;
            inset: 0;
            z-index: 1050;
            background: rgba(7,7,13,0.96);
            flex-direction: column;
            justify-content: center;
            align-items: center;
            gap: 2rem;
        }

        .mobile-overlay.open { display: flex; }

        .mobile-close {
            position: absolute;
            top: 1.25rem;
            right: 1.25rem;
            background: none;
            border: none;
            cursor: pointer;
            width: 44px;
            height: 44px;
            display: flex;
            align-items: center;
            justify-content: center;
        }

        .mobile-close::before, .mobile-close::after {
            content: '';
            position: absolute;
            width: 22px;
            height: 2px;
            background: var(--text);
            border-radius: 1px;
        }

        .mobile-close::before { transform: rotate(45deg); }
        .mobile-close::after { transform: rotate(-45deg); }
        .mobile-close:hover::before, .mobile-close:hover::after { background: var(--accent); }

        .mobile-overlay a {
            font-family: var(--font-display);
            font-size: 1.1rem;
            font-weight: 600;
            letter-spacing: 0.1em;
            text-transform: uppercase;
            color: var(--text-muted);
            text-decoration: none;
            transition: color 0.2s;
        }

        .mobile-overlay a:hover { color: var(--accent); }

        .mobile-overlay .mob-cta {
            color: var(--bg);
            background: var(--accent);
            padding: 0.7rem 2rem;
            font-weight: 700;
            margin-top: 1rem;
        }

        /* ── HERO ── */
        main { position: relative; z-index: 1; }
        section { scroll-margin-top: 90px; }

        .hero {
            min-height: calc(100vh - 5rem);
            display: flex;
            align-items: center;
            padding: 6rem 2.5rem 3rem;
            position: relative;
        }

        .hero-grid {
            position: absolute;
            inset: 0;
            overflow: hidden;
            background-image:
                linear-gradient(rgba(245,166,35,0.03) 1px, transparent 1px),
                linear-gradient(90deg, rgba(245,166,35,0.03) 1px, transparent 1px);
            background-size: 72px 72px;
            mask-image: radial-gradient(ellipse 65% 65% at 65% 35%, black 0%, transparent 100%);
            -webkit-mask-image: radial-gradient(ellipse 65% 65% at 65% 35%, black 0%, transparent 100%);
            pointer-events: none;
        }

        .hero-content {
            position: relative;
            max-width: 1100px;
            margin: 0 auto;
            width: 100%;
            display: grid;
            grid-template-columns: 1.2fr 0.8fr;
            gap: 3rem;
            align-items: center;
            min-height: 0;
        }

        .hero-left { position: relative; z-index: 2; }

        .hero-badge {
            display: inline-flex;
            align-items: center;
            gap: 0.5rem;
            background: rgba(0, 196, 167, 0.07);
            border: 1px solid rgba(0, 196, 167, 0.22);
            padding: 0.35rem 1rem;
            border-radius: 100px;
            font-family: var(--font-display);
            font-size: 0.67rem;
            font-weight: 700;
            letter-spacing: 0.15em;
            text-transform: uppercase;
            color: var(--teal);
            margin-bottom: 2rem;
            width: fit-content;
        }

        .hero-badge::before {
            content: '';
            width: 6px;
            height: 6px;
            background: var(--teal);
            border-radius: 50%;
            animation: tealPulse 2s ease-in-out infinite;
        }

        @keyframes tealPulse {
            0%, 100% { box-shadow: 0 0 0 0 rgba(0,196,167,0.5); }
            50% { box-shadow: 0 0 0 5px rgba(0,196,167,0); }
        }

        .hero-name {
            font-family: var(--font-display);
            font-size: clamp(3.2rem, 7vw, 6.5rem);
            font-weight: 800;
            line-height: 0.9;
            letter-spacing: -0.03em;
            margin-bottom: 1.25rem;
            background: linear-gradient(var(--gradient-angle), var(--accent), #F5D89A, #FFFAF0, #F5D89A, var(--accent));
            -webkit-background-clip: text;
            -webkit-text-fill-color: transparent;
            background-clip: text;
            animation: gradientSpin 6s linear infinite;
            color: var(--accent);
        }

        .hero-tagline {
            font-family: var(--font-body);
            font-size: clamp(1.1rem, 2.5vw, 1.4rem);
            font-weight: 300;
            color: var(--text-muted);
            margin-bottom: 1.5rem;
            height: 2.2em;
        }

        .typewriter {
            color: var(--text);
            font-style: italic;
            border-right: 2px solid var(--accent);
            animation: blink 0.75s step-end infinite;
            display: inline-block;
            min-width: 18ch;
        }

        @keyframes blink {
            0%, 100% { border-color: var(--accent); }
            50% { border-color: transparent; }
        }

        .hero-bio {
            font-size: 1.05rem;
            font-weight: 300;
            color: var(--text-muted);
            max-width: 600px;
            line-height: 1.9;
            margin-bottom: 2rem;
        }

        .hero-bio strong { color: var(--text); font-weight: 400; }
        .hero-bio a { color: inherit; text-decoration: underline; text-decoration-color: rgba(245,166,35,0.55); text-underline-offset: 0.16em; }
        .hero-purpose {
            color: var(--teal);
            font-family: var(--font-display);
            font-size: clamp(0.78rem, 1.6vw, 0.95rem);
            font-weight: 700;
            letter-spacing: 0.08em;
            margin: -0.7rem 0 1.5rem;
            text-transform: uppercase;
        }

        .hero-actions { display: flex; gap: 1rem; flex-wrap: wrap; }

        .btn-primary {
            font-family: var(--font-display);
            font-size: 0.75rem;
            font-weight: 700;
            letter-spacing: 0.12em;
            text-transform: uppercase;
            color: var(--bg);
            background: var(--accent);
            border: none;
            padding: 1rem 2.2rem;
            cursor: pointer;
            text-decoration: none;
            display: inline-flex;
            align-items: center;
            gap: 0.5rem;
            transition: transform 0.25s var(--ease), box-shadow 0.25s;
            -webkit-clip-path: polygon(0 0, calc(100% - 10px) 0, 100% 10px, 100% 100%, 10px 100%, 0 calc(100% - 10px));
            clip-path: polygon(0 0, calc(100% - 10px) 0, 100% 10px, 100% 100%, 10px 100%, 0 calc(100% - 10px));
        }

        .btn-primary:hover { transform: translateY(-3px); box-shadow: 0 14px 40px rgba(245,166,35,0.35); }

        .btn-ghost {
            font-family: var(--font-display);
            font-size: 0.75rem;
            font-weight: 600;
            letter-spacing: 0.12em;
            text-transform: uppercase;
            color: var(--text-muted);
            background: transparent;
            border: 1px solid var(--border);
            padding: 1rem 1.75rem;
            cursor: pointer;
            text-decoration: none;
            display: inline-flex;
            align-items: center;
            gap: 0.4rem;
            transition: color 0.2s, border-color 0.2s, background 0.2s;
        }

        .btn-ghost:hover { color: var(--text); border-color: var(--glass-border); background: var(--glass); }

        /* ── HERO PHOTO ── */
        .hero-photo-wrap {
            position: relative;
            z-index: 2;
            display: flex;
            align-items: center;
            justify-content: center;
            overflow: visible;
            min-height: 0;
        }

        .hero-photo {
            width: 100%;
            max-width: 360px;
            height: auto;
            border: 2px solid var(--border);
            border-radius: 6px;
            transition: border-color 0.3s;
            display: block;
        }

        .hero-photo:hover { border-color: var(--accent); }

        .hero-photo-accent {
            display: none;
        }

        .hero-scroll {
            position: absolute;
            bottom: 2.5rem;
            right: 2.5rem;
            display: flex;
            align-items: center;
            gap: 0.75rem;
        }

        .hero-scroll span {
            font-family: var(--font-display);
            font-size: 0.58rem;
            letter-spacing: 0.22em;
            text-transform: uppercase;
            color: var(--text-dim);
            writing-mode: vertical-rl;
        }

        .scroll-line {
            width: 1px;
            height: 52px;
            background: linear-gradient(to bottom, transparent, var(--accent));
            animation: lineDrop 2.2s ease-in-out infinite;
        }

        @keyframes lineDrop {
            0%, 100% { opacity: 0.25; transform: scaleY(0.5) translateY(-10px); }
            50% { opacity: 1; transform: scaleY(1) translateY(0); }
        }

        /* ── MARQUEE ── */
        .marquee {
            overflow: hidden;
            white-space: nowrap;
            border-top: 1px solid var(--border);
            border-bottom: 1px solid var(--border);
            padding: 1.5rem 0;
            background: var(--bg2);
        }

        .marquee-track {
            display: inline-flex;
            gap: 3rem;
            animation: marquee 25s linear infinite;
            font-family: var(--font-display);
            font-size: 0.85rem;
            font-weight: 500;
            letter-spacing: 0.1em;
            text-transform: uppercase;
            color: var(--text-dim);
        }

        .marquee-track span { display: inline-flex; gap: 3rem; }

        @keyframes marquee {
            0% { transform: translateX(0); }
            100% { transform: translateX(-50%); }
        }

        /* ── BENTO METRICS ── */
        .bento-section { padding: 2.5rem 2.5rem 1.5rem; background: var(--bg); }

        .bento {
            display: grid;
            grid-template-columns: repeat(5, 1fr);
            gap: 1px;
            background: var(--border);
            border: 1px solid var(--border);
            border-radius: 0;
            max-width: 1100px;
            margin: 0 auto;
        }

        .bento-item {
            background: var(--bg2);
            padding: 2.75rem 1.25rem;
            text-align: center;
            position: relative;
            overflow: hidden;
            transition: background 0.3s var(--ease);
        }

        .bento-item::after {
            content: '';
            position: absolute;
            bottom: 0;
            left: 0;
            right: 0;
            height: 2px;
            background: linear-gradient(90deg, transparent, var(--accent), transparent);
            transform: scaleX(0);
            transition: transform 0.4s var(--ease);
        }

        .bento-item:hover::after { transform: scaleX(1); }
        .bento-item:hover { background: var(--surface); }
        .bento-item:last-child { border-right: none; }

        .bento-number {
            font-family: var(--font-display);
            font-weight: 800;
            font-size: clamp(1.4rem, 3vw, 2.4rem);
            line-height: 1;
            color: var(--accent);
            margin-bottom: 0.45rem;
            letter-spacing: -0.03em;
            font-variant-numeric: tabular-nums;
            white-space: nowrap;
        }

        .bento-label {
            font-family: var(--font-display);
            font-size: 0.6rem;
            font-weight: 500;
            letter-spacing: 0.12em;
            text-transform: uppercase;
            color: var(--text);
            line-height: 1.4;
        }

        /* ── SHARED SECTION ── */
        .sec-inner { max-width: 1000px; margin: 0 auto; }

        .sec-eye {
            font-family: var(--font-display);
            font-size: 0.65rem;
            font-weight: 700;
            letter-spacing: 0.26em;
            text-transform: uppercase;
            color: var(--accent);
            margin-bottom: 0.85rem;
            display: flex;
            align-items: center;
            gap: 0.75rem;
        }

        .sec-eye::before {
            content: '';
            width: 28px;
            height: 1px;
            background: var(--accent);
            display: block;
        }

        .sec-title {
            font-family: var(--font-display);
            font-weight: 800;
            font-size: clamp(2.2rem, 5vw, 2.8rem);
            letter-spacing: -0.025em;
            line-height: 1;
            color: var(--text);
            margin-bottom: 2.5rem;
        }

        /* ── ABOUT ── */
        .about-section { padding: 2rem 2.5rem 2.5rem; background: var(--bg); }

        .about-layout {
            display: grid;
            grid-template-columns: 1.15fr 0.85fr;
            gap: 5rem;
            align-items: start;
        }

        .about-text p {
            font-size: 1.05rem;
            font-weight: 300;
            color: var(--text-muted);
            line-height: 1.95;
            margin-bottom: 1.5rem;
        }

        .about-text p:last-child { margin-bottom: 0; }
        .about-text strong { color: var(--text); font-weight: 400; }
        .about-text em { color: var(--accent); font-style: italic; }
        .about-text a { color: var(--accent); text-decoration: underline; text-decoration-color: rgba(245,166,35,0.35); }

        .about-cards { display: flex; flex-direction: column; gap: 1px; }

        .about-card {
            background: var(--bg3);
            border: 1px solid var(--border);
            padding: 1.3rem 1.6rem;
            transition: background 0.3s, border-color 0.3s;
            position: relative;
            overflow: hidden;
        }

        .about-card::before {
            content: '';
            position: absolute;
            left: 0;
            top: 0;
            bottom: 0;
            width: 2px;
            background: var(--accent);
            transform: scaleY(0);
            transform-origin: bottom;
            transition: transform 0.35s var(--ease);
        }

        .about-card:hover { background: var(--surface); border-color: var(--glass-border); }
        .about-card:hover::before { transform: scaleY(1); }

        .about-card-lbl {
            font-family: var(--font-display);
            font-size: 0.6rem;
            font-weight: 700;
            letter-spacing: 0.2em;
            text-transform: uppercase;
            color: var(--text-dim);
            margin-bottom: 0.3rem;
        }

        .about-card-val {
            font-family: var(--font-display);
            font-size: 0.86rem;
            font-weight: 500;
            color: var(--text);
            line-height: 1.5;
        }

        .about-card-val a { color: var(--accent); text-decoration: none; transition: opacity 0.2s; }
        .about-card-val a:hover { opacity: 0.75; }

        /* ── EXPERIENCE ── */
        .experience { padding: 2.5rem 2.5rem; background: var(--bg2); }

        .tab-header {
            display: flex;
            align-items: center;
            gap: 2rem;
            margin-bottom: 2rem;
        }

        .tab-nav {
            display: flex;
            background: var(--bg3);
            border: 1px solid var(--border);
            border-radius: 3px;
            overflow: hidden;
            width: fit-content;
        }

        .tab-btn {
            font-family: var(--font-display);
            font-size: 0.7rem;
            font-weight: 700;
            letter-spacing: 0.14em;
            text-transform: uppercase;
            color: var(--text-muted);
            background: transparent;
            border: none;
            padding: 0.9rem 2rem;
            cursor: pointer;
            transition: color 0.2s, background 0.2s;
            border-right: 1px solid var(--border);
        }

        .tab-btn:last-child { border-right: none; }
        .tab-btn.active { color: var(--bg); background: var(--accent); }
        .tab-btn:not(.active):hover { color: var(--text); background: var(--surface); }

        .tab-icon-desktop {
            display: flex;
            align-items: center;
            justify-content: center;
        }

        .tab-icon-desktop svg { width: 80px; height: 80px; }
        .tab-icon-desktop .tab-icon-svg { display: none; }
        .tab-icon-desktop .tab-icon-svg.active { display: block; }

        .tab-icon-mobile {
            display: none;
            justify-content: center;
            margin-bottom: 1.5rem;
        }

        .tab-icon-mobile svg { width: 100px; height: 100px; }
        .tab-icon-mobile .tab-icon-svg { display: none; }
        .tab-icon-mobile .tab-icon-svg.active { display: block; }

        .tab-panel { display: none; }
        .tab-panel.active { display: block; animation: panelIn 0.38s var(--ease); }

        @keyframes panelIn {
            from { opacity: 0; transform: translateY(10px); }
            to { opacity: 1; transform: translateY(0); }
        }

        .panel-summary {
            font-size: 1.05rem;
            font-weight: 300;
            font-style: italic;
            color: var(--text-muted);
            line-height: 1.9;
            border-left: 2px solid var(--accent);
            padding-left: 1.5rem;
            margin-bottom: 1.75rem;
            max-width: 740px;
        }

        .block-label {
            font-family: var(--font-display);
            font-size: 0.62rem;
            font-weight: 700;
            letter-spacing: 0.22em;
            text-transform: uppercase;
            color: var(--teal);
            margin-bottom: 1.75rem;
            padding-bottom: 0.6rem;
            border-bottom: 1px solid var(--border);
        }

        /* ── TIMELINE & JOB CARDS ── */
        .timeline {
            position: relative;
            padding-left: 2.5rem;
        }

        .timeline::before {
            content: '';
            position: absolute;
            left: 7px;
            top: 8px;
            bottom: 8px;
            width: 1px;
            background: linear-gradient(to bottom, var(--accent), var(--border));
        }

        .job {
            position: relative;
            margin-bottom: 1.5rem;
            background: var(--bg3);
            border: 1px solid var(--border);
            border-radius: 6px;
            padding: 1.5rem;
            transition: border-color 0.3s, background 0.3s;
        }

        .job:last-of-type { margin-bottom: 0; }

        .job:hover { border-color: rgba(245,166,35,0.3); background: var(--surface); }

        .job::before {
            content: '';
            position: absolute;
            left: -2.5rem;
            top: 1.6rem;
            width: 15px;
            height: 15px;
            border-radius: 50%;
            background: var(--bg);
            border: 2px solid var(--accent);
            z-index: 1;
        }

        .job::after {
            content: '';
            position: absolute;
            left: -1.25rem;
            top: 2.1rem;
            width: 1.25rem;
            height: 1px;
            background: var(--border);
        }

        .job-hdr {
            display: flex;
            align-items: center;
            gap: 0.85rem;
            margin-bottom: 1rem;
        }

        .job-logo {
            width: 44px;
            height: 44px;
            object-fit: contain;
            border-radius: 5px;
            flex-shrink: 0;
        }

        .job-hdr-text {
            flex: 1;
            min-width: 0;
        }

        .job-co {
            font-family: var(--font-display);
            font-weight: 700;
            font-size: 1.1rem;
            color: var(--accent);
            letter-spacing: -0.01em;
            margin-bottom: 0.1rem;
        }

        .job-title {
            font-family: var(--font-display);
            font-weight: 600;
            font-size: 0.88rem;
            color: var(--text);
            letter-spacing: -0.01em;
        }

        .job-meta {
            font-family: var(--font-display);
            font-size: 0.62rem;
            font-weight: 500;
            letter-spacing: 0.08em;
            text-transform: uppercase;
            color: var(--text-dim);
            margin-left: auto;
            white-space: nowrap;
            flex-shrink: 0;
        }

        .bullets { list-style: none; display: flex; flex-direction: column; gap: 0.45rem; }

        .bullets li {
            font-size: 0.88rem;
            font-weight: 300;
            color: var(--text-muted);
            line-height: 1.7;
            padding-left: 1.1rem;
            position: relative;
        }

        .bullets li::before {
            content: '';
            position: absolute;
            left: 0;
            top: 0.55em;
            width: 4px;
            height: 4px;
            border-radius: 50%;
            background: var(--accent);
        }

        .hl { color: var(--text); font-weight: 400; }

        /* ── PER-TAB SKILLS ── */
        .tab-skills {
            margin-top: 2.5rem;
            padding-top: 2rem;
            border-top: 1px solid var(--border);
        }

        .skills-3 { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1px; }

        .sk-card {
            background: var(--bg3);
            border: 1px solid var(--border);
            padding: 1.75rem 1.5rem;
            transition: background 0.3s, transform 0.25s var(--ease);
            position: relative;
            overflow: hidden;
        }

        .sk-card::after {
            content: '';
            position: absolute;
            top: 0;
            left: 0;
            right: 0;
            height: 1px;
            background: linear-gradient(90deg, transparent, var(--accent), transparent);
            transform: scaleX(0);
            transition: transform 0.35s var(--ease);
        }

        .sk-card:hover { background: var(--surface); transform: translateY(-3px); }
        .sk-card:hover::after { transform: scaleX(1); }

        .sk-title {
            font-family: var(--font-display);
            font-size: 0.63rem;
            font-weight: 700;
            letter-spacing: 0.2em;
            text-transform: uppercase;
            color: var(--accent);
            margin-bottom: 0.8rem;
        }

        .sk-items {
            font-size: 0.88rem;
            font-weight: 300;
            color: var(--text-muted);
            line-height: 1.85;
        }

        /* ── WORKS ── */
        .works { padding: 2.5rem 2.5rem; background: var(--bg); }

        .works-group { margin-bottom: 2.5rem; }
        .works-group:last-child { margin-bottom: 0; }
        .works-hub-link { margin: -1rem 0 2rem; }
        .works-hub-link a { display: inline-flex; min-height: 44px; align-items: center; gap: .45rem; color: var(--accent); font: 600 .78rem/1.4 var(--font-display); text-decoration: none; }
        .works-hub-link a:hover { color: var(--text); }
        .work-card-links { display: flex; flex-wrap: wrap; align-items: center; gap: .75rem 1rem; margin-top: auto; }

        .works-grid {
            display: grid;
            grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
            gap: 1px;
            background: var(--border);
            border: 1px solid var(--border);
        }

        .work-card {
            background: var(--bg3);
            padding: 1.75rem;
            position: relative;
            overflow: hidden;
            transition: background 0.3s;
            display: flex;
            flex-direction: column;
            gap: 0.75rem;
        }

        .work-card::before {
            content: '';
            position: absolute;
            left: 0;
            top: 0;
            bottom: 0;
            width: 2px;
            background: var(--accent);
            transform: scaleY(0);
            transform-origin: bottom;
            transition: transform 0.35s var(--ease);
        }

        .work-card:hover { background: var(--surface); }
        .work-card:hover::before { transform: scaleY(1); }

        .work-illustration { display: flex; justify-content: center; padding: 1rem 0; }
        .work-illustration svg { width: 100%; max-width: 180px; height: auto; }

        .work-type {
            font-family: var(--font-display);
            font-size: 0.58rem;
            font-weight: 700;
            letter-spacing: 0.2em;
            text-transform: uppercase;
            color: var(--text-dim);
        }

        .work-title {
            font-family: var(--font-display);
            font-weight: 700;
            font-size: 1rem;
            color: var(--text);
            letter-spacing: -0.01em;
            line-height: 1.3;
        }

        .work-desc {
            font-size: 0.88rem;
            font-weight: 300;
            color: var(--text-muted);
            line-height: 1.7;
            flex: 1;
        }

        .work-link {
            font-family: var(--font-display);
            font-size: 0.65rem;
            font-weight: 600;
            letter-spacing: 0.1em;
            text-transform: uppercase;
            color: var(--accent);
            text-decoration: none;
            display: inline-flex;
            align-items: center;
            gap: 0.35rem;
            margin-top: 0.25rem;
            transition: opacity 0.2s;
        }

        .work-stack {
            display: flex;
            gap: 0.4rem;
            flex-wrap: wrap;
            margin-top: 0.25rem;
        }

        .work-stack-tag {
            font-family: var(--font-display);
            font-size: 0.55rem;
            font-weight: 600;
            letter-spacing: 0.08em;
            text-transform: uppercase;
            color: var(--teal);
            background: rgba(0, 196, 167, 0.08);
            border: 1px solid rgba(0, 196, 167, 0.18);
            padding: 0.2rem 0.55rem;
            border-radius: 2px;
        }

        .work-link:hover { opacity: 0.7; }

        .resources-row {
            display: flex;
            flex-direction: column;
            gap: 1px;
            background: var(--border);
            border: 1px solid var(--border);
        }

        .resource-card {
            background: var(--bg3);
            padding: 1rem 1.5rem;
            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: 1.5rem;
            transition: background 0.3s;
            position: relative;
            overflow: hidden;
        }

        .resource-card::before {
            content: '';
            position: absolute;
            left: 0;
            top: 0;
            bottom: 0;
            width: 2px;
            background: var(--teal);
            transform: scaleY(0);
            transform-origin: bottom;
            transition: transform 0.35s var(--ease);
        }

        .resource-card:hover { background: var(--surface); }
        .resource-card:hover::before { transform: scaleY(1); }

        .resource-left { display: flex; align-items: center; gap: 1.25rem; }

        .resource-type {
            font-family: var(--font-display);
            font-size: 0.58rem;
            font-weight: 700;
            letter-spacing: 0.18em;
            text-transform: uppercase;
            color: var(--teal);
            min-width: 68px;
        }

        .resource-title {
            font-family: var(--font-display);
            font-size: 0.88rem;
            font-weight: 600;
            color: var(--text);
        }

        .resource-desc {
            font-size: 0.8rem;
            font-weight: 300;
            color: var(--text-muted);
        }

        .resource-action {
            font-family: var(--font-display);
            font-size: 0.62rem;
            font-weight: 700;
            letter-spacing: 0.1em;
            text-transform: uppercase;
            color: var(--teal);
            white-space: nowrap;
            flex-shrink: 0;
            text-decoration: none;
            transition: opacity 0.2s;
            min-height: 44px;
            display: inline-flex;
            align-items: center;
        }

        .resource-action:hover { opacity: 0.7; }

        /* ── EDUCATION ── */
        .education { padding: 2.5rem 2.5rem; background: var(--bg); }

        .edu-card {
            background: var(--bg3);
            border: 1px solid var(--border);
            padding: 3rem;
            display: grid;
            grid-template-columns: 1fr auto;
            gap: 2rem;
            align-items: start;
            position: relative;
            overflow: hidden;
            transition: background 0.3s;
        }

        .edu-card::before {
            content: '';
            position: absolute;
            left: 0;
            top: 0;
            bottom: 0;
            width: 3px;
            background: linear-gradient(to bottom, var(--accent), var(--teal));
        }

        .edu-card:hover { background: var(--surface); }

        .edu-school {
            font-family: var(--font-display);
            font-weight: 800;
            font-size: 1.4rem;
            color: var(--text);
            letter-spacing: -0.015em;
            margin-bottom: 0.35rem;
        }

        .edu-degree {
            font-family: var(--font-body);
            font-size: 0.95rem;
            font-weight: 300;
            font-style: italic;
            color: var(--text-muted);
            margin-bottom: 1rem;
        }

        .edu-tags { display: flex; gap: 0.5rem; flex-wrap: wrap; }

        .edu-tag {
            font-family: var(--font-display);
            font-size: 0.62rem;
            font-weight: 600;
            letter-spacing: 0.1em;
            text-transform: uppercase;
            color: var(--accent);
            background: var(--accent-dim);
            border: 1px solid rgba(245,166,35,0.18);
            padding: 0.3rem 0.85rem;
        }

        .edu-details { margin-top: 1.25rem; display: flex; flex-direction: column; gap: 0.6rem; }

        .edu-detail-item {
            font-size: 0.88rem;
            font-weight: 300;
            color: var(--text-muted);
            line-height: 1.7;
        }

        .edu-detail-lbl {
            font-family: var(--font-display);
            font-weight: 600;
            font-size: 0.78rem;
            color: var(--text);
            letter-spacing: 0.02em;
        }

        .edu-aside { text-align: right; }

        .edu-year {
            font-family: var(--font-display);
            font-weight: 800;
            font-size: 2.2rem;
            color: var(--text-dim);
            letter-spacing: -0.03em;
            line-height: 1;
            margin-bottom: 0.3rem;
        }

        .edu-loc {
            font-family: var(--font-display);
            font-size: 0.62rem;
            letter-spacing: 0.1em;
            text-transform: uppercase;
            color: var(--text-dim);
        }

        /* ── FOOTER ── */
        footer {
            background: var(--bg2);
            border-top: 1px solid var(--border);
            padding: 3.5rem 2.5rem 2.5rem;
            position: relative;
            z-index: 1;
        }

        .footer-top {
            max-width: 1000px;
            margin: 0 auto;
            display: grid;
            grid-template-columns: 1fr auto;
            gap: 3rem;
            align-items: end;
            padding-bottom: 3rem;
            border-bottom: 1px solid var(--border);
            margin-bottom: 2rem;
        }

        .footer-name {
            font-family: var(--font-display);
            font-weight: 800;
            font-size: 2rem;
            letter-spacing: -0.02em;
            color: var(--text);
            margin-bottom: 0.3rem;
        }

        .footer-tagline {
            font-family: var(--font-body);
            font-size: 1rem;
            font-weight: 300;
            font-style: italic;
            color: var(--text-muted);
        }

        .footer-links {
            display: flex;
            flex-direction: column;
            gap: 0.75rem;
            align-items: flex-end;
        }

        .footer-links a {
            font-family: var(--font-display);
            font-size: 0.7rem;
            font-weight: 600;
            letter-spacing: 0.12em;
            text-transform: uppercase;
            color: var(--text-muted);
            text-decoration: none;
            transition: color 0.2s;
        }

        .footer-links a:hover { color: var(--accent); }

        .footer-bottom {
            max-width: 1000px;
            margin: 0 auto;
            display: flex;
            justify-content: space-between;
            align-items: center;
        }

        .footer-copy {
            font-family: var(--font-display);
            font-size: 0.62rem;
            letter-spacing: 0.1em;
            color: var(--text-dim);
        }

        /* ── CURSOR ── */
        .cursor-dot {
            position: fixed;
            width: 6px;
            height: 6px;
            background: var(--accent);
            border-radius: 50%;
            pointer-events: none;
            z-index: 9999;
            transform: translate(-50%, -50%);
            display: none;
        }

        .cursor-glow {
            position: fixed;
            width: 500px;
            height: 500px;
            background: radial-gradient(circle, rgba(245,166,35,0.12) 0%, rgba(245,166,35,0) 70%);
            border-radius: 50%;
            pointer-events: none;
            z-index: 9999;
            transform: translate(-50%, -50%);
            display: none;
            filter: blur(40px);
            will-change: left, top;
        }

        @media (hover: hover) {
            .cursor-dot { display: block; }
            .cursor-glow { display: block; }
        }

        /* ── MOBILE PHOTO ── */
        .mobile-photo-section {
            display: none;
            padding: 0 1.25rem 2rem;
            background: var(--bg);
            text-align: center;
        }

        .mobile-photo {
            width: 100%;
            max-width: 280px;
            height: auto;
            border: 2px solid var(--border);
            border-radius: 6px;
        }

        /* ── SCROLL REVEAL ── */
        .reveal {
            opacity: 0;
            transform: translateY(24px);
            transition: opacity 0.8s var(--ease), transform 0.8s var(--ease);
        }

        .reveal.is-visible { opacity: 1; transform: translateY(0); }

        /* ── RESPONSIVE ── */
        @media (max-width: 900px) {
            .bento { grid-template-columns: repeat(3, 1fr); }
            .bento-item:nth-child(3) { border-right: none; }
            .hero-content { grid-template-columns: 1fr 0.6fr; gap: 1.5rem; }
            .hero-photo { max-width: 220px; }
            .hero-photo-accent { max-width: 222px; }
            .about-layout { grid-template-columns: 1fr; gap: 3rem; }
            .skills-3 { grid-template-columns: 1fr; }
            .footer-top { grid-template-columns: 1fr; }
            .footer-links { align-items: flex-start; }
            .edu-card { grid-template-columns: 1fr; }
            .edu-aside { text-align: left; }
        }

        @media (max-width: 640px) {
            .menu-toggle { display: block; }
            nav { padding: 1rem 1.25rem; }
            .nav-links { display: none; }
            .hero { padding: 5rem 1.25rem 2rem; }
            .hero-content { grid-template-columns: 1fr; gap: 0; }
            .hero-photo-wrap { display: none; }
            .mobile-photo-section { display: block; }
            .bento { grid-template-columns: repeat(2, 1fr); }
            .bento-item { padding: 1.75rem 0.75rem; }
            .bento-item:nth-child(3) { border-right: 1px solid var(--border); }
            .bento-item:nth-child(2n) { border-right: none; }
            .bento-item:last-child:nth-child(odd) { grid-column: 1 / -1; border-right: none; }
            .hero-scroll { display: none; }
            .bento-section, .about-section, .experience, .works, .education { padding: 2.5rem 1.25rem; }
            .tab-header { flex-direction: column; gap: 1rem; }
            .tab-nav { width: 100%; }
            .tab-btn { flex: 1; padding: 0.8rem 0.4rem; font-size: 0.63rem; }
            .tab-icon-desktop { display: none; }
            .tab-icon-mobile { display: flex; }
            .job-hdr { flex-wrap: wrap; gap: 0.5rem; }
            .job-logo { width: 36px; height: 36px; }
            .job-hdr-text { flex-basis: calc(100% - 36px - 0.5rem); }
            .job-meta { width: 100%; text-align: right; margin-left: 0; margin-top: -0.25rem; }
            .timeline { padding-left: 1.75rem; }
            .job::before { left: -1.75rem; width: 11px; height: 11px; top: 1.5rem; }
            .job::after { left: -0.85rem; width: 0.85rem; top: 1.85rem; }
            .timeline::before { left: 5px; }
            .hero-actions { flex-direction: column; }
            .btn-primary, .btn-ghost { width: 100%; justify-content: center; }
            .footer-bottom { flex-direction: column; gap: 0.5rem; text-align: center; }
            .works-grid { grid-template-columns: 1fr; }
            .resource-card { flex-direction: column; align-items: flex-start; gap: 0.5rem; }
            .resource-left { flex-direction: column; align-items: flex-start; gap: 0.3rem; }
            .resource-type { min-width: unset; }
            footer { padding: 2.5rem 1.25rem 1.5rem; }
        }

        @media (prefers-reduced-motion: reduce), (max-width: 640px) {
            body::after { display: none; }
        }
