@import url("css_files/fonts/ubuntutitling_bold_macroman/stylesheet.css");
@import url("css_files/fonts/ubuntutitling_regular_macroman/stylesheet.css");
@import url("css_files/fonts/ubuntu_bold_macroman/stylesheet.css");
:root {
  --berry: #600329;
    /* Berry Brand Palette */
  --berry-primary: rgba(176, 58, 91, 1);     /* #b03a5b */
  --berry-primary-80: rgba(176, 58, 91, 0.8);
  --berry-primary-60: rgba(176, 58, 91, 0.6);
  --berry-primary-40: rgba(176, 58, 91, 0.4);
  --berry-primary-20: rgba(176, 58, 91, 0.2);

  --berry-deep: rgba(140, 47, 71, 1);         /* #8c2f47 */
  --berry-deep-80: rgba(140, 47, 71, 0.8);
  --berry-deep-60: rgba(140, 47, 71, 0.6);
  --berry-deep-40: rgba(140, 47, 71, 0.4);
  --berry-deep-20: rgba(140, 47, 71, 0.2);

  --berry-light: rgba(217, 106, 140, 1);      /* #d96a8c */
  --berry-light-80: rgba(217, 106, 140, 0.8);
  --berry-light-60: rgba(217, 106, 140, 0.6);
  --berry-light-40: rgba(217, 106, 140, 0.4);
  --berry-light-20: rgba(217, 106, 140, 0.2);

  --berry-blush: rgba(242, 203, 215, 1);      /* #f2cbd7 */
  --berry-blush-80: rgba(242, 203, 215, 0.8);
  --berry-blush-60: rgba(242, 203, 215, 0.6);
  --berry-blush-40: rgba(242, 203, 215, 0.4);
  --berry-blush-20: rgba(242, 203, 215, 0.2);


  --green: #214e00;
  --green-primary: rgba(33, 78, 0, 1);

  --green-primary-80: rgba(33, 78, 0, 0.8);
  --green-primary-60: rgba(33, 78, 0, 0.6);
  --green-primary-40: rgba(33, 78, 0, 0.4);
  --green-primary-20: rgba(33, 78, 0, 0.2);
  --green-light: rgba(102, 153, 51, 1);       /* #669933 */
  --green-light-80: rgba(102, 153, 51, 0.8);
  --green-light-60: rgba(102, 153, 51, 0.6);
  --green-light-40: rgba(102, 153, 51, 0.4);
  --green-light-20: rgba(102, 153, 51, 0.2);
  --green-blush: rgba(204, 229, 204, 1);   /* #cce5cc */ 
  --green-blush-80: rgba(204, 229, 204, 0.8);
  --green-blush-60: rgba(204, 229, 204, 0.6);
  --green-blush-40: rgba(204, 229, 204, 0.4);
  --green-blush-20: rgba(204, 229, 204, 0.2);
  
  --green-deep: rgba(0, 51, 0, 1);          /* #003300 */
  --green-deep-80: rgba(0, 51, 0, 0.8);
  --green-deep-60: rgba(0, 51, 0, 0.6);
  --green-deep-40: rgba(0, 51, 0, 0.4);
  --green-deep-20: rgba(0, 51, 0, 0.2); 

  --blush: #FEEFF3;
  --blush-primary: rgba(254, 239, 243, 1);
  --blush-primary-80: rgba(254, 239, 243, 0.8);
  --blush-primary-60: rgba(254, 239, 243, 0.6);
  --blush-primary-40: rgba(254, 239, 243, 0.4);
  --blush-primary-20: rgba(254, 239, 243, 0.2);
  --blush-deep: rgba(204, 153, 179, 1);      /* #cc99b3 */
  --blush-deep-80: rgba(204, 153, 179, 0.8);
  --blush-deep-60: rgba(204, 153, 179, 0.6);
  --blush-deep-40: rgba(204, 153, 179, 0.4);
  --blush-deep-20: rgba(204, 153, 179, 0.2);
  --blush-light: rgba(255, 204, 229, 1);   /* #ffcced */
  --blush-light-80: rgba(255, 204, 229, 0.8);
  --blush-light-60: rgba(255, 204, 229, 0.6);
  --blush-light-40: rgba(255, 204, 229, 0.4);
  --blush-light-20: rgba(255, 204, 229, 0.2); 

  --text-dark: #3a2f2f;
  --font-main: 'Ubuntu', sans-serif;
  --white: #ffffff;

    /* Spacing Scale */
  --space-1: 0.5rem;   /* tiny */
  --space-2: 1rem;     /* small */
  --space-3: 1.5rem;   /* medium */
  --space-4: 2rem;     /* large */
  --space-5: 3rem;     /* extra large */

}

