/* =========================================================
   taya.homes - design.css
   Prefix: pg87-
   Palette: #4A4A4A | #BF360C | #6C757D | #C0C0C0 | #2E4057
   Mobile-first HTML5 casino homepage
   ========================================================= */

:root{
  --pg87-bg-dark:#2E4057;
  --pg87-bg-mid:#4A4A4A;
  --pg87-accent:#BF360C;
  --pg87-muted:#6C757D;
  --pg87-silver:#C0C0C0;
  --pg87-ink:#0f1620;
  --pg87-paper:#f5f3ef;
  --pg87-line:rgba(192,192,192,.18);
  --pg87-shadow:0 6px 22px rgba(0,0,0,.32);
  --pg87-radius:14px;
  --pg87-max:430px;
}

*{box-sizing:border-box;margin:0;padding:0;-webkit-tap-highlight-color:transparent;}
html{scroll-behavior:smooth;font-size:62.5%;}
body{
  font-family:"Segoe UI","Helvetica Neue",Roboto,Arial,sans-serif;
  background:linear-gradient(180deg,var(--pg87-bg-dark) 0%,var(--pg87-bg-mid) 100%);
  color:var(--pg87-paper);
  line-height:1.5;
  min-height:100vh;
  font-size:1.6rem;
  overflow-x:hidden;
}
a{color:inherit;text-decoration:none;}
img{max-width:100%;display:block;}
ul{list-style:none;}

/* ---------- App shell ---------- */
.pg87-shell{
  width:100%;
  max-width:430px;
  margin:0 auto;
  background:var(--pg87-bg-dark);
  position:relative;
  min-height:100vh;
  box-shadow:0 0 60px rgba(0,0,0,.5);
  overflow:hidden;
}

