

:root {
  --ashe-standard: hsl(210, 100%, 36%);
  --ashe-red: hsl(349, 100%, 46%);
  --ashe-light-red: hsl(349, 100%, 75%);
  --ashe-very-light-red: hsl(349, 100%, 95%);
  --ashe-background-very-light: hsl(210, 100%, 98%);
  --ashe-background-light: hsl(210, 100%, 95%);
  --ashe-background-menu: #bcdbf6;
  --ashe-background-medium-dark: hsl(210, 100%, 88%);
  --ashe-background-medium: hsl(210, 100%, 82%);
  --ashe-background-dark: hsl(210, 100%, 25%);
  --ashe-background-almost-black: hsl(210, 100%, 15%);
  --ashe-background-black: hsl(0, 0%, 0%);
  --ashe-border: hsl(210, 100%, 25%);
  --ashe-font-serif: Georgia, Times, serif;
  --ashe-font-sans: verdana, arial, serif;
  --ashe-narrow-screen: 600px;
  --ashe-box-shadow: 8px 8px 10px #777777;
}

html {
  background-color: #e6e6e6;
}

body {
  font-family: "calibri", sans-sarif;
  line-height: 1.4em;
  max-width: 1200px;
  margin: auto; 
  padding: 0px;
  background-color: white;
  position: relative;
}

/* ======  Utility classes ============ */
.margin-center {
  margin-left: auto;
  margin-right: auto;
}

.flex-center {
  display: flex;
  justify-content: center;
}

.flex-container {
  display: flex;
  flex-wrap: wrap;
}

.hide {
  display: none;
}


/* ============  General styling - typography  ========= */
/*  Style typography */
p, details {
  text-indent: 0em;
  text-align: justify;
  color: #515151;
  font-size: 1.1em;
  letter-spacing: 0.5px;
  padding: 0px 30px;
  line-height: 1.45;
}

.bigger {
  font-size: larger;
}

.lodging-rules  {
  text-align: left;
  font-size: 85%;
  }

.lodging-rules summary {
  text-decoration: none;
}

.overall-program .download-button {
transform: scale(1.25);
}

.overall-program details img{
  width: 150%;
}

.p-h4 {
  padding: 0;
  margin-inline: 1em;
  color: #f54f5e;
  text-align: center;
  line-height: 1.1;
  font-weight: 900;
}



.footnote  {
  text-align: left;
 }

.bold-italic {
  font-weight: bold;
  font-style: italic;
}

.location {
  padding-right: 0.3em;
  float: right;
  color: var(--ashe-background-dark);
  font-style: italic;
}

.tech .location {
  font-size: small;
}

h1, h2, h3, h4, h5, h6 {
  padding: 5px;
  margin: 5px;
  color: #f54f5e;
  text-align: center;
  line-height: 1.1;
}


h2 {
  font-family: impact, arial, sans-serif;
  letter-spacing: 2px;
  font-size: 2.25em;
  line-height: 1.25;
}


h3 {
  font-family: impact, arial, sans-serif;
  font-weight: 100;
  font-size: 1.8em;
}

h4 {
  font-size: 1.45em;
  text-align: center;
}

h5  {
  font-size: 1.2em;
  text-align: center;
}


.page-title-mobile {
  text-align: center;
  color: var(--ashe-background-dark);
  display: none;
  margin-block: 0;
}

.event a {
  text-decoration: none;
}

@media  screen and (max-width: 600px) {
  .page-title-mobile {
    text-align: center;
    color: var(--ashe-background-dark);
    display: block;
  }

}

/* End Typography */

.photo-box {
  /* background-color: var(--ashe-background-light); */
  margin-top: 0;
  padding-top: 0;
}

.bold-blue-italic {
  color: var(--ashe-background-dark);
  font-style: italic;
  font-weight: 900;
}

@media screen and (min-width: 600px) {
  p {
    margin-left: 1.5rem;
    margin-right: 1.5rem;
  }
}

hr {
  width: 50%;
  margin: 20px auto;
  color: var(--ashe-background-medium);
}


