/* ===== LOAD FONT ===== */
@import url('https://fonts.googleapis.com/css2?family=Oswald:wght@500;600;700&display=swap');

/* ===== SITE BACKGROUND ===== */
body,
.site {
  background-color: #0a1a1e !important;
  color: #e8e8e8 !important;
}

/* ===== HEADER ===== */
header.wp-block-template-part,
header.wp-block-template-part .wp-block-group.alignfull,
header.wp-block-template-part .wp-block-group.alignwide {
  background-color: #02454f !important;
  margin: 0 !important;
  border: none !important;
}

header.wp-block-template-part {
  border-bottom: 3px solid #f9c806 !important;
  padding: 0 !important;
  box-shadow: 0 4px 24px rgba(249,200,6,0.10) !important;
}

header.wp-block-template-part .wp-block-group.alignwide {
  padding-top: 14px !important;
  padding-bottom: 4px !important;
}

/* Kill spacer gap in header */
header.wp-block-template-part .wp-block-spacer,
header .wp-block-spacer {
  display: none !important;
  height: 0 !important;
  min-height: 0 !important;
  max-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* Kill all separators */
hr,
hr.wp-block-separator,
.wp-block-separator,
.separator,
.is-style-wide,
.is-style-default,
[class*="separator"],
header.wp-block-template-part hr,
.wp-site-blocks > hr,
.wp-site-blocks > .wp-block-separator {
  display: none !important;
  height: 0 !important;
  max-height: 0 !important;
  border: none !important;
  margin: 0 !important;
  padding: 0 !important;
  opacity: 0 !important;
  visibility: hidden !important;
}

/* Kill gap between header and content */
.wp-site-blocks > main.wp-block-group {
  margin-top: 0 !important;
  padding-top: 15px !important;
}

/* Tighten header internals */
.site-branding,
.site-title,
.site-description,
.wp-block-site-title,
.wp-block-site-tagline {
  margin: 2px 0 !important;
  padding: 0 !important;
}

.custom-logo-link img,
.site-logo img,
.wp-block-site-logo img {
  max-height: 80px !important;
  width: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  filter: drop-shadow(0 2px 8px rgba(249,200,6,0.25)) !important;
}

header .wp-block-group,
header .wp-block-columns {
  margin: 0 !important;
  padding: 0 !important;
  gap: 5px !important;
}

/* ===== SITE TITLE ===== */
.site-title,
.site-title a,
.wp-block-site-title,
.wp-block-site-title a {
  font-family: 'Oswald', sans-serif !important;
  color: #f9c806 !important;
  text-transform: uppercase !important;
  letter-spacing: 4px !important;
  text-decoration: none !important;
  text-shadow: 0 2px 12px rgba(249,200,6,0.18) !important;
}

.site-description,
.wp-block-site-tagline {
  color: #a0b8bc !important;
  font-style: italic !important;
  letter-spacing: 1.5px !important;
  font-size: 13px !important;
  opacity: 0.85 !important;
}

/* ===== NAVIGATION ===== */
header.wp-block-template-part nav.wp-block-navigation {
  background-color: #02454f !important;
  padding: 8px 30px !important;
  position: sticky !important;
  top: 0 !important;
  z-index: 999 !important;
  border-top: 1px solid rgba(249,200,6,0.2) !important;
}

header.wp-block-template-part nav.wp-block-navigation a {
  color: #ffffff !important;
  font-family: 'Oswald', sans-serif !important;
  text-transform: uppercase !important;
  letter-spacing: 1.5px !important;
  font-size: 13px !important;
  text-decoration: none !important;
}

header.wp-block-template-part nav.wp-block-navigation a:hover {
  color: #f9c806 !important;
}

/* ===== WIDEN CONTENT AREA ===== */
.site-content,
.content-area,
#primary,
main,
.entry-content,
.post-content,
.wp-block-post-content {
  max-width: 100% !important;
  width: 100% !important;
}

.page-width,
.container,
.site-content > .container,
.wp-site-blocks > main,
.wp-site-blocks {
  max-width: 1300px !important;
  margin: 0 auto !important;
  padding-left: 30px !important;
  padding-right: 30px !important;
}

.site-main,
#main,
.posts-layout {
  max-width: 100% !important;
  width: 100% !important;
}

/* ===== POST CARDS ===== */
.post,
article,
.type-post,
.hentry {
  background-color: #0f2b31 !important;
  border: 1px solid #1a3d45 !important;
  border-left: 4px solid #f9c806 !important;
  border-radius: 6px !important;
  padding: 20px !important;
  margin-bottom: 20px !important;
  max-width: 100% !important;
  width: 100% !important;
  transition: border-color 0.2s ease !important;
}

.post:hover,
article:hover,
.type-post:hover {
  border-left-color: #ffffff !important;
}

/* ===== FEATURED/LATEST POST ===== */
.post:first-child,
article:first-child,
.type-post:first-child {
  border-left: 4px solid #f9c806 !important;
  border-top: 3px solid #f9c806 !important;
  padding: 25px !important;
  background-color: #122f36 !important;
}

.post:first-child .entry-title a,
article:first-child .entry-title a,
article:first-child h2 a {
  font-size: 28px !important;
  color: #f9c806 !important;
}

.post:first-child::before,
article:first-child::before {
  content: "LATEST" !important;
  display: inline-block !important;
  background-color: #f9c806 !important;
  color: #02454f !important;
  font-family: 'Oswald', sans-serif !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  padding: 3px 12px !important;
  letter-spacing: 2px !important;
  margin-bottom: 12px !important;
  border-radius: 2px !important;
}

/* ===== POST HEADINGS ===== */
.entry-title,
.entry-title a,
.post h2,
.post h2 a {
  font-family: 'Oswald', sans-serif !important;
  color: #ffffff !important;
  font-size: 22px !important;
  font-weight: 600 !important;
  text-transform: none !important;
  text-decoration: none !important;
  line-height: 1.3 !important;
}

.entry-title a:hover,
.post h2 a:hover {
  color: #f9c806 !important;
}

/* ===== POST META ===== */
.entry-meta,
.entry-meta a,
.posted-on,
.byline {
  color: #7a9da6 !important;
  font-size: 12px !important;
  text-transform: uppercase !important;
  letter-spacing: 1px !important;
}

.entry-date,
.posted-on,
time {
  font-family: 'Oswald', sans-serif !important;
  font-size: 11px !important;
  color: #f9c806 !important;
  text-transform: uppercase !important;
  letter-spacing: 1.5px !important;
}

/* ===== CATEGORY BADGES ===== */
.cat-links a,
.entry-categories a,
a[rel="category tag"] {
  background-color: #f9c806 !important;
  color: #02454f !important;
  padding: 3px 10px !important;
  border-radius: 3px !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
  letter-spacing: 1px !important;
}

/* ===== TAG PILLS ===== */
.tag-links a,
a[rel="tag"] {
  background-color: #1a3d45 !important;
  color: #a0b8bc !important;
  padding: 2px 8px !important;
  border-radius: 3px !important;
  font-size: 11px !important;
  text-decoration: none !important;
}

.tag-links a:hover,
a[rel="tag"]:hover {
  background-color: #f9c806 !important;
  color: #02454f !important;
}

/* ===== TRUNCATED EXCERPTS (homepage only) ===== */
.home .entry-summary,
.home .entry-content,
.home .entry-excerpt,
.archive .entry-summary,
.archive .entry-content,
.blog .entry-summary,
.blog .entry-content {
  max-height: 80px !important;
  overflow: hidden !important;
  position: relative !important;
}

.home .entry-summary::after,
.home .entry-content::after,
.home .entry-excerpt::after,
.archive .entry-summary::after,
.archive .entry-content::after,
.blog .entry-summary::after,
.blog .entry-content::after {
  content: "" !important;
  position: absolute !important;
  bottom: 0 !important;
  left: 0 !important;
  width: 100% !important;
  height: 40px !important;
  background: linear-gradient(transparent, #0f2b31) !important;
}

.home .post:first-child .entry-summary::after,
.home .post:first-child .entry-content::after {
  background: linear-gradient(transparent, #122f36) !important;
}

/* ===== POST EXCERPT TEXT ===== */
.entry-content p,
.entry-summary p,
.entry-excerpt p {
  color: #c8d8dc !important;
  line-height: 1.6 !important;
  font-size: 15px !important;
}

/* ===== CONTINUE READING ===== */
.more-link,
a.more-link {
  color: #f9c806 !important;
  font-weight: 600 !important;
  text-transform: uppercase !important;
  font-size: 13px !important;
  letter-spacing: 1px !important;
  text-decoration: none !important;
}

.more-link:hover {
  color: #ffffff !important;
}

/* ===== FEATURED IMAGES ===== */
.post-thumbnail img,
.entry-content img,
.wp-post-image {
  border-radius: 4px !important;
  border: 1px solid #1a3d45 !important;
  max-height: 250px !important;
  object-fit: cover !important;
  width: 100% !important;
  margin-bottom: 10px !important;
}

/* ===== SIDEBAR ===== */
.sidebar,
.widget-area,
#secondary {
  background-color: #0f2b31 !important;
  padding: 15px !important;
  border-radius: 6px !important;
}

.sidebar h2,
.widget-area h2,
.widget h2 {
  font-family: 'Oswald', sans-serif !important;
  color: #f9c806 !important;
  text-transform: uppercase !important;
  letter-spacing: 2px !important;
  border-bottom: 2px solid #f9c806 !important;
  padding-bottom: 8px !important;
  font-size: 22px !important;
}

.sidebar a,
.widget-area a {
  color: #e8e8e8 !important;
  text-decoration: none !important;
}

.sidebar a:hover,
.widget-area a:hover {
  color: #f9c806 !important;
}

/* ===== PATREON/SUPPORT BOX ===== */
.widget:has(a[href*="patreon"]),
.textwidget:has(a[href*="patreon"]) {
  background: linear-gradient(135deg, #02454f, #0a1a1e) !important;
  border: 2px solid #f9c806 !important;
  border-radius: 8px !important;
  padding: 20px !important;
  text-align: center !important;
}

/* ===== SIDEBAR & VNB BUTTON LINK OVERRIDE ===== */
.vnb-btn,
.vnb-btn:link,
.vnb-btn:visited,
a.vnb-btn {
  color: #02454f !important;
}

.vnb-btn:hover,
a.vnb-btn:hover {
  background: #ffffff !important;
  color: #02454f !important;
}

/* ===== NEWSLETTER INPUT ===== */
input[type="email"],
.newsletter input,
.subscribe-field input {
  background-color: #1a3d45 !important;
  border: 1px solid #f9c806 !important;
  color: #ffffff !important;
  padding: 10px !important;
  border-radius: 4px !important;
  width: 100% !important;
}

input[type="submit"],
button[type="submit"],
.subscribe-submit button {
  background-color: #f9c806 !important;
  color: #02454f !important;
  font-family: 'Oswald', sans-serif !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 1px !important;
  border: none !important;
  padding: 10px 20px !important;
  border-radius: 4px !important;
  cursor: pointer !important;
  width: 100% !important;
}

input[type="submit"]:hover,
button[type="submit"]:hover {
  background-color: #ffffff !important;
  color: #02454f !important;
}

/* ===== FOOTER ===== */
.site-footer,
footer.wp-block-template-part {
  background-color: #061215 !important;
  color: #7a9da6 !important;
}

.site-footer a,
footer a {
  color: #a0b8bc !important;
}

/* ===== GENERAL LINKS ===== */
a {
  color: #f9c806 !important;
}

a:hover {
  color: #ffffff !important;
}

/* ===== SCROLLBAR ===== */
::-webkit-scrollbar {
  width: 8px;
}

::-webkit-scrollbar-track {
  background: #0a1a1e;
}

::-webkit-scrollbar-thumb {
  background: #02454f;
  border-radius: 4px;
}

::-webkit-scrollbar-thumb:hover {
  background: #f9c806;
}

/* ===== CENTER HEADER ACROSS FULL PAGE WIDTH ===== */
header.wp-block-template-part .wp-block-group.alignfull,
header.wp-block-template-part .wp-block-group.alignwide,
header.wp-block-template-part .wp-block-site-logo,
header.wp-block-template-part .wp-block-site-title,
header.wp-block-template-part .wp-block-site-tagline,
header.wp-block-template-part .aligncenter {
  max-width: 100vw !important;
  width: 100% !important;
  text-align: center !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

header.wp-block-template-part .wp-block-columns {
  max-width: 100vw !important;
  width: 100% !important;
  justify-content: center !important;
}

header.wp-block-template-part .is-layout-constrained,
header.wp-block-template-part .wp-block-group-is-layout-constrained {
  max-width: 100% !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

/* ===== FIX SINGLE POSTS / ARTICLES ===== */
.single .entry-content,
.single .post-content,
.single .wp-block-post-content,
.page .entry-content,
.page .post-content,
.page .wp-block-post-content {
  max-height: none !important;
  overflow: visible !important;
}

.single .entry-content::after,
.single .post-content::after,
.page .entry-content::after,
.page .post-content::after {
  display: none !important;
}

/* ===== FIX CALCULATOR, QUIZ, AND LIVE PAGES ===== */
.page .entry-content iframe,
.page .entry-content .scoreaxis-widget,
.page .entry-content .livescore-widget,
.page .entry-content canvas,
.page .entry-content form,
.page .entry-content input,
.page .entry-content button,
.page .entry-content select,
.page .entry-content table {
  max-height: none !important;
  overflow: visible !important;
  width: 100% !important;
}

.page article,
.page .type-page,
.page .hentry {
  background-color: transparent !important;
  border: none !important;
  border-left: none !important;
  border-radius: 0 !important;
  padding: 10px 0 !important;
  max-width: 100% !important;
  width: 100% !important;
}

.page article::before,
.page .type-page::before {
  content: none !important;
  display: none !important;
}

.page .widget-wrapper,
.page .entry-content > div,
.page .wp-block-html {
  max-width: 100% !important;
  width: 100% !important;
  overflow-x: auto !important;
}

.page .entry-content img {
  max-height: none !important;
  object-fit: initial !important;
}
SIDEBAR, FULL WIDTH ===== */
.single #secondary,
.single .widget-area,
.single aside {
  display: none !important;
}

.single #primary,
.single .content-area {
  width: 100% !important;
  max-width: 100% !important;
  float: none !important;
}

.single #content,
.single .site-content,
.single .wrap {
  max-width: 100% !important;
  margin: 0 auto !important;
}

/* ===== SINGLE POST: FULL WIDTH CONTENT ===== */
.single .entry-content.is-layout-constrained,
.single .wp-block-post-content.is-layout-constrained,
.single .has-global-padding {
  max-width: 100% !important;
  padding-left: 20px !important;
  padding-right: 20px !important;
}

.single .wp-block-post-content > *,
.single .entry-content > * {
  max-width: 100% !important;
}

.single .wp-block-column,
.single main .wp-block-columns {
  width: 100% !important;
  max-width: 100% !important;
  flex-basis: 100% !important;
  flex-grow: 1 !important;
}

.single main .wp-block-columns {
  display: block !important;
}

.single main.wp-block-group {
  max-width: 960px !important;
  margin: 0 auto !important;
  padding: 20px 30px !important;
}

/* ===== MOBILE FIXES ===== */
@media screen and (max-width: 768px) {

  .wp-site-blocks,
  .wp-site-blocks > main,
  .page-width,
  .container {
    padding-left: 10px !important;
    padding-right: 10px !important;
  }

  .post,
  article,
  .type-post,
  .hentry {
    padding: 12px !important;
    margin-bottom: 15px !important;
  }

  .entry-title,
  .entry-title a,
  .post h2,
  .post h2 a {
    font-size: 18px !important;
  }

  .post:first-child .entry-title a,
  article:first-child .entry-title a,
  article:first-child h2 a {
    font-size: 22px !important;
  }

  header.wp-block-template-part,
  header.wp-block-template-part .wp-block-group.alignfull,
  header.wp-block-template-part .wp-block-group.alignwide {
    padding: 5px 10px !important;
  }

  .custom-logo-link img,
  .site-logo img,
  .wp-block-site-logo img {
    max-height: 50px !important;
  }

  .wp-block-site-title,
  .site-title,
  .site-title a {
    font-size: 20px !important;
    letter-spacing: 1px !important;
  }

  .wp-block-site-tagline,
  .site-description {
    font-size: 12px !important;
  }

  header.wp-block-template-part nav.wp-block-navigation {
    padding: 6px 10px !important;
  }

  header.wp-block-template-part nav.wp-block-navigation a {
    font-size: 11px !important;
    letter-spacing: 0.5px !important;
  }

  .page .widget-wrapper {
    max-width: 100% !important;
    padding: 0 !important;
  }

  .livescore-widget,
  .livescore-widget iframe,
  .scoreaxis-widget,
  .scoreaxis-widget iframe {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    overflow-x: auto !important;
  }

  .widget-wrapper[style*="display: flex"] {
    flex-direction: column !important;
  }

  .widget-wrapper[style*="display: flex"] > div {
    min-width: 100% !important;
    width: 100% !important;
  }

  #ls-widget {
    max-height: 500px !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
  }

  .sidebar,
  .widget-area,
  #secondary {
    padding: 10px !important;
    margin-top: 20px !important;
  }

  .post-thumbnail img,
  .entry-content img,
  .wp-post-image {
    max-height: 180px !important;
  }

  .home .entry-summary,
  .home .entry-content,
  .blog .entry-summary,
  .blog .entry-content {
    max-height: 60px !important;
  }

  .cat-links a,
  .entry-categories a,
  a[rel="category tag"] {
    font-size: 10px !important;
    padding: 2px 8px !important;
  }

  .post:first-child::before,
  article:first-child::before {
    font-size: 10px !important;
    padding: 2px 10px !important;
  }

  .page .entry-content button,
  .page .entry-content input[type="submit"] {
    width: 100% !important;
    margin-bottom: 8px !important;
  }

  /* Mobile table scroll */
  .single .wp-block-table {
    overflow-x: auto !important;
    overflow-y: visible !important;
    display: block !important;
    width: 100% !important;
    -webkit-overflow-scrolling: touch !important;
  }

  .single .wp-block-table table {
    min-width: 500px !important;
    table-layout: auto !important;
  }

  .single .wp-block-table td,
  .single .wp-block-table th {
    font-size: 11px !important;
    padding: 6px 8px !important;
    white-space: nowrap !important;
  }

  .single main.wp-block-group {
    padding: 15px 10px !important;
  }

  .single .entry-content.is-layout-constrained,
  .single .wp-block-post-content.is-layout-constrained {
    padding-left: 10px !important;
    padding-right: 10px !important;
  }
}

/* ===== EXTRA SMALL MOBILE ===== */
@media screen and (max-width: 480px) {

  .entry-title,
  .entry-title a,
  .post h2,
  .post h2 a {
    font-size: 16px !important;
  }

  .post:first-child .entry-title a,
  article:first-child .entry-title a {
    font-size: 19px !important;
  }

  header.wp-block-template-part nav.wp-block-navigation a {
    font-size: 10px !important;
  }

  .wp-block-site-title,
  .site-title,
  .site-title a {
    font-size: 16px !important;
  }

  .post,
  article {
    padding: 10px !important;
  }

  .home .entry-summary,
  .home .entry-content {
    max-height: 50px !important;
  }
}