

  :root {
	  --main-color: #e9beed;
	  --main-color-darker: #ce8ed4;
	}

    /* * { box-sizing: border-box; margin: 0; padding: 0; } */
    body, header, nav, nav > ul { box-sizing: border-box; margin: 0; padding: 0; }
    body {
      font-family: georgia, serif;
      line-height: 1.6;
      color: #333;
    }
	#home {
		display: flex;
		justify-content: center;
		align-items: center;
		}
	
	.main{
		display: flex;
		flex-direction: column;
		align-items: center;
	}
	
    h1 {
      font-size: 2rem;
      margin: 1rem;
      color: var(--main-color-darker);
      text-align: center;
    }
	
	h2 {
      font-size: 1.5rem;
      margin: 1rem;
      color: var(--main-color-darker);
      text-align: center;
    }
	
	header h1{
	  color: white;
	}
	
	#about p{
		text-align:justify;
	}
    header {
      background: var(--main-color);
      color: #fff;
      padding: 1rem;
      text-align: center;
    }
    header h1 { font-size: 2.5rem; margin-bottom: 1rem; }
    header p { max-width: 700px; margin: 0 auto; font-size: 1.1rem; }

    nav {
      background: var(--main-color-darker);
      position: sticky;
      top: 0;
      z-index: 1000;
    }
    nav ul {
      display: flex;
      justify-content: center;
      list-style: none;
	  flex-direction: row;
	  gap: 20px;
    }
	

/* Compress on small screens */
@media (max-width: 768px) {
  nav ul {
    flex-direction: column; /* Stack items vertically */
    gap: 10px;              /* Reduce spacing between items */
    padding: 0;             /* Remove default padding */
  }
  
  nav ul li a {
    font-size: 14px;        /* Make text smaller */
	padding: 5px;
  }
}

    nav a {
      display: block;
      padding: 1rem;
      color: #fff;
      text-decoration: none;
      font-weight: bold;
	  transition: background 0.25s;
    }
    nav a:hover { background: var(--main-color); }
	
	
	/* --- Desktop Styles --- */
	.navbar {
	  display: flex;
	  justify-content: space-between;
	  align-items: center;
	  /* padding: 20px; */
	  justify-content: center;
	}

	.nav-links {
	  display: flex;
	  list-style: none;
	  gap: 20px;
	}

	/* Hide hamburger button on desktop */
	.menu-toggle {
	  display: none;
	  font-size: 24px;
	  background: none;
	  border: none;
	  cursor: pointer;
	  color: white;
	}

	/* --- Mobile Styles (Small Screens) --- */
	@media (max-width: 768px) {
	  .menu-toggle {
		display: block; /* Show hamburger button */
	  }

	  .nav-links {
		display: none; /* Hide the menu by default */
		flex-direction: column;
		position: absolute;
		top: 30px;
		left: 0;
		width: 100%;
		background: var(--main-color-darker);
		/* background-color: #fff; */
		/* box-shadow: 0 4px 6px rgba(0,0,0,0.1); */
		padding: 20px;
		gap: 15px;
	  }

	  /* When JS adds the 'active' class, show the menu */
	  .nav-links.active {
		display: flex;
	  }
	}
	
    section {
      padding: 1rem;
      width: 900px;
      margin: 0 auto;
	  background: #cccccccc;
	  border-radius: 5px;
	  margin: 5px;
	  background: rgba(255, 0, 255, 0.02);
	  box-sizing: border-box;
	  box-shadow: 0px 0px 10px rgba(0,0,0,0.1);
    }
	
	@media only screen and (max-width: 920px) {
		section{
			width: 98%;
		}
	}

    .cards {
      display: grid;
      grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
      gap: 1rem;
    }
	
	.imagegallery{
		display:flex;
		flex-wrap: wrap;
		gap: 1rem;
		padding-top: 1rem;
		}
	.imagegallery > *{
		flex: 5 5;
		width: 10rem;
		}
    .card {
      background: #f7f9fc;
      padding: 1.5rem;
      border-radius: 8px;
      box-shadow: 0 2px 6px rgba(0,0,0,0.08);
    }
    .card h3 { margin-bottom: 0.75rem; color: var(--main-color-darker) }

    .ethos {
      background: #f0f4fa;
      border-left: 5px solid var(--main-color-darker);
      padding: 2rem;
      border-radius: 6px;
      font-size: 1.05rem;
    }

    footer {
      background: var(--main-color-darker);
      color: #fff;
      text-align: center;
      padding: 2rem 1rem;
    }

    footer p { margin-bottom: 0.5rem; }

    @media (max-width: 600px) {
      header h1 { font-size: 2rem; }
    }
	.formWrapper{
		display: flex;
		justify-content: center;
	}
	
	.alignedForm{
		display: flex;
		flex-direction:column;
		max-width:75%;
	}
	
	.alignedForm input,
	.alignedForm textarea,
	.alignedForm select{
		margin-left: 4px;
		flex-grow:3;
	}
	
	.formElement{
		width:100%;
		display: flex;
		flex-direction:row;
		padding: 2px;
	}
 