body {
  width: 100%;
  height: 100%;
  padding: 0;
  margin: 0; }

body {
  position: relative;
  background: white; }

.container.spaced {
  padding-top: 50px;
  padding-bottom: 50px; }

.gray-wrapper {
  padding-top: 10px;
  padding-bottom: 10px;
  background: #f4f4f6; }
  .gray-wrapper.padded {
    padding-top: 30px;
    padding-bottom: 30px; }

img.rounded,
.card {
  width: 100%;
  border-radius: 8px;
  box-shadow: 0 2px 15px #bcbcc8; }

.card-header {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis; }

img.center-vertically {
  width: 80%;
  height: auto;
  position: relative;
  top: 50%;
  transform: translateY(-50%); }

img.padded-gray {
  padding: 10%;
  background: #EEEEEE; }

.logo-grid img {
  width: 100%;
  margin-top: 1.5em;
  transition: 0.3s opacity; }
  .logo-grid img:hover {
    opacity: 0.75; }
  @media (max-width: 992px) {
    .logo-grid img {
      margin-top: 1em; } }

a.btn {
  font-size: 0.75em;
  margin-bottom: 1em; }

html {
  font-size: calc(1em + 1vmax); }

@media (min-width: 992px) {
  html {
    font-size: calc(1em + 1vmin); } }
body {
  font-family: 'Poppins', 'Roboto', sans-serif;
  color: #404b69; }

h2 {
  margin-top: 1em;
  font-size: 1.5em; }

h3 {
  font-size: 1em; }

.long-form {
  color: #333;
  line-height: 1.5;
  font-size: 0.8em;
  margin: 1em 0; }

.row.spaced {
  margin-top: 2em; }

.navbar {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 99;
  box-shadow: none;
  width: 100%;
  background: rgba(0, 0, 0, 0.6);
  padding: 0.25em 0.5em; }

nav .navbar-brand {
  transition: 0.4s max-height, 0.4s margin;
  max-height: 100px;
  padding-top: 15px;
  padding-bottom: 15px;
  margin: 10px 0;
  background-image: url("https://assets.csh.rit.edu/pubsite/csh_logo_square.svg");
  background-repeat: no-repeat;
  background-size: contain;
  background-position: left center; }
nav img {
  display: inline; }
nav ul {
  list-style-type: none;
  display: inline;
  padding: 0; }
  nav ul li {
    display: inline-block;
    padding: 5px 10px;
    font-size: 0.75em;
    font-weight: 600;
    text-transform: uppercase; }
  nav ul a {
    color: white;
    letter-spacing: 1px;
    padding: 2px 0;
    border-bottom: 3px solid transparent;
    transition: 0.4s border-color; }
    nav ul a:hover {
      text-decoration: none;
      color: #f8d0eb;
      border-color: #f8d0eb; }
    nav ul a.active, nav ul a:active {
      border-color: #ec76c5; }
nav .dropdown-menu {
  min-width: 170px;
  width: auto;
  padding: 10px;
  background: rgba(0, 0, 0, 0.6); }
  nav .dropdown-menu li {
    display: block; }
nav .dropdown:hover .dropdown-menu {
  display: block; }
nav.condensed .navbar-brand {
  max-height: 40px;
  margin: 5px 0; }
nav.condensed .dropdown-menu {
  font-size: 1.2em; }
@media (max-width: 992px) {
  nav .navbar-brand {
    max-height: 50px; }
  nav .navbar-toggler-icon {
    width: 30px;
    height: 30px; } }

.btn.dropdown-toggle:before {
  display: none; }

#slider {
  width: 100%;
  margin-bottom: 0;
  height: auto;
  overflow-y: hidden;
  background: #f4f4f6; }
  #slider img {
    width: 100%; }

#carousel-scroll-down-button {
  position: absolute;
  z-index: 98;
  left: 50vw;
  right: 0;
  width: auto;
  height: auto;
  background: none;
  border: none;
  padding: 0;
  cursor: pointer; }

#carousel-scroll-down-button:active, #carousel-scroll-down-button:focus {
  outline: 0;
  -moz-outline-style: none; }

#carousel-scroll-down-button > svg {
  max-width: 50px;
  width: 50px;
  height: auto;
  -webkit-filter: drop-shadow(0px 0px 2px black);
  filter: drop-shadow(0px 0px 2px black); }

@media screen and (max-width: 600px) {
  #carousel-scroll-down-button > svg {
    max-width: 25px; } }
.slick-prev {
  left: 10px;
  z-index: 2; }

.slick-next {
  right: 10px; }

.slick-prev:before,
.slick-next:before {
  color: white;
  text-shadow: 0 0 5px black; }

.slick-dots {
  bottom: 10px; }

#homepage-about p {
  font-size: 0.9em;
  font-weight: 500;
  margin: 1em 0; }
