/* 1. Use a more-intuitive box-sizing model */
*, *::before, *::after {
  box-sizing: border-box;
}
/* 2. Remove default margin */
* {
  margin: 0;
  padding: 0;
}
/* 3. Enable keyword animations */
@media (prefers-reduced-motion: no-preference) {
  html {
    interpolate-size: allow-keywords;
  }
}
body {
  /* 4. Add accessible line-height */
  line-height: 1.5;
  /* 5. Improve text rendering */
  -webkit-font-smoothing: antialiased;
}
/* 6. Improve media defaults */
img, picture, video, canvas, svg {
  display: block;
  max-width: 100%;
}
/* 7. Inherit fonts for form controls */
input, button, textarea, select {
  font: inherit;
}
/* 8. Avoid text overflows */
p, h1, h2, h3, h4, h5, h6 {
  overflow-wrap: break-word;
}
/* 9. Improve line wrapping */
p {
  text-wrap: pretty;
}
h1, h2, h3, h4, h5, h6 {
  text-wrap: balance;
}
/*
  10. Create a root stacking context
*/
#root, #__next {
  isolation: isolate;
}
/* end of reset */

body {
    background-color: rgb(64, 56, 56);
    color: rgb(219, 219, 219)
}

#header {
    display:flex;
    flex-direction:row;
    justify-content: space-between;
    align-items: center;
    background-color: rgb(40,40,30);
    border-bottom: 1px rgb(151, 151, 151) solid;
    padding:0vw 2vw;
}

#menu {
    display:flex;
    flex-direction:row;
    align-items: center;
    justify-content:start;

}
.menu-opts {
    padding: 0.5vw;
    margin: 0vw 2vw;
    height:auto;
}

#media {
    max-width:99px;
    height:auto;
}

#writing {
    max-width:112px;
    height:auto;
}

#about {
    max-width:93px;
    height:auto;
}

#contact {
    max-width:112px;
    height:auto;
}

#logo {
    font-size: 25px;
    margin:0vw 3vw;
    padding: 1vw;
}

.headings {
  display: block;              /* ensures padding and width behave */
  width: 100%;                 /* fill its available container width */     
  padding-left: 4vw;          /* consistent inner spacing */
  border-bottom: 1px solid rgb(151,151,151);
}

#sos-label {
    width: 500px;
    padding-left:4vw;
}

#lc-label {
    width: 400px;
    padding-left:4vw;
}

.video-container {
    width: 90vw;
    max-width: 1200px;
    margin: 5vh auto; /* centers the block horizontally */
    text-align: center; 
    display: flex;
    flex-direction: column;
    align-items: start; /* centers its children horizontally */
}

video {
  width:100%;
  height:auto;
}

#sos-sub {
  margin-top:1.5vw;
  width: 600px;
}

#hist-label {
    max-width: 1150px;
    height:auto;
    padding-left:4vw;
    padding-right:3vw;
}

#mm-label {
    width: 400px;
}

#myst-cat {
    width:280px;
    margin-left: 4vw;
    margin-top: 4vw;
}
.intro_text {
    width: 90vw;
    font-size: 12px;
    font-family:'Courier New', Courier, monospace;
    padding: 4.5vw;
    flex-wrap: wrap;
}

#contact-blurb {
    padding:3vw;
    width:80vw;
    display:flex;
    justify-content:center;
}

#email {
    width: 190px;
}

#doc-grid {
    display:flex;
    flex-direction: row;
    justify-content:center;
    flex-wrap: wrap;
}

.invite {
  width: 600px;
  height:600px;
  margin:10px;

}
i {
    display:inline;
}

h3 {
    padding-left: 3vw;
    padding-top: 1vw;
    padding-bottom: 0vw;
}

/* Tablet screens */
@media (max-width: 768px) {
  #header {
    display:flex;
    flex-direction:row;
    justify-content: space-between;
    align-items: center;
    width:100vw;
    background-color: rgb(40,40,30);
    border-bottom: 1px rgb(151, 151, 151) solid;
    padding:0vw 2vw;
  }
  #menu {
    display:flex;
    flex-direction:row;
    align-items: center;
    justify-content:start;
  }
  .menu-opts {
    padding: 0.5vw;
    margin: 0vw 2vw;
    height:auto;
  }
  #media {
    max-width:79px;
    height:auto;
  }
  #writing {
    max-width:92px;
    height:auto;
  }
  #contact {
    max-width:92px;
    height:auto;
  }
  #logo {
    width:16vw;
    margin:0vw 3vw;
    padding: 2vw;
  }
  #mm-label {
    padding-left:2vw;
    padding-right:1vw;
    display:block;
  }
}

/* Mobile phones */
@media (max-width: 480px) {
  #header {
    display:flex;
    flex-direction:row;
    justify-content: space-between;
    align-items: center;
    width:100vw;
    background-color: rgb(40,40,30);
    border-bottom: 1px rgb(151, 151, 151) solid;
    padding:0vw 2vw;
  }
  #menu {
    display:flex;
    flex-direction:row;
    align-items: center;
    justify-content:start;
  }
  .menu-opts {
    padding: 0.5vw;
    margin: 0vw 2vw;
    height:auto;
  }
  #media {
    max-width:69px;
    height:auto;
  }
  #writing {
    max-width:82px;
    height:auto;
  }
  #contact {
    max-width:82px;
    height:auto;
  }
  #logo {
    width:16vw;
    margin:0vw 3vw;
    padding: 2vw;
  }
  
  #writing1 {
    padding-left:4vw;
  }

  #mm-label {
    padding-left:1vw;
  }

  .intro_text {
    width: 95vw;
    font-size: 11px;
    font-family:'Courier New', Courier, monospace;
    padding: 1vw;
    flex-wrap: wrap;
}
  .invite {
    width: 250px;
    height:500px;
  }
}

