header { display: none !important; }
.wp-block-template-part { display: none !important; }

.wpforms-field input, 
.wpforms-field textarea {
  background-color: #2a2a2a !important;
  border: 1px solid #f5db01 !important;
  color: #f5f0eb !important;
}

.wpforms-field label {
  color: #f5f0eb !important;
}

.wpforms-field .wpforms-field-sublabel {
  color: #888888 !important;
}

.wpforms-submit {
  background-color: #f5db01 !important;
  color: #0a0a0a !important;
  border: none !important;
  font-weight: 700 !important;
  letter-spacing: 0.1em !important;
}

/* Card hover lift effect */
.elementor-container .e-con {
  transition: transform 0.3s ease, box-shadow 0.3s ease !important;
}

.elementor-container .e-con:hover {
  transform: translateY(-8px) !important;
  box-shadow: 0 20px 40px rgba(245,219,1,0.15) !important;
}

/* Button pulse effect */
.elementor-button {
  transition: all 0.3s ease !important;
}

.elementor-button:hover {
  transform: translateY(-3px) !important;
  box-shadow: 0 8px 25px rgba(245,219,1,0.4) !important;
}

/* Hero heading animation */
@keyframes slideInLeft {
  from {
    opacity: 0;
    transform: translateX(-60px);
  }
  to {
    opacity: 1;
    transform: translateX(0);
  }
}

.elementor-heading-title {
  animation: slideInLeft 0.8s ease both !important;
}


/* Scroll fade-in animation for sections */
@keyframes fadeInUp {
  from {
    opacity: 0;
    transform: translateY(40px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

/* Staggered animations for content */
.elementor-widget-heading {
  animation: fadeInUp 0.8s ease both !important;
}

.elementor-widget-text-editor {
  animation: fadeInUp 0.9s ease both !important;
}

.elementor-widget-button {
  animation: fadeInUp 1s ease both !important;
}

/* Yellow glow on founding membership box */
.e-con:hover {
  transition: all 0.3s ease !important;
}

/* Pricing card hover */
@keyframes pulse {
  0% { box-shadow: 0 0 0 0 rgba(245,219,1,0.4); }
  70% { box-shadow: 0 0 0 10px rgba(245,219,1,0); }
  100% { box-shadow: 0 0 0 0 rgba(245,219,1,0); }
}

/* Image hover zoom effect for class cards */
.elementor-widget-image {
  overflow: hidden !important;
}

.elementor-widget-image img {
  transition: transform 0.5s ease !important;
}

.elementor-widget-image:hover img {
  transform: scale(1.08) !important;
}

/* Button glow on BECOME A FOUNDING MEMBER */
.elementor-button-wrapper .elementor-button {
  position: relative !important;
  overflow: hidden !important;
}

.elementor-button-wrapper


/* Founding membership card hover */
.founding-card {
  transition: transform 0.3s ease, box-shadow 0.3s ease !important;
  cursor: pointer !important;
}

.founding-card:hover {
  transform: scale(1.05) !important;
  box-shadow: 0 25px 50px rgba(245,219,1,0.3) !important;
}

/* Pricing card hover effect */
.pricing-card {
  transition: transform 0.3s ease, box-shadow 0.3s ease !important;
  cursor: pointer !important;
}

.pricing-card:hover {
  transform: scale(1.03) !important;
  box-shadow: 0 25px 50px rgba(245,219,1,0.2) !important;
}

.hero-signup {
  margin-top: 20px;
  max-width: 500px;
}

/* Email waitlist Signup Hero */
.signup-inner {
  display: flex !important;
  align-items: center !important;
  gap: 20px !important;
  border-bottom: 2px solid rgba(245,240,235,0.6) !important;
  padding-bottom: 8px !important;
}

.signup-inner input[type="email"] {
  background: transparent !important;
  border: none !important;
  outline: none !important;
  color: #f5f0eb !important;
  font-size: 16px !important;
  letter-spacing: 0.2em !important;
  text-transform: uppercase !important;
  width: 100% !important;
  font-family: inherit !important;
}

.signup-inner input[type="email"]::placeholder {
  color: rgba(245,240,235,0.5) !important;
  letter-spacing: 0.2em !important;
}

.signup-inner button {
  background: transparent !important;
  border: none !important;
  color: #f5db01 !important;
  font-weight: 700 !important;
  letter-spacing: 0.2em !important;
  text-transform: uppercase !important;
  font-size: 16px !important;
  cursor: pointer !important;
  white-space: nowrap !important;
  font-family: inherit !important;
  padding: 0 !important;
}

.signup-inner button:hover {
  color: #ffffff !important;
}


/* Bottom waitlist form inline style */
#wpforms-152 input[type="email"] {
  text-align: center !important;
  display: block !important;
  margin: 0 auto !important;
  background: transparent !important;
  border: none !important;
  outline: none !important;
  color: #f5f0eb !important;
  font-size: 16px !important;
  letter-spacing: 0.2em !important;
  text-transform: uppercase !important;
  width: 100% !important;
}

#wpforms-152 input[type="email"]::placeholder {
  text-align: center !important;
  color: rgba(245,240,235,0.6) !important;
  letter-spacing: 0.2em !important;
}

#wpforms-152 .wpforms-field-container {
  text-align: center !important;
  width: 500px !important;
  margin: 0 auto !important;
  border-bottom: 2px solid rgba(245,240,235,0.6) !important;
}

