:root {
    --font-sans: Arial, sans-serif;
    --site-header-height: 80px; /* adjust to match the header's real height */
    --primary-blue: #0037ff;
    --muted: #666;
    --page-bg: #f4f4f4;
  }
  
  /* Base */
  * { box-sizing: border-box; }
  html, body { height: 100%; }
  body {
    margin: 0;
    padding: 0;
    font-family: var(--font-sans);
    background-color: var(--page-bg);
  }
  
  /* Header (single canonical block) */
  header.site-header,
  header {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: var(--site-header-height);
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 20px 50px; /* adjust if you change height */
    background-color: #fff;
    z-index: 1000;
    box-shadow: 0 2px 4px rgba(0,0,0,0.1);
    border-bottom: 1px solid #e5e5e5;
  }
  
  /* Logo & nav */
  .logo h1 {
    margin: 0;
    font-size: 24px;
  }
  
  nav {
    display: flex;
    gap: 20px;
    align-items: center;
  }
  
  /* Buttons / nav links */
  .nav-button,
  .nav-link,
  .btn-primary {
    text-decoration: none;
    color: black;
    padding: 10px 15px;
    border-radius: 5px;
    transition: background-color 0.3s ease, transform 0.15s ease;
  }
  
  .nav-button {
    border: 2px solid black;
    background: transparent;
  }
  
  .nav-button:hover { background-color: #e0e0e0; }
  
  /* Social icons */
  .social-icons { display: flex; gap: 10px; align-items: center; }
  .social-icons a { color: #0d0d0d; text-decoration: none; font-size: 24px; }
  .social-icons a:hover { color: #0a4666; transform: scale(1.1); }
  
  /* Profile card / left / right sections */
  .left-section {
    background-color: #f0e4d7;
    padding: 20px;
    border-radius: 10px 0 0 10px;
  }
  
  .right-section { padding: 20px; }
  
  .profile-card {
    background-color: #fff;
    border-radius: 10px;
    padding: 20px;
    box-shadow: 0 2px 5px rgba(0,0,0,0.1);
    text-align: center;
    display: flex;
    flex-direction: column;
    align-items: center;
  }
  
  .profile-image {
    width: 170px;
    height: 170px;
    background-color: #ccc;
    border-radius: 50%;
    margin-bottom: 15px;
  }
  
  /* Resume section */
  .resume-section {
    background-color: #e5d6c8;
    min-height: 100vh;
    padding-top: calc(var(--site-header-height) + 16px); /* space below fixed header */
    padding-bottom: 40px;
  }
  
  /* Experience card */
  .experience-card {
    background-color: #fff;
    border: none;
    box-shadow: 0 4px 20px rgba(0,0,0,0.05);
  }
  
  /* Footer */
  footer {
    background-color: #f8f8f8;
    padding: 20px;
    border-top: 1px solid #e7e7e7;
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
  }
  
  .footer-content {
    margin-bottom: 20px;
    padding-top: 20px;
    flex: 1;
    text-align: left;
  }
  
  .footer-contact {
    display: flex;
    justify-content: flex-end;
    flex-wrap: wrap;
    gap: 20px;
  }
  
  .footer-contact div { min-width: 150px; }
  .footer-contact a { text-decoration: none; color: var(--primary-blue); }
  .footer-contact a:hover { text-decoration: underline; }
  
  /* Small UI bits */
  .square-icon {
    width: 12px;
    height: 12px;
    background-color: var(--primary-blue);
    display: inline-block;
    margin-right: 8px;
    vertical-align: middle;
  }
  
  .profession {
    font-size: 0.66em;
    color: var(--muted);
    font-weight: normal;
    margin-left: 5px;
  }
  
  /* Typography */
  h1 { font-size: 2.5em; margin-bottom: 10px; }
  h2 { font-size: 1.5em; margin: 10px 0; }
  h4 { margin-bottom: 1rem; }
  
  /* Nav link active state */
  .nav-link.active { color: var(--primary-blue); font-weight: bold; }
  
  /* Responsive image / card tweaks */
  @media (max-width: 768px) {
    .profile-image { width: 120px; height: 120px; }
    .profile-card { padding: 10px; }
    header.site-header,
    header { padding: 16px 24px; }
  }
  
  @media (max-width: 480px) {
    .profile-image { width: 80px; height: 80px; }
    .profile-card { padding: 5px; }
    header.site-header,
    header { padding: 12px 16px; }
    :root { --site-header-height: 96px; } /* if header wraps taller on small screens */
  }
  
  /* Utility / layout */
  .container-fluid { display: flex; flex-direction: column; min-height: 100vh; }



 