/* ── INTRO ───────────────────────────────────────────────────── */
.intro {
  position:fixed; inset:0; z-index:9000;
  background:#050805;
  display:flex; align-items:center; justify-content:center;
  overflow:hidden;
}

/* Subtle dot-grid */
.intro-grid {
  position:absolute; inset:0;
  background-image: radial-gradient(circle, rgba(34,197,94,0.15) 1px, transparent 1px);
  background-size:44px 44px;
  opacity:0;
  animation:iGridIn 1s ease 0.1s forwards;
}
@keyframes iGridIn { to { opacity:1; } }

/* Two vertical accent lines flanking content */
.intro-vline {
  position:absolute; top:0; bottom:0; width:1px;
  background:linear-gradient(to bottom, transparent 0%, var(--accent) 30%, var(--accent) 70%, transparent 100%);
  opacity:0;
  animation:iVline 0.8s ease forwards;
}
.intro-vl1 { left:calc(50% - min(220px,35vw)); animation-delay:0.4s; }
.intro-vl2 { left:calc(50% + min(220px,35vw)); animation-delay:0.55s; }
@keyframes iVline { from { opacity:0; transform:scaleY(0); } to { opacity:0.35; transform:scaleY(1); } }

/* Scanline sweep */
.intro-scanline {
  position:absolute; left:0; right:0; height:2px;
  background:linear-gradient(90deg, transparent 0%, var(--accent) 40%, var(--accent) 60%, transparent 100%);
  box-shadow:0 0 24px 4px rgba(34,197,94,0.4);
  top:-4px;
  animation:iScan 1.4s cubic-bezier(0.4,0,0.6,1) 0.3s forwards;
}
@keyframes iScan {
  0%   { top:-4px; opacity:0; }
  5%   { opacity:1; }
  100% { top:102%; opacity:0; }
}

/* Corner brackets */
.intro-corner {
  position:absolute; width:20px; height:20px;
  opacity:0; animation:iCorner 0.35s ease 0.6s forwards;
}
.intro-corner.tl { top:28px; left:28px; border-top:1px solid var(--accent); border-left:1px solid var(--accent); }
.intro-corner.tr { top:28px; right:28px; border-top:1px solid var(--accent); border-right:1px solid var(--accent); }
.intro-corner.bl { bottom:28px; left:28px; border-bottom:1px solid var(--accent); border-left:1px solid var(--accent); }
.intro-corner.br { bottom:28px; right:28px; border-bottom:1px solid var(--accent); border-right:1px solid var(--accent); }
@keyframes iCorner { from { opacity:0; transform:scale(0.3); } to { opacity:0.7; transform:scale(1); } }

/* Center content */
.intro-center {
  position:relative; z-index:2;
  display:flex; flex-direction:column; align-items:center; gap:0.6rem;
  text-align:center;
}

/* Eyebrow — types in first */
.intro-eyebrow {
  font-family:'JetBrains Mono',monospace;
  font-size:0.65rem; letter-spacing:0.28em;
  text-transform:uppercase; color:var(--accent);
  opacity:0; min-height:1em;
  animation:iFadeSlide 0.4s ease 0.5s forwards;
}
@keyframes iFadeSlide { from { opacity:0; transform:translateY(6px); } to { opacity:0.8; transform:translateY(0); } }

/* Name row with horizontal lines */
.intro-name-row {
  display:flex; align-items:center; gap:1.2rem;
  opacity:0; animation:iFadeIn .01s 0.7s forwards;
}
@keyframes iFadeIn { to { opacity:1; } }

.intro-hline {
  height:1px; width:0;
  background:linear-gradient(90deg, transparent, rgba(34,197,94,0.5));
  animation:iHline 0.5s cubic-bezier(0.16,1,0.3,1) 0.75s forwards;
}
.intro-name-row .intro-hline:last-child {
  background:linear-gradient(90deg, rgba(34,197,94,0.5), transparent);
}
@keyframes iHline { to { width:clamp(40px,8vw,80px); } }

.intro-name {
  font-family:'Space Grotesk',sans-serif;
  font-weight:700;
  font-size:clamp(1.4rem,5.5vw,4rem);
  letter-spacing:-0.04em; color:#f0f6f0;
  white-space:nowrap; margin:0;
}
@media (max-width:480px) {
  .intro-name {
    white-space:normal;
    font-size:clamp(1.6rem,8vw,2.4rem);
    text-align:center;
    word-break:break-word;
  }
  .intro-name-row { gap:0.4rem; }
  .intro-hline { display:none; }
}

/* Subtitle */
.intro-sub {
  font-family:'JetBrains Mono',monospace;
  font-size:clamp(0.6rem,1.2vw,0.72rem);
  letter-spacing:0.16em; color:rgba(34,197,94,0.55);
  text-transform:uppercase; min-height:1em;
  opacity:0;
  animation:iFadeSlide 0.4s ease 1.7s forwards;
}

/* Loading bar at the bottom */
.intro-bar-wrap {
  margin-top:1.2rem;
  width:clamp(120px,20vw,200px); height:1px;
  background:rgba(255,255,255,0.06);
  overflow:hidden; border-radius:1px;
  opacity:0; animation:iFadeIn .01s 1.75s forwards;
}
.intro-bar {
  height:100%; width:0;
  background:linear-gradient(90deg, var(--accent), rgba(134,239,172,0.6));
  box-shadow:0 0 8px var(--accent);
  animation:iBar 1s cubic-bezier(0.4,0,0.2,1) 1.8s forwards;
}
@keyframes iBar { to { width:100%; } }

/* EXIT — curtain wipe upward with a clean snap */
.intro.exit {
  animation:iWipe 0.9s cubic-bezier(0.76,0,0.24,1) forwards;
}
@keyframes iWipe {
  0%   { transform:translateY(0);     clip-path:inset(0 0 0 0); }
  100% { transform:translateY(-100%); clip-path:inset(0 0 0 0); }
}

@media (prefers-reduced-motion:reduce) { .intro { display:none !important; } }

/* ================================================================
   MUHAMMED SAFUVAN — Portfolio v3
   Design: Sharp editorial with dual-mode personality
   Dark  → Obsidian + Electric Green (hacker terminal energy)
   Light → Pure white + Ink black (editorial magazine clarity)
   Fonts: General Sans (headings) · Geist (body) · JetBrains Mono (code)
   ================================================================ */

@import url('https://fonts.googleapis.com/css2?family=Space+Grotesk:wght@300;400;500;600;700&family=Geist:wght@300;400;500&family=JetBrains+Mono:wght@400;500&display=swap');

/* ── DARK TOKENS (default) ──────────────────────────────────── */
:root {
  --bg-0: #080b08;
  --bg-1: #0d110d;
  --bg-2: #111611;
  --bg-3: #182018;
  --bg-4: #1f291f;

  --tx-1: #eef2ee;
  --tx-2: #a8b8a8;
  --tx-3: #5a6e5a;
  --tx-4: #2e3a2e;

  --gr-1: #22c55e;
  --gr-2: #4ade80;
  --gr-3: #86efac;
  --gr-dim: rgba(34,197,94,0.08);
  --gr-glow: rgba(34,197,94,0.2);
  --gr-border: rgba(34,197,94,0.25);

  --accent: #22c55e;
  --accent-h: #4ade80;

  --br-1: rgba(255,255,255,0.05);
  --br-2: rgba(255,255,255,0.09);
  --br-ac: rgba(34,197,94,0.25);

  --sh-sm: 0 1px 4px rgba(0,0,0,0.5);
  --sh-md: 0 4px 20px rgba(0,0,0,0.5);
  --sh-lg: 0 16px 48px rgba(0,0,0,0.6);
  --sh-ac: 0 0 24px rgba(34,197,94,0.18);

  --nav-bg: rgba(8,11,8,0.9);
  --card-bg: #111611;
}

/* ── LIGHT TOKENS ────────────────────────────────────────────── */
[data-theme="light"] {
  --bg-0: #ffffff;
  --bg-1: #f9fafb;
  --bg-2: #f3f4f6;
  --bg-3: #e5e7eb;
  --bg-4: #d1d5db;

  --tx-1: #030712;
  --tx-2: #1f2937;
  --tx-3: #6b7280;
  --tx-4: #9ca3af;

  --gr-1: #16a34a;
  --gr-2: #15803d;
  --gr-3: #166534;
  --gr-dim: rgba(22,163,74,0.06);
  --gr-glow: rgba(22,163,74,0.15);
  --gr-border: rgba(22,163,74,0.2);

  --accent: #16a34a;
  --accent-h: #15803d;

  --br-1: rgba(0,0,0,0.06);
  --br-2: rgba(0,0,0,0.1);
  --br-ac: rgba(22,163,74,0.2);

  --sh-sm: 0 1px 3px rgba(0,0,0,0.07);
  --sh-md: 0 4px 16px rgba(0,0,0,0.08);
  --sh-lg: 0 16px 48px rgba(0,0,0,0.12);
  --sh-ac: 0 0 24px rgba(22,163,74,0.12);

  --nav-bg: rgba(255,255,255,0.92);
  --card-bg: #ffffff;
}

/* ── RESET ──────────────────────────────────────────────────── */
*,*::before,*::after { margin:0; padding:0; box-sizing:border-box; }
html { scroll-behavior:smooth; overflow-x:hidden; }
body {
  font-family:'Geist','Inter',system-ui,sans-serif;
  background:var(--bg-0); color:var(--tx-1);
  line-height:1.6;
  -webkit-font-smoothing:antialiased;
  transition:background 0.4s ease, color 0.4s ease;
}
a { text-decoration:none; color:inherit; }
ul { list-style:none; }
img { max-width:100%; display:block; }

