/* ════════════════════════════
   VARIABLES
════════════════════════════ */
:root {
  --bg:       #050c18;
  --bg2:      #0a1628;
  --bg3:      #0d1e36;
  --cyan:     #00d4f5;
  --cyan2:    #0a8fb0;
  --cyan3:    #5bbfda;
  --text:     #e8f4f8;
  --muted:    #6a9ab5;
  --soft:     #2e5f7a;
  --border:   rgba(0,212,245,0.13);
  --borderhi: rgba(0,212,245,0.38);
  --nav-h:    72px;
}

/* ════════════════════════════
   RESET
════════════════════════════ */
*,*::before,*::after { box-sizing:border-box; margin:0; padding:0; }
html { scroll-behavior:smooth; }
body {
  background:var(--bg); color:var(--text);
  font-family:'Exo 2',sans-serif; font-size:15px; line-height:1.7;
  overflow-x:hidden;
}
body::before {
  content:''; position:fixed; inset:0;
  background-image:linear-gradient(var(--border) 1px,transparent 1px),linear-gradient(90deg,var(--border) 1px,transparent 1px);
  background-size:55px 55px; pointer-events:none; z-index:0; opacity:0.4;
}
a { text-decoration:none; color:inherit; }
ul { list-style:none; }
img { max-width:100%; display:block; }
::-webkit-scrollbar { width:5px; }
::-webkit-scrollbar-track { background:var(--bg); }
::-webkit-scrollbar-thumb { background:var(--cyan2); }

/* ════════════════════════════
   NAV
════════════════════════════ */
#site-nav {
  position:fixed; top:0; left:0; right:0; z-index:200;
  height:var(--nav-h);
  background:rgba(5,12,24,0.95); backdrop-filter:blur(14px);
  border-bottom:1px solid var(--border);
  display:flex; align-items:center; justify-content:space-between;
  padding:0 60px;
}
.nav-logo { display:flex; align-items:center; gap:14px; }
.nav-logo svg { flex-shrink:0; }
.nav-logo-text .name {
  font-family:'Rajdhani',sans-serif; font-weight:700; font-size:14px;
  color:var(--text); letter-spacing:0.5px; line-height:1.1;
}
.nav-logo-text .role { font-size:9.5px; color:var(--cyan3); letter-spacing:2px; text-transform:uppercase; }
.nav-links { display:flex; gap:32px; }
.nav-links a {
  font-size:12px; font-weight:600; letter-spacing:1.5px; text-transform:uppercase;
  color:var(--muted); transition:color .2s; padding-bottom:2px;
  border-bottom:1px solid transparent;
}
.nav-links a:hover, .nav-links a.active { color:var(--cyan); }
.nav-links a.active { border-bottom-color:var(--cyan); }
.nav-cta {
  background:transparent; border:1px solid var(--cyan); color:var(--cyan);
  padding:8px 20px; font-family:'Rajdhani',sans-serif; font-weight:700;
  font-size:11px; letter-spacing:2px; text-transform:uppercase;
  transition:background .2s,color .2s; display:inline-block;
}
.nav-cta:hover { background:var(--cyan); color:var(--bg); }
.hamburger { display:none; flex-direction:column; gap:5px; cursor:pointer; padding:4px; }
.hamburger span { display:block; width:22px; height:1.5px; background:var(--cyan3); transition:.3s; }
.mobile-menu {
  display:none; position:fixed; top:var(--nav-h); left:0; right:0;
  background:rgba(5,12,24,0.98); border-bottom:1px solid var(--border);
  padding:24px 30px; z-index:199; flex-direction:column; gap:20px;
}
.mobile-menu a { font-size:14px; font-weight:600; letter-spacing:2px; text-transform:uppercase; color:var(--muted); }
.mobile-menu.open { display:flex; }

