/* Universal styles */
* {
    box-sizing: border-box;
}

/* Global styles for the document */
body {
    margin: 0; /* Remove default margin */
    background-color: #90C7E3; /* Changed background color for mobile */
    color: #666666;
    font-family: Verdana, Arial, sans-serif;
}

/* Style rule for the wrapper ID */
#wrapper {
    /* Removed background image, width, margin, and box-shadow */
    background-color: #FFFFFF;
}

/* Styles for the header element */
header {
    background-color: #002171;
    color: #FFFFFF;
    font-family: Georgia, serif;
    padding: 1em; /* Added padding */
    /* Removed height */
}

/* Styles for the h1 element */
h1 {
    text-align: center;
    font-size: 1.5em; /* Adjusted font size */
    color: #FFFFFF;
    /* Removed letter-spacing and padding */
}

/* Remove underline from header link */
header a {
    text-decoration: none;
    color: #FFFFFF;
}

/* Styles for the nav element */
nav {
    text-align: center; /* Centered text */
    background-color: #FFFFFF; /* White background */
    /* Removed float, position, width, font-weight, and padding */
}

/* Styles for the unordered list in nav */
nav ul {
    display: flex; /* Flex container */
    flex-direction: column; /* Stack links vertically */
    margin: 0; /* Remove default margin */
    padding-left: 0; /* Remove left padding */
    list-style-type: none;
}

/* Styles for the nav list items */
nav li {
    padding: 0.5em 1em; /* .5em top/bottom, 1em left/right */
    width: 100%; /* Full width */
    border-bottom: 1px solid #ccc; /* Bottom border */
}

/* Nav link styles (keep as before) */
nav a {
    text-decoration: none;
}

nav a:link {
    color: #5C7FA3;
}

nav a:visited {
    color: #344873;
}

nav a:hover {
    color: #A52A2A;
}

/* Styles for the h2 element */
h2 {
    color: #1976D2;
    font-family: Georgia, serif;
}

/* Styles for the h3 element */
h3 {
    font-family: Georgia, serif;
}

/* Styles for the dt element */
dt {
    color: #002171;
    font-weight: bold;
}

/* Styles for a class named resort */
.resort {
    color: #1976D2;
    font-size: 1.2em;
}

/* Styles for the main element */
main {
    /* Removed background color, margin, and overflow */
    padding: 0 1em; /* 0 top/bottom, 1em left/right */
}

/* Styles for the section element */
section {
    /* Removed float and width */
    padding-left: 0.5em;
    padding-right: 0.5em;
}

/* Styles for the hero image areas */
#homehero,
#yurthero,
#trailhero {
    height: 300px;
    background-size: 200% 100%; /* Cropped for small viewport */
    background-repeat: no-repeat;
    /* Removed margin-left */
}

#homehero {
    background-image: url('coast.jpg');
}

#yurthero {
    background-image: url('yurt.jpg');
}

#trailhero {
    background-image: url('trail.jpg');
}

/* Styles for the footer element */
footer {
    font-size: 0.70em;
    font-style: italic;
    text-align: center;
    padding: 1em;
    background-color: #FFFFFF;
    /* Removed margin-left */
}

/* Styles for telephone number visibility */
#mobile {
    display: inline; /* Show on small screens */
}

#desktop {
    display: none; /* Hide on small screens */
}


/* =========================================
   Medium Layout: min-width 600px
   ========================================= */
   @media (min-width: 600px) {

    /* h1 element */
    h1 {
      font-size: 2em;
      letter-spacing: 0.25em;
    }
  
    /* Navigation bar as horizontal flex */
    nav ul {
      display: flex;
      flex-direction: row;
      flex-wrap: nowrap;
      justify-content: space-around;
      padding-right: 2em;
    }
  
    nav li {
      width: 12em;
      border-bottom: none;
    }
  
    /* Add more side padding for content sections */
    section {
      padding-left: 2em;
      padding-right: 2em;
    }
  
    /* Flex container for content sections on Yurts/Activities pages */
    #flow {
      display: flex;
      flex-direction: row;
    }
  
    /* Phone visibility toggle for medium and up */
    #mobile {
      display: none;
    }
  
    #desktop {
      display: inline;
    }
  
    /* Hero image scaling for larger viewports */
    #homehero,
    #yurthero,
    #trailhero {
      background-size: 100% 100%;
    }
  }
  

  /* =========================================
   Large Layout: min-width 1024px
   ========================================= */
@media (min-width: 1024px) {

    /* Background gradient for entire page */
    body {
      background-image: linear-gradient(to bottom, #FFFFFF 20%, #90C7E3 60%, #FFFFFF 100%);
    }
  
    /* Wider padding for nav bar */
    nav ul {
      padding-left: 10%;
      padding-right: 10%;
    }
  
    /* Wrapper centered with limited width */
    #wrapper {
      width: 80%;
      margin: auto;
    }
  }
  