#homepage-about a.btn {
  font-size: 0.75em;
  margin-bottom: 1em; }

#faq-page ul {
  list-style-type: none; }
#faq-page li {
  margin-top: 2em; }
#faq-page h3 {
  font-weight: bold;
  margin: 0; }
#faq-page p {
  font-size: 0.9em; }

#homepage-projects p,
#homepage-projects a {
  font-size: 0.8em; }
#homepage-projects h2 {
  margin-top: 0; }

#homepage-sponsors {
  padding-bottom: 75px; }
  #homepage-sponsors img {
    margin: 15px 0;
    width: 100%;
    border-radius: 8px;
    box-shadow: 0 2px 15px #bcbcc8;
    transition: 0.3s opacity; }
    #homepage-sponsors img:hover {
      opacity: 0.75; }

.splash {
  height: 350px;
  text-align: center; }
  .splash h1 {
    width: 100%;
    height: 100%;
    background: url("https://assets.csh.rit.edu/pubsite/hallway_blurred.jpg") 30% 30% no-repeat;
    background-size: cover;
    line-height: calc(350px + 50px);
    text-align: center;
    color: white;
    font-size: 3em;
    vertical-align: bottom; }
  @media (max-width: 992px) {
    .splash {
      height: 400px; }
      .splash h1 {
        font-size: 2em;
        line-height: 1.2;
        padding-top: 50%; } }

.post img {
  max-width: 100%;
  margin: 20px 0; }
.post a.btn {
  margin-top: 20px; }
.post #details {
  font-size: 1em; }
  .post #details img {
    width: 32px;
    height: 32px;
    border-radius: 50%; }
  .post #details a {
    text-decoration: none; }
  .post #details #date {
    margin-left: 20px; }
.post h3 {
  font-size: 1.5em; }
.post p {
  font-size: 0.9em; }

#post-list a.btn {
  margin-top: 20px; }
#post-list ul {
  list-style-type: none;
  padding: 0; }
#post-list img {
  width: 50px;
  height: 50px;
  border-radius: 50%;
  margin-right: 10px; }
#post-list h2 {
  margin-top: 0; }
#post-list .card {
  margin: 10px 0;
  transition: 0.3s opacity; }
  #post-list .card:hover {
    opacity: 0.75; }
#post-list .card-header {
  padding: 10px 20px; }
  #post-list .card-header a {
    text-decoration: underline; }
#post-list .card-body {
  height: 200px;
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  position: relative;
  background-color: #b0197e; }

.eboard-photo-container img {
  width: calc(100% - 30px);
  position: absolute;
  transition: 0.3s opacity ease-in-out; }
  .eboard-photo-container img.real {
    width: 100%;
    position: relative; }
    .eboard-photo-container img.real:hover {
      opacity: 0; }

#tour-page .dropdown-toggle,
#tour-page .dropdown-menu,
#tour-page .dropdown-item {
  width: 100%; }
#tour-page .dropdown-item {
  font-size: 0.8em; }

#insights-page #insights-dates {
  text-align: center; }
#insights-page #insights-buttons {
  text-align: center; }
  #insights-page #insights-buttons .btn {
    margin: 0.25em 0; }

footer {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  font-size: 0.7em;
  text-align: center;
  color: white; }
  footer img {
    width: 100%;
    max-width: 300px;
    margin-bottom: 10px; }
  footer .footer-top {
    padding: 20px 0;
    background: #b0197e;
    color: white; }
    footer .footer-top a {
      margin: 0 10px;
      white-space: nowrap; }
  footer .footer-bottom {
    padding: 8px 0;
    background: #404b69; }
  footer .container {
    padding-top: 0;
    padding-bottom: 0; }
  footer .site-map {
    text-align: left; }
    footer .site-map a {
      display: block; }
  footer h2 {
    margin-top: 0; }
  footer a {
    color: white; }
    footer a:hover {
      color: white; }
    footer a.indented {
      padding-left: 30px; }
    @media (max-width: 992px) {
      footer a {
        text-decoration: underline; } }
  footer i {
    margin-right: 5px; }

#csh-hacks-wrapper {
  color: #d9b8ce;
  background: #25021a repeat top/2.5em url("https://assets.csh.rit.edu/cshacks-assets/csh_tilted.png"); }
  #csh-hacks-wrapper h2 {
    color: white;
    margin-top: 0; }
  #csh-hacks-wrapper img {
    width: 100%;
    margin-top: 1.5em; }
  @media screen and (max-width: 992px) {
    #csh-hacks-wrapper h2 {
      margin-top: 1em; } }