/* ════════════════════════════
   LAYOUT
════════════════════════════ */
#site-main { position:relative; z-index:1; }
.container { max-width:1180px; margin:0 auto; padding:0 60px; }
.section-pad { padding:100px 0; }
.section-eyebrow {
  font-size:10px; font-weight:600; letter-spacing:4px; color:var(--cyan);
  text-transform:uppercase; margin-bottom:12px;
  display:flex; align-items:center; gap:12px;
}
.section-eyebrow::before { content:''; display:block; width:24px; height:1px; background:var(--cyan); }
.section-title {
  font-family:'Rajdhani',sans-serif; font-size:42px; font-weight:700;
  color:var(--text); letter-spacing:-0.5px; line-height:1.1; margin-bottom:16px;
}
.section-title span { color:var(--cyan); }
.section-desc { font-size:15px; color:var(--muted); max-width:580px; line-height:1.85; }

/* ════════════════════════════
   HERO
════════════════════════════ */
#home { min-height:100vh; display:flex; align-items:center; padding-top:var(--nav-h); }

/* WordPress admin bar compensation */
.admin-bar #site-nav { top:32px; }
.admin-bar #home { min-height:calc(100vh - 32px); padding-top:calc(var(--nav-h) + 32px); }
.admin-bar .mobile-menu { top:calc(var(--nav-h) + 32px); }
@media screen and (max-width:782px) {
  .admin-bar #site-nav { top:46px; }
  .admin-bar #home { padding-top:calc(var(--nav-h) + 46px); }
  .admin-bar .mobile-menu { top:calc(var(--nav-h) + 46px); }
}
.hero-grid { display:grid; grid-template-columns:1.1fr 0.9fr; align-items:center; gap:60px; width:100%; }
.hero-eyebrow {
  font-size:10px; font-weight:600; letter-spacing:4px; color:var(--cyan);
  text-transform:uppercase; margin-bottom:20px; display:flex; align-items:center; gap:12px;
}
.hero-eyebrow::before { content:''; display:block; width:32px; height:1px; background:var(--cyan); }
.avail-dot {
  display:inline-block; width:7px; height:7px; background:#00ff88;
  border-radius:50%; margin-right:6px; animation:pulse 2s infinite;
}
@keyframes pulse { 0%,100%{opacity:1;} 50%{opacity:.4;} }
.hero h1 {
  font-family:'Rajdhani',sans-serif; font-weight:800;
  font-size:clamp(46px,5.5vw,70px); line-height:1.0;
  color:var(--text); letter-spacing:-1.5px; margin-bottom:24px;
}
.hero h1 span { color:var(--cyan); }
.hero-desc { font-size:15.5px; color:var(--muted); max-width:500px; margin-bottom:38px; line-height:1.85; }
.hero-btns { display:flex; gap:14px; flex-wrap:wrap; margin-bottom:44px; }
.btn-primary {
  background:var(--cyan); color:var(--bg);
  padding:13px 28px; font-family:'Rajdhani',sans-serif; font-weight:700;
  font-size:12px; letter-spacing:2px; text-transform:uppercase;
  border:none; cursor:pointer; transition:opacity .2s; display:inline-block;
}
.btn-primary:hover { opacity:.85; }
.btn-outline {
  background:transparent; color:var(--text);
  padding:13px 28px; font-family:'Rajdhani',sans-serif; font-weight:600;
  font-size:12px; letter-spacing:2px; text-transform:uppercase;
  border:1px solid var(--borderhi); cursor:pointer; display:inline-block;
  transition:border-color .2s,color .2s;
}
.btn-outline:hover { border-color:var(--cyan); color:var(--cyan); }
.hero-tags { display:flex; gap:8px; flex-wrap:wrap; }
.tag {
  font-size:9.5px; font-weight:600; letter-spacing:2px; text-transform:uppercase;
  padding:5px 11px; border:1px solid var(--border); color:var(--soft);
}
.hero-card {
  background:var(--bg2); border:1px solid var(--border);
  padding:36px 32px; position:relative;
}
.hero-card::before {
  content:''; position:absolute; top:-1px; left:-1px; right:-1px; height:2px;
  background:linear-gradient(90deg,transparent,var(--cyan),transparent);
}
.hero-card-label { font-size:9.5px; letter-spacing:3px; color:var(--cyan); text-transform:uppercase; margin-bottom:22px; font-weight:600; }
.stat-grid { display:grid; grid-template-columns:1fr 1fr; gap:18px; margin-bottom:24px; }
.stat-item { border-left:2px solid var(--cyan); padding-left:14px; }
.stat-num { font-family:'Rajdhani',sans-serif; font-size:30px; font-weight:700; color:var(--cyan); line-height:1; }
.stat-label { font-size:10.5px; color:var(--muted); letter-spacing:0.5px; margin-top:3px; }
.cert-row { display:flex; gap:7px; flex-wrap:wrap; }
.cert-badge {
  background:rgba(0,212,245,0.06); border:1px solid var(--border);
  padding:4px 10px; font-size:9.5px; font-weight:600; letter-spacing:1.5px; color:var(--cyan3); text-transform:uppercase;
}

