/* =========================================================
   CasinoKompass777 – Stylesheet
   Dunkles Premium-Design · Schwarz/Dunkelblau · Gold
   ========================================================= */

:root{
  --bg:#070b16;
  --bg-2:#0b1124;
  --panel:#101a33;
  --panel-2:#0d1730;
  --line:rgba(212,175,55,.18);
  --line-soft:rgba(255,255,255,.07);
  --gold:#d4af37;
  --gold-lt:#f6dd8e;
  --gold-dk:#a9821f;
  --text:#eef2fb;
  --muted:#9aa4bd;
  --muted-2:#69718c;
  --green:#39d98a;
  --radius:16px;
  --shadow:0 18px 40px -18px rgba(0,0,0,.75);
  --shadow-gold:0 0 0 1px rgba(212,175,55,.35), 0 16px 40px -16px rgba(212,175,55,.35);
  --maxw:1180px;
  --ff-display:"Cinzel",Georgia,serif;
  --ff-body:"Inter",system-ui,-apple-system,Segoe UI,Roboto,sans-serif;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family:var(--ff-body);
  color:var(--text);
  background:
    radial-gradient(1100px 600px at 80% -10%,rgba(45,67,135,.35),transparent 60%),
    radial-gradient(900px 500px at -10% 10%,rgba(212,175,55,.10),transparent 55%),
    var(--bg);
  line-height:1.6;
  -webkit-font-smoothing:antialiased;
  min-height:100vh;
}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
.container{width:100%;max-width:var(--maxw);margin:0 auto;padding:0 20px}

/* ---------- Typography ---------- */
h1,h2,h3{font-family:var(--ff-display);font-weight:700;line-height:1.15;letter-spacing:.5px}
h1{font-size:clamp(1.9rem,4.5vw,3rem);margin:0 0 .4em}
h2{font-size:clamp(1.4rem,3vw,2rem);margin:0 0 .6em}
h3{font-size:1.15rem;margin:0 0 .4em}
p{margin:0 0 1em}
.gold{color:var(--gold)}
.eyebrow{
  font-family:var(--ff-body);font-weight:600;font-size:.78rem;
  letter-spacing:.22em;text-transform:uppercase;color:var(--gold);margin:0 0 .8em
}

/* ---------- Header ---------- */
.site-header{
  position:sticky;top:0;z-index:50;
  background:rgba(7,11,22,.82);
  backdrop-filter:blur(12px);
  border-bottom:1px solid var(--line);
}
.nav{display:flex;align-items:center;justify-content:space-between;height:68px;gap:16px}
.brand{display:flex;align-items:center;gap:10px;font-family:var(--ff-display);font-weight:700;font-size:1.18rem;letter-spacing:.5px}
.brand .mark{
  width:34px;height:34px;border-radius:9px;display:grid;place-items:center;
  background:linear-gradient(145deg,var(--gold-lt),var(--gold-dk));
  color:#1a1304;font-weight:800;font-size:.95rem;font-family:var(--ff-body);
  box-shadow:0 6px 16px -6px rgba(212,175,55,.7)
}
.brand b{color:var(--gold)}
.nav-links{display:flex;gap:26px;align-items:center}
.nav-links a{font-size:.92rem;color:var(--muted);font-weight:500;transition:color .2s}
.nav-links a:hover{color:var(--gold)}
.nav-toggle{display:none;background:none;border:0;color:var(--text);cursor:pointer;padding:8px}
.nav-toggle svg{width:26px;height:26px}

@media(max-width:860px){
  .nav-links{
    position:absolute;top:68px;left:0;right:0;flex-direction:column;gap:0;
    background:var(--bg-2);border-bottom:1px solid var(--line);
    max-height:0;overflow:hidden;transition:max-height .3s ease
  }
  .nav-links.open{max-height:340px}
  .nav-links a{padding:14px 20px;width:100%;border-top:1px solid var(--line-soft)}
  .nav-toggle{display:block}
}

/* ---------- Hero ---------- */
.hero{padding:64px 0 30px;position:relative}
.hero .lead{font-size:1.12rem;color:var(--muted);max-width:62ch}
.hero-stats{display:flex;flex-wrap:wrap;gap:14px;margin-top:26px}
.stat{
  background:linear-gradient(160deg,var(--panel),var(--panel-2));
  border:1px solid var(--line);border-radius:14px;padding:14px 20px;min-width:140px
}
.stat .num{font-family:var(--ff-display);font-size:1.5rem;color:var(--gold);line-height:1}
.stat .lbl{font-size:.8rem;color:var(--muted);margin-top:4px}

