:root{
  --bg:#070a12;
  --text:#eaf0ff;

  --bar1a:#1a0f3a;
  --bar1b:#1b2b8a;

  --navA:#2a2f93;
  --navB:#3a44b8;

  --cyan:#55e6ff;
  --line:rgba(255,255,255,.14);
  --shadow:0 18px 55px rgba(0,0,0,.45);
}

*{box-sizing:border-box}
body{
  margin:0;
  font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;
  background: var(--bg);
  color:var(--text);
}
a{color:inherit;text-decoration:none}
.gt-container{width:min(1200px, 94%);margin-inline:auto}

/* Sticky header */
.gt-header{
  position: sticky;
  top: 0;
  z-index: 999;
}

/* Top bar */
.gt-topbar{
  background:
    radial-gradient(900px 220px at 20% 0%, rgba(85,230,255,.20), transparent 60%),
    linear-gradient(90deg, var(--bar1a), var(--bar1b));
  border-bottom: 1px solid rgba(255,255,255,.10);
}
.gt-topbar__inner{
  height: 76px;
  display:flex;
  align-items:center;
  justify-content:space-between;
}

/* Logo */
.gt-logo{display:flex;align-items:center;gap:12px}
.gt-logo__mark{
  width:38px;height:38px;border-radius:999px;
  background: radial-gradient(circle at 30% 30%, rgba(85,230,255,.95), rgba(85,230,255,.18));
  box-shadow: 0 0 0 6px rgba(85,230,255,.10);
}
.gt-logo__text{
  font-weight:800;
  font-size: 30px;
  letter-spacing:.3px;
  text-transform: lowercase;
}
.gt-logo__text span{opacity:.85;font-weight:700}

/* Nav band */
.gt-navwrap{
  background: linear-gradient(90deg, rgba(42,47,147,.85), rgba(58,68,184,.85));
  backdrop-filter: blur(10px);
  border-bottom: 1px solid rgba(255,255,255,.14);
}
.gt-navwrap__inner{
  height: 66px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap: 14px;
}

/* Desktop nav */
.gt-nav{display:flex;align-items:center;gap:22px}
.gt-nav__link{
  display:flex;align-items:center;gap:10px;
  font-weight:800;
  letter-spacing:.8px;
  color: rgba(255,255,255,.92);
  padding: 10px 10px;
  border-radius: 12px;
  text-transform: uppercase;
}
.gt-nav__link:hover{ background: rgba(0,0,0,.18); }
.gt-nav__link.active{
  outline: 1px solid rgba(85,230,255,.28);
  background: rgba(0,0,0,.14);
}
.gt-ico{
  width:32px;height:32px;
  display:grid;place-items:center;
  color: var(--cyan);
  filter: drop-shadow(0 0 10px rgba(85,230,255,.22));
}

/* Search */
.gt-search{
  display:flex;
  align-items:center;
  gap:10px;
  width: min(520px, 42vw);
  padding: 10px 14px;
  border-radius: 14px;
  background: rgba(15,18,70,.55);
  border: 1px solid rgba(85,230,255,.20);
  box-shadow: 0 10px 30px rgba(0,0,0,.25) inset;
}
.gt-search__ico{color: var(--cyan)}
.gt-search__input{
  width:100%;
  border:none;
  outline:none;
  background: transparent;
  color: var(--text);
  font-size: 18px;
}
.gt-search__input::placeholder{color: rgba(234,240,255,.70)}

/* Burger (mobile) */
.gt-burger{
  display:none;
  width:46px;height:46px;
  border-radius: 14px;
  border: 1px solid rgba(255,255,255,.16);
  background: rgba(0,0,0,.15);
  cursor:pointer;
}
.gt-burger span{
  display:block;height:2px;
  background: rgba(255,255,255,.92);
  margin: 6px 12px;
  border-radius: 999px;
}

/* Mobile panel */
.gt-mobile{display:none}
.gt-mobile__panel{
  margin: 12px 0 16px;
  border-radius: 18px;
  border: 1px solid rgba(255,255,255,.14);
  background: rgba(10,12,40,.72);
  box-shadow: var(--shadow);
  overflow:hidden;
}
.gt-mobile__links{display:grid}
.gt-mobile__link{
  display:flex;align-items:center;gap:12px;
  padding: 14px 14px;
  border-top: 1px solid rgba(255,255,255,.10);
  font-weight: 800;
  letter-spacing: .8px;
  text-transform: uppercase;
}
.gt-mobile__link svg{color: var(--cyan)}
.gt-search--mobile{
  width:100%;
  border-radius: 0;
  border:none;
  border-bottom: 1px solid rgba(255,255,255,.10);
  background: rgba(0,0,0,.18);
}