/* ── CURSOR ─────────────────────────────────────────────────── */
*,*::before,*::after { cursor:none !important; }
@media (hover:none) { *,*::before,*::after { cursor:auto !important; } }
.cursor-dot {
  position:fixed; top:0; left:0;
  width:5px; height:5px;
  background:var(--accent); border-radius:50%;
  pointer-events:none; z-index:99999;
  transform:translate(-50%,-50%);
  transition:width .12s, height .12s, background .2s;
}
body.cursor-hover .cursor-dot { width:9px; height:9px; }
body.cursor-click .cursor-dot { width:13px; height:13px; }
.cursor-ring { display:none !important; }

/* ── PORTRAIT ────────────────────────────────────────────────── */
.portrait-bg {
  position:fixed; top:0; right:-5%;
  width:58%; height:100%;
  background-image:url('data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAA0JCgsKCA0LCgsODg0PEyAVExISEyccHhcgLikxMC4pLSwzOko+MzZGNywtQFdBRkxOUlNSMj5aYVpQYEpRUk//2wBDAQ4ODhMREyYVFSZPNS01T09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0//wAARCAMgAlgDASIAAhEBAxEB/8QAHwAAAQUBAQEBAQEAAAAAAAAAAAECAwQFBgcICQoL/8QAtRAAAgEDAwIEAwUFBAQAAAF9AQIDAAQRBRIhMUEGE1FhByJxFDKBkaEII0KxwRVS0fAkM2JyggkKFhcYGRolJicoKSo0NTY3ODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqDhIWGh4iJipKTlJWWl5iZmqKjpKWmp6ipqrKztLW2t7i5usLDxMXGx8jJytLT1NXW19jZ2uHi4+Tl5ufo6erx8vP09fb3+Pn6/8QAHwEAAwEBAQEBAQEBAQAAAAAAAAECAwQFBgcICQoL/8QAtREAAgECBAQDBAcFBAQAAQJ3AAECAxEEBSExBhJBUQdhcRMiMoEIFEKRobHBCSMzUvAVYnLRChYkNOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6goOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna4uPk5ebn6Onq8vP09fb3+Pn6/9oADAMBAAIRAxEAPwDqaKKKZIUUUUAFFFFABRRRQAUUUtACUUtFACUUUUAFFFFAwooooAKKKKACiiigAooooAKKKKBBRRRQMKSlooASilopgJRRRQAUUUUAFFFFABSUtFACUUtFACUUtFACUUtJQAUUUtACUUtFABRRRQIKSlooAKKKKACkpaKACiiigAooooAKKKKACiiigAoopaQCUUUUAFFFFABRRS0wEooooAdSUtFIAooooAKKKKACiiigAooooGFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFABSUtFACUUtFMBKKKKACiiigApKWigBKKWigBKKWigBKKKKACiiigAopaSgAooooAKKWkoAKKWigBKKWigQlLRRQAUUUUgCiiigAooooAKKKKACiiigAooooAKKKKACiiigBaKKWgYlFLRQAUlLRQAlLRRQAUUUUAFFFFABRRRQAlFLRQAlLRRQAlFLRQAUUUUAFFFFABSUtFACUUtFACUUtFACUUtFACUUtJQAUUUUAFJS0UwEopaKAEopaKAEooooAKKKKACiiigAooooAKKKKACiiigAopaKAEopaKAEopaKQhKKWimAUlLRSAKKKKACiiigAooooAKKKKACiiigAooooAWilopDEopaKYCUUtFABRRRQAlLRRQAUUUUAFFFFACUUtFACUtFFABRRRQAUUUUAFFFFABRRRQAUUUUAFFFFACUUtFACUUtFACUUUUAFJS0UAJRS0UAJRS0UAJRS0lMAooooAKKKKACiiigAooooAKKKKACiilpAJRRRQAUUtFAhKKWigYlFLSUCCilooGJRRS0CEooooAKKWigBKKKWgBKKWigBaKKKQwooooAKKKWgBKKWigBKKWigBKKWimAlFLRQAlFLRQAlFLRQAlFLRQAUUUUAFJS0UAFFFFAwooooEFFFFACUUtFACUUtFACUUtFACUUYooAKKMUUAFJTqSgBKKWigBKKWigBMUYpaKAEopaKAExRS0UAJRS0UAJRS0UAJRS0UAJijFLRQAlFLRQAlFLRQAlFLRQAlFLSUAFFFFABRS0UAJRS0UCEopaKBi0UUUgCiiigAoopaAEooooAKKWigBKKWigBKKWigBKKWimAUUUUAFFFFABRRRQMKKKKACiiigAooooAKSlooAKSlxRigBKKWigQlFLRQAlFLRQAlFLSUAFFLRQAlFLRQAlFFFABRRRQAUlLRQAlFLRQAlFLRQAlFLRQAlFLRQAlFLRQAlFLRQAlFLRQAlFLRQAlFFFABRRRQAUUUUAFFFFABRRRQA6iiikAUUUUAJS0UUAFFLRQMSilooASloooASilooASloooAKKKKACiilxQAlFLRQAlFLRQAlFFLQAlFLRQAlFLRQAlFLRQAlFLRQAlFLikpgFFFFABSUtFACUUtFACUUtFAhKKWigBKKKKACiiigAooooAKSlooAKKKMUAFJS0UAJRS0UAJRS0UAJRS0UAJRRRQAUUtJQAUUUUAFFFFABRRRQAUUUUALRS0UhiUUtFABRRRQAUUUtACUUtFACUUtFABRRRQAUUUUAFFFFABRS0lABRRS0AJRS0UAJRS0UAJRS0UAJRS0UAFJS0UAJRS0UAJRS0UAJRS0UAJRRiigAooopgJS0UUAFFFFACYopaKAEopaKBCUUtFAxKKWkoAKKWigBKKKKACkpaKAEopaKAEopaKAEopaKAEooooEFFFFABRRRQAUUUUAFFFFAC0UtFIYlFLRQAUUUUAFFFFABRRS0AJRS0UAJRS0UAFFFFABRRRQAUUUUAFFLRQAlFLRQAlFLRQAlLRRQMKKKKACiiigQUUUUAFFFFACUUtFACUUtFACUUtFACUUtFACUUtJQAUUUUAJRS0UAJRS0UAJRS0UAJRS0UAJRS0UAJRRRQAUlLRQAlFLRTASilooASilpKACiiigApKWigAooooAKKKKBC0UUtIYlFLRQAUUUUgCiiloASilooASilooAKKKKACiiimAUUtFACUUtFAxKKWikAUUUUAFFFFABRRRQAUUtJQAUUUUAFFFFMAooooAKSlooASjFLRQITFFLRQAlFLRQAlFLRigBKKKMUAFFLSUAFFFFABSUtFACUUtFACUUtFACUUtJQAUUUUAFFFFACUUtFACUUUUAFFFFABRRRQAUUUUAFFFFAC0UUtIBKKWigBKWiigAooooGFFFLQAlFLRQAUUUUAFFFFABRS0UAJRS0UAJRS0UAFFFFABRRRQAUUtFACUUtFACUUtFACUUtFACUUtFACUUUtACUUUUAFFFFMApKWigBKKWikAlFLRTEJRS0lABRRRSAKKKKYBRRRQMSilooASilpKACiijFAgooooAKSlooASilooASilpKACiiigAooooAKKKKAFooopDCilooASilooAKKKKACilooASilooAKKKKACilooASilooASloooGFFLRQAlFLRQISilooASilooASilooASilxRQAlFLRQMSiloxQAlFLiigBKKWigQmKKWkoAKKKKACkpaKAEoxS0UAJRS0UAJRRRQAUUUUAJRS0UAJRS0UAJRRRTAKKKKACiiigAooopCCkpaKYCUUtFACUUUUAFFFFABRRRQAtFFFIYUUUtACUUtFACUtFGKACilooASilooAKKKWgBKKWjFAxKWiigBKWiloASilxRigBKWjFLigBKKXFFACUUtFACUUuKKAEopaKAEopaKAEopaKAExRS0UAJRS0lABRRRQAmKMUtFAhKKKKAExRilooASilooASilxSUAFJS0UAJRS0UAJRS0lABRRRQAUUUUAFJS0UAFJS0UAJRS0UAJRS0lABRRRQAUUUUAFFFFAC0UUUAFFFLQAmKKWigYUUUUAFFFLQAUUUUAFFLRQAlFLiloASilooATFLRRigAopaKAEopaWgQmKMUuKMUgExRS4oxQAlFLiigBKKWigBMUUtGKAEopaKYxMUYpaKAG0UtFACUUtFACUlOpKAEopaKAEopaSgQUlLRQAlFLRQAlFLSUBYKKKKAEopaKAEopaKAEopaSgAooooAKSlooASilooASiiigAooooAKSlooASilooAWiiigYUUUtIBKKWimAUUUtIBKWiigAoopaAEpaKKACilooAMUUtFACUtGKXFACUUtFACUtFFABRS00sAM9fX2oEL0oppIOAM/N6elICRwCX9u9Ax9GKFdSoOaQyIOrUALRVee6jhxvkC54Gact1GTsyC/PC8g464oAmopiTRtt+YAt0B61JQAlFLxRQAlGKOp+lFABikxS0UAJRS4ooASkpaKAEoxS0UCG0YpaKAEopcUUxiUUUUgExRS0UwEopaKAEpKWigBKKWigBKKWigBKKWigBKKKKBCUUtFACUUtFADaWiigBKKWigBKKWigBcUUUUhhRS0UAFFFFABRS0UAFGKKKACilooAKKKWgAooooAKKWikAUtJS0AFFFFABQSO5pC4APt7Vha7qrWxSJCVLE7iuOlMDWku4Y87pEUDuxxXP6vrsS7hFJErAkcnk4rHn1Gadn/fNtPC5HSs2d0KMSodx1Y9eapIRpDxVcxOFchgD8uKvf8ACWiSPJVXccADKke+a4qTYWKjOM01GV5VC5UEcn1p2A7238RTyOIkQHn/AJaDP/1qgutYc5zISccjOBXO2V0qK5U5JGMnrSXdx5hDKfuHDD8aLCN061FJtEmVZFyMdz/+qmxawFm3qw3KenoPrXLSS/PuU/SmrM245POKBnbWms7ZXdz+7c/KM81u/wBq26QiaS5iCsMhQp6e1ecfalaMAnk8ke9WYLkFdvIGDxnpSsB3D63bKu4F1DdFK9fpV+2vorhQyNwwyD2NeeE5YMrAnHc9a0NO1L7KjxSZKZ3KR1U/4UmhndgjdjvinVlRX0X2QyIwcEgqRwQK0Y3LIrBl5HAx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');
  background-size:cover; background-position:center 10%;
  background-repeat:no-repeat;
  pointer-events:none; z-index:0;
  will-change:transform, filter, opacity;
  -webkit-mask-image:linear-gradient(to left, rgba(0,0,0,0.45) 0%, rgba(0,0,0,0.15) 55%, transparent 88%);
  mask-image:linear-gradient(to left, rgba(0,0,0,0.45) 0%, rgba(0,0,0,0.15) 55%, transparent 88%);
}
[data-theme="dark"]  .portrait-bg { opacity:0.12; filter:grayscale(100%) brightness(0.8); }
[data-theme="light"] .portrait-bg { opacity:0.06; filter:grayscale(100%) brightness(1.1); }