/* ---------- Casino list ---------- */
.list-head{display:flex;align-items:end;justify-content:space-between;gap:16px;margin:48px 0 22px;flex-wrap:wrap}
.list-head p{margin:0;color:var(--muted);font-size:.92rem}

.casino-list{display:flex;flex-direction:column;gap:16px}

.casino-card{
  position:relative;
  display:grid;
  grid-template-columns:auto minmax(0,1fr) auto;
  align-items:center;
  gap:22px;
  background:linear-gradient(160deg,var(--panel),var(--panel-2));
  border:1px solid var(--line-soft);
  border-radius:var(--radius);
  padding:22px 24px;
  box-shadow:var(--shadow);
  transition:transform .25s ease, box-shadow .25s ease, border-color .25s ease;
  overflow:hidden;
}
.casino-card::before{
  content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;
  background:linear-gradient(120deg,rgba(212,175,55,.06),transparent 38%);
  opacity:0;transition:opacity .25s
}
.casino-card:hover{transform:translateY(-3px);border-color:var(--line);box-shadow:var(--shadow-gold)}
.casino-card:hover::before{opacity:1}

.badge{
  position:absolute;top:0;left:0;z-index:2;
  font-size:.66rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;
  color:#1a1304;padding:5px 12px 5px 16px;
  background:linear-gradient(135deg,var(--gold-lt),var(--gold) 60%,var(--gold-dk));
  border-radius:var(--radius) 0 14px 0;
  box-shadow:0 4px 12px -4px rgba(212,175,55,.6)
}

.c-rankwrap{display:flex;align-items:center;gap:18px;padding-top:6px}
.c-rank{
  font-family:var(--ff-display);font-size:1.5rem;font-weight:700;color:var(--gold);
  width:30px;text-align:center;flex:none;text-shadow:0 2px 10px rgba(212,175,55,.3)
}
.c-logo{
  width:138px;height:100px;flex:none;border-radius:14px;
  background:radial-gradient(circle at 50% 40%,rgba(255,255,255,.07),rgba(0,0,0,.3));
  border:1px solid var(--line-soft);
  display:grid;place-items:center;padding:12px;overflow:hidden
}
.c-logo img{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;filter:drop-shadow(0 4px 10px rgba(0,0,0,.5))}

.c-center{text-align:center;min-width:0}
.c-name{font-family:var(--ff-display);font-size:1.32rem;font-weight:700;margin:0 0 6px}
.c-name a:hover{color:var(--gold)}
.c-bonus-label{font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;color:var(--muted-2);margin-bottom:3px}
.c-bonus{font-size:1.02rem;font-weight:700;color:var(--gold-lt);line-height:1.3}

.c-actions{display:flex;flex-direction:column;gap:10px;align-items:stretch;min-width:160px}

/* ---------- Buttons ---------- */
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:8px;
  font-family:var(--ff-body);font-weight:700;font-size:.92rem;letter-spacing:.02em;
  padding:12px 22px;border-radius:11px;cursor:pointer;border:1px solid transparent;
  transition:transform .18s ease, box-shadow .2s ease, background .2s, color .2s;
  text-align:center;white-space:nowrap
}
.btn-gold{
  background:linear-gradient(135deg,var(--gold-lt),var(--gold) 55%,var(--gold-dk));
  color:#1a1304;box-shadow:0 10px 22px -10px rgba(212,175,55,.7)
}
.btn-gold:hover{transform:translateY(-2px);box-shadow:0 14px 28px -10px rgba(212,175,55,.85)}
.btn-ghost{background:transparent;border-color:var(--line);color:var(--text)}
.btn-ghost:hover{border-color:var(--gold);color:var(--gold);transform:translateY(-2px)}
.btn-block{width:100%}
.btn-lg{padding:15px 30px;font-size:1rem}

@media(max-width:760px){
  .casino-card{grid-template-columns:1fr;gap:16px;padding:24px 18px 20px;text-align:center}
  .c-rankwrap{justify-content:center;padding-top:10px}
  .c-actions{flex-direction:row;min-width:0}
  .c-actions .btn{flex:1}
  .badge{font-size:.62rem;padding:5px 10px 5px 14px}
}
@media(max-width:420px){
  .c-actions{flex-direction:column}
}

