* {
          margin: 0;
          padding: 0;
          box-sizing: border-box;
}

body {
          background-color: #000;
          min-height: 100vh;
          font-family: 'Manrope', sans-serif;
          overflow-x: hidden;
}

.grid-container {
          display: grid;
          grid-template-columns: 1fr minmax(0, 1200px) 1fr;
          grid-template-rows: auto 1fr;
          min-height: 100vh;
}

.main-header {
          grid-column: 1 / -1;
          background-color: #000;
          padding: 20px 0;
          position: sticky;
          top: 0;
          z-index: 100;
          border-bottom: 1px solid rgba(255, 255, 255, 0.1);
}

.header-content {
          grid-column: 2;
          display: flex;
          justify-content: space-between;
          align-items: center;
          padding: 0 80px;
}

.header-left {
          display: flex;
          align-items: center;
          gap: 15px;
}

.header-logo {
          width: 40px;
          height: 40px;
          object-fit: contain;
}

.header-text {
          color: #fff;
          font-size: 24px;
          font-weight: bold;
          text-transform: uppercase;
}

.header-claim-button {
          background-color: #fff;
          color: #000;
          border: none;
          padding: 12px 30px;
          font-size: 16px;
          font-weight: bold;
          cursor: pointer;
          text-transform: uppercase;
          border-radius: 5px;
          transition: background-color 0.3s;
          font-family: 'Manrope', sans-serif;
}

.header-claim-button:hover {
          background-color: #ccc;
}

.images-container {
          grid-column: 1 / -1;
          display: flex;
          flex-direction: column;
          align-items: center;
          padding-top: 0;
          width: 100%;
          overflow-x: hidden;
}

.hero-content {
          position: relative;
          width: 100%;
          display: flex;
          flex-direction: column;
}

.hero-image {
          width: 100%;
          max-width: 100%;
          height: auto;
          display: block;
          order: 2;
}

.hero-image[alt="Hero Top"] {
          opacity: 1;
}

.hero-image[alt="Hero Bot"] {
          margin-top: -760px;
          z-index: 1;
}

.overlay-content {
          position: absolute;
          top: 35%;
          left: 50%;
          transform: translate(-50%, -50%);
          text-align: center;
          z-index: 10;
          width: 100%;
          max-width: 1200px;
          padding: 0 80px;
          order: 1;
}

.main-title {
          color: #fff;
          font-size: 90px;
          font-weight: bold;
          margin-bottom: 20px;
          text-transform: uppercase;
          line-height: 1.2;
}

.subtitle {
          color: #b3b3b3;
          font-size: 32px;
          margin-bottom: 30px;
          line-height: 1.3;
}

.claim-button {
          background-color: #fff;
          color: #000;
          border: none;
          padding: 15px 40px;
          font-size: 18px;
          font-weight: bold;
          cursor: pointer;
          text-transform: uppercase;
          border-radius: 5px;
          transition: background-color 0.3s;
}

.claim-button:hover {
          background-color: #ccc;
}

.instructions-section {
          grid-column: 1 / -1;
          padding: 100px 0;
          background-color: #000;
}

.instructions-content {
          grid-column: 2;
          max-width: 1200px;
          margin: 0 auto;
          padding: 0 80px;
}

.instructions-title {
          color: #fff;
          font-size: 42px;
          font-weight: bold;
          text-align: center;
          margin-bottom: 60px;
          text-transform: uppercase;
}

.instructions-grid {
          display: grid;
          grid-template-columns: repeat(4, 1fr);
          gap: 30px;
          overflow-x: auto;
}

.instruction-card {
          background: linear-gradient(135deg, rgba(255, 255, 255, 0.05) 0%, rgba(255, 255, 255, 0.02) 100%);
          border: 1px solid rgba(255, 255, 255, 0.1);
          border-radius: 16px;
          padding: 40px 30px;
          text-align: center;
          position: relative;
          transition: all 0.3s ease;
          cursor: pointer;
          overflow: hidden;
}

.instruction-card::before {
          content: '';
          position: absolute;
          top: 0;
          left: 0;
          right: 0;
          bottom: 0;
          background: linear-gradient(135deg, rgba(255, 255, 255, 0.1) 0%, rgba(255, 255, 255, 0.05) 100%);
          opacity: 0;
          transition: opacity 0.3s ease;
}

.instruction-card:hover {
          transform: translateY(-10px);
          border-color: rgba(255, 255, 255, 0.3);
          box-shadow: 0 20px 40px rgba(255, 255, 255, 0.1);
}

.instruction-card:hover::before {
          opacity: 1;
}

