.l-header .menu {
  margin-top: 0.125em;
}

.l-header .block-content {
  position: relative;
}

.main-menu {
  position: relative;
  z-index: 1;
}

.main-header,
.site-header {
  position: relative;
}

.site-header::after {
  content: "";
  display: table;
  clear: both;
}

.l-header .menu::before {
  content: "";
  display: block;
  position: absolute;
  top: -0.125em;
  left: -1rem;
  right: -1rem;
  height: 0.125em;
  background: #ffffff;
}

.header-menu .menu {
  margin-top: 0;
}

.header-menu .menu>li {
  font-size: 1rem;
}

.header-menu .menu::before {
  content: unset;
}

.l-sidebar {
  border-left: 0.125em solid;
  border-color: #bbbbbb;
}

.page-title {
  margin-bottom: 1rem;
  padding: 0.25rem 1.25rem;
  background-color: #0074bd;
}

.views-exposed-widgets {
  line-height: normal;
}

.views-exposed-widgets input,
.views-exposed-widgets select {
  height: 2.75em;
}

.views-exposed-form label,
.form-item label {
  display: block;
  margin-bottom: 0.125em;
}

.button,
input.form-submit {
  border-radius: 0.25rem;
  font-weight: normal;
  cursor: pointer;
  box-shadow: 0.84em 1.584em 1.42em -1.084em gray;
  transition: all 0.8s;
}

.button:hover,
.button:focus,
input.form-submit:hover,
input.form-submit:focus {
  box-shadow: 0.084em 0.334em 0.167em -0.25em black;
}

.button:active,
input.form-submit:active {
  transition: none;
  transform: translatey(2px);
}

button.button-primary,
input.button-primary {
  border: 1px solid black;
  text-shadow: 0 0 2px black;
}

button.button-secondary,
input.button-secondary {
  border: 1px solid black;
}

ul.primary li a:hover,
ul.primary li a:focus,
.expand-dropdown-tabs-control:hover,
.expand-dropdown-tabs-control:focus,
.responsive-tabs-mobile .expand-dropdown-tabs-control:hover:before,
.responsive-tabs-mobile .expand-dropdown-tabs-control:focus:before,
.responsive-tabs-mobile .expand-dropdown-tabs-control.js-active:before,
.expand-dropdown-tabs-control.js-active {
  color: #000001;
  background: #114a75;
}

.img-button {
  position: relative;
  float: right;
  margin: 1rem;
  border: 0;
  padding: 0;
  color: transparent;
  text-decoration: none;
  background: transparent;
  cursor: pointer;
}

.img-button img {
  transform: scale(1);
  transition: all 0.3s;
  filter: drop-shadow(0.84em 1.584em 1.42em gray);
}

.img-button img:hover,
.img-button img:focus {
  transform: scale(1.1);
  filter: drop-shadow(0.084em 0.334em 0.167em black);
}

.img-button:active,
.img-button img:active {
  outline: none;
  color: transparent;
  text-decoration: none;
  background: transparent;
  cursor: pointer;
  transform: translatey(2px);

  user-select: none;
  -webkit-user-drag: none;
  -khtml-user-drag: none;
  -moz-user-drag: none;
  -o-user-drag: none;
  user-drag: none;
  user-select: none;
}

.form-item-search-block-form {
  position: relative;
  display: inline-block;
  width: calc(100% - 2.5rem);
}

.form-item-search-block-form .form-search {
  width: 100%;
}

.block-hero-transparent {
  background-color: transparent;
  margin: 0;
}

.search-box .form-actions {
  position: relative;
  display: inline-block;
}

.search-box .form-actions .form-submit {
  position: relative;
  margin-right: 0;
  padding: 0 0.25rem;
  width: 2rem;
  border: none;
  color: transparent;
  text-shadow: none;
  background: url('/files/icons/search.svg') center/90% no-repeat;
  box-shadow: none;
  cursor: pointer;
}

.flexslider {
  padding: 0 50px;
}

.slides li {
  text-align: center;
}

