body {
  margin:0;
  font-family:sans-serif;
  background:#f5f6fa;
}

/* HEADER */
.header {
  display:flex;
  justify-content:space-between;
  align-items:center;
  max-width:1200px;
  margin:auto;
  padding:10px 20px;
}

.header img {
  height:40px;
}

/* HERO */
.hero {
  padding:0;
  background:none;
  height:auto;
}

.overlay {
  background:none;
  padding:0;
}

.hero-banner{
  width:100%;
  height:auto;
  display:block;
}

/* .btn {
  background:#ff4b2b;
  color:white;
  padding:10px 20px;
  border-radius:5px;
  text-decoration:none;
}

*/

/* SECTION */
.section {
  padding:25px 20px;
}

.section:nth-child(even){
  background:#f9fbff;
}

.section:nth-child(odd){
  background:#ffffff;
}

/* GRID */
.grid {
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
}

.card {
  background:#ffffff;
  border:1px solid #dfe6e9;
  border-radius:10px;
  padding:15px;
  margin:10px;
  flex:1 1 220px;
  max-width:250px;
  text-align:center;
  transition:0.3s;
}

.card h3{
  background:#5c6bc0;
  color:white;
  padding:8px;
  border-radius:6px;
  font-size:16px;
  margin:10px 0;
}

.card p{
  font-size:14px;
  color:#333;
}

.card:hover{
  transform:translateY(-8px);
  box-shadow:0 5px 15px rgba(0,0,0,0.15);
}

/* STEPS */
.steps {
  display:flex;
  justify-content:center;
  gap:15px;
  flex-wrap:wrap;
}

.step{
  background:#eef4ff;
  border:1px solid #cfe0ff;
  padding:12px 18px;
  border-radius:30px;
  font-weight:600;
}

.step::after{
  content:"➜";
  margin-left:10px;
  color:#5c6bc0;
}


/* FAQ */
.faq_section{
  background:#ffffff;
  padding:40px 0;
}

.faq-accordion{
  max-width:900px;
  margin:auto;
}

.faq-item{
  border:1px solid #eee;
  border-radius:8px;
  overflow:hidden;
}

.faq-question{
  width:100%;
  text-align:left;
  padding:15px;
  font-size:16px;
  font-weight:600;
  background:#f9fbff;
  border:none;
  cursor:pointer;
  display:flex;
  justify-content:space-between;
  align-items:center;
  transition:0.3s;
}

.faq-question span{
  font-size:20px;
  transition:0.3s;
}

.faq-answer{
  max-height:0;
  overflow:hidden;
  padding:0 15px;
  font-size:14px;
  color:#555;
  transition:max-height 0.4s ease;
}

.faq-item.active .faq-answer{
  max-height:500px;
  padding:10px 15px;
}

.faq-item.active .faq-question span{
  transform:rotate(45deg);
}

.faq-question:hover{
  background:#eef4ff;
}

.faq-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:20px;
}

@media(max-width:768px){
  .faq-grid{
    grid-template-columns:1fr;
  }
}


/* FOOTER */