/* ---------- Detail page ---------- */
.detail-hero{
  display:grid;grid-template-columns:auto 1fr;gap:30px;align-items:center;
  background:linear-gradient(160deg,var(--panel),var(--panel-2));
  border:1px solid var(--line);border-radius:20px;padding:32px;margin-top:30px;
  box-shadow:var(--shadow)
}
.detail-logo{
  width:170px;height:120px;flex:none;border-radius:16px;padding:14px;
  background:radial-gradient(circle at 50% 40%,rgba(255,255,255,.07),rgba(0,0,0,.3));
  border:1px solid var(--line-soft);display:grid;place-items:center
}
.detail-logo img{max-width:100%;max-height:100%;object-fit:contain;filter:drop-shadow(0 4px 10px rgba(0,0,0,.5))}
.detail-bonus{
  display:inline-block;margin:6px 0 18px;padding:10px 18px;border-radius:12px;
  background:rgba(212,175,55,.12);border:1px solid var(--line);
  color:var(--gold-lt);font-weight:700
}
.detail-bonus span{display:block;font-size:.7rem;letter-spacing:.16em;text-transform:uppercase;color:var(--muted-2);font-weight:600}
@media(max-width:680px){
  .detail-hero{grid-template-columns:1fr;text-align:center;padding:26px 20px}
  .detail-logo{margin:0 auto}
}

.review{margin:40px 0}
.review p{color:var(--muted);max-width:75ch}
.notice-soft{
  background:rgba(212,175,55,.07);border:1px dashed var(--line);
  border-radius:14px;padding:18px 22px;color:var(--muted)
}

/* ---------- Spec table (mobile friendly) ---------- */
.spec{margin:34px 0}
.spec-table{
  width:100%;border-collapse:separate;border-spacing:0;
  background:linear-gradient(160deg,var(--panel),var(--panel-2));
  border:1px solid var(--line);border-radius:16px;overflow:hidden
}
.spec-table tr{transition:background .15s}
.spec-table tr:hover{background:rgba(212,175,55,.05)}
.spec-table th,.spec-table td{padding:15px 20px;text-align:left;vertical-align:top;border-bottom:1px solid var(--line-soft);font-size:.95rem}
.spec-table tr:last-child th,.spec-table tr:last-child td{border-bottom:0}
.spec-table th{
  width:34%;color:var(--gold);font-family:var(--ff-body);font-weight:600;
  background:rgba(255,255,255,.015);white-space:nowrap
}
.spec-table td{color:var(--text)}
.yes{color:var(--green);font-weight:700}
.pill{display:inline-block;background:rgba(255,255,255,.05);border:1px solid var(--line-soft);border-radius:8px;padding:3px 9px;font-size:.82rem;margin:2px 4px 2px 0;color:var(--muted)}

/* Aufklappbare Anbieter-Liste */
.prov{margin:0}
.prov summary{
  cursor:pointer;list-style:none;display:inline-flex;align-items:center;gap:8px;
  color:var(--gold);font-weight:600;font-size:.92rem;padding:6px 0;user-select:none
}
.prov summary::-webkit-details-marker{display:none}
.prov summary::after{content:"▾";font-size:.8rem;transition:transform .2s}
.prov[open] summary::after{transform:rotate(180deg)}
.prov .pills{margin-top:12px}
.prov .count{
  background:rgba(212,175,55,.14);border:1px solid var(--line);border-radius:20px;
  padding:1px 9px;font-size:.78rem;color:var(--gold-lt)
}

@media(max-width:620px){
  .spec{margin-top:22px}
  .spec h2{font-size:1.2rem;margin-bottom:.5em}
  /* kompakte, strukturierte zweispaltige Tabelle */
  .spec-table{table-layout:fixed;width:100%}
  .spec-table th,.spec-table td{
    padding:9px 12px;font-size:.86rem;vertical-align:middle;line-height:1.4;
    overflow-wrap:break-word;word-break:normal
  }
  .spec-table th{
    width:40%;white-space:normal;font-size:.67rem;letter-spacing:.02em;
    text-transform:uppercase;color:var(--gold);line-height:1.3;vertical-align:middle;
    hyphens:auto;-webkit-hyphens:auto;
    background:rgba(0,0,0,.22);border-right:1px solid var(--line-soft)
  }
  .spec-table td{width:60%;hyphens:none;color:var(--text)}
  .spec-table tr:first-child th{border-top-left-radius:14px}
  .spec-table tr:last-child th{border-bottom-left-radius:14px}
  .spec-table tr:nth-child(even){background:rgba(255,255,255,.022)}
  .spec-table tr:hover{background:rgba(212,175,55,.05)}
  .prov summary{font-size:.86rem;flex-wrap:wrap}
  .prov .pill{font-size:.76rem;padding:2px 7px}
  .prov .count{font-size:.72rem}
}
@media(max-width:380px){
  .spec-table th,.spec-table td{padding:8px 9px;font-size:.82rem}
  .spec-table th{width:42%;font-size:.63rem}
  .spec-table td{width:58%}
}

