#admissions-form {
  max-width: 640px;
  margin: 2% auto;
}

h1.ck-highlight, h2.ck-highlight, h3.ck-highlight, h4.ck-highlight, h5.ck-highlight {
  font-size: 120%;
}
h1.ck-alt, h2.ck-alt, h3.ck-alt, h4.ck-alt, h5.ck-alt {
  font-size: 80%;
}
h1.ck-inv, h2.ck-inv, h3.ck-inv, h4.ck-inv, h5.ck-inv {
  color: #ccc;
}

section.ck-section {
  border-radius: 0.5em;
  padding: 1em;
  margin: 1em;
}

section.ck-news {
  background: #FFDD1C;
}

section.ck-alert {
  background: #fcc;
}

section.ck-warning {
  background: #f88;
}

section.ck-message {
  background: #cfc;
}

.ck-highlight {
  background: yellow;
}

.ck-alt {
  color: #aaa;
}

.ck-inv {
  color: #ccc;
  background: #888;
  border-radius: 0.5em;
}

#site-header, .custom-header {
  padding: 0 12px;
}
#site-header h1, .custom-header h1 {
  text-align: center;
}
#site-header h1 img, .custom-header h1 img {
  max-height: 100px;
  max-width: 95%;
}

.header-info-container .header-info-inner-container {
  max-width: 100%;
}
.header-info-container .header-info, .header-info-container .control-bar-grid {
  background: white;
}
.header-info-container .header-info .menu-trigger-text, .header-info-container .control-bar-grid .menu-trigger-text {
  line-height: 24px;
  font-size: 1.4em;
}

#site-navigation nav {
  display: block;
}
#site-navigation nav a {
  display: inline-block;
  margin: 1px 12px;
  border: 1px solid #ccc;
  padding: 2px 8px;
  line-height: 1.5;
}
#site-navigation nav a:first-of-type {
  margin-left: 0;
}

body.cms {
  width: auto;
  max-width: 1000px;
  padding: 12px;
  background: #fffffd;
  border: none;
  font-family: "Lucida Grande", "Lucida Sans Unicode", "Lucida Sans", Geneva, Verdana, sans-serif;
}
body.cms h1 {
  font-size: 2em;
  font-family: "Times New Roman", serif;
  font-weight: bold;
}
body.cms h2 {
  font-size: 1.75em;
  font-family: "Times New Roman", serif;
  font-weight: bold;
}
body.cms h3 {
  font-size: 1.75em;
  font-family: "Times New Roman", serif;
  font-weight: normal;
}

body, body p, body li, body th, body td {
  color: inherit;
}
body a, body .clickable {
  color: #55C;
}

#site-main {
  padding-top: 24px;
}
#site-main .underconstruction {
  text-align: center;
  font-size: 2em;
  line-height: 2;
}
#site-main .underconstruction img.left, #site-main .underconstruction img.right {
  margin: 0;
}

.news {
  border-radius: 10px;
  margin: 20px;
  padding: 10px 20px;
  border: 1px solid #CCCCCC;
  background: #FFFFEE;
}

a.link-to-this-page {
  background: none;
}

#site-footer {
  margin-top: 24px;
}

span.dayleaf {
  float: right;
  position: relative;
  height: 44px;
  background: white;
  width: 3em;
  padding: 0;
  line-height: 1.2;
}
span.dayleaf .day, span.dayleaf .month, span.dayleaf .year {
  position: absolute;
  display: block;
  width: 100%;
  padding: 0;
  text-align: center;
}
span.dayleaf .month, span.dayleaf .year {
  height: 12px;
  background: blue;
  color: white;
  font-weight: bold;
  font-size: 80%;
}
span.dayleaf .day {
  top: 12px;
  height: 20px;
  line-height: 20px;
}
span.dayleaf .month {
  top: 0;
  border-top-right-radius: 0.5em;
  border-top-left-radius: 0.5em;
}
span.dayleaf .year {
  bottom: 0;
  border-bottom-right-radius: 0.5em;
  border-bottom-left-radius: 0.5em;
}

.month-1 {
  background: #9af;
}

.month-2 {
  background: #9ad;
}

.month-3 {
  background: #9d9;
}

.month-4 {
  background: #9f9;
}

.month-5 {
  background: #ae9;
}

.month-6 {
  background: #ee9;
}

.month-7 {
  background: #ff9;
}

.month-8 {
  background: #fd9;
}

.month-9 {
  background: #fa9;
}

.month-10 {
  background: #f9a;
}