/* ── NOISE GRAIN ─────────────────────────────────────────────── */
[data-theme="dark"] body::before {
  content:''; position:fixed; inset:0; pointer-events:none; z-index:1;
  background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' 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)' opacity='0.04'/%3E%3C/svg%3E");
  opacity:0.4;
}

/* ── SCROLL PROGRESS ─────────────────────────────────────────── */
.scroll-progress { position:fixed; top:0; left:0; width:100%; height:2px; z-index:9999; pointer-events:none; background:transparent; }
.scroll-progress-bar { width:0; height:100%; background:var(--accent); transition:width 0.1s linear; }

/* ── SPOTLIGHT ───────────────────────────────────────────────── */
.spotlight {
  position:fixed; inset:0; pointer-events:none; z-index:2;
  background:radial-gradient(700px circle at var(--mx,50%) var(--my,50%), var(--gr-dim), transparent 65%);
  opacity:0; transition:opacity 0.3s;
}
body.spotlight-on .spotlight { opacity:1; }

/* ── NAV ─────────────────────────────────────────────────────── */
.navbar {
  position:fixed; top:0; left:0; right:0; z-index:1000;
  background:var(--nav-bg);
  backdrop-filter:blur(20px) saturate(160%);
  border-bottom:1px solid var(--br-1);
  transition:background 0.4s;
}
.nav-container {
  max-width:1240px; margin:0 auto; padding:0 2rem;
  height:60px; display:flex; align-items:center; justify-content:space-between;
}
.logo-text {
  font-family:'Space Grotesk',sans-serif; font-weight:700;
  font-size:1.05rem; letter-spacing:0.04em; color:var(--accent);
}
.nav-menu { display:flex; gap:0.1rem; }
.nav-link {
  font-size:0.78rem; font-weight:400; color:var(--tx-3);
  padding:0.35rem 0.7rem; border-radius:4px;
  letter-spacing:0.02em;
  transition:color 0.15s, background 0.15s;
}
.nav-link:hover, .nav-link.active { color:var(--tx-1); background:var(--bg-3); }
.theme-toggle {
  background:transparent; border:1px solid var(--br-2);
  border-radius:5px; width:34px; height:34px;
  display:flex; align-items:center; justify-content:center;
  font-size:0.85rem; transition:border-color 0.2s, background 0.2s;
}
.theme-toggle:hover { background:var(--bg-3); border-color:var(--br-ac); }
.hamburger { display:none; flex-direction:column; gap:4px; }
.hamburger span { width:20px; height:1.5px; background:var(--tx-2); border-radius:2px; transition:all 0.3s; }

/* ── HERO — Full-bleed typographic ──────────────────────────── */
.hero-full {
  position: relative;
  width: 100%;
  height: 100vh;
  min-height: 100vh;
  background: var(--bg-0);
  display: flex;
  flex-direction: column;
  overflow: hidden;
}

/* Top status bar */
.hf-topbar {
  position: relative;
  z-index: 2;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 3rem;
  height: 44px;
  border-bottom: 1px solid var(--br-1);
  margin-top: 60px;
  font-family: 'JetBrains Mono', monospace;
  font-size: 0.62rem;
  letter-spacing: 0.1em;
  color: var(--tx-3);
  opacity: 0;
  animation: hfIn 0.7s ease 4.2s forwards;
}
.hf-status {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  color: var(--accent);
}
.hf-time {
  font-variant-numeric: tabular-nums;
  color: var(--tx-4);
  letter-spacing: 0.08em;
}

/* Center — name block fills remaining space */
.hf-center {
  position: relative;
  z-index: 2;
  flex: 1;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 0 3rem;
}

.hf-label {
  font-family: 'JetBrains Mono', monospace;
  font-size: 0.62rem;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: var(--accent);
  margin-bottom: 1.5rem;
  opacity: 0;
  animation: hfIn 0.6s ease 4.3s forwards;
}

.hf-name {
  margin: 0;
  padding: 0;
  line-height: 0.85;
  display: flex;
  flex-direction: column;
}

.hf-line {
  font-family: 'Space Grotesk', sans-serif;
  font-size: clamp(4.5rem, 12.5vw, 13rem);
  font-weight: 700;
  letter-spacing: -0.04em;
  display: block;
  opacity: 0;
  transform: translateY(50px);
  animation: hfSlide 0.9s cubic-bezier(0.16,1,0.3,1) 4.35s forwards;
}

/* "Muhammed" — white, clean, commanding */
.hf-muhammed {
  color: #eef2ee;
  -webkit-text-fill-color: #eef2ee;
}
[data-theme="light"] .hf-muhammed {
  color: #030712;
  -webkit-text-fill-color: #030712;
}

/* "Safuvan" — outlined in green, transparent fill */
.hf-line2 {
  -webkit-text-stroke: 2px rgba(34,197,94,0.5);
  color: transparent;
  animation-delay: 4.5s;
}
[data-theme="light"] .hf-line2 {
  -webkit-text-stroke: 2px rgba(22,163,74,0.4);
}

/* Tech stack tags */
.hf-sub {
  display: flex;
  align-items: center;
  gap: 1.2rem;
  margin-top: 2.5rem;
  flex-wrap: wrap;
  opacity: 0;
  animation: hfIn 0.6s ease 4.65s forwards;
}
.hf-sub-item {
  font-family: 'JetBrains Mono', monospace;
  font-size: 0.68rem;
  letter-spacing: 0.06em;
  color: var(--tx-3);
}
[data-theme="light"] .hf-sub-item { color: #6b7280; }
.hf-divider {
  color: var(--tx-4);
  font-size: 0.55rem;
}

/* Bottom action bar */
.hf-bottom {
  position: relative;
  z-index: 2;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 3rem;
  height: 56px;
  border-top: 1px solid var(--br-1);
  opacity: 0;
  animation: hfIn 0.7s ease 4.75s forwards;
}

.hf-bottom-left {
  display: flex;
  align-items: center;
  gap: 2rem;
}

.hf-cta {
  font-family: 'JetBrains Mono', monospace;
  font-size: 0.65rem;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--bg-0);
  background: var(--accent);
  padding: 0.5rem 1.2rem;
  border-radius: 3px;
  transition: background 0.2s, box-shadow 0.2s, transform 0.15s;
  white-space: nowrap;
}
.hf-cta:hover {
  background: var(--accent-h);
  box-shadow: 0 0 20px var(--gr-glow);
  transform: translateY(-1px);
}
[data-theme="light"] .hf-cta { color: #fff; }

.hf-link {
  font-family: 'JetBrains Mono', monospace;
  font-size: 0.62rem;
  letter-spacing: 0.08em;
  color: var(--tx-3);
  transition: color 0.2s;
}
.hf-link:hover { color: var(--accent); }

.hf-scroll-hint {
  display: flex;
  align-items: center;
  gap: 0.7rem;
  font-family: 'JetBrains Mono', monospace;
  font-size: 0.52rem;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--tx-4);
}
.hf-scroll-line {
  width: 28px;
  height: 1px;
  background: var(--tx-4);
  animation: scrollPulse 2.2s ease-in-out infinite;
}
@keyframes scrollPulse {
  0%, 100% { width: 28px; opacity: 0.3; }
  50%       { width: 44px; opacity: 0.8; }
}