/* ---------- Fakten-Raster (kompakte Übersicht) ---------- */
.facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-top:6px}
.fact{
  background:linear-gradient(160deg,var(--panel),var(--panel-2));
  border:1px solid var(--line-soft);border-radius:12px;
  padding:11px 14px;min-width:0;transition:border-color .2s
}
.fact:hover{border-color:var(--line)}
.fact-label{
  display:block;font-size:.62rem;font-weight:600;letter-spacing:.1em;
  text-transform:uppercase;color:var(--gold);margin-bottom:4px
}
.fact-val{display:block;font-size:.95rem;color:var(--text);line-height:1.4;overflow-wrap:break-word}
.fact-wide{grid-column:1 / -1}
.fact-accent{
  background:linear-gradient(135deg,rgba(212,175,55,.18),rgba(212,175,55,.04));
  border-color:var(--line)
}
.fact-accent .fact-label{color:var(--gold-lt)}
.fact-accent .fact-val{font-size:1.12rem;font-weight:700;color:var(--gold-lt)}
.fact .prov{margin:0}
.fact .prov summary{font-size:.9rem}
@media(min-width:560px){
  .facts{grid-template-columns:repeat(3,minmax(0,1fr));gap:11px}
}
@media(min-width:900px){
  .facts{grid-template-columns:repeat(4,minmax(0,1fr))}
  /* mittellange Felder auf dem Desktop nicht über die ganze Breite ziehen */
  .fact-lic,.fact-grp{grid-column:span 2}
}


.page{padding:36px 0 20px}
.prose{max-width:78ch}
.prose h2{margin-top:1.6em}
.prose h3{margin-top:1.4em;color:var(--gold-lt)}
.prose p,.prose li{color:var(--muted)}
.prose a{color:var(--gold);text-decoration:underline;text-underline-offset:3px}
.prose ul{padding-left:1.2em}
.prose li{margin-bottom:.5em}
.prose table{width:100%;border-collapse:collapse;margin:1em 0}
.prose td,.prose th{border:1px solid var(--line-soft);padding:10px 12px;text-align:left;font-size:.92rem}

.crumbs{font-size:.85rem;color:var(--muted-2);margin:24px 0 4px}
.crumbs a:hover{color:var(--gold)}
.crumbs span{margin:0 6px}

/* ---------- Age / disclaimer banner ---------- */
.topnote{
  background:linear-gradient(90deg,rgba(212,175,55,.12),rgba(212,175,55,.04));
  border-bottom:1px solid var(--line);
  font-size:.82rem;color:var(--muted);text-align:center;padding:8px 16px
}
.topnote b{color:var(--gold)}

/* ---------- Footer ---------- */
.site-footer{margin-top:70px;border-top:1px solid var(--line);background:var(--bg-2)}
.footer-grid{display:grid;grid-template-columns:1.6fr 1fr 1fr;gap:36px;padding:48px 0 30px}
.footer-grid h4{font-family:var(--ff-body);font-size:.82rem;letter-spacing:.14em;text-transform:uppercase;color:var(--gold);margin:0 0 14px}
.footer-grid a{display:block;color:var(--muted);font-size:.92rem;padding:5px 0;transition:color .2s}
.footer-grid a:hover{color:var(--gold)}
.footer-about p{color:var(--muted);font-size:.9rem;max-width:42ch}
.footer-bottom{border-top:1px solid var(--line-soft);padding:20px 0;display:flex;justify-content:space-between;gap:14px;flex-wrap:wrap;color:var(--muted-2);font-size:.82rem}
.age-chip{display:inline-grid;place-items:center;width:42px;height:42px;border-radius:50%;border:2px solid var(--gold);color:var(--gold);font-weight:800;font-size:.8rem;flex:none}
@media(max-width:760px){.footer-grid{grid-template-columns:1fr 1fr}.footer-about{grid-column:1/-1}}
@media(max-width:480px){.footer-grid{grid-template-columns:1fr}}