.fancy-link {
  text-decoration: none;
  border-bottom: 0px solid var(--ashe-background-medium);
}

.fancy-link:hover {
  background-color: hsl(208, 76%, 72%);
  border-radius: 4px;
	transition: all 250ms;
	/* border-bottom: 3px solid var(--ashe-background-medium); */
  color: white;
	}

/* Styling for promotional video */
.video-section {
  max-Width: 1000px;
  max-height: 520px;
  background-color: #e9f3fc;
  border-top: 1px solid #125087;
  border-bottom: 1px solid #125087;
  margin: 40px auto 40px auto;
}


.video-section video {
  display: block;
  box-shadow: var(--ashe-box-shadow);
  max-width: 640px;
  max-height: 480px;
  margin: 10px auto 10px auto;
  padding: 10px;
}

video {
  width: 95%;
}

/*  Set of image styling rules  */

img {
  width: 100%;
}

details img {
  display: block;
  margin: auto;
  width: 70%;
}

.img-pages {
  width: 280px;
  margin: 15px 30px 15px 20px;
  float: right;
  box-shadow: var(--ashe-box-shadow);
}

.img-block {
  display: block;
  margin: 30px auto 40px auto;
  box-shadow: var(--ashe-box-shadow);
}

/* Supprese images for small screens  */
.img-pages-small-screen {
  display: none;
}

.coyne {
  max-width: 180px;
  margin: 10px 25px 5px 0px;
  float: left;
  box-shadow: var(--ashe-box-shadow);
}

.img-pages-left {
  max-width: 280px;
  margin: 10px 25px 5px 0px;
  float: left;
  box-shadow: var(--ashe-box-shadow);
}

.img-pages-right {
  max-width: 280px;
  margin: 10px 30px 5px 25px;
  float: right;
  box-shadow: var(--ashe-box-shadow);
}

.img-pages-center {
  display: block;
  max-width: 280px;
  margin: 25px auto;
  box-shadow: var(--ashe-box-shadow);
}

@media screen and (max-width: 600px) {
.img-pages-right {
  display: none;
}


}

/* ===== Style the heading =============== */
.header {
  border-radius: 10px 10px 0 0;
  background-image: url("../img/main-background.png");
  background-repeat: no-repeat;
  background-size: 100% 100%;
  padding: 0px 0px 15px 0px;
  margin: auto;
}

.date-time {
  background-color: var(--ashe-background-light);
  width: 100%;
  margin-inline: auto;
  margin-block: 0;
  padding: 0;
}

/* Style mission statement so it is at the top for big screens and bottom for small screens */
.mission {
  display: none;
}

@media screen and (min-width: 800px) {
  .mission {
    display: block;
    text-align: center;
    text-indent: 0.0em;
    line-height: 1.100em;
    font-style: italic;
    font-weight: bold;
    font-size: 1em;
    color: #125087;
    padding: 0px 40px 0 40px;
  }


.mission-bottom {
  display: none;
}
}

@media screen and (max-width: 801px) {
  .mission-bottom {
    display: block;
    text-align: center;
    text-indent: 0.0em;
    line-height: 1.100em;
    font-style: italic;
    font-weight: bold;
    font-size: 1em;
    color: #125087;
    padding: 0px 40px 0 40px;
  }
}

.menu {
  list-style: none;
  justify-content: center;
  align-items: center;
  border-bottom: 2px solid var(--ashe-standard);
}

.menu li {
  padding: 2px 0.8em 2px 0.8em;
  margin: 0.5em;
  border-radius: 10px;
  border: 1px solid var(--ashe-border);
  background-color: var(--ashe-background-light);
  color: var(--ashe-background-black);
  text-align: center;
}

.menu li:hover {
  background-color: var(--ashe-background-dark);
  color: var(--ashe-background-light);
}

.menu li:hover a {
  background-color: var(--ashe-background-dark);
  color: var(--ashe-background-light);
}

.menu a {
  background-color: var(--ashe-background-light);
  color: var(--ashe-standard);
  text-decoration: none;
}

.menu a:hover {
  background-color: var(--ashe-background-dark);
  color: var(--ashe-background-light);
}


