/* We love boxes here */
* {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

/* Page base (dark fallback if video fails) */
body {
  font-family: Arial, Helvetica, sans-serif;
  line-height: 1.6;
  color: #eee;
  background: #05010d;
}

/* Video background */
.bg-video {
  position: fixed;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  z-index: -2;
}

/* Dark overlay to keep text readable */
.bg-overlay {
  position: fixed;
  inset: 0;
  background: rgba(5, 1, 13, 0.55);
  z-index: -1;
}

/* Layout container */
.container {
  width: 90%;
  max-width: 900px;
  margin: 24px auto;
  padding-bottom: 24px;
}

/* Translucent panels so COOL */
.panel {
  background: rgba(20, 10, 50, 0.78);
  border: 1px solid rgba(255, 255, 255, 0.14);
  padding: 16px;
  margin-top: 12px;
  border-radius: 8px;
}

/* Slightly stronger header block */
.main-info {
  background: rgba(15, 6, 40, 0.88);
  border: 1px solid rgba(255, 255, 255, 0.18);
}

/* Headings */
h1 {
  color: #fff;
  text-align: center;
  margin-bottom: 10px;
}

h2 {
  color: #fff;
  margin-bottom: 8px;
}

/* Links */
a {
  color: #7db8ff;
}

a:hover {
  text-decoration: underline;
}

/* Square bullets for unordered lists */
.square-list {
  list-style-type: square;
  margin-left: 20px;
  margin-top: 8px;
}

/* Shared image styling */
.profile-image {
  display: block;
  width: 100%;            
  height: auto;
  margin: 0 auto 12px auto;
  border-radius: 8px;
  border: 2px solid rgba(255, 255, 255, 0.85);
}

/* 800 version */
.profile-800 {
  max-width: 800px;
}

/* 300 version */
.profile-300 {
  max-width: 300px;
}

/* Footer */
.footer {
  text-align: center;
  opacity: 0.9;
}

/* Mobile stuff */
@media (max-width: 600px) {
  .container {
    width: 92%;
    margin: 16px auto;
  }

  h1 {
    font-size: 1.6rem;
  }
}