/* ---------- Cookie banner ---------- */
.cookie{
  position:fixed;left:16px;right:16px;bottom:16px;z-index:80;max-width:560px;margin:0 auto;
  background:linear-gradient(160deg,var(--panel),var(--panel-2));
  border:1px solid var(--line);border-radius:16px;padding:20px 22px;box-shadow:var(--shadow);
  display:none
}
.cookie.show{display:block;animation:rise .35s ease}
@keyframes rise{from{transform:translateY(16px);opacity:0}to{transform:translateY(0);opacity:1}}
.cookie p{font-size:.88rem;color:var(--muted);margin:0 0 14px}
.cookie .row{display:flex;gap:10px;flex-wrap:wrap}
.cookie .btn{padding:10px 18px;font-size:.86rem}

/* ---------- Misc ---------- */
.section-intro{color:var(--muted);max-width:72ch;margin-bottom:8px}
:focus-visible{outline:2px solid var(--gold);outline-offset:3px;border-radius:4px}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

/* ---------- SEO Content / Editorial ---------- */
.seo-content{margin:54px 0 10px}
.seo-content .prose{max-width:80ch}
.seo-content h2{margin-top:1.7em}
.seo-content h2:first-child{margin-top:0}
.content-cards{
  display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));
  gap:16px;margin:22px 0 8px
}
.content-card{
  background:linear-gradient(180deg,var(--panel),var(--panel-2));
  border:1px solid var(--line);border-radius:var(--radius);
  padding:20px 20px 18px;box-shadow:var(--shadow)
}
.content-card h3{color:var(--gold-lt);margin-bottom:.4em;font-size:1.02rem}
.content-card p{color:var(--muted);margin:0;font-size:.92rem}
.content-divider{height:1px;background:var(--line);border:0;margin:40px 0}

/* ---------- FAQ ---------- */
.faq{margin:30px 0 10px}
.faq-item{
  border:1px solid var(--line-soft);border-radius:14px;
  background:rgba(255,255,255,.018);margin-bottom:12px;overflow:hidden
}
.faq-item summary{
  cursor:pointer;list-style:none;padding:16px 20px;
  font-weight:600;color:var(--text);font-size:1rem;
  display:flex;justify-content:space-between;align-items:center;gap:14px
}
.faq-item summary::-webkit-details-marker{display:none}
.faq-item summary::after{
  content:"+";color:var(--gold);font-size:1.4rem;font-weight:700;
  transition:transform .2s;line-height:1
}
.faq-item[open] summary::after{transform:rotate(45deg)}
.faq-item summary:hover{color:var(--gold-lt)}
.faq-item .faq-a{padding:0 20px 18px;color:var(--muted);max-width:80ch}
.faq-item .faq-a p{margin:0}

/* ---------- Ratgeber im Baukasten-Design ---------- */
.guide-builder{margin-top:34px}
.guide-hero-card,
.guide-card{
  position:relative;
  background:linear-gradient(160deg,rgba(16,26,51,.92),rgba(13,23,48,.94));
  border:1px solid var(--line-soft);
  border-radius:var(--radius);
  box-shadow:var(--shadow);
  overflow:hidden;
}
.guide-hero-card::before,
.guide-card::before{
  content:"";position:absolute;inset:0;pointer-events:none;
  background:linear-gradient(120deg,rgba(212,175,55,.08),transparent 42%);
}
.guide-hero-card{padding:28px 30px;margin-bottom:18px;border-color:var(--line)}
.guide-hero-card h2{margin:0 0 12px;color:var(--text)}
.guide-hero-card p{max-width:90ch;color:var(--muted);margin:0}
.guide-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.guide-card{padding:24px 26px;transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease}
.guide-card:hover{transform:translateY(-3px);border-color:var(--line);box-shadow:var(--shadow-gold)}
.guide-card h3{color:var(--gold-lt);margin-bottom:12px;font-size:1.12rem}
.guide-card p{color:var(--muted);font-size:.94rem;margin-bottom:12px}
.guide-card p:last-child{margin-bottom:0}
.guide-card a{color:var(--gold);font-weight:700;text-decoration:underline;text-underline-offset:3px}
.guide-card-wide{grid-column:1 / -1}
@media(max-width:760px){
  .guide-grid{grid-template-columns:1fr}
  .guide-hero-card,.guide-card{padding:21px 18px}
}
/* Casino-Alternativen: 2 Karten nebeneinander */
.casino-alternativen-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 10px;
  max-width: 700px;
  margin: 20px auto 30px;
}