section,
.thumbnail-grid,
footer,
#header-placeholder {
  margin-block: var(--space-5);
}

footer {
  margin-top: var(--space-5);
  padding: var(--space-3) 0;
}

.thumbnail-grid {
  display: grid;
  gap: var(--space-4);
  padding: var(--space-4);
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
} 
html,body {
  background-color: var(--white);
  font-family: var(--font-main);
  color: var(--text-dark);
}
.fd_standard {
  max-width: 800px;
  margin: 2rem auto;
  padding: 2rem;
  background: white;
  border: 2px solid var(--green);
  border-radius: 12px;
}
.p-title{
    font-size: 2.5rem;
  color: var(--green);
  margin-bottom: 0.5rem;
}
.logo {
  height: 80px;
  width: auto;
  display: block;
  margin: 0 auto;
}
/* Berry hyperlink styling */
.berry-link {
  color: var(--berry-primary);
  text-decoration: none;
  font-weight: 500;
  transition: color var(--berry-primary) ease, text-decoration 0.3s ease;
}
.berry-link:visited {
  color: var(--berry-deep);
}
.berry-link:active {
  color: var(--berry-light);
  text-decoration: underline;
}
.berry-link:hover,
.berry-link:focus {
  color: var(--berry-deep); /* deeper berry on hover */
  text-decoration: underline;
}

.berry-link {
  margin-right: 1rem; /* adds space to the right of each link */
}
.berry-link:last-child {
  margin-right: 0; /* removes extra space after the last link */
}

@media (min-width: 1200px) and (max-width: 1919px) {
    .product-tile {
        width: 30%;
        margin-right: 1.5%;
        margin-left: 1.5%;
    }
}

.product-tile {
    float: left;
    width: 100%;
    height: auto;
    margin-top: 10px;
    margin-bottom: 10px;
    margin-left: auto;
    margin-right: auto;
    padding: 10px;
    border: 1px solid #dee1e3;
}
.about-section {
  background-color: var(--paper);
  padding: 3rem 2rem;
  max-width: 900px;
  margin: 0 auto;
  border-radius: 12px;
  box-shadow: 0 4px 12px rgba(0,0,0,0.05);
}

.about-content {
  font-family: var(--body-font);
  font-size: 1.1rem;
  line-height: 1.7;
  color: var(--ink);
}

.about-heading {
  font-family: var(--title-font);
  font-size: 2rem;
  color: var(--berry-dark);
  text-align: center;
  margin-bottom: 2rem;
}

.about-content p {
  margin-bottom: 1.5rem;
}

.about-content strong {
  color: var(--green-deep);
}

.about-content em {
  color: var(--berry-medium);
  font-style: italic;
}

.about-list {
  margin: 1rem 0 2rem;
  padding-left: 1.5rem;
  list-style-type: disc;
  color: var(--ink);
}

.contact-section {
  background-color: var(--paper);
  padding: 3rem 2rem;
  max-width: 900px;
  margin: 0 auto;
  border-radius: 12px;
  box-shadow: 0 4px 12px rgba(0,0,0,0.05);
}

.contact-content {
  font-family: var(--body-font);
  font-size: 1.1rem;
  line-height: 1.7;
  color: var(--ink);
}

.contact-heading {
  font-family: var(--title-font);
  font-size: 2rem;
  color: var(--berry-dark);
  text-align: center;
  margin-bottom: 2rem;
}

