

:root {
  --primary-green: #495E57;
  --primary-yellow: #F4CE14;
  --white-color:#FFFFFF;
  --accent-peach: #EE9972;
  --light-peach: #FBDABB;
  --light-gray: #EDEFEE;
  --dark-gray: #333333;
}
html {
  scroll-behavior: smooth;
}

body{
    background-color: #edefee;
    margin: 3rem 5% 3rem 5%;
    font-family: "Karla", sans-serif;
}

h1{
    font-size: 3rem;
}

h2{
    font-size: 2rem;
}

h1,
h2{
    font-family: "Markazi Text", serif;
}

header img{
    display: block;
    margin: 0 auto;
    width: 50%;  
}

nav ul{
    list-style: none;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 2em;
    margin-top: 3rem;
    background-color: var(--primary-green);
    padding: 1rem;
    border-radius: 1rem;
}

nav a{
    text-decoration: none;
    color: var(--white-color);
    font-weight: 600;
    font-size: 1.5rem;
}
nav a.active{
  background-color: var(--primary-yellow);
  color: var(--primary-green);
  padding: 0.4rem 1rem;
  border-radius: 0.5rem; 
}

article{
    flex: 1;
}

/* hero section |background animation */
.hero_banner{
border-radius: 1rem;
padding: 1.5rem;
margin-top: 2rem;
background-image: linear-gradient(rgba(0,0,0,0.5), rgba(0,0,0,0.5)),url('IMAGES_LITTLE_LEMON/background.jpg');
background-size: cover;
background-position: center;
height: 200px;
display: flex;
align-items: center;
justify-content: center;
color: var(--white-color);
position: relative;
overflow: hidden;
}
@keyframes slowZoom{
    from {
        transform: scale(1);
    }
    to{
        transform: scale(1.15);
    }
}
.hero_banner::before{
    content: "";
    position: absolute;
    inset: 0;
    background-image: url('IMAGES_LITTLE_LEMON/background.jpg');
    background-size: cover;
    background-position: center;
    animation: slowZoom 8s ease-in-out infinite alternate;
    z-index: 0;
}
.hero_banner::after {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.45); 
  z-index: 1;
}
.hero_banner article {
  position: relative;
  z-index: 2;           
}

.text_banner{
    font-size: 1.5rem;
    font-weight: 500;
}

.bold_text{
 font-weight: 800;
 font-style: italic;
 color: var(--primary-yellow);
}

.cards {
  display: flex;
  gap: 1rem;
  align-items: stretch;
}

.cards article{
    flex: 1;
    display: flex;
    flex-direction: column;
    background: var(--light-peach);
    padding: 1.5rem;
    border-radius: 1rem;
    margin-top: 1.5rem;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    
}
.cards img{
    width: 100%;
    height: 18rem;
    object-fit: cover;
    flex-shrink: 0;
    border-radius: 0.25rem;
    width: 100%;
}
.cards_footer{
    margin-top: 1rem;       
    padding-top: 2.5rem;
    border-top: 1px solid var(--primary-green); 
    flex: 1;
}

.cta-btn{
    text-decoration: none;
    background-color: var(--primary-green);
    color: var(--white-color);
    padding: .75rem;
    border-radius: .25rem;
    font-weight: 700;
}
.hours{
    width: 100%;
    border-collapse: collapse;
}

.hours th,
.hours td {
  padding: 0.25rem;
  text-align: left;
}

.hours th{
    background-color: var(--primary-green);
    color: var(--white-color);
}
footer{
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-top: 5rem;
}
footer div{
    flex: 1;
}
footer div:last-child{
    text-align: right;
}

footer img{
    width: 6.25rem;
}

/*effects|hover*/

.cta-btn:hover{
    text-decoration: underline;
    opacity: 0.85;
}
nav a:hover{
    text-decoration: underline;
    color: var(--primary-yellow);
}
nav a.active:hover{
    color: var(--white-color);
}
.cards article:hover{
    transform: translateY(-6px) scale(1.02);
    box-shadow: 0 12px 36px rgba(0, 0, 0, 0.14);
}


   @media (max-width: 768px) {
body{
    margin: 1.5rem 4% 1.5rem 4%;
}
  header img {
    width: 80%;
  }
  nav ul {
    flex-direction: column;
    gap: 1rem;
  }
  .text_banner {
    font-size: 1.2rem;
  }
   .hero_banner {
    height: 150px;
  }
  h1 {
    font-size: 2rem;
  }  
  section {
    flex-direction: column;
  }
  .cards {
    flex-direction: column;
  }
  .cards img {
    height: auto;
  }

  footer {
    flex-direction: column;
    text-align: center;
    gap: 1rem;
  }

  footer div:last-child {
    text-align: center;
  }
}

@media (max-width: 1024px) {
  .cards {
    flex-wrap: wrap;
  }

  .cards article {
    flex: 1 1 45%;
  }
}


@media (max-width: 480px) {
 
  body {
    margin: 1rem 4% 1rem 4%;
  }
 
  header img {
    width: 85%;
  }

  nav ul {
    flex-wrap: wrap;     
    gap: 0.75em;
    padding: 0.75rem;
    margin-top: 1rem;
    justify-content: center;
  }
 
  nav a {
    font-size: 1rem;
  }
  .hero_banner {
    height: auto;           
    min-height: 160px;
    padding: 1.5rem 1rem;
  }
 
  h1 {
    font-size: 1.8rem;
  }
 
  h2 {
    font-size: 1.5rem;
  }
 
  .text_banner {
    font-size: 1rem;
  }
  .cards {
    flex-direction: column; 
  }
  .cards article {
    flex: 1 1 100%;         
    margin-top: 1rem;
  }
  .cards img {
    height: 12rem;
  }
  footer {
    flex-direction: column; 
    align-items: center;
    gap: 1rem;
    text-align: center;
  }
  footer div:last-child {
    text-align: center;     
  }
  footer img {
    width: 5rem;
  }
 
}
