/*********************   START OF STYLESHEET   ****************************/

@import url('https://fonts.googleapis.com/css?family=Open+Sans:400,600,800');
@import url('https://fonts.googleapis.com/css?family=Secular+One');

*,
*::before,
*::after {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

body {
  margin: 0;
  color: #1a1a1a;
  font-size: 1.1rem;
  font-family: 'Open Sans', sans-serif;
  overflow-x: hidden;
}

a, .js_a {
  color: #1a1a1a;
  -webkit-transition: color 0.3s; /* Safari, Chrome and Opera > 12.1 */
     -moz-transition: color 0.3s; /* Firefox < 16 */
      -ms-transition: color 0.3s; /* Internet Explorer */
       -o-transition: color 0.3s; /* Opera < 12.1 */
          transition: color 0.3s;
}

a:hover, .js_a:hover {
  text-decoration: none;
  color: grey;
  cursor: pointer;
  -webkit-transition: color 0.3s; /* Safari, Chrome and Opera > 12.1 */
     -moz-transition: color 0.3s; /* Firefox < 16 */
      -ms-transition: color 0.3s; /* Internet Explorer */
       -o-transition: color 0.3s; /* Opera < 12.1 */
          transition: color 0.3s;
}

blockquote {
  margin: 1em 1em;
  color: rgb(97, 97, 97);
  font-style: italic;
	border-left: 4px solid rgb(97, 97, 97);
	padding-left: 1em;
}


::placeholder { /* Chrome, Firefox, Opera, Safari 10.1+ */
  color: lightgrey;
  opacity: 1; /* Firefox */
  font-family: 'Open Sans', sans-serif;
  font-weight: 300;
}

:-ms-input-placeholder { /* Internet Explorer 10-11 */
  color: #999999;
  font-family: 'Open Sans', sans-serif;
  font-weight: 300;
}

::-ms-input-placeholder { /* Microsoft Edge */
  color: #999999;
  font-family: 'Open Sans', sans-serif;
  font-weight: 300;
}

.customButton-1 {
  border: 3px solid white;
  color: white;
  text-decoration: none;
  padding: 7px 15px 7px 15px;
  font-weight: 600;
  transition: color 0.2s, background-color 0.2s;
  -webkit-transition: color 0.2s, background-color 0.2s;
  white-space: nowrap;
  line-height: 3rem;
}

.customButton-1:hover {
  background-color: white;
  color: black;
  cursor: pointer;
  transition: color 0.2s, background-color 0.2s;
  -webkit-transition: color 0.2s, background-color 0.2s;
}

.customButton-2 {
  border: 3px solid #1a1a1a;
  color: #1a1a1a;
  text-decoration: none;
  padding: 7px 15px 7px 15px;
  font-weight: 600;
  transition: color 0.2s, background-color 0.2s;
  -webkit-transition: color 0.2s, background-color 0.2s;
  white-space: nowrap;
  line-height: 3rem;
}

.customButton-2:hover {
  background-color: #1a1a1a;
  color: white;
  cursor: pointer;
  transition: color 0.2s, background-color 0.2s;
  -webkit-transition: color 0.2s, background-color 0.2s;
}

/*************** UTILITARIES *****************/

.input-textarea {
  font-family: inherit;
  font-size: inherit;
  width: 100%;
}

.formError {
  color: red;
  font-size: 1rem;
}

.fix_menu {
  position: fixed;
}

.hidden-in-mobile {
  display: none;
}

.content_padding {
  padding-right: 5%;
  padding-left: 5%;
}

.responsive_content_margin_right {
  position: absolute;
  right: 5%;
}

.responsive_content_margin_left {
  position: absolute;
  left: 5%;
}

#container {
  position: relative;
}

#content {
  margin-top: 75px;
  padding: 55px 5% 0px 5%;
}
.content {
  padding: 20px 13% 20px 13%;
}
.content_section {
  margin: 50px 0 0 0;
  padding: 0px 5% 0px 5%;
}

