/* m71.homes core stylesheet - prefix s56f- */
/* Color palette: #2D2D2D | #AFEEEE | #E9967A | #66CDAA | #FA8072 */

:root{
  --s56f-bg:#2D2D2D;
  --s56f-bg-alt:#1f1f1f;
  --s56f-text:#AFEEEE;
  --s56f-accent:#E9967A;
  --s56f-primary:#66CDAA;
  --s56f-hot:#FA8072;
  --s56f-card:#262626;
  --s56f-border:#3a3a3a;
  --s56f-muted:#9a9a9a;
}

*{box-sizing:border-box;margin:0;padding:0;}
html{font-size:62.5%;}
body{
  font-family:'Segoe UI','Noto Sans Bengali',sans-serif;
  background:var(--s56f-bg);
  color:var(--s56f-text);
  line-height:1.5rem;
  font-size:1.5rem;
  -webkit-font-smoothing:antialiased;
  overflow-x:hidden;
}
a{color:var(--s56f-primary);text-decoration:none;}
img{max-width:100%;display:block;}

/* ===== Header ===== */
.s56f-header{
  position:fixed;top:0;left:0;right:0;z-index:1000;
  background:rgba(31,31,31,0.96);
  backdrop-filter:blur(8px);
  border-bottom:1px solid var(--s56f-border);
  display:flex;align-items:center;justify-content:space-between;
  padding:0.6rem 1rem;height:5.2rem;
}
.s56f-logo{display:flex;align-items:center;gap:0.6rem;}
.s56f-logo img{width:2.8rem;height:2.8rem;border-radius:0.5rem;}
.s56f-logo-text{font-size:1.7rem;font-weight:700;color:var(--s56f-text);}
.s56f-logo-text span{color:var(--s56f-primary);}
.s56f-header-actions{display:flex;align-items:center;gap:0.5rem;}
.s56f-btn{
  border:none;border-radius:0.8rem;padding:0.7rem 1.4rem;
  font-size:1.3rem;font-weight:700;cursor:pointer;
  transition:transform .15s ease,opacity .15s ease;
}
.s56f-btn:active{transform:scale(0.95);}
.s56f-btn-register{background:var(--s56f-hot);color:#fff;}
.s56f-btn-login{background:var(--s56f-primary);color:#1f1f1f;}
.s56f-menu-toggle{
  background:transparent;border:none;color:var(--s56f-text);
  font-size:2.2rem;cursor:pointer;padding:0.4rem 0.6rem;
}

/* ===== Mobile menu ===== */
.s56f-mobile-menu{
  position:fixed;top:5.2rem;left:0;right:0;z-index:9999;
  background:var(--s56f-bg-alt);
  border-bottom:1px solid var(--s56f-border);
  transform:translateY(-150%);transition:transform .3s ease;
  padding:1rem;
}
.s56f-mobile-menu.s56f-open{transform:translateY(0);}
.s56f-mobile-menu a{
  display:block;padding:1rem;border-bottom:1px solid var(--s56f-border);
  color:var(--s56f-text);font-size:1.4rem;
}
.s56f-mobile-menu a:last-child{border-bottom:none;}

/* ===== Layout ===== */
.s56f-main{padding-top:5.2rem;}
.s56f-container{max-width:430px;margin:0 auto;padding:0 1rem;}
.s56f-section{padding:1.6rem 0;}
.s56f-section h2{
  font-size:1.7rem;color:var(--s56f-text);margin-bottom:1rem;
  border-left:4px solid var(--s56f-primary);padding-left:0.8rem;
}
.s56f-section h3{font-size:1.4rem;color:var(--s56f-accent);margin:0.8rem 0 0.6rem;}
.s56f-section p{color:var(--s56f-text);margin-bottom:0.8rem;font-size:1.35rem;}

/* ===== Hero / Carousel ===== */
.s56f-carousel{
  position:relative;border-radius:1rem;overflow:hidden;
  margin-bottom:1.2rem;
}
.s56f-slides{display:flex;overflow:hidden;border-radius:1rem;}
.s56f-slide{flex:0 0 100%;position:relative;}
.s56f-slide img{width:100%;height:auto;cursor:pointer;}
.s56f-slide-caption{
  position:absolute;left:0;right:0;bottom:0;
  background:linear-gradient(transparent,rgba(0,0,0,0.7));
  padding:1rem;color:#fff;font-size:1.3rem;font-weight:600;
}
.s56f-dots{display:flex;justify-content:center;gap:0.5rem;margin-top:0.6rem;}
.s56f-dot{
  width:0.8rem;height:0.8rem;border-radius:50%;
  background:var(--s56f-border);cursor:pointer;border:none;
}
.s56f-dot.s56f-active{background:var(--s56f-primary);}

/* ===== Promo banner ===== */
.s56f-promo{
  background:linear-gradient(135deg,var(--s56f-primary),var(--s56f-hot));
  color:#fff;border-radius:1rem;padding:1.2rem;margin-bottom:1.2rem;
  display:flex;align-items:center;justify-content:space-between;gap:0.8rem;
}
.s56f-promo-text{font-size:1.3rem;font-weight:600;flex:1;}
.s56f-promo-btn{
  background:#fff;color:var(--s56f-bg);border:none;
  padding:0.7rem 1.2rem;border-radius:0.7rem;font-weight:700;font-size:1.25rem;
  cursor:pointer;
}

/* ===== Game grid ===== */
.s56f-cat-title{
  display:flex;align-items:center;gap:0.6rem;
  font-size:1.6rem;font-weight:700;color:var(--s56f-text);
  margin:1.4rem 0 0.8rem;
}
.s56f-cat-title i{color:var(--s56f-hot);font-size:1.8rem;}
.s56f-grid{
  display:grid;grid-template-columns:repeat(3,1fr);gap:0.7rem;
}
.s56f-game-card{
  background:var(--s56f-card);border:1px solid var(--s56f-border);
  border-radius:0.8rem;overflow:hidden;cursor:pointer;
  transition:transform .15s ease,border-color .15s ease;
}
.s56f-game-card:active{transform:scale(0.96);border-color:var(--s56f-primary);}
.s56f-game-card img{width:100%;aspect-ratio:1;object-fit:cover;}
.s56f-game-name{
  padding:0.5rem;font-size:1.05rem;text-align:center;
  color:var(--s56f-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
}

/* ===== Info cards / modules ===== */
.s56f-card{
  background:var(--s56f-card);border:1px solid var(--s56f-border);
  border-radius:1rem;padding:1.2rem;margin-bottom:1rem;
}
.s56f-card-grid{
  display:grid;grid-template-columns:repeat(2,1fr);gap:0.8rem;
}
.s56f-mini-card{
  background:var(--s56f-bg-alt);border-radius:0.8rem;padding:1rem;
  text-align:center;
}
.s56f-mini-card i{font-size:2.2rem;color:var(--s56f-primary);margin-bottom:0.4rem;}
.s56f-mini-card h4{font-size:1.2rem;color:var(--s56f-text);margin-bottom:0.3rem;}
.s56f-mini-card p{font-size:1.05rem;color:var(--s56f-muted);}

/* ===== Testimonials ===== */
.s56f-testimonial{
  background:var(--s56f-card);border-left:3px solid var(--s56f-accent);
  padding:1rem;border-radius:0.6rem;margin-bottom:0.8rem;
}
.s56f-testimonial p{font-size:1.25rem;color:var(--s56f-text);font-style:italic;}
.s56f-testimonial .s56f-author{font-size:1.1rem;color:var(--s56f-primary);margin-top:0.4rem;}

/* ===== Payment / winners ===== */
.s56f-chip-row{display:flex;flex-wrap:wrap;gap:0.5rem;}
.s56f-chip{
  background:var(--s56f-bg-alt);border:1px solid var(--s56f-border);
  border-radius:2rem;padding:0.5rem 1rem;font-size:1.1rem;color:var(--s56f-text);
}
.s56f-winner{
  display:flex;justify-content:space-between;align-items:center;
  background:var(--s56f-bg-alt);padding:0.7rem 1rem;border-radius:0.6rem;
  margin-bottom:0.5rem;font-size:1.2rem;
}
.s56f-winner .s56f-amount{color:var(--s56f-hot);font-weight:700;}

/* ===== CTA ===== */
.s56f-cta{
  background:linear-gradient(135deg,var(--s56f-hot),var(--s56f-accent));
  color:#fff;border-radius:1rem;padding:1.6rem;text-align:center;margin:1.2rem 0;
}
.s56f-cta h3{font-size:1.6rem;color:#fff;margin-bottom:0.5rem;}
.s56f-cta p{font-size:1.25rem;color:#fff;margin-bottom:1rem;}
.s56f-cta .s56f-btn{
  background:#fff;color:var(--s56f-bg);padding:0.9rem 2rem;font-size:1.4rem;
}

/* ===== Inline promo link ===== */
.s56f-promo-link{
  color:var(--s56f-hot);font-weight:700;cursor:pointer;
  border-bottom:1px dashed var(--s56f-hot);
}

/* ===== Help / review page modules ===== */
.s56f-hero-panel{
  background:linear-gradient(135deg,rgba(102,205,170,.18),rgba(250,128,114,.14));
  border:1px solid var(--s56f-border);border-radius:1.2rem;padding:1.4rem;margin:1rem 0;
}
.s56f-hero-panel h1{font-size:1.9rem;line-height:2.4rem;color:var(--s56f-text);margin-bottom:.8rem;}
.s56f-hero-panel p{font-size:1.35rem;line-height:2rem;}
.s56f-step-list{counter-reset:s56f-step;display:grid;gap:.8rem;}
.s56f-step{position:relative;background:var(--s56f-card);border:1px solid var(--s56f-border);border-radius:1rem;padding:1rem 1rem 1rem 4rem;}
.s56f-step:before{counter-increment:s56f-step;content:counter(s56f-step);position:absolute;left:1rem;top:1rem;width:2.2rem;height:2.2rem;border-radius:50%;background:var(--s56f-primary);color:#1f1f1f;display:flex;align-items:center;justify-content:center;font-weight:800;}
.s56f-note{border-left:4px solid var(--s56f-hot);background:rgba(250,128,114,.1);padding:1rem;border-radius:.8rem;margin:.8rem 0;}
.s56f-faq-item{background:var(--s56f-card);border:1px solid var(--s56f-border);border-radius:1rem;padding:1rem;margin-bottom:.8rem;}
.s56f-faq-item h3{display:flex;gap:.6rem;align-items:center;}
.s56f-rating{display:flex;align-items:center;gap:.4rem;color:var(--s56f-accent);font-size:1.5rem;margin:.4rem 0;}
.s56f-score-card{background:var(--s56f-bg-alt);border:1px solid var(--s56f-border);border-radius:1rem;padding:1rem;display:flex;justify-content:space-between;align-items:center;margin:.7rem 0;}
.s56f-score-card strong{color:var(--s56f-hot);font-size:1.8rem;}

/* ===== Footer ===== */
.s56f-footer{
  background:var(--s56f-bg-alt);border-top:1px solid var(--s56f-border);
  padding:1.6rem 1rem 9rem;
}
.s56f-footer-brand{font-size:1.25rem;color:var(--s56f-text);margin-bottom:1rem;line-height:1.6;}
.s56f-footer-links{
  display:grid;grid-template-columns:repeat(2,1fr);gap:0.6rem;margin-bottom:1rem;
}
.s56f-footer-links a{
  color:var(--s56f-primary);font-size:1.15rem;padding:0.4rem 0;
}
.s56f-footer-promos{display:flex;flex-wrap:wrap;gap:0.5rem;margin-bottom:1rem;}
.s56f-footer-promos button{
  background:var(--s56f-hot);color:#fff;border:none;border-radius:0.6rem;
  padding:0.5rem 0.9rem;font-size:1.1rem;font-weight:600;cursor:pointer;
}
.s56f-footer-copy{
  font-size:1.1rem;color:var(--s56f-muted);text-align:center;border-top:1px solid var(--s56f-border);padding-top:0.8rem;
}

/* ===== Mobile bottom nav ===== */
.s56f-bottom-nav{
  position:fixed;bottom:0;left:0;right:0;z-index:1000;
  background:rgba(31,31,31,0.98);
  border-top:1px solid var(--s56f-border);
  display:flex;justify-content:space-around;align-items:center;
  height:6rem;padding:0.4rem 0;
}
.s56f-bottom-nav button{
  background:transparent;border:none;color:var(--s56f-text);
  display:flex;flex-direction:column;align-items:center;justify-content:center;
  min-width:6rem;min-height:5.2rem;cursor:pointer;
  font-size:1rem;gap:0.2rem;transition:color .15s ease,transform .15s ease;
}
.s56f-bottom-nav button i{font-size:2.2rem;}
.s56f-bottom-nav button:active{transform:scale(0.92);}
.s56f-bottom-nav button.s56f-active{color:var(--s56f-primary);}
.s56f-bottom-nav .s56f-badge{
  position:absolute;top:0.3rem;right:1.6rem;
  background:var(--s56f-hot);color:#fff;border-radius:1rem;
  font-size:0.9rem;padding:0 0.4rem;min-width:1.4rem;text-align:center;
}

/* ===== Responsive ===== */
@media (min-width:769px){
  .s56f-bottom-nav{display:none;}
  .s56f-container{max-width:760px;}
  .s56f-grid{grid-template-columns:repeat(5,1fr);}
  .s56f-card-grid{grid-template-columns:repeat(4,1fr);}
  .s56f-footer{padding-bottom:2rem;}
  .s56f-menu-toggle{display:none;}
}
@media (max-width:768px){
  .s56f-main{padding-bottom:7rem;}
}
@media (max-width:380px){
  .s56f-grid{grid-template-columns:repeat(2,1fr);}
  .s56f-logo-text{font-size:1.4rem;}
}