/* ════════════════════════════
   SERVICES
════════════════════════════ */
.services-section { background:rgba(10,22,40,0.5); border-top:1px solid var(--border); border-bottom:1px solid var(--border); }
.services-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:2px; margin-top:52px; }
.service-card {
  background:var(--bg2); border:1px solid var(--border);
  padding:36px 28px; position:relative; overflow:hidden; transition:border-color .25s,background .25s;
}
.service-card::after {
  content:''; position:absolute; bottom:0; left:0; right:0; height:2px;
  background:var(--cyan); transform:scaleX(0); transition:transform .3s; transform-origin:left;
}
.service-card:hover { background:var(--bg3); border-color:var(--borderhi); }
.service-card:hover::after { transform:scaleX(1); }
.service-icon { width:44px; height:44px; margin-bottom:20px; }
.service-title { font-family:'Rajdhani',sans-serif; font-size:19px; font-weight:700; color:var(--text); margin-bottom:10px; }
.service-desc { font-size:13.5px; color:var(--muted); line-height:1.75; margin-bottom:16px; }
.service-list { display:flex; flex-direction:column; gap:5px; }
.service-list li { font-size:12px; color:var(--soft); padding-left:14px; position:relative; line-height:1.6; }
.service-list li::before { content:'›'; position:absolute; left:0; color:var(--cyan); }

/* ════════════════════════════
   ABOUT
════════════════════════════ */
.about-grid { display:grid; grid-template-columns:1fr 1.35fr; gap:80px; align-items:center; }
.about-photo {
  width:100%; aspect-ratio:4/5; max-height:480px;
  background:var(--bg2); border:1px solid var(--border);
  display:flex; align-items:center; justify-content:center; position:relative; overflow:hidden;
}
.about-photo-img { width:100%; height:100%; object-fit:cover; }
.photo-initials { font-family:'Rajdhani',sans-serif; font-size:80px; font-weight:700; color:rgba(0,212,245,0.1); letter-spacing:-3px; }
.about-deco { position:absolute; bottom:-18px; right:-18px; width:72px; height:72px; border:1px solid var(--cyan); opacity:.22; }
.about-visual { position:relative; }
.about-intro { font-size:15px; color:var(--muted); line-height:1.9; border-left:2px solid var(--cyan); padding-left:20px; margin-bottom:28px; }
.timeline { display:flex; flex-direction:column; }
.tl-item { display:grid; grid-template-columns:90px 1fr; gap:18px; padding:14px 0; border-bottom:1px solid var(--border); }
.tl-year { font-family:'Rajdhani',sans-serif; font-size:12px; font-weight:600; color:var(--cyan); letter-spacing:1px; padding-top:2px; }
.tl-role { font-size:13.5px; font-weight:600; color:var(--text); margin-bottom:2px; }
.tl-co { font-size:12px; color:var(--muted); }
.value-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:14px; margin-top:64px; }
.value-card { background:var(--bg2); border:1px solid var(--border); padding:24px 20px; position:relative; overflow:hidden; }
.value-card::before {
  content:''; position:absolute; top:0; left:0; right:0; height:2px;
  background:var(--cyan); transform:scaleX(0); transform-origin:left; transition:transform .3s;
}
.value-card:hover::before { transform:scaleX(1); }
.value-num { font-family:'Rajdhani',sans-serif; font-size:36px; font-weight:700; color:var(--cyan); line-height:1; margin-bottom:6px; }
.value-title { font-size:13px; font-weight:600; color:var(--text); margin-bottom:6px; }
.value-desc { font-size:12px; color:var(--muted); line-height:1.65; }