/* ---------- Header ---------- */
.pg87-header{
  position:sticky;top:0;z-index:1000;
  display:flex;align-items:center;justify-content:space-between;
  padding:10px 14px;
  background:rgba(46,64,87,.92);
  backdrop-filter:blur(10px);
  border-bottom:1px solid var(--pg87-line);
}
.pg87-brand{display:flex;align-items:center;gap:10px;}
.pg87-logo{
  width:38px;height:38px;border-radius:10px;
  background:linear-gradient(135deg,var(--pg87-accent),#ff7a3d);
  display:grid;place-items:center;color:#fff;
  font-weight:800;font-size:1.8rem;
  box-shadow:0 3px 10px rgba(191,54,12,.5);
}
.pg87-brand b{font-size:1.8rem;color:#fff;letter-spacing:.4px;}
.pg87-brand span{font-size:1.1rem;color:var(--pg87-silver);display:block;}
.pg87-head-actions{display:flex;gap:8px;align-items:center;}
.pg87-btn{
  border:0;border-radius:10px;padding:9px 16px;
  font-size:1.35rem;font-weight:700;cursor:pointer;
  transition:transform .15s ease,box-shadow .15s ease,opacity .2s ease;
}
.pg87-btn:active{transform:scale(.94);}
.pg87-btn-login{
  background:transparent;color:var(--pg87-silver);
  border:1px solid var(--pg87-silver);
}
.pg87-btn-register{
  background:linear-gradient(135deg,var(--pg87-accent),#ff7a3d);
  color:#fff;box-shadow:0 4px 12px rgba(191,54,12,.5);
}
.pg87-icon-btn{
  width:38px;height:38px;border-radius:10px;
  display:grid;place-items:center;
  background:rgba(255,255,255,.06);color:#fff;font-size:1.9rem;
  border:1px solid var(--pg87-line);cursor:pointer;
}

/* ---------- Hero / Carousel ---------- */
.pg87-hero{
  position:relative;
  margin:12px;
  border-radius:18px;overflow:hidden;
  box-shadow:var(--pg87-shadow);
  background:#1a2738;
}
.pg87-slides{display:flex;overflow:hidden;scroll-snap-type:x mandatory;scroll-behavior:smooth;}
.pg87-slide{
  flex:0 0 100%;scroll-snap-align:center;
  position:relative;min-height:200px;
}
.pg87-slide img{width:100%;height:200px;object-fit:cover;}
.pg87-slide-body{
  position:absolute;inset:0;
  background:linear-gradient(90deg,rgba(15,22,32,.85) 0%,rgba(15,22,32,.25) 70%,transparent 100%);
  display:flex;flex-direction:column;justify-content:center;gap:8px;
  padding:18px 20px;
}
.pg87-slide-tag{
  display:inline-block;width:fit-content;padding:4px 10px;border-radius:20px;
  background:var(--pg87-accent);color:#fff;font-size:1.1rem;font-weight:700;
}
.pg87-slide h1,.pg87-slide h2{color:#fff;font-size:2.2rem;line-height:1.2;}
.pg87-slide p{color:var(--pg87-silver);font-size:1.25rem;max-width:80%;}
.pg87-hero-cta{
  margin-top:6px;display:flex;gap:8px;
}
.pg87-hero-cta .pg87-btn{padding:9px 18px;}
.pg87-dots{
  position:absolute;bottom:8px;left:0;right:0;
  display:flex;justify-content:center;gap:6px;
}
.pg87-dot{width:7px;height:7px;border-radius:50%;background:rgba(255,255,255,.35);cursor:pointer;}
.pg87-dot.active{background:var(--pg87-accent);width:20px;border-radius:6px;}

/* ---------- Section ---------- */
.pg87-section{padding:18px 12px 6px;}
.pg87-section-head{
  display:flex;align-items:center;justify-content:space-between;
  margin-bottom:12px;
}
.pg87-section-title{
  display:flex;align-items:center;gap:8px;
  color:#fff;font-size:1.7rem;font-weight:800;
}
.pg87-section-title .material-symbols-outlined{font-size:2rem;color:var(--pg87-accent);}
.pg87-section-link{color:var(--pg87-silver);font-size:1.2rem;}

/* ---------- Category chips ---------- */
.pg87-chips{
  display:flex;gap:8px;overflow-x:auto;padding:4px 12px 8px;
  scrollbar-width:none;
}
.pg87-chips::-webkit-scrollbar{display:none;}
.pg87-chip{
  flex:0 0 auto;padding:7px 14px;border-radius:30px;
  background:rgba(255,255,255,.06);color:var(--pg87-silver);
  font-size:1.25rem;font-weight:600;border:1px solid var(--pg87-line);
  cursor:pointer;white-space:nowrap;
}
.pg87-chip.active{
  background:var(--pg87-accent);color:#fff;border-color:transparent;
  box-shadow:0 3px 10px rgba(191,54,12,.45);
}

/* ---------- Game grid ---------- */
.pg87-grid{
  display:grid;grid-template-columns:repeat(3,1fr);gap:10px;
}
.pg87-card{
  position:relative;border-radius:12px;overflow:hidden;
  background:#1a2738;border:1px solid var(--pg87-line);
  cursor:pointer;transition:transform .18s ease,box-shadow .18s ease;
}
.pg87-card:hover{transform:translateY(-3px);box-shadow:var(--pg87-shadow);}
.pg87-card-img{aspect-ratio:1/1;background:#0f1620;}
.pg87-card-img img{width:100%;height:100%;object-fit:cover;}
.pg87-card-name{
  padding:6px 8px;font-size:1.15rem;color:var(--pg87-paper);
  text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
}
.pg87-card-badge{
  position:absolute;top:6px;left:6px;
  background:var(--pg87-accent);color:#fff;
  font-size:1rem;font-weight:700;padding:2px 6px;border-radius:6px;
}
.pg87-card-play{
  position:absolute;inset:0;background:rgba(15,22,32,.55);
  display:flex;align-items:center;justify-content:center;
  opacity:0;transition:opacity .2s ease;
}
.pg87-card:hover .pg87-card-play{opacity:1;}
.pg87-card-play span{
  background:var(--pg87-accent);color:#fff;font-weight:700;
  padding:6px 14px;border-radius:20px;font-size:1.2rem;
}

/* ---------- Featured / promo ---------- */
.pg87-feature{
  margin:14px 12px;border-radius:16px;overflow:hidden;
  background:linear-gradient(135deg,#3a1d0a,#7a2c0e);
  padding:16px;display:flex;gap:12px;align-items:center;
  box-shadow:var(--pg87-shadow);border:1px solid rgba(255,122,61,.3);
}
.pg87-feature-icon{
  width:56px;height:56px;border-radius:14px;flex:0 0 auto;
  background:rgba(255,255,255,.1);display:grid;place-items:center;
  color:#ffd9b0;font-size:2.6rem;
}
.pg87-feature-text h3{color:#fff;font-size:1.5rem;margin-bottom:4px;}
.pg87-feature-text p{color:#f3d0bb;font-size:1.2rem;}
.pg87-feature .pg87-btn{margin-left:auto;}

/* ---------- SEO content ---------- */
.pg87-content{
  padding:14px 14px 6px;
}
.pg87-content h2{
  color:#fff;font-size:1.8rem;margin:14px 0 8px;
  border-left:4px solid var(--pg87-accent);padding-left:10px;
}
.pg87-content h3{color:var(--pg87-silver);font-size:1.4rem;margin:12px 0 6px;}
.pg87-content p{color:#d6dde3;font-size:1.3rem;margin-bottom:10px;}
.pg87-content ul{margin:6px 0 12px 6px;}
.pg87-content li{
  color:#cfd6dd;font-size:1.25rem;padding:4px 0 4px 18px;position:relative;
}
.pg87-content li::before{
  content:"";position:absolute;left:0;top:11px;width:6px;height:6px;border-radius:50%;
  background:var(--pg87-accent);
}
.pg87-content a{color:#ffb98a;text-decoration:underline;}
.pg87-content strong{color:#fff;}

/* ---------- FAQ ---------- */
.pg87-faq{padding:6px 14px;}
.pg87-faq-item{
  background:rgba(255,255,255,.04);border:1px solid var(--pg87-line);
  border-radius:10px;margin-bottom:8px;overflow:hidden;
}
.pg87-faq-q{
  display:flex;justify-content:space-between;align-items:center;gap:10px;
  padding:12px 14px;cursor:pointer;color:#fff;font-weight:600;font-size:1.3rem;
}
.pg87-faq-q i{transition:transform .25s ease;color:var(--pg87-accent);}
.pg87-faq-item.open .pg87-faq-q i{transform:rotate(45deg);}
.pg87-faq-a{
  max-height:0;overflow:hidden;transition:max-height .3s ease;
  color:#cfd6dd;font-size:1.22rem;padding:0 14px;
}
.pg87-faq-item.open .pg87-faq-a{max-height:280px;padding:0 14px 12px;}

/* ---------- Footer ---------- */
.pg87-footer{
  margin-top:14px;padding:20px 14px 24px;
  background:#0f1620;border-top:1px solid var(--pg87-line);
}
.pg87-footer-cols{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:16px;}
.pg87-footer h4{color:#fff;font-size:1.3rem;margin-bottom:8px;}
.pg87-footer li{margin-bottom:5px;}
.pg87-footer a{color:var(--pg87-silver);font-size:1.2rem;}
.pg87-footer a:hover{color:#ffb98a;}
.pg87-footer-bottom{
  text-align:center;padding-top:12px;border-top:1px solid var(--pg87-line);
  color:var(--pg87-muted);font-size:1.1rem;line-height:1.6;
}

/* ---------- Bottom nav ---------- */
.pg87-bottomnav{
  position:fixed;left:50%;transform:translateX(-50%);
  bottom:0;width:100%;max-width:430px;z-index:1000;
  display:flex;justify-content:space-around;align-items:stretch;
  background:rgba(15,22,32,.97);
  backdrop-filter:blur(12px);
  border-top:1px solid var(--pg87-line);
  height:62px;
}
.pg87-navbtn{
  flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;
  gap:2px;color:var(--pg87-silver);cursor:pointer;
  font-size:1.05rem;font-weight:600;
  transition:color .18s ease,transform .18s ease;
  position:relative;
}
.pg87-navbtn i,.pg87-navbtn .material-symbols-outlined{font-size:2.2rem;}
.pg87-navbtn.active{color:var(--pg87-accent);}
.pg87-navbtn:active{transform:scale(.9);}
.pg87-navbtn.pg87-navbtn-promo{
  background:linear-gradient(180deg,transparent,rgba(191,54,12,.18));
  color:#ffb98a;
}
.pg87-navbtn.pg87-navbtn-cta{
  background:linear-gradient(135deg,var(--pg87-accent),#ff7a3d);
  color:#fff;border-radius:30px 30px 0 0;margin-top:-12px;
  height:74px;flex:0 0 18%;
  box-shadow:0 -4px 14px rgba(191,54,12,.5);
}

/* ---------- Mobile menu (drawer) ---------- */
.pg87-menu-overlay{
  position:fixed;inset:0;background:rgba(0,0,0,.6);
  opacity:0;pointer-events:none;transition:opacity .25s ease;z-index:9998;
}
.pg87-menu-overlay.open{opacity:1;pointer-events:auto;}
.pg87-menu{
  position:fixed;top:0;right:-86%;width:86%;max-width:360px;height:100vh;
  background:var(--pg87-bg-mid);z-index:9999;
  transition:right .3s ease;padding:18px;overflow-y:auto;
  border-left:1px solid var(--pg87-line);
}
.pg87-menu.open{right:0;}
.pg87-menu-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px;}
.pg87-menu-head b{color:#fff;font-size:1.7rem;}
.pg87-menu-section-title{
  color:var(--pg87-accent);font-size:1.2rem;font-weight:700;
  margin:16px 0 8px;text-transform:uppercase;letter-spacing:1px;
}
.pg87-menu a{
  display:block;padding:11px 10px;border-radius:8px;
  color:var(--pg87-silver);font-size:1.3rem;
  border-bottom:1px solid var(--pg87-line);
}
.pg87-menu a:hover{background:rgba(255,255,255,.05);color:#fff;}

/* ---------- Desktop ---------- */
@media (min-width:769px){
  .pg87-bottomnav{display:none;}
  body{padding-bottom:0;}
}
@media (max-width:768px){
  .pg87-shell{margin-bottom:62px;}
  main{padding-bottom:80px;}
}

/* ---------- Helpers ---------- */
.pg87-container{padding:0 12px;}
.pg87-text-accent{color:var(--pg87-accent);}
.pg87-banner-strip{
  margin:0 12px 4px;background:linear-gradient(90deg,#3a1d0a,#7a2c0e);
  color:#ffd9b0;font-size:1.15rem;font-weight:600;
  padding:8px 12px;border-radius:10px;display:flex;gap:8px;align-items:center;
}
.pg87-banner-strip i{color:#ffb98a;}