.flex-direction-nav a {
  width: 2em;
  height: 3em;
  margin: -2em 0 0;
}

.main-container:after,
.main-container:before,
.flex-panel:after,
.flex-panel:before,
.flex-clear:after,
.flex-clear:before {
  content: "";
  display: table;
  clear: both;
}

.flex-panel {
  padding: 0.125em 0;
}

.main-container {
  margin-bottom: 2rem;
  border-radius: 0.5em;
  overflow: hidden;
}

.flex-panel,
.flex-panel .view-content {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
}

.flex-card,
.flex-card-2 {
  margin: 0.25em 0;
  box-shadow: 0 2px 5px 0 rgba(0, 0, 0, 0.16), 0 2px 10px 0 rgba(0, 0, 0, 0.12);
}

.flex-card-4,
.flex-hover-shadow:hover {
  box-shadow: 0 4px 10px 0 rgba(0, 0, 0, 0.2), 0 4px 20px 0 rgba(0, 0, 0, 0.19);
}

.div-center {
  text-align: center;
}

.flex-center,
.flex-center .view-content {
  justify-content: space-between;
  align-items: center;
}

.youtube-box {
  position: relative;
  width: 640px;
  height: 350px;
}

.youtube-box img {
  display: none;
}

.youtube-box iframe {
  z-index: 1;
}

@media print {
  .youtube-thumbnail {
    display: block !important;
    position: absolute;
    top: 0;
    z-index: 10;
    width: 640px;
    height: 350px;
    object-fit: cover;
  }
}

.l-sidebar .social-icons,
.node-mini-info {
  margin-top: 1rem;
  border-top: 0.125rem solid #bbbbbb;
}

.last .node-mini-info {
  margin-bottom: 1rem;
  border-bottom: 0.125rem solid #bbbbbb;
}

.og-members {
  margin-top: 1rem;
  border-top: 0.125rem solid #bbbbbb;
}

.content-author {
  position: relative;
}

.user-picture {
  display: block;
  max-width: 6.5rem;
  max-height: 6.5rem;
  object-fit: contain;
  border: 1px solid black;
  border-radius: 0.125rem;
  background-color: white;
}

.content-author .user-picture {
  visibility: hidden;
  position: absolute;
  bottom: 80%;
  left: 30%;
  max-width: 0;
  max-height: 0;
  transition: all 1s ease-in;
}

.content-author:focus .user-picture,
.content-author:hover .user-picture {
  visibility: visible;
  max-width: 6.5rem;
  max-height: 6.5rem;
}

.book-title {
  color: #fffffe;
  text-decoration: none;
}

.book-navi-title {
  margin-bottom: 0;
  padding-top: 1rem;
  border-top: 0.125rem solid #bbbbbb;
}

.book-navi-title:hover {
  text-shadow: 1px 1px 0.125rem gray;
}

.book-navi ul {
  margin-block-start: 0;
  padding-inline-start: 2rem;
}

.book-navi li {
  margin: 0.25rem 0 0.125rem;
}

.book-navi .expanded::marker {
  content: "► ";
}

.book-navi .collapsed::marker {
  content: "► ";
}

.book-navi li ul li {
  margin: 0;
}

.book-navi a:hover {
  text-shadow: 1px 1px 0.125rem gray;
}

.book-main-title a,
.book-content-title a,
.book-parent-title a,
.book-child-titles a {
  color: #fffffe;
  text-decoration: none;
}

.book-main-title {
  padding: 0.25em 0;
  font-size: 1.5em;
  font-weight: bold;
  line-height: 1.75em;
  background: #43afe4;
}

.book-parent-title {
  margin-top: 0.125em;
  padding: 0.25em 0;
  font-size: 1.5em;
  font-weight: bold;
  line-height: 1.75em;
  background: #586172;
}

.book-content-title {
  margin-top: 0.125em;
  padding: 0.25em 0;
  font-size: 1.5em;
  font-weight: normal;
  line-height: 1.75em;
  background-color: #114a75;
}

