/* THEME VARIABLES */
:root {
    --bg: #1f1f1f;
    --primary: #d83526;
    --accent: #ffcb05;
    --text: #ededed;
    --white: #ffffff;
    --header-bg: #2a2a2e
  }
  
  /* BASE STYLES */
  body {
    background-color: #1c1c1e; /* Dark graphite with elegance */
    color: #e5e5e7; /* Muted off-white for high readability */
    font-family: 'Roboto', sans-serif;
    margin: 0;
    padding: 0;
  }
  
  .desktop-header,
  .mobile-header,
  .nav-links a,
  .menu-bar a,
  .prompt-box,
  .centered,
  .f3begin,
  .begin h1,
  .begin p,
  .howf3start p,
  .howf3start h1,
  .cuscontainer,
  .mediamessage,
  .backtext {
    font-family: 'Roboto', sans-serif;
  }
  .yt-embed {
    aspect-ratio: 16 / 9;
    width: 95%;
    text-align: center;
  }
    
  .desktop-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 15px 40px;
    background-color: var(--header-bg);
    color: var(--text);
    position: sticky;
    top: 0;
    z-index: 1000;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.3);
  }
  
  /* Optional: Add a subtle logo or title */
  .desktop-header::before {
    content: "F3 Susquehanna Valley";
    font-size: 20px;
    font-weight: bold;
    color: var(--accent);
  }
  
  /* Navigation styles */
  .desktop-header .nav-links {
    display: flex;
    gap: 30px;
  }
  
  .desktop-header .nav-links a {
    text-decoration: none;
    color: var(--white);
    font-size: 25px;
    position: relative;
    transition: color 0.3s;
  }
  
  .desktop-header .nav-links a::after {
    content: "";
    display: block;
    height: 2px;
    width: 0;
    background-color: var(--accent);
    transition: width 0.3s ease;
    position: absolute;
    bottom: -6px;
    left: 0;
  }
  
  .desktop-header .nav-links a:hover {
    color: var(--accent);
  }
  
  .desktop-header .nav-links a:hover::after {
    width: 100%;
  }
  .nav-links a.current-page {
    color: var(--accent);
  }
  
  .nav-links a.current-page::after {
    width: 100%;
  }
  
  
  /* OVAL NAVIGATION */
  .oval-navigation {
    position: fixed;
    bottom: 20px;
    left: 0;
    right: 0;
    margin: auto;
    background-color: rgba(233, 179, 174, 0.947);
    width: 90%;
    max-width: 400px;
    height: 60px;
    border-radius: 45px;
    display: flex;
    justify-content: space-around;
    align-items: center;
    box-shadow: 0px 4px 10px rgba(0, 0, 0, 0.1);
    z-index: 1000;
    transition: transform 0.2s ease-out;
  }
  
  .oval-navigation a {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-decoration: none;
  }
  
  .oval-navigation img {
    width: 30px;
    height: 30px;
    margin-bottom: 5px;
    border-radius: 5px;
  }
  
  .notactive {
    font-size: 12px;
    color: #333;
  }
  
  .active {
    font-size: 12px;
    color: var(--accent);
  }
  
  /* ANIMATION */
  @keyframes bob {
    0%, 100% {
      transform: translateY(0);
    }
    50% {
      transform: translateY(-1px);
    }
  }
  
  .bobbing {
    animation: bob 0.5s ease-in-out;
  }
  
  /* PROMPTS AND MISC TEXT */
  .prompt-box,
  .f3begin p,
  .joinus p {
    color: var(--text);
  }
  
  /* BUTTON */
  .jus {
    background-color: transparent;
    border: 2px solid var(--primary);
    color: var(--white);
    padding: 12px 76px;
    font-size: 3.2vw;
    font-weight: bold;
    border-radius: 6px;
    text-decoration: none;
    display: inline-block;
    box-shadow: inset 0 1px 0 var(--primary);
  }
  
  .jus:hover {
    background-color: var(--primary);
    box-shadow: 0 0 10px rgba(216, 53, 38, 0.5);
    color: var(--white);
  }
  
  /* CUSTOM BORDER */
  .custom-border::before,
  .custom-border::after {
    border-bottom: 3px solid var(--accent);
  }
  
  /* ARROWS */
  .arrow {
    cursor: pointer;
    font-size: 40px;
    color: var(--accent);
    user-select: none;
  }
  .arrow:hover {
    color: var(--white);
  }
  
  /* MOBILE ONLY */
  @media screen and (max-width: 767px) {
    .desktop-header {
      display: none;
    }
    .oval-navigation {
      display: flex;
    }
    .mobfoot {
      padding-bottom: 80px;
    }
    .mobfoot p {
      color: var(--white);
      text-align: center;
      padding: 0 10%;
      font-size: 2.2vw;
    }
    .deskfooter {
      display: none;
    }
    .top-row {
      font-size: 30px;
      padding: 5px 0 10px;
      background-color: var(--header-bg);
      color: var(--text);
      text-align: center;
    }
  }
  
  /* DESKTOP ONLY */
  @media screen and (min-width: 768px) {
    .desktop-header {
      display: flex;
    }
    .oval-navigation {
      display: none;
    }
    .mobfoot {
      display: none;
    }
    .top-row {
        display: none;
    }
    .deskfooter {
      text-align: center;
      color: var(--text);
      padding: 20px;
    }
    .deskfootrow ul {
      list-style-type: none;
      padding: 0;
      margin: 0;
    }
    .deskfootrow li {
      display: inline;
      margin: 0 10px;
    }
    .deskfootrow a {
      color: var(--white);
      text-decoration: none;
      transition: color 0.3s ease;
    }
    .deskfootrow a:hover {
      text-decoration: underline;
      color: var(--accent);
    }
    .copy {
      margin-top: 10px;
      font-size: 14px;
      color: #aaa;
    }
  }
  