/* End positioning  */
/* =========  media query for small screen menus ================== */

@media screen and (min-width: 600px) {
  .menu {
    background-color: var(--ashe-standard);
    color: var(--ashe-background-light);
    height: 4em;
    padding: 0;
    margin: 0;
    gap: 0.25em;
    align-items: center;
  }

  .menu li {
    display: flex;
    flex-direction: column;
    justify-content: center;
    border: 0px;
    border-radius: 0px;
    background-color: var(--ashe-standard);
    margin: auto 0 auto 0;
    padding-top: 0;
    padding-bottom: 0;
    height: 100%;
  }

  .menu li:hover {
    background-color: var(--ashe-background-medium);
    height: 100%;
  }

  .menu li a {
    background-color: var(--ashe-standard);
    color: white;
    text-decoration: none;
  }

  .menu li:hover a {
    background-color: var(--ashe-background-medium);
    color: var(--ashe-background-dark);
  }
}

/* ==================================================== */
/* ======   Heading styling      ====================== */
/* ==================================================== */

.img-header {
  width: clamp(16em, 35%, 35%);
}

.img-header-section {
  width: clamp(5em, 8em, 12em);
}

/* ==================================================== */
/* ======   position section logos      =============== */
/* ==================================================== */

@media only screen and (width > 900px) {
  .section-link:nth-child(1) {
    position: absolute;
    top: 10px;
    left: 0px;
  }

  .section-link:nth-child(2) {
    position: absolute;
    top: 101px;
    left: 0px;
  }

  .section-link:nth-child(3) {
    position: absolute;
    top: 192px;
    left: 0px;
  }
}

@media only screen and (width < 350px) {
  .section-link {
    display: none;
  }
}

.menu-box > ul {
  border-radius: 0px 0px 10px 10px;
  list-style-type: none;
  margin: 0;
  padding: 0;
  overflow: hidden;
  background-color:#196db6;
  color: white;
 }

/* new section - grid  for menu bar  */

.menu-box {
  display: grid;
  grid-template-columns: repeat( auto-fill, minmax(12ch, 1fr) );
  gap: 0.25em;
  align-items: center;
  justify-items: center;
  }

.menu-box a {
  margin-inline: auto;
  color: var(--ashe-background-dark);
  text-decoration: none;
  text-align: center;
  font-family: "calibri", sans-sarif;
  font-size: 1.0rem;
    }

.menu-box button {
  background-color: var(--ashe-background-menu);
  border-radius: 10px;
  border: 0 solid #196db6;
  margin: 15px auto 15px auto;
  text-align: center;
  color: var(--ashe-background-dark);
  padding: 1px 10px 1px 10px;
  height: 3em;
}

.menu-box button:hover {
  background-color: var(--ashe-background-medium);

}

/* ======================================================================== */


/* Style the header and banner */
/* The banner is not currently used  */

.banner  {
   display: flex;
   justify-content: center;
   border: 1px solid #196db6;
   border-radius: 10px 10px 0px 0px;
   background-color: #196db6;
   height: 30px;
   width: 100%;
}


/* Section using positioning to create links on top of heading screen */
/* Images with 100 tranparency overlay section logos*/



.logo {
  display: block;
  margin-left: auto;
  margin-right: auto;
  width: clamp(40%, 50%, 50%);
}

.logo-small-screen {
  display: block;
  margin-left: auto;
  margin-right: auto;
  height: 330px;
}



/*  Style boxes for general use */

aside  {
  border: 2px solid #f54f5e;
  border-radius: 1em;
  width: max-content;
  background-color: var(--ashe-background-very-light);
}

.blue-box {
  background-color: #e9f3fc;
  border: 1px solid #4b9ee7;
  border-radius: 15px;
}

.menu-box {
  background-color: #bcdbf6;
  border-radius: 0px 0px 10px 10px;
  width: 100%;
}

/*  Style text for general announcements */
.announcement {
  text-align: center;
  line-height: 0.9;
}

.second-line {
  padding-top: 5px;
  text-indent: 2em;
  text-align: left;
  color: black;
  font-size: 1.0em;
  padding: 0 30px 0 30px;
  margin-top: -13px;
}