.book-child-titles {
  margin-top: 0.125em;
  padding: 0 0.5em;
  background: #586172;
}

.group-card,
.book-card {
  display: inline-block;
  position: relative;
  box-sizing: border-box;
  border: 0.125em solid #bbbbbb;
  background: #43afe4;
  overflow: hidden;

  box-shadow: 0.84em 1.584em 1.42em -1.084em gray;
  transition: all .5s ease;

  user-select: none;
  -webkit-user-drag: none;
  -khtml-user-drag: none;
  -moz-user-drag: none;
  -o-user-drag: none;
  user-drag: none;
  user-select: none;
}

.group-card:hover,
.group-card:focus,
.book-card:hover,
.book-card:focus {
  box-shadow: 0.084em 0.334em 0.167em -0.25em black;
}

.group-card:active,
.book-card:active {
  transition: none;
  transform: translatey(2px);
}

.card-image-bg {
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  max-width: 100%;
}

.group-card img,
.book-card img {
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  object-fit: cover;
  transition: transform 0.8s ease;
}

.book-card img {
  min-width: inherit;
  height: 4em;
  transform: scale(1.05) translate(-49.5%, -49.5%);
}

.book-card:hover img {
  transform: scale(1.175) translate(-45%, -45%);
}

.book-card a {
  z-index: 1;
  display: block;
  position: relative;
  font-size: 1em;
  padding: 0.2em 0.5em;
  line-height: 1.5em;

  color: white;
  font-weight: bold;
  text-align: center;
  text-shadow: 0 0 2px black;
  background: transparent;

  -webkit-user-drag: none;
  -khtml-user-drag: none;
  -moz-user-drag: none;
  -o-user-drag: none;
  user-drag: none;
  user-select: none;
}

.book-card .card-image-bg+a {
  color: #20252e;
  padding: 2.5em 0.5em 0em 0.5em;
  height: 4em;

  text-shadow: 0 0 2px black, 0 0 0.75em black, 0 0 1.5em black, 0 0 3em black;
}

.field-name-field-group-images {
  /*display: inline-block;*/
  position: relative;
  overflow: hidden;
  float: left;
  margin-right: 2em;
  margin-bottom: 1em;
  padding: 0;
  width: 16rem;
  height: 8rem;
  border: 0.125em solid #bbbbbb;
}

.field-name-field-group-images img {
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  padding: 0;
  max-width: 16rem;
  transform: translate(-50%, -50%);
}

.group-card {
  width: 16rem;
  height: 8rem;
  padding: 0;
  margin: 0.5rem 0;
}

.slides .group-card {
  margin-bottom: 1.5rem;
}

.group-card img {
  width: 16rem;
  height: 8rem;
  background: #ffffff;
  transform: scale(1) translate(-50%, -50%);
}

.group-card:focus img,
.group-card:hover img {
  transform: scale(1.1) translate(-45%, -45%);
}

.group-title {
  z-index: 1;
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  max-width: 15.5rem;
  max-height: 7.5rem;
  color: #20252e;
  font-weight: bold;
  text-align: center;
  text-shadow: 0 0 2px black;
  transform: translate(-50%, -50%);
}

.group-card img+.group-title {
  text-shadow: 0 0 2px black, 0 0 0.75em black, 0 0 1.5em black, 0 0 3em black;
}

.group-card p {
  z-index: 2;
  margin: 0;
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  width: 16rem;
  height: 8rem;
  padding: 0.25rem;
  text-align: center;
  line-height: 1.25rem;
  word-wrap: break-word;
  color: transparent;
  background-color: transparent;
  transform: scale(0);

  -webkit-user-drag: none;
  -khtml-user-drag: none;
  -moz-user-drag: none;
  -o-user-drag: none;
  user-drag: none;
  user-select: none;
}

.group-card:focus p,
.group-card:hover p {
  display: block;
  color: #000001;
  background-color: #20252e;
  background-blend-mode: overlay;
  transform: scale(1);
  transition: transform 1s ease-in 2s, background-color 1s ease-in 2s, color 1s ease-in 2s;
}

