/* CRP FOOTER V2 + BACK-TO-TOP + HERO (gamblingnerd patterns, CRP brand) */

/* ---- amber top rule + dark footer ---- */
.crp-footer-v2 {
  background: #14161a;
  border-top: 4px solid #e8b64c;
  color: #9aa0a6;
  margin-top: 3rem;
  padding: 34px 20px 26px;
}
.crp-footer-v2 .crp-fw { max-width: 1100px; margin: 0 auto; }

/* footer search */
.crp-footer-search {
  display: flex; justify-content: center; margin: 0 auto 26px; max-width: 520px;
  background: #1a1d24; border: 1px solid #2c2f36; border-radius: 999px; padding: 6px;
}
.crp-footer-search input {
  flex: 1; background: transparent; border: 0; outline: none;
  color: #e8e8e8; font-size: 14px; padding: 8px 14px;
}
.crp-footer-search button {
  background: #e8b64c; color: #14161a; border: 0; border-radius: 999px;
  font-weight: 700; font-size: 13px; padding: 9px 22px; cursor: pointer;
}
.crp-footer-search button:hover { background: #d97706; }
.crp-footer-search-results {
  display: none; max-width: 520px; margin: -20px auto 20px;
  background: #1a1d24; border: 1px solid #2c2f36; border-radius: 8px; overflow: hidden;
}
.crp-footer-search-results a { display: block; padding: 10px 16px; text-decoration: none; border-bottom: 1px solid #23262e; }
.crp-footer-search-results strong { display: block; color: #e8e8e8; font-size: 13.5px; }
.crp-footer-search-results span { display: block; color: #8b93a1; font-size: 12px; }
.crp-footer-search-results a:hover { background: #23262e; }
.crp-footer-search-results a:hover strong { color: #e8b64c; }

/* footer link row with amber underlines */
.crp-footer-links {
  display: flex; flex-wrap: wrap; justify-content: center; gap: 26px 34px; margin-bottom: 28px;
}
.crp-footer-links a {
  color: #e8e8e8; text-decoration: none; font-weight: 600; font-size: 14px;
  padding-bottom: 6px; border-bottom: 2px solid #e8b64c;
}
.crp-footer-links a:hover { color: #e8b64c; }

/* brand + socials */
.crp-footer-brand { display: flex; align-items: center; justify-content: center; gap: 18px; margin-bottom: 24px; flex-wrap: wrap; }
.crp-footer-brand img { height: 34px; width: auto; display: block; }
.crp-footer-social { display: flex; gap: 14px; }
.crp-footer-social a { color: #9aa0a6; text-decoration: none; font-size: 12.5px; }
.crp-footer-social a:hover { color: #e8b64c; }

/* disclaimer */
.crp-footer-disc { max-width: 980px; margin: 0 auto 22px; font-size: 12.5px; line-height: 1.65; }
.crp-footer-disc p { margin: 0 0 10px; }
.crp-footer-disc strong { color: #c9cdd4; }

/* sources + RG */
.crp-footer-sources { text-align: center; font-size: 12.5px; margin-bottom: 16px; }
.crp-footer-sources strong { color: #c9cdd4; }
.crp-rg-line { display: inline-flex; align-items: center; gap: 8px; margin-top: 8px; }
.crp-18 {
  display: inline-block; background: #e8b64c; color: #14161a; font-weight: 800;
  border-radius: 999px; padding: 2px 9px; font-size: 11.5px;
}
.crp-footer-copy { text-align: center; font-size: 12px; color: #6b7280; margin: 14px 0 0; }

/* ---- back to top ---- */
.crp-top-btn {
  position: fixed; right: 22px; bottom: 22px; z-index: 1200;
  width: 46px; height: 46px; border-radius: 50%;
  background: #e8b64c; color: #14161a; border: 0; cursor: pointer;
  font-size: 20px; font-weight: 800; box-shadow: 0 4px 14px rgba(0,0,0,.4);
  display: none; align-items: center; justify-content: center;
}
.crp-top-btn:hover { background: #d97706; }
.crp-top-btn.show { display: flex; }

/* ---- hero (hub) ---- */
.crp-hero {
  position: relative; border-radius: 8px; overflow: hidden;
  background-size: cover; background-position: center right;
  margin: 0 0 22px;
}
.crp-hero::before {
  content: ''; position: absolute; inset: 0;
  background: linear-gradient(90deg, rgba(10,12,18,.92) 0%, rgba(10,12,18,.72) 42%, rgba(10,12,18,.15) 75%, rgba(10,12,18,0) 100%);
}
.crp-hero-inner { position: relative; padding: 44px 38px 40px; max-width: 640px; }
.crp-hero-inner h1 { color: #fff; font-size: 2rem; line-height: 1.15; margin: 0 0 14px; text-shadow: 0 2px 8px rgba(0,0,0,.5); }
.crp-hero-desc { color: #d5d9e0; font-size: 15px; line-height: 1.6; margin: 0 0 12px; }
.crp-hero .meta { color: #9aa0a6; margin: 0; }
.crp-hero-sources { color: #9aa0a6; font-size: 12px; margin: 10px 0 0; }
.crp-hero-sources strong { color: #e8b64c; font-size: 11px; letter-spacing: .08em; }

@media (max-width: 640px) {
  .crp-hero-inner { padding: 30px 22px; }
  .crp-hero-inner h1 { font-size: 1.5rem; }
  .crp-footer-links { gap: 16px 22px; }
}