.casino-alternative-card {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;

  min-height: 65px;
  padding: 8px 6px;

  border-radius: 10px;
  background: linear-gradient(135deg, #f8dd7a, #c99b13);
  box-shadow: 0 4px 10px rgba(218, 174, 42, 0.25);

  color: #161616;
  text-decoration: none;
  text-align: center;
  box-sizing: border-box;
}

.casino-name {
  font-size: 14px;
  font-weight: 800;
  line-height: 1.1;
  margin-bottom: 3px;
}

.casino-linktext {
  font-size: 10px;
  font-weight: 600;
  line-height: 1.1;
}
@media (max-width: 600px) {
  .casino-alternativen-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 7px;
    margin: 15px 0 25px;
  }

  .casino-alternative-card {
    min-height: 58px;
    padding: 7px 4px;
    border-radius: 9px;
  }

  .casino-name {
    font-size: 13px;
  }

  .casino-linktext {
    font-size: 9px;
  }
}

.casino-linktext {
  display: block;
  font-size: 15px;
  font-weight: 600;
  line-height: 1.25;
}

/* Auch auf dem Handy bleiben die Karten untereinander */
@media (max-width: 600px) {

  .casino-alternativen-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
    margin: 20px 0 30px;
  }

  .casino-alternative-card {
    min-height: 78px;
    padding: 10px 5px;
    border-radius: 12px;
  }

  .casino-name {
    font-size: 15px;
    margin-bottom: 4px;
    line-height: 1.15;
  }

  .casino-linktext {
    font-size: 11px;
    line-height: 1.2;
  }
}
.casino-alternativen-grid {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 16px !important;
  max-width: 1100px !important;
  margin: 25px auto 40px !important;
}

.casino-box {
  display: grid !important;
  grid-template-columns: 42% 58% !important;
  min-height: 230px !important;
  padding: 16px !important;
  border-radius: 18px !important;
  background: #ffffff !important;
  color: #151515 !important;
  overflow: hidden !important;
  box-sizing: border-box !important;
}

.casino-box-left,
.casino-box-right {
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
}

.casino-box-left {
  align-items: center !important;
  padding-right: 10px !important;
}

.casino-box-right {
  align-items: flex-start !important;
  padding-left: 10px !important;
}

.casino-box-logo {
  display: block !important;
  width: 100% !important;
  max-width: 180px !important;
  height: 105px !important;
  object-fit: contain !important;
  padding: 10px !important;
  margin: 0 auto 12px !important;
  border-radius: 12px !important;
  background: #131820 !important;
  box-sizing: border-box !important;
}

.casino-test-link {
  display: block !important;
  color: #222222 !important;
  font-size: 16px !important;
  line-height: 1.2 !important;
  text-align: center !important;
  text-decoration: underline !important;
}

.casino-age {
  display: block !important;
  margin-top: 5px !important;
  color: #999999 !important;
  font-size: 12px !important;
}

.casino-bonus-title {
  display: block !important;
  margin-bottom: 8px !important;
  font-size: 17px !important;
  color: #222222 !important;
}

.casino-bonus {
  display: block !important;
  margin-bottom: 18px !important;
  font-size: 24px !important;
  line-height: 1.05 !important;
  color: #263d88 !important;
}

.casino-play-button {
  display: block !important;
  width: 100% !important;
  padding: 13px 8px !important;
  border-radius: 30px !important;
  background: #25bc2d !important;
  color: #ffffff !important;
  font-size: 18px !important;
  font-weight: 800 !important;
  text-align: center !important;
  text-decoration: none !important;
  box-sizing: border-box !important;
}

