@charset "UTF-8";
@layer component {
  /**
   * @file
   * Styles for link buttons and action links.
   */
  .action-links {
    margin: 1em 0;
    padding: 0;
    list-style: none;
  }
  [dir='rtl'] .action-links {
    /* This is required to win over specificity of [dir="rtl"] ul */
    margin-right: 0;
  }
  .action-links li {
    display: inline-block;
    margin: 0 0.3em;
  }
  .action-links li:first-child {
    margin-left: 0; /* LTR */
  }
  [dir='rtl'] .action-links li:first-child {
    margin-right: 0;
    margin-left: 0.3em;
  }
  .button-action {
    display: inline-block;
    padding: 0.2em 0.5em 0.3em;
    text-decoration: none;
    line-height: 160%;
  }
  .button-action::before {
    margin-left: -0.1em; /* LTR */
    padding-right: 0.2em; /* LTR */
    content: '+';
    font-weight: 900;
  }
  [dir='rtl'] .button-action::before {
    margin-right: -0.1em;
    margin-left: 0;
    padding-right: 0;
    padding-left: 0.2em;
  }
  /**
   * @file
   * Styles for breadcrumbs.
   */
  .breadcrumb {
    padding-bottom: 0.5em;
  }
  .breadcrumb ol {
    margin: 0;
    padding: 0;
  }
  [dir='rtl'] .breadcrumb ol {
    /* This is required to win over specificity of [dir="rtl"] ol */
    margin-right: 0;
  }
  .breadcrumb li {
    display: inline;
    margin: 0;
    padding: 0;
    list-style-type: none;
  }
  /* IE8 does not support :not() and :last-child. */
  .breadcrumb li::before {
    content: ' »';
  }
  .breadcrumb li:first-child::before {
    content: none;
  }
  /**
   * @file
   * Visual styles for buttons.
   */
  .button,
  .image-button {
    margin-right: 1em;
    margin-left: 1em;
  }
  .button:first-child,
  .image-button:first-child {
    margin-right: 0;
    margin-left: 0;
  }
  /**
   * @file
   * Inline items.
   */
  .container-inline label::after,
  .container-inline .label::after {
    content: ':';
  }
  .form-type-radios .container-inline label::after,
  .form-type-checkboxes .container-inline label::after {
    content: '';
  }
  .form-type-radios .container-inline .form-type-radio,
  .form-type-checkboxes .container-inline .form-type-checkbox {
    margin: 0 1em;
  }
  .container-inline .form-actions,
  .container-inline.form-actions {
    margin-top: 0;
    margin-bottom: 0;
  }
  /**
   * @file
   * Collapsible details.
   *
   * @see collapse.js
   * @see http://nicolasgallagher.com/css-background-image-hacks/
   */
  details {
    margin-top: 1em;
    margin-bottom: 1em;
    border: 0.0625rem solid #ccc;
  }
  details > .details-wrapper {
    padding: 0.5em 1.5em;
  }
  summary {
    padding: 0.2em 0.5em;
    cursor: pointer;
  }
  /**
   * @file
   * Presentational styles for Drupal dialogs.
   */
  .ui-dialog {
    position: absolute;
    z-index: 1260;
    overflow: visible;
    padding: 0;
    color: #000;
    border: solid 0.0625rem #ccc;
    background: #fff;
  }
  .ui-dialog .ui-dialog-titlebar {
    border-width: 0 0 0.0625rem 0;
    border-style: solid;
    border-color: #ccc;
    border-radius: 0;
    background: #f3f4ee;
    font-weight: bold;
  }
  .ui-dialog .ui-dialog-titlebar-close {
    border: 0;
    background: none;
  }
  .ui-dialog .ui-dialog-buttonpane {
    margin-top: 0;
    padding: 0.3em 1em;
    border-width: 0.0625rem 0 0 0;
    border-color: #ccc;
    background: #f3f4ee;
  }
  .ui-dialog .ui-dialog-buttonpane .ui-dialog-buttonset {
    margin: 0;
    padding: 0;
  }
  .ui-dialog .ui-dialog-buttonpane .ui-button-text-only .ui-button-text {
    padding: 0;
  }
  /* Form action buttons are moved in dialogs. Remove empty space. */
  .ui-dialog .ui-dialog-content .form-actions {
    margin: 0;
    padding: 0;
  }
  .ui-dialog .ajax-progress-throbber {
    position: fixed;
    z-index: 1000;
    top: 48.5%;
    /* Can't do center:50% middle: 50%, so approximate it for a typical window size. */
    left: 49%;
    width: 1.5rem;
    height: 1.5rem;
    padding: 0.25rem;
    opacity: 0.9;
    border-radius: 0.4375rem;
    background-color: #232323;
    background-image: url(../images/icons/loading-small.svg);
    background-repeat: no-repeat;
    background-position: center center;
  }
  .ui-dialog .ajax-progress-throbber .throbber,
  .ui-dialog .ajax-progress-throbber .message {
    display: none;
  }
  /**
   * @file
   * General styles for dropbuttons.
   */
  .js .dropbutton-widget {
    border: 0.0625rem solid #ccc;
    background-color: white;
  }
  .js .dropbutton-widget:hover {
    border-color: #b8b8b8;
  }
  .dropbutton .dropbutton-action > * {
    padding: 0.1em 0.5em;
    white-space: nowrap;
  }
  .dropbutton .secondary-action {
    border-top: 0.0625rem solid #e8e8e8;
  }
  .dropbutton-multiple .dropbutton {
    border-right: 0.0625rem solid #e8e8e8; /* LTR */
  }
  [dir='rtl'] .dropbutton-multiple .dropbutton {
    border-right: 0 none;
    border-left: 0.0625rem solid #e8e8e8;
  }
  .dropbutton-multiple .dropbutton .dropbutton-action > * {
    margin-right: 0.25em; /* LTR */
  }
  [dir='rtl'] .dropbutton-multiple .dropbutton .dropbutton-action > * {
    margin-right: 0;
    margin-left: 0.25em;
  }
  /**
   * @file
   * Visual styles for exposed filters.
   */
  .exposed-filters .filters {
    float: left; /* LTR */
    margin-right: 1em; /* LTR */
  }
  [dir='rtl'] .exposed-filters .filters {
    float: right;
    margin-right: 0;
    margin-left: 1em;
  }
  .exposed-filters .form-item {
    margin: 0 0 0.1em 0;
    padding: 0;
  }
  .exposed-filters .form-item label {
    float: left; /* LTR */
    width: 10em;
    font-weight: normal;
  }
  [dir='rtl'] .exposed-filters .form-item label {
    float: right;
  }
  .exposed-filters .form-select {
    width: 14em;
  }
  /* Current filters */
  .exposed-filters .current-filters {
    margin-bottom: 1em;
  }
  .exposed-filters .current-filters .placeholder {
    font-weight: bold;
    font-style: normal;
  }
  .exposed-filters .additional-filters {
    float: left; /* LTR */
    margin-right: 1em; /* LTR */
  }
  [dir='rtl'] .exposed-filters .additional-filters {
    float: right;
    margin-right: 0;
    margin-left: 1em;
  }
  /**
   * @file
   * Visual styles for fields.
   */
  .field__label {
    font-weight: bold;
  }
  .field--label-inline .field__label,
  .field--label-inline .field__items {
    float: left; /* LTR */
  }
  .field--label-inline .field__label,
  .field--label-inline > .field__item,
  .field--label-inline .field__items {
    padding-right: 0.5em;
  }
  [dir='rtl'] .field--label-inline .field__label,
  [dir='rtl'] .field--label-inline .field__items {
    padding-right: 0;
    padding-left: 0.5em;
  }
  .field--label-inline .field__label::after {
    content: ':';
  }
  /**
   * @file
   * Default style for file module.
   */
  /* File icons. */
  .file {
    display: inline-block;
    min-height: 1rem;
    padding-left: 1.25rem; /* LTR */
    background-repeat: no-repeat;
    background-position: left center; /* LTR */
  }
  [dir='rtl'] .file {
    padding-right: 1.25rem;
    padding-left: inherit;
    background-position: right center;
  }
  .file--general,
  .file--application-octet-stream {
    background-image: url(../images/icons/application-octet-stream.png);
  }
  .file--package-x-generic {
    background-image: url(../images/icons/package-x-generic.png);
  }
  .file--x-office-spreadsheet {
    background-image: url(../images/icons/x-office-spreadsheet.png);
  }
  .file--x-office-document {
    background-image: url(../images/icons/x-office-document.png);
  }
  .file--x-office-presentation {
    background-image: url(../images/icons/x-office-presentation.png);
  }
  .file--text-x-script {
    background-image: url(../images/icons/text-x-script.png);
  }
  .file--text-html {
    background-image: url(../images/icons/text-html.png);
  }
  .file--text-plain {
    background-image: url(../images/icons/text-plain.png);
  }
  .file--application-pdf {
    background-image: url(../images/icons/application-pdf.png);
  }
  .file--application-x-executable {
    background-image: url(../images/icons/application-x-executable.png);
  }
  .file--audio {
    background-image: url(../images/icons/audio-x-generic.png);
  }
  .file--video {
    background-image: url(../images/icons/video-x-generic.png);
  }
  .file--text {
    background-image: url(../images/icons/text-x-generic.png);
  }
  .file--image {
    background-image: url(../images/icons/image-x-generic.png);
  }
  /**
   * @file
   * Visual styles for form components.
   */
  form .field-multiple-table {
    margin: 0;
  }
  form .field-multiple-table .field-multiple-drag {
    width: 1.875rem;
    padding-right: 0; /* LTR */
  }
  [dir='rtl'] form .field-multiple-table .field-multiple-drag {
    padding-left: 0;
  }
  form .field-multiple-table .field-multiple-drag .tabledrag-handle {
    padding-right: 0.5em; /* LTR */
  }
  [dir='rtl'] form .field-multiple-table .field-multiple-drag .tabledrag-handle {
    padding-right: 0;
    padding-left: 0.5em;
  }
  form .field-add-more-submit {
    margin: 0.5em 0 0;
  }
  /**
   * Markup generated by Form API.
   */
  .form-item,
  .form-actions {
    margin-top: 1em;
    margin-bottom: 1em;
  }
  tr.odd .form-item,
  tr.even .form-item {
    margin-top: 0;
    margin-bottom: 0;
  }
  .form-composite > .fieldset-wrapper > .description,
  .form-item .description {
    font-size: 0.85em;
  }
  label.option {
    display: inline;
    font-weight: normal;
  }
  .form-composite > legend,
  .label {
    display: inline;
    margin: 0;
    padding: 0;
    font-size: inherit;
    font-weight: bold;
  }
  .form-checkboxes .form-item,
  .form-radios .form-item {
    margin-top: 0.4em;
    margin-bottom: 0.4em;
  }
  .form-type-radio .description,
  .form-type-checkbox .description {
    margin-left: 2.4em; /* LTR */
  }
  [dir='rtl'] .form-type-radio .description,
  [dir='rtl'] .form-type-checkbox .description {
    margin-right: 2.4em;
    margin-left: 0;
  }
  .marker {
    color: #e00;
  }
  .form-required::after {
    display: inline-block;
    width: 0.375rem;
    height: 0.375rem;
    margin: 0 0.3em;
    content: '';
    vertical-align: super;
    /* Use a background image to prevent screen readers from announcing the text. */
    background-image: url(../images/icons/required.svg);
    background-repeat: no-repeat;
    background-size: 0.375rem 0.375rem;
  }
  abbr.tabledrag-changed,
  abbr.ajax-changed {
    border-bottom: none;
  }
  .form-item input.error,
  .form-item textarea.error,
  .form-item select.error {
    border: 0.125rem solid red;
  }
  /* Inline error messages. */
  .form-item--error-message::before {
    display: inline-block;
    width: 0.875rem;
    height: 0.875rem;
    content: '';
    vertical-align: sub;
    background: url(../images/icons/error.svg) no-repeat;
    background-size: contain;
  }
  /**
   * @file
   * Visual styles for icons.
   */
  .icon-help {
    padding: 0.0625rem 0 0.0625rem 1.25rem; /* LTR */
    background: url(../images/icons/help.png) 0 50% no-repeat; /* LTR */
  }
  [dir='rtl'] .icon-help {
    padding: 0.0625rem 1.25rem 0.0625rem 0;
    background-position: 100% 50%;
  }
  .feed-icon {
    display: block;
    overflow: hidden;
    width: 1rem;
    height: 1rem;
    text-indent: -624.9375rem;
    background: url(../images/icons/feed.svg) no-repeat;
  }
  /**
   * @file
   * Image upload widget.
   */
  .image-preview {
    float: left; /* LTR */
    padding: 0 0.625rem 0.625rem 0; /* LTR */
  }
  [dir='rtl'] .image-preview {
    float: right;
    padding: 0 0 0.625rem 0.625rem;
  }
  .image-widget-data {
    float: left; /* LTR */
  }
  [dir='rtl'] .image-widget-data {
    float: right;
  }
  .image-widget-data .text-field {
    width: auto;
  }
  /**
   * @file
   * Basic styling for comment module.
   */
  /**
   * Indent threaded comments.
   */
  .indented {
    margin-left: 1.5625rem; /* LTR */
  }
  [dir='rtl'] .indented {
    margin-right: 1.5625rem;
    margin-left: 0;
  }
  /**
   * @file
   * Visual styles for inline forms.
   */
  .form--inline .form-item {
    float: left; /* LTR */
    margin-right: 0.5em; /* LTR */
  }
  [dir='rtl'] .form--inline .form-item {
    float: right;
    margin-right: 0;
    margin-left: 0.5em;
  }
  /* This is required to win over specificity of [dir="rtl"] .form--inline .form-item */
  [dir='rtl'] .views-filterable-options-controls .form-item {
    margin-right: 2%;
  }
  .form--inline .form-item-separator {
    margin-top: 2.3em;
    margin-right: 1em; /* LTR */
    margin-left: 0.5em; /* LTR */
  }
  [dir='rtl'] .form--inline .form-item-separator {
    margin-right: 0.5em;
    margin-left: 1em;
  }
  .form--inline .form-actions {
    clear: left; /* LTR */
  }
  [dir='rtl'] .form--inline .form-actions {
    clear: right;
  }
  /**
   * @file
   * Visual styles for item list.
   */
  .item-list .title {
    font-weight: bold;
  }
  .item-list ul {
    margin: 0 0 0.75em 0;
    padding: 0;
  }
  .item-list li {
    margin: 0 0 0.25em 1.5em; /* LTR */
    padding: 0;
  }
  [dir='rtl'] .item-list li {
    margin: 0 1.5em 0.25em 0;
  }
  /**
   * Comma separated lists.
   */
  .item-list--comma-list {
    display: inline;
  }
  .item-list--comma-list .item-list__comma-list,
  .item-list__comma-list li,
  [dir='rtl'] .item-list--comma-list .item-list__comma-list,
  [dir='rtl'] .item-list__comma-list li {
    margin: 0;
  }
  /**
   * @file
   * Style another element as a link.
   */
  button.link {
    margin: 0;
    padding: 0;
    cursor: pointer;
    border: 0;
    background: transparent;
    font-size: 1em;
  }
  label button.link {
    font-weight: bold;
  }
  /**
   * @file
   * Visual styles for links.
   */
  ul.inline,
  ul.links.inline {
    display: inline;
    padding-left: 0; /* LTR */
  }
  [dir='rtl'] ul.inline,
  [dir='rtl'] ul.links.inline {
    padding-right: 0;
    padding-left: 0.9375rem;
  }
  ul.inline li {
    display: inline;
    padding: 0 0.5em;
    list-style-type: none;
  }
  ul.links a.is-active {
    color: #000;
  }
  /**
   * @file
   * Styles for system messages.
   */
  .messages {
    margin-bottom: 1.875rem;
    padding: 0.9375rem 1.25rem 0.9375rem 2.1875rem; /* LTR */
    word-wrap: break-word;
    border: 0.0625rem solid;
    border-width: 0.0625rem 0.0625rem 0.0625rem 0; /* LTR */
    border-radius: 0.125rem;
    background: no-repeat 0.625rem 1.0625rem; /* LTR */
    overflow-wrap: break-word;
  }
  [dir='rtl'] .messages {
    padding-right: 2.1875rem;
    padding-left: 1.25rem;
    text-align: right;
    border-width: 0.0625rem 0 0.0625rem 0.0625rem;
    background-position: right 0.625rem top 1.0625rem;
  }
  .messages + .messages {
    margin-top: 1.538em;
  }
  .messages__list {
    margin: 0;
    padding: 0;
    list-style: none;
  }
  .messages__item + .messages__item {
    margin-top: 0.769em;
  }
  .messages--status {
    color: #325e1c;
    border-color: #c9e1bd #c9e1bd #c9e1bd transparent; /* LTR */
    background-color: #f3faef;
    background-image: url(../images/icons/check.svg);
    box-shadow: -0.5rem 0 0 #77b259; /* LTR */
  }
  [dir='rtl'] .messages--status {
    margin-left: 0;
    border-color: #c9e1bd transparent #c9e1bd #c9e1bd;
    box-shadow: 0.5rem 0 0 #77b259;
  }
  .messages--warning {
    color: #734c00;
    border-color: #f4daa6 #f4daa6 #f4daa6 transparent; /* LTR */
    background-color: #fdf8ed;
    background-image: url(../images/icons/warning.svg);
    box-shadow: -0.5rem 0 0 #e09600; /* LTR */
  }
  [dir='rtl'] .messages--warning {
    border-color: #f4daa6 transparent #f4daa6 #f4daa6;
    box-shadow: 0.5rem 0 0 #e09600;
  }
  .messages--error {
    color: #a51b00;
    border-color: #f9c9bf #f9c9bf #f9c9bf transparent; /* LTR */
    background-color: #fcf4f2;
    background-image: url(../images/icons/error.svg);
    box-shadow: -0.5rem 0 0 #e62600; /* LTR */
  }
  [dir='rtl'] .messages--error {
    border-color: #f9c9bf transparent #f9c9bf #f9c9bf;
    box-shadow: 0.5rem 0 0 #e62600;
  }
  .messages--error p.error {
    color: #a51b00;
  }
  /**
   * @file
   * Markup generated by #type 'more_link'.
   */
  .more-link {
    display: block;
    text-align: right; /* LTR */
  }
  [dir='rtl'] .more-link {
    text-align: left;
  }
  /**
   * @file
   * Visual styles for pager.
   */
  .pager__items {
    clear: both;
    text-align: center;
  }
  .pager__item {
    display: inline;
    padding: 0.5em;
  }
  .pager__item.is-active {
    font-weight: bold;
  }
  /**
   * @file
   * Visual styles for progress bar.
   *
   * @see progress.js
   */
  .progress__track {
    border-color: #b3b3b3;
    border-radius: 10em;
    background-color: #f2f1eb;
    background-image: linear-gradient(#e7e7df, #f0f0f0);
    box-shadow: inset 0 0.0625rem 0.1875rem hsla(0, 0%, 0%, 0.16);
  }
  .progress__bar {
    height: 1rem;
    margin-top: -0.0625rem;
    margin-left: -0.0625rem; /* LTR */
    padding: 0 0.0625rem;
    transition: width 0.5s ease-out;
    -webkit-animation: animate-stripes 3s linear infinite;
    border: 0.0625rem #07629a solid;
    border-radius: 10em;
    background: #057ec9;
    background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.15)), linear-gradient(to right bottom, #0094f0 0%, #0094f0 25%, #007ecc 25%, #007ecc 50%, #0094f0 50%, #0094f0 75%, #0094f0 100%);
    background-size: 2.5rem 2.5rem;
  }
  [dir='rtl'] .progress__bar {
    margin-right: -0.0625rem;
    margin-left: 0;
    animation-direction: reverse;
  }
  /**
   * @file
   * Stylesheet for results generated by the Search module.
   */
  .search-results {
    list-style: none;
  }
  /**
   * @file
   * Visual styles for table drag.
   */
  tr.drag {
    background-color: #fffff0;
  }
  tr.drag-previous {
    background-color: #ffd;
  }
  body div.tabledrag-changed-warning {
    margin-bottom: 0.5em;
  }
  /**
   * @file
   * Table select behavior.
   *
   * @see tableselect.js
   */
  tr.selected td {
    background: #ffc;
  }
  td.checkbox,
  th.checkbox {
    text-align: center;
  }
  [dir='rtl'] td.checkbox,
  [dir='rtl'] th.checkbox {
    /* This is required to win over specificity of [dir="rtl"] td */
    text-align: center;
  }
  /**
   * @file
   * Table sort indicator.
   */
  th.is-active img {
    display: inline;
  }
  td.is-active {
    background-color: #ddd;
  }
  /**
   * @file
   * Visual styles for tabs.
   */
  div.tabs {
    margin: 1em 0;
  }
  ul.tabs {
    margin: 0 0 0.5em;
    padding: 0;
    list-style: none;
  }
  .tabs > li {
    display: inline-block;
    margin-right: 0.3em; /* LTR */
  }
  [dir='rtl'] .tabs > li {
    margin-right: 0;
    margin-left: 0.3em;
  }
  .tabs a {
    display: block;
    padding: 0.2em 1em;
    text-decoration: none;
  }
  .tabs a.is-active {
    background-color: #eee;
  }
  .tabs a:focus,
  .tabs a:hover {
    background-color: #f5f5f5;
  }
  /**
   * @file
   * Visual styles for a resizable textarea.
   */
  .form-textarea-wrapper textarea {
    display: block;
    box-sizing: border-box;
    width: 100%;
    margin: 0;
  }
  /**
   * @file
   * Styles for modal windows.
   */
  .ui-dialog--narrow {
    max-width: 31.25rem;
  }
  /**
   * @file
   * Theme styling for user module.
   */
  /* Visual styling for the Password strength indicator */
  .password-strength__meter {
    margin-top: 0.5em;
    background-color: #ebeae4;
  }
  .password-strength__indicator {
    transition: width 0.5s ease-out;
    background-color: #77b259;
  }
  .password-strength__indicator.is-weak {
    background-color: #e62600;
  }
  .password-strength__indicator.is-fair {
    background-color: #e09600;
  }
  .password-strength__indicator.is-good {
    background-color: #0074bd;
  }
  .password-strength__indicator.is-strong {
    background-color: #77b259;
  }
  .password-confirm,
  .password-field,
  .password-strength,
  .password-confirm-match,
  .password-confirm-message {
    width: 55%;
  }
  .password-suggestions {
    max-width: 34.7em;
    margin: 0.7em 0;
    padding: 0.2em 0.5em;
    border: 0.0625rem solid #b4b4b4;
  }
  .password-suggestions ul {
    margin-bottom: 0;
  }
  .confirm-parent,
  .password-parent {
    clear: left; /* LTR */
    overflow: hidden;
    max-width: 33em;
    margin: 0;
  }
  [dir='rtl'] .confirm-parent,
  [dir='rtl'] .password-parent {
    clear: right;
  }
  /* Styling for the status indicator of the passwords match test.  */
  .password-confirm .ok {
    color: #325e1c;
    font-weight: bold;
  }
  .password-confirm .error {
    color: #a51b00;
    font-weight: bold;
  }
  .block-system-breadcrumb-block {
    margin: 0;
    padding: 2.0625rem 0 0 0;
  }
  .block-system-breadcrumb-block > h2 {
    display: none;
  }
  .block-system-breadcrumb-block .breadcrumb {
    padding: 0;
  }
  .block-system-breadcrumb-block .breadcrumb ol {
    margin-bottom: 0.625rem;
  }
  .block-system-breadcrumb-block .breadcrumb ol li {
    margin: 0 0.625rem 0 0;
    padding-right: 0.8125rem;
    color: var(--black);
    background: url('../images/breadcrumb-separator.svg') no-repeat right 50%;
    background-size: 0.375rem 0.4375rem;
    font-size: 0.75rem;
  }
  .block-system-breadcrumb-block .breadcrumb ol li::before {
    content: '';
  }
  .block-system-breadcrumb-block .breadcrumb ol li:last-child {
    margin: 0;
    padding-right: 0;
    background: none;
    font-weight: bold;
  }
  .block-system-breadcrumb-block .breadcrumb ol li a {
    color: var(--primary);
  }
  .block-system-breadcrumb-block .breadcrumb ol li a:hover {
    color: var(--primary-vivid);
  }
  .block-system-breadcrumb-block .breadcrumb ol li a[href='/'] {
    padding-left: 1.25rem;
    background: url('../images/breadcrumb-home.svg') no-repeat 0 50%;
    background-size: 0.6875rem 0.5625rem;
    font-weight: normal;
  }
  .block-holy-theme-info {
    padding: 1.875rem;
    border: 0.0625rem solid #eee;
    background-color: #fff;
  }
  .block-holy-theme-info > ul {
    margin-bottom: 0;
  }
  #block-holy-views-block-upcoming-block-1 {
    padding: 1.5625rem;
    border: 0.0625rem solid var(--primary);
  }
  .block-system-main-block {
    display: flex;
    flex-direction: column;
    gap: 3.75rem;
  }
  .block {
    margin: 0 0 0 0;
  }
  .block > h2 {
    padding: 0;
  }
  .field--name-field-date {
    margin-bottom: 0.75rem;
    padding-left: 1.875rem;
    background: url('../images/calendar.svg') no-repeat 0 40%;
    background-size: 1.25rem 1.25rem;
    font-size: 1rem;
    font-weight: bold;
    line-height: 1.875rem;
  }
  .field--name-field-gallery {
    padding-top: 2.5rem;
  }
  .field--name-field-gallery .field__item {
    margin-bottom: 0.625rem;
  }
  .field--name-field-gallery .field__item:hover img {
    filter: brightness(75%);
  }
  .field--name-field-tags .field__items {
    display: inline-block;
    border: 0.0625rem solid var(--gray-40);
    border-radius: 0.3125rem;
  }
  .field--name-field-tags .field__items .field__item {
    display: inline-block;
    border-right: 0.0625rem solid var(--gray-40);
  }
  .field--name-field-tags .field__items .field__item:last-child {
    border-right: 0;
  }
  .field--name-field-tags .field__items .field__item a {
    display: inline-block;
    padding: 0.625rem;
  }
  .field--name-title h2 {
    padding: 0;
  }
  .field--type-comment > h2 {
    margin-bottom: 3.125rem;
  }
  article.comment {
    margin-bottom: 1.875rem;
  }
  article.comment .left {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 4.375rem;
    height: 4.375rem;
    margin-bottom: 0.625rem;
    color: var(--primary-darker);
    border-radius: 100%;
    background-color: var(--primary-damped);
    font-size: 1.5rem;
    font-weight: 800;
    line-height: 1.5;
  }
  article.comment .left article.profile .field--name-user-picture {
    margin: 0;
  }
  article.comment .left article.profile .field--name-user-picture img {
    border-radius: 100%;
  }
  article.comment .right .comment__meta {
    display: flex;
    align-items: center;
    margin-bottom: 0.625rem;
    padding: 0 0.5rem;
    gap: 0.875rem;
  }
  article.comment .right .comment__meta mark {
    padding: 0 0.3125rem;
    color: var(--black);
    border-radius: 0.1875rem;
    font-size: 0.875rem;
    font-weight: 800;
    line-height: 1.125rem;
  }
  article.comment .right .comment__meta .comment-info {
    display: flex;
    align-items: center;
    margin-right: auto;
    line-height: 1.5;
  }
  article.comment .right .comment__meta .comment-info .author {
    margin-right: 0.9375rem;
    color: var(--primary-darker);
    font-size: 1rem;
    font-weight: 800;
  }
  article.comment .right .comment__meta .comment-info .date {
    color: var(--black-60);
    font-size: 0.875rem;
    font-weight: 600;
  }
  article.comment .right .comment__meta .permalink {
    display: flex;
    align-items: center;
  }
  article.comment .right .comment__meta .permalink a {
    font-size: 0.75rem;
    font-weight: bold;
  }
  article.comment .right .content {
    padding: 0.9375rem 1.25rem 1.25rem 1.25rem;
    border-radius: 0.5rem;
    background-color: var(--black-05);
  }
  article.comment .right .content h3 {
    margin-bottom: 0.625rem;
    padding: 0;
    color: var(--black);
    font-size: 1.25rem;
    font-weight: 600;
    line-height: 1.5;
  }
  article.comment .right .content h3 a {
    text-decoration: none;
    color: var(--black);
  }
  article.comment .right .content h3 a:hover {
    color: var(--primary);
  }
  article.comment .right .content .field--name-comment-body {
    margin-bottom: 0.9375rem;
    font-size: 1rem;
    line-height: 1.5;
  }
  article.comment .right .content .field--name-comment-body p {
    margin-bottom: 0.3125rem;
  }
  article.comment .right .content ul.links {
    display: flex;
    flex-direction: row-reverse;
    margin: 0;
    padding: 0.625rem 0 0 0;
    border-top: 0.0625rem solid var(--primary-damped);
  }
  article.comment .right .content ul.links li {
    margin: 0;
    padding: 0;
    list-style: none;
    font-size: 0.875rem;
    line-height: 1.5;
  }
  article.comment .right .content ul.links li:last-child {
    margin-right: auto;
  }
  article.comment .right .content ul.links li a {
    font-size: 0.875rem;
    font-weight: 600;
  }
  article.comment .right .content ul.links li a:hover {
    color: var(--primary);
  }
  article.comment .right .content ul.links li a[href*='reply'],
  article.comment .right .content ul.links li a[href*='edit'],
  article.comment .right .content ul.links li a[href*='delete'] {
    display: inline-block;
    margin-right: 0.9375rem;
    padding-left: 2.5rem;
    text-decoration: none;
    color: var(--black-80);
    background-size: auto 1.625rem;
    line-height: 1.625rem;
  }
  article.comment .right .content ul.links li a[href*='reply']:hover,
  article.comment .right .content ul.links li a[href*='edit']:hover,
  article.comment .right .content ul.links li a[href*='delete']:hover {
    color: var(--primary);
  }
  article.comment .right .content ul.links li a[href*='reply'] {
    background: url('../images/ico-comments-reply.svg') no-repeat 0.4375rem 50%;
  }
  article.comment .right .content ul.links li a[href*='edit'] {
    background: url('../images/ico-comments-edit.svg') no-repeat 0.4375rem 50%;
  }
  article.comment .right .content ul.links li a[href*='delete'] {
    background: url('../images/ico-comments-delete.svg') no-repeat 0.4375rem 50%;
  }
  .field--type-image img {
    max-width: 100%;
    height: auto;
  }
  .field {
    margin-bottom: 0.8125rem;
  }
  .field.field--label-above .field__label {
    display: block;
    margin-bottom: 0.375rem;
  }
  .form-item {
    margin-bottom: 1.875rem;
  }
  .form-item label {
    display: inline-block;
    margin-bottom: 0.625rem;
    padding: 0 0.625rem;
    color: var(--primary);
    font-size: 0.875rem;
    font-weight: normal;
  }
  .form-item .description {
    padding: 0.5rem 0.625rem 0 0.625rem;
    color: var(--black-60);
    font-size: 0.8125rem;
    line-height: 1.5;
  }
  .form-item .form-type-checkbox,
  .form-item .form-type-radio {
    margin: 0.5rem 0;
  }
  .form-item .form-type-checkbox label,
  .form-item .form-type-radio label {
    margin-bottom: 0;
    color: var(--primary);
    font-weight: normal;
  }
  .form-actions {
    margin-bottom: 1.875rem;
  }
  .layout .block {
    margin: 0 0 3.75rem 0;
  }
  .layout .block > h2 {
    font-size: 2.5rem;
    font-weight: bold;
  }
  .layout .block > .field {
    margin: 0;
  }
  .layout .block:last-child {
    margin: 0;
  }
  .layout {
    margin: 0 0 1.875rem 0;
  }
  /**
   * @file
   * Visual styles for menu.
   */
  ul.menu {
    margin: 0;
    padding: 0;
  }
  ul.menu li {
    margin: 0;
    padding: 0;
    list-style: none;
    line-height: 1;
  }
  .node--type-article.node--view-mode-teaser .field--type-image a {
    display: block;
    overflow: hidden;
  }
  .node--type-article.node--view-mode-teaser .field--type-image img {
    width: 100%;
    max-width: none;
    height: auto;
    transition: 0.3s ease-in;
  }
  .node--type-article.node--view-mode-teaser .field--type-image:hover img {
    transform: scale(1.15);
  }
  .node--type-article.node--view-mode-teaser .text h2.title {
    margin: 0 0 0.625rem 0;
    padding: 0;
    line-height: 1.3;
  }
  .node--type-article.node--view-mode-teaser .text h2.title a {
    transition: color 0.25s;
    text-decoration: none;
    color: var(--black);
    font-size: 2.125rem;
    font-weight: 600;
  }
  .node--type-article.node--view-mode-teaser .text h2.title a:hover {
    transition: color 0.25s;
    text-decoration: none;
    color: var(--primary);
  }
  .node--type-article.node--view-mode-teaser .text .readmore {
    margin-top: -0.3125rem;
    padding-top: 0;
  }
  .node--type-article.node--view-mode-teaser .text .readmore a {
    display: inline-block;
    display: flex;
    align-items: center;
    color: var(--primary-vivid-80);
    font-size: 0.875rem;
    font-weight: 700;
    gap: 0.625rem;
  }
  .node--type-article.node--view-mode-teaser .text .readmore a::after {
    display: inline-block;
    width: 1.625rem;
    height: 1.25rem;
    content: '';
    transition: width 0.25s;
    background: url('../images/button-read-more.svg') no-repeat right 50%;
    background-size: auto 0.625rem;
  }
  .node--type-article.node--view-mode-teaser .text .readmore a:hover {
    text-decoration: none;
  }
  .node--type-article.node--view-mode-teaser .text .readmore a:hover::after {
    width: 1.9375rem;
    transition: width 0.25s;
  }
  .node--view-mode-full .field--name-field-image {
    margin-bottom: 1.5625rem;
  }
  .node--view-mode-full .node-info {
    margin-bottom: 1.875rem;
  }
  /**
   * @file
   * Visual styles for nodes.
   */
  .node--unpublished {
    background-color: #fff4f4;
  }
  .node {
    margin: 0;
  }
  .node .node-info {
    display: flex;
    align-items: center;
    margin: 0 0 0.625rem 0;
    gap: 1.25rem;
  }
  .node .node-info .date {
    color: var(--primary-vivid-60);
    font-size: 0.875rem;
    font-weight: 800;
  }
  .node .node-info .author {
    display: flex;
    align-items: center;
    margin-right: auto;
    padding: 0 0.3125rem;
    color: var(--black-80);
    border-radius: 0.1875rem;
    background-color: var(--primary-vivid-40);
    font-size: 0.875rem;
    font-weight: 800;
    line-height: 1.125rem;
  }
  .node .node-info .comment {
    color: var(--primary-darker);
    font-size: 0.875rem;
  }
  .node .node__links {
    margin-bottom: 1.25rem;
    padding-top: 2.5rem;
    text-align: right;
    font-size: 0.875rem;
  }
  .node .node__links ul.links {
    margin: 0;
    padding: 0;
  }
  .node .node__links ul.links li {
    display: inline-block;
    margin: 0 0 0 1.25rem;
    padding: 0;
    list-style: none;
  }
  .node .node__links ul.links li a {
    font-weight: bold;
  }
  .node .node__links ul.links li a:hover {
    color: var(--primary);
  }
  .view nav.pager {
    margin: 0 0 1rem 0;
    text-align: center;
  }
  .view nav.pager .pager__items {
    display: inline-flex;
    margin: 0;
    padding: 0;
    border: 0.0625rem solid var(--primary-damped);
    border-radius: 0.5rem;
    line-height: 1;
  }
  .view nav.pager .pager__items .pager__item {
    margin: 0;
    padding: 0;
    font-size: 1rem;
    font-weight: bold;
    line-height: 1;
  }
  .view nav.pager .pager__items .pager__item:first-child {
    border-top-left-radius: 0.3125rem;
    border-bottom-left-radius: 0.3125rem;
  }
  .view nav.pager .pager__items .pager__item:last-child {
    border-top-right-radius: 0.3125rem;
    border-bottom-right-radius: 0.3125rem;
  }
  .view nav.pager .pager__items .pager__item a {
    display: block;
    height: 2.75rem;
    padding: 0 0.9375rem;
    text-decoration: none;
    color: var(--black);
    font-weight: bold;
    line-height: 2.75rem;
  }
  .view nav.pager .pager__items .pager__item a:hover {
    color: var(--primary);
  }
  .view nav.pager .pager__items .pager__item.is-active {
    background: var(--primary-damped);
  }
  .view nav.pager .pager__items .pager__item.is-active a:hover {
    color: var(--black);
  }
  .view nav.pager .pager__items .pager__item.is-active:not(:has(a)) {
    height: 2.75rem;
    padding: 0 0.9375rem;
    line-height: 2.75rem;
  }
  .view nav.pager .pager__items .pager__item.pager__item--first a {
    width: 3.125rem;
    height: 2.75rem;
    transform: rotate(180deg);
    background: url('../images/button-arrow-pager-double.svg') no-repeat 0.125rem 50%;
    background-size: 1.75rem 0.75rem;
  }
  .view nav.pager .pager__items .pager__item.pager__item--first a:hover {
    background-image: url('../images/button-arrow-pager-double-hover.svg');
  }
  .view nav.pager .pager__items .pager__item.pager__item--first a span {
    display: none;
  }
  .view nav.pager .pager__items .pager__item.pager__item--previous a {
    width: 3.125rem;
    height: 2.75rem;
    transform: rotate(180deg);
    background: url('../images/button-arrow-pager.svg') no-repeat 50% 50%;
    background-size: 1.5rem 0.75rem;
  }
  .view nav.pager .pager__items .pager__item.pager__item--previous a:hover {
    background-image: url('../images/button-arrow-pager-hover.svg');
  }
  .view nav.pager .pager__items .pager__item.pager__item--previous a span {
    display: none;
  }
  .view nav.pager .pager__items .pager__item.pager__item--next a {
    width: 3.125rem;
    height: 2.75rem;
    background: url('../images/button-arrow-pager.svg') no-repeat 50% 50%;
    background-size: 1.5rem 0.75rem;
  }
  .view nav.pager .pager__items .pager__item.pager__item--next a:hover {
    background-image: url('../images/button-arrow-pager-hover.svg');
  }
  .view nav.pager .pager__items .pager__item.pager__item--next a span {
    display: none;
  }
  .view nav.pager .pager__items .pager__item.pager__item--last a {
    width: 3.125rem;
    height: 2.75rem;
    background: url('../images/button-arrow-pager-double.svg') no-repeat 0.125rem 50%;
    background-size: 1.75rem 0.75rem;
  }
  .view nav.pager .pager__items .pager__item.pager__item--last a:hover {
    background-image: url('../images/button-arrow-pager-double-hover.svg');
  }
  .view nav.pager .pager__items .pager__item.pager__item--last a span {
    display: none;
  }
  .view .view-content .views-table {
    width: 100%;
  }
  .view .view-content .views-row {
    margin-bottom: 3.75rem;
  }
  .view .more-link {
    margin-top: 0.625rem;
    padding-top: 0.9375rem;
    text-align: left;
    border-top: 0.0625rem solid #eee;
  }
  @media all and (max-width: 48em) {
    /* 768px */
    .ui-dialog {
      width: 92% !important;
    }
  }
  @media screen and (prefers-reduced-motion: reduce) {
    .progress__bar {
      transition: none;
      -webkit-animation: none;
    }
  }
  /**
   * Progress bar animations.
   */
  @keyframes animate-stripes {
    0% {
      background-position:
        0 0,
        0 0;
    }
    100% {
      background-position:
        0 0,
        -5rem 0;
    }
  }
  @media screen and (max-width: 600px) {
    .ui-dialog--narrow {
      min-width: 95%;
      max-width: 95%;
    }
  }
  @media (max-width: 849px) {
    .block-local-tasks-block nav.tabs ul.tabs {
      display: flex;
      flex-direction: column;
      margin: 0 0 1.875rem 0;
      border-top: 0.0625rem solid var(--primary-damped);
    }
    .block-local-tasks-block nav.tabs ul.tabs li {
      margin: 0 0 0 -0.125rem;
      padding: 0;
      border-right: 0.0625rem solid var(--primary-damped);
      border-bottom: 0.0625rem solid var(--primary-damped);
      line-height: 1.5;
    }
    .block-local-tasks-block nav.tabs ul.tabs li a {
      display: block;
      box-sizing: border-box;
      height: 3.125rem;
      margin: 0;
      padding: 0 1.75rem;
      white-space: nowrap;
      color: var(--black-60);
      border-left: 0.4375rem solid var(--primary-damped);
      background: none;
      font-size: 1.0625rem;
      line-height: 3.125rem;
    }
    .block-local-tasks-block nav.tabs ul.tabs li a:hover {
      text-decoration: none;
      color: var(--black);
      border-left: 0.4375rem solid var(--primary);
    }
    .block-local-tasks-block nav.tabs ul.tabs li.is-active a {
      color: var(--black);
      border-left: 0.4375rem solid var(--primary);
      font-weight: bold;
    }
    .block-local-tasks-block nav.tabs ul.tabs li.is-active a:hover {
      color: var(--black);
      border-left: 0.4375rem solid var(--primary);
    }
  }
  @media (min-width: 850px) {
    .block-local-tasks-block nav.tabs ul.tabs {
      display: flex;
      margin: 0 0 2.5rem 0;
      padding: 0 1.5625rem;
      border: 0;
      border-bottom: 0.125rem solid var(--primary-damped);
    }
    .block-local-tasks-block nav.tabs ul.tabs li {
      margin: 0 0.375rem -0.125rem 0;
      padding: 0;
      line-height: 1.5;
    }
    .block-local-tasks-block nav.tabs ul.tabs li a {
      display: block;
      box-sizing: border-box;
      height: 3.75rem;
      margin: 0;
      padding: 0 1.75rem;
      white-space: nowrap;
      color: var(--black-60);
      background: none;
      font-size: 1.0625rem;
      line-height: 3.75rem;
    }
    .block-local-tasks-block nav.tabs ul.tabs li a:hover {
      text-decoration: none;
      color: var(--black);
      border-bottom: 0.125rem solid var(--primary);
    }
    .block-local-tasks-block nav.tabs ul.tabs li.is-active a {
      color: var(--black);
      border-bottom: 0.4375rem solid var(--primary);
      font-weight: bold;
    }
    .block-local-tasks-block nav.tabs ul.tabs li.is-active a:hover {
      color: var(--black);
      border-bottom: 0.4375rem solid var(--primary);
    }
  }
  @media (min-width: 480px) {
    .field--name-field-gallery {
      -moz-column-count: 2;
      column-count: 2;
      -moz-column-gap: 0.625rem;
      column-gap: 0.625rem;
    }
  }
  @media (min-width: 850px) {
    .field--name-field-gallery {
      -moz-column-count: 3;
      column-count: 3;
    }
  }
  @media (min-width: 1360px) {
    .field--name-field-gallery {
      -moz-column-count: 4;
      column-count: 4;
    }
  }
  @media (min-width: 850px) {
    article.comment .left {
      margin-bottom: 0;
    }
  }
  @media (max-width: 479px) {
    article.comment .right .comment__meta .permalink {
      display: none;
    }
  }
  @media (min-width: 850px) {
    article.comment .right .comment__meta {
      padding: 0 1.25rem;
    }
  }
  @media (min-width: 850px) {
    article.comment {
      display: grid;
      grid-template-columns: 4.375rem 1fr;
      gap: 2.5rem;
    }
  }
  @media (min-width: 850px) {
    .indented {
      margin-left: 6.875rem;
    }
    .indented article.comment {
      grid-template-columns: 3.125rem 1fr;
      gap: 1.875rem;
    }
    .indented article.comment .left {
      width: 3.125rem;
      height: 3.125rem;
    }
    .indented .indented {
      margin-left: 5rem;
    }
  }
  @media (max-width: 849px) {
    .layout {
      display: block;
    }
  }
  @media (min-width: 850px) {
    .layout {
      display: flex;
      flex-wrap: wrap;
      gap: 2.5rem;
    }
  }
  @media (min-width: 850px) {
    .node--type-article.node--view-mode-teaser {
      display: flex;
      gap: 2.5rem;
    }
    .node--type-article.node--view-mode-teaser .field--type-image {
      flex: 1;
      margin-top: 0.625rem;
    }
    .node--type-article.node--view-mode-teaser .text {
      flex: 1.8;
    }
    .node--type-article.node--view-mode-teaser .text h2.title a {
      font-size: 2.125rem;
    }
  }
  @media (min-width: 850px) {
    .node--view-mode-full .node-info {
      margin-bottom: 3.125rem;
    }
  }
  @media (min-width: 1360px) {
    #center.no-sidebars .node--view-mode-full .field--name-field-image {
      margin-right: -6.25rem;
      margin-bottom: 3.125rem;
      margin-left: -6.25rem;
    }
    #center.no-sidebars .node--view-mode-full .field--name-field-image img {
      width: 100%;
      max-width: none;
      height: auto;
    }
  }
  @media (max-width: 849px) {
    .view nav.pager .pager__items .pager__item {
      display: none;
    }
    .view nav.pager .pager__items .pager__item.is-active {
      display: inline;
    }
    .view nav.pager .pager__items .pager__item--first {
      display: inline;
    }
    .view nav.pager .pager__items .pager__item--previous {
      display: inline;
    }
    .view nav.pager .pager__items .pager__item--next {
      display: inline;
    }
    .view nav.pager .pager__items .pager__item--last {
      display: inline;
    }
  }
}