/* Content */
.gt-main{ padding: 28px 0 70px; }

/* Responsive */
@media (max-width: 980px){
  .gt-search{ width: min(420px, 46vw); }
}
@media (max-width: 820px){
  .gt-nav, .gt-search{ display:none; }
  .gt-burger{ display:block; }
  .gt-mobile{ display:block; }

  /* THIS is what makes toggle work */
  .gt-mobile[data-open="0"]{ display:none; }
  .gt-mobile[data-open="1"]{ display:block; }
}


/* =========================
   HERO SECTION
========================= */

.hero{
  position: relative;
  width: 100%;
  min-height: 100vh;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;

  /* Casino background image */
  background-image: url("https://www.grandsierraresort.com/hubfs/casino/Slots-carousels-on-GSR-casino-floor_q085_1920x1080.jpg");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}

/* Dark overlay */
.hero__overlay{
  position: absolute;
  inset: 0;
  background:
    linear-gradient(
      to bottom,
      rgba(7,10,18,.65),
      rgba(7,10,18,.85)
    );
  z-index: 1;
}

/* Content */
.hero__content{
  position: relative;
  z-index: 2;
  max-width: 900px;
  padding: 20px;
}

/* Small top label */
.hero__tag{
  display: inline-block;
  margin-bottom: 18px;
  padding: 8px 16px;
  border-radius: 999px;
  font-weight: 700;
  letter-spacing: .6px;
  font-size: 14px;
  text-transform: uppercase;
  color: #55e6ff;
  background: rgba(85,230,255,.12);
  border: 1px solid rgba(85,230,255,.35);
}

/* Heading */
.hero__title{
  font-size: clamp(34px, 6vw, 64px);
  font-weight: 800;
  line-height: 1.1;
  margin: 0 0 20px;
}