@media (max-width: 600px) {
  .casino-alternativen-grid {
    grid-template-columns: 1fr !important;
    gap: 12px !important;
    margin: 18px 0 28px !important;
  }

  .casino-box {
    grid-template-columns: 42% 58% !important;
    min-height: 190px !important;
    padding: 10px !important;
    border-radius: 14px !important;
  }

  .casino-box-logo {
    height: 85px !important;
    padding: 7px !important;
    margin-bottom: 8px !important;
  }

  .casino-test-link {
    font-size: 13px !important;
  }

  .casino-age {
    font-size: 10px !important;
  }

  .casino-bonus-title {
    font-size: 13px !important;
    margin-bottom: 5px !important;
  }

  .casino-bonus {
    font-size: 18px !important;
    margin-bottom: 12px !important;
  }

  .casino-play-button {
    padding: 11px 5px !important;
    font-size: 15px !important;
  }
}
@media (max-width:600px){

.casino-box{
min-height:110px !important;
padding:6px !important;
}

.casino-box-logo{
max-width:80px !important;
height:50px !important;
}

.casino-bonus-title{
font-size:11px !important;
}

.casino-bonus{
font-size:13px !important;
line-height:1.1 !important;
margin-bottom:6px !important;
min-height:30px !important;
}

.casino-play-button{
padding:6px !important;
font-size:12px !important;
}

}
/* =========================================
   CASINO-KARTEN – MOBILE DESIGN WIE NON-STICKY-SEITE
   ========================================= */

.casino-list {
  display: flex;
  flex-direction: column;
  gap: 22px;
  margin-top: 28px;
}

.casino-card {
  position: relative;
  display: grid;
  grid-template-columns: 190px minmax(260px, 1fr) 270px;
  align-items: center;
  gap: 24px;

  width: 100%;
  padding: 30px 26px;

  background:
    linear-gradient(
      135deg,
      rgba(31, 40, 70, 0.98),
      rgba(24, 31, 54, 0.98)
    );

  border: 1px solid rgba(255, 255, 255, 0.14);
  border-radius: 22px;

  box-shadow:
    0 18px 35px rgba(0, 0, 0, 0.28),
    inset 0 1px 0 rgba(255, 255, 255, 0.04);

  overflow: visible;
}

.casino-card:first-child {
  border-color: rgba(255, 204, 61, 0.65);
  box-shadow:
    0 18px 38px rgba(0, 0, 0, 0.32),
    0 0 24px rgba(255, 196, 41, 0.07);
}