/* Corner brackets */
.hf-corner {
  position: absolute;
  width: 16px;
  height: 16px;
  z-index: 3;
  opacity: 0;
  animation: hfIn 0.4s ease 4.8s forwards;
}
.hf-tl { top: 68px; left: 16px; border-top: 1px solid rgba(34,197,94,0.3); border-left: 1px solid rgba(34,197,94,0.3); }
.hf-tr { top: 68px; right: 16px; border-top: 1px solid rgba(34,197,94,0.3); border-right: 1px solid rgba(34,197,94,0.3); }
.hf-bl { bottom: 12px; left: 16px; border-bottom: 1px solid rgba(34,197,94,0.3); border-left: 1px solid rgba(34,197,94,0.3); }
.hf-br { bottom: 12px; right: 16px; border-bottom: 1px solid rgba(34,197,94,0.3); border-right: 1px solid rgba(34,197,94,0.3); }

@keyframes hfIn {
  from { opacity: 0; }
  to   { opacity: 1; }
}
@keyframes hfSlide {
  from { opacity: 0; transform: translateY(50px); }
  to   { opacity: 1; transform: translateY(0); }
}

/* Mobile */
@media (max-width: 768px) {
  .hf-topbar, .hf-bottom { padding: 0 1.5rem; }
  .hf-center { padding: 0 1.5rem; }
  .hf-line { font-size: clamp(2.8rem, 13vw, 4.5rem); }
  .hf-sub { gap: 0.4rem; flex-direction: column; align-items: flex-start; }
  .hf-divider { display: none; }
  .hf-scroll-hint { display: none; }
  .hf-line2 { -webkit-text-stroke: 1.5px rgba(34,197,94,0.5); }
  /* Mobile: intro exits at ~2.9s, so hero content must appear after that */
  .hf-topbar { animation-delay: 3.0s !important; }
  .hf-label  { animation-delay: 3.1s !important; }
  .hf-line   { animation-delay: 3.15s !important; animation: hfSlide 0.9s cubic-bezier(0.16,1,0.3,1) 3.15s both !important; }
  .hf-line2  { animation-delay: 3.3s !important;  animation: hfSlide 0.9s cubic-bezier(0.16,1,0.3,1) 3.3s both !important; }
  .hf-sub    { animation-delay: 3.5s !important; }
  .hf-bottom { animation-delay: 3.6s !important; }
  .hf-corner { animation-delay: 3.65s !important; }
  /* Stack bottom bar on mobile */
  .hf-bottom { height: auto; padding: 0.8rem 1.5rem; flex-direction: column; align-items: flex-start; gap: 0.8rem; }
  .hf-bottom-left { flex-wrap: wrap; gap: 0.8rem; }
  /* Sub items */
  .hf-sub-item { font-size: 0.6rem; }
  /* Top bar: hide loc on very small screens */
  .hf-loc { display: none; }
}

/* ── SECTIONS ────────────────────────────────────────────────── */
section { padding:7rem 0; position:relative; z-index:2; }
.container { max-width:1240px; margin:0 auto; padding:0 2rem; }
.section-label {
  font-family:'JetBrains Mono',monospace;
  font-size:0.67rem; letter-spacing:0.2em;
  text-transform:uppercase; color:var(--accent);
  margin-bottom:0.6rem; display:block; opacity:0.8;
}
.section-title {
  font-family:'Space Grotesk',sans-serif;
  font-size:clamp(1.9rem,3.5vw,2.7rem); font-weight:700;
  letter-spacing:-0.03em; color:var(--tx-1); margin-bottom:3.5rem;
}
.section-title::before, .section-title::after { display:none !important; }

/* ── ALT SECTION BACKGROUNDS ─────────────────────────────────── */
.about     { background:var(--bg-0); }
.skills    { background:var(--bg-1); border-top:1px solid var(--br-1); border-bottom:1px solid var(--br-1); }
.experience { background:var(--bg-0); }
.projects  { background:var(--bg-1); border-top:1px solid var(--br-1); border-bottom:1px solid var(--br-1); }
.education { background:var(--bg-0); }
.contact   { background:var(--bg-1); border-top:1px solid var(--br-1); }

