* {
    box-sizing: border-box;
}

html, body {
    margin: 0;
    padding: 0;
    width: 100%;
    min-height: 100vh;
    overflow-x: hidden;
    background-color: #1a1a1a; /* Dark gray background */
    color: #fff; /* White text color */
    background-image: url("yotsuba001.png");
    background-size: cover;
    background-repeat: no-repeat; /* stops tiling */
    background-position: center center;
    background-attachment: fixed;
    overflow-y: auto;
}

/* Headers */
h1, h2, h3, h4, h5, h6 {
    color: #fff; /* White text color for headers */
}

/* Links */
a {
    color: #dde1e4; /* teal link color */
    text-decoration: none; /* remove stupid and ugly underline */
}

a:hover {
    color: #33c5ff; /* Lighter teal on hover */
}

/* Borders */
hr {
    border-color: #333; /* Dark gray border color */
}

/* points */
li {
  color: #fff; /* White text color for points */
  padding: 1px;
  list-style-position: inside;
}

/* whatever */
p {
  padding: 1px;
}

/* Buttons */
.button {
    background-color: #333; /* Dark gray button background */
    color: #fff; /* White text color */
}

.button:hover {
    background-color: #555; /* Dark gray on hover */
}

/* Miscellaneous */
.container {
    border: 1px solid #333; /* Dark gray border for containers */
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.5); /* Dark shadow effect */
}
  
  @font-face {
      font-family: CothamSans;
      src: url(CothamSans.otf);
    }
    
    div {
      font-family: CothamSans;
    }

    #image-container {
    position: relative;
  }
  #bg-image {
    width: 100%;
  }
  #image-container div {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    text-align: center;
  }

  .page-wrap {
    display: flex;
    justify-content: center;
    align-items: center;
    min-height: 100vh;
    width: 100%;
    padding: 10px;
  }

  .box {
    background-color: #2f2f34;
    border: 1px solid #555;
    border-radius: 6px;
    padding: 10px;
    max-width: 650px;
    box-shadow: 0 0 5px rgba(0,0,0,0.4);
    text-align: center;
  }

   .box img {
    max-width: 100%;
    height: auto;
  }

/* tables */
table {
  border-collapse: collapse;
  width: 100%;
}

td, th {
  border: 1px solid #dddddd;
  text-align: left;
  padding: 8px;
}

tr:nth-child(even) {
  background-color: #2f2f34;
}