html,
body,
.dialog-off-canvas-main-canvas {
  min-height: 100vh;
}
#page {
  min-height: 100vh;
  display: flex;
  flex-direction: column;
}
#page #main-wrapper {
  flex-grow: 1;
}
html {
  scroll-behavior: auto;
  scroll-behavior: smooth;
}
body {
  font-family: sans-serif;
  font-size: 12pt;
  color: #535353;
  font-weight: 400;
}
picture {
  display: block;
}
picture .img-fluid {
  width: 100%;
}
input,
textarea {
  max-width: 100%;
}
.form-item-copy,
#edit-preview {
  display: none;
}
#edit-submit {
  margin: auto;
  display: block;
}
a {
  text-decoration: none;
  color: #359C98;
  cursor: pointer;
}
a:hover {
  color: #018ca7;
}
ul,
li,
ul.menu {
  margin: 0;
  padding: 0;
}
img {
  max-width: 100%;
  height: auto!important;
}
.button,
.btn {
  display: block;
  text-align: center;
  width: max-content;
  max-width: 100%;
  white-space: normal;
  margin: auto;
  border: 0;
  padding: 0.25rem 1rem;
  text-transform: uppercase;
  color: #fff;
  background: #000;
  border-radius: 30px;
  font-size: 0.9rem;
  text-decoration: none;
  transition: all ease 0.6s;
}
.button:focus,
.btn:focus {
  outline: none!important;
  box-shadow: none!important;
}
.button:hover,
.btn:hover {
  text-decoration: none;
  background: #018ca7;
  transition: all ease 0.6s;
}
.btn-cover {
  position: absolute;
  display: block;
  height: 100%;
  width: 100%;
  top: 0;
  left: 0;
  overflow: hidden;
  text-indent: -9999px;
}
.accordion-button {
  display: flex;
  justify-content: space-between;
}
.accordion-button .icon {
  background: #535353;
  transition: all ease 0.25s;
}
.accordion-button:after {
  display: none;
}
.accordion-button:not(.collapsed),
.accordion-button:focus {
  box-shadow: none;
  background: #018ca7;
}
.accordion-button:not(.collapsed) .icon,
.accordion-button:focus .icon {
  background: #fff;
  transition: all ease 0.25s;
  transform: rotate(180deg);
}
.drupal-messages .messages {
  padding: 0.5rem;
  border-top: 1px solid #20262b;
  background: #3c434a;
  color: #fff;
  position: relative;
}
.drupal-messages .messages:last-child {
  border-bottom: 1px solid #20262b;
}
.drupal-messages .messages::before {
  position: absolute;
  width: 14px;
  height: 100%;
  content: "";
  display: block;
  top: 0;
  left: 0;
}
.drupal-messages .messages a {
  text-decoration: underline;
  color: #fff;
}
.drupal-messages .messages a:hover {
  text-decoration: none;
}
.drupal-messages .messages .content-wrap {
  display: flex;
  column-gap: 8px;
}
.drupal-messages .messages .icon-wrap {
  width: 24px;
  flex-grow: 0;
}
.drupal-messages .messages .icon-wrap .icon {
  width: 24px;
  height: 24px;
}
.drupal-messages .messages .content ul {
  margin-left: 1.2rem;
}
.drupal-messages .messages .placeholder {
  background: none;
}
.drupal-messages .messages.messages-type-status:before {
  background: #42a877;
}
.drupal-messages .messages.messages-type-status .icon {
  background: #42a877;
}
.drupal-messages .messages.messages-type-warning:before {
  background: #ffe468;
}
.drupal-messages .messages.messages-type-warning .icon {
  background: #ffe468;
}
.drupal-messages .messages.messages-type-error:before {
  background: #e34f4f;
}
.drupal-messages .messages.messages-type-error .icon {
  background: #e34f4f;
}
nav.tabs li a {
  color: #000;
  display: block;
  background: #ccc;
  border-radius: 4px 4px 0 0;
  padding: 10px;
}
.eu-cookie-compliance-banner {
  background: rgba(0, 0, 0, 0.75);
  font-size: 0.8rem;
}
.eu-cookie-compliance-banner h2 {
  font-size: 0.9rem;
  font-weight: 500;
}
.view-slides {
  position: relative;
}
.view-slides .widget_pager {
  width: 100%;
  position: absolute;
  bottom: 15px;
  left: 0;
  display: flex;
  justify-content: center;
  margin: 0;
}
.view-slides .widget_pager li {
  display: block;
  margin: 0 0.25rem;
  width: 20px;
  height: 20px;
  text-indent: -1000px;
  overflow: hidden;
  border: 2px solid #fff;
  background: #018ca7;
  border-radius: 0;
  cursor: pointer;
}
.view-slides .widget_pager li.active,
.view-slides .widget_pager li:hover {
  background: #e9c16b;
}
.breadcrumb {
  font-size: 0.8em;
  margin: 1em 0;
  padding: 0;
  background: none;
}
.social-media {
  display: flex;
  justify-content: center;
  align-items: center;
  column-gap: 8px;
}
.social-media .btn-icon {
  display: block;
  height: 24px;
  width: 24px;
  transition: all ease 0.6s;
}
.social-media .btn-icon .icon {
  width: 100%;
  height: 100%;
}
.social-media .btn-icon:hover {
  transition: all ease 0.6s;
}
#btnBackTop {
  position: fixed;
  z-index: 500;
  bottom: 16px;
  right: 16px;
}
#btnStudio509 {
  position: absolute;
  bottom: 16px;
  right: 16px;
  background: #000;
  display: none;
}
