:root 
{
      --bg-light: #ffffff;
      --text-light: #333333;
      --bg-dark: #202124;
      --text-dark: #e8eaed;
      --primary: #0057b7;
      --transition: 0.3s ease;
}

body 
{
  margin: 0;
  font-family: 'Segoe UI', Tahoma, sans-serif;
  background-color: var(--bg-light);
  color: var(--text-light);
  transition: background-color var(--transition), color var(--transition);
}

body.dark 
{
  background-color: var(--bg-dark);
  color: var(--text-dark);
}

header 
{
  padding: 2rem;
  text-align: center;
  background: var(--primary);
  color: #fff;
}

header img.logo 
{
  max-width: 120px;
  transition: transform var(--transition);
}

header img.logo:hover 
{
  transform: rotate(20deg);
}

nav 
{
  display: flex;
  justify-content: center;
  background: #f1f1f1;
  padding: 1rem;
  position: sticky;
  top: 0;
}

body.dark nav 
{
  background: #333;
}

nav a, nav button.theme-toggle 
{
  margin: 0 1rem;
  color: inherit;
  text-decoration: none;
  font-weight: bold;
  cursor: pointer;
  background: none;
  border: none;
  font-size: 1rem;
  outline: none;
}

section 
{
  max-width: 1000px;
  margin: 3rem auto;
  padding: 0 1rem;
  opacity: 0;
  transform: translateY(20px);
  animation: fadeInUp 0.8s forwards;
}
section:nth-child(odd) { animation-delay: 0.2s; }
section:nth-child(even) { animation-delay: 0.4s; }

@keyframes fadeInUp 
{
  to {
	opacity: 1;
	transform: translateY(0);
  }
}

h2 
{
  border-bottom: 2px solid var(--primary);
  padding-bottom: .5rem;
}

.cards 
{
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
  gap: 1.5rem;
  margin-top: 1.5rem;
}

.card 
{
  background: rgba(0,0,0,0.05);
  border-radius: 8px;
  padding: 1.5rem;
  transition: background var(--transition);
}

body.dark .card 
{
  background: rgba(255,255,255,0.05);
}

.card:hover 
{
  background: rgba(0,0,0,0.1);
}

footer 
{
  text-align: center;
  padding: 2rem;
  background: var(--primary);
  color: #fff;
  margin-top: 3rem;
}

/*nesesar pt two-columns*/
*{
  box-sizing: border-box;
}

/* Create two equal columns that floats next to each other */
.column {
  float: left;
  width: 50%;
  padding: 10px;
  height: 100px;  /*Should be removed. Only for demonstration */
}

/* Clear floats after the columns */
.row:after 
{
  content: "";
  display: table;
  clear: both;
}