.container{
    width: 100%;
    max-width: 900px;
    margin: 0 auto;
    padding: 0 24px;
    font-size: 15px;
}

.row{
  display: flex;
}
.column{
  flex: 50%;
  padding: 10px;
}

.left-text{
  float: left;
}

.right-text{
  float: right
}

body {
  font-size: 18px;
  font-family: Arial, Helvetica, sans-serif;
  line-height: 1.7; /* comfortable default */
}

/* Explicit heading scale for consistency */
h1 { font-size: 2rem; line-height: 1.3; }
h2 { font-size: 1.5rem; line-height: 1.35; }
h3 { font-size: 1.25rem; line-height: 1.4; }

/* Header bar */
.site-header {
  position: sticky;
  top: 0;
  background: #111;
  border-bottom: 1px solid #333;
  z-index: 10;
}

.header-inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: 56px;
}

.brand {
  font-weight: 600;
  display: flex;
  align-items: center;
}

.nav .nav-link {
  color: #aaa; /* grey navbar links */
  text-decoration: none;
  font-weight: 700;
}

.nav .nav-link:hover {
  color: #ddd;
  text-decoration: underline;
}

/* Space between nav links */
.nav .nav-link + .nav-link { margin-left: 16px; }

/* Blinking bar cursor in header */
.cursor {
  width: 10px;
  height: 1.2em;
  background: #fff; /* keep cursor white regardless of link color */
  display: inline-block;
  margin-left: 2px;
  animation: blink 1s steps(1, end) infinite;
}

/* If cursor is inside a link, don't underline or change color */
a .cursor, a:visited .cursor, a:hover .cursor, a:active .cursor {
  background: #fff;
  text-decoration: none;
}

@keyframes blink {
  0%, 49% { opacity: 1; }
  50%, 100% { opacity: 0; }
}

/* Footer bar (mirrors header) */
.site-footer {
  position: sticky;
  top: 100vh; /* ensures it hugs the bottom when content is short */
  margin-top: 32px;
  background: #111;
  border-top: 1px solid #333;
}

.footer-inner {
  display: flex;
  align-items: flex-start;
  justify-content: center; /* center contents horizontally */
  padding: 12px 0;
}

.footer-left {
  opacity: 0.8;
  text-align: left;
  margin-top: 30px; /* push name+email down */
  flex: 0 0 auto; /* size to content */
}

.footer-right {
  display: flex;
  justify-content: flex-end;
  width: 100%;
}

/* Make footer text a bit greyer */
.site-footer, .site-footer p, .site-footer .about-title, .site-footer a {
  color: #aaa;
}

/* Global link color: Ubuntu Orange */
a { color: #E95420; }
a:hover, a:focus { color: #ff6a3d; }

/* Improve footer readability */
.site-footer p { line-height: 1.6; }
.site-footer .about-title { line-height: 1.4; }

/* Visitor counter row below left/right columns */
.footer-meta {
  display: flex;
  justify-content: center;
  padding: 8px 0 14px;
}

.visitor-counter {
  font-size: 0.9rem;
  color: #aaa;
  opacity: 0.9;
}

.footer-name { font-weight: 600; margin-bottom: 6px; font-size: 0.95em; white-space: nowrap; }
.footer-email a { color: #E95420; text-decoration: none; }
.footer-email a:hover, .footer-email a:focus { color: #ff6a3d; text-decoration: underline; }

.about-box {
  max-width: 500px;
  background: transparent;
  border: none;
  border-radius: 0;
  padding: 0;
  box-shadow: none;
  font-size: 1rem;
}

/* Social block removed */
/* Give paragraphs extra breathing room in main container */
.container p { line-height: 1.8; }

/* Keep large headings a bit tighter */
header h1 { line-height: 1.2; }