.month-11 {
  background: #d99;
}

.month-12 {
  background: #a9d;
}

:root {
  box-sizing: border-box;
}

body.cms {
  color: #000;
  margin: 0;
  max-width: 100%;
  padding: 0;
}
body.cms .header-info-container {
  margin: 0;
}
body.cms h1, body.cms h2, body.cms h3, body.cms h4 {
  font-family: "Lucida Grande", "Lucida Sans Unicode", "Lucida Sans", Geneva, Verdana, sans-serif;
}
body.cms > header {
  background-color: #000;
  display: flex;
}
body.cms > header h1 {
  flex: 1;
}
@media screen and (max-width: 900px) {
  body.cms > header h1 {
    align-self: center;
  }
}
@media screen and (max-width: 1110px) {
  body.cms > header h1 {
    margin: 1rem;
  }
}
@media screen and (min-width: 1110px) {
  body.cms > header h1 {
    margin: 0 0 0 5rem;
  }
}
body.cms > header nav {
  flex: 3;
}
body.cms main section {
  display: flex;
  align-items: center;
  justify-content: space-around;
}
@media screen and (max-width: 1130px) {
  body.cms main section {
    flex-direction: column;
  }
}
body.cms main section:not(.hero) {
  padding: 2rem 5rem;
}
body.cms main section > article {
  width: calc(100% - 600px);
}
@media screen and (max-width: 1130px) {
  body.cms main section > article {
    width: auto;
  }
}
body.cms main section > article.has--aside {
  flex: 2;
  width: auto;
}
body.cms main section aside {
  align-self: flex-start;
  background-color: #f5f5dc;
  flex: 1;
  padding: 0.75rem;
}
body.cms main section aside p, body.cms main section aside h4 {
  font-size: 90%;
}
body.cms main section aside article {
  background-color: #fff;
  margin: 0.5rem;
  padding: 0.5rem;
  border-bottom: 2px solid #e8e8e8;
}
body.cms main h1, body.cms main h2, body.cms main h3, body.cms main h4 {
  color: #000;
  font-size: 1.5rem;
  font-weight: bold;
  text-transform: uppercase;
}
body.cms main figure {
  width: 600px;
}
body.cms main .hero {
  background-color: #ccc;
  background-image: url(/file/cover-photo-stairs-2024.jpg);
  background-size: cover;
  background-position: top;
  min-height: 720px;
  position: relative;
}
body.cms main .hero header {
  width: 100%;
  position: absolute;
  top: 0;
  text-align: center;
  background: #189FD6;
  background: rgba(24, 159, 214, 0.9);
}
body.cms main .hero header h1 {
  font-size: 2rem;
  color: #fff;
  font-weight: bold;
  line-height: 1.4;
  text-transform: capitalize;
  width: 100%;
  padding: 1rem 0.5rem;
}
body.cms main article.join {
  background: #189FD6;
  background: rgba(24, 159, 214, 0.9);
  padding: 2rem;
}
body.cms main article.join .join__content {
  text-align: center;
}
body.cms main a:link {
  color: #189FD6;
  text-decoration: underline;
}
body.cms main a.action--link {
  background: #E3177C;
  border: 1px solid #fff;
  border-radius: 5px;
  color: #fff;
  display: block;
  height: 45px;
  line-height: 45px;
  margin: auto;
  text-align: center;
  text-decoration: none;
  text-transform: uppercase;
  width: 120px;
}
body.cms main a.action--link:hover {
  background: #cc156f;
  box-shadow: 2px 2px 2px #4b4b4b;
}
body.cms main a.action--link:focus {
  background: #e92a89;
}
body.cms main a:visited.action--link {
  color: #fff;
}
body.cms > footer {
  color: #fff;
}
body.cms > footer nav {
  background-color: #000;
}
body.cms > footer p {
  color: #fff;
  height: 5rem;
  line-height: 5rem;
  margin: 0;
  padding: 0;
  text-align: center;
}
body.cms > footer p small {
  text-align: center;
}
body.cms > footer p small a:link {
  color: #fff;
  text-decoration: underline;
}
body.cms nav {
  align-self: center;
}
body.cms nav ul {
  display: flex;
  align-items: center;
  height: 100%;
  justify-content: center;
  list-style: none;
  margin: auto;
  padding: 0;
  text-align: center;
}
body.cms nav ul li {
  flex: 1;
  height: 100%;
  position: relative;
}
body.cms nav ul li:hover > ul {
  display: block;
  background-color: #303030;
  height: auto;
  position: absolute;
  left: 50%;
  margin-left: -110px;
  z-index: 11;
  margin-top: -5px;
  border: 1px #3D3D3D solid;
}
body.cms nav ul li a:link, body.cms nav ul li a.notlink {
  display: block;
  color: #fff;
}
body.cms nav ul li a:link.action--link, body.cms nav ul li a.notlink.action--link {
  background: #E3177C;
  border: 1px solid #fff;
  border-radius: 5px;
  color: #fff;
  display: block;
  height: 45px;
  line-height: 45px;
  margin: auto;
  text-align: center;
  text-decoration: none;
  text-transform: uppercase;
  width: 120px;
}
body.cms nav ul li a:link.action--link:hover, body.cms nav ul li a.notlink.action--link:hover {
  background: #cc156f;
  box-shadow: 2px 2px 2px #4b4b4b;
}
body.cms nav ul li a:link.action--link:focus, body.cms nav ul li a.notlink.action--link:focus {
  background: #e92a89;
}
body.cms nav ul li a:link:not(.action--link), body.cms nav ul li a.notlink:not(.action--link) {
  padding: 1rem;
}
body.cms nav ul li a:link:not(.action--link):hover, body.cms nav ul li a.notlink:not(.action--link):hover {
  font-style: italic;
  font-style-font-weight: bold;
}
body.cms nav ul li a:visited {
  color: #fff;
}
body.cms nav ul li ul {
  display: none;
  position: absolute;
}
body.cms nav ul li ul::before {
  content: "";
  display: block;
  width: 0;
  height: 0;
  border-width: 0 0 10px;
  border-style: solid;
  border-right: solid 10px transparent;
  border-left: solid 10px transparent;
  position: absolute;
  top: -10px;
  left: 50%;
  margin-left: -10px;
}
body.cms nav ul li ul li:hover {
  background-color: #1A1A1A;
}
body.cms .help {
  flex: 1;
}
body.cms hr {
  border: 0;
  border-top: 2px solid #189FD6;
  color: #189FD6;
  height: 0;
  margin: 20px auto;
  position: relative;
  width: 70%;
}
body.cms hr::after {
  content: "";
  border-left: 10px solid transparent;
  border-right: 10px solid transparent;
  border-top: 12px solid;
  left: 50%;
  margin-left: -8px;
  position: absolute;
}
body.cms details {
  margin: 1rem 0;
  width: 90%;
}
body.cms details > *:not(summary) {
  margin: 1.5rem 0 0 1.5rem;
}
body.cms summary {
  background-color: #e8e8e8;
  font-weight: bold;
  padding: 0.5rem;
}
body.cms footer nav ul li:hover > ul {
  display: none;
}
body.cms .align-top {
  align-self: flex-start;
}

