/* Shared Greek Mythology Theme */
:root {
   --accent-color: #d4af37;
   --secondary-color: #333;
}


body {
   font-family: 'Times New Roman', serif;
   margin: 0;
   background-color: #fcfaf5;
   color: #222;
}


/* Cleaner Navigation Bar */
nav {
   display: flex;
   justify-content: center;
   gap: 40px;
   background: #111;
   padding: 20px 0;
   position: sticky;
   top: 0;
   z-index: 1000;
   box-shadow: 0 4px 15px rgba(0,0,0,0.4);
}


nav a {
   color: #d4af37;
   text-decoration: none;
   font-size: 1rem;
   font-weight: bold;
   text-transform: uppercase;
   letter-spacing: 3px;
   transition: all 0.3s;
}


nav a:hover {
   color: white;
   text-shadow: 0 0 8px #d4af37;
}


header {
   text-align: center;
   padding: 80px 20px;
   border-bottom: 10px double var(--accent-color);
}


h1 {
   font-size: 4rem;
   letter-spacing: 8px;
   margin: 0;
   font-variant: small-caps;
   color: var(--accent-color);
}


/* Updated Grid for 2x5 Layout */
.menu-container {
   display: grid;
   /* This creates exactly two columns of equal width */
   grid-template-columns: repeat(2, 1fr);
   gap: 40px;
   padding: 60px;
   max-width: 1200px; /* Widened slightly to fit two large boxes side-by-side */
   margin: auto;
}


.product-card {
   border: 4px solid var(--accent-color);
   padding: 35px;
   background: white;
   box-shadow: 12px 12px 0px var(--secondary-color);
   transition: 0.3s;
   position: relative;
   /* Ensures the price doesn't overlap text in the 2-column view */
   display: flex;
   flex-direction: column;
   justify-content: space-between;
   min-height: 300px;
}


/* Responsive fix: If the screen is too narrow (like a phone),
  it switches back to 1 column so the text remains readable. */
@media (max-width: 900px) {
   .menu-container {
       grid-template-columns: 1fr;
       padding: 20px;
   }
}


/* Pricing Tag Adjustment */
.price-tag {
   align-self: flex-end;
   font-size: 1.5rem;
   font-weight: bold;
   color: var(--accent-color);
   margin-top: 20px;
}




.product-card h3 {
   font-size: 2.2rem;
   margin-top: 0;
   color: var(--accent-color);
   border-bottom: 2px solid #eee;
   padding-bottom: 10px;
}


.product-card p {
   font-size: 1.2rem;
   line-height: 1.8;
   font-style: italic;
   color: #444;
}


/* Pricing Tag */
.price-tag {
   position: absolute;
   bottom: 20px;
   right: 40px;
   font-size: 1.5rem;
   font-weight: bold;
   color: var(--accent-color);
}


.price-tag::before {
   content: "◈ ";
   font-size: 0.9rem;
}


/* Theme Variances */
.forbidden-cattle { --accent-color: #800000; --secondary-color: #4a0000; }
.lotus-eaters { --accent-color: #4b0082; --secondary-color: #2a004a; }
.penelopes-pastries { --accent-color: #556b2f; --secondary-color: #2e3b19; }