#content_block {
  padding-bottom: 50px;
}

.video_resize_medium {
  width: 100%;
}

/****************** ADMIN SECTION ******************/

#admin-header ul {
  list-style-type: none;
  text-transform: uppercase;
  margin: 0;
  padding: 0;
  text-align: center;
}

#admin-header li a {
    text-decoration: none;
    margin: 0;
    padding: 0;
    font-size: 1rem;
}

.admin-add-button {
  font-size: .9rem; 
  background-color: #D0D0D0; 
  padding: 5px 10px; 
  border-radius: 10px; 
  margin-left: 1rem; 
  white-space: pre; 
  line-height: 3rem;
}

.admin-remove-button {
  margin-right: 1rem; 
  text-decoration: none; 
  font-size: .9rem;
}

.admin-body {
  overflow: auto;
}

#admin-content {
  margin-top: 4.5rem;
  padding: 4rem 5% 0 5%;
  width: 100vw;
  right: 0;
  min-height: 100%;
  max-height: 100%;
}

#admin-content th {
  position: sticky;
  top: -4rem;
  background-color: white;
  border-bottom: 1px solid black;
}

#admin-header {
  position: fixed;
  top: 0;
  z-index: 100;
  padding: 1.3rem 5% 0.5rem 5%;
  max-height: 100%;
  left: 0;
  width: 100vw;
  background-color: #e5e5e5;
  text-align: left;
  -webkit-box-sizing: border-box; /* Safari/Chrome, other WebKit */
  -moz-box-sizing: border-box;    /* Firefox, other Gecko */
  box-sizing: border-box;         /* Opera/IE 8+ */
  transition: all .3s ease;
  border-bottom: 1px solid #d1d1d1;
}

#admin-header img {
    max-width: 15rem;
    margin-bottom: 1rem;
}

#admin-menu {
  max-height: 0;
  visibility: hidden;
  opacity: 0;
  transition: all .3s ease;
}


/****************** HEADERS ******************/

h1, .ql-container h1 {
  font-weight: 700;
  font-size: 3.5rem;
  margin: 0 0 3rem 0;
  line-height: 1;
  font-family: myriad-pro, sans-serif;
  text-align: left;
}

h1 a {
  text-decoration: none;
}

h2,.ql-container h2 {
  font-size: 3rem;
  margin: 0 0 3rem 0;
  font-weight: 700;
  line-height: 1;
  font-family: myriad-pro, sans-serif;
  text-align: left;
}

h3, .ql-container h3 {
  font-size: 2.5rem;
  margin: 0 0 2.6rem 0;
  font-weight: 700;
  line-height: 1;
  font-family: myriad-pro, sans-serif;
  text-align: left;
}

h4, .ql-container h4 {
  font-size: 2.1rem;
  margin: 0 0 2.2rem 0;
  font-weight: 700;
  line-height: 1;
  font-family: myriad-pro, sans-serif;
  text-align: left;
}

h5,.ql-container h5 {
  font-size: 1.7rem;
  margin: 0 0 1.8rem 0;
  font-weight: 700;
  line-height: 1;
  font-family: myriad-pro, sans-serif;
  text-align: left;
}

h6, .ql-container h6 {
  font-size: 1.4rem;
  margin: 0 0 1.4rem 0;
  font-weight: 700;
  line-height: 1;
  text-align: left;
  font-family: myriad-pro, sans-serif;
}

/************* TABLES ***************/

.firsttwo-hidden-mobile td:nth-child(2) ~ td, .firsttwo-hidden-mobile th:nth-child(2) ~ th {
  display: none;
}

.hide-when-not-firsttwo-hidden-mobile {
  display: block;
}

#summaryInfoGrid {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: center;
  align-items: flex-start;
}

