* {
    margin: 0;
    padding: 0;
}
*{
    font-family: 'Oswald', sans-serif;
}
body{
  min-width: 100%;
}

/* === grid === */
.spirit-grid {
  display:grid;
  grid-template-columns: repeat(2, 1fr);
  place-items: center;
  align-items: stretch;
  row-gap: 6%;
  padding: 4%;
  background: #ffc896;
  margin: auto;
  margin-bottom: 13%;
}

.spirit {
  display:flex;
  background: #f5f5dc;
  border-radius: 15px;
  box-shadow: 0 4px 10px rgba(0,0,0,0.3);
  padding: 5% 5%;
  transition: transform 0.2s ease, box-shadow 0.2s ease;
  text-decoration: none;
  line-height: 1.6;
  max-width: 900px;
  text-align: center;
  height: 40vh;
}

.spirit img{
  max-width: 40%;
  height:auto;
  border-radius: 5px;
  object-fit: contain;
}

.spirit h2 {
  font-size: 2.2em;
  color: #333;
  text-align: center;
  text-shadow:0 4px 10px rgba(0,0,0,0.3);
}

.spirit p {
  color: #333333;
  font-size: 1.6em;
  line-height: 1.4;
  padding: 5% 5%;
}

/* === button ===*/
.button{
display:inline-block;
font-size: 1.3em;
text-decoration: none;
color:#333333;
background-color: #ffc896;
padding: 1.5% 5%;
border-radius: 15px;
box-shadow: 0 4px 10px rgba(0,0,0,0.2);
transition: all 0.3s ease;
}

.button:hover {
  transform: scale(1.1);
  filter:brightness(1.05) drop-shadow(0.5);
}

/* === footer === */
footer{
  background-color: black;
  display: flex;
  align-items: center;
  justify-content: center;
  width:100%;
  height:50px;
  bottom:0;
}
footer p{
  font-size: 1em;
  color:#ffc896;
}

/* === Responsive Design === */
@media(max-width:1710px){
  .spirit-grid{
    padding:2%;
    column-gap: 2%;
    margin-bottom: 20%;
    margin-top: 5%;
  }
  .spirit{
    height: 65vh;
  }
  .spirit h2 {
        font-size: 1.8em;
        margin-top: 10%;
    }
    .spirit p {
        font-size: 1.5em;
    }
}


@media (max-width:1440px){
  .spirit-grid{
    padding:2%;
    column-gap: 1%;
  }
  .spirit h2 {
        font-size: 1.5em;
    }
    .spirit p {
        font-size: 1.3em;
    }
}

@media (max-width: 1024px) {
    .spirit-grid {
        grid-template-columns: 1fr;
        row-gap: 2%;
        padding:2%;
        margin-bottom: 40%;
    }
    .spirit img{
      width:60%;
    }
    .spirit h2 {
        font-size: 1.5em;
    }
    .spirit p {
        font-size: 1.3em;
    }
    .button {
        font-size: 1.2em;
        padding: 1% 3%;
    }
}

@media (max-width: 768px) {
    .spirit-grid {
        grid-template-columns: 1fr;
        align-items: center;
        padding: 2%;
        row-gap: 1.5%;
        margin-bottom: 50%;
    }
    .spirit{
        height:65vh;
    }
    .spirit img {
        max-width: 50%;
        margin-top: 5%;
    }
    .spirit h2{
      margin-top: 10%;
    }
    .spirit h2 {
        font-size: 1.3em;
    }
    .spirit p {
        font-size: 1.1em;
    }
    .button {
        font-size: 1em;
        padding: 1% 3%;
    }
}

@media (max-width: 480px) {
    .spirit-grid {
        grid-template-columns: 1fr;
    }
    .spirit {
        flex-direction: column;
        align-items: center;
        height:65vh;
    }
    .spirit img {
        max-width: 50%;
        margin-top: 5%;
    }
    .spirit h2 {
        font-size: 1em;
    }
    .spirit p {
        font-size: 0.8em;
    }
    .button {
        font-size: 0.9em;
        padding: 1% 3%;
    }
}
@media (max-width: 425px){
  .spirit-grid {
        grid-template-columns: 1fr;
        padding: 2%;
        row-gap: 1%;
        margin-bottom: 70%;
    }
}

@media (max-width: 380px) {
    .spirit-grid {
        grid-template-columns: 1fr;
        padding: 2%;
        row-gap: 1%;
        margin-bottom: 70%;
    }
    .spirit {
        flex-direction: column;
        gap: 2%;
        padding: 4%;
        align-items: center;
        height:65vh;
    }
    .spirit img {
        max-width: auto;
        height: 60%;
        margin-top: 5%;
    }
    .spirit h2 {
        font-size: 1em;
    }
    .spirit p {
        font-size: 0.8em;
    }
    .button {
        font-size: 0.9em;
        padding: 1% 3%;
    }
}





