/* Shared public-site safeguards; retain the original visual components. */
[hidden], .mobile-panel[hidden], .mobile-backdrop[hidden] { display: none !important; }
:focus-visible { outline: 3px solid #fbbf24 !important; outline-offset: 4px; }
.mobile-panel { max-width: calc(100vw - 24px); box-sizing: border-box; overflow-y: auto; }
.cf-footer { position: relative; z-index: 1; margin-top: 64px; padding: 36px 24px; border-top: 1px solid #353540; color: #c3c4d0; }
.cf-footer-inner { max-width: 1100px; margin: auto; display: flex; flex-wrap: wrap; gap: 24px; justify-content: space-between; }
.cf-footer a, .cf-footer button { color: #e2d4ff; font: inherit; }
.cf-footer-links { display: flex; flex-wrap: wrap; gap: 16px; align-items: center; }
.cf-footer button { background: none; border: 1px solid #777084; padding: 10px 14px; border-radius: 9px; cursor: pointer; }
.cf-risk { flex-basis: 100%; line-height: 1.6; font-size: .85rem; color: #c3c4d0; }
.cf-consent { position: relative; z-index: 2; margin: 0 auto 24px; max-width: 1060px; padding: 20px; border: 1px solid #6d5d91; border-radius: 14px; background: #14121f; color: #ece8f4; box-sizing: border-box; }
.cf-consent p { margin: 8px 0 12px; line-height: 1.55; }
.cf-consent-actions { display: flex; flex-wrap: wrap; gap: 12px; }
.cf-consent button { padding: 12px 18px; min-height: 44px; border: 1px solid #b69ddf; border-radius: 9px; background: #292036; color: #fff; font: inherit; cursor: pointer; }
.cf-consent a { color: #e2d4ff; }
.cf-summary { position: relative; z-index: 1; max-width: 1080px; margin: 28px auto; padding: 24px; border: 1px solid #67517b; border-radius: 16px; background: #13121d; color: #ece8f4; }
.cf-summary dl { display: flex; flex-wrap: wrap; gap: 18px 32px; margin: 16px 0; }
.cf-summary dt { color: #c3c4d0; font-size: .85rem; }
.cf-summary dd { margin: 6px 0 0; font-size: 1.5rem; color: #fbbf24; font-weight: 700; }
.cf-summary a { color: #e2d4ff; }
.cf-summary details { margin-top: 12px; }
.cf-summary summary { cursor: pointer; }
.cf-summary p { line-height: 1.65; }
.cf-empty { padding: 24px; text-align: center; color: #d0cadb; }
.cf-empty button { color: #fff; background: #3b2b4f; border: 1px solid #ad93c9; border-radius: 9px; padding: 12px 18px; cursor: pointer; }
.cf-small-sample { font-size: .8rem; color: #d0cadb; }
.cf-roadmap { display: grid; grid-template-columns: repeat(auto-fit,minmax(200px,1fr)); gap: 20px; max-width: 1100px; margin: 24px auto; }
.cf-roadmap article { padding: 24px; background: #14121f; border: 1px solid #524061; border-radius: 14px; }
.cf-roadmap p { color: #c3c4d0; line-height: 1.6; }
.cf-roadmap h3 { color: #fbbf24; margin: 10px 0; }
.cf-roadmap small { color: #d8c5f3; }
.cf-visually-hidden { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
/* Follow remains available in the footer, never as an obstructing promotion. */
#followGate, #floating-picks-btn { display: none !important; }
@media (max-width: 768px) {
  .hero { min-height: auto !important; padding: 88px 20px 32px !important; }
  .hero h1 { font-size: clamp(2rem, 8.5vw, 3rem) !important; letter-spacing: .5px !important; }
  .hero p { font-size: 1rem !important; margin-bottom: 24px !important; }
  .hero-badge { margin-bottom: 18px !important; }
  .hero-buttons { gap: 12px; }
  .stats-ticker { padding: 32px 20px !important; gap: 28px !important; }
  .philosophy { padding: 48px 20px !important; }
  .cf-summary, .cf-consent { margin-left: 12px; margin-right: 12px; }
  .cf-footer { padding: 28px 20px; }
  .pb-wrap { padding: 0 8px; }
}
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; scroll-behavior: auto !important; }
  .stat-item, .step-card, .roadmap-card, .philosophy-card, #terminal-output > div { opacity: 1 !important; transform: none !important; }
  .holo-card, .pick-card { transform: none !important; }
}
