/*
  Author: Mikail White
  File: styles.css
  Date: November 17, 2025
*/

/* Reset styles to remove browser defaults */
html, body, h1, h2, h3, h4, h5, h6, p, img, video, ul, li, header, nav, main, footer, section, article, aside {
  margin: 0;
  padding: 0;
  border: 0;
}

/* Base styles for the page */
body {
  font-family: Arial, Helvetica, sans-serif;
  background-color: #f6eee4;
  color: #2a1f14;
}

img, video {
  max-width: 100%;
  height: auto;
}

/* Wrapper to center page content */
#wrapper {
  max-width: 1200px;
  margin: 0 auto;
  background-color: #ffffff;
}

/* Header area styling */
header {
  background-color: #2a1f14;
  color: #f6eee4;
  text-align: center;
  padding: 2% 0;
}

/* Placeholder banner section in header */
header .banner {
  height: 120px;
  background-color: #5f4b3a;
}

/* Header text spacing */
header h1 {
  margin-top: 1%;
}

header p {
  margin-bottom: 1%;
}

/* Footer styling */
footer {
  background-color: #2a1f14;
  color: #f6eee4;
  text-align: center;
  padding: 1% 0 2%;
}

/* Telephone link styling in the footer */
.tel-link a {
  color: #f6eee4;
  text-decoration: none;
}

/* Basic main content spacing */
main {
  padding: 3%;
}

/* Adjust heading margins when using the mobile class on the body */
.mobile h1 {
  margin: 2% 0 0 3%;
}

/* Mobile navigation styling for small screens */
.mobile-nav a {
  color: #ffffff;
  text-align: center;
  font-size: 2em;
  text-decoration: none;
  padding: 3%;
  display: block;
}

/* Hamburger icon container */
.nav-icon {
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  color: #f6eee4;
  padding: 2%;
}

/* Visual styling for the hamburger icon box */
.nav-icon div {
  height: 40px;
  width: 40px;
  color: #2a1f14;
}

/* Hide desktop/tablet nav and mobile nav links by default */
.tab-desk,
.desktop,
#nav-links {
  display: none;
}

/* FAQ section: make questions look clickable */
#questions p {
  cursor: pointer;
}

/* FAQ answer box styling */
#answer {
  text-align: center;
  font-weight: bold;
  width: 80%;
  margin: 0 auto;
}

/* Hide the "Answer:" heading until a question is clicked */
#answer h2 {
  display: none;
}

/* Example caption styling for the video element */
video::cue {
  color: #ffffff;
  background-color: rgba(0, 0, 0, 0.75);
  font-size: 1rem;
  font-family: "Lora", serif;
  text-shadow: 1px 1px 2px #000000;
}

/* Tablet styles for wider screens */
@media (min-width: 620px) {

  /* Hide mobile layout items at tablet size and above */
  .mobile-nav {
    display: none;
  }

  /* Show desktop/tablet navigation at larger widths */
  .tab-desk {
    display: block;
  }

  /* Tablet/desktop nav bar background and border */
  nav {
    background-color: #f6eee4;
    border-bottom: 2px solid #2a1f14;
  }

  /* Horizontal navigation list styling */
  nav ul {
    list-style-type: none;
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 1%;
  }

  /* Navigation list item font and spacing */
  nav li {
    font-family: Arial, Helvetica, sans-serif;
    font-weight: bold;
    margin: 0 1rem;
  }

  /* Navigation link styling */
  nav li a {
    text-decoration: none;
    color: #2a1f14;
    padding: 0.5rem 0.75rem;
  }

  /* Highlight current page and hover state */
  nav li a.current,
  nav li a:hover {
    background-color: #2a1f14;
    color: #f6eee4;
    border-radius: 4px;
  }
}

/* Desktop styles for very wide screens */
@media (min-width: 1000px) {

  /* Add a border around the content on large screens */
  #wrapper {
    border: 1px solid #2a1f14;
  }

  /* Add extra padding for main content on large screens */
  main {
    padding: 3% 5%;
  }
}
