/* Base Theme */
:root {
  --bg: #0d1117;
  --bg-alt: #161b22;
  --bg-accent: linear-gradient(135deg,#1f2937,#111827 55%,#0d1117);
  --text: #d1d5db;
  --text-strong: #f5f7fa;
  --accent: #3b82f6;
  --accent-accent: #6366f1;
  --accent-grad: linear-gradient(90deg,#3b82f6,#6366f1 60%,#8b5cf6);
  --danger: #ef4444;
  --ok: #10b981;
  --border: #1f2937;
  --radius-sm: 6px;
  --radius: 12px;
  --radius-lg: 28px;
  --shadow-sm: 0 2px 4px -2px rgba(0,0,0,.5),0 1px 2px -1px rgba(0,0,0,.4);
  --shadow: 0 4px 18px -4px rgba(0,0,0,.55),0 2px 4px -1px rgba(0,0,0,.35);
  --fw-reg: 400; --fw-med: 500; --fw-semi:600; --fw-bold:700; --fw-xbold:800;
  font-family: 'Inter',system-ui,-apple-system,Segoe UI,Roboto,sans-serif;
} 

html,body {margin:0;padding:0;background:var(--bg);color:var(--text);font-size:16px;scroll-behavior:smooth;}
body {min-height:100dvh;}
img {max-width:100%;display:block;border-radius:var(--radius-sm);}a {color:var(--accent);text-decoration:none;}a:hover{color:#60a5fa;}

/* Layout */
.container {width:min(1200px,90%);margin-inline:auto;}
.site-header {position:sticky;top:0;z-index:50;background:rgba(13,17,23,.72);backdrop-filter:saturate(180%) blur(18px);border-bottom:1px solid var(--border);} 
.nav {display:flex;align-items:center;justify-content:space-between;gap:1.25rem;padding:.75rem 0;}
.brand {display:flex;align-items:center;gap:.75rem;font-weight:var(--fw-bold);font-size:1.15rem;letter-spacing:.5px;}
.brand .accent {color:var(--accent);}
.avatar {width:42px;height:42px;border-radius:50%;border:2px solid #1f2937;box-shadow:0 0 0 2px rgba(59,130,246,.3);} 
.nav-links {display:flex;list-style:none;gap:1rem;margin:0;padding:0;align-items:center;}
.nav-links a {padding:.55rem .9rem;border-radius:var(--radius-sm);font-weight:var(--fw-med);}
.nav-links a:hover,.nav-links a:focus-visible {background:var(--bg-alt);}
.nav-toggle {display:none;background:var(--bg-alt);color:var(--text);border:1px solid var(--border);padding:.5rem .85rem;font-size:1.1rem;border-radius:var(--radius-sm);}

.hero {display:grid;gap:3rem;padding:5rem 0 3.5rem;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));align-items:center;}
.hero-text h1 {margin:0 0 .9rem;font-size:clamp(2.4rem,6vw,3.6rem);line-height:1.05;font-weight:var(--fw-xbold);}
.gradient {background:var(--accent-grad);-webkit-background-clip:text;background-clip:text;color:transparent;}
.tagline {font-size:1.15rem;max-width:52ch;line-height:1.4;}
.hero-cta {display:flex;gap:1rem;margin:1.6rem 0 1.2rem;flex-wrap:wrap;}
.socials {display:flex;gap:1.1rem;font-size:.95rem;font-weight:var(--fw-semi);}
.socials a {position:relative;padding:.3rem 0;}
.socials a::after {content:"";position:absolute;left:0;bottom:0;width:0;height:2px;background:var(--accent-grad);transition:.3s width;}
.socials a:hover::after {width:100%;}
.hero-media {display:flex;justify-content:center;}
.glass {background:linear-gradient(140deg,rgba(255,255,255,.06),rgba(255,255,255,.02));border:1px solid rgba(255,255,255,.08);border-radius:var(--radius);padding:1.25rem;box-shadow:var(--shadow);position:relative;overflow:hidden;}
.glass::before {content:"";position:absolute;inset:0;background:radial-gradient(circle at 20% 15%,rgba(255,255,255,.12),transparent 60%);mix-blend-mode:overlay;pointer-events:none;}
.card.highlight h2.small {font-size:.75rem;letter-spacing:1.5px;text-transform:uppercase;color:var(--accent);margin:0 0 .5rem;font-weight:var(--fw-bold);}
.mini-stats {list-style:none;display:flex;gap:1.5rem;margin:0 0 1rem;padding:0;font-size:.85rem;text-align:center;}
.mini-stats li {display:flex;flex-direction:column;gap:.2rem;min-width:60px;}
.mini-stats span {font-size:1.4rem;font-weight:var(--fw-bold);}
.status-pill {display:inline-block;background:var(--bg-alt);padding:.4rem .75rem;border-radius:999px;font-size:.7rem;letter-spacing:1px;text-transform:uppercase;border:1px solid var(--border);}
.status-pill.ready {background:linear-gradient(90deg,#065f46,#047857);color:#ecfdf5;border-color:#065f46;}

.section {padding:3.5rem 0 2.5rem;}
.section-head {display:flex;flex-direction:column;gap:.45rem;margin-bottom:1.75rem;}
.section-head h2 {margin:0;font-size:1.9rem;letter-spacing:.5px;font-weight:var(--fw-bold);}
.section-sub {margin:0;font-size:.95rem;color:#9ca3af;max-width:65ch;}

.lead {font-size:1.05rem;line-height:1.55;}
.about-grid {display:grid;gap:2.5rem;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));align-items:start;}
.about-side h3 {margin:0 0 .65rem;font-size:1rem;text-transform:uppercase;letter-spacing:1px;color:var(--accent);}
.checklist {list-style:none;margin:0 0 1.2rem;padding:0;display:grid;gap:.5rem;font-size:.9rem;}
.checklist li {position:relative;padding-left:1.3rem;}
.checklist li::before {content:'✔';position:absolute;left:0;top:0;font-size:.8rem;color:var(--ok);} 
.tags {display:flex;flex-wrap:wrap;list-style:none;margin:.4rem 0 0;padding:0;gap:.5rem;}
.tags li {background:var(--bg-alt);padding:.45rem .7rem;border-radius:var(--radius-sm);font-size:.7rem;letter-spacing:.5px;text-transform:uppercase;border:1px solid var(--border);}

.skill-chips {display:flex;flex-wrap:wrap;gap:.6rem;}
.skill-chips span {background:linear-gradient(135deg,#1f2937,#111827);padding:.55rem .85rem;font-size:.75rem;letter-spacing:.5px;text-transform:uppercase;border-radius:var(--radius-sm);border:1px solid #222f3b;box-shadow:var(--shadow-sm);}

/* Experience Section Styles */
.experience-timeline {display:flex;flex-direction:column;gap:3rem;}
.experience-card {background:linear-gradient(135deg,#111827,#0f172a);border:1px solid #1e293b;border-radius:var(--radius);padding:2rem;box-shadow:var(--shadow);position:relative;overflow:hidden;}
.experience-card::before {content:"";position:absolute;inset:0;background:radial-gradient(circle at 20% 15%,rgba(255,255,255,.08),transparent 60%);opacity:.5;pointer-events:none;}

/* Current Position Highlighting */
.experience-card.current-position {background:linear-gradient(135deg,#1e3a8a,#1e40af);border:1px solid #3b82f6;box-shadow:var(--shadow),0 0 0 1px rgba(59,130,246,.2);}
.experience-card.current-position::before {background:radial-gradient(circle at 20% 15%,rgba(255,255,255,.15),transparent 60%);}

.experience-header {display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1.5rem;flex-wrap:wrap;gap:1rem;}
.company-info h3 {margin:0 0 .4rem;font-size:1.4rem;font-weight:var(--fw-bold);color:var(--text-strong);}
.company-info .role {margin:0 0 .3rem;font-size:1rem;color:var(--accent);font-weight:var(--fw-semi);}
.company-info .duration {margin:0;font-size:.85rem;color:#9ca3af;}
.experience-meta {display:flex;gap:.6rem;flex-wrap:wrap;}
.industry-tag, .type-tag, .current-tag {font-size:.65rem;padding:.4rem .7rem;border-radius:999px;letter-spacing:.5px;text-transform:uppercase;font-weight:var(--fw-semi);}
.industry-tag {background:linear-gradient(90deg,#065f46,#047857);color:#ecfdf5;}
.type-tag {background:linear-gradient(90deg,#1e40af,#3b82f6);color:#dbeafe;}
.current-tag {background:linear-gradient(90deg,#dc2626,#ef4444);color:#fef2f2;animation:pulse-glow 2s ease-in-out infinite;}

@keyframes pulse-glow {
  0%, 100% { box-shadow: 0 0 5px rgba(239,68,68,.3); }
  50% { box-shadow: 0 0 15px rgba(239,68,68,.6); }
}

.experience-overview {margin-bottom:2rem;}
.experience-overview .lead {margin:0;font-size:1.05rem;line-height:1.55;color:#d1d5db;}

.projects-showcase, .additional-contributions, .core-responsibilities, .current-responsibilities, .project-focus {margin-bottom:2.5rem;}
.projects-showcase h4, .additional-contributions h4, .core-responsibilities h4, .current-responsibilities h4, .project-focus h4 {margin:0 0 1.2rem;font-size:1.1rem;color:var(--accent);font-weight:var(--fw-bold);letter-spacing:.5px;}

.project-highlight {background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.1);border-radius:var(--radius-sm);padding:1.2rem;margin-bottom:1rem;}
.project-highlight h5 {margin:0 0 .8rem;font-size:1rem;color:var(--text-strong);font-weight:var(--fw-semi);}
.project-highlight p {margin:0 0 .6rem;font-size:.9rem;line-height:1.4;}
.project-highlight p:last-child {margin-bottom:0;}

.impact-metrics {display:flex;flex-wrap:wrap;gap:.8rem;margin-top:1rem;}
.metric {display:flex;align-items:center;gap:.5rem;font-size:.8rem;color:#d1d5db;}
.metric-icon {font-size:1rem;}

.tech-features {display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.8rem;}
.tech-features span {background:rgba(59,130,246,.1);color:#93c5fd;padding:.3rem .6rem;border-radius:var(--radius-sm);font-size:.7rem;border:1px solid rgba(59,130,246,.2);}

.contributions-grid {display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1rem;}
.contribution-item {background:rgba(255,255,255,.02);border:1px solid rgba(255,255,255,.08);border-radius:var(--radius-sm);padding:1rem;}
.contribution-item h6 {margin:0 0 .6rem;font-size:.9rem;color:var(--text-strong);font-weight:var(--fw-semi);}
.contribution-item p {margin:0 0 .8rem;font-size:.8rem;line-height:1.4;color:#d1d5db;}

.tech-stack-mini {display:flex;flex-wrap:wrap;gap:.4rem;}
.tech-stack-mini span {background:rgba(255,255,255,.05);color:#9ca3af;padding:.25rem .5rem;border-radius:var(--radius-sm);font-size:.65rem;border:1px solid rgba(255,255,255,.1);}

.responsibilities-list {display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem;}
.resp-category h6 {margin:0 0 .8rem;font-size:.9rem;color:var(--accent);font-weight:var(--fw-semi);text-transform:uppercase;letter-spacing:.5px;}
.resp-category ul {list-style:none;margin:0;padding:0;display:grid;gap:.5rem;}
.resp-category li {position:relative;padding-left:1.2rem;font-size:.85rem;line-height:1.4;color:#d1d5db;}
.resp-category li::before {content:'•';position:absolute;left:0;top:0;color:var(--accent);font-weight:bold;}

.tech-stack-used, .tech-stack-gaming {margin-top:2rem;}
.tech-stack-used h4 {margin:0 0 1rem;font-size:1rem;color:var(--accent);font-weight:var(--fw-bold);}
.tech-chips {display:flex;flex-wrap:wrap;gap:.6rem;}
.tech-chips span {background:linear-gradient(135deg,#1f2937,#111827);padding:.5rem .75rem;font-size:.7rem;letter-spacing:.5px;text-transform:uppercase;border-radius:var(--radius-sm);border:1px solid #222f3b;color:#d1d5db;}
.tech-chips .primary-tech {background:linear-gradient(135deg,#1e40af,#3b82f6);color:#dbeafe;border-color:#1e40af;}

/* Video Showcase Styles */
.project-video {margin-top:2rem;margin-bottom:2rem;}
.project-video h4, .project-video h5 {margin:0 0 1rem;font-size:1rem;color:var(--accent);font-weight:var(--fw-bold);letter-spacing:.5px;}

.video-embed-container {margin-top:1rem;}
.video-showcase {display:block;position:relative;border-radius:var(--radius-sm);overflow:hidden;box-shadow:var(--shadow);transition:.35s transform, .35s box-shadow;text-decoration:none;background:#000;}
.video-showcase:hover {transform:translateY(-4px);box-shadow:0 8px 25px -6px rgba(0,0,0,.6);}

.video-showcase img {width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;display:block;transition:.3s opacity;}
.video-showcase:hover img {opacity:.8;}

.video-play-overlay {position:absolute;inset:0;background:linear-gradient(135deg,rgba(0,0,0,.4),rgba(0,0,0,.6));display:flex;align-items:center;justify-content:center;flex-direction:column;gap:1rem;opacity:0;transition:.3s opacity;}
.video-showcase:hover .video-play-overlay {opacity:1;}

.play-button {width:60px;height:60px;background:var(--accent);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.5rem;color:#fff;box-shadow:var(--shadow);transition:.3s transform;}
.video-showcase:hover .play-button {transform:scale(1.1);}

.video-info {text-align:center;color:#fff;max-width:80%;}
.video-title {display:block;font-size:.9rem;font-weight:var(--fw-semi);margin-bottom:.3rem;line-height:1.2;}
.video-meta {display:block;font-size:.75rem;color:#d1d5db;letter-spacing:.5px;text-transform:uppercase;}

.achievements-grid {display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.2rem;margin-bottom:2rem;}
.achievement {display:flex;gap:1rem;background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.1);border-radius:var(--radius-sm);padding:1.2rem;}
.achievement-icon {font-size:1.5rem;flex-shrink:0;display:flex;align-items:center;}
.achievement-content h5 {margin:0 0 .5rem;font-size:.9rem;color:var(--text-strong);font-weight:var(--fw-semi);}
.achievement-content p {margin:0;font-size:.8rem;line-height:1.4;color:#d1d5db;}

.responsibilities-gaming {display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem;margin-bottom:1.5rem;}
.resp-gaming h5 {margin:0 0 .8rem;font-size:.9rem;color:var(--accent);font-weight:var(--fw-semi);text-transform:uppercase;letter-spacing:.5px;}
.resp-gaming ul {list-style:none;margin:0;padding:0;display:grid;gap:.5rem;}
.resp-gaming li {position:relative;padding-left:1.2rem;font-size:.85rem;line-height:1.4;color:#d1d5db;}
.resp-gaming li::before {content:'•';position:absolute;left:0;top:0;color:var(--accent);font-weight:bold;}

/* Responsive Experience Section */
@media (max-width: 760px) {
  .experience-header {flex-direction:column;align-items:flex-start;}
  .impact-metrics {flex-direction:column;gap:.6rem;}
  .contributions-grid, .achievements-grid, .responsibilities-list, .responsibilities-gaming {grid-template-columns:1fr;}
}

/* Side Projects Section Styles */
.side-projects-grid {display:flex;flex-direction:column;gap:3rem;}
.project-category {background:rgba(255,255,255,.02);border:1px solid rgba(255,255,255,.08);border-radius:var(--radius);padding:2rem;box-shadow:var(--shadow-sm);}
.category-title {margin:0 0 1.5rem;font-size:1.2rem;color:var(--accent);font-weight:var(--fw-bold);display:flex;align-items:center;gap:.5rem;}

.video-projects-grid, .code-projects-grid {display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.5rem;}

.side-project-card {background:linear-gradient(135deg,#111827,#0f172a);border:1px solid #1e293b;border-radius:var(--radius-sm);overflow:hidden;box-shadow:var(--shadow);transition:.35s transform, .35s box-shadow;position:relative;}
.side-project-card::before {content:"";position:absolute;inset:0;background:radial-gradient(circle at 20% 15%,rgba(255,255,255,.08),transparent 60%);opacity:.3;pointer-events:none;}
.side-project-card:hover {transform:translateY(-4px);box-shadow:0 8px 25px -6px rgba(0,0,0,.4);}

/* Video Project Cards */
.video-project .video-thumbnail {position:relative;aspect-ratio:16/9;overflow:hidden;}
.video-thumbnail img {width:100%;height:100%;object-fit:cover;transition:.3s transform;}
.video-thumbnail:hover img {transform:scale(1.05);}
.play-overlay {position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:rgba(0,0,0,.3);color:#fff;font-size:2rem;opacity:0;transition:.3s opacity;}
.video-thumbnail:hover .play-overlay {opacity:1;}

/* Code Project Cards */
.code-project {display:flex;flex-direction:column;}
.project-icon {display:flex;align-items:center;justify-content:center;padding:1.5rem;background:linear-gradient(135deg,rgba(59,130,246,.1),rgba(99,102,241,.1));border-bottom:1px solid rgba(255,255,255,.08);}
.project-icon .icon {font-size:2rem;}

.project-content {padding:1.2rem;flex:1;display:flex;flex-direction:column;gap:.8rem;}
.project-content h4 {margin:0;font-size:1rem;color:var(--text-strong);font-weight:var(--fw-semi);line-height:1.2;}
.project-content p {margin:0;font-size:.85rem;line-height:1.4;color:#d1d5db;flex:1;}

.project-stats {display:flex;gap:1rem;font-size:.8rem;color:#9ca3af;}
.stat {display:flex;align-items:center;gap:.3rem;}
.stat-icon {font-size:.9rem;}

.project-tags {display:flex;flex-wrap:wrap;gap:.4rem;}
.project-tags span {background:rgba(59,130,246,.1);color:#93c5fd;padding:.25rem .5rem;border-radius:var(--radius-sm);font-size:.65rem;border:1px solid rgba(59,130,246,.2);letter-spacing:.3px;text-transform:uppercase;}

.project-links {display:flex;gap:.6rem;margin-top:.5rem;}
.project-link {font-size:.75rem;font-weight:var(--fw-semi);padding:.5rem .8rem;border-radius:var(--radius-sm);text-decoration:none;letter-spacing:.3px;text-transform:uppercase;transition:.3s all;display:inline-flex;align-items:center;gap:.3rem;}
.project-link.primary {background:var(--accent);color:#fff;border:1px solid var(--accent);}
.project-link.primary:hover {background:#2563eb;transform:translateY(-1px);}
.project-link:not(.primary) {background:rgba(255,255,255,.05);color:var(--text);border:1px solid rgba(255,255,255,.1);}
.project-link:not(.primary):hover {background:rgba(255,255,255,.1);}

.side-projects-cta {text-align:center;margin-top:2.5rem;padding:2rem;background:rgba(255,255,255,.02);border:1px solid rgba(255,255,255,.08);border-radius:var(--radius);box-shadow:var(--shadow-sm);}
.cta-text {margin:0 0 1rem;font-size:1rem;color:var(--text);line-height:1.4;}

/* Responsive Side Projects */
@media (max-width: 760px) {
  .video-projects-grid, .code-projects-grid {grid-template-columns:1fr;}
  .project-category {padding:1.5rem;}
  .side-projects-cta {padding:1.5rem;}
}

.filters {display:flex;flex-wrap:wrap;gap:1rem;margin-bottom:1.5rem;align-items:center;}
.filters input,.filters select {background:var(--bg-alt);border:1px solid var(--border);color:var(--text);padding:.65rem .85rem;border-radius:var(--radius-sm);font:inherit;min-width:220px;}

.projects-grid {display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.4rem;}
.project-card {position:relative;display:flex;flex-direction:column;gap:.75rem;padding:1.1rem 1rem 1.25rem;background:linear-gradient(150deg,#111827,#0f172a);border:1px solid #1e293b;border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden;transition:.35s transform, .35s box-shadow;}
.project-card::before {content:"";position:absolute;inset:0;background:radial-gradient(circle at 20% 15%,rgba(255,255,255,.12),transparent 60%);opacity:.35;pointer-events:none;}
.project-card:hover {transform:translateY(-6px);box-shadow:0 10px 30px -6px rgba(0,0,0,.55),0 4px 8px -2px rgba(0,0,0,.4);}
.project-card h3 {margin:0;font-size:1rem;font-weight:var(--fw-bold);color:var(--text-strong);}
.project-card p {margin:0;font-size:.8rem;line-height:1.35;color:#9ca3af;}
.project-meta {display:flex;flex-wrap:wrap;gap:.6rem;margin-top:auto;font-size:.65rem;letter-spacing:.5px;text-transform:uppercase;}
.project-meta span {background:rgba(255,255,255,.06);padding:.35rem .55rem;border-radius:999px;border:1px solid rgba(255,255,255,.1);} 
.project-links {display:flex;gap:.6rem;margin-top:.7rem;}
.project-links a {font-size:.7rem;font-weight:var(--fw-semi);padding:.45rem .7rem;border-radius:var(--radius-sm);background:var(--accent);color:#fff;letter-spacing:.5px;text-transform:uppercase;display:inline-flex;align-items:center;gap:.35rem;}
.project-links a.secondary {background:#374151;}
.project-links a:hover {filter:brightness(1.1);} 

.skeleton {animation:pulseBg 1.6s ease-in-out infinite;background:linear-gradient(90deg,#1f2937,#111827,#1f2937);background-size:200% 100%;min-height:200px;}
.skeleton .pulse {display:none;}
@keyframes pulseBg {0%{background-position:0 0;}50%{background-position:100% 0;}100%{background-position:0 0;}}

.video-grid {display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.3rem;}
.video-card {background:#111827;border:1px solid #1e293b;border-radius:var(--radius);overflow:hidden;display:flex;flex-direction:column;box-shadow:var(--shadow);transition:.35s transform, .35s box-shadow;}
.video-card:hover {transform:translateY(-5px);box-shadow:0 10px 28px -6px rgba(0,0,0,.6);}
.video-card h3 {margin:.75rem .9rem .4rem;font-size:.85rem;line-height:1.25;color:var(--text-strong);}
.video-meta {margin:0 .9rem .9rem;font-size:.65rem;text-transform:uppercase;letter-spacing:.5px;color:#9ca3af;display:flex;justify-content:space-between;}
.video-thumb {aspect-ratio:16/9;width:100%;object-fit:cover;}

.contact-grid {display:grid;gap:2.5rem;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));align-items:start;}
.contact-form {display:flex;flex-direction:column;gap:.9rem;background:linear-gradient(135deg,#111827,#0f172a);padding:1.3rem 1.4rem 1.6rem;border:1px solid #1e293b;border-radius:var(--radius);box-shadow:var(--shadow);}
.contact-form label {display:flex;flex-direction:column;font-size:.75rem;font-weight:var(--fw-semi);letter-spacing:.6px;text-transform:uppercase;gap:.4rem;color:#9ca3af;}
.contact-form input,.contact-form textarea {background:#0d1117;border:1px solid #1f2937;color:var(--text);padding:.75rem .85rem;border-radius:var(--radius-sm);font:inherit;resize:vertical;}
.contact-form input:focus,.contact-form textarea:focus {outline:2px solid var(--accent);outline-offset:2px;}
.contact-alt {display:flex;flex-direction:column;gap:1rem;}
.list-links {list-style:none;margin:0;padding:0;display:grid;gap:.55rem;font-size:.9rem;}
.list-links a {display:inline-block;padding:.4rem 0;}

.btn {--btn-bg:var(--accent);--btn-color:#fff;--btn-border:var(--accent);--btn-bg-hover:#2563eb;display:inline-flex;align-items:center;justify-content:center;gap:.5rem;background:var(--btn-bg);color:var(--btn-color);border:1px solid var(--btn-border);padding:.8rem 1.25rem;font-weight:var(--fw-semi);font-size:.85rem;letter-spacing:.5px;text-transform:uppercase;border-radius:var(--radius-sm);cursor:pointer;line-height:1;transition:.3s background,.3s color,.3s filter;}
.btn.primary {--btn-bg:var(--accent-grad);--btn-border:#1e40af;background:var(--accent-grad);}
.btn.outline {--btn-bg:transparent;--btn-color:var(--text);--btn-border:var(--border);} 
.btn.outline:hover {background:var(--bg-alt);} 
.btn.small {padding:.55rem .85rem;font-size:.7rem;}
.btn:hover {filter:brightness(1.07);} 

.center {text-align:center;margin-top:1.8rem;}

.site-footer {padding:2.5rem 0 2.2rem;background:#0b0f14;border-top:1px solid var(--border);margin-top:3rem;}
.footer-inner {display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1.5rem;font-size:.75rem;letter-spacing:.4px;text-transform:uppercase;color:#6b7280;}
.back-to-top {background:var(--bg-alt);border:1px solid var(--border);color:var(--text);padding:.55rem .75rem;border-radius:var(--radius-sm);cursor:pointer;font-size:.8rem;font-weight:var(--fw-semi);} 
.back-to-top:hover {background:var(--accent);color:#fff;border-color:var(--accent);} 

/* Utilities */
.assistive {position:absolute;left:-9999px;}
.glass.card {max-width:320px;}
.muted {color:#6b7280;}
.tiny {font-size:.65rem;letter-spacing:.5px;}
.highlight {position:relative;}

/* Responsive Nav */
@media (max-width: 760px) {
  .nav-toggle {display:block;}
  .nav-links {position:fixed;inset:0 0 0 auto;width:240px;background:rgba(13,17,23,.97);backdrop-filter:blur(16px);flex-direction:column;align-items:flex-start;padding:5.5rem 1.25rem 2.5rem;transform:translateX(100%);transition:.45s transform;box-shadow:-8px 0 24px -8px rgba(0,0,0,.6);}
  .nav-links.open {transform:translateX(0);} 
  .nav-links a, .nav-links button {width:100%;text-align:left;}
}

/* Animations */
.fade-in {opacity:0;transform:translateY(10px);animation:fadeIn .8s forwards;}
@keyframes fadeIn {to {opacity:1;transform:none;}}

/* Scrollbar (Webkit) */
::-webkit-scrollbar {width:10px;}::-webkit-scrollbar-track {background:#0b0f14;}::-webkit-scrollbar-thumb {background:#1f2937;border-radius:99px;}::-webkit-scrollbar-thumb:hover {background:#374151;}