#admin-user-guide h3 {
  font-size: 1.2rem;
  margin-top: 2rem;
}

.apesa__copyright {
  background-color: #189FD6;
}

body.cms section.documentation .index {
  align-self: flex-start;
}
body.cms section.documentation nav.document-categories ul li {
  border: 1px solid #eee;
}
body.cms section.documentation nav.document-categories ul li a {
  padding: 0.2rem;
}
body.cms section.documentation section.show-documents {
  flex-direction: column;
  align-items: stretch;
  margin: 1em 0;
}
body.cms section.documentation section.show-documents section.document {
  border: 1px solid #ddd;
  padding: 1em;
  margin: 1em 0;
}
body.cms section.documentation nav.document-categories {
  flex: 2;
}
body.cms section.documentation nav.document-categories a:link, body.cms section.documentation nav.document-categories a:visited {
  color: #189FD6;
}
body.cms section.documentation nav.document-categories a.content-item-link {
  display: inline-block;
  padding: 1rem;
  text-decoration: none;
  color: black;
  border-radius: 5%;
  border: thin solid darkgrey;
}
body.cms section.documentation nav.document-categories a.content-item-link:hover {
  background-color: #e0e0e0;
}
body.cms section.documentation nav.document-categories ul {
  display: grid;
  gap: 0.1rem;
  grid-template-columns: repeat(2, 1fr);
  border: inset solid darkgrey;
}

.file-thumb-with-text-link {
  width: 200px;
}
.file-thumb-with-text-link .file-thumb-with-text-link-thumb {
  display: block;
  margin-bottom: 12px;
}
.file-thumb-with-text-link .file-thumb-with-text-link-text {
  width: 100%;
  text-align: center;
}
