/* ===== CountdownCash Common Styles ===== */
:root{
  --bg1:#0a1633;
  --bg2:#020814;
  --panel:#0e1b3d;
  --accent:#3fa9ff;
  --link:#7cc7ff;
}

html,body{height:100%;}
body{
  margin:0;
  font-family: Arial, sans-serif;
  background: radial-gradient(circle at top, var(--bg1), var(--bg2));
  color:#fff;
}

.page{
  min-height:100vh;
  display:flex;
  flex-direction:column;
}

/* Centered hero area used by index + thankyou */
.hero{
  flex:1;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:40px 16px 24px;
}
.hero-inner{width:100%;max-width:980px;text-align:center;}

/* Reusable card/panel */
.panel{
  background: rgba(14,27,61,.97);
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 16px;
  box-shadow: 0 20px 60px rgba(0,0,0,.6);
}

/* Footer */
.site-footer{
  padding:20px 16px 26px;
  background: linear-gradient(to bottom,
    rgba(10,22,51,0) 0%,
    rgba(10,22,51,.55) 30%,
    rgba(10,22,51,.95) 100%);
  text-align:center;
}
.site-footer .copyright{
  font-size:14px;
  opacity:.8;
  margin-bottom:10px;
}
.cc-footer-links{
  font-size:15px;
  opacity:.95;
}
.cc-footer-links a,
.cc-footer-links a:visited{
  color: var(--link);
  text-decoration:none;
  font-weight:600;
}
.cc-footer-links a:hover{ text-decoration:underline; }
.cc-footer-links .sep{ opacity:.65; padding:0 8px; }


/* Logo used on home page */
.site-logo{width:560px;max-width:92%;height:auto;display:block;margin:0 auto 18px;}