#summaryInfoGrid > * {
  flex-grow: 1;
  margin: 0 0.6rem 0.4rem 0.6rem;
}

table {
  width: 100%;
  border: none;
}

tr:nth-child(even) {background-color: #e8e8e8;}
tr:hover {background-color: #a3a3a3;}

tr {
  margin-bottom: 20px;
}

td {
  padding: 10px;
  text-align: center;
}

td p {
  text-align: left;
}


/************** QUILL CLASSES ****************/

.ql-container {
  font-size: inherit;
}

.ql-align-center {
  text-align: center;
}

.ql-align-right {
  text-align: right;
}

.ql-align-justify {
  text-align: justify;
}

.ql-size-small {
  font-size: 0.9rem;
}

.ql-size-large {
  font-size: 1.4rem;
}

.ql-size-huge {
  font-size: 1.8rem;
}


/*********************** MAIN HEADER **************************/

#header {
  width: 100%;
  height: auto;
  color: white;
  z-index: 100;
  padding: 15px 5% 0 5%;
  background-color: white;
  position: fixed;
  top: 0;
  border-bottom: 1px solid #F2F2F2;
  -webkit-box-shadow: 0px 3px 22px -7px rgba(0,0,0,0.2);
  -moz-box-shadow: 0px 3px 22px -7px rgba(0,0,0,0.2);
  box-shadow: 0px 3px 22px -7px rgba(0,0,0,0.2);
  transition: all .3s ease;
}

#logo {
  display: block;
  left: 5%;
  padding-top: 0.4rem;
  width: 70vw;
  max-width: 20rem;
}

#logo img {
  width: 60vw;
  max-width: 15rem;
}

#menu-mobile-button {  
  color: black;
  position: absolute;
  right: 5%;
  top: 1.9rem;
  font-weight: 600;
  font-size: 2rem;
}

#menu-mobile-button:hover {
  color: grey;
}

#menu {
  color: black;
  margin: 0;
  max-height: 0;
  position: relative;
  font-weight: 600;
  text-align: center;
  font-size: 0.92rem;
  padding: 12px;
  line-height: 2.2;
  text-transform: uppercase;
  transition: all .3s ease, max-height .3s ease;
  box-sizing: border-box;

  visibility: hidden;
  opacity: 0;
  max-height: 0;
}

#menu a {
  text-decoration: none;
  margin-left: 7.5px;
  margin-right: 7.5px;
  display: block;
}

#menu a.menu-active {
  color: #00ADED;
  font-weight: 800;
  /*margin-right: 0.3rem;
  content: '\26AB';*/
}

#menu a.menu-active:hover {
  color: #50d0ff;
}

#menu a:hover {
  text-decoration: none;
}


/******************* GALLERY ******************/

.submenu_gallery {
  font-weight: 600;
  font-size: 0.92rem;
  text-transform: uppercase;
  z-index: 0;
  position: relative;
  left: auto;
  width: 100%;
  text-align: center;
}

.submenu_gallery a {
  text-decoration: none;
  padding: 4px;
  margin-left: 7.5px;
  margin-right: 7.5px;
}

.submenu_gallery a:hover {
  color: black;
  border-bottom: 3px solid #00ADED;
  -webkit-transition: border-bottom 0.2s; /* Safari, Chrome and Opera > 12.1 */
     -moz-transition: border-bottom 0.2s; /* Firefox < 16 */
      -ms-transition: border-bottom 0.2s; /* Internet Explorer */
       -o-transition: border-bottom 0.2s; /* Opera < 12.1 */
          transition: border-bottom 0.2s;
}

.gallery_grid {
  display: grid;
  grid-template-columns: 1fr;
  grid-template-rows: 1fr;
  grid-gap: 15px 15px;
  margin-top: 40px;
  margin-bottom: 100px;
}

.gallery_cell {
  width: 100%;
}