/* ════════════════════════════
   CV
════════════════════════════ */
.cv-section { background:var(--bg2); border-top:1px solid var(--border); border-bottom:1px solid var(--border); }
.cv-wrapper { background:var(--bg); border:1px solid var(--border); overflow:hidden; position:relative; margin-top:52px; }
.cv-wrapper::before {
  content:''; position:absolute; top:0; left:0; right:0; height:2px;
  background:linear-gradient(90deg,transparent,var(--cyan),transparent); z-index:1;
}
.cv-layout { display:grid; grid-template-columns:280px 1fr; min-height:700px; }
.cv-sidebar {
  background:var(--bg2); border-right:1px solid var(--border);
  padding:36px 24px; overflow-y:auto;
  scrollbar-width:thin; scrollbar-color:var(--cyan2) transparent;
}
.cv-logo { display:flex; justify-content:center; margin-bottom:24px; }
.cv-name { text-align:center; font-family:'Rajdhani',sans-serif; font-size:20px; font-weight:700; color:var(--text); line-height:1.2; margin-bottom:4px; }
.cv-role-label { text-align:center; font-size:10px; color:var(--cyan3); letter-spacing:2px; text-transform:uppercase; margin-bottom:24px; }
.cv-divider { height:1px; background:var(--border); margin:18px 0; }
.cv-sec-title { font-size:9px; letter-spacing:3px; color:var(--cyan); text-transform:uppercase; margin-bottom:12px; font-weight:600; }
.cv-contact { display:flex; flex-direction:column; gap:9px; }
.cv-contact-item { display:flex; align-items:flex-start; gap:9px; font-size:12px; color:var(--muted); }
.cv-dot { width:5px; height:5px; background:var(--cyan); flex-shrink:0; margin-top:5px; }
.cv-stats { display:grid; grid-template-columns:1fr 1fr; gap:8px; margin-top:4px; }
.cv-stat { background:rgba(0,212,245,0.04); border:1px solid var(--border); padding:10px 8px; text-align:center; }
.cv-stat-num { font-family:'Rajdhani',sans-serif; font-size:22px; font-weight:700; color:var(--cyan); line-height:1; }
.cv-stat-lbl { font-size:9px; color:var(--muted); letter-spacing:0.7px; margin-top:2px; }
.cv-cert { display:flex; flex-direction:column; gap:6px; }
.cv-cert-item { background:rgba(0,212,245,0.04); border:1px solid var(--border); border-left:2px solid var(--cyan); padding:7px 10px; font-size:11px; color:var(--text); font-weight:500; }
.cv-cert-item .sub { font-size:9.5px; color:var(--muted); font-weight:400; margin-top:2px; }
.cv-cert-item.wip { border-left-color:var(--cyan2); opacity:.7; }
.cv-skill-bar-wrap { margin-bottom:9px; }
.cv-skill-name { font-size:11.5px; color:var(--muted); margin-bottom:4px; }
.cv-bar { height:2px; background:rgba(0,212,245,0.1); }
.cv-bar-fill { height:100%; background:var(--cyan); }
.cv-lang { display:flex; justify-content:space-between; padding:6px 0; border-bottom:1px solid var(--border); }
.cv-lang-name { font-size:12px; color:var(--text); }
.cv-lang-lvl { font-size:9.5px; color:var(--cyan3); letter-spacing:1.5px; text-transform:uppercase; }
.cv-main { padding:36px 40px 48px; }
.cv-header { display:flex; justify-content:space-between; align-items:flex-start; margin-bottom:28px; padding-bottom:22px; border-bottom:1px solid var(--border); position:relative; }
.cv-header::after { content:''; position:absolute; bottom:-1px; left:0; width:100px; height:2px; background:var(--cyan); }
.cv-main-title { font-family:'Rajdhani',sans-serif; font-size:34px; font-weight:800; line-height:1; color:var(--text); letter-spacing:-1px; }
.cv-main-title span { color:var(--cyan); }
.cv-main-sub { font-size:13px; color:var(--muted); margin-top:7px; letter-spacing:0.5px; }
.cv-avail { text-align:right; font-size:10.5px; color:var(--muted); line-height:1.9; padding-top:4px; }
.cv-avail strong { display:block; color:var(--cyan); font-weight:700; letter-spacing:1px; margin-bottom:3px; font-size:11px; }
.cv-tabs { display:flex; gap:0; margin-bottom:28px; border-bottom:1px solid var(--border); }
.cv-tab {
  padding:9px 20px; font-size:11px; font-weight:700; letter-spacing:1.5px; text-transform:uppercase;
  color:var(--muted); cursor:pointer; border:none; background:none;
  border-bottom:2px solid transparent; margin-bottom:-1px; transition:color .2s,border-color .2s;
}
.cv-tab:hover { color:var(--cyan3); }
.cv-tab.active { color:var(--cyan); border-bottom-color:var(--cyan); }
.cv-panel { display:none; }
.cv-panel.active { display:block; }
.cv-sec-head { display:flex; align-items:center; gap:12px; margin-bottom:20px; }
.cv-sec-head-title { font-family:'Rajdhani',sans-serif; font-size:11px; font-weight:700; letter-spacing:3px; text-transform:uppercase; color:var(--cyan); white-space:nowrap; }
.cv-sec-line { flex:1; height:1px; background:var(--border); }
.cv-exp-list { display:flex; flex-direction:column; gap:3px; }
.cv-exp-card { background:var(--bg2); border:1px solid var(--border); overflow:hidden; transition:border-color .2s; }
.cv-exp-card:hover { border-color:var(--borderhi); }
.cv-exp-header { display:grid; grid-template-columns:1fr auto; align-items:start; gap:16px; padding:16px 20px; cursor:pointer; transition:background .15s; }
.cv-exp-header:hover { background:rgba(0,212,245,0.025); }
.cv-exp-role { font-family:'Rajdhani',sans-serif; font-size:15.5px; font-weight:700; color:var(--text); margin-bottom:2px; }
.cv-exp-co { font-size:12px; color:var(--cyan3); font-weight:500; margin-bottom:3px; }
.cv-exp-meta { font-size:10.5px; color:var(--muted); display:flex; gap:12px; flex-wrap:wrap; }
.cv-toggle { width:22px; height:22px; border:1px solid var(--border); display:flex; align-items:center; justify-content:center; color:var(--cyan); font-size:15px; transition:transform .25s; flex-shrink:0; margin-top:2px; }
.cv-exp-card.open .cv-toggle { transform:rotate(45deg); }
.cv-exp-body { max-height:0; overflow:hidden; transition:max-height .4s cubic-bezier(.4,0,.2,1); }
.cv-exp-card.open .cv-exp-body { max-height:600px; }
.cv-exp-inner { padding:0 20px 20px; }
.cv-exp-tags { display:flex; flex-wrap:wrap; gap:5px; margin-bottom:12px; }
.cv-exp-tag { font-size:9px; font-weight:700; letter-spacing:1.5px; text-transform:uppercase; padding:3px 8px; border:1px solid var(--border); color:var(--soft); }
.cv-exp-tag.hl { border-color:rgba(0,212,245,0.28); color:var(--cyan3); }
.cv-bullets { display:flex; flex-direction:column; gap:5px; }
.cv-bullets li { font-size:12.5px; color:var(--muted); padding-left:14px; position:relative; line-height:1.65; }
.cv-bullets li::before { content:'›'; position:absolute; left:0; color:var(--cyan); }
.cv-kpis { display:flex; gap:8px; flex-wrap:wrap; margin-top:14px; padding-top:14px; border-top:1px solid var(--border); }
.cv-kpi { background:rgba(0,212,245,0.05); border:1px solid rgba(0,212,245,0.18); padding:7px 12px; text-align:center; }
.cv-kpi-num { font-family:'Rajdhani',sans-serif; font-size:18px; font-weight:700; color:var(--cyan); }
.cv-kpi-lbl { font-size:8.5px; color:var(--muted); letter-spacing:1px; text-transform:uppercase; }
.cv-skills-grid { display:grid; grid-template-columns:1fr 1fr; gap:24px 40px; }
.cv-skill-group-title { font-size:9.5px; letter-spacing:2.5px; color:var(--cyan); text-transform:uppercase; font-weight:600; margin-bottom:14px; padding-bottom:5px; border-bottom:1px solid var(--border); }
.cv-skill-main { margin-bottom:12px; }
.cv-skill-hdr { display:flex; justify-content:space-between; margin-bottom:5px; }
.cv-skill-nm { font-size:12.5px; color:var(--text); font-weight:500; }
.cv-skill-pct { font-size:11px; color:var(--cyan); font-family:'Rajdhani',sans-serif; font-weight:600; }
.cv-bar2 { height:2.5px; background:rgba(0,212,245,0.08); }
.cv-bar-fill2 { height:100%; background:var(--cyan); position:relative; }
.cv-bar-fill2::after { content:''; position:absolute; right:0; top:-2px; width:6px; height:6px; background:var(--cyan); border-radius:50%; }
.cv-tools-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:18px; }
.cv-tags-cloud { display:flex; flex-wrap:wrap; gap:6px; margin-top:4px; }
.cv-tag-chip { font-size:10.5px; padding:3px 10px; border:1px solid var(--border); color:var(--muted); transition:border-color .2s,color .2s; }
.cv-tag-chip:hover { border-color:var(--cyan); color:var(--cyan3); }
.cv-about-intro { font-size:14px; color:var(--muted); line-height:1.9; max-width:600px; margin-bottom:28px; border-left:2px solid var(--cyan); padding-left:18px; }
.cv-value-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:12px; margin-bottom:28px; }
.cv-value-card { background:var(--bg3); border:1px solid var(--border); padding:18px 16px; position:relative; overflow:hidden; }
.cv-value-card::before { content:''; position:absolute; top:0; left:0; right:0; height:2px; background:var(--cyan); transform:scaleX(0); transform-origin:left; transition:transform .3s; }
.cv-value-card:hover::before { transform:scaleX(1); }
.cv-value-title { font-family:'Rajdhani',sans-serif; font-size:15px; font-weight:700; color:var(--text); margin-bottom:5px; }
.cv-value-desc { font-size:11.5px; color:var(--muted); line-height:1.6; }
.cv-formation { background:var(--bg2); border:1px solid var(--border); padding:18px 20px; display:grid; grid-template-columns:80px 1fr; gap:16px; }
.cv-form-year { font-family:'Rajdhani',sans-serif; font-size:12px; font-weight:600; color:var(--cyan); letter-spacing:1px; }
.cv-form-title { font-size:13px; font-weight:600; color:var(--text); margin-bottom:2px; }
.cv-form-school { font-size:11.5px; color:var(--muted); }
.cv-print-btn {
  display:inline-flex; align-items:center; gap:7px;
  background:transparent; border:1px solid var(--border); color:var(--muted);
  padding:7px 16px; font-family:'Rajdhani',sans-serif; font-size:11px;
  font-weight:600; letter-spacing:2px; text-transform:uppercase; cursor:pointer;
  transition:border-color .2s,color .2s; margin-top:20px;
}
.cv-print-btn:hover { border-color:var(--cyan); color:var(--cyan); }