.group-card a {
  z-index: 3;
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  width: 15.5rem;
  height: 7.5rem;
  font-size: 0;
  color: transparent;
  text-decoration: none;
  background-color: transparent;
  transform: translate(-50%, -50%);

  -webkit-user-drag: none;
  -khtml-user-drag: none;
  -moz-user-drag: none;
  -o-user-drag: none;
  user-drag: none;
  user-select: none;
}

.card-text-bottom {
  top: unset;
  left: 0;
  right: 0;
  bottom: 0;
  vertical-align: bottom;
  transform: none;
}

.book-pager {
  width: 100%;
  display: block;
  position: relative;
  padding: 0;
  height: 3rem;
}

.book-pager-transparent {
  color: transparent;
}

.book-pager .previous,
.book-pager .up,
.book-pager .next {
  display: block;
  color: #010000;
  background: transparent;
  position: absolute;
  line-height: 1rem;
  font-size: 1rem;
  margin: 0.5em 0;
  width: 4.5em;
  height: 2em;
}

.book-pager .previous {
  top: 0.5em;
  left: 0;
  padding: 0.5em 1.125em 0.5em 1.125em;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='72' height='32'%3E%3Cpolygon points='17,1 71,1 55,16 71,31 17,31 1,16' style='fill: %234c5038; stroke: black; stroke-width: 2;' /%3E%3C/svg%3E");
  background-repeat: no-repeat no-repeat;
  background-position: center center;
}

.book-pager .up {
  top: 50%;
  left: 50%;
  margin: 0;
  height: 3rem;
  padding: 1em 0 1em 0;
  word-wrap: normal;
  word-break: keep-all;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='32' height='48'%3E%3Cpolygon points='1,13 16,1 31,13 31,47 17,35 1,47' style='fill: %234c5038; stroke: black; stroke-width: 2;' /%3E%3C/svg%3E");
  background-repeat: no-repeat no-repeat;
  background-position: center center;
  transform: translate(-50%, -50%);
}

.book-pager .next {
  top: 0.5rem;
  right: 0;
  padding: 0.5em 1.125em 0.5em 1.125em;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='72' height='32'%3E%3Cpolygon points='1,1 55,1 71,16 55,31 1,31 16,16' style='fill: %234c5038; stroke: black; stroke-width: 2;' /%3E%3C/svg%3E");
  background-repeat: no-repeat no-repeat;
  background-position: center center;
}


.book-pager a {
  color: #010000;
  text-decoration: none;
  background: transparent;
  font-size: 0;
}

.book-pager .previous a:after {
  content: "back";
}

.book-pager .up a:after {
  content: "up";
}

.book-pager .next a:after {
  content: "next";
}

.book-pager a:after {
  color: #010000;
  text-decoration: none;
  background: transparent;
  font-size: 1rem;
}

.box-circle {
  border-radius: 50%;
}

.box-round-small {
  border-radius: 2px;
}

.box-round,
.box-round-medium {
  border-radius: 4px;
}

.box-round-large {
  border-radius: 8px;
}

.box-round-xlarge {
  border-radius: 16px;
}

.box-round-xxlarge {
  border-radius: 32px;
}

a.pdf {
  text-decoration: none;
  white-space: nowrap;
}

a:hover.pdf {
  text-decoration: underline;
}

a.pdf:before {
  content: '';
  display: inline-block;
  vertical-align: bottom;
  margin-right: 3px;
  height: 1.5em;
  width: 1.5em;
  background-image: url(/themes/fa/images/PDF.svg);
  background-size: contain;
  background-repeat: no-repeat;
  white-space: nowrap;
}

a[href^="tel:"] {
  white-space: nowrap;
}

a[href^="tel:"]:before {
  content: '☎';
  display: inline-block;
  vertical-align: baseline;
  margin-right: 3px;
  font-size: larger;
  white-space: nowrap;
}