.album_grid {
  display: grid;
  grid-template-columns: 1fr;
  grid-template-rows: 1fr;
  grid-gap: 20px 20px;
}

.album_grid {
  display: grid;
  grid-template-columns: 1fr;
  grid-template-rows: 1fr;
  grid-gap: 20px 20px;
}

.album_cell {
  width: 100%;
}

.album_grid_background {
  height: 45vh;
  width: auto;
  background-position: 50% 70%;
  background-repeat: no-repeat;
  background-size: cover;
  color: transparent;
}

.album_grid_content {
  padding: 20px;
}

.album_info {
  font-size: 0.9rem;
  position: relative;
  right: auto;
  margin-bottom: 17px;
  width: 100%;
  text-align: center;
}

/****************** FRONT PAGE ******************/

.ss-parent {
  margin-top: 90px;
  min-height: 32rem;
}

.ss-child {
  display: flex;
  justify-content: center;
  align-items: center;
}

.ss-nav {
  z-index: 5;
  text-align: center;
  padding-bottom: .5rem;
}

.ss-nav button {
  padding: 0;
  background: none;
  width: 1rem;
  height: 1rem;
  background-color: rgb(200, 200, 200);
  border: none;
  border-radius: 50%;
  margin: 0 .5rem;
  transition: all .2s;
  outline: none;
}

.ss-nav button:hover {
  background-color: rgb(250, 250, 250);
  cursor: pointer;
}

.ss-nav button.active {
  background-color: rgb(100, 100, 100);
}

.slider_container {
  position: relative; 
  text-align: center; 
  z-index: 5;
}

.dark_overlay {
  position: absolute; 
  top: 0;
  left: 0; 
  width: 100%; 
  height: 100%; 
  background-color: rgba(0, 0, 0); 
  z-index: 1;
  opacity: 0.4;
}

.index_section_1 {
  background-position: 50% 92%;
  background-repeat: no-repeat;
  background-size: cover;
  color: white;
  padding: 10% 5% 10% 5%;
}

.news_grid {
  width: 100%;
  height: auto;
  display: grid;
  grid-template-columns: 1fr;
  grid-template-rows: auto auto auto auto;
  grid-gap: 20px 20px;
}

.news_grid_background {
  height: 20vh;
  width: auto;
  background-position: 50% 70%;
  background-repeat: no-repeat;
  background-size: cover;
  color: transparent;
}

.news_grid_content {
  padding: 20px;
}

.link_grid_cell {
  color: black;
  background-color: #e8e8e8;
  -webkit-transition: background-color 0.2s; /* Safari, Chrome and Opera > 12.1 */
     -moz-transition: background-color 0.2s; /* Firefox < 16 */
      -ms-transition: background-color 0.2s; /* Internet Explorer */
       -o-transition: background-color 0.2s; /* Opera < 12.1 */
          transition: background-color 0.2s;
}

.link_grid_cell:hover {
  background-color: lightgrey;
  cursor: pointer;
  -webkit-transition: background-color 0.2s; /* Safari, Chrome and Opera > 12.1 */
     -moz-transition: background-color 0.2s; /* Firefox < 16 */
      -ms-transition: background-color 0.2s; /* Internet Explorer */
       -o-transition: background-color 0.2s; /* Opera < 12.1 */
          transition: background-color 0.2s;
}

#index_history_section {
  display: grid; 
  grid-template-columns: auto;
}

#index_history_button_wrapper {
  text-align: center;
}

.index_history_button {
  text-align: center;
  width: max-content;
  display: inline-block;
}

.index_history_text_align {
  text-align: center;
}

.index_school {
  background-color: #00aded;
  width: 100%;
  margin-top: 50px;
  height: auto;
  display: auto;
  margin-bottom: 90px;
}

.index_school_clef {
  background-position: 100% 50%;
  background-repeat: no-repeat;
  background-size: cover;
  background-image: url('../../media/images/g_clef.png');
  height: 100%;
  width: 100%;
  position: relative;
  display: none;
}