.casino-card .badge {
  position: absolute;
  top: -17px;
  left: 22px;

  display: inline-flex;
  align-items: center;
  justify-content: center;

  min-height: 36px;
  padding: 7px 17px;

  background: linear-gradient(180deg, #ffdc64, #f5bd2e);
  color: #161616;

  border-radius: 10px;
  font-size: 0.84rem;
  font-weight: 800;
  letter-spacing: 0.04em;
  text-transform: uppercase;

  box-shadow: 0 7px 15px rgba(0, 0, 0, 0.24);
  z-index: 5;
}

.c-rankwrap {
  display: grid;
  grid-template-columns: 42px 1fr;
  align-items: center;
  justify-items: center;
  gap: 16px;
  min-width: 0;
}

.c-rank {
  color: #f7c83d;
  font-size: 2rem;
  font-weight: 800;
  line-height: 1;
}

.c-logo {
  display: flex;
  align-items: center;
  justify-content: center;

  width: 120px;
  height: 90px;
  min-width: 120px;

  background: transparent;
  border-radius: 12px;
  overflow: hidden;
}

.c-logo img,
.c-logo-img {
  display: block;
  width: 100%;
  max-width: 120px;
  height: 82px;
  object-fit: contain;
  object-position: center;
}

.c-center {
  min-width: 0;
  text-align: center;
}

.c-name {
  margin: 0 0 7px;
  font-family: "Cinzel", Georgia, serif;
  font-size: 1.75rem;
  line-height: 1.15;
}

.c-name a {
  color: #ffffff;
  text-decoration: none;
}

.c-name a:hover {
  color: #ffd04f;
}

.c-bonus-label {
  margin-bottom: 8px;
  color: #aeb5ca;
  font-size: 0.83rem;
  font-weight: 800;
  letter-spacing: 0.07em;
  text-transform: uppercase;
}

.c-bonus {
  color: #d2d7e5;
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.45;
}

.c-actions {
  display: grid;
  grid-template-columns: 1fr;
  gap: 12px;
}

.c-actions .btn {
  display: flex;
  align-items: center;
  justify-content: center;

  width: 100%;
  min-height: 58px;
  padding: 14px 18px;

  border-radius: 14px;
  font-size: 1rem;
  font-weight: 800;
  text-align: center;
  text-decoration: none;
}

.c-actions .btn-gold {
  background: linear-gradient(180deg, #ffdb62 0%, #ffc329 100%);
  color: #171717;
  border: 1px solid rgba(255, 220, 98, 0.85);

  box-shadow:
    0 10px 22px rgba(255, 185, 25, 0.16),
    inset 0 1px 0 rgba(255, 255, 255, 0.42);
}

.c-actions .btn-gold:hover {
  transform: translateY(-1px);
  filter: brightness(1.05);
}

.c-actions .btn-ghost {
  background: rgba(255, 255, 255, 0.015);
  color: #ffffff;
  border: 1px solid rgba(194, 201, 222, 0.3);
}

.c-actions .btn-ghost:hover {
  color: #ffd04f;
  border-color: rgba(255, 208, 79, 0.65);
}

/* Tablet */
@media (max-width: 560px) {

  .casino-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 8px !important;
  }

  .casino-card {
    padding: 9px !important;
    border-radius: 11px !important;
  }

  .logo-box {
    height: 48px !important;
    margin-bottom: 7px !important;
    padding: 6px !important;
  }

  .logo-box img {
    max-width: 90px !important;
    max-height: 34px !important;
  }

  .rank {
    top: 6px !important;
    right: 6px !important;
    min-width: 28px !important;
    padding: 3px 6px !important;
    font-size: 9px !important;
  }

  .casino-card h3 {
    padding-right: 28px !important;
    margin-bottom: 4px !important;
    font-size: 14px !important;
    line-height: 1.2 !important;
  }

  .bonus {
    min-height: 32px !important;
    margin-bottom: 5px !important;
    font-size: 10px !important;
    line-height: 1.25 !important;
  }

  .casino-card p {
    margin-bottom: 6px !important;
    font-size: 9px !important;
    line-height: 1.3 !important;
  }

  .features {
    gap: 2px !important;
    margin-bottom: 7px !important;
  }

  .features li {
    padding-left: 13px !important;
    font-size: 8px !important;
    line-height: 1.25 !important;
  }

  .strong-link {
    padding: 6px 4px !important;
    border-width: 1px !important;
    border-radius: 6px !important;
    font-size: 8px !important;
    line-height: 1.15 !important;
  }
}

/* Handy – wie auf deinem Bild */
@media (max-width: 600px) {
  .casino-list {
    gap: 20px;
    margin-top: 25px;
  }

  .casino-card {
    display: grid;
    grid-template-columns: 95px minmax(0, 1fr);
    grid-template-areas:
      "logo content"
      "buttons buttons";

    gap: 14px 12px;

    padding: 42px 16px 18px;
    border-radius: 19px;
  }

  .casino-card:not(:has(.badge)) {
    padding-top: 25px;
  }

  .casino-card .badge {
    top: -16px;
    left: 21px;
    min-height: 35px;
    padding: 7px 14px;
    border-radius: 9px;
    font-size: 0.76rem;
  }

  .c-rankwrap {
    grid-area: logo;
    display: grid;
    grid-template-columns: 28px 1fr;
    gap: 6px;
    width: 100%;
  }

  .c-rank {
    font-size: 1.7rem;
  }

  .c-logo {
    width: 62px;
    min-width: 62px;
    height: 65px;
    border-radius: 8px;
  }

  .c-logo img,
  .c-logo-img {
    width: 62px;
    max-width: 62px;
    height: 62px;
    object-fit: contain;
  }

  .c-center {
    grid-area: content;
    text-align: center;
    align-self: center;
  }

  .c-name {
    margin-bottom: 5px;
    font-size: 1.42rem;
  }

  .c-bonus-label {
    margin-bottom: 6px;
    font-size: 0.7rem;
    line-height: 1.25;
    letter-spacing: 0.055em;
  }

  .c-bonus {
    font-size: 0.88rem;
    line-height: 1.35;
  }

  .c-actions {
    grid-area: buttons;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
    width: 100%;
  }

  .c-actions .btn {
    min-height: 56px;
    padding: 12px 8px;
    border-radius: 13px;
    font-size: 0.92rem;
  }
}

/* Sehr kleine Handys */
@media (max-width: 380px) {
  .casino-card {
    grid-template-columns: 82px minmax(0, 1fr);
    padding-left: 12px;
    padding-right: 12px;
  }

  .c-rankwrap {
    grid-template-columns: 24px 1fr;
  }

  .c-rank {
    font-size: 1.45rem;
  }

  .c-logo,
  .c-logo img,
  .c-logo-img {
    width: 54px;
    min-width: 54px;
    max-width: 54px;
    height: 56px;
  }

  .c-name {
    font-size: 1.25rem;
  }

  .c-bonus {
    font-size: 0.79rem;
  }

  .c-actions .btn {
    font-size: 0.82rem;
  }
}