/* ===== Home page layout helpers ===== */
.home-container{ padding-top:64px; padding-bottom:10px; }
.home-subtitle{ margin-top:8px; }
.home-subcopy{ max-width:720px; margin:16px auto 0; font-size:18px; opacity:.92; line-height:1.55; }
.home-subcopy.small{ margin-top:10px; font-size:13px; opacity:.78; }
.jackpot-label{ margin-top:34px; font-size:20px; font-weight:700; }
.jackpot-value{ font-size:72px; font-weight:900; margin:10px 0 2px; letter-spacing:.5px; }
@media (max-width: 600px){ .jackpot-value{ font-size:56px; } }
.countdown{ font-size:26px; font-weight:800; margin-top:6px; }
.buttons{ margin-top:22px; }
.buttons a{
  display:inline-block;
  padding:16px 34px;
  margin:10px 12px;
  border-radius:10px;
  text-decoration:none;
  font-size:18px;
  font-weight:800;
  color:#fff;
  box-shadow: 0 14px 35px rgba(0,0,0,.35);
  transition: transform .08s ease, box-shadow .12s ease;
}
.buttons a:hover{ transform: translateY(-1px); }
.buttons a:active{ transform: translateY(1px); }
.btn-personal{ background:#3399ff; }
.btn-business{ background:#2ecc71; }


/* Home page inline links (avoid affecting buttons) */
.hero a:not(.btn-personal):not(.btn-business),
.hero a:not(.btn-personal):not(.btn-business):visited{
  color: var(--link);
  text-decoration:none;
  font-weight:600;
}
.hero a:not(.btn-personal):not(.btn-business):hover{ text-decoration:underline; }

/* ===== Launch polish spacing + hierarchy ===== */

/* give the hero area a consistent rhythm */
.container{
  padding-top: 40px;
  padding-bottom: 30px;
}


/* Add breathing room between stacked blocks */
.container > *{ 
  margin-left:auto; 
  margin-right:auto; 
}

.site-logo{
  width: 760px;      /* slightly bigger than current */
  max-width: 92%;
  margin: 0 auto 18px auto;  /* more space under logo */
}

/* Gold headline line under logo */
.tagline-highlight{
  color:#ffd34d;     /* gold */
  font-size: 24px;
  font-weight: 700;
  margin: 0 auto 12px;
}

/* Main sentence under tagline */
.subcopy{
  margin-top: 0;
  margin-bottom: 12px;
}

/* Must be 18+ line */
.subcopy.small{
  margin-top: 0;
  margin-bottom: 26px;  /* space before jackpot section */
}

/* Make "Current Monthly Jackpot" larger */
.jackpot-label{
  margin-top: 0;         /* let previous margin handle it */
  font-size: 26px;
  font-weight: 800;
  letter-spacing: .2px;
  margin-bottom: 10px;
}

/* Amount spacing */
.jackpot-value{
  margin: 10px 0 14px;
}

/* "Time left..." label should be RED */
.countdown-label{
  color: #ff4d4d;     /* red */
  font-weight: 800;
  margin-top: 18px;
}

/* Countdown timer spacing */
.countdown{
  margin: 10px 0 34px;
}

/* Buttons spacing */
.buttons{
  margin-top: 8px;
  margin-bottom: 18px;
}

/* Trust lines spacing */
.trust-reassure{ margin-top: 18px; }
.trust-line{ margin-top: 14px; }
.steps{ margin-top: 16px; }
.btn-subtext{ margin-top: 14px; margin-bottom: 10px; }

/* ===== LAUNCH DAY POLISH — SAFE OVERRIDES ===== */

/* Bigger but controlled logo */
.site-logo{
  width: 780px;
  max-width: 94%;
  margin: 0 auto 22px auto;
}

/* Gold headline under logo */
.tagline-highlight{
  color:#ffd34d;
  font-size:26px;
  font-weight:800;
  margin-bottom:16px;
}

/* Main description block spacing */
.home-subcopy{
  margin-top: 14px;
  margin-bottom: 10px;
  font-size:19px;
}

/* Small legal line spacing */
.home-subcopy.small{
  margin-bottom: 30px;
}

/* Bigger jackpot label */
.jackpot-label{
  font-size:28px;
  font-weight:900;
  margin-bottom:12px;
}

/* Bigger amount with glow */
.jackpot-value{
  font-size:76px;
  margin-bottom:18px;
  text-shadow: 0 0 18px rgba(125,211,255,.25);
}

/* Red countdown label */
.countdown-label{
  color:#ff5252;
  font-size:18px;
  font-weight:900;
  margin-top:10px;
}

/* Countdown timer breathing room */
.countdown{
  font-size:28px;
  margin: 10px 0 36px;
}

/* Buttons block spacing */
.buttons{
  margin: 10px 0 26px;
}

/* Make steps look like real UI badges */
.steps{
  margin-top:18px;
}

.steps .num{
  width:26px;
  height:26px;
  line-height:26px;
  font-size:13px;
  background: rgba(63,169,255,.25);
  border: 1px solid rgba(63,169,255,.55);
  box-shadow: 0 0 10px rgba(63,169,255,.35);
}

/* Bottom trust + footer breathing room */
.trust-reassure{ margin-top:22px; }
.trust-line{ margin-top:16px; }
.btn-subtext{ margin-top:16px; }

/* Footer stronger visual separation */
.site-footer{
  margin-top: 40px;
  padding-top: 26px;
  border-top: 1px solid rgba(255,255,255,.10);
}

/* ===== Bottom Section Launch Polish ===== */

/* Space under buttons */
.buttons{
  margin-bottom: 34px;
}

/* First trust line (gold lock line) */
.trust-reassure{
  margin-top: 22px;
  margin-bottom: 10px;
  font-size:15px;
  letter-spacing:.2px;
}

/* Second trust line */
.trust-line{
  margin-top: 8px;
  margin-bottom: 18px;
  opacity:.9;
}

/* Steps row spacing + grouping */
.steps{
  margin-top: 16px;
  margin-bottom: 18px;
  padding: 10px 14px;
  border-radius: 12px;
  background: rgba(255,255,255,.03);
}

/* Space each step more clearly */
.steps .step{
  margin: 0 14px;
}

/* Contact microcopy spacing */
.btn-subtext{
  margin-top: 16px;
  margin-bottom: 30px;
  font-size:14px;
}

/* Footer separation band */
.site-footer{
  margin-top: 36px;
  padding-top: 26px;
  border-top: 1px solid rgba(255,255,255,.12);
  background: linear-gradient(
    to bottom,
    rgba(10,22,51,0) 0%,
    rgba(10,22,51,.45) 40%,
    rgba(10,22,51,.95) 100%
  );
}

/* ===== Bottom Section Launch Polish ===== */

/* Space under buttons */
.buttons{
  margin-bottom: 34px;
}

/* First trust line (gold lock line) */
.trust-reassure{
  margin-top: 22px;
  margin-bottom: 10px;
  font-size:15px;
  letter-spacing:.2px;
}

/* Second trust line */
.trust-line{
  margin-top: 8px;
  margin-bottom: 18px;
  opacity:.9;
}

/* Steps row spacing + grouping */
.steps{
  margin-top: 16px;
  margin-bottom: 18px;
  padding: 10px 14px;
  border-radius: 12px;
  background: rgba(255,255,255,.03);
}

/* Space each step more clearly */
.steps .step{
  margin: 0 14px;
}

/* Contact microcopy spacing */
.btn-subtext{
  margin-top: 14px;
  margin-bottom: 14px;
  font-size:14px;
}


/* Footer separation band */
.site-footer{
  margin-top: 18px;
  padding-top: 18px;
  border-top: 1px solid rgba(255,255,255,.12);
  background: linear-gradient(
    to bottom,
    rgba(10,22,51,0) 0%,
    rgba(10,22,51,.45) 40%,
    rgba(10,22,51,.95) 100%
  );
}

/* ===== Top Nav (shared page header nav) ===== */
.cc-topnav{
  max-width:980px;
  margin: 22px auto 0;
  padding: 0 16px;
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:10px;
}
.cc-brand{
  font-weight:800;
  letter-spacing:.5px;
  margin-right:6px;
}
.cc-pill{
  display:inline-block;
  padding:10px 14px;
  border-radius:999px;
  background:#0b1533;
  border:1px solid rgba(255,255,255,.08);
  text-decoration:none;
  color:#fff;
}
.cc-pill:hover{ filter:brightness(1.05); }
.cc-pill[aria-current="page"]{
  border-color: rgba(63,169,255,.45);
  box-shadow: 0 0 0 2px rgba(63,169,255,.12) inset;
}

/* ===== Contact page typography helpers ===== */
.cc-card-pad{ padding:28px 26px; }
.cc-page-title{
  margin:0 0 14px;
  color: var(--accent);
  font-size:36px;
}
.cc-section-title{
  margin:24px 0 10px;
  color:#d6ecff;
  font-size:22px;
}
.cc-lead{ font-size:16px; line-height:1.6; opacity:.95; margin: 0 0 10px; }
.cc-muted{ opacity:.8; margin-top:0; }

.cc-list{ margin: 0 0 18px 18px; padding:0; }
.cc-list li{ line-height:1.7; }

/* ===== Contact form ===== */
.cc-form label{
  display:block;
  margin-top:16px;
  margin-bottom:6px;
  font-weight:600;
  opacity:.92;
}
.cc-form input,
.cc-form textarea{
  width:100%;
  padding:12px;
  border-radius:8px;
  border:1px solid rgba(255,255,255,.18);
  background:#0b1533;
  color:#fff;
  font-size:15px;
  box-sizing:border-box;
}
.cc-form textarea{ resize:vertical; min-height:140px; }

.cc-btn{
  display:inline-block;
  padding:12px 16px;
  border-radius:10px;
  border:0;
  cursor:pointer;
  font-weight:800;
  margin-top:18px;
}
.cc-btn-primary{
  background:#3399ff;
  color:#fff;
}
.cc-btn-primary:hover{ filter:brightness(1.06); }

/* ===== Alerts ===== */
.cc-alert{
  margin-top:14px;
  padding:12px 12px;
  border-radius:10px;
  border:1px solid rgba(255,255,255,.14);
  background: rgba(0,0,0,.18);
  font-size:14px;
  line-height:1.4;
}
.cc-alert-success{
  border-color: rgba(40,200,120,.45);
}
.cc-alert-error{
  border-color: rgba(255,80,80,.45);
}



/* === Global Page Container === */
.page-container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 20px;
    box-sizing: border-box;
}

.panel{
  max-width: 980px;
  margin-left: auto;
  margin-right: auto;
}

.panel > :last-child {
  margin-bottom: 0;
}

.jackpot-growth-note {
  margin-top: 6px;
  font-size: 14px;
  line-height: 1.4;
  opacity: 0.85;
}

.cc-pill.active,
.cc-pill[aria-current="page"] {
  background:#1b2f66;
  border-color:rgba(255,255,255,.25);
}


/* Normalize spacing before footer across all pages */
.page > .container,
.page > .wrap {
  padding-bottom: 0;
}

.panel,
.card {
  margin-bottom: 0;
}

/* ===== Global Sticky Footer Enforcement ===== */
.page > main,
.page > .container,
.page > .wrap,
.page > .page-container {
  flex: 1 0 auto;
}

.site-footer {
  flex-shrink: 0;
}

/* ===== Footer Final Lock ===== */
.site-footer{
  margin-top: 0;
  padding: 22px 16px 26px;
  border-top: 1px solid rgba(255,255,255,.12);
  background: linear-gradient(
    to bottom,
    rgba(10,22,51,0) 0%,
    rgba(10,22,51,.45) 40%,
    rgba(10,22,51,.95) 100%
  );
  text-align:center;
}

/* ===== Global Link State Fix ===== */
a,
a:visited {
  color: #59a9ff;
  text-decoration: none;
}

a:hover,
a:focus {
  color: #8fc4ff;
  text-decoration: underline;
}

/* ===== HERO CTA BUTTON VISIBILITY FIX ===== */

.btn-personal,
.btn-business {
  font-weight: 900;
  letter-spacing: .3px;
  text-shadow: 0 1px 2px rgba(0,0,0,.35);
  box-shadow:
    0 8px 22px rgba(0,0,0,.45),
    0 0 0 1px rgba(255,255,255,.18) inset;
  filter: saturate(1.15) brightness(1.05);
  transition: all .18s ease;
}

/* ===== HIGH-CONTRAST CTA BUTTONS ===== */

.btn-personal,
.btn-business {
  display: inline-block;
  padding: 16px 28px;
  border-radius: 12px;
  font-weight: 900;
  font-size: 18px;
  letter-spacing: .4px;
  text-align: center;
  text-decoration: none;
  color: #ffffff !important;

  border: 2px solid rgba(255,255,255,.35);

  box-shadow:
    0 10px 26px rgba(0,0,0,.55),
    0 0 0 2px rgba(255,255,255,.12) inset;

  text-shadow: 0 2px 4px rgba(0,0,0,.55);

  transition: all .18s ease;
}

/* BLUE — PERSONAL */
.btn-personal {
  background: linear-gradient(180deg, #5ec0ff, #1f6fe0);
}

/* GREEN — BUSINESS */
.btn-business {
  background: linear-gradient(180deg, #42e08c, #179a52);
}

/* HOVER — MAKE THEM POP HARD */
.btn-personal:hover {
  background: linear-gradient(180deg, #79ceff, #2a84ff);
  box-shadow:
    0 16px 36px rgba(0,0,0,.65),
}

/* Hover = pop forward */
.btn-personal:hover,
.btn-business:hover {
  transform: translateY(-2px);
  box-shadow:
    0 14px 30px rgba(0,0,0,.55),
    0 0 0 1px rgba(255,255,255,.25) inset,
    0 0 18px rgba(120,180,255,.35);
  filter: brightness(1.12) saturate(1.2);
}


/* Active press */
.btn-personal:active,
.btn-business:active {
  transform: translateY(0);
  box-shadow:
    0 6px 14px rgba(0,0,0,.45) inset;
}

.cta-zone {
  background: rgba(0,0,0,.28);
  padding: 22px;
  border-radius: 18px;
  backdrop-filter: blur(2px);
}

.buttons a {
  color: #ffffff !important;
  opacity: 1 !important;
}

@keyframes ccPulse {
  0% { transform: scale(1); }
  50% { transform: scale(1.04); }
  100% { transform: scale(1); }
}