/* Styling for Pocono visitors' bureau  */
.pocono-home {
  background-color: #ffffff;
  height: 109px;
  border-radius: 10px;
}

.pocono-img {
  display: block;
  margin: auto;
}

/*  Styling for Sponsors pages  */
.sponsor-page-flex {
  display: flex;
  justify-content: space-around;
  flex-wrap: wrap;
}



.left-sponsor-box, .right-sponsor-box {
  display: flex;
  flex-flow: column nowrap;
  width: 45%;
  justify-content: space-between;
}

/* single column for small screens  */
@media screen and (max-width: 800px) {
  .left-sponsor-box, .right-sponsor-box {
    width: 90%;
    margin: 20px 0px 20px 0px;
  }
}

/*  General blue link button   */

button {
  border: 0px solid var(--ashe-border);
  background-color: transparent;
  }


.download-button {
  max-width: 325px;
  border-radius: 10px;
  background-color: var(--ashe-background-dark);
  margin: 20px auto 20px auto;
  text-align: center;
  color: white;
  padding: 1px 10px 1px 10px;
}

.red-button {
 width: 80%;
 background-color: var(--ashe-red);
 border-radius: 10px;
    margin: 20px auto 20px auto;
  text-align: center;
  color: white;
  padding: 1px 10px 1px 10px;
}

.download-button:hover {
  max-width: 325px;
  border-radius: 10px;
  background-color: #196db6;
  margin: 20px auto 20px auto;
  text-align: center;
  padding: 1px 10px 1px 10px;
}

/*  Button for sponsor page only  */
.download-link-sponsor {
  text-decoration: none;
  
}


/*  Styling for program - agenda pages  */
.program-page-flex {
  display: flex;
  flex-direction: column;
}

.left-program-box {
  padding: 0px;
  margin: 20px 0px;
  width: 90%;
  /* flex-grow (0)  flex-shrink(1)  flex-basis(auto) */
}

.top-program-box {
  padding: 0px;
  margin-inline: auto;
  width: 100%;
  /* flex-grow (0)  flex-shrink(1)  flex-basis(auto) */
}

.right-program-box {
  margin: 20px 8px 15px 0px;
  width: 90%;
}

.text-box {
  margin: 20px 8px 15px 0px;
}

.nest-flex {
  /* Boxes for activity selection boxes  */
  display: flex;
  flex-wrap: wrap;
  justify-content: space-around;
}

.activity {
  background-color: #e9f3fc;
  padding: 0px;
  width: 154px;
  height: 169px;
  margin: 20px 0px;
  text-align: center;
  border: 1px solid #4b9ee7;
  /* #4b9ee7  */
  border-radius: 15px;
  transition: transform linear 300ms;
}

.activity:hover {
  transform: scale(1.15);
  transition: transform linear 300ms;
}

.pay-pal-section {
  display: flex;
  background-color: #f4f9fe;
  flex-wrap: wrap;
  justify-content: space-between;
  border-top: 1px solid #125087;
  padding-bottom: 30px;
}

.pay-pal-box {
  text-align: center;
  border-radius: 10px;
  border: 1px solid #125087;
  padding: 10px 10px 10px 10px;
    min-width: 400px;
  margin: 20px auto 0px auto;
  background-color: #e9f3fc;
  text-align: center;
}

.pay-pal-box p {
  text-align: center;
}

.google-map {
  display: block;
  margin: 20px auto 10px auto;
}

/* Style the visitor' bureaus logos */
.visit-pa {
  padding-top: 25px;
  display: flex;
  justify-content: space-around;
}

/* Style the footer */
footer {
  display: block;
  background-color: #196db6;
  padding: 0px 0px 10px 0px;
  border-radius: 0px 0px 10px 10px;
  color: white;
  margin: 0 0 20px 0;
}

footer h2 {
  color: white;
  text-transform: capitalize;
}

footer a {
  color: white;
}

address {
  text-align: center;
  color: white;
}

.social {
  display: flex;
  justify-content: center;
    margin: 8px auto 0px auto;
}