.footer {
  background:linear-gradient(135deg, #1a237e, #3949ab);
  color:#fff;
  margin-top:30px;
}

.footer-container {
  display:flex;
  justify-content:space-between;
  align-items:center;
  max-width:1200px;
  margin:auto;
  padding:15px 20px;
  flex-wrap:wrap;
}

.footer-left,
.footer-right {
  font-size:14px;
}

.footer-right a {
  color:#fff;
  text-decoration:none;
}

.footer-right a:hover {
  text-decoration:underline;
}

/* SOCIAL ICONS */
.footer-center {
  display:flex;
  gap:12px;
}

.social-icon {
  width:36px;
  height:36px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:50%;
  background:rgba(255,255,255,0.1);
  transition:0.3s;
}

.social-icon svg {
  width:18px;
  height:18px;
  fill:#fff;
}

/* HOVER COLORS */
.social-icon.fb:hover { background:#1877f2; }
.social-icon.wa:hover { background:#25D366; }
.social-icon.yt:hover { background:#ff0000; }
.social-icon.tg:hover { background:#0088cc; }

.social-icon:hover {
  transform:scale(1.1);
}

/* MOBILE */
@media(max-width:600px){
  .footer-container{
    flex-direction:column;
    gap:10px;
    text-align:center;
  }
}


/* Gift Image */
.card img {
  width:100%;
  height:120px;
  object-fit:contain;
}


/* Click Highlight */
.card.active {
  border:3px solid #00ffcc;
  transform:scale(1.05);
}

/* Terms Margin */
.terms-content {
  max-width:900px;
  margin:auto;
  text-align:left;
  padding:20px;
}

.terms-box {
  background:#fafafa;
}

pre {
  white-space:pre-wrap;
  font-family:inherit;
  line-height:1.7;
}

/* Page container */
.container {
  max-width:1200px;
  margin:auto;
  padding:0 20px;
}

.unlock {
  display:block;
  margin-top:10px;
  color:#00ffcc;
  font-weight:bold;
  animation:pop 0.5s ease;
}

@keyframes pop {
  0% {transform:scale(0);}
  100% {transform:scale(1);}
}

.whatsapp {
  position:fixed;
  bottom:20px;
  right:20px;
  background:#25D366;
  color:white;
  font-size:24px;
  padding:12px 15px;
  border-radius:50%;
  text-decoration:none;
  box-shadow:0 5px 15px rgba(0,0,0,0.3);
}

.marquee {
  overflow:hidden;
  position:relative;
}

.marquee-content {
  display:flex;
  width:max-content;
  gap:20px;
  animation:scroll 40s linear infinite;
}

@keyframes scroll {
  0% {
    transform:translateX(0);
  }
  100% {
    transform:translateX(-50%);
  }
}

.winner-grid {
  display:flex;
  gap:20px;
  justify-content:center;
  flex-wrap:wrap;
}

.winner {
  background:white;
  padding:12px;
  border-radius:10px;
  width:200px;
  min-width:200px;
  text-align:center;
  box-shadow:0 5px 15px rgba(0,0,0,0.1);
  overflow:hidden;
}

.winner-name {
  font-weight:700;
  font-size:14px;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}

.winner-location,
.winner-gift,
.winner-itr {
  font-size:12px;
  overflow:hidden;
  text-overflow:ellipsis;
}

.winner-gift{
  color:#1b5e20;
  font-weight:700;
}

.winner-itr{
  color:#1976d2;
  font-weight:600;
}



.winner img {
  width:100%;
  height:200px;
  border-radius:8px;
  object-fit:cover;
}

.tnc_section {
  background:#f9fbff;
  padding:5px 0;
}

.tnc_section h3 {
  margin-top:20px;
  font-size:18px;
}

.tnc_section ul li {
  margin-bottom:10px;
  line-height:1.6;
}

.title-center{
  text-align:center;
  font-weight:700;
  margin-bottom:30px;
}

.winner:hover{
  transform:scale(1.05);
}

@media(max-width:480px){
  .card{
    flex:1 1 100%;
    max-width:100%;
  }

  .header{
    flex-direction:column;
    gap:10px;
  }

  .steps{
    flex-direction:column;
    align-items:center;
  }
}

.countdown-wrapper {
  display:flex;
  align-items:center;
  justify-content:center;
  gap:15px;
  background:linear-gradient(135deg, #1a237e, #3949ab);
  padding:15px 20px;
  border-radius:50px;
  margin:20px auto;
  max-width:1000px;
  flex-wrap:wrap;
  box-shadow:0 10px 25px rgba(0,0,0,0.2);
}

.countdown-box {
  background:#0d1333;
  color:#fff;
  padding:12px 18px;
  border-radius:12px;
  text-align:center;
  min-width:80px;
}

.countdown-box div {
  font-size:22px;
  font-weight:bold;
}

.countdown-box span {
  font-size:12px;
  opacity:0.8;
}

.countdown-btn {
  background:linear-gradient(135deg, #ff9800, #ff5722);
  color:#fff;
  padding:12px 20px;
  border-radius:30px;
  text-decoration:none;
  font-weight:600;
  transition:0.3s;
}

.countdown-btn:hover {
  transform:scale(1.05);
}

/* ICON ANIMATION */
@keyframes blink {
  0% {opacity:1;}
  50% {opacity:0.5;}
  100% {opacity:1;}
}


/* INNER BOX */
.offer-left-inner {
  display:flex;
  align-items:center;
  gap:10px;
  color:#fff;
}


/* ICON (big + highlighted) */
.timer-icon {
  font-size:28px;
  color:#ffeb3b;
  text-shadow:0 0 8px rgba(255,235,59,0.6);
}

/* TEXT STYLE */
.offer-text {
  letter-spacing:0.5px;
  line-height:1.1;
  font-weight:bold;
  font-size:14px;
}

.offer-text small {
  font-size:11px;
  letter-spacing:1px;
  opacity:0.8;
}

.countdown-box.left {
  display:flex;
  align-items:center;
  gap:12px;
  background:rgba(255,255,255,0.08);
  padding:10px 15px;
  border-radius:12px;
  border:1px solid rgba(255,255,255,0.15);
  color:#fff;
  font-weight:600;
  font-size:14px;
  position:relative;
}

.countdown-box.left::after {
  content:"";
  position:absolute;
  right:-10px;
  top:10%;
  height:80%;
  width:1px;
  background:rgba(255,255,255,0.3);
}

.countdown-box.left .timer-icon {
  font-size:40px !important;
}