.index_school_content {
  padding: 45px 5% 55px 5%;
  color: white;
}

#contacts {
  overflow-wrap: break-word;
  background-color: #2b2b2b;
  color: #f2f2f2;
  padding-top: 50px;
  padding-bottom: 80px;
}

.contacts_grid {
  overflow-wrap: break-word;
  display: grid;
  margin-top: 20px;
  grid-template-columns: 1fr;
  grid-template-rows: auto auto;
  grid-gap: 40px 40px;
}

.contact_field {
  background-color: inherit;
  border: none;
  width: 100%;
  font-size: 15px;
  color: inherit;
  border-bottom: 1px solid white;
}

.contact_textarea {
  font-family: inherit;
  background-color: inherit;
  color: inherit;
  font-size: 15px;
  border: none;
  border-bottom: 1px solid white;
  height: 100px;
  width: 100%;
}

.contact_submit_button {
  padding: 10px 15px 10px 15px;
  font-size: 15px;
  text-decoration: none;
  font-family: 'Open Sans', sans-serif;
  font-weight: 400;
  color: black;
  background-color: #f2f2f2;
  width: 100%;
  border: none;
  -webkit-transition: background-color 0.2s; /* Safari, Chrome and Opera > 12.1 */
     -moz-transition: background-color 0.2s; /* Firefox < 16 */
      -ms-transition: background-color 0.2s; /* Internet Explorer */
       -o-transition: background-color 0.2s; /* Opera < 12.1 */
          transition: background-color 0.2s;
}

.contact_submit_button:hover {
  background-color: white;
  cursor: pointer;
  -webkit-transition: background-color 0.2s; /* Safari, Chrome and Opera > 12.1 */
     -moz-transition: background-color 0.2s; /* Firefox < 16 */
      -ms-transition: background-color 0.2s; /* Internet Explorer */
       -o-transition: background-color 0.2s; /* Opera < 12.1 */
          transition: background-color 0.2s;
}

.contact_field::placeholder, .contact_textarea::placeholder {
  color: #727272;
}

/************* SCHOOL SECTION *****************/

#school_banner {
  padding: 10% auto; 
  background-repeat: repeat; 
  background-size: 120%;
  height: 40vh;
  width: auto;
  text-align: center;
  color: white;
  margin-top: 6rem;
}

.school_grid {
  display: grid;
  grid-template-columns: 1fr;
  grid-gap: 40px;
}

.school_menu {
  color: black;
  margin: 0;
  position: relative;
  font-weight: 600;
  text-align: center;
  font-size: 0.92rem;
  line-height: 2.2;
  text-transform: uppercase;
}

.school_menu a {
  text-decoration: none;
  padding: 4px;
  margin-left: 7.5px;
  margin-right: 7.5px;
}

.school_menu a:hover {
  color: grey;
  -webkit-transition: color 0.2s; /* Safari, Chrome and Opera > 12.1 */
     -moz-transition: color 0.2s; /* Firefox < 16 */
      -ms-transition: color 0.2s; /* Internet Explorer */
       -o-transition: color 0.2s; /* Opera < 12.1 */
          transition: color 0.2s;
}

/************* NEWS ************/

#grid2_container {
  display: grid;
  grid-template-columns: 1fr;
  grid-template-rows: 1fr 3fr;
  grid-gap: 40px 40px;
  padding-bottom: 60px;
}

.news_grid_feat_image {
  height: 100%;
  width: auto;
  background-position: 50% 50%;
  background-repeat: no-repeat;
  background-size: cover;
  color: transparent;
}

.news_grid_feat_image:hover {
  cursor: pointer;
}

/*********** POST ***********/

#post_header {
  height: auto;
  width: auto;
  background-position: 50% 50%;
  background-repeat: no-repeat;
  background-size: cover;
  text-align: center;
  color: white;
  padding: 5%;
  margin-top: 90px;
}