/* ════════════════════════════
   CONTACT
════════════════════════════ */
.contact-section { border-top:1px solid var(--border); }
.contact-grid { display:grid; grid-template-columns:1fr 1fr; gap:60px; align-items:start; margin-top:52px; }
.contact-items { display:flex; flex-direction:column; gap:14px; }
.contact-item { display:flex; align-items:flex-start; gap:12px; font-size:13.5px; color:var(--muted); }
.contact-dot { width:6px; height:6px; background:var(--cyan); flex-shrink:0; margin-top:5px; }
.contact-form-wrap,.contact-form-fallback { display:flex; flex-direction:column; gap:14px; }
.form-row { display:grid; grid-template-columns:1fr 1fr; gap:14px; }
.form-group { display:flex; flex-direction:column; gap:5px; }
.form-group label { font-size:9.5px; letter-spacing:2.5px; color:var(--muted); text-transform:uppercase; font-weight:600; }
.form-group input,.form-group textarea {
  background:var(--bg2); border:1px solid var(--border); color:var(--text);
  padding:11px 14px; font-family:'Exo 2',sans-serif; font-size:13.5px;
  outline:none; transition:border-color .2s; resize:none;
}
.form-group input:focus,.form-group textarea:focus { border-color:var(--cyan); }
.form-group textarea { min-height:110px; }