/* ── ABOUT ───────────────────────────────────────────────────── */
.about-content { max-width:740px; }
.about-text p {
  font-size:1rem; font-weight:300; line-height:1.95;
  color:var(--tx-2); margin-bottom:1.8rem;
}
[data-theme="light"] .about-text p { color:#374151; }

/* ── SKILLS ──────────────────────────────────────────────────── */
.skills-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(270px,1fr)); gap:1px; background:var(--br-1); border:1px solid var(--br-1); border-radius:10px; overflow:hidden; }
.skill-category {
  background:var(--bg-1); padding:1.8rem;
  transition:background 0.2s;
}
[data-theme="light"] .skill-category { background:#ffffff; }
.skill-category:hover { background:var(--bg-2); }
[data-theme="light"] .skill-category:hover { background:#f9fafb; }
.skill-category::before, .skill-category:hover::before { display:none !important; }
.category-title {
  font-family:'Space Grotesk',sans-serif;
  font-size:0.85rem; font-weight:600; color:var(--tx-1);
  margin-bottom:1rem; display:flex; align-items:center; gap:0.5rem; letter-spacing:0;
}
[data-theme="light"] .category-title { color:#111827; }
.category-icon { font-size:1rem; }
.skill-tags { display:flex; flex-wrap:wrap; gap:0.4rem; }
.skill-tag {
  font-family:'JetBrains Mono',monospace; font-size:0.69rem;
  color:var(--tx-3); background:var(--bg-3); border:1px solid var(--br-1);
  padding:0.25rem 0.6rem; border-radius:3px; cursor:default;
  transition:color 0.15s, border-color 0.15s;
}
[data-theme="light"] .skill-tag {
  color:#1f2937; background:#f3f4f6; border-color:rgba(0,0,0,0.1);
}
.skill-tag:hover { color:var(--accent); border-color:var(--br-ac); }
[data-theme="light"] .skill-tag:hover { color:#16a34a; border-color:rgba(22,163,74,0.3); }

/* ── TIMELINE ────────────────────────────────────────────────── */
.timeline { position:relative; max-width:840px; padding-left:1.5rem; }
.timeline::before {
  content:''; position:absolute; left:0; top:8px; bottom:0;
  width:1px; background:var(--br-2);
}
.timeline-item { position:relative; margin-bottom:3rem; padding-left:2.5rem; }
.timeline-marker {
  position:absolute; left:-1.3rem; top:0.35rem;
  width:11px; height:11px; border-radius:50%;
  background:var(--accent); border:2px solid var(--bg-0);
  box-shadow:0 0 10px var(--gr-glow);
  animation:none !important;
}
[data-theme="light"] .timeline-marker { border-color:#ffffff; }
.timeline-content {
  background:var(--card-bg); border:1px solid var(--br-1);
  border-radius:8px; padding:1.8rem;
  transition:border-color 0.2s;
}
.timeline-content:hover { border-color:var(--br-ac); }
.timeline-content::before, .timeline-content:hover::before { display:none !important; }
.timeline-content:hover { transform:none !important; }
.timeline-title {
  font-family:'Space Grotesk',sans-serif;
  font-size:1rem; font-weight:600; color:var(--tx-1); margin-bottom:0.25rem;
}
[data-theme="light"] .timeline-title { color:#111827; }
.timeline-company { color:var(--accent); font-size:0.82rem; font-weight:500; display:block; margin-bottom:0.2rem; }
.timeline-date {
  font-family:'JetBrains Mono',monospace; font-size:0.67rem;
  letter-spacing:0.07em; color:var(--tx-4); display:block; margin-bottom:1.1rem;
}
[data-theme="light"] .timeline-date { color:#9ca3af; }
.timeline-logo {
  width:52px; height:52px; border-radius:8px;
  background:var(--bg-3); border:1px solid var(--br-1);
  padding:6px; margin-bottom:1rem; object-fit:contain;
}
[data-theme="light"] .timeline-logo { background:#ffffff; border-color:rgba(0,0,0,0.1); }
.timeline-list li {
  font-size:0.875rem; font-weight:300; color:var(--tx-2);
  padding-left:1.1rem; margin-bottom:0.5rem;
  line-height:1.7; position:relative;
}
[data-theme="light"] .timeline-list li { color:#374151; }
.timeline-list li::before { content:'—'; position:absolute; left:0; color:var(--tx-4); }

/* ── PROJECTS ────────────────────────────────────────────────── */
.projects-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(330px,1fr)); gap:1px; background:var(--br-1); border:1px solid var(--br-1); border-radius:10px; overflow:hidden; }
.project-card {
  background:var(--bg-1); padding:2rem;
  transition:background 0.2s; position:relative; overflow:hidden;
}
[data-theme="light"] .project-card { background:#ffffff; }
.project-card:hover { background:var(--bg-2); }
[data-theme="light"] .project-card:hover { background:#f9fafb; }
.project-card::after { display:none !important; }
.project-card:hover { transform:none !important; box-shadow:none !important; border-color:inherit !important; }
.project-header { display:flex; align-items:center; gap:0.75rem; margin-bottom:1rem; }
.project-icon { font-size:1.5rem; }
.project-title {
  font-family:'Space Grotesk',sans-serif;
  font-size:1rem; font-weight:600; color:var(--tx-1); margin-bottom:0.7rem; letter-spacing:-0.01em;
}
[data-theme="light"] .project-title { color:#111827; }
.project-description { font-size:0.85rem; color:var(--tx-2); line-height:1.75; margin-bottom:1.1rem; font-weight:300; }
[data-theme="light"] .project-description { color:#4b5563; }
.project-features h4 {
  font-family:'JetBrains Mono',monospace; font-size:0.65rem;
  color:var(--tx-4); letter-spacing:0.1em; text-transform:uppercase; margin-bottom:0.5rem;
}
[data-theme="light"] .project-features h4 { color:#9ca3af; }
.project-features li {
  font-size:0.83rem; color:var(--tx-3); padding-left:1rem;
  margin-bottom:0.4rem; line-height:1.65; position:relative; font-weight:300;
}
[data-theme="light"] .project-features li { color:#6b7280; }
.project-features li::before { content:'›'; position:absolute; left:0; color:var(--accent); }
.project-tech { display:flex; flex-wrap:wrap; gap:0.35rem; margin-top:1.1rem; }
.tech-tag {
  font-family:'JetBrains Mono',monospace; font-size:0.65rem;
  color:var(--accent); background:var(--gr-dim);
  border:1px solid var(--br-ac);
  padding:0.18rem 0.5rem; border-radius:3px;
}
[data-theme="light"] .tech-tag {
  color:#16a34a; background:rgba(22,163,74,0.07); border-color:rgba(22,163,74,0.25);
}

/* ── EDUCATION ───────────────────────────────────────────────── */
.education-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(300px,1fr)); gap:1.25rem; }
.education-card {
  background:var(--card-bg); border:1px solid var(--br-1);
  border-radius:8px; padding:1.8rem; transition:border-color 0.2s;
}
.education-card:hover { border-color:var(--br-ac); }
.education-logo {
  width:56px; height:56px; background:var(--bg-3); border:1px solid var(--br-1);
  border-radius:8px; padding:7px; margin-bottom:1.2rem; object-fit:contain;
}
[data-theme="light"] .education-logo { background:#ffffff; border-color:rgba(0,0,0,0.1); }
.education-degree {
  font-family:'Space Grotesk',sans-serif; font-size:0.95rem;
  font-weight:600; color:var(--tx-1); margin-bottom:0.25rem;
}
[data-theme="light"] .education-degree { color:#111827; }
.education-field { font-size:0.82rem; color:var(--accent); margin-bottom:0.2rem; }
.education-school { font-size:0.8rem; color:var(--tx-2); margin-bottom:0.2rem; }
[data-theme="light"] .education-school { color:#374151; }
.education-date { font-family:'JetBrains Mono',monospace; font-size:0.65rem; color:var(--tx-4); letter-spacing:0.06em; margin-bottom:0.9rem; display:block; }
.education-details p { font-size:0.83rem; color:var(--tx-3); line-height:1.72; font-weight:300; }
[data-theme="light"] .education-details p { color:#6b7280; }

/* ── CONTACT ─────────────────────────────────────────────────── */
.contact-subtitle { font-size:0.92rem; color:var(--tx-3); margin-bottom:3rem; font-weight:300; }
[data-theme="light"] .contact-subtitle { color:#6b7280; }
.contact-content { display:grid; grid-template-columns:1fr 1fr; gap:4rem; align-items:start; }
.contact-item { display:flex; gap:1rem; align-items:flex-start; margin-bottom:2rem; }
.contact-icon { font-size:0.95rem; opacity:0.6; margin-top:0.1rem; }
.contact-details h4 {
  font-family:'JetBrains Mono',monospace; font-size:0.65rem; font-weight:500;
  color:var(--tx-4); letter-spacing:0.1em; text-transform:uppercase; margin-bottom:0.25rem;
}
.contact-details a, .contact-details p { font-size:0.88rem; color:var(--tx-2); transition:color 0.2s; }
[data-theme="light"] .contact-details a, [data-theme="light"] .contact-details p { color:#374151; }
.contact-details a:hover { color:var(--accent); }
.contact-cta { padding-top:0.5rem; }
.contact-cta p { font-size:0.82rem; color:var(--tx-3); margin-bottom:1rem; }
[data-theme="light"] .contact-cta p { color:#6b7280; }
.btn-large { font-size:0.84rem !important; padding:0.72rem 1.5rem !important; }

/* ── FOOTER ──────────────────────────────────────────────────── */
.footer {
  background:var(--bg-0); border-top:1px solid var(--br-1);
  padding:2.5rem 0; text-align:center;
}
.footer p { font-size:0.75rem; color:var(--tx-4); margin-bottom:0.3rem; }
.footer-note { opacity:0.6; font-weight:300; }

/* ── FIXED BUTTONS ───────────────────────────────────────────── */
.scroll-top {
  position:fixed; bottom:7rem; right:1.5rem; z-index:9999;
  width:36px; height:36px; border-radius:5px;
  background:var(--bg-3); border:1px solid var(--br-2);
  color:var(--tx-2); font-size:0.85rem;
  display:flex; align-items:center; justify-content:center;
  opacity:0; visibility:hidden; transition:all 0.2s;
}
.scroll-top.visible { opacity:1; visibility:visible; }
.scroll-top:hover { background:var(--bg-4); color:var(--accent); border-color:var(--br-ac); }

.cmd-btn {
  position:fixed; bottom:2rem; right:1.5rem; z-index:9999;
  width:36px; height:36px; border-radius:5px;
  background:var(--bg-3); border:1px solid var(--br-2);
  color:var(--accent); font-size:0.9rem;
  display:flex; align-items:center; justify-content:center; transition:all 0.2s;
}
.cmd-btn:hover { background:var(--bg-4); border-color:var(--br-ac); box-shadow:var(--sh-ac); }

#muteBtn {
  position:fixed !important; bottom:4.5rem !important; right:1.5rem !important;
  z-index:9999 !important; width:36px !important; height:36px !important;
  border-radius:5px !important;
  background:var(--bg-3) !important; border:1px solid var(--br-2) !important;
  font-size:0.82rem !important; box-shadow:none !important;
  display:flex !important; align-items:center !important; justify-content:center !important;
  transition:all 0.2s !important;
}
#muteBtn:hover { background:var(--bg-4) !important; border-color:var(--br-ac) !important; }

/* ── COMMAND PALETTE ─────────────────────────────────────────── */
.cmdk { position:fixed; inset:0; z-index:10000; }
.cmdk-backdrop { position:absolute; inset:0; background:rgba(0,0,0,0.55); backdrop-filter:blur(4px); }
.cmdk-panel {
  position:absolute; top:18%; left:50%; transform:translateX(-50%);
  width:min(540px,92vw); background:var(--bg-2);
  border:1px solid var(--br-2); border-radius:10px;
  box-shadow:var(--sh-lg); overflow:hidden;
}
[data-theme="light"] .cmdk-panel { background:#ffffff; border-color:rgba(0,0,0,0.1); }
.cmdk-header {
  padding:0.9rem 1.1rem 0.7rem; border-bottom:1px solid var(--br-1);
  display:flex; justify-content:space-between; align-items:center;
}
.cmdk-title { font-family:'Space Grotesk',sans-serif; font-size:0.8rem; font-weight:600; color:var(--tx-2); }
.cmdk-hint { font-family:'JetBrains Mono',monospace; font-size:0.62rem; color:var(--tx-4); }
.cmdk-input {
  width:100%; padding:0.85rem 1.1rem; background:transparent;
  border:none; border-bottom:1px solid var(--br-1);
  color:var(--tx-1); font-size:0.85rem; outline:none;
  font-family:'Geist','Inter',sans-serif;
}
[data-theme="light"] .cmdk-input { color:#111827; }
.cmdk-input::placeholder { color:var(--tx-4); }
.cmdk-list { max-height:260px; overflow-y:auto; padding:0.3rem; scrollbar-width:none; }
.cmdk-list::-webkit-scrollbar { display:none; }
.cmdk-item {
  display:flex; justify-content:space-between; align-items:center;
  padding:0.6rem 0.85rem; border-radius:6px; gap:1rem; transition:background 0.12s;
}
.cmdk-item:hover, .cmdk-item.active { background:var(--bg-3); }
[data-theme="light"] .cmdk-item:hover, [data-theme="light"] .cmdk-item.active { background:#f3f4f6; }
.cmdk-item .left { display:flex; align-items:center; gap:0.65rem; }
.cmdk-icon { font-size:0.85rem; opacity:0.65; }
.cmdk-item>.left>div>div:first-child { font-size:0.82rem; color:var(--tx-1); }
[data-theme="light"] .cmdk-item>.left>div>div:first-child { color:#111827; }
.cmdk-sub { font-family:'JetBrains Mono',monospace; font-size:0.65rem; color:var(--tx-4); margin-top:0.08rem; }
.cmdk-kbd {
  font-family:'JetBrains Mono',monospace; font-size:0.62rem;
  color:var(--tx-4); background:var(--bg-3); border:1px solid var(--br-1);
  border-radius:3px; padding:0.12rem 0.35rem; flex-shrink:0;
}
[data-theme="light"] .cmdk-kbd { background:#f3f4f6; border-color:rgba(0,0,0,0.08); }

/* ── TERMINAL ────────────────────────────────────────────────── */
.terminal-block {
  margin-top:3rem; border-radius:8px; overflow:hidden;
  background:var(--bg-0); border:1px solid var(--br-1); box-shadow:var(--sh-md);
}
[data-theme="light"] .terminal-block { background:#0d1117; border-color:rgba(255,255,255,0.08); }
.terminal-header {
  display:flex; align-items:center; gap:6px; padding:0.65rem 1rem;
  background:var(--bg-2); border-bottom:1px solid var(--br-1);
}
[data-theme="light"] .terminal-header { background:#161b22; border-color:rgba(255,255,255,0.06); }
.t-dot { width:10px; height:10px; border-radius:50%; }
.t-red { background:#ff5f57; } .t-yellow { background:#febc2e; } .t-green { background:#28c840; }
.t-title { font-family:'JetBrains Mono',monospace; font-size:0.67rem; color:var(--tx-4); margin-left:5px; }
.terminal-body { padding:1.1rem 1.4rem; min-height:150px; max-height:250px; overflow-y:auto; scrollbar-width:none; }
.terminal-body::-webkit-scrollbar { display:none; }
.t-line { font-family:'JetBrains Mono',monospace; font-size:0.75rem; line-height:1.75; margin-bottom:0.2rem; }
.t-cmd { color:#79c0ff; }
.t-out { color:#56d364; padding-left:0.8rem; }
.t-prompt { color:var(--accent); font-weight:500; }

/* ── GLITCH ──────────────────────────────────────────────────── */
.glitch-name { position:relative; display:inline; }
.glitch-name::before,.glitch-name::after {
  content:attr(data-text); position:absolute; top:0; left:0;
  width:100%; height:100%; background:transparent; opacity:0; pointer-events:none;
  -webkit-text-fill-color:initial;
}
.glitch-name.glitching { animation:gMain 0.35s steps(2) forwards; }
.glitch-name.glitching::before {
  opacity:1; color:#f87171;
  clip-path:polygon(0 20%,100% 20%,100% 40%,0 40%); transform:translateX(-3px);
  animation:gR 0.35s steps(2) forwards;
}
.glitch-name.glitching::after {
  opacity:1; color:#60a5fa;
  clip-path:polygon(0 65%,100% 65%,100% 80%,0 80%); transform:translateX(3px);
  animation:gB 0.35s steps(2) forwards;
}
@keyframes gMain { 0% { transform:none; } 33% { transform:translateX(-2px); } 66% { transform:translateX(2px); } 100% { transform:none; } }
@keyframes gR { 0% { transform:translateX(-3px); } 50% { transform:translateX(3px); clip-path:polygon(0 45%,100% 45%,100% 60%,0 60%); } 100% { opacity:0; } }
@keyframes gB { 0% { transform:translateX(3px); } 50% { transform:translateX(-3px); clip-path:polygon(0 25%,100% 25%,100% 40%,0 40%); } 100% { opacity:0; } }

/* ── MATRIX EMAIL ────────────────────────────────────────────── */
a[href^="mailto:"] { font-family:'JetBrains Mono',monospace; font-size:0.83rem; transition:color 0.2s; }
a[href^="mailto:"]:hover { color:var(--accent); }

/* ── PARTICLES ───────────────────────────────────────────────── */
#particleCanvas { position:fixed; inset:0; pointer-events:none; z-index:9998; }

/* ── SCROLL REVEAL ───────────────────────────────────────────── */


/* ── 3D TILT ─────────────────────────────────────────────────── */
.tilt { transform-style:preserve-3d; will-change:transform; }
.tilt-glare {
  position:absolute; inset:0; border-radius:inherit; pointer-events:none;
  background:radial-gradient(400px circle at var(--gx,50%) var(--gy,50%), var(--gr-dim), transparent 60%);
  opacity:0; transition:opacity 0.2s;
}
.tilt:hover .tilt-glare { opacity:1; }

/* ── JOURNEY SECTION ─────────────────────────────────────────── */
.journey { background:var(--bg-1); border-top:1px solid var(--br-1); border-bottom:1px solid var(--br-1); }

/* ── MOBILE ──────────────────────────────────────────────────── */
@media (max-width:768px) {
  .hero-container { grid-template-columns:1fr; padding-top:1.5rem; }
  .hero-visual { display:none; }
  .contact-content { grid-template-columns:1fr; gap:2rem; }
  .nav-menu { display:none; flex-direction:column; position:fixed; inset:60px 0 0 0; background:var(--bg-1); padding:1.5rem; gap:0.3rem; z-index:999; }
  .nav-menu.active { display:flex; }
  .hamburger { display:flex; }
  .hero-title { font-size:clamp(2.5rem,9vw,3.8rem); }
  .skills-grid { grid-template-columns:1fr; }
  .projects-grid { grid-template-columns:1fr; }
}

/* ============================================================
   FEATURE 01 — WebGL Particle Network (Hero Background)
   ============================================================ */
#particleNetwork {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  z-index: 0;
  pointer-events: none;
  opacity: 0;
  transition: opacity 1.8s ease;
}
#particleNetwork.visible { opacity: 1; }

/* ============================================================
   FEATURE 03 — Scroll-Driven Section Transitions
   ============================================================ */




/* ============================================================
   FEATURE 04 — Skill tag charge animation (retained)
   ============================================================ */
.skill-tag-chargeable {
  position: relative;
  overflow: hidden;
}
.skill-tag-chargeable::after {
  content: '';
  position: absolute;
  left: 0; top: 0; bottom: 0;
  width: 0;
  background: linear-gradient(90deg, var(--gr-dim), var(--gr-border));
  border-radius: inherit;
  transition: width 0.9s cubic-bezier(0.16,1,0.3,1);
  pointer-events: none;
}
.skill-tag-chargeable.charged::after {
  width: 100%;
}

/* ============================================================
   FEATURE 1 — LENIS SMOOTH SCROLL
   ============================================================ */
html.lenis { height: auto; }
.lenis.lenis-smooth { scroll-behavior: auto; }
.lenis.lenis-smooth [data-lenis-prevent] { overscroll-behavior: contain; }
.lenis.lenis-stopped { overflow: hidden; }


/* Tall outer — gives scroll room for 5 slides */


/* Sticky panel — fills viewport, stays pinned */


/* Giant ghost year */


/* Progress bar */



/* Two-column layout centred in viewport */


/* LEFT */



[data-theme="light"] 


[data-theme="light"] 





/* RIGHT */


/* Cards — stacked, absolutely positioned */







[data-theme="light"] 

[data-theme="light"] 

/* Mobile */
@media (max-width: 768px) {
  
  
  
  
  
  
}

/* SplitText character animation */
.split-char {
  display: inline-block;
  overflow: hidden;
  vertical-align: bottom;
}
.split-char .char-inner {
  display: inline-block;
  transform: translateY(110%);
  transition: transform 0.7s cubic-bezier(0.16,1,0.3,1);
}
.split-char .char-inner.revealed {
  transform: translateY(0);
}

/* ============================================================
   FEATURE 4 — GLSL SHADER DISTORTION (hero overlay canvas)
   ============================================================ */
#shaderCanvas {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
  pointer-events: none;
  opacity: 0;
  transition: opacity 2s ease;
  mix-blend-mode: screen;
}
[data-theme="light"] #shaderCanvas { mix-blend-mode: multiply; opacity: 0 !important; }
#shaderCanvas.visible { opacity: 0.18; }

/* SplitText character animation */
.split-char {
  display: inline-block;
  overflow: hidden;
  vertical-align: bottom;
}
.split-char .char-inner {
  display: inline-block;
  transform: translateY(110%);
  transition: transform 0.7s cubic-bezier(0.16,1,0.3,1);
}
.split-char .char-inner.revealed {
  transform: translateY(0);
}


/* Outer scroll container — height = number of slides × viewport */
.journey-scroll-outer {
  position: relative;
  height: 500vh;
  z-index: 2;
}

/* Sticky viewport — stays fixed while outer scrolls */
.journey-sticky {
  position: sticky;
  top: 0;
  height: 100vh;
  width: 100%;
  overflow: hidden;
  background: var(--bg-0);
  display: flex;
  align-items: center;
  justify-content: center;
}

/* Giant background year number */
.journey-bg-year {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  font-family: 'Space Grotesk', sans-serif;
  font-size: clamp(18vw, 22vw, 26vw);
  font-weight: 700;
  color: var(--tx-1);
  opacity: 0.025;
  letter-spacing: -0.06em;
  pointer-events: none;
  user-select: none;
  transition: opacity 0.4s;
  will-change: transform;
}
[data-theme="light"] .journey-bg-year { opacity: 0.04; }

/* Thin progress bar at very top */
.journey-progress-bar {
  position: absolute;
  top: 0; left: 0; right: 0;
  height: 2px;
  background: var(--br-1);
  z-index: 10;
}
.journey-progress-fill {
  height: 100%;
  width: 0%;
  background: linear-gradient(90deg, var(--accent), var(--gr-3));
  box-shadow: 0 0 10px var(--gr-glow);
  transition: width 0.1s linear;
}

/* Two-column stage */
.journey-stage {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0;
  width: 100%;
  max-width: 1240px;
  padding: 0 4rem;
  position: relative;
  z-index: 2;
}

/* LEFT — year, location, nav dots */
.journey-left {
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding-right: 4rem;
  border-right: 1px solid var(--br-1);
  min-height: 60vh;
}
.jl-label {
  font-family: 'JetBrains Mono', monospace;
  font-size: 0.65rem;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: var(--accent);
  opacity: 0.8;
  margin-bottom: 2rem;
}
.jl-year {
  font-family: 'Space Grotesk', sans-serif;
  font-size: clamp(3.5rem, 7vw, 6rem);
  font-weight: 700;
  letter-spacing: -0.05em;
  color: var(--tx-1);
  line-height: 1;
  margin-bottom: 0.6rem;
  transition: all 0.5s cubic-bezier(0.16,1,0.3,1);
  will-change: transform, opacity;
}
.jl-loc {
  font-family: 'JetBrains Mono', monospace;
  font-size: 0.72rem;
  color: var(--tx-3);
  letter-spacing: 0.08em;
  margin-bottom: 3rem;
  transition: all 0.4s cubic-bezier(0.16,1,0.3,1);
}
[data-theme="light"] .jl-loc { color: #6b7280; }

/* Nav dots */
.jl-dot-row {
  display: flex;
  gap: 10px;
  align-items: center;
}
.jl-dot {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--br-2);
  transition: all 0.4s cubic-bezier(0.16,1,0.3,1);
  cursor: pointer;
}
.jl-dot.active {
  background: var(--accent);
  width: 24px;
  border-radius: 3px;
  box-shadow: 0 0 8px var(--gr-glow);
}

/* RIGHT — cards stack */
.journey-right {
  position: relative;
  padding-left: 4rem;
  min-height: 60vh;
  height: 60vh;
}

.jr-card {
  position: absolute;
  top: 0;
  left: 4rem;
  right: 0;
  bottom: 0;
  display: flex;
  flex-direction: column;
  justify-content: center;
  transform: translateY(40px);
  opacity: 0;
  pointer-events: none;
  transition:
    opacity 0.55s cubic-bezier(0.16,1,0.3,1),
    transform 0.55s cubic-bezier(0.16,1,0.3,1);
  will-change: opacity, transform;
}
.jr-card.active {
  opacity: 1;
  transform: translateY(0);
  pointer-events: auto;
}
.jr-card.exit {
  opacity: 0;
  transform: translateY(-40px);
}

.jr-tag {
  display: inline-block;
  font-family: 'JetBrains Mono', monospace;
  font-size: 0.6rem;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--accent);
  border: 1px solid var(--gr-border);
  border-radius: 3px;
  padding: 0.22rem 0.6rem;
  margin-bottom: 1.5rem;
}
.jr-tag--open {
  background: var(--gr-dim);
  color: var(--gr-2);
  border-color: var(--gr-1);
}
.jr-title {
  font-family: 'Space Grotesk', sans-serif;
  font-size: clamp(1.8rem, 3.2vw, 2.6rem);
  font-weight: 700;
  letter-spacing: -0.03em;
  color: var(--tx-1);
  line-height: 1.1;
  margin-bottom: 1.4rem;
}
[data-theme="light"] .jr-title { color: #030712; }
.jr-body {
  font-size: 0.95rem;
  font-weight: 300;
  line-height: 1.9;
  color: var(--tx-3);
  max-width: 480px;
}
[data-theme="light"] .jr-body { color: #374151; }

/* Mobile — stack vertically */
@media (max-width: 768px) {
  .journey-scroll-outer { height: 600vh; }
  .journey-stage {
    grid-template-columns: 1fr;
    padding: 0 1.5rem;
    gap: 2rem;
    align-items: start;
    padding-top: 6rem;
  }
  .journey-left {
    border-right: none;
    border-bottom: 1px solid var(--br-1);
    padding-right: 0;
    padding-bottom: 2rem;
    min-height: auto;
  }
  .journey-right { padding-left: 0; min-height: 40vh; height: 40vh; }
  .jr-card { left: 0; }
  .jl-year { font-size: clamp(2.5rem, 10vw, 4rem); }
}

/* Journey section */
.jd {
  width: 7px; height: 7px; border-radius: 50%;
  background: var(--br-2); cursor: pointer;
  transition: all 0.35s cubic-bezier(0.16,1,0.3,1);
  border: 1px solid transparent;
}
.jd.on {
  width: 24px; border-radius: 4px;
  background: var(--accent);
  box-shadow: 0 0 10px var(--gr-glow);
}
.jc {
  /* JS handles all transitions on these cards */
  will-change: opacity, transform;
}
.jt {
  display: inline-block;
  font-family: 'JetBrains Mono', monospace;
  font-size: 0.6rem; letter-spacing: 0.14em;
  text-transform: uppercase; color: var(--accent);
  border: 1px solid var(--gr-border); border-radius: 3px;
  padding: 0.2rem 0.55rem; margin-bottom: 1.4rem;
}
.jt.open { background: var(--gr-dim); border-color: var(--gr-1); }
.jh {
  font-family: 'Space Grotesk', sans-serif;
  font-size: clamp(1.8rem, 3vw, 2.6rem);
  font-weight: 700; letter-spacing: -0.03em;
  color: var(--tx-1); line-height: 1.1; margin-bottom: 1.3rem;
}
[data-theme="light"] .jh { color: #030712; }
.jb {
  font-size: 0.93rem; font-weight: 300;
  line-height: 1.9; color: var(--tx-3); max-width: 440px;
}
[data-theme="light"] .jb { color: #374151; }

/* Journey depth & atmosphere */
#journey .jh {
  text-shadow: 0 2px 40px rgba(34,197,94,0.08);
}
#jYear {
  will-change: opacity, transform, filter;
}
#jLoc {
  will-change: opacity, transform;
}
#jBgYr {
  will-change: opacity, transform;
  transition: opacity 0.6s ease, transform 0.8s cubic-bezier(0.16,1,0.3,1);
}
/* Scroll hint */
#journey::after {
  content: 'scroll to explore';
  position: absolute;
  bottom: 2rem;
  left: 50%;
  transform: translateX(-50%);
  font-family: 'JetBrains Mono', monospace;
  font-size: 0.55rem;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: var(--tx-4);
  opacity: 0.5;
  pointer-events: none;
}

/* Legacy hero — hide if present */
.hero-visual, .floating-card, .hero-badge,
.hero-subtitle, .hero-buttons, .hero-location,
.typing-cursor, .hero-container, .hero-content { display: none !important; }

/* Scroll transition system — sections */
section[id] {
  position: relative;
}

/* Section titles — clip-path reveal */
.section-title {
  will-change: clip-path;
}

/* Horizontal accent line that grows in when section enters */
.section-label {
  will-change: opacity, transform;
  display: block;
  position: relative;
}
.section-label::before {
  content: '';
  position: absolute;
  left: -2rem;
  top: 50%;
  width: 0;
  height: 1px;
  background: var(--accent);
  transition: width 0.6s cubic-bezier(0.16,1,0.3,1) 0.2s;
}

/* Ghost section numbers */
.section-num {
  pointer-events: none;
  user-select: none;
}

/* ── BUTTONS — restored ─────────────────────────────────────── */
.btn {
  display: inline-block;
  font-family: 'Geist', 'Inter', sans-serif;
  font-size: 0.82rem;
  font-weight: 500;
  letter-spacing: 0.03em;
  border-radius: 5px;
  border: none;
  transition: background 0.2s, box-shadow 0.2s, transform 0.15s;
  cursor: pointer;
}
.btn-primary {
  background: var(--accent);
  color: #fff;
  padding: 0.65rem 1.4rem;
}
.btn-primary:hover {
  background: var(--accent-h);
  box-shadow: var(--sh-ac);
  transform: translateY(-1px);
}
[data-theme="light"] .btn-primary { color: #fff; }
.btn-large {
  font-size: 0.9rem !important;
  padding: 0.8rem 1.8rem !important;
}

/* ── PROJECT CARDS — upgrades ───────────────────────────────── */
.project-visit-btn {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  margin-top: 1.2rem;
  font-family: 'JetBrains Mono', monospace;
  font-size: 0.7rem;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--accent);
  border: 1px solid var(--gr-border);
  border-radius: 3px;
  padding: 0.45rem 0.9rem;
  transition: background 0.2s, box-shadow 0.2s, transform 0.15s;
}
.project-visit-btn:hover {
  background: var(--gr-dim);
  box-shadow: 0 0 16px var(--gr-glow);
  transform: translateY(-1px);
}

.drone-click-hint {
  font-family: 'JetBrains Mono', monospace;
  font-size: 0.62rem;
  color: var(--accent);
  opacity: 0.7;
  letter-spacing: 0.08em;
}
.drone-pulse-hint {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  margin-top: 1.2rem;
  font-family: 'JetBrains Mono', monospace;
  font-size: 0.6rem;
  letter-spacing: 0.1em;
  color: var(--tx-3);
}
.dp-dot {
  width: 6px; height: 6px;
  background: var(--accent);
  border-radius: 50%;
  animation: dotPulse 1.8s ease-in-out infinite;
}

/* ── DRONE MODAL ─────────────────────────────────────────────── */
.drone-modal {
  position: fixed;
  inset: 0;
  z-index: 9999;
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.35s ease;
}
.drone-modal.open {
  opacity: 1;
  pointer-events: auto;
}
.drone-modal-backdrop {
  position: absolute;
  inset: 0;
  background: rgba(0,0,0,0.85);
  backdrop-filter: blur(4px);
}
.drone-modal-panel {
  position: relative;
  z-index: 1;
  width: min(860px, 94vw);
  max-height: 90vh;
  background: var(--bg-1);
  border: 1px solid var(--br-2);
  border-radius: 12px;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  padding: 2.5rem 2.5rem 1.5rem;
  gap: 0;
}
.drone-modal-close {
  position: absolute;
  top: 1.2rem; right: 1.2rem;
  background: transparent;
  border: 1px solid var(--br-2);
  color: var(--tx-3);
  width: 32px; height: 32px;
  border-radius: 50%;
  font-size: 0.75rem;
  display: flex; align-items: center; justify-content: center;
  cursor: pointer;
  transition: border-color 0.2s, color 0.2s;
}
.drone-modal-close:hover { border-color: var(--accent); color: var(--accent); }

/* Progress dots */
.dm-dots {
  display: flex;
  gap: 6px;
  margin-bottom: 2rem;
}
.dm-dot {
  height: 2px;
  flex: 1;
  background: var(--br-2);
  border-radius: 2px;
  transition: background 0.3s;
}
.dm-dot.active { background: var(--accent); }

/* Steps */
.dm-steps { position: relative; flex: 1; }
.dm-step {
  display: none;
  animation: dmIn 0.5s cubic-bezier(0.16,1,0.3,1) forwards;
}
.dm-step.active { display: block; }
@keyframes dmIn {
  from { opacity: 0; transform: translateY(20px); }
  to   { opacity: 1; transform: translateY(0); }
}

/* Visual area */
.dm-visual {
  height: 160px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 1.5rem;
  background: var(--bg-2);
  border-radius: 8px;
  border: 1px solid var(--br-1);
  overflow: hidden;
  position: relative;
}

/* Drone SVG */
.dm-drone-svg svg {
  width: 200px;
  height: 120px;
  animation: droneHover 3s ease-in-out infinite;
}
@keyframes droneHover {
  0%,100% { transform: translateY(0); }
  50% { transform: translateY(-8px); }
}
.rotor { animation: rotorSpin 0.3s linear infinite; transform-origin: center; }

/* Build animation */
.dm-build-anim {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  justify-content: center;
  padding: 1rem;
}
.dm-part {
  font-family: 'JetBrains Mono', monospace;
  font-size: 0.6rem;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--accent);
  border: 1px solid var(--gr-border);
  border-radius: 4px;
  padding: 0.3rem 0.6rem;
  opacity: 0;
  transform: scale(0.8);
  animation: partIn 0.4s cubic-bezier(0.16,1,0.3,1) forwards;
}
.dm-frame   { animation-delay: 0.1s; }
.dm-motors  { animation-delay: 0.25s; }
.dm-fc      { animation-delay: 0.4s; }
.dm-esc     { animation-delay: 0.55s; }
.dm-sensor  { animation-delay: 0.7s; background: var(--gr-dim); }
@keyframes partIn {
  to { opacity: 1; transform: scale(1); }
}

/* Thermal field view */
.dm-thermal-view {
  width: 100%;
  height: 100%;
  position: relative;
  background: #020f02;
}
.dm-field {
  width: 100%;
  height: 100%;
  position: relative;
}
.dm-bush {
  position: absolute;
  border-radius: 50% 50% 30% 30%;
  background: #0a2a0a;
  border: 1px solid #0f3d0f;
}
.b1 { width: 80px; height: 50px; bottom: 20px; left: 40px; }
.b2 { width: 60px; height: 40px; bottom: 25px; left: 140px; }
.b3 { width: 90px; height: 55px; bottom: 15px; right: 60px; }
.dm-heat-sig {
  position: absolute;
  width: 16px; height: 16px;
  background: #ff6600;
  border-radius: 50%;
  box-shadow: 0 0 12px #ff4400, 0 0 24px #ff220044;
  animation: heatPulse 2s ease-in-out infinite;
}
.h1 { bottom: 38px; left: 64px; animation-delay: 0s; }
.h2 { bottom: 42px; right: 88px; animation-delay: 0.8s; }
.dm-heat-ring {
  position: absolute;
  inset: -6px;
  border: 1px solid rgba(255,100,0,0.4);
  border-radius: 50%;
  animation: heatRing 2s ease-out infinite;
}
@keyframes heatPulse {
  0%,100% { box-shadow: 0 0 12px #ff4400, 0 0 24px #ff220044; }
  50% { box-shadow: 0 0 20px #ff6600, 0 0 40px #ff440066; }
}
@keyframes heatRing {
  0% { transform: scale(1); opacity: 0.8; }
  100% { transform: scale(2.5); opacity: 0; }
}
.dm-scanline {
  position: absolute;
  top: 0; left: 0; right: 0;
  height: 2px;
  background: linear-gradient(90deg, transparent, rgba(34,197,94,0.4), transparent);
  animation: scan 3s linear infinite;
}
@keyframes scan {
  0% { top: 0; }
  100% { top: 100%; }
}

/* Code block */
.dm-code-block {
  font-family: 'JetBrains Mono', monospace;
  font-size: 0.68rem;
  line-height: 1.7;
  padding: 1rem 1.5rem;
  text-align: left;
  width: 100%;
}
.dm-code-line { color: var(--tx-2); }
.dm-code-gap { height: 0.5rem; }
.dc-indent { padding-left: 1.4rem; }
.dc-indent2 { padding-left: 2.8rem; }
.dc-kw  { color: #c586c0; }
.dc-fn  { color: #dcdcaa; }
.dc-mod { color: #9cdcfe; }
.dc-cm  { color: var(--tx-4); font-style: italic; }
.dc-num { color: #b5cea8; }
.dc-op  { color: var(--accent); }

/* Result animation */
.dm-result-anim {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1.2rem;
}
.dm-result-circle {
  position: relative;
  width: 70px; height: 70px;
  display: flex; align-items: center; justify-content: center;
}
.dm-result-circle svg {
  position: absolute;
  inset: 0;
  animation: ringFill 1.5s cubic-bezier(0.16,1,0.3,1) 0.2s forwards;
}
@keyframes ringFill {
  to { stroke-dashoffset: 0; }
}
.dm-result-ring { transition: stroke-dashoffset 1.5s; }
.dm-result-icon {
  font-size: 1.4rem;
  color: var(--accent);
  z-index: 1;
  animation: iconPop 0.4s cubic-bezier(0.16,1,0.3,1) 1.2s both;
}
@keyframes iconPop {
  from { transform: scale(0); opacity: 0; }
  to   { transform: scale(1); opacity: 1; }
}
.dm-result-stats {
  display: flex;
  gap: 2rem;
}
.dm-stat { display: flex; flex-direction: column; align-items: center; gap: 0.2rem; }
.dm-stat-n {
  font-family: 'Space Grotesk', sans-serif;
  font-size: 1.1rem;
  font-weight: 700;
  color: var(--accent);
}
.dm-stat-l {
  font-family: 'JetBrains Mono', monospace;
  font-size: 0.55rem;
  letter-spacing: 0.1em;
  color: var(--tx-4);
  text-transform: uppercase;
}

/* Step text */
.dm-tag {
  font-family: 'JetBrains Mono', monospace;
  font-size: 0.6rem;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--accent);
  opacity: 0.7;
  margin-bottom: 0.6rem;
}
.dm-title {
  font-family: 'Space Grotesk', sans-serif;
  font-size: clamp(1.3rem, 2.5vw, 1.8rem);
  font-weight: 700;
  letter-spacing: -0.02em;
  color: var(--tx-1);
  margin-bottom: 0.8rem;
  line-height: 1.15;
}
.dm-body {
  font-size: 0.88rem;
  font-weight: 300;
  line-height: 1.85;
  color: var(--tx-3);
  max-width: 600px;
}

/* Nav */
.dm-nav {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-top: 1.5rem;
  padding-top: 1rem;
  border-top: 1px solid var(--br-1);
}
.dm-btn {
  font-family: 'JetBrains Mono', monospace;
  font-size: 0.65rem;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  background: transparent;
  border: 1px solid var(--br-2);
  color: var(--tx-2);
  padding: 0.45rem 1rem;
  border-radius: 3px;
  cursor: pointer;
  transition: border-color 0.2s, color 0.2s;
}
.dm-btn:hover:not(:disabled) { border-color: var(--accent); color: var(--accent); }
.dm-btn:disabled { opacity: 0.3; cursor: default; }

/* Mobile nav background fix */
@media (max-width: 768px) {
  .nav-menu.active {
    background: var(--nav-bg);
    backdrop-filter: blur(20px);
    border-top: 1px solid var(--br-1);
  }
}

/* ── MOBILE: hero animations don't wait for intro ────────────── */
@media (max-width: 768px) {
  .hf-topbar  { animation-delay: 0.3s !important; }
  .hf-label   { animation-delay: 0.4s !important; }
  .hf-line.hf-muhammed { animation-delay: 0.5s !important; }
  .hf-line.hf-line2    { animation-delay: 0.65s !important; }
  .hf-sub     { animation-delay: 0.8s !important; }
  .hf-bottom  { animation-delay: 0.9s !important; }
  .hf-corner  { animation-delay: 1s !important; }
}

/* ── REDUCED MOTION: same fast delays ─────────────────────────── */
@media (prefers-reduced-motion: reduce) {
  .hf-topbar, .hf-label, .hf-line, .hf-sub, .hf-bottom, .hf-corner {
    animation-delay: 0.1s !important;
    animation-duration: 0.01s !important;
  }
}

/* Mobile — hide intro completely, hero animates immediately */
@media (max-width: 767px) {
  .intro { display: none !important; }
  
  /* Hero animations start immediately on mobile (no intro delay) */
  .hf-topbar {
    opacity: 0;
    animation: hfIn 0.6s ease 0.2s forwards !important;
  }
  .hf-label {
    opacity: 0;
    animation: hfIn 0.5s ease 0.3s forwards !important;
  }
  .hf-line {
    opacity: 0;
    transform: translateY(50px);
    animation: hfSlide 0.7s cubic-bezier(0.16,1,0.3,1) 0.4s forwards !important;
  }
  .hf-line2 {
    animation-delay: 0.55s !important;
  }
  .hf-sub {
    opacity: 0;
    animation: hfIn 0.5s ease 0.7s forwards !important;
  }
  .hf-bottom {
    opacity: 0;
    animation: hfIn 0.5s ease 0.85s forwards !important;
  }
  .hf-corner {
    opacity: 0;
    animation: hfIn 0.3s ease 0.95s forwards !important;
  }
}