.post-content {
  text-align: justify;
  margin-top: 5rem;
  display: table;
}

.post-content img {
  max-width: 100%;
}

.post_author {
  font-size: 0.9rem;
  color: grey;
  margin-top: 10px;
}

.post_category {
  text-transform: uppercase;
  white-space: pre-wrap;
}

.readmore_button {
  margin-top: 15px;
  width: 100%;
  text-align: right;
  font-size: 1.2rem;
  font-weight: 600;
}

.readmore_button a {
  text-decoration: none;
}

/************** FOOTER **************/

#footer {
  font-size: 0.9rem;
  color: #d6d6d6;
  width: 100%;
  position: absolute;
  bottom: 0;
  padding: 10px auto;
  height: 10pt + 20px;
  background-color: #1a1a1a;
  -webkit-box-sizing: border-box; /* Safari/Chrome, other WebKit */
  -moz-box-sizing: border-box;    /* Firefox, other Gecko */
  box-sizing: border-box;         /* Opera/IE 8+ */
}

#footer * {
  display: inline-block;
  vertical-align: middle;
}

.footer-container {
  position: relative;
  width: 100%;
  padding: 2rem 0;
}

.creation-mark {
  max-width: 70%;
  width: 15rem;
  position: absolute;
  right: 0;
  top: calc(50% - 1.5rem);
  -webkit-box-sizing: border-box; /* Safari/Chrome, other WebKit */
  -moz-box-sizing: border-box;    /* Firefox, other Gecko */
  box-sizing: border-box;         /* Opera/IE 8+ */
}

#footer a {
  color: #d6d6d6;
  text-decoration: none;
  -webkit-transition: color 0.3s; /* Safari, Chrome and Opera > 12.1 */
     -moz-transition: color 0.3s; /* Firefox < 16 */
      -ms-transition: color 0.3s; /* Internet Explorer */
       -o-transition: color 0.3s; /* Opera < 12.1 */
          transition: color 0.3s;
}

#footer a:hover {
  text-decoration: none;
  color: white;
  -webkit-transition: color 0.3s; /* Safari, Chrome and Opera > 12.1 */
     -moz-transition: color 0.3s; /* Firefox < 16 */
      -ms-transition: color 0.3s; /* Internet Explorer */
       -o-transition: color 0.3s; /* Opera < 12.1 */
          transition: color 0.3s;
}




@media screen and (min-width: 600px) and (max-width: 1000px) {
  #school_banner {
    background-size: 80%;
  }
  .submenu_gallery {
    width: auto;
    position: absolute;
    left: 5%;
  }

  .album_info {
    width: auto;
    position: absolute;
    right: 5%;
  }

  #header {
    padding: 15px 5% 0 5%;
  }

  #admin-header {
    text-align: center;
  }

  #logo {
    padding-left: 4.5rem;
    left: auto;
    margin-right: auto;
    margin-left: auto;
  }

  .contacts_grid {
    grid-template-columns: 1fr 1fr;
    grid-template-rows: 1fr;
  }

  .news_grid {
    grid-template-columns: 1fr 1fr;
    grid-template-rows: auto auto;
  }

  .gallery_grid {
    grid-template-columns: 1fr 1fr;
    grid-template-rows: 1fr;
    margin-top: 80px;
  }
  .album_grid {
    grid-template-columns: 1fr 1fr;
    grid-template-rows: 1fr;
  }
}