/* ════════════════════════════
   FOOTER
════════════════════════════ */
#site-footer { border-top:1px solid var(--border); padding:28px 0; position:relative; z-index:1; }
.footer-inner { display:flex; justify-content:space-between; align-items:center; font-size:11.5px; color:var(--soft); letter-spacing:0.8px; }
.footer-links { display:flex; gap:24px; }
.footer-links a { color:var(--muted); transition:color .2s; }
.footer-links a:hover { color:var(--cyan); }

/* ════════════════════════════
   ANIMATIONS
════════════════════════════ */
@keyframes fadeUp { from{opacity:0;transform:translateY(20px);} to{opacity:1;transform:translateY(0);} }
.hero-eyebrow { animation:fadeUp .5s .1s ease both; }
.hero h1 { animation:fadeUp .5s .2s ease both; }
.hero-desc { animation:fadeUp .5s .3s ease both; }
.hero-btns { animation:fadeUp .5s .4s ease both; }
.hero-tags { animation:fadeUp .5s .5s ease both; }
.hero-visual { animation:fadeUp .6s .35s ease both; }

/* ════════════════════════════
   RESPONSIVE
════════════════════════════ */
@media(max-width:900px) {
  #site-nav { padding:0 24px; }
  .nav-links,.nav-cta { display:none; }
  .hamburger { display:flex; }
  .container { padding:0 24px; }
  .hero-grid,.about-grid,.contact-grid,.services-grid,.value-grid { grid-template-columns:1fr; }
  .section-pad { padding:70px 0; }
  .section-title { font-size:32px; }
  .cv-layout { grid-template-columns:1fr; }
  .cv-sidebar { display:none; }
  .cv-skills-grid,.cv-value-grid,.cv-tools-grid { grid-template-columns:1fr; }
}

@media print {
  body::before,.hamburger,#site-nav,.mobile-menu,#home,.services-section,.about-section,.contact-section,#site-footer,.cv-print-btn { display:none!important; }
  .cv-section { border:none; background:white; }
  .cv-wrapper { border:none; }
  .cv-layout { grid-template-columns:220px 1fr; }
  .cv-sidebar { display:block!important; }
  .cv-exp-body { max-height:none!important; }
  .cv-panel { display:block!important; }
  .cv-tabs { display:none; }
}