.hero__title span{
  background: linear-gradient(90deg, #55e6ff, #7c7cff);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
}

/* Description */
.hero__text{
  font-size: clamp(16px, 2.2vw, 20px);
  line-height: 1.6;
  color: rgba(234,240,255,.85);
  margin-bottom: 30px;
}

/* Buttons */
.hero__actions{
  display: flex;
  gap: 14px;
  justify-content: center;
  flex-wrap: wrap;
}

.hero__btn{
  padding: 14px 26px;
  border-radius: 14px;
  font-size: 16px;
  font-weight: 800;
  letter-spacing: .5px;
  border: 1px solid rgba(255,255,255,.25);
  background: rgba(0,0,0,.35);
  color: #fff;
  transition: .25s ease;
}

.hero__btn:hover{
  transform: translateY(-2px);
  background: rgba(255,255,255,.08);
}

.hero__btn--primary{
  background: linear-gradient(90deg, #55e6ff, #7c7cff);
  color: #050814;
  border: none;
}

.hero__btn--primary:hover{
  filter: brightness(1.1);
}

/* Mobile tweaks */
@media (max-width: 600px){
  .hero{
    padding-top: 40px;
  }
}


/* =========================
   CASINO SECTION
========================= */

.casino-section{
  padding: 80px 0;
  background: linear-gradient(
    to bottom,
    rgba(7,10,18,0.95),
    rgba(7,10,18,1)
  );
}

/* Heading */
.casino-head{
  text-align: center;
  max-width: 700px;
  margin: 0 auto 50px;
}

.casino-title{
  font-size: clamp(28px, 4vw, 44px);
  font-weight: 800;
  margin-bottom: 12px;
}

.casino-subtitle{
  font-size: 18px;
  color: rgba(234,240,255,.75);
  line-height: 1.6;
}

/* Grid */
.casino-grid{
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 20px;
}

/* Card */
.casino-card{
  position: relative;
  overflow: hidden;
  border-radius: 18px;
  border: 1px solid rgba(255,255,255,.14);
  background: rgba(0,0,0,.4);
  box-shadow: 0 20px 40px rgba(0,0,0,.35);
  transition: transform .35s ease, box-shadow .35s ease;
}

.casino-card img{
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform .45s ease;
}

.casino-card::after{
  content:"";
  position:absolute;
  inset:0;
  background: linear-gradient(
    to top,
    rgba(0,0,0,.55),
    transparent 60%
  );
  opacity: 0;
  transition: .35s ease;
}

.casino-card:hover{
  transform: translateY(-6px);
  box-shadow: 0 30px 60px rgba(0,0,0,.55);
}

.casino-card:hover img{
  transform: scale(1.08);
}

.casino-card:hover::after{
  opacity: 1;
}

/* Button */
.casino-action{
  margin-top: 50px;
  text-align: center;
}

.casino-btn{
  display: inline-block;
  padding: 16px 36px;
  border-radius: 16px;
  font-weight: 800;
  letter-spacing: .6px;
  font-size: 16px;
  text-transform: uppercase;
  color: #050814;
  background: linear-gradient(90deg, #55e6ff, #7c7cff);
  transition: .25s ease;
}

.casino-btn:hover{
  transform: translateY(-2px);
  filter: brightness(1.15);
}

/* Responsive */
@media (max-width: 1024px){
  .casino-grid{
    grid-template-columns: repeat(3, 1fr);
  }
}

@media (max-width: 700px){
  .casino-grid{
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 420px){
  .casino-grid{
    grid-template-columns: 1fr;
  }
}


/* =========================
   POKER SECTION
========================= */

.poker-section{
  padding: 80px 0;
  background: linear-gradient(
    to bottom,
    rgba(5,18,12,0.95),
    rgba(7,10,18,1)
  );
}

/* Heading */
.poker-head{
  text-align: center;
  max-width: 700px;
  margin: 0 auto 50px;
}

.poker-title{
  font-size: clamp(28px, 4vw, 44px);
  font-weight: 800;
  margin-bottom: 12px;
}

.poker-subtitle{
  font-size: 18px;
  color: rgba(234,240,255,.75);
  line-height: 1.6;
}

/* Grid */
.poker-grid{
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 20px;
}

/* Card */
.poker-card{
  position: relative;
  overflow: hidden;
  border-radius: 18px;
  border: 1px solid rgba(255,255,255,.14);
  background: rgba(0,0,0,.4);
  box-shadow: 0 20px 40px rgba(0,0,0,.35);
  transition: transform .35s ease, box-shadow .35s ease;
}

.poker-card img{
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform .45s ease;
}

/* Green poker glow */
.poker-card::after{
  content:"";
  position:absolute;
  inset:0;
  background: linear-gradient(
    to top,
    rgba(0,80,40,.65),
    transparent 60%
  );
  opacity: 0;
  transition: .35s ease;
}

.poker-card:hover{
  transform: translateY(-6px);
  box-shadow: 0 30px 60px rgba(0,0,0,.55);
}

.poker-card:hover img{
  transform: scale(1.08);
}

.poker-card:hover::after{
  opacity: 1;
}

/* Button */
.poker-action{
  margin-top: 50px;
  text-align: center;
}

.poker-btn{
  display: inline-block;
  padding: 16px 36px;
  border-radius: 16px;
  font-weight: 800;
  letter-spacing: .6px;
  font-size: 16px;
  text-transform: uppercase;
  color: #03160c;
  background: linear-gradient(90deg, #38f9a5, #2ecc71);
  transition: .25s ease;
}

.poker-btn:hover{
  transform: translateY(-2px);
  filter: brightness(1.15);
}

/* Responsive */
@media (max-width: 1024px){
  .poker-grid{
    grid-template-columns: repeat(3, 1fr);
  }
}

@media (max-width: 700px){
  .poker-grid{
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 420px){
  .poker-grid{
    grid-template-columns: 1fr;
  }
}


/* =========================
   BLOG SECTION
========================= */

.blog-section{
  padding: 80px 0;
  background: linear-gradient(
    to bottom,
    rgba(7,10,18,1),
    rgba(10,12,30,1)
  );
}

/* Heading */
.blog-head{
  text-align: center;
  max-width: 700px;
  margin: 0 auto 50px;
}

.blog-title{
  font-size: clamp(28px, 4vw, 44px);
  font-weight: 800;
  margin-bottom: 12px;
}

.blog-subtitle{
  font-size: 18px;
  color: rgba(234,240,255,.75);
  line-height: 1.6;
}

/* Grid */
.blog-grid{
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 28px;
}

/* Card */
.blog-card{
  overflow: hidden;
  border-radius: 18px;
  background: rgba(0,0,0,.4);
  border: 1px solid rgba(255,255,255,.14);
  box-shadow: 0 20px 40px rgba(0,0,0,.35);
  transition: transform .35s ease, box-shadow .35s ease;
}

.blog-card img{
  width: 100%;
  height: 220px;
  object-fit: cover;
  display: block;
}

/* Content */
.blog-content{
  padding: 22px;
}

.blog-content h3{
  font-size: 20px;
  margin: 0 0 10px;
  line-height: 1.3;
}

.blog-content p{
  font-size: 15px;
  line-height: 1.6;
  color: rgba(234,240,255,.8);
  margin-bottom: 18px;
}

/* Button */
.blog-btn{
  display: inline-block;
  padding: 12px 22px;
  border-radius: 12px;
  font-weight: 700;
  font-size: 14px;
  letter-spacing: .4px;
  text-transform: uppercase;
  color: #050814;
  background: linear-gradient(90deg, #55e6ff, #7c7cff);
  transition: .25s ease;
}

.blog-btn:hover{
  transform: translateY(-2px);
  filter: brightness(1.15);
}

/* Hover */
.blog-card:hover{
  transform: translateY(-6px);
  box-shadow: 0 30px 60px rgba(0,0,0,.55);
}
.blog-grid{
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 28px;
}

@media (max-width: 1024px){
  .blog-grid{ grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 600px){
  .blog-grid{ grid-template-columns: 1fr; }
}


/* Responsive */
@media (max-width: 1024px){
  .blog-grid{
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 600px){
  .blog-grid{
    grid-template-columns: 1fr;
  }
}


/* =========================
   FOOTER
========================= */

.site-footer{
  background: linear-gradient(
    to bottom,
    rgba(7,10,18,1),
    rgba(3,5,10,1)
  );
  border-top: 1px solid rgba(255,255,255,.12);
  margin-top: 80px;
}

/* Top area */
.footer-top{
  padding: 70px 0 50px;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 40px;
}

/* Footer columns */
.footer-col{}

.footer-title{
  font-size: 18px;
  font-weight: 800;
  margin-bottom: 18px;
}

/* Logo */
.footer-logo{
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 16px;
}

.footer-logo__mark{
  width: 34px;
  height: 34px;
  border-radius: 999px;
  background: radial-gradient(
    circle at 30% 30%,
    #55e6ff,
    rgba(85,230,255,.25)
  );
  box-shadow: 0 0 0 6px rgba(85,230,255,.12);
}

.footer-logo__text{
  font-weight: 800;
  font-size: 24px;
  text-transform: lowercase;
}
.footer-logo__text span{
  opacity: .8;
}

/* Text */
.footer-desc{
  font-size: 15px;
  line-height: 1.7;
  color: rgba(234,240,255,.75);
}

/* Links */
.footer-links{
  list-style: none;
  padding: 0;
  margin: 0;
}

.footer-links li{
  margin-bottom: 12px;
}

.footer-links a{
  color: rgba(234,240,255,.75);
  font-size: 15px;
  transition: .2s ease;
}

.footer-links a:hover{
  color: #55e6ff;
  padding-left: 4px;
}

/* Newsletter */
.footer-form{
  display: flex;
  gap: 10px;
  margin-top: 14px;
}

.footer-form input{
  flex: 1;
  padding: 12px 14px;
  border-radius: 12px;
  border: 1px solid rgba(255,255,255,.18);
  background: rgba(0,0,0,.35);
  color: #fff;
  outline: none;
}

.footer-form button{
  padding: 12px 18px;
  border-radius: 12px;
  font-weight: 700;
  border: none;
  cursor: pointer;
  background: linear-gradient(90deg, #55e6ff, #7c7cff);
  color: #050814;
  transition: .25s ease;
}

.footer-form button:hover{
  filter: brightness(1.15);
}

/* Bottom bar */
.footer-bottom{
  border-top: 1px solid rgba(255,255,255,.12);
  background: rgba(0,0,0,.35);
}

.footer-bottom__inner{
  padding: 18px 0;
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-size: 14px;
  color: rgba(234,240,255,.7);
}

.footer-note{
  font-weight: 700;
  color: #55e6ff;
}

/* Responsive */
@media (max-width: 1024px){
  .footer-top{
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 520px){
  .footer-top{
    grid-template-columns: 1fr;
  }

  .footer-bottom__inner{
    flex-direction: column;
    gap: 8px;
    text-align: center;
  }
}



/* =========================
   CASINO PAGE STYLES
========================= */

.page-hero{
  position: relative;
  min-height: 62vh;
  display:flex;
  align-items:center;
  justify-content:center;
  text-align:center;
  overflow:hidden;
}
.page-hero--casino{
  background-image: url("/assets/img/casino-bg.jpg");
  background-size: cover;
  background-position: center;
  background-repeat:no-repeat;
}
.page-hero__overlay{
  position:absolute;
  inset:0;
  background: linear-gradient(to bottom, rgba(7,10,18,.60), rgba(7,10,18,.92));
}
.page-hero__content{ position:relative; z-index:2; padding: 48px 0; }
.page-hero__tag{
  display:inline-block;
  padding: 8px 16px;
  border-radius: 999px;
  font-weight: 800;
  letter-spacing:.6px;
  text-transform:uppercase;
  font-size: 13px;
  color: #55e6ff;
  background: rgba(85,230,255,.12);
  border: 1px solid rgba(85,230,255,.35);
  margin-bottom: 16px;
}
.page-hero__title{
  margin:0 0 14px;
  font-size: clamp(32px, 5vw, 58px);
  font-weight: 900;
}
.page-hero__text{
  margin: 0 auto 22px;
  max-width: 70ch;
  color: rgba(234,240,255,.84);
  line-height:1.65;
  font-size: 18px;
}
.page-hero__actions{
  display:flex;
  gap: 12px;
  justify-content:center;
  flex-wrap:wrap;
}
.page-hero__btn{
  padding: 14px 22px;
  border-radius: 14px;
  font-weight: 900;
  letter-spacing:.5px;
  border: 1px solid rgba(255,255,255,.22);
  background: rgba(0,0,0,.30);
  transition:.25s ease;
}
.page-hero__btn:hover{ transform: translateY(-2px); background: rgba(255,255,255,.08); }
.page-hero__btn--primary{
  border:none;
  color:#050814;
  background: linear-gradient(90deg, #55e6ff, #7c7cff);
}

/* Section headings */
.sec-head{
  text-align:center;
  max-width: 760px;
  margin: 0 auto 44px;
}
.sec-title{
  font-size: clamp(26px, 4vw, 42px);
  font-weight: 900;
  margin:0 0 10px;
}
.sec-sub{
  margin:0;
  color: rgba(234,240,255,.75);
  line-height:1.6;
  font-size: 17px;
}

/* Categories */
.cat-section{
  padding: 70px 0;
  background: rgba(7,10,18,1);
}
.cat-grid{
  display:grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 18px;
}
.cat-card{
  display:flex;
  gap: 14px;
  align-items:flex-start;
  padding: 18px;
  border-radius: 18px;
  background: rgba(0,0,0,.35);
  border: 1px solid rgba(255,255,255,.12);
  box-shadow: 0 18px 40px rgba(0,0,0,.30);
  transition: .25s ease;
}
.cat-card:hover{
  transform: translateY(-4px);
  border-color: rgba(85,230,255,.22);
}
.cat-ico{
  width:46px; height:46px;
  border-radius: 14px;
  display:grid;
  place-items:center;
  background: rgba(85,230,255,.10);
  border: 1px solid rgba(85,230,255,.22);
  color: #55e6ff;
}
.cat-card h3{ margin: 2px 0 6px; font-size: 18px; }
.cat-card p{ margin:0; color: rgba(234,240,255,.72); line-height:1.5; font-size: 14px; }

/* Games */
.games-section{
  padding: 80px 0 130px;
  background: linear-gradient(to bottom, rgba(7,10,18,1), rgba(10,12,30,1));
}
.games-grid{
  display:grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 22px;
}
.game-card{
  overflow:hidden;
  border-radius: 18px;
  border: 1px solid rgba(255,255,255,.14);
  background: rgba(0,0,0,.40);
  box-shadow: 0 20px 45px rgba(0,0,0,.35);
  transition: .25s ease;
}
.game-card:hover{
  transform: translateY(-6px);
  box-shadow: 0 35px 70px rgba(0,0,0,.55);
}
.game-thumb img{
  width:100%;
  height: 210px;
  object-fit: cover;
}
.game-body{ padding: 18px; }
.game-body h3{ margin: 0 0 8px; font-size: 18px; }
.game-body p{ margin: 0 0 14px; color: rgba(234,240,255,.75); font-size: 14px; line-height:1.5; }
.game-actions{ display:flex; gap: 10px; flex-wrap: wrap; }

.game-btn{
  display:inline-block;
  padding: 11px 16px;
  border-radius: 12px;
  font-weight: 900;
  letter-spacing:.4px;
  font-size: 13px;
  text-transform: uppercase;
  border: 1px solid rgba(255,255,255,.18);
  background: rgba(0,0,0,.25);
  transition: .2s ease;
}
.game-btn:hover{ transform: translateY(-2px); background: rgba(255,255,255,.08); }
.game-btn--primary{
  border:none;
  color:#050814;
  background: linear-gradient(90deg, #55e6ff, #7c7cff);
}

/* Strip CTA */
.strip-section{
  padding: 70px 0;
  background: radial-gradient(900px 240px at 20% 10%, rgba(85,230,255,.16), transparent 60%),
              linear-gradient(90deg, rgba(42,47,147,.65), rgba(58,68,184,.65));
  border-top: 1px solid rgba(255,255,255,.10);
  border-bottom: 1px solid rgba(255,255,255,.10);
}
.strip-inner{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap: 18px;
  flex-wrap: wrap;
}
.strip-title{ margin:0 0 8px; font-size: 30px; font-weight: 900; }
.strip-text{ margin:0; color: rgba(234,240,255,.78); line-height:1.6; }
.strip-btn{
  display:inline-block;
  padding: 14px 18px;
  border-radius: 14px;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing:.5px;
  color:#050814;
  background: linear-gradient(90deg, #55e6ff, #7c7cff);
  transition:.2s ease;
}
.strip-btn:hover{ transform: translateY(-2px); filter: brightness(1.15); }

/* Classic cards */
.mini-section{
  padding: 80px 0 130px;
  background: rgba(7,10,18,1);
}
.classic-grid{
  display:grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 18px;
}
.classic-card{
  padding: 22px;
  border-radius: 18px;
  background: rgba(0,0,0,.35);
  border: 1px solid rgba(255,255,255,.12);
}
.classic-card h3{ margin:0 0 10px; font-size: 20px; }
.classic-card p{ margin:0 0 14px; color: rgba(234,240,255,.75); line-height:1.6; }
.classic-link{
  font-weight: 900;
  color: #55e6ff;
}
.classic-link:hover{ text-decoration: underline; }

/* Responsive */
@media (max-width: 1024px){
  .cat-grid{ grid-template-columns: repeat(2, 1fr); }
  .games-grid{ grid-template-columns: repeat(2, 1fr); }
  .classic-grid{ grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 600px){
  .games-grid{ grid-template-columns: 1fr; }
  .classic-grid{ grid-template-columns: 1fr; }
}



/* =========================
   POKER PAGE OVERRIDES
========================= */

/* Poker hero background */
.page-hero--poker{
  background-image: url("/assets/img/poker-bg.jpg");
  background-size: cover;
  background-position: center;
  background-repeat:no-repeat;
}

/* Poker themed section backgrounds */
.games-section--poker{
  background: linear-gradient(to bottom, rgba(5,18,12,1), rgba(10,12,30,1));
}
.strip-section--poker{
  background: radial-gradient(900px 240px at 20% 10%, rgba(56,249,165,.14), transparent 60%),
              linear-gradient(90deg, rgba(10,50,30,.55), rgba(15,18,70,.55));
}

/* Poker green buttons */
.game-btn--poker{
  background: linear-gradient(90deg, #38f9a5, #2ecc71);
  color: #03160c;
}
.strip-btn--poker{
  background: linear-gradient(90deg, #38f9a5, #2ecc71);
  color: #03160c;
}
.mini-section--poker{
  background: rgba(6,14,10,1);
}
.classic-card--poker{
  border-color: rgba(56,249,165,.18);
}
.classic-card--poker .classic-link{
  color: #38f9a5;
}
