@font-face {
  font-family: "Arsenal";
  src: url("../fonts/arsenal-regular.woff2") format("woff2");
  font-style: normal;
  font-weight: 400;
  font-display: swap;
}

@font-face {
  font-family: "Arsenal";
  src: url("../fonts/arsenal-bold.woff2") format("woff2");
  font-style: normal;
  font-weight: 700;
  font-display: swap;
}

:root {
  --spurs-navy: #101b44;
  --spurs-blue: #2e3a5d;
  --spurs-text: #000;
  --spurs-heading: #4d536c;
  --spurs-page: #f7f8fb;
  --spurs-line: #eee;
  --spurs-shadow: 0 10px 15px rgba(0, 0, 0, .03);
}

html { scroll-behavior: smooth; }

body.spursarmy-site {
  min-height: 100vh;
  margin: 0;
  overflow-x: hidden;
  color: var(--spurs-text);
  background: var(--spurs-page);
  font-family: "Arsenal", sans-serif;
  font-size: 14px;
  line-height: 1.42857143;
}

a { color: #000d45; text-decoration: none; }
a:hover, a:focus { color: #000d45; text-decoration: underline; }
img { max-width: 100%; height: auto; }
p:last-of-type { margin-bottom: 0; }
.skip-link { position: fixed; z-index: 1100; top: .5rem; left: .5rem; padding: .5rem 1rem; background: #fff; }

.site-header {
  color: #fff;
  background: linear-gradient(to bottom, #2e3a5d 10%, #172148 90%);
  background-color: #19264d;
}

.site-header .container,
.site-navigation .container,
.match-strip .container,
.site-main.container,
.site-footer .container {
  padding-right: 10px;
  padding-left: 10px;
}

/* Bootstrap 4 stopped at 1140px. Keep the original site geometry on 2K/4K
   displays instead of adopting Bootstrap 5's additional 1320px container. */
@media (min-width: 1400px) {
  .site-header .container,
  .site-navigation .container,
  .match-strip .container,
  .site-main.container,
  .site-footer .container { max-width: 1140px; }
}

.brand {
  display: inline-flex;
  align-items: center;
  color: #e6e6e6;
  text-decoration: none;
  text-shadow: 1px 1px 1px #000;
}

.brand:hover, .brand:focus { color: #e6e6e6; text-decoration: none; }
.brand-mark { flex: 0 0 auto; width: 34px; height: 59px; margin: 14px 25px 18px 15px; object-fit: contain; }
.brand-copy { display: flex; flex-direction: column; padding: 23px 0; }
.brand-name { font-size: 25px; font-weight: 700; line-height: 1; }
.brand-description { margin: 0; color: #fff; font-size: 16px; font-weight: 400; line-height: normal; }

.header-tools { padding-top: 18px; }
.spurs-search-form { display: flex; align-items: center; gap: 8px; width: 100%; }
.spurs-search-form label { position: absolute; width: 1px; height: 1px; padding: 0; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }
.spurs-search-form input[type="search"] {
  flex: 1 1 auto;
  min-width: 0;
  height: 28px;
  padding: 4px 10px;
  color: #555;
  background: #fff;
  border: 1px solid #e7e7e7;
  border-radius: 3px;
}
.spurs-search-form button {
  flex: 0 0 82px;
  height: 28px;
  padding: 4px 10px;
  color: #222;
  background: #f0f0f0;
  border: 0;
  border-radius: 3px;
  font-size: 14px;
  line-height: 21px;
  text-transform: none;
}
.login-launch {
  display: block;
  width: 100%;
  padding: 8px 0;
  color: #f1f1f1;
  background: transparent;
  border: 0;
  border-radius: 2px;
  font: inherit;
  font-size: 15px;
  text-align: center;
}
.login-launch:hover, .login-launch:focus { color: #fff; text-decoration: underline; }
.header-account, .header-account a { color: #f1f1f1; }
.spurs-account-links {
  display: grid;
  grid-template-columns: 5fr 3.5fr 3.5fr;
  width: 100%;
  color: #f1f1f1;
  font-size: 15px;
  line-height: 20px;
}
.spurs-account-link { min-width: 0; padding: 8px 0; text-align: center; }
.spurs-account-link a { color: #f1f1f1; text-decoration: none; }
.spurs-account-link a:hover, .spurs-account-link a:focus { color: #fff; text-decoration: underline; }
.spurs-account-logout form { margin: 0; }
.spurs-account-logout button {
  width: 100%;
  margin: 0;
  padding: 0;
  color: #f1f1f1;
  background: transparent;
  border: 0;
  border-radius: 0;
  font: inherit;
  line-height: inherit;
  text-transform: none;
}
.spurs-account-logout button:hover, .spurs-account-logout button:focus { color: #fff; text-decoration: underline; }
.pm_new {
  display: inline-block;
  width: 7px;
  height: 7px;
  margin-left: 3px;
  background: #ff851b;
  border-radius: 50%;
  vertical-align: middle;
}

.account-modal {
  padding-right: 15px !important;
  color: #000;
  text-shadow: none;
}
.account-modal .modal-content {
  color: #000;
  border: 1px solid rgba(0, 0, 0, .1);
  border-radius: .3rem;
}
.account-modal .modal-header {
  padding: 16px;
  border-color: #eee;
  border-radius: calc(.3rem - 1px) calc(.3rem - 1px) 0 0;
}
.account-modal .modal-title {
  color: #000;
  font-size: 17.5px !important;
  font-weight: 400;
  line-height: 26.25px;
}
.account-modal-close {
  margin: -16px -16px -16px auto;
  padding: 16px;
  color: #000;
  background: transparent;
  border: 0;
  font-size: 24px;
  font-weight: 700;
  line-height: 1;
  opacity: .4;
  text-shadow: 0 1px 0 #fff;
}
.account-modal-close:hover,
.account-modal-close:focus { color: #000; opacity: 1; }
.account-modal .modal-body { padding: 16px; }
.account-modal .jlslogin { margin-bottom: 15px; }
.account-modal .cbLoginForm {
  display: flex !important;
  flex-direction: column;
  width: 100%;
}
.account-modal .cbLoginForm .mod-login__userdata { display: contents !important; }
.account-modal .cbLoginForm .mod-login__userdata,
.account-modal .cbLoginForm .mod-login__options,
.account-modal .cbLoginForm .mod-login__username,
.account-modal .cbLoginForm .mod-login__password,
.account-modal .cbLoginForm .mod-login__remember,
.account-modal .cbLoginForm .mod-login__submit {
  width: 100%;
  margin-left: 0 !important;
}
.account-modal .cbLoginForm .mod-login__username {
  display: block !important;
  order: 1;
  margin-bottom: 16px !important;
}
.account-modal .cbLoginForm .mod-login__password {
  display: block !important;
  order: 2;
  margin-bottom: 16px !important;
}
.account-modal .cbLoginForm .mod-login__remember {
  display: block !important;
  order: 3;
  margin-bottom: 0 !important;
}
.account-modal .cbLoginForm .mod-login__options {
  display: block !important;
  order: 4;
  margin: 0 0 16px !important;
}
.account-modal .cbLoginForm .mod-login__submit {
  display: block !important;
  order: 5;
  margin: 0 !important;
}
.account-modal .cbLoginForm .input-group { display: block; width: 100%; }
.account-modal .cbLoginForm .form-control {
  display: block;
  width: 100% !important;
  height: 35px;
  min-height: 35px;
  margin: 0 !important;
  padding: 6px 10px;
  color: #555;
  background: #fff;
  border: 1px solid #e7e7e7;
  border-radius: 4px !important;
  box-shadow: inset 0 2px 0 rgba(0, 0, 0, .075);
  font-size: 14px;
  line-height: 20px;
}
.account-modal .cbLoginForm .form-control::placeholder { color: #999; opacity: 1; }
.account-modal .cbLoginForm .input-group-text,
.account-modal .cbLoginForm .input-password-toggle { display: none !important; }
.account-modal .cbLoginForm .form-check {
  min-height: 0;
  margin: 0;
  padding: 0;
}
.account-modal .cbLoginForm .form-check-label {
  display: inline-flex;
  flex-direction: row-reverse;
  align-items: center;
  justify-content: flex-end;
  gap: 4px;
  margin: 0 0 8px;
  color: #000;
  line-height: 20px;
}
.account-modal .cbLoginForm .form-check-input {
  position: static;
  float: none;
  width: 13px;
  height: 13px;
  margin: 0 !important;
  border-radius: 2px;
}
.account-modal .cbLoginForm .mod-login__options > div {
  display: block !important;
  margin-left: 0 !important;
  line-height: 20px;
}
.account-modal .cbLoginForm .mod-login__options a { color: #000d45; }
.account-modal .cbLoginForm .login-button {
  height: 34px;
  padding: 6px 12px;
  color: #fff;
  background: #158cba;
  border-color: #127ba3;
  border-style: solid;
  border-width: 0 1px 4px;
  border-radius: 4px;
  font-size: 12px;
  font-weight: 700;
  line-height: 18px;
  text-transform: uppercase;
}
.account-modal .cbLoginForm .login-button:hover,
.account-modal .cbLoginForm .login-button:focus { color: #fff; background: #117a9f; border-color: #0e6685; }

.site-navigation {
  min-height: 60px;
  margin-bottom: 20px;
  padding: 0;
  background: #fff;
  border: 0;
  box-shadow: var(--spurs-shadow);
}
.site-navigation .container { min-height: 60px; }
.site-navigation .navbar-collapse { align-self: stretch; }
.site-navigation .mod-menu { display: flex; flex-wrap: wrap; align-items: center; gap: 0; min-height: 60px; margin: 0; padding: 0; list-style: none; }
.site-navigation .mod-menu > li { position: relative; display: flex; align-items: center; }
.site-navigation .mod-menu > li > a,
.site-navigation .mod-menu > li > span {
  display: block;
  padding: 7px 12px;
  color: #000d45;
  font-size: 16px;
  font-weight: 400;
  text-decoration: none;
}
.site-navigation .mod-menu > li.active > a { color: #000d45; background: transparent; }
.site-navigation .mod-menu > li > a:hover,
.site-navigation .mod-menu > li > a:focus { color: #000d45; background: transparent; text-decoration: underline; }
.site-navigation .mod-menu ul {
  position: absolute;
  z-index: 1000;
  top: calc(100% + 10px);
  left: 0;
  display: none;
  min-width: 14rem;
  margin: 0;
  padding: 0;
  list-style: none;
  background: #fff;
  border: 1px solid #e7e7e7;
  border-top: 0;
  box-shadow: var(--spurs-shadow);
}
.site-navigation .mod-menu li.is-open > ul { display: block; }
.site-navigation .mod-menu ul a { display: block; padding: 7px 20px; color: #000d45; border-top: 1px solid #eee; font-size: 15px; text-decoration: none; }
.site-navigation .mod-menu ul a:hover,
.site-navigation .mod-menu ul a:focus { color: #000d45; background: transparent; text-decoration: underline; }
.navbar-toggler {
  margin: 10px;
  border-color: rgba(0, 0, 0, .1);
  border-radius: 4px;
  font-size: 17.5px;
  line-height: 17.5px;
}
.match-toggle { padding: 15px; color: #000d45; background: transparent; border: 0; font-size: 18px; }
.mobile-search { width: calc(100% - 2rem); margin: 1rem; }
.mobile-search .spurs-search-form input[type="search"] { width: 100%; }

.match-strip { background: var(--spurs-page); }
.match-panels-row,
.spurs-main-row,
.spurs-news-grid { --bs-gutter-x: 20px; }
.match-panels-row { margin-bottom: 0; }
.spurs-card {
  width: 100%;
  margin-bottom: 20px;
  overflow: hidden;
  background: #fff;
  border: 0;
  border-radius: 0;
  box-shadow: var(--spurs-shadow);
}
.spurs-card__title {
  margin: 0;
  padding: 8px 15px;
  color: #fff;
  background: linear-gradient(to bottom, #2e3a5d 10%, #101b44 90%);
  background-color: #19264d;
  font-size: 15px;
  font-weight: 400;
  line-height: 22px;
}
.spurs-card__body { padding: 15px; }
.match-strip .spurs-card__body { padding: 15px 5px; }
.match-strip .spurs-card { flex: 1 1 auto !important; width: 100%; height: 199px; min-height: 199px; }
.match-strip table { margin: 0; }
.spurs-pad-card .spurs-card__body { padding: 3px; }

.site-main { padding-top: 0; padding-bottom: 0; }
.content-surface { padding: 0; background: transparent; border: 0; box-shadow: none; }
.content-surface:empty { display: none; }

.spurs-news-card {
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  width: 100%;
  margin-bottom: 20px;
  overflow: hidden;
  background: #fff;
  border: 0;
  border-radius: 0;
  box-shadow: var(--spurs-shadow);
}
.spurs-news-image { width: 100%; overflow: hidden; }
.spurs-news-image > a { display: block; }
.spurs-news-image img { display: block; width: 100%; height: auto; }
.articlesinfo {
  position: absolute;
  bottom: 0;
  left: 0;
  display: flex;
  align-items: center;
  width: 100%;
  padding: 7px 0 7px 30px;
  color: #fff;
  background: rgba(0, 0, 0, .5);
  text-shadow: 1px 1px 1px #000;
}
.articlesinfo time { display: inline-block; margin-right: 8px; white-space: nowrap; }
.articlesinfo a { color: #fff; white-space: nowrap; }
.articlesinfo--inline { position: static; margin: -25px -30px 20px; width: auto; background: #2e3a5d; }
.editarticle { position: absolute; top: 0; right: 0; width: 50%; padding: 7px 12px 7px 0; text-align: right; opacity: .9; font-size: 13px; }
.editarticle:hover { opacity: 1; }
.editarticle a { color: #fff; text-shadow: 1px 1px 1px #000; }
.editarticle [role="tooltip"] { display: none !important; }
.spurs-news-copy { display: grid; flex: 1 1 auto; padding: 25px 30px; color: #757575; }
.spurs-news-card > .system-unpublished { display: flex; flex: 1 1 auto; flex-direction: column; width: 100%; }
.spurs-news-title { align-self: center; padding-bottom: 4px; }
.spurs-news-title h2 { margin: 0; font-size: 15px; font-weight: 700; line-height: 1.42857143; }
.spurs-news-title h2 a { color: var(--spurs-heading); }
.spurs-news-intro { align-self: center; padding-top: 4px; }
.spurs-news-copy > .badge.bg-warning,
.spurs-article__header .badge.bg-warning,
.spurs-article__title .badge.bg-warning {
  justify-self: start;
  padding: .25em .4em;
  color: #fff !important;
  background: #ff851b !important;
  border-radius: .25rem;
  font-size: 75%;
  font-weight: 700;
  line-height: 1;
  vertical-align: baseline;
}

.spurs-article {
  position: relative;
  margin-bottom: 20px;
  overflow: hidden;
  background: #fff;
  border: 0;
  border-radius: 0;
  box-shadow: var(--spurs-shadow);
}
.spurs-article__image img { display: block; width: 100%; height: auto; }
.spurs-article__meta {
  position: absolute;
  bottom: 0;
  left: 0;
  display: flex;
  align-items: center;
  width: 100%;
  padding: 10px 27px;
  color: #fff;
  background: rgba(0, 0, 0, .55);
  text-shadow: 1px 1px 1px #000;
}
.spurs-article__meta > * { display: inline-block; margin-right: 10px; }
.spurs-article__meta a,
.spurs-article__meta a:hover,
.spurs-article__meta a:focus { color: #fff; }
.spurs-article__meta--plain { position: static; color: #555; background: #f8f8f8; border-bottom: 1px solid #eee; text-shadow: none; }
.spurs-article__header { color: #fff; background: linear-gradient(to bottom, #2e3a5d 10%, #101b44 90%); }
.spurs-article__header h1 { margin: 0; padding: 11px 15px; color: #fff; font-size: 15px; font-weight: 400; }
.spurs-article__body { padding: 23px; }
.spurs-article__title { padding-bottom: 4px; }
.spurs-article__title h1 { margin: 0; padding-bottom: 10px; color: var(--spurs-heading); font-size: 17px; font-weight: 700; line-height: 1.42857143; }
.spurs-article__text { color: #000; }
.spurs-article__text h2 { margin: 0; font-size: 28px; line-height: 1.2; }
.spurs-article__text blockquote { margin: 0 0 20px; padding: 10px 20px; }
.spurs-tags { margin: 10px 0 15px; }
.spurs-tags span { display: inline-block; margin-left: 8px; }
.spurs-article-navigation { display: flex; align-items: center; margin: 1rem 0; }
.spurs-article-navigation .next { margin-left: auto; }
.spurs-article-navigation .btn {
  padding: 6px 12px;
  color: #222;
  background: #f0f0f0;
  border: 1px solid #e2e2e2;
  border-radius: 4px;
  box-shadow: 0 2px 0 rgba(0, 0, 0, .08);
  font-size: 12px;
  font-weight: 700;
  line-height: 20px;
  text-transform: uppercase;
}
.spurs-article-navigation .btn:hover,
.spurs-article-navigation .btn:focus { color: #222; background: #e6e6e6; border-color: #d5d5d5; }
.spurs-article > #jlexcomment { width: auto; margin: 0 15px 15px; }
.spurs-article:has(> #jlexcomment) .spurs-article__body { padding-bottom: 8px; }

/* Component pages and embedded match reviews were styled by the Joomla 3
   template. These rules reproduce that shared surface on Bootstrap 5. */
.site-main .card {
  margin-bottom: 20px;
  border: 0;
  border-radius: 0;
  box-shadow: var(--spurs-shadow);
}
.site-main .card-header {
  padding: 8px 15px;
  color: #fff;
  background: linear-gradient(to bottom, #2e3a5d 10%, #101b44 90%);
  background-color: #19264d;
  border: 0;
  border-radius: 0;
  font-size: 15px;
}
.site-main .card-header h1,
.site-main .card-header h2,
.site-main .card-header h3 { margin: 0; color: #fff; font-size: 15px; line-height: 22px; }
.site-main .card-body { padding: 15px; }
.site-main .table { margin-bottom: 1rem; color: #000; background: #fff; }
.site-main .table > :not(caption) > * > * {
  padding: 8px 4px;
  color: #000;
  background-color: transparent;
  border-color: #eee;
  box-shadow: none;
}
.site-main .table-bordered > :not(caption) > * { border-width: 1px 0; }
.site-main .table-bordered > :not(caption) > * > * { border-width: 0 1px; }
.site-main .table.category.table-bordered > :not(caption) > * { border-width: 0; }
.site-main .table.category.table-bordered > :not(caption) > * > * { border-width: 1px; }
.site-main table.category.table-bordered { border: 1px solid #dee2e6; }
.site-main .table.category > :not(caption) > * > * { color: #222; }
.site-main .table.category.table-bordered > thead > tr > * { border-bottom-width: 2px; }
.site-main .table-striped > tbody > tr:nth-of-type(odd) > * { background-color: #f9f9f9; }
.site-main .table-hover > tbody > tr:hover > * { background-color: #f0f0f0; }
.gradient {
  padding: 6px 0;
  color: #fff !important;
  background: linear-gradient(to bottom, #2e3a5d 10%, #101b44 90%) !important;
  background-color: #19264d !important;
  font-size: 15px;
}
.gradient > * { color: inherit !important; background-color: transparent !important; }
.gradient .form-control {
  border: 0 !important;
  color: #fff;
  background: linear-gradient(to bottom, #4f5973 10%, #414a6b 90%);
  background-color: #414a6b;
}
.gradient .form-select {
  border: 0 !important;
  color: #fff;
  background: linear-gradient(to bottom, #4f5973 10%, #414a6b 90%) !important;
  background-color: #414a6b !important;
  background-repeat: repeat !important;
  background-position: 0 0 !important;
  background-size: auto !important;
  padding-right: 8px;
}
.gradient select.form-control,
.gradient select.form-select {
  display: inline-block;
  width: auto;
  appearance: auto;
}
.matchmenu.nav-tabs { border-bottom: 0; }
.site-main .matchmenu.nav-tabs .nav-link {
  margin: 6px 0 0;
  padding: .5rem 1rem;
  color: #222;
  border: 1px solid #f0f0f0;
  border-radius: 0;
  background: #f9f9f9;
}
.site-main .matchmenu.nav-tabs .nav-link:not(.disabled):hover,
.site-main .matchmenu.nav-tabs .nav-link:not(.disabled):focus,
.site-main .matchmenu.nav-tabs .nav-link.active {
  margin: 6px 0 0;
  padding: .5rem 1rem;
  color: #fff;
  background: linear-gradient(to bottom, #2e3a5d 10%, #101b44 90%);
  background-color: #19264d;
  border: 1px solid #eee;
}
.spurs-article__text .row { --bs-gutter-x: 20px; }
.spurs-article__text #squads .table-responsive { margin-bottom: 1rem; }
.spurs-article__text #squads .table { margin-bottom: 0; }
.progress-title { width: 100%; padding: 8px 0 4px; text-align: center; }
.spurs-article__text .progress {
  display: inline-block;
  width: 50%;
  height: 32px;
  margin: 0;
  overflow: visible;
  background: #f9f9f9;
  border: 1px solid #e7e7e7;
  border-radius: 0;
  box-shadow: none;
}
.spurs-article__text .progress-bar {
  display: block;
  min-width: fit-content;
  height: 30px;
  padding: 5px 8px;
  color: #fff;
  background: linear-gradient(to bottom, #3d4b73 10%, #18265b 100%);
  font-size: 14px;
  font-weight: 700;
}
.squad,
.squadiv {
  margin-top: 10px;
  margin-bottom: 9px;
  padding: 6px;
  color: #fff;
  background: linear-gradient(to bottom, #2e3a5d 10%, #101b44 90%);
  background-color: #19264d;
  font-size: 15px;
  text-align: center !important;
}
.squadiv1 { position: relative; display: inline-block; width: 110px; margin: 0 3px 8px; overflow: hidden; }
.squadiv2 { background: linear-gradient(to bottom, #fff 10%, #e3e3e8 90%); background-color: #ededed; }
th { font-weight: 400; }
th[data-type] { color: #000d45 !important; cursor: pointer; }
th.ascending::after,
th.descending::after {
  position: relative;
  bottom: 1px;
  padding-left: 3px;
  color: #5f70a0;
  font-size: .8em;
}
th.ascending::after { content: "\25b2"; }
th.descending::after { content: "\25bc"; }
.squadiv8 { overflow: hidden; line-height: 28px; text-align: center; text-overflow: ellipsis; white-space: nowrap; }
.squadiv1 .number,
.statistics-player-profile .number {
  position: absolute;
  top: 5px;
  right: 5px;
  width: 25px;
  color: #fff;
  background: linear-gradient(to bottom, #2e3a5d 10%, #101b44 90%);
  background-color: #19264d;
  border-radius: 50%;
  font-size: 14px;
  font-weight: 700;
  line-height: 25px;
  text-align: center;
}

/* Read-only JLex history bridge. The legacy executable remains disabled. */
.spurs-comments { padding: 0 23px 23px; background: #fff; }
.spurs-comments__header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 14px 0 9px;
  color: #7f919e;
  border-bottom: 1px solid #eee;
  font-weight: 700;
}
.spurs-comments__notice { display: flex; align-items: center; gap: 12px; padding: 18px 0; color: #8a8a8a; }
.spurs-comments__guest-avatar,
.spurs-comment__avatar {
  flex: 0 0 auto;
  width: 42px;
  height: 42px;
  object-fit: cover;
  border-radius: 50%;
  background: #ddd;
}
.spurs-comments__guest-avatar { position: relative; }
.spurs-comments__guest-avatar::before {
  position: absolute;
  top: 9px;
  left: 13px;
  width: 16px;
  height: 16px;
  content: "";
  background: #fff;
  border-radius: 50%;
}
.spurs-comments__guest-avatar::after {
  position: absolute;
  right: 7px;
  bottom: 5px;
  left: 7px;
  height: 15px;
  content: "";
  background: #fff;
  border-radius: 20px 20px 8px 8px;
}
.spurs-comments__readonly { margin-left: auto; font-weight: 400; }
.spurs-comments__list { margin: 0; padding: 0; list-style: none; }
.spurs-comment { display: flex; gap: 14px; padding: 12px 0; border-top: 1px solid #eee; }
.spurs-comment:first-child { border-top: 0; }
.spurs-comment__body { flex: 1 1 auto; min-width: 0; }
.spurs-comment__meta { margin-bottom: 5px; color: #777; }
.spurs-comment__author { color: #000d45; font-weight: 700; }
.spurs-comment__date::before { padding: 0 8px; color: #bbb; content: "\2022"; }
.spurs-comment__text { overflow-wrap: anywhere; }
.spurs-comments__pager { display: flex; justify-content: space-between; padding-top: 15px; }
.spurs-comments-archive .jcm-root > .jcm-block > .hovercard img,
.spurs-comments-archive .jcm-form-cp .hovercard img { width: 46px; height: 46px; object-fit: cover; }

/* Bootstrap 4 compatibility aliases still present in saved module content. */
.ml-auto { margin-left: auto !important; }
.mr-2 { margin-right: .5rem !important; }
.pr-2 { padding-right: .5rem !important; }
.pl-2 { padding-left: .5rem !important; }
.text-left { text-align: left !important; }
.text-right { text-align: right !important; }
.font-weight-bold { font-weight: 700 !important; }
.form-inline { display: flex; flex-flow: row wrap; align-items: center; }
.form-inline .form-control { display: inline-block; width: auto; vertical-align: middle; }

/* CB Private Messages still emits Bootstrap 4 utility and component classes.
   Keep the rules scoped so its inbox, message and compose views retain the
   Joomla 3 geometry while the rest of the template stays on Bootstrap 5. */
.cbPMS .media { display: flex; align-items: flex-start; }
.cbPMS .media-body { flex: 1 1 auto; min-width: 0; }
.cbPMS .row.no-gutters {
  --bs-gutter-x: 0;
  margin-right: 0;
  margin-left: 0;
}
.cbPMS .row.no-gutters > .col,
.cbPMS .row.no-gutters > [class*="col-"] { padding-right: 0; padding-left: 0; }
.cbPMS .cb-page-header-title { font-size: 24.5px; line-height: 29.4px; }
.cbPMS .pmButton {
  padding: 6px 12px;
  border-style: solid;
  border-width: 0 1px 4px;
  border-radius: 4px;
  font-size: 12px;
  font-weight: 700;
  line-height: 18px;
  text-transform: uppercase;
}
.cbPMS .btn-success { background-color: #28b62c; border-color: #23a127; }
.cbPMS .btn-primary { background-color: #158cba; border-color: #127ba3; }
.cbPMS .btn-secondary { color: #222; background-color: #f0f0f0; border-color: #e3e3e3; }
.cbPMS .select2-container.pmSearchType {
  height: 35px !important;
  padding: 6px 28px 6px 12px;
  color: #555;
  background: #fff;
  border: 1px solid #ced4da;
  border-radius: 4px;
  box-shadow: inset 0 2px 0 rgba(0, 0, 0, .075);
  font-size: 14px;
  line-height: 21px;
  text-align: left;
}
.cbPMS .select2-container.pmSearchType .select2-selection {
  color: #555;
  font-size: 14px;
  line-height: 21px;
  text-align: left;
}
.cbPMS .pmMessageEditTo {
  width: 20em;
  height: 35px;
  padding: 6px 10px;
  color: #555;
  background: #fff;
  border: 1px solid #e7e7e7;
  border-radius: 4px;
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075);
  font-size: 14px;
  line-height: 20px;
}
.cbPMS .col-form-label { padding-top: 7px; padding-bottom: 7px; line-height: 20px; }
.cbPMS .wf-editor-container { height: 502px; margin-bottom: 0 !important; }
.cbPMS .editor-xtd-buttons { display: flex; gap: 2px; }
.cbPMS .editor-xtd-buttons .xtd-button {
  padding: 6px 12px;
  color: #fff;
  background-color: #158cba;
  border-color: #127ba3;
  border-style: solid;
  border-width: 0 1px 4px;
  border-radius: 4px;
  font-size: 12px;
  font-weight: 700;
  line-height: 18px;
  text-transform: uppercase;
}
.cbPMS .editor-xtd-buttons .xtd-button:has(.icon-chart) { order: -1; }
.cbPMS .editor-xtd-buttons [data-joomla-editor-button-action="insert-readmore"]::after { content: "..."; }
.cbPMS .input-group-append { display: flex; }
.cbPMS .badge-secondary { color: #222; background-color: #f0f0f0; }
.cbPMS .border-left { border-left: 1px solid #dee2e6 !important; }
.cbPMS .ml-1 { margin-left: .25rem !important; }
.cbPMS .ml-2 { margin-left: .5rem !important; }
.cbPMS .ml-n1 { margin-left: -.25rem !important; }
.cbPMS .mr-n2 { margin-right: -.5rem !important; }
.cbPMS .pl-1 { padding-left: .25rem !important; }
.cbPMS .pl-2 { padding-left: .5rem !important; }
.cbPMS .pl-3 { padding-left: 1rem !important; }
.cbPMS .pr-1 { padding-right: .25rem !important; }
.cbPMS .pr-2 { padding-right: .5rem !important; }
.cbPMS .pr-3 { padding-right: 1rem !important; }

@media (min-width: 576px) {
  .cbPMS .text-sm-left { text-align: left !important; }
  .cbPMS .text-sm-right { text-align: right !important; }
  .cbPMS .pr-sm-2 { padding-right: .5rem !important; }
  .cbPMS .select2-container.pmSearchType,
  .cbPMS .select2-container.pmSearchType .select2-selection { text-align: right; }
}

@media (max-width: 575.98px) {
  .site-main .cbPMS.card-body { padding: 18px; }
  .cbPMS .btn-sm-block { display: block; width: 100%; }
}

.com-content-category__articles {
  margin-bottom: 20px;
  padding: 15px;
  background: #fff;
  border: 0;
  box-shadow: var(--spurs-shadow);
}
.com-content-category__table.table { margin-bottom: 1rem; border: 0; }
.com-content-category__table.table > :not(caption) > * > * {
  padding: 8px 4px;
  color: #000;
  background: #fff;
  border-width: 1px 0 0;
  border-color: #eee;
  box-shadow: none;
}
.com-content-category__table.table thead > tr > * {
  border-top: 1px solid #eee;
  border-bottom: 2px solid #dee2e6;
  font-weight: 400;
}
.com-content-category__table.table > tbody > tr > * { background: #fff !important; }
.com-content-category__table .list-title { font-weight: 400; }
.com-content-category__table .list-date { font-size: 14px !important; }
.com-content-category__table td.list-date { white-space: nowrap; }
.com-content-category__navigation { padding-top: 0 !important; }
.com-content-category__counter { float: none !important; margin: 0 0 .5rem !important; padding: 0 !important; }
.com-content-category__pagination { clear: both; overflow-x: auto; }
.com-content-category__pagination .pagination { flex-wrap: nowrap; }
.com-content-category__pagination .page-link { padding: 8px 12px; font-size: 12px; line-height: 17px; }
.com-content-category__pagination .icon-angle-double-left::before { content: "\00ab"; }
.com-content-category__pagination .icon-angle-left::before { content: "\2039"; }
.com-content-category__pagination .icon-angle-right::before { content: "\203a"; }
.com-content-category__pagination .icon-angle-double-right::before { content: "\00bb"; }

.content-surface:has(> .com-tags) {
  padding: 16px 15px 15px;
  background: #fff;
  box-shadow: var(--spurs-shadow);
}
.com-tags > .page_title h1 {
  margin: 0;
  color: var(--spurs-heading);
  font-size: 20px;
  font-weight: 700;
  line-height: 1.42857;
}
.com-tags__items form { height: 66px; }
.com-tags .com-tags-tags__filter {
  float: right;
  width: 312.8125px;
  height: 35px;
  margin-top: 15px;
  margin-bottom: 16px;
}
.com-tags .com-tags-tags__filter .inputbox {
  width: 154px;
  height: 35px;
  margin-right: 8px;
  padding: 6px 10px;
  font-size: 14px;
  line-height: 20px;
  border: 1px solid #ced4da;
  border-radius: 4px;
}
.com-tags .com-tags-tags__filter .btn {
  height: 35px;
  padding: 6px 12px;
  font-size: 12px;
  font-weight: 700;
  line-height: 18px;
  text-transform: uppercase;
}
.com-tags .com-tags__category { margin: 0; border-radius: 0; }
.com-tags .com-tags__category .list-group-item {
  padding: 10px 2px;
  background: #fff;
  border-width: 1px 0 0;
  border-color: #eee;
  border-radius: 0;
}
.com-tags .com-tags__category .list-group-item + .list-group-item { border-top: 0; }
.com-tags .com-tags__category h3 {
  margin: 0;
  padding-bottom: 4px;
  font-size: 15px;
  font-weight: 700;
  line-height: 1.42857;
}
.com-tags .com-tags__pagination .counter {
  float: none !important;
  margin: 0 0 .5rem !important;
  padding: 0 !important;
}
.com-tags .com-tags__pagination nav { display: none; }

/* Single tag view: preserve the Joomla 3 news-card presentation. */
.com-tags-tag > .spurs-tag-heading {
  margin: 0 0 16px;
  color: var(--spurs-heading);
  font-size: 20px;
  font-weight: 700;
  line-height: 1.42857143;
}
.spurs-tag-items > form { min-height: 66px; }
.spurs-tag-filter-row {
  display: flex;
  align-items: flex-start;
  justify-content: flex-end;
  gap: 8px;
  width: 100%;
  padding-top: 15px;
}
.spurs-tag-filter { display: flex; align-items: stretch; gap: 8px; }
.spurs-tag-filter .form-control {
  width: 154px;
  height: 35px;
  padding: 6px 10px;
  font-size: 14px;
  line-height: 20px;
}
.spurs-tag-filter .btn {
  height: 35px;
  padding: 6px 12px;
  font-size: 12px;
  font-weight: 700;
  line-height: 18px;
  text-transform: uppercase;
}
.spurs-tag-limit .form-select { height: 35px; }
.spurs-tag-grid { --bs-gutter-x: 20px; }
.spurs-tag-card {
  width: 100%;
  margin-bottom: 20px;
  overflow: hidden;
  background: #fff;
  box-shadow: var(--spurs-shadow);
}
.spurs-tag-image {
  position: relative;
  width: 100%;
  aspect-ratio: 2.43 / 1;
  overflow: hidden;
  background: #eef0f5;
}
.spurs-tag-image > a { display: block; width: 100%; height: 100%; }
.spurs-tag-image img { display: block; width: 100%; height: 100%; object-fit: cover; }
.spurs-tag-image time {
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  padding: 7px 30px;
  color: #fff;
  background: rgba(0, 0, 0, .65);
  font-size: 14px;
  line-height: 21px;
}
.spurs-tag-copy { padding: 25px 30px; }
.spurs-tag-title {
  margin: 0 0 15px;
  color: var(--spurs-heading);
  font-size: 15px;
  font-weight: 700;
  line-height: 1.42857143;
}
.spurs-tag-title a { color: var(--spurs-heading); }
.spurs-tag-excerpt { color: #757575; font-size: 14px; line-height: 20px; }
.com-tags-tag__pagination { clear: both; }

/* Match the original two-column Community Builder profile layout. */
.cbProfile .cbPosTop > .cbPosLeft,
.cbProfile .cbPosTop > .cbPosRight {
  flex: 0 0 50%;
  width: 50%;
  max-width: 50%;
  min-width: 0;
}
.cbProfile .cb_form_line > .col-form-label,
.cbProfile .cb_form_line > [class*="col-"] { overflow-wrap: normal; word-break: normal; }
.cbProfile .cbImgAvatar { display: block; max-width: 100%; margin-right: auto; margin-left: auto; }

/* Joomla 5 contact markup styled like the original Joomla 3 card. */
.com-contact.contact {
  margin-bottom: 20px;
  background: #fff;
  box-shadow: var(--spurs-shadow);
}
.com-contact.contact > h2 {
  margin: 0;
  padding: 8px 15px;
  color: #fff;
  background: linear-gradient(to bottom, #2e3a5d 10%, #101b44 90%);
  background-color: #19264d;
  font-size: 15px;
  font-weight: 400;
  line-height: 22px;
}
.com-contact.contact > .contact-form { padding: 15px; }
.com-contact.contact .control-group { padding-bottom: 10px; }
.com-contact.contact .control-label { min-height: 20px; }

.site-main h1,
.site-main .page-header h2 { color: var(--spurs-heading); }
.site-main .spurs-article__header h1 { color: #fff; }
.site-main .content-category > h1 {
  margin: 0 0 16px;
  color: var(--spurs-heading);
  font-size: 20px;
  font-weight: 700;
  line-height: 1.42857143;
}
.cbRegistrationHeaderInner {
  --bs-gutter-x: 0;
  margin-right: 0;
  margin-left: 0;
}
.cbRegistrationHeader .cbCanvasLayoutInfo { position: relative; }
.cbRegistrationHeader .cbRegistrationTitle {
  margin: 0;
  font-size: 24.5px;
  line-height: 1.2;
}
.site-main table { width: 100%; }
.site-main .table-responsive { overflow-x: auto; }
.pagination { flex-wrap: wrap; }

.comments-latest img { width: 30px; height: 30px; margin: 3px 8px 0 0; object-fit: cover; object-position: 50% 50%; border-radius: 50%; opacity: .8; }
.comments-latest img:hover { opacity: 1; }
.comments-latest .list-group-item { padding: 10px 2px; background: transparent; border-width: 1px 0 0; border-color: #eee; }
.comments-latest .list-group-item:first-child { border-top: 0; }
.comments-latest .author, .comments-latest .date { display: block; color: #757575; }

.jllikeproSharesContayner .event-container > div { padding: 15px 10px 0 0 !important; }
.jllikeproSharesContayner a { margin-right: 6px !important; margin-left: 0 !important; }

.championsleague, .facebook, .levy, .logotip, .premierleague, .sports, .twitter, .vk {
  display: inline-block;
  overflow: hidden;
  background-image: url("../images/sprites.png");
  background-repeat: no-repeat;
}
.championsleague { float: left; width: 40px; height: 40px; margin-left: 30px; background-position: 24.2718% 43.6893%; background-size: 512%; }
.premierleague { float: left; width: 40px; height: 40px; margin-left: 30px; background-position: 0 43.6893%; background-size: 512%; }
.facebook { width: 31px; height: 31px; margin-bottom: 5px; background-position: 48.7864% 0; background-size: 512%; }
.sports { width: 31px; height: 31px; margin-bottom: 5px; background-position: 24.5146% 0; background-size: 512%; }
.twitter { width: 31px; height: 31px; margin-bottom: 5px; background-position: 73.0583% 0; background-size: 512%; }
.vk { width: 31px; height: 31px; margin-bottom: 5px; background-position: 97.3301% 0; background-size: 512%; }

.btn-primary { --bs-btn-bg: #101b44; --bs-btn-border-color: #101b44; --bs-btn-hover-bg: #2e3a5d; --bs-btn-hover-border-color: #2e3a5d; }
.form-control:focus, .form-select:focus { border-color: #6687c0; box-shadow: 0 0 0 .2rem rgba(39, 87, 165, .2); }

.site-footer {
  min-height: 57px;
  padding: 20px 15px 6px;
  color: #000;
  background: #fff;
  box-shadow: var(--spurs-shadow);
  text-align: center;
}
.site-footer .container { padding-top: 0 !important; padding-bottom: 0 !important; }
.site-footer a { color: #000d45; }
.site-footer .custom > .row {
  --bs-gutter-x: 0;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  margin-right: -10px;
  margin-left: -10px;
}
.site-footer .custom > .row > div { width: auto; }
.site-footer .custom > .row .vk,
.site-footer .custom > .row .twitter,
.site-footer .custom > .row .facebook,
.site-footer .custom > .row .sports { display: block; }
.site-footer .custom > .row img { vertical-align: baseline; }
.offline-panel { max-width: 42rem; }
.error-page {
  display: grid;
  min-height: 100vh;
  padding: 24px;
  place-items: center;
}
.error-page main {
  width: min(100%, 720px);
  box-sizing: border-box;
  margin: auto;
  padding: 48px 24px;
  text-align: center;
}
.error-page h1 { margin: 16px 0 24px; color: var(--spurs-heading); }
.error-page .btn {
  display: inline-block;
  padding: 8px 14px;
  color: #fff;
  background: #101b44;
  border: 1px solid #101b44;
  border-radius: 4px;
  font-weight: 700;
}
.error-page .btn:hover,
.error-page .btn:focus { color: #fff; background: #2e3a5d; text-decoration: none; }
.error-code { margin: 0; color: #101b44; font-size: clamp(5rem, 20vw, 10rem); font-weight: 700; line-height: 1; }

@media (max-width: 991.98px) {
  .cbProfile .cbPosTop > .cbPosLeft,
  .cbProfile .cbPosTop > .cbPosRight {
    flex: 0 0 100%;
    width: 100%;
    max-width: 100%;
    padding-right: 0 !important;
    padding-left: 0 !important;
  }
  .cbProfile .cbPosTop > .cbPosLeft { margin-bottom: 20px; }
  .spurs-category-list { padding-top: 2px; }
  .com-content-category__table #categorylist_header_date { width: 108px; }
  .com-content-category__table #categorylist_header_date > a { display: inline-block; max-width: 90px; }
  .site-navigation .navbar-collapse { width: 100%; }
  .site-navigation .mod-menu { display: block; width: 100%; min-height: 0; padding: .5rem 0; }
  .site-navigation .mod-menu > li { display: block; }
  .site-navigation .mod-menu > li > a,
  .site-navigation .mod-menu > li > span { padding: 7px 12px; }
  .site-navigation .mod-menu ul { position: static; padding-left: 1rem; border: 0; box-shadow: none; }
  .match-strip .spurs-card { height: auto; min-height: 0; }
}

@media (max-width: 767.98px) {
  .site-header { padding-top: 11px; }
  .brand-mark { display: none; }
  .brand-copy { padding: 0 20px; }
  .brand-name { font-size: 21px; }
  .brand-description { font-size: 16px; }
  .header-tools { width: 100%; margin-top: 12px; padding: 0; background: rgba(255, 255, 255, .1); }
  .login-launch { padding: 13px 0; }
}

@media (max-width: 575.98px) {
  /* Bootstrap rows normally rely on a padded container. These two extension
     layouts sit directly in the full-width mobile content surface, so their
     negative gutters must be neutralised to avoid a 12 px horizontal scroll. */
  .mlp-navigation .row,
  .cb_template .row.no-gutters {
    margin-right: 0 !important;
    margin-left: 0 !important;
  }
  .content-surface:has(> .com-tags) { margin-top: 0; padding: 2.25px 0 18px; }
  .com-tags > .page_title { margin: 16px 0 0 16px; }
  .com-tags > .page_title h1 { padding: 0 10px 10px; }
  .com-tags__items { padding: 0 18px; }
  .com-tags__items form { height: 69px; }
  .com-tags .com-tags-tags__filter { margin-top: 18px; }
  .com-tags-tag > .spurs-tag-heading { margin: 16px 18px 0; }
  .spurs-tag-items { padding: 0 18px; }
  .spurs-tag-items > form { min-height: 76px; }
  .spurs-tag-filter-row { justify-content: flex-start; padding-top: 18px; }
  .spurs-tag-filter { width: 100%; flex-wrap: wrap; }
  .spurs-tag-filter .form-control { flex: 1 1 140px; width: auto; }
  .spurs-tag-grid { --bs-gutter-x: 0; }
  .spurs-tag-copy { padding: 25px; }
  .spurs-tag-image time { padding-right: 25px; padding-left: 25px; }
  .site-header .container,
  .site-navigation .container,
  .match-strip .container,
  .site-main.container { padding-right: 0; padding-left: 0; }
  .match-panels-row,
  .spurs-main-row,
  .spurs-news-grid { --bs-gutter-x: 0; margin-right: 0; margin-left: 0; }
  .spurs-card__body { padding: 18px; }
  .match-strip .spurs-card__body { padding: 15px 5px; }
  .spurs-news-copy { padding: 25px; }
  .spurs-article__body { padding: 18px; }
  .spurs-comments { padding: 0 18px 18px; }
  .spurs-article__meta { padding-right: 18px; padding-left: 18px; }
  .com-content-category__articles { padding: 18px; }
  .com-content-category__table #categorylist_header_date { width: auto; }
  .com-content-category__table #categorylist_header_date > a { max-width: none; }
  .com-content-category__table .list-date { font-size: 11.2px !important; }
  .com-content-category__table td.list-date { white-space: normal; }
  .articlesinfo { padding-left: 25px; }
  .articlesinfo--inline { margin: -25px -25px 20px; }
}