#wpforms-152 .wpforms-submit-container {
  text-align: center !important;
  margin-top: 20px !important;
}

/* Sticky header */
#site-header {
  position: fixed !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  z-index: 9999 !important;
  width: 100% !important;
}

/* Push content down so header doesn't cover it */
#site-header + .e-con {
  margin-top: 80px !important;
}




/* Mobile: hide header app buttons, show hero ones stacked */
@media (max-width: 768px) {
  .app-btns-header {
    display: none !important;
  }

  .app-btns-hero {
    justify-content: center !important;
  }

  .app-btn-hero {
    flex: 1 1 140px !important;
  }
}



/* ============================================
   MOBILE OPTIMIZATION — max-width: 768px
   ============================================ */

@media (max-width: 768px) {

  /* --- GLOBAL SECTION PADDING --- */
  .e-con {
    padding-left: 20px !important;
    padding-right: 20px !important;
  }

  /* --- HEADINGS: center only, no size/spacing --- */
  .elementor-heading-title {
    text-align: center !important;
  }

  /* --- ANIMATIONS OFF --- */
  .elementor-widget-heading {
    animation: none !important;
  }

  .elementor-widget-text-editor {
    animation: none !important;
  }

  .elementor-widget-button {
    animation: none !important;
  }

  /* --- HERO SECTION: kill gap at bottom --- */
  .e-con.e-parent:first-of-type {
    padding-bottom: 30px !important;
    margin-bottom: 0 !important;
  }

  /* --- FOUNDING MEMBERSHIP CARD --- */
  .founding-card {
    margin-top: 0 !important;
    padding: 30px 20px !important;
  }

  /* --- HEADER: logo + button on one row --- */
  #site-header,
  #site-header > .e-con,
  #site-header > .e-con > .e-con-inner {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: space-between !important;
    flex-wrap: nowrap !important;
    padding-left: 16px !important;
    padding-right: 16px !important;
  }

  #site-header .elementor-widget-wrap {
    flex-direction: row !important;
    align-items: center !important;
    justify-content: space-between !important;
    flex-wrap: nowrap !important;
    width: 100% !important;
  }

  #site-header .elementor-widget {
    width: auto !important;
    flex: 0 0 auto !important;
  }

  #site-header .elementor-widget-image img {
    max-width: 130px !important;
    width: 130px !important;
    height: auto !important;
  }

  #site-header .elementor-button {
    width: auto !important;
    font-size: 10px !important;
    padding: 9px 12px !important;
    display: inline-block !important;
    letter-spacing: 0.08em !important;
    white-space: nowrap !important;
  }

  #site-header + .e-con {
    margin-top: 60px !important;
  }

  /* --- HERO EMAIL CAPTURE: keep inline --- */
  .hero-signup {
    max-width: 100% !important;
    margin-top: 12px !important;
  }

  .signup-inner {
    flex-direction: row !important;
    align-items: center !important;
    gap: 10px !important;
  }

  .signup-inner input[type="email"] {
    font-size: 12px !important;
    width: 100% !important;
    min-width: 0 !important;
  }

  .signup-inner button {
    font-size: 12px !important;
    white-space: nowrap !important;
    flex-shrink: 0 !important;
  }

  /* --- CARDS: stack single column --- */
  .elementor-container {
    flex-direction: column !important;
  }

  .elementor-container .e-con {
    width: 100% !important;
    max-width: 100% !important;
  }

  /* --- PRICING CARDS --- */
  .pricing-card {
    width: 100% !important;
    max-width: 100% !important;
    margin-bottom: 20px !important;
  }

  /* --- BUTTONS (global, except header) --- */
  .elementor-button {
    font-size: 14px !important;
    padding: 14px 24px !important;
    width: 100% !important;
    text-align: center !important;
    display: block !important;
  }

  /* --- WAITLIST FORM --- */
  #wpforms-152 .wpforms-field-container {
    width: 100% !important;
  }

  /* --- DISABLE STUCK HOVER EFFECTS ON TOUCH --- */
  .elementor-container .e-con:hover {
    transform: none !important;
    box-shadow: none !important;
  }

  .founding-card:hover,
  .pricing-card:hover {
    transform: none !important;
    box-shadow: none !important;
  }

  .elementor-button:hover {
    transform: none !important;
    box-shadow: none !important;
  }

  .elementor-widget-image:hover img {
    transform: none !important;
  }

}

/* ============================================
   SMALL PHONE — max-width: 480px
   ============================================ */

@media (max-width: 480px) {

  .e-con {
    padding-left: 16px !important;
    padding-right: 16px !important;
  }

}