body {
  background: #EFE9D9;
  margin: 0;
  line-height: 1.6;
  scroll-behavior: smooth;
  font-family: "Libertinus Sans", sans-serif;
  font-weight: 400;
  font-style: normal;
  font-size: 20px;
}

.parallax__layer {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 200%;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
}

/* Example backgrounds — replace with your images */
.parallax__layer--back {
  background-image: url('images/bg-1.png');
  z-index: 1;
}
.parallax__layer--middle {
  background-image: url('images/bg-2.png');
  z-index: 2;
}
.parallax__layer--front {
  background-image: url('images/bg-3.png');
  z-index: 3;
}

header {
  text-align: center;
  padding: 2rem 1rem;
  min-height: 90vh;
  display: flex;
  flex-direction: column;
  justify-content: center;
  position: relative;
  z-index: 10;
}

header img {
  margin: 2rem auto;
  max-width: 90%;
  height: auto;
}

@media (min-width: 768px) {

  header img {
    margin: 4rem auto;
  }
  
}

nav {
  text-align: center;
  margin: 1rem 0;
}

@media (min-width: 768px) {
  
  nav {
    margin: 2rem 0;
  }

}

nav a {
  display: inline-block;
  margin: 0 1rem;
  text-decoration: none;
  color: #333;
  font-weight: bold;
}

nav a i.fa,
nav a i.fa-solid {
  display: block;
  margin: 0 auto;
}

section {
  padding: 4rem 1rem;
  max-width: 900px;
  margin: auto;
  min-height: 90vh;
  display: flex;
  flex-direction: column;
  justify-content: center;
  position: relative;
  z-index: 10;
}

#about img {
  max-width: 100%;
  height: auto;
  display: block;
  margin: 1rem auto;
}

#photos {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
  gap: 1rem;
}

#photos img {
  width: 100%;
  border-radius: 5px;
}

form {
  display: grid;
  gap: 1rem;
  width: 100%;
  margin: 1rem auto;
}

button {
  padding: 0.75rem;
  background: #333;
  color: #fff;
  border: none;
  cursor: pointer;
}

button:hover {
  background: #555;
}

.social {
  margin: 1rem 0;
}

@media (min-width: 768px) {

    .social {
      margin: 2rem 0;
    }
  
}

.social a {
  display: inline-block;
  background: transparent;
  border-radius: 2px;
  font-size: 3rem;
  padding: 0.25rem;
  margin: 0 1rem;
}

.social button:hover,
.social button:focus {
  background: rgba(255, 255, 255, 0.5);
}

footer {
  text-align: center;
  padding: 1rem;
  margin-top: 2rem;
}


input, textarea {
  width: 90%;
  padding: 0.75rem 1rem;
  font-size: 1.6rem;
  font-family: "Libertinus Sans", sans-serif;

  border: 2px solid #280600;
  border-radius: 1rem;      /* adjust to match your rounded shape */
  background: white;

  /* second "layer" underneath */
  box-shadow: 6px 6px 0 0 #E1B708; /* teal offset background */
  
  /* make it look a bit playful */
  outline: none;
  transition: box-shadow 0.2s ease, transform 0.2s ease;
}

button[type='submit'] {
  background: #64C6AB;
  border: 2px solid #280600;
  border-radius: 1rem;
  font-size: 1.5rem;
  font-weight: bold;
  color: #280600;
  width: 94%;
}

#form-status {
  font-size: 1.6rem;
  font-weight: bold;
}
.status { margin: 0.75rem 0 1rem; font-size: 0.95rem; }
.status--info { color: #1C7A91; }
.status--success { color: #4D9274; }
.status--error { color: #EB4A35; }

/* -- Fonts -- */

.teal {
  color: #3A7D6A;
}

.yellow {
  color: #987C07;
}

.orange {
  color: #883700;
}

.red {
  color: #EB4A35;
}


.blue {
  color: #1C7A91;
}


.green {
  color: #4D9274;
}


h1, h2, h3, h4, h5, h6 {
  font-family: "Edu NSW ACT Cursive", cursive;
  font-optical-sizing: auto;
  font-weight: normal;
  font-style: normal;
}

h1 {
  color: #280600;
  font-size: 3.5rem;
  margin: 0 0 3.5rem;
}

h2 {
  color: #280600;
  font-size: 2.5rem;
  margin: 0 0 3rem;
}

h3 {
  color: #987C07;
  font-size: 2rem;
  margin: 1rem 0 0.5rem;
}

h4 {
  color: #883700;
  font-size: 1.8rem;
  margin: 1rem 0 0.5rem;
}

h5 {
  color: #280600;
  font-size: 1.5rem;
  margin: 1rem 0 0.5rem;
}

h6 {
  color: #280600;
  font-size: 1.3rem;
  margin: 1rem 0 0.5rem;
}

p {
  margin: 1rem 0 0.5rem;
}

.libertinus-sans-regular {
  font-family: "Libertinus Sans", sans-serif;
  font-weight: 400;
  font-style: normal;
}

.libertinus-sans-bold {
  font-family: "Libertinus Sans", sans-serif;
  font-weight: 700;
  font-style: normal;
}

.libertinus-sans-regular-italic {
  font-family: "Libertinus Sans", sans-serif;
  font-weight: 400;
  font-style: italic;
}

.sr-only {
  position: absolute !important;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0 0 0 0);
  clip-path: inset(50%);
  border: 0;
  white-space: nowrap;
}

.sr-only-focusable:not(:focus):not(:active) {
  position: absolute !important;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0 0 0 0);
  clip-path: inset(50%);
  border: 0;
  white-space: nowrap;
}

.hp {
  position: absolute !important;
  left: -9999px !important;
  width: 1px;
  height: 1px;
  overflow: hidden;
  visibility: hidden;
}

.challenge { margin-top: 0.5rem; }
.challenge span { display:block; font-size:0.95rem; margin-bottom:0.25rem; }

