/*
 * This is a manifest file that'll be compiled into application.css.
 *
 * With Propshaft, assets are served efficiently without preprocessing steps. You can still include
 * application-wide styles in this file, but keep in mind that CSS precedence will follow the standard
 * cascading order, meaning styles declared later in the document or manifest will override earlier ones,
 * depending on specificity.
 *
 * Consider organizing styles into separate files for maintainability.
 */

@import url("/assets/satoshi-4015b48f.css");

body {
  min-height: 100vh;
  --bs-link-color: #7a1d29;
  --bs-link-hover-color: #641721;
  --bs-primary: #7a1d29;
  --bs-primary-rgb: 122, 29, 41;
  --bs-body-font-family: "Satoshi-Variable", "Satoshi-Regular", sans-serif;
  font-family: "Satoshi-Variable", "Satoshi-Regular", sans-serif;
}

a {
  color: #7a1d29;
}

a:hover {
  color: #641721;
}

.btn-primary {
  --bs-btn-bg: #7a1d29;
  --bs-btn-border-color: #7a1d29;
  --bs-btn-hover-bg: #641721;
  --bs-btn-hover-border-color: #641721;
  --bs-btn-active-bg: #55141c;
  --bs-btn-active-border-color: #55141c;
  --bs-btn-disabled-bg: #7a1d29;
  --bs-btn-disabled-border-color: #7a1d29;
}

.btn-outline-primary {
  --bs-btn-color: #7a1d29;
  --bs-btn-border-color: #7a1d29;
  --bs-btn-hover-bg: #7a1d29;
  --bs-btn-hover-border-color: #7a1d29;
  --bs-btn-active-bg: #641721;
  --bs-btn-active-border-color: #641721;
  --bs-btn-disabled-color: #7a1d29;
  --bs-btn-disabled-border-color: #7a1d29;
}

.btn.d-inline,
form.d-inline {
  display: inline-block;
}

.pagination {
  gap: 0.25rem;
  flex-wrap: wrap;
}

.news-pagination {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  flex-wrap: wrap;
}

.news-pagination__item,
.news-pagination__gap {
  min-width: 2.75rem;
  height: 2.75rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0 0.95rem;
  border-radius: 999px;
  font-weight: 700;
  text-decoration: none;
}

.news-pagination__item {
  color: #7a1d29;
  background: #fff;
  border: 1px solid rgba(122, 29, 41, 0.18);
  box-shadow: 0 10px 24px rgba(122, 29, 41, 0.08);
  transition: transform 0.18s ease, box-shadow 0.18s ease, background-color 0.18s ease, color 0.18s ease;
}

.news-pagination__item:hover,
.news-pagination__item:focus {
  color: #fff;
  background: #7a1d29;
  border-color: #7a1d29;
  box-shadow: 0 14px 28px rgba(122, 29, 41, 0.18);
  transform: translateY(-1px);
}

.news-pagination__item--current {
  color: #fff;
  background: linear-gradient(135deg, #7a1d29 0%, #a32a38 100%);
  border-color: transparent;
  box-shadow: 0 14px 30px rgba(122, 29, 41, 0.24);
}

.news-pagination__item--arrow {
  font-size: 1.1rem;
}

.news-pagination__item--disabled {
  color: rgba(122, 29, 41, 0.35);
  background: #f7f0f1;
  border: 1px solid rgba(122, 29, 41, 0.1);
  box-shadow: none;
}

.news-pagination__gap {
  color: rgba(122, 29, 41, 0.55);
}

.post-card-image {
  width: 100%;
  height: 100%;
  min-height: 220px;
  object-fit: cover;
}

.site-logo-link {
  width: 100%;
  max-width: 1920px;
  text-align: center;
}

.site-logo {
  width: 100%;
  max-width: 1920px;
  height: auto;
  display: block;
}

.site-tagline {
  width: 100%;
  max-width: 1920px;
  color: #000;
  font-size: 1.35rem;
  font-weight: 700;
  letter-spacing: 0.02em;
  text-align: left;
  margin-top: -0.75rem;
}

.site-menu .nav-link {
  font-weight: 500;
  text-decoration: underline;
  text-decoration-color: transparent;
  text-underline-offset: 0.35rem;
  transition: text-decoration-color 0.2s ease;
}

.site-menu .nav-link:hover,
.site-menu .nav-link:focus,
.site-menu .nav-link.active {
  text-decoration-color: currentColor;
}

.site-navbar .navbar-toggler {
  border-color: rgba(0, 0, 0, 0.15);
}

.site-navbar .navbar-toggler:focus {
  box-shadow: none;
}

.admin-header__brand {
  color: #111;
  font-size: 1.4rem;
  font-weight: 700;
  letter-spacing: 0.02em;
  text-decoration: none;
}

.admin-header__brand:hover,
.admin-header__brand:focus {
  color: #7a1d29;
}

.admin-navbar .navbar-toggler {
  margin-inline: auto;
}

.admin-menu {
  row-gap: 0.15rem;
}

.admin-menu .nav-link {
  color: #111;
}

@media (max-width: 991.98px) {
  .site-menu .nav-link {
    text-align: center;
    padding-top: 0.5rem;
    padding-bottom: 0.5rem;
  }

  .admin-header__brand {
    text-align: center;
  }
}

@media (max-width: 500px) {
  .site-tagline {
    font-size: 0.78rem;
    margin-top: -0.2rem;
  }
}

.entry-items-table {
  table-layout: fixed;
  width: 100%;
}

.entry-items-table__col-text {
  width: 60%;
}

.entry-items-table__col-amount {
  width: 20%;
}

.entry-items-table__col-text--wide {
  width: 75%;
}

.entry-items-table__col-amount--wide {
  width: 25%;
}

.entry-items-table__text {
  white-space: pre-wrap;
  word-break: break-word;
}

.entry-items-table__amount {
  white-space: nowrap;
  text-align: right;
}

trix-editor.form-control {
  min-height: 24rem;
  background-color: #fff;
  overflow-y: auto;
}

.trix-button-group--file-tools {
  display: none;
}

.cookie-consent {
  position: fixed;
  right: 1rem;
  bottom: 1rem;
  z-index: 1055;
  max-width: 28rem;
}

.cookie-consent__card {
  background: #fff;
  border: 1px solid rgba(0, 0, 0, 0.08);
  border-radius: 1rem;
  padding: 1rem 1.1rem;
}

.cookie-consent__title {
  font-size: 1rem;
  font-weight: 700;
  margin-bottom: 0.5rem;
}

.cookie-consent__text {
  font-size: 0.95rem;
  color: #4b5563;
}

.site-footer__content {
  max-width: 920px;
}

.site-footer__text {
  color: #111;
  font-size: 1rem;
  line-height: 1.55;
  text-wrap: balance;
}

.site-footer__logos {
  width: 100%;
  max-width: 600px;
  height: auto;
  display: block;
  margin: 0 auto;
}