@media screen and (min-width: 1000px) and (max-width: 1300px) {

  #school_banner {
    background-size: 50%;
  }

  .video_resize_medium {
    width: 70%;
  }
  .school_grid {
    grid-template-columns: 0.20fr 0.80fr;
  }
  .school_menu {
    position: -webkit-sticky;
    position: sticky;
    top: 100px;
  }

  #admin-header {
    text-align: center;
  }

  .index_school_content {
    padding-right: 8%;
  }
  .submenu_gallery {
    width: auto;
    position: absolute;
    left: 8%;
  }

  #logo {
    padding-left: 4.5rem;
    left: auto;
    margin-right: auto;
    margin-left: auto;
  }

  .album_info {
    width: auto;
    position: absolute;
    right: 8%;
  }

  .contacts_grid {
    grid-template-columns: 1fr 1fr;
    grid-template-rows: 1fr;
  }

  #header {
    padding: 15px 8% 0 8%;
  }
  .content_padding {
    padding-right: 8%;
    padding-left: 8%;
  }

  .responsive_content_margin_right {
    right: 8%;
  }

  .responsive_content_margin_left {
    right: 8%;
  }

  #content {
    padding: 55px 8% 0px 8%;
  }
  .content_section {
    padding: 0px 8% 0px 8%;
  }
  .index_section_1 {
    padding: 10% 8% 10% 8%;
  }
  #post_header {
    padding-left: 8%;
    padding-right: 8%;
  }
  .news_grid {
    grid-template-columns: 1fr 1fr 1fr;
    grid-template-rows: 1fr 1fr;
  }
  #grid2_container {
    grid-template-columns: 1fr 3fr;
    grid-template-rows: 1fr;
  }

  .gallery_grid {
    grid-template-columns: 1fr 1fr 1fr;
    grid-template-rows: 1fr;
    margin-top: 80px;
  }
  .album_grid {
    grid-template-columns: 1fr 1fr 1fr;
    grid-template-rows: 1fr;
    margin-bottom: 100px;
  }
  .index_school {
    display: grid;
    grid-template-columns: 0.15fr 0.85fr;
    grid-template-rows: 1fr;
  }
  .index_school_clef {
    display: block;
  }
}