.instruction-card:hover .card-number {
          color: #fff;
          transform: scale(1.1);
}

.card-number {
          position: absolute;
          top: 10px;
          right: 20px;
          font-size: 48px;
          font-weight: 800;
          color: rgba(255, 255, 255, 0.1);
          transition: all 0.3s ease;
          line-height: 1;
          z-index: 1;
}

.card-title {
          color: #fff;
          font-size: 22px;
          font-weight: bold;
          margin-bottom: 15px;
          text-transform: uppercase;
          position: relative;
          z-index: 1;
}

.card-description {
          color: rgba(255, 255, 255, 0.7);
          font-size: 16px;
          line-height: 1.6;
          position: relative;
          z-index: 1;
}

.progress-section {
          grid-column: 1 / -1;
          padding: 100px 0;
          background: linear-gradient(180deg, #000 0%, rgba(0, 0, 0, 0.95) 100%);
          position: relative;
          overflow: hidden;
}

.progress-section::before {
          content: '';
          position: absolute;
          top: 0;
          left: 0;
          right: 0;
          bottom: 0;
          background: radial-gradient(circle at 50% 50%, rgba(255, 255, 255, 0.03) 0%, transparent 70%);
          pointer-events: none;
}

.progress-content {
          grid-column: 2;
          max-width: 1200px;
          margin: 0 auto;
          padding: 0 80px;
          text-align: center;
          position: relative;
          z-index: 1;
}

.progress-title {
          color: #fff;
          font-size: 42px;
          font-weight: bold;
          text-align: center;
          margin-bottom: 60px;
          text-transform: uppercase;
}

.progress-stats {
          display: grid;
          grid-template-columns: repeat(2, 1fr);
          gap: 40px;
          margin-bottom: 60px;
}

.stat-item {
          background: linear-gradient(135deg, rgba(255, 255, 255, 0.05) 0%, rgba(255, 255, 255, 0.02) 100%);
          border: 1px solid rgba(255, 255, 255, 0.1);
          border-radius: 16px;
          padding: 40px 30px;
          transition: all 0.3s ease;
}

.stat-item:hover {
          transform: translateY(-5px);
          border-color: rgba(255, 255, 255, 0.3);
          box-shadow: 0 15px 30px rgba(255, 255, 255, 0.1);
}

.stat-value {
          color: #fff;
          font-size: 56px;
          font-weight: 800;
          margin-bottom: 15px;
          line-height: 1;
}

.stat-label {
          color: rgba(255, 255, 255, 0.7);
          font-size: 18px;
          text-transform: uppercase;
          letter-spacing: 1px;
}

.progress-bar-container {
          margin-bottom: 50px;
}

.progress-bar {
          width: 100%;
          height: 12px;
          background: rgba(255, 255, 255, 0.1);
          border-radius: 10px;
          overflow: hidden;
          margin-bottom: 20px;
          position: relative;
}

.progress-fill {
          height: 100%;
          background: linear-gradient(90deg, #fff 0%, rgba(255, 255, 255, 0.8) 100%);
          border-radius: 10px;
          transition: width 1s ease;
          position: relative;
          overflow: hidden;
}

.progress-fill::after {
          content: '';
          position: absolute;
          top: 0;
          left: 0;
          right: 0;
          bottom: 0;
          background: linear-gradient(90deg, transparent 0%, rgba(255, 255, 255, 0.3) 50%, transparent 100%);
          animation: shimmer 2s infinite;
}

@keyframes shimmer {
          0% {
                    transform: translateX(-100%);
          }
          100% {
                    transform: translateX(100%);
          }
}

.progress-text {
          color: rgba(255, 255, 255, 0.8);
          font-size: 20px;
          font-weight: 600;
          text-transform: uppercase;
          letter-spacing: 1px;
}

.join-button {
          background-color: #fff;
          color: #000;
          border: none;
          padding: 18px 50px;
          font-size: 20px;
          font-weight: bold;
          cursor: pointer;
          text-transform: uppercase;
          border-radius: 5px;
          transition: all 0.3s ease;
          font-family: 'Manrope', sans-serif;
          letter-spacing: 1px;
          position: relative;
          overflow: hidden;
}

.join-button::before {
          content: '';
          position: absolute;
          top: 50%;
          left: 50%;
          width: 0;
          height: 0;
          border-radius: 50%;
          background: rgba(0, 0, 0, 0.1);
          transform: translate(-50%, -50%);
          transition: width 0.6s, height 0.6s;
}

.join-button:hover::before {
          width: 300px;
          height: 300px;
}

.join-button:hover {
          background-color: #ccc;
          transform: translateY(-2px);
          box-shadow: 0 10px 25px rgba(255, 255, 255, 0.2);
}

.join-button:active {
          transform: translateY(0);
}

.faq-section {
          grid-column: 1 / -1;
          padding: 100px 0;
          background-color: #000;
          position: relative;
          overflow: hidden;
}

.faq-section::before {
          content: '';
          position: absolute;
          top: 0;
          left: 0;
          right: 0;
          bottom: 0;
          background: radial-gradient(circle at 50% 50%, rgba(255, 255, 255, 0.02) 0%, transparent 70%);
          pointer-events: none;
}

.faq-content {
          grid-column: 2;
          max-width: 1200px;
          margin: 0 auto;
          padding: 0 80px;
          position: relative;
          z-index: 1;
}

.faq-title {
          color: #fff;
          font-size: 42px;
          font-weight: bold;
          text-align: center;
          margin-bottom: 60px;
          text-transform: uppercase;
}

.faq-list {
          display: flex;
          flex-direction: column;
          gap: 20px;
          max-width: 900px;
          margin: 0 auto;
}

.faq-item {
          background: linear-gradient(135deg, rgba(255, 255, 255, 0.05) 0%, rgba(255, 255, 255, 0.02) 100%);
          border: 1px solid rgba(255, 255, 255, 0.1);
          border-radius: 16px;
          overflow: hidden;
          transition: all 0.3s ease;
}

.faq-item:hover {
          border-color: rgba(255, 255, 255, 0.2);
}

.faq-item.active {
          border-color: rgba(255, 255, 255, 0.3);
}

.faq-question {
          width: 100%;
          background: transparent;
          border: none;
          color: #fff;
          font-size: 20px;
          font-weight: 600;
          text-align: left;
          padding: 25px 30px;
          cursor: pointer;
          display: flex;
          justify-content: space-between;
          align-items: center;
          gap: 20px;
          font-family: 'Manrope', sans-serif;
          text-transform: uppercase;
          letter-spacing: 0.5px;
          transition: all 0.3s ease;
}

.faq-question:hover {
          color: rgba(255, 255, 255, 0.9);
}

.faq-icon {
          font-size: 32px;
          font-weight: 300;
          color: rgba(255, 255, 255, 0.6);
          transition: all 0.3s ease;
          flex-shrink: 0;
          width: 32px;
          height: 32px;
          display: flex;
          align-items: center;
          justify-content: center;
}

.faq-item.active .faq-icon {
          transform: rotate(45deg);
          color: #fff;
}

.faq-answer {
          max-height: 0;
          overflow: hidden;
          transition: max-height 0.4s ease, padding 0.4s ease;
          padding: 0 30px;
}

.faq-item.active .faq-answer {
          max-height: 500px;
          padding: 0 30px 25px 30px;
}

.faq-answer p {
          color: rgba(255, 255, 255, 0.7);
          font-size: 16px;
          line-height: 1.8;
          margin: 0;
          padding-top: 10px;
}

.main-footer {
          grid-column: 1 / -1;
          background-color: #000;
          border-top: 1px solid rgba(255, 255, 255, 0.1);
          padding: 40px 0;
}

.footer-content {
          grid-column: 2;
          max-width: 1200px;
          margin: 0 auto;
          padding: 0 80px;
          display: flex;
          justify-content: space-between;
          align-items: center;
}

.footer-left {
          display: flex;
          align-items: center;
          gap: 15px;
}

.footer-logo {
          width: 40px;
          height: 40px;
          object-fit: contain;
}

.footer-text {
          color: #fff;
          font-size: 24px;
          font-weight: bold;
          text-transform: uppercase;
}

.footer-center {
          flex: 1;
          text-align: center;
}

.footer-copyright {
          color: rgba(255, 255, 255, 0.6);
          font-size: 14px;
          margin: 0;
}

.footer-right {
          display: flex;
          align-items: center;
}

.footer-join-button {
          background-color: #fff;
          color: #000;
          border: none;
          padding: 12px 30px;
          font-size: 16px;
          font-weight: bold;
          cursor: pointer;
          text-transform: uppercase;
          border-radius: 5px;
          transition: all 0.3s ease;
          font-family: 'Manrope', sans-serif;
}

.footer-join-button:hover {
          background-color: #ccc;
          transform: translateY(-2px);
}

.footer-join-button:active {
          transform: translateY(0);
}

@media (max-width: 1000px) {
          .hero-content {
                    flex-direction: column;
          }
          
          .overlay-content {
                    position: relative;
                    top: auto;
                    left: auto;
                    transform: none;
                    order: 1;
                    padding: 40px 20px;
                    z-index: auto;
                    max-width: 100%;
          }
          
          .hero-image {
                    order: 2;
          }
          
          .grid-container {
                    grid-template-columns: 1fr;
          }
          
          .main-header {
                    padding: 15px 0;
          }
          
          .header-content {
                    grid-column: 1;
                    padding: 0 20px;
          }
          
          .header-logo {
                    width: 30px;
                    height: 30px;
          }
          
          .header-text {
                    font-size: 18px;
          }
          
          .header-claim-button {
                    padding: 10px 20px;
                    font-size: 14px;
          }
          
          .images-container {
                    padding-left: 20px;
                    padding-right: 20px;
                    width: 100%;
                    box-sizing: border-box;
          }
          
          .hero-image {
                    width: 100%;
                    height: auto;
                    max-width: 100%;
          }
          
          .main-title {
                    font-size: 32px;
                    line-height: 1.2;
          }
          
          .main-title br {
                    display: block;
          }
          
          .subtitle {
                    font-size: 18px;
                    line-height: 1.4;
          }
          
          .subtitle br {
                    display: none;
          }
          
          .claim-button {
                    padding: 12px 30px;
                    font-size: 16px;
          }
          
          .instructions-section {
                    padding: 60px 0;
          }
          
          .instructions-content {
                    grid-column: 1;
                    padding: 0 20px;
                    max-width: 100%;
          }
          
          .instructions-title {
                    font-size: 28px;
                    margin-bottom: 40px;
          }
          
          .instructions-grid {
                    display: grid;
                    grid-template-columns: 1fr;
                    gap: 20px;
                    overflow-x: visible;
                    padding-bottom: 0;
          }
          
          .instruction-card {
                    padding: 30px 20px;
                    min-width: auto;
                    width: 100%;
          }
          
          .card-number {
                    font-size: 36px;
                    top: 10px;
                    right: 15px;
          }
          
          .card-title {
                    font-size: 20px;
          }
          
          .card-description {
                    font-size: 14px;
          }
          
          .progress-section {
                    padding: 60px 0;
          }
          
          .progress-content {
                    grid-column: 1;
                    padding: 0 20px;
                    max-width: 100%;
          }
          
          .progress-title {
                    font-size: 28px;
                    margin-bottom: 40px;
          }
          
          .progress-stats {
                    grid-template-columns: 1fr;
                    gap: 20px;
                    margin-bottom: 40px;
          }
          
          .stat-item {
                    padding: 30px 20px;
          }
          
          .stat-value {
                    font-size: 42px;
          }
          
          .stat-label {
                    font-size: 16px;
          }
          
          .progress-bar-container {
                    margin-bottom: 40px;
          }
          
          .progress-text {
                    font-size: 18px;
          }
          
          .join-button {
                    padding: 15px 40px;
                    font-size: 18px;
                    width: 100%;
                    max-width: 300px;
          }
          
          .faq-section {
                    padding: 60px 0;
          }
          
          .faq-content {
                    grid-column: 1;
                    padding: 0 20px;
                    max-width: 100%;
          }
          
          .faq-title {
                    font-size: 28px;
                    margin-bottom: 40px;
          }
          
          .faq-list {
                    gap: 15px;
          }
          
          .faq-question {
                    font-size: 18px;
                    padding: 20px;
          }
          
          .faq-icon {
                    font-size: 28px;
                    width: 28px;
                    height: 28px;
          }
          
          .faq-answer {
                    padding: 0 20px;
          }
          
          .faq-item.active .faq-answer {
                    padding: 0 20px 20px 20px;
          }
          
          .faq-answer p {
                    font-size: 14px;
                    line-height: 1.6;
          }
          
          .main-footer {
                    padding: 30px 0;
          }
          
          .footer-content {
                    grid-column: 1;
                    padding: 0 20px;
                    flex-direction: column;
                    gap: 25px;
                    text-align: center;
          }
          
          .footer-left {
                    justify-content: center;
          }
          
          .footer-logo {
                    width: 35px;
                    height: 35px;
          }
          
          .footer-text {
                    font-size: 20px;
          }
          
          .footer-center {
                    order: 3;
          }
          
          .footer-copyright {
                    font-size: 12px;
          }
          
          .footer-right {
                    order: 2;
                    justify-content: center;
          }
          
          .footer-join-button {
                    padding: 12px 30px;
                    font-size: 14px;
                    width: 100%;
                    max-width: 250px;
          }
}