.contact-content p {
  margin-bottom: 1.5rem;
}

.contact-content strong {
  color: var(--green-deep);
}

.contact-content em {
  color: var(--berry-medium);
  font-style: italic;
}

.contact-list {
  margin: 1rem 0 2rem;
  padding-left: 1.5rem;
  list-style-type: disc;
  color: var(--ink);
}


.recipe-glance {
  background-color: var(--blush);
  padding: var(--space-2);
  border-radius: 0.5rem;
  display: grid;
  gap: var(--space-2);
  grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));
  margin-bottom: var(--space-3);
}

.recipe-glance-title {
  font-size: 1.5rem;
 /* font-weight: bold;*/
 /* margin-bottom: 1rem;*/
  color: #333;
}

.glance-box {
 padding: var(--space-2);
  border-radius: 0.5rem;
  text-align: center;
  color: inherit;
  font-weight: normal;
  font-size: 0.85rem;
 min-height: 100px;
  background-color: var(--berry);
  color: white;
}


.best {
  color: var(--blush); /* blush font */
}

.fastest {
  color: #ffffff; /* white font */
}

.cheapest {
  color: var(--green-blush); /* light green font */
}

/* HERO GRID */
.hero-grid {
  display: grid;
  gap: var(--space-2);
  grid-template-columns: repeat(auto-fit, minmax(140px, 200px));
  justify-content: center;       /* centers the grid */
  justify-items: center;         /* centers items inside each column */
  max-width: 700px;              /* prevents full-page stretching */
  margin: 0 auto var(--space-4); /* centers the grid on the page */
}



/* HERO OPTION */
.hero-option {
  background-color: var(--berry-primary);
  color: white;
  padding: var(--space-2);
  border-radius: 10px;
  text-align: center;
  cursor: pointer;
  width: 100%;
  max-width: 300px;
  transition: background-color 0.2s ease, transform 0.2s ease;
}

.hero-option:hover {
  background-color: var(--berry-deep);
  transform: translateY(-3px);
}

.hero-thumb {
  width: 100px;
  height: 100px;
  object-fit: cover;
  border-radius: 8px;
  margin-bottom: var(--space-1);
}

.hero-title {
  margin: 0 0 var(--space-1);
  font-size: 1.2rem;
  font-weight: lighter;
}

.hero-icons {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: var(--space-1);
}

.hero-icons img {
  height: 18px;
  width: auto;
}

/* RECIPE VIEWER */
.recipe-viewer {
  margin-top: var(--space-4);
}

.recipe-panel {
  display: none;
  background: var(--white);
  padding: var(--space-4);
  border-radius: 12px;
  box-shadow: 0 4px 12px rgba(0,0,0,0.08);
  margin-bottom: var(--space-4);
}

.recipe-panel-title {
  color: var(--berry);
  margin-bottom: var(--space-3);
}

/* MOBILE STACK */
@media (max-width: 768px) {
  .hero-grid {
    grid-template-columns: 1fr;
  }
}

/* RECIPE VIEWER */
.recipe-viewer {
  margin-top: var(--space-4);
}

/* PANEL BASE STATE */
.recipe-panel {
  background: var(--white);
  padding: var(--space-4);
  border-radius: 12px;
  box-shadow: 0 4px 12px rgba(0,0,0,0.08);
  margin-bottom: var(--space-4);

  /* Hidden by default */
  max-height: 0;
  opacity: 0;
  overflow: hidden;

  /* Animation */
  transition: max-height 0.5s ease, opacity 0.4s ease;
}

/* PANEL OPEN STATE */
.recipe-panel.open {
  max-height: 2000px; /* large enough for any recipe */
  opacity: 1;
}

/* CLOSE BUTTON */
.close-recipe {
  background-color: var(--berry-primary);
  color: white;
  border: none;
  padding: 0.5rem 1rem;
  border-radius: 8px;
  font-size: 0.9rem;
  float: right;
  cursor: pointer;
  margin-bottom: var(--space-2);
  transition: background-color 0.2s ease;
}

.close-recipe:hover {
  background-color: var(--berry-deep);
}