@media screen and (min-width: 1300px) {
  #school_banner {
    background-size: 30%;
    margin-top: 4rem;
  }

  .video_resize_medium {
    width: 60%;
  }
  .history {
    margin-bottom: 5rem;
  }
  .school_grid {
    grid-template-columns: 0.20fr 0.80fr;
  }

  .school_menu {
    position: -webkit-sticky;
    position: sticky;
    top: 100px;
  }

  .index_school_content {
    padding-right: 13%;
  }

  .submenu_gallery {
    width: auto;
    position: absolute;
    left: 13%;
  }

  .album_info {
    width: auto;
    position: absolute;
    right: 13%;
  }

  #admin-content {
    padding: 4rem 2rem 0 2rem;
    width: 88vw;
    max-width: calc(100vw - 15rem);
    position: fixed;
    right: 0;
    min-height: 100%;
    max-height: 100%;
    overflow-y: auto;
    -webkit-box-sizing: border-box; /* Safari/Chrome, other WebKit */
    -moz-box-sizing: border-box;    /* Firefox, other Gecko */
    box-sizing: border-box;         /* Opera/IE 8+ */
  }
  
  .firsttwo-hidden-mobile td:nth-child(2) ~ td, .firsttwo-hidden-mobile th:nth-child(2) ~ th {
    display: table-cell;
  }

  .hide-when-not-firsttwo-hidden-mobile {
    display: none;
  }

  #admin-header {
      padding: 4rem 1rem 0 1rem;
      position: fixed;
      min-height: 100%;
      max-height: 100%;
      overflow-y: auto;
      left: 0;
      width: 12vw;
      min-width: 15rem;
      background-color: #e5e5e5;
      text-align: center;
      -webkit-box-sizing: border-box; /* Safari/Chrome, other WebKit */
      -moz-box-sizing: border-box;    /* Firefox, other Gecko */
      box-sizing: border-box;         /* Opera/IE 8+ */
  }
  #admin-header img {
    margin-bottom: 10rem;
    max-width: 13rem;
  }
  #admin-menu {
    max-height: 100rem;
    visibility: visible;
    opacity: 100;
  }
  #admin-header li a {
    font-size: 1.1rem;
  }
  .admin-body {
    overflow: hidden;
  }
  #admin-content {
    margin-top: 0;
  }
  .hidden-in-mobile {
    display: block;
  }

  .contacts_grid {
    grid-template-columns: 1fr 1fr;
    grid-template-rows: 1fr;
  }

  #header {
    text-align: center;
    width: 100%;
    height: 75px;
    color: white;
    padding: 15px 13% 15px 13%;
    -webkit-box-sizing: border-box; /* Safari/Chrome, other WebKit */
    -moz-box-sizing: border-box;    /* Firefox, other Gecko */
    box-sizing: border-box;         /* Opera/IE 8+ */
    background-color: white;
  }

  #menu-mobile-button {
    display: none;
  }

  .content_padding {
    padding-right: 13%;
    padding-left: 13%;
  }

  .responsive_content_margin_right {
    right: 13%;
  }

  .responsive_content_margin_left {
    left: 13%;
  }


  #index_history_section {
    grid-template-columns: auto auto;
  }

  .index_history_button {
    display: block;
    float: right;
  }

  .ss-parent {
    margin-top: 75px;
  }

  .index_section_1 {
    padding: 10% 13% 10% 13%;
  }

  #post_header {
    margin-top: 75px;
    padding-left: 13%;
    padding-right: 13%;
  }

  #logo {
    display: inline;
    margin: auto;
    left: 13%;
    position: absolute;
    width: 14rem;
    top: 0.6rem;
    padding-top: 0;
  }

  #menu a.menu-active {
    border-bottom: 3px solid #00ADED;
    color: inherit;
    font-weight: inherit;
  }
  #menu a.menu-active:hover {
    color: inherit;
  }

  #content {
    margin: 75px 0 0 0;
    padding: 55px 13% 0px 13%;
  }

  .content_section {
    padding: 0px 13% 0px 13%;
  }

  .news_grid {
    grid-template-columns: 1fr 1fr 1fr 1fr;
    grid-template-rows: 1fr;
  }

  #grid2_container {
    grid-template-columns: 1fr 3fr;
    grid-template-rows: 1fr;
  }

  .gallery_grid {
    grid-template-columns: 1fr 1fr 1fr 1fr;
    grid-template-rows: 1fr;
    margin-top: 80px;
  }

  .album_grid {
    grid-template-columns: 1fr 1fr 1fr;
    grid-template-rows: 1fr;
  }

  #menu {
    color: black;
    margin: 0;
    top: 0;
    -webkit-box-sizing: border-box; /* Safari/Chrome, other WebKit */
    -moz-box-sizing: border-box;    /* Firefox, other Gecko */
    box-sizing: border-box;         /* Opera/IE 8+ */
    position: absolute;
    right: 13%;
    height: 45px;
    font-weight: 600;
    font-size: 0.92rem;
    padding: 12px;
    line-height: normal;
    text-transform: uppercase;

    visibility: visible;
    opacity: 100;
    max-height: 100rem;
  }

  #menu a {
    display: inline;
    padding: 4px;
  }

  #menu a:hover {
    color: black;
    border-bottom: 3px solid #00ADED;
    -webkit-transition: border-bottom 0.2s; /* Safari, Chrome and Opera > 12.1 */
      -moz-transition: border-bottom 0.2s; /* Firefox < 16 */
        -ms-transition: border-bottom 0.2s; /* Internet Explorer */
        -o-transition: border-bottom 0.2s; /* Opera < 12.1 */
            transition: border-bottom 0.2s;
  }

  .index_school {
    display: grid;
    grid-template-columns: 0.15fr 0.85fr;
    grid-template-rows: 1fr;
    margin-top: 35px;
  }
  .index_school_clef {
    display: block;
  }
  .index_history_text_align {
    text-align: left;
  }
}
