/**************************************************
 * Reset & Base
 **************************************************/
@font-face {
  font-family: 'Font Awesome 6 Free';
  font-display: swap;
  src: url('https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.5.0/webfonts/fa-solid-900.woff2') format('woff2'),
       url('https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.5.0/webfonts/fa-solid-900.woff') format('woff');
  font-weight: 900;
  font-style: normal;
}

/* === Font Awesome: performance fix (Lighthouse) === */
@font-face {
  font-family: 'Font Awesome 6 Free';
  font-display: swap;
  src: url('https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.5.0/webfonts/fa-solid-900.woff2') format('woff2'),
       url('https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.5.0/webfonts/fa-solid-900.woff') format('woff');
  font-weight: 900;
  font-style: normal;
}

@font-face {
  font-family: 'Font Awesome 6 Free';
  font-display: swap;
  src: url('https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.5.0/webfonts/fa-regular-400.woff2') format('woff2'),
       url('https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.5.0/webfonts/fa-regular-400.woff') format('woff');
  font-weight: 400;
  font-style: normal;
}

@font-face {
  font-family: 'Font Awesome 6 Brands';
  font-display: swap;
  src: url('https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.5.0/webfonts/fa-brands-400.woff2') format('woff2'),
       url('https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.5.0/webfonts/fa-brands-400.woff') format('woff');
  font-weight: 400;
  font-style: normal;
}



* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

html, body {
  max-width: 100vw;
  overflow-x: hidden;
  min-height: 100%;
  background-color: #111;
}

body {
  font-family: 'Poppins', sans-serif;
  background-color: #111; /* fallback */
  padding: 0;

  /* Lägg allt ovanpå en fast bakgrundslayer (så bilden inte “zoomas” när sidan blir lång) */
  position: relative;
  z-index: 0;
  isolation: isolate;
}

/* Fast bakgrund som alltid matchar viewportens storlek (samma look på alla sidor) */
body::before {
  content: "";
  position: fixed;
  inset: 0;
  z-index: -2;
  pointer-events: none;

  background-image: url('/images/backgrounds/falling-chips.webp');
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}

/* 🚀 Prestandafix för mobil – undvik tung fixed-bakgrund */
@media (max-width: 768px) {
  body {
    background-attachment: scroll;
  }
}

/**************************************************
 * Header
 **************************************************/
.site-header {
  padding: 18px 22px; /* något kompaktare */
  display: flex;
  justify-content: space-between;
  align-items: center;
  position: sticky;
  top: 0;
  z-index: 1000;
}

/* Bas: göm och nollställ mobilknappen på desktop */
.menu-toggle{
  display: none;          /* viktigt: syns inte på desktop */
  border: 0;
  padding: 0;
  width: 40px;            /* valfritt – matchar din mobilstorlek */
  height: 40px;
}


.logo-combo {
  display: flex;
  align-items: center;
  text-decoration: none;
  gap: 10px;
}

.logo-icon {
  width: 36px;
  height: 36px;
  margin-right: 6px;
  filter: drop-shadow(0 0 4px #ff9900);
}

.logo-text {
  font-size: 1.6rem;
  font-weight: 800;
  background: linear-gradient(to right, #ffcc00, #ff9900);
  -webkit-background-clip: text;
  color: #ffd700;
  text-shadow: 0 0 4px #000;
}

.main-nav {
  display: flex;
  gap: 20px;
  align-items: center;
}

.main-nav a {
  color: #fff;
  font-weight: 600;
  text-decoration: none;
  font-size: 0.95rem;
  position: relative;
  transition: color 0.3s ease;
}

.main-nav a::after {
  content: "";
  position: absolute;
  bottom: -4px;
  left: 0;
  height: 2px;
  width: 0;
  background-color: #ff9900;
  transition: width 0.3s;
}


.main-nav a:hover::after {
  width: 100%;
}

/**************************************************
 * Section layout
 **************************************************/
.section {
  background: rgba(0, 0, 0, 0.5);
  backdrop-filter: blur(8px);
  padding: 48px 18px; /* kompaktare */
  max-width: 1200px;
  margin: 40px auto;
  border-radius: 20px;
  box-shadow: 0 20px 40px rgba(0, 0, 0, 0.3);
}

.section-header {
  text-align: center;
  max-width: 900px;
  margin: 0 auto 36px;
  background: rgba(0, 0, 0, 0.6);
  padding: 22px;
  border-radius: 12px;
  box-shadow: 0 0 15px rgba(0, 0, 0, 0.4);
}

.top-casinos-title {
  font-size: 2rem;
  color: #ffd700;
  text-transform: uppercase;
}

.section-intro {
  font-size: 1rem;
  color: #e0e0e0;
  line-height: 1.6;
  margin-top: 12px;
}



/**************************************************
 * CARDS (kompakt & konsekvent)
 **************************************************/

/* Skala/spacing-variabler för kort */
:root {
  --s-0: 0;
  --s-1: 2px;
  --s-2: 4px;
  --s-3: 6px;
  --s-4: 8px;
  --s-5: 12px;
  --s-6: 16px;

  --logo-h: 44px;                 /* mindre logoyta */
  --fz-name: 1.1rem;              /* var 2rem */
  --fz-sub: 0.9rem;               /* var 1.2rem */
  --fz-body: 0.85rem;             /* lists / rating */
  --fz-terms: 0.75rem;            /* villkor */
  --fz-btn: 0.85rem;              /* CTA */
}

/* Wrapper */
.casino-card {
  background: linear-gradient(145deg, #111, #1b1b1b);
  border: 1px solid rgba(255, 215, 0, 0.2);
  border-radius: 14px;
  padding: var(--s-6);
  display: flex;
  flex-direction: column;
  min-height: 240px;              /* kompaktare höjd */
  box-shadow: 0 0 10px rgba(255, 215, 0, 0.1);
  transition: transform .25s ease, box-shadow .25s ease;
  gap: var(--s-5);
  outline: none;
}

.casino-card:hover {
  transform: translateY(-3px);
  box-shadow: 0 0 18px rgba(255, 204, 0, 0.25);
}

.casino-card:focus-visible {
  outline: 2px solid #ff9900;
  outline-offset: 2px;
}


/* Info */
.info-section {
  flex: 1 1 auto;
  display: flex;
  flex-direction: column;
  min-width: 0;
  color: #f0f0f0;
  gap: var(--s-3);
}

.casino-name {
  font-size: var(--fz-name);
  font-weight: 800;
  color: #ffd700;
  margin: 0;
  text-shadow: 0 0 4px rgba(0,0,0,.5);
  line-height: 1.2;
}

.info-section h3 {
  font-size: var(--fz-sub);
  color: #ffffff;
  margin: 0;
  line-height: 1.25;
}

/* Rating */
.rating {
  font-size: var(--fz-body);
  line-height: 1.25;
  display: inline-flex;
  align-items: center;
  gap: var(--s-2);
  background: #28a745;
  color: #fff;
  font-weight: 700;
  padding: 2px 6px;               /* mindre chip */
  border-radius: 6px;
}

/* Features */
.features {
  list-style: none;
  padding: 0;
  margin: 4px 0 0 0;
  display: flex;
  flex-direction: column;
  gap: 4px;                        /* mindre avstånd */
}

.features li {
  font-size: var(--fz-body);
  font-weight: 600;
  padding: 4px 8px;                /* mindre padding */
  border-radius: 8px;
  background: rgba(0,0,0,0.4);
  border: 1px solid #ff9900;
  box-shadow: 0 0 6px rgba(255,153,0,0.25);
  display: flex;
  align-items: center;
}

/* Terms */
.terms {
  font-size: var(--fz-terms);
  color: #aaa;
  line-height: 1.25;
}

/* CTA */
.cta-section {
  margin-top: auto;
  display: flex;
  flex-direction: column;
  gap: var(--s-3);
  flex-shrink: 0;
}

.play-btn {
  display: inline-block;
  background: #28a745;
  color: white;
  font-weight: 700;
  padding: 8px 0;                  /* kompaktare */
  font-size: var(--fz-btn);
  border-radius: 10px;
  text-align: center;
  text-decoration: none;
  transition: 0.25s ease;
}
/* === CTA buttons in casino cards === */
.casino-card .cta-section {
  display: flex;
  justify-content: center;
  gap: 8px; /* mellanrum mellan knapparna */
}

.casino-card .play-btn,
.casino-card .review-btn {
  flex: 1; /* båda blir hälften av raden */
  text-align: center;
  padding: 10px 0;
  border-radius: 8px;
  font-weight: 600;
  text-decoration: none;
  transition: all 0.2s ease-in-out;
}

/* Play Here (blå eller primärfärg) */
.casino-card .play-btn {
  background: var(--accent, #007bff);
  color: #fff;
}
.casino-card .play-btn:hover {
  background: #0056b3;
}

@media (max-width: 500px) {
  .casino-card .cta-section {
    flex-direction: column;
  }
}


/* Review (ljusare sekundärknapp) */
.casino-card .review-btn {
  background: #f5f5f5;
  color: #333;
  border: 1px solid #ddd;
}
.casino-card .review-btn:hover {
  background: #e0e0e0;
}


.play-btn:hover {
  background: #218838;
}

/* Extra-right (ingen låst bredd → kompakt) */
.extra-right {
  display: flex;
  flex-direction: column;
  gap: 10px;
  font-weight: 600;
}

/* Feature-checkikon (enhetlig, komprimerad) */
.extra-features p .green-check { display: none; }

.extra-features p {
  margin-bottom: 6px;
  font-size: 0.78rem;
  display: flex;
  align-items: center;
  position: relative;
  padding-left: 22px;
  line-height: 1.3;
}

.extra-features p::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.15em;
  width: 14px;
  height: 14px;
  background: no-repeat center/contain
    url("data:image/svg+xml;utf8,\
<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'>\
<circle cx='256' cy='256' r='256' fill='%2328a745'/>\
<path fill='white' d='M385.5 178.5c9.4 9.4 9.4 24.6 0 33.9l-144 144c-9.4 9.4-24.6 9.4-33.9 0l-81-81c-9.4-9.4-9.4-24.6 0-33.9s24.6-9.4 33.9 0l64 64 127-127c9.4-9.4 24.6-9.4 33.9 0z'/>\
</svg>");
}

/* Licenses – enhetlig och visbar */
.license-block {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
  font-size: 0.9rem;
}
.license-title { font-weight: 600; }
.license-icon {
  width: 20px;
  height: auto;
  object-fit: contain;
  border-radius: 6px;
  background: #000;
  padding: 4px;
  box-shadow:
    0 0 8px rgba(255, 204, 0, 0.35),
    inset 0 0 3px rgba(0, 0, 0, 0.6);
  transition: transform 0.2s ease;
}
.license-icon:hover { transform: translateY(-1px); }

/**************************************************
 * GRID – exakt 4 per rad (desktop) + fallback
 **************************************************/
@media (min-width: 1200px) {
  /* 4 smalare kolumner, centrerade */
  .casino-grid {
    display: grid;
    grid-template-columns: repeat(4, 240px) !important; /* justera 220–260px vid behov */
    justify-content: center !important;
    gap: 16px !important;
    padding: 16px;
  }
}
/* Fallbacks för mindre skärmar */
@media (min-width: 900px) and (max-width: 1199.98px) {
  .casino-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr) !important;
    gap: 16px !important;
    justify-content: center !important;
    padding: 16px;
  }
}
@media (min-width: 600px) and (max-width: 899.98px) {
  .casino-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 16px !important;
    justify-content: center !important;
    padding: 16px;
  }
}
@media (max-width: 599.98px) {
  .casino-grid {
    display: grid;
    grid-template-columns: 1fr !important;
    gap: 14px !important;
    justify-content: center !important;
    padding: 16px;
  }
}

/**************************************************
 * Footer
 **************************************************/
footer {
  text-align: center;
  padding: 24px 18px;
  color: #ccc;
  font-size: 0.9rem;
  background: rgba(0, 0, 0, 0.6);
  margin-top: 40px;
  border-top: 1px solid #333;
}
footer a { color: #ff9900; text-decoration: none; }
footer a:hover { text-decoration: underline; }

/**************************************************
 * Mobile
 **************************************************/
@media (max-width: 768px) {
  .menu-toggle {
    display: block;
    width: 40px; height: 40px;
    cursor: pointer; z-index: 1001; position: relative;
  }
  .menu-toggle::before {
    content: "☰";
    font-size: 28px; color: white;
    position: absolute; top: 50%; left: 50%;
    transform: translate(-50%, -50%);
  }

  .main-nav {
    display: none; /* Göm på mobil som standard */
    flex-direction: column;
    background: #0c0c0c;
    position: absolute; top: 100%; left: 0; right: 0;
    text-align: center; padding: 20px; z-index: 999;
    border-top: 2px solid #ff9900;
  }
  .main-nav.active { display: flex; }

.logo-icon {
  width: 36px;
  height: 36px;
  margin-right: 6px;
  filter: drop-shadow(0 0 4px #ff9900);
}
.logo-text {
  font-size: 1.6rem;
  font-weight: 800;
background-clip: text;
-webkit-background-clip: text;
  color: #ffd700;
  text-shadow: 0 0 4px #000;
}

  .section { padding: 32px 14px; }

  /* KORT på mobil – ingen negativ margin, auto-höjd */
  .casino-card {
    align-items: center; text-align: center; width: 100%;
    padding: 12px; margin-bottom: 16px;
    overflow-wrap: break-word; word-break: break-word;
    height: auto; min-height: unset;
  }

  .info-section, .cta-section, .extra-right {
    width: 100%; text-align: center; margin-top: 10px;
  }

  .info-section h3 { font-size: 0.95rem; }
  .features li { font-size: 0.85rem; }
  .play-btn { width: 100%; padding: 12px 0; font-size: 0.95rem; }

  .trust-row, .trust-center, .trust-item { width: 100%; }
  .trust-item { font-size: 14px; padding: 10px 14px; border-radius: 8px; }
  .trust-item img { width: 24px; height: 24px; }
  .trust-item a { color: #007bff; font-weight: 500; text-decoration: none; }
  .trust-item a:hover { text-decoration: underline; }
}


/* === BADGES FIX (GRÖN NEW! & BLÅ NO-STICKY) === */
.casino-card {
  position: relative !important;
  overflow: visible !important;
}

/* --- GRÖN NEW / TOP BADGE (vänster hörn) --- */
.casino-card .badge,
.casino-card .new-badge {
  position: absolute !important;
  top: 8px;
  left: 8px;
  background: linear-gradient(135deg, #00d26a, #00a651); /* grön ton */
  color: #fff;
  font-size: 0.7rem;
  font-weight: 800;
  padding: 3px 8px;
  border-radius: 6px;
  letter-spacing: 0.5px;
  text-transform: uppercase;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.4);
  z-index: 15;
  pointer-events: none;
}

/* --- BLÅ NO-STICKY BADGE (höger hörn) --- */
.casino-card .tag-badge {
  position: absolute !important;
  top: 8px;
  right: 8px;
  background: linear-gradient(135deg, #00c6ff, #0072ff); /* blå ton */
  color: #fff;
  font-size: 0.7rem;
  font-weight: 700;
  padding: 3px 8px;
  border-radius: 6px;
  letter-spacing: 0.5px;
  text-transform: uppercase;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.4);
  z-index: 15;
  pointer-events: none;
}

/* --- Responsiv justering --- */
@media (max-width: 600px) {
  .casino-card .badge,
  .casino-card .tag-badge {
    top: 6px;
    font-size: 0.6rem;
    padding: 2px 6px;
  }
}

/* ===== HERO (add-on styles) ===== */
.hero {
  padding: clamp(24px, 4vw, 48px) 16px;
  background: linear-gradient(180deg, rgba(0,0,0,.15), rgba(0,0,0,.0));
}
.hero-inner {
  max-width: 1120px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1.2fr .8fr;
  gap: clamp(16px, 3vw, 32px);
  align-items: start;
}
@media (max-width: 880px) {
  .hero-inner { grid-template-columns: 1fr; }
}

.hero-title {
  margin: 0 0 8px;
  font-size: clamp(26px, 4.5vw, 42px);
  line-height: 1.15;
  font-weight: 800;
}

.author-chip {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 8px 10px;
  border-radius: 999px;
  border: 1px solid rgba(255,255,255,.12);
  background: rgba(255,255,255,.04);
  font-size: .95rem;
}
.author-chip img { border-radius: 999px; }

.updated-date {
  margin: 8px 0 14px;
  font-size: .9rem;
  opacity: .8;
}

.hero-sub {
  margin: 0 0 10px;
  font-size: 1.05rem;
  opacity: .95;
}
.hero-intro {
  margin: 0;
  color: var(--muted, #aab1c3);
  max-width: 70ch;
}

.hero-ctas {
  display: flex;
  gap: 10px;
  margin-top: 16px;
  flex-wrap: wrap;
}
.hero-ctas .btn {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 12px 16px;
  border-radius: 12px;
  border: 1px solid rgba(255,255,255,.14);
  background: #151a26;
  text-decoration: none;
}
.hero-ctas .btn:hover { border-color: rgba(255,255,255,.28); }

/* small trust bullets */
.trust-row {
  display: flex;
  gap: 14px;
  flex-wrap: wrap;
  margin: 16px 0 0;
  padding: 0;
  list-style: none;
  font-size: .98rem;
  opacity: .95;
}

/* ===== RIGHT COLUMN ===== */
.hero-side-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 14px;
}

.hero-card,
.mini-card,
.hero-toc {
  border: 1px solid rgba(255,255,255,.10);
  background: rgba(255,255,255,.03);
  border-radius: 14px;
  padding: 14px;
}

.mini-kicker {
  display: inline-block;
  font-size: .8rem;
  letter-spacing: .04em;
  opacity: .85;
  margin-bottom: 8px;
  text-transform: uppercase;
}

.mini-row {
  display: grid;
  grid-template-columns: 120px 1fr;
  gap: 12px;
  align-items: center;
}
.mini-row img { border-radius: 10px; background: rgba(255,255,255,.04); }

.mini-card h3 {
  margin: 0 0 4px;
  font-size: 1.05rem;
}
.mini-card p { margin: 0; opacity: .9; }

.mini-pros {
  margin: 10px 0 12px;
  padding-left: 14px;
  opacity: .9;
  font-size: .95rem;
}

.mini-btn {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 10px 14px;
  border-radius: 10px;
  border: 1px solid rgba(255,255,255,.14);
  text-decoration: none;
}
.mini-btn:hover { border-color: rgba(255,255,255,.28); }

/* Quick links block */
.hero-toc {
  display: grid;
  gap: 8px;
}
.hero-toc a {
  display: block;
  padding: 10px 12px;
  border-radius: 10px;
  text-decoration: none;
  border: 1px solid transparent;
  opacity: .95;
}
.hero-toc a:hover {
  border-color: rgba(255,255,255,.16);
  background: rgba(255,255,255,.04);
}

/* ===== Optional: RG banner if you använder den ===== */
.rg-banner {
  background: #101826;
  border-bottom: 1px solid rgba(255,255,255,.08);
  font-size: .92rem;
}
.rg-banner .container {
  max-width: 1120px;
  margin: 0 auto;
  padding: 10px 16px;
  display: flex; gap: 10px; align-items: center;
}
.rg-banner a { text-decoration: underline; }

/***** HIGH-CONTRAST ADD-ON (paste at end) *****/
:root{
  --bg: #0a0d14;                /* djup bakgrund */
  --surface: rgba(10,13,20,.78);/* paneler */
  --surface-strong: rgba(10,13,20,.92);
  --stroke: rgba(255,255,255,.12);
  --text: #f5f7fa;
  --muted: #c4c9d4;
  --accent: #ff9900;            /* din orange */
  --accent-2: #00a2ff;          /* blå kontrast för länkar */
  --success: #2aa64a;

  /* aliases used elsewhere in your CSS */
  --brand: var(--accent);
  --line: var(--stroke);
  --shadow: 0 12px 24px rgba(0,0,0,.28);
  --bg-alt: rgba(255,255,255,.06);
}


body::after{
  content:"";
  position:fixed; inset:0;
  pointer-events:none;
  background:
    radial-gradient(1200px 600px at 20% 0%, rgba(0,0,0,.45), rgba(0,0,0,0)),
    linear-gradient(180deg, rgba(10,13,20,.85), rgba(10,13,20,.60) 35%, rgba(10,13,20,.85));
  z-index:-1;
}

/* Globala färg/typo-boosts */
body{ color:var(--text); }
a{ color:var(--text); }
a:hover{ color:var(--accent); }

/* HEADER / NAV: tydligare hover + fokus */
.site-header{ background: var(--surface-strong); border-bottom: 2px solid var(--accent); box-shadow: 0 6px 20px rgba(0,0,0,.35); }
.main-nav a{ opacity:.95; }
.main-nav a:hover{ color: var(--accent); }
.main-nav a:focus-visible{ outline: 2px solid var(--accent); outline-offset: 3px; border-radius: 6px; }

/* RG-banner om du använder den */
.rg-banner{ background: var(--surface-strong); border-bottom: 1px solid var(--stroke); }
.rg-banner a{ color: var(--accent-2); text-decoration: underline; }

/* SECTIONER/PANELER */
.section{
  background: var(--surface);
  border: 1px solid var(--stroke);
  box-shadow: 0 18px 40px rgba(0,0,0,.35);
}
.section-header{
  background: var(--surface-strong);
  border: 1px solid var(--stroke);
}
.top-casinos-title{
  color: #ffd666; text-shadow: 0 1px 2px rgba(0,0,0,.6);
}
.section-intro{ color: var(--muted); }

/* HERO */
.hero{ background: linear-gradient(180deg, rgba(0,0,0,.18), rgba(0,0,0,0)); }
.hero-title{ color: #fff; text-shadow: 0 2px 10px rgba(0,0,0,.35); }
.author-chip{ border-color: var(--stroke); background: rgba(255,255,255,.05); color: var(--muted); }
.updated-date{ color: var(--muted); }
.hero-sub{ color:#e6eaf0; }
.hero-intro{ color: var(--muted); }

/* HERO – knappar (interna länkar) */
.hero-ctas .btn{
  background: #131a27;
  border-color: var(--stroke);
  color: #e8eef7;
}
.hero-ctas .btn:hover{
  border-color: rgba(255,255,255,.28);
  box-shadow: 0 0 0 3px rgba(255,153,0,.18);
}

/* HERO – sidopaneler och quick links */
.hero-card,.mini-card,.hero-toc{
  background: var(--surface-strong);
  border: 1px solid var(--stroke);
}
.mini-kicker{ color: var(--muted); }
.mini-row img{ background: rgba(255,255,255,.06); }
.mini-btn{
  border-color: var(--stroke);
  color: #e8eef7;
  background: #131a27;
}
.mini-btn:hover{
  border-color: rgba(255,255,255,.28);
  box-shadow: 0 0 0 3px rgba(0,162,255,.18);
}
.hero-toc a{
  color:#e8eef7;
  border-color: transparent;
}
.hero-toc a:hover{
  background: rgba(255,255,255,.05);
  border-color: var(--stroke);
}

/* KORT: öka kontrast i ramar och chips */
.casino-card{
  background: linear-gradient(160deg, #0b1018, #141b28);
  border: 1px solid rgba(255,255,255,.10);
  box-shadow: 0 10px 24px rgba(0,0,0,.35);
}
.casino-name{ color:#ffd666; }
.features li{
  background: rgba(255,255,255,.04);
  border-color: rgba(255,153,0,.55);
  color: #eef3fb;
}
.rating{ background: var(--success); }
.terms{ color:#b8beca; }

/* Primär “Read review”-knapp på kort */
.play-btn{
  background: var(--accent);
  color:#111;
  border: 1px solid rgba(0,0,0,.25);
  box-shadow: 0 6px 18px rgba(255,153,0,.25);
}
.play-btn:hover{
  filter: brightness(1.05);
  box-shadow: 0 8px 22px rgba(255,153,0,.35);
}

/* Footer */
footer{ background: var(--surface-strong); border-top: 1px solid var(--stroke); color: var(--muted); }
footer a{ color: var(--accent-2); }

/* Fokus-synlighet överallt (tangentbordsvänligt) */
a:focus-visible, button:focus-visible{
  outline: 2px solid var(--accent);
  outline-offset: 2px;
  border-radius: 8px;
}

/* In-hero Top Recommended */
.hero-recos { margin-top: 12px; }
.hero-recos-head { display:flex; gap:10px; align-items:baseline; }
.hero-recos-head h3 { margin:0; font-size:18px; }
.hero-recos-head i { color: var(--brand); margin-right:6px; }
.muted { color: var(--muted); }

.hero-recos-row{
  margin-top:10px;
  display:grid;
  grid-template-columns: repeat(5, minmax(0,1fr));
  gap:10px;
  overflow-x:auto;
  padding-bottom: 4px;
  scroll-snap-type: x mandatory;
}
.hero-recos-row::-webkit-scrollbar{ height:8px; }
.hero-recos-row::-webkit-scrollbar-thumb{ background:#d9dde5; border-radius:999px; }

.rec-mini{
  background:#fff;
  border:1px solid var(--line);
  border-radius:12px;
  padding:10px;
  box-shadow: var(--shadow);
  display:grid; gap:8px; justify-items:center;
  text-align:center;
  scroll-snap-align: start;
  min-width: 180px;
}
.rec-mini-badge{
  justify-self:end;
  background: var(--brand);
  color:#fff; font-weight:800; font-size:12px;
  padding:4px 8px; border-radius:999px;
}
.rec-mini h4{ margin:4px 0 0; font-size:16px; }
.rec-mini-points{
  margin:0; padding-left: 18px; text-align:left; font-size:14px; color:#2b2f36;
}
.rec-mini-points li{ list-style: "•  "; margin:4px 0; }
.mini-btn{
  display:inline-flex; align-items:center; justify-content:center;
  padding:8px 10px; border-radius:10px; border:1px solid var(--line);
  background: var(--bg);
  text-decoration:none; color: var(--text); font-weight:700; font-size:14px;
}
.mini-btn:hover{ background: var(--bg-alt); }

@media (max-width: 980px){
  .hero-recos-row{ grid-template-columns: repeat(5, 70%); }
}
@media (max-width: 640px){
  .hero-recos-row{ grid-template-columns: repeat(5, 82%); }
}

/* ===== Top Recommended (outside hero) ===== */
.recommended-section{
  /* mjuk band-känsla som passar mörkt tema */
  background: linear-gradient(180deg, rgba(255,255,255,0.02), rgba(255,255,255,0.00));
  border-top: 1px solid var(--stroke, #2a3446);
  border-bottom: 1px solid var(--stroke, #2a3446);
  padding-top: 34px;
  padding-bottom: 34px;
}

.rec-headline{
  display:flex; flex-direction:column; gap:6px; margin-bottom: 14px;
}
.rec-headline h2{
  margin:0; font-size: 24px; color: #fff;
}
.rec-headline h2 i{ color: var(--accent, #45b2ff); margin-right:8px; }
.rec-headline .muted{ color: var(--muted, #9fb0cc); }

.rec5-grid{
  display:grid; gap:12px;
  grid-template-columns: repeat(5, minmax(0,1fr));
}
.rec5-card{
  position: relative;
  background: var(--surface-strong, #0f1624);
  border: 1px solid var(--stroke, #2a3446);
  border-radius: 14px;
  padding: 14px 12px;
  box-shadow: 0 12px 24px rgba(0,0,0,.28);
  display: grid; justify-items: center; gap: 10px;
  text-align: center;
  color: var(--text, #eaf0fb);
}
.rec5-badge{
  position: absolute; top: 10px; right: 10px;
  background: var(--accent, #45b2ff);
  color:#0b0f17; font-weight: 800; font-size: 12px;
  padding: 5px 9px; border-radius: 999px;
  box-shadow: 0 6px 14px rgba(0,0,0,.35);
}
.rec5-logo img{ width:72px; height:72px; border-radius: 12px; object-fit: cover; }
.rec5-title{ margin: 0; font-size: 18px; color: #fff; }
.rec5-points{ margin:0; padding-left:18px; text-align:left; color: var(--muted, #9fb0cc); font-size:14px; }
.rec5-points li{ list-style: "•  "; margin: 4px 0; }

.rec5-btn{
  display:inline-flex; align-items:center; justify-content:center;
  padding: 10px 12px; border-radius: 10px;
  border: 1px solid var(--stroke, #2a3446);
  background: #101827;
  color: #e8eef7; text-decoration: none; font-weight: 700; font-size: 14px;
}
.rec5-btn:hover{
  border-color: rgba(255,255,255,.28);
  box-shadow: 0 0 0 3px rgba(69,178,255,.18);
}

/* Responsivitet: gör bandet swipebart på mobil och 2–3 kolumner på tablet */
@media (max-width: 1080px){
  .rec5-grid{ grid-template-columns: repeat(3, 1fr); }
}
@media (max-width: 720px){
  .rec5-grid{
    grid-auto-flow: column;
    grid-auto-columns: 78%;
    grid-template-columns: none;
    overflow-x: auto;
    padding-bottom: 6px;
    scroll-snap-type: x mandatory;
    gap: 10px;
  }
  .rec5-card{ scroll-snap-align: start; }
  .rec5-grid::-webkit-scrollbar{ height: 8px; }
  .rec5-grid::-webkit-scrollbar-thumb{ background: rgba(255,255,255,.16); border-radius: 999px; }
}

.rec5-disclaimer{
  margin-top: 12px; color: var(--muted, #9fb0cc); font-size: 14px;
}

/* ============================
   H2 BOX (universal component)
   - funkar i mörkt tema med variabler:
     --surface-strong, --stroke, --accent, --text, --muted
   - lägg runt din <h2> och ev. undertitel
   ============================ */
.h2-box{
  background: var(--surface-strong, #0f1624);
  color: var(--text, #eaf0fb);
  border: 1px solid var(--stroke, #2a3446);
  border-radius: 14px;
  padding: 14px 16px;
  box-shadow: 0 10px 24px rgba(0,0,0,.25);
  display: grid;
  gap: 6px;
}

/* Layout: titelrad */
.h2-box .h2-row{
  display: flex;
  align-items: center;
  gap: 10px;
  min-height: 32px;
}

/* Ikon före rubrik (valfri) */
.h2-box .h2-icon{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 28px; height: 28px;
  border-radius: 8px;
  background: rgba(69,178,255,.12);
  color: var(--accent, #45b2ff);
  border: 1px solid rgba(69,178,255,.28);
  flex: 0 0 28px;
}

/* Själva rubriken */
.h2-box h2{
  margin: 0;
  font-size: clamp(18px, 2.2vw, 24px);
  line-height: 1.2;
  letter-spacing: .2px;
  color: #fff;
}

/* Kicker (liten label före rubrik, valfri) */
.h2-box .h2-kicker{
  font-size: 12px;
  text-transform: uppercase;
  letter-spacing: .8px;
  color: var(--muted, #9fb0cc);
}

/* Undertitel / beskrivning (valfri) */
.h2-box .h2-sub{
  margin: 0;
  color: var(--muted, #9fb0cc);
  font-size: 14px;
}

/* Accentlinje under titelraden (valfri) */
.h2-box .h2-underline{
  height: 2px;
  background: linear-gradient(90deg, var(--accent, #45b2ff), transparent 70%);
  border-radius: 999px;
}

/* ---- Varianter ---- */

/* Centerad variant */
.h2-box--center{
  text-align: center;
}
.h2-box--center .h2-row{ justify-content: center; }

/* Tunn variant (mindre padding & utan skugga) */
.h2-box--slim{
  padding: 10px 12px;
  box-shadow: none;
}

/* Ljus variant (om du vill använda på ljusa sektioner) */
.h2-box--light{
  background: var(--bg, #ffffff);
  color: var(--text, #121417);
  border-color: var(--line, #e7e9ee);
}
.h2-box--light .h2-sub{ color: var(--muted, #5b616b); }
.h2-box--light .h2-icon{
  background: rgba(43,118,255,.08);
  color: var(--brand, #2b76ff);
  border-color: rgba(43,118,255,.22);
}

/* Små skärmar: snygg stapling */
@media (max-width: 640px){
  .h2-box{ padding: 12px 12px; border-radius: 12px; }
  .h2-box h2{ font-size: clamp(18px, 5vw, 22px); }
}

/* Prefer reduced motion: ta ner animeringar om du lägger till transitions senare */
@media (prefers-reduced-motion: reduce){
  .h2-box, .h2-box *{ transition: none !important; }
}

/* === DARK THEME HERO CTA DROPDOWN === */
.cta-dropdown {
  position: relative;
  display: inline-block;
}

.cta-toggle {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.4rem;
  font-family: 'Poppins', sans-serif;
  font-weight: 600;
  font-size: 15px;
  color: #ffd666;
  background: linear-gradient(180deg, #1a1a1a 0%, #101010 100%);
  border: 1px solid rgba(255, 215, 0, 0.25);
  border-radius: 8px;
  padding: 0.6rem 1.2rem;
  cursor: pointer;
  transition: all 0.25s ease;
  box-shadow: 0 0 10px rgba(0,0,0,0.6);
}

.cta-toggle:hover,
.cta-toggle[aria-expanded="true"] {
  background: linear-gradient(180deg, #222, #151515);
  box-shadow: 0 0 16px rgba(255, 204, 0, 0.25);
  color: #fff5cc;
}

/* Pil-animation */
.cta-toggle::after {
  content: "▾";
  font-size: 0.85em;
  margin-left: 0.3rem;
  transition: transform 0.25s ease;
  color: #ffb300;
}
.cta-toggle[aria-expanded="true"]::after {
  transform: rotate(180deg);
}

/* Dropdown-listan (mörk bakgrund) */
.cta-menu {
  position: absolute;
  top: calc(100% + 0.4rem);
  left: 0;
  min-width: 230px;
  list-style: none;
  margin: 0;
  padding: 0.4rem 0;
  background: #111;
  border: 1px solid rgba(255, 215, 0, 0.25);
  border-radius: 10px;
  box-shadow: 0 10px 28px rgba(0, 0, 0, 0.6);
  z-index: 999;
  animation: dropdownFadeIn 0.25s ease;
}

/* Fade-in */
@keyframes dropdownFadeIn {
  from { opacity: 0; transform: translateY(-6px); }
  to { opacity: 1; transform: translateY(0); }
}

/* Länkarna */
.cta-menu li a {
  display: block;
  padding: 0.6rem 1rem;
  color: #f0f0f0;
  font-weight: 500;
  text-decoration: none;
  transition: all 0.2s ease;
  border-left: 3px solid transparent;
}

.cta-menu li a:hover {
  background: rgba(255, 215, 0, 0.1);
  border-left-color: #ffb300;
  color: #fff;
  box-shadow: inset 0 0 6px rgba(255, 215, 0, 0.2);
}

/* Mobilanpassning */
@media (max-width: 900px) {
  .hero-ctas {
    display: flex;
    flex-wrap: wrap;
    gap: .5rem;
  }
  .cta-dropdown {
    width: 100%;
  }
  .cta-menu {
    position: static;
    border: 1px solid rgba(255, 215, 0, 0.25);
    box-shadow: none;
    background: #1a1a1a;
    border-radius: 8px;
    margin-top: .4rem;
  }
  .cta-menu li a {
    padding: .5rem .75rem;
  }
}

/* Hide trust row but keep the same vertical space so the right hero card doesn't shift */
.hero .trust-row { display: none !important; }

/* Reserve the lost space after the hero text */
.hero .hero-copy::after {
  content: "";
  display: block;
  height: 20px; /* justera 16–24px tills Latest review linjerar perfekt */
}

/* === How to find a good bonus — DARK THEME (matchar TopBonusTips) === */
/* bygger på dina globala variabler i slutet av styles.css */
.how-bonus { 
  padding-top: 40px; 
  padding-bottom: 40px; 
  background: transparent; /* sektionen ligger redan i en .section-panel */
}

.how-bonus-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 16px;
}
@media (min-width: 900px) {
  .how-bonus-grid { grid-template-columns: 1fr 1fr; gap: 20px; }
  .how-bonus .h2-box { grid-column: 1 / -1; }
  .how-bonus-note   { grid-column: 1 / -1; }
}

/* Kort-paneler i samma stil som hero/mini-card */
.how-bonus-card {
  background: var(--surface-strong, rgba(10,13,20,.92));
  border: 1px solid var(--stroke, rgba(255,255,255,.12));
  border-radius: 14px;
  padding: 16px 18px;
  box-shadow: 0 10px 24px rgba(0,0,0,.35);
  color: var(--text, #f5f7fa);
}

/* "Danger" kort – mjuk röd ton utan att bryta temat */
.how-bonus-card.danger {
  background: linear-gradient(180deg, rgba(255,90,90,.08), rgba(255,90,90,.02));
  border-color: rgba(255,90,90,.25);
}

/* Rubriknivå i korten */
.how-bonus-kicker { 
  font-size: 1rem; 
  font-weight: 600; 
  margin-bottom: 10px; 
  color: #fff;
}

/* Listor */
.tick-list, .cross-list {
  list-style: none; padding: 0; margin: 0;
  display: grid; grid-template-columns: 1fr; gap: 10px;
  color: var(--text, #f5f7fa);
}

.green-check { 
  color: var(--success, #2aa64a); 
  font-weight: 700; 
  margin-right: 6px; 
}
.red-cross   { 
  color: #ff5a5a; 
  font-weight: 700; 
  margin-right: 6px; 
}

/* Quick math / note-panel i samma mörka stil */
.how-bonus-note {
  border: 1px dashed var(--stroke, rgba(255,255,255,.12));
  border-radius: 14px;
  padding: 14px 16px;
  background: rgba(255,255,255,.04);
  color: var(--text, #f5f7fa);
}
.how-bonus .muted { color: var(--muted, #c4c9d4); }
.smallprint { font-size: 0.9rem; color: var(--muted, #c4c9d4); opacity: .95; }

/* Knappar – följ din mini-btn/hero-btn känsla */
.how-bonus-cta { display: flex; gap: 10px; margin-top: 10px; flex-wrap: wrap; }

.how-bonus .btn {
  display: inline-flex; align-items: center; justify-content: center;
  padding: 10px 14px; border-radius: 10px; font-weight: 700; line-height: 1;
  text-decoration: none;
  border: 1px solid var(--stroke, rgba(255,255,255,.14));
  background: #131a27;
  color: #e8eef7;
  transition: box-shadow .2s ease, border-color .2s ease, transform .05s ease;
}
.how-bonus .btn:hover {
  border-color: rgba(255,255,255,.28);
  box-shadow: 0 0 0 3px rgba(255,153,0,.18);
}
.how-bonus .btn:active { transform: translateY(1px); }

/* Ghost-variant (ljusare bakgrundsnyans) */
.how-bonus .btn.btn-ghost {
  background: rgba(255,255,255,.06);
  border-color: var(--stroke, rgba(255,255,255,.14));
  color: var(--text, #f5f7fa);
}
.how-bonus .btn.btn-ghost:hover {
  border-color: rgba(255,255,255,.28);
  box-shadow: 0 0 0 3px rgba(0,162,255,.18);
}

.how-bonus-exception{
  margin-top: 10px;
  padding: 10px 12px;
  border-radius: 10px;
  border: 1px solid var(--stroke, rgba(255,255,255,.14));
  background: linear-gradient(180deg, rgba(0,180,120,.08), rgba(0,180,120,.02));
  color: var(--text, #f5f7fa);
  box-shadow: 0 6px 16px rgba(0,0,0,.25);
}
.how-bonus-exception strong{ font-weight:700; }

/* === Security & Support — DARK THEME to match site === */
.secsup { padding-top: 40px; padding-bottom: 40px; }
.secsup-grid {
  display: grid; grid-template-columns: 1fr; gap: 16px;
}
@media (min-width: 900px){
  .secsup-grid { grid-template-columns: 1fr 1fr; gap: 20px; }
  .secsup .h2-box { grid-column: 1 / -1; }
  .secsup-cta { grid-column: 1 / -1; }
}

/* Cards share look with your dark panels */
.quality-card{
  background: var(--surface-strong, rgba(10,13,20,.92));
  border: 1px solid var(--stroke, rgba(255,255,255,.12));
  border-radius: 14px;
  padding: 16px 18px;
  color: var(--text, #f5f7fa);
  box-shadow: 0 10px 24px rgba(0,0,0,.35);
}
.quality-kicker{ font-size:1rem; font-weight:600; margin-bottom:10px; color:#fff; }

/* Reuse your tick-list style if present; fallback here */
.tick-list{ list-style:none; padding:0; margin:0; display:grid; gap:10px; }
.green-check{ color: var(--success, #2aa64a); font-weight:700; margin-right:6px; }

/* Chip row */
.chip-row{ display:flex; flex-wrap:wrap; gap:8px; margin-top:12px; }
.chip{
  display:inline-flex; align-items:center; gap:6px;
  padding:6px 10px; border-radius:999px;
  background: rgba(255,255,255,.06);
  border:1px solid var(--stroke, rgba(255,255,255,.14));
  color: var(--text, #e8eef7);
  font-weight:600; font-size:.9rem;
}

/* Notes */
.quality-note{
  margin-top:12px; padding:10px 12px; border-radius:10px;
  border:1px dashed var(--stroke, rgba(255,255,255,.14));
  background: rgba(255,255,255,.04);
  color: var(--text, #f5f7fa);
  box-shadow: 0 6px 16px rgba(0,0,0,.25);
}
.note-warn{ 
  background: linear-gradient(180deg, rgba(255,153,0,.10), rgba(255,153,0,.03));
  border-color: rgba(255,153,0,.25);
}

/* Support metrics strip */
.support-metrics{
  display:grid; grid-template-columns: repeat(3, minmax(0,1fr));
  gap:8px; margin:12px 0;
}
.metric{
  background: rgba(255,255,255,.06);
  border:1px solid var(--stroke, rgba(255,255,255,.14));
  border-radius:12px; padding:10px 12px;
  display:flex; flex-direction:column; gap:4px;
}
.metric-label{ font-size:.85rem; color: var(--muted, #c4c9d4); }
.metric-value{ font-weight:800; }

.secsup-cta{ display:flex; gap:10px; flex-wrap:wrap; margin-top: 2px; }
.secsup .btn{
  display:inline-flex; align-items:center; gap:8px;
  padding:10px 14px; border-radius:10px; font-weight:700; line-height:1;
  text-decoration:none;
  border:1px solid var(--stroke, rgba(255,255,255,.14));
  background:#131a27; color:#e8eef7;
  transition: box-shadow .2s ease, border-color .2s ease, transform .05s ease;
}
.secsup .btn:hover{ border-color:rgba(255,255,255,.28); box-shadow:0 0 0 3px rgba(0,162,255,.18); }
.secsup .btn:active{ transform: translateY(1px); }
.secsup .btn.btn-ghost{ background: rgba(255,255,255,.06); }

/* === Providers & RTP (matchar Security/How-bonus-stil) === */
.providers{ padding-top:40px; padding-bottom:40px; }
.providers-grid{ display:grid; grid-template-columns:1fr; gap:16px; }
@media (min-width:900px){
  .providers-grid{ grid-template-columns:1fr 1fr; gap:20px; }
  .providers .h2-box{ grid-column:1 / -1; }
  .providers-cta{ grid-column:1 / -1; }
}

/* Återanvänd dina kort/notes/chips/metrics-klasser från tidigare block.
   Om de redan finns behöver du inte detta – men här är säkra defaults. */
.providers .quality-card{
  background: var(--surface-strong, rgba(10,13,20,.92));
  border: 1px solid var(--stroke, rgba(255,255,255,.12));
  border-radius: 14px;
  padding: 16px 18px;
  color: var(--text, #f5f7fa);
  box-shadow: 0 10px 24px rgba(0,0,0,.35);
}
.providers .quality-kicker{ font-size:1rem; font-weight:600; margin-bottom:10px; color:#fff; }
.providers .tick-list{ list-style:none; padding:0; margin:0; display:grid; gap:10px; }
.providers .green-check{ color: var(--success, #2aa64a); font-weight:700; margin-right:6px; }

.providers .chip-row{ display:flex; flex-wrap:wrap; gap:8px; margin-top:12px; }
.providers .chip{
  display:inline-flex; align-items:center; gap:6px;
  padding:6px 10px; border-radius:999px;
  background: rgba(255,255,255,.06);
  border:1px solid var(--stroke, rgba(255,255,255,.14));
  color: var(--text, #e8eef7);
  font-weight:600; font-size:.9rem;
}

.providers .quality-note{
  margin-top:12px; padding:10px 12px; border-radius:10px;
  border:1px dashed var(--stroke, rgba(255,255,255,.14));
  background: rgba(255,255,255,.04);
  color: var(--text, #f5f7fa);
  box-shadow: 0 6px 16px rgba(0,0,0,.25);
}
.providers .note-warn{
  background: linear-gradient(180deg, rgba(255,153,0,.10), rgba(255,153,0,.03));
  border-color: rgba(255,153,0,.25);
}

.providers .support-metrics{
  display:grid; grid-template-columns: repeat(3, minmax(0,1fr));
  gap:8px; margin:12px 0;
}
.providers .metric{
  background: rgba(255,255,255,.06);
  border:1px solid var(--stroke, rgba(255,255,255,.14));
  border-radius:12px; padding:10px 12px;
  display:flex; flex-direction:column; gap:4px;
}
.providers .metric-label{ font-size:.85rem; color: var(--muted, #c4c9d4); }
.providers .metric-value{ font-weight:800; }

.providers-cta{ display:flex; gap:10px; flex-wrap:wrap; }
.providers .btn{
  display:inline-flex; align-items:center; gap:8px;
  padding:10px 14px; border-radius:10px; font-weight:700; line-height:1;
  text-decoration:none;
  border:1px solid var(--stroke, rgba(255,255,255,.14));
  background:#131a27; color:#e8eef7;
  transition: box-shadow .2s ease, border-color .2s ease, transform .05s ease;
}
.providers .btn:hover{ border-color:rgba(255,255,255,.28); box-shadow:0 0 0 3px rgba(0,162,255,.18); }
.providers .btn:active{ transform: translateY(1px); }
.providers .btn.btn-ghost{ background: rgba(255,255,255,.06); }

/* === Payment Methods & Withdrawals (matchar mörka temat) === */
.pay { padding-top: 40px; padding-bottom: 40px; }
.pay-grid { display: grid; grid-template-columns: 1fr; gap: 16px; }
@media (min-width: 900px){
  .pay-grid { grid-template-columns: 1fr 1fr; gap: 20px; }
  .pay .h2-box, .pay-cta { grid-column: 1 / -1; }
}

/* Återanvändning av dina mörka kort – fallback här om klasser saknas */
.pay .quality-card{
  background: var(--surface-strong, rgba(10,13,20,.92));
  border: 1px solid var(--stroke, rgba(255,255,255,.12));
  border-radius: 14px;
  padding: 16px 18px;
  color: var(--text, #f5f7fa);
  box-shadow: 0 10px 24px rgba(0,0,0,.35);
}
.pay .quality-kicker{ font-size:1rem; font-weight:600; margin-bottom:10px; color:#fff; }

.pay .tick-list{ list-style:none; padding:0; margin:0; display:grid; gap:10px; }
.pay .green-check{ color: var(--success, #2aa64a); font-weight:700; margin-right:6px; }

.pay .chip-row{ display:flex; flex-wrap:wrap; gap:8px; margin:8px 0 12px; }
.pay .chip{
  display:inline-flex; align-items:center; gap:6px;
  padding:6px 10px; border-radius:999px;
  background: rgba(255,255,255,.06);
  border:1px solid var(--stroke, rgba(255,255,255,.14));
  color: var(--text, #e8eef7);
  font-weight:600; font-size:.9rem;
}

.pay .quality-note{
  margin-top:10px; padding:10px 12px; border-radius:10px;
  border:1px dashed var(--stroke, rgba(255,255,255,.14));
  background: rgba(255,255,255,.04);
  color: var(--text, #f5f7fa);
  box-shadow: 0 6px 16px rgba(0,0,0,.25);
}
.pay .note-warn{
  background: linear-gradient(180deg, rgba(255,153,0,.10), rgba(255,153,0,.03));
  border-color: rgba(255,153,0,.25);
}

.pay .support-metrics{
  display:grid; grid-template-columns: repeat(4, minmax(0,1fr));
  gap:8px; margin:12px 0;
}
.pay .metric{
  background: rgba(255,255,255,.06);
  border:1px solid var(--stroke, rgba(255,255,255,.14));
  border-radius:12px; padding:10px 12px;
  display:flex; flex-direction:column; gap:4px;
}
.pay .metric-label{ font-size:.85rem; color: var(--muted, #c4c9d4); }
.pay .metric-value{ font-weight:800; }

.pay-cta{ display:flex; gap:10px; flex-wrap:wrap; }
.pay .btn{
  display:inline-flex; align-items:center; gap:8px;
  padding:10px 14px; border-radius:10px; font-weight:700; line-height:1;
  text-decoration:none;
  border:1px solid var(--stroke, rgba(255,255,255,.14));
  background:#131a27; color:#e8eef7;
  transition: box-shadow .2s ease, border-color .2s ease, transform .05s ease;
}
.pay .btn:hover{ border-color:rgba(255,255,255,.28); box-shadow:0 0 0 3px rgba(0,162,255,.18); }
.pay .btn:active{ transform: translateY(1px); }
.pay .btn.btn-ghost{ background: rgba(255,255,255,.06); }

/* === FAQ (dark) === */
.faq { padding-top: 40px; padding-bottom: 40px; }
.faq-grid { display: grid; grid-template-columns: 1fr; gap: 16px; }
.faq .quality-card{
  background: var(--surface-strong, rgba(10,13,20,.92));
  border: 1px solid var(--stroke, rgba(255,255,255,.12));
  border-radius: 14px;
  padding: 8px 12px;
  color: var(--text, #f5f7fa);
  box-shadow: 0 10px 24px rgba(0,0,0,.35);
}
.faq details { border-bottom: 1px solid var(--stroke, rgba(255,255,255,.12)); padding: 12px 6px; }
.faq details:last-child { border-bottom: 0; }
.faq summary { cursor: pointer; list-style: none; }
.faq summary::-webkit-details-marker { display: none; }
.faq summary { display:flex; align-items:center; gap:8px; }
.faq summary strong { font-weight: 700; }
.faq .faq-a { margin-top: 8px; color: var(--muted, #c4c9d4); }

/* ===== Sticky right-side shortcuts ===== */
.side-shortcuts{
  position: fixed; z-index: 1000;
  right: 16px; top: 110px;
  width: 240px; max-height: calc(100vh - 140px);
  background: var(--surface-strong, rgba(10,13,20,.92));
  border: 1px solid var(--stroke, rgba(255,255,255,.12));
  border-radius: 14px;
  box-shadow: 0 10px 24px rgba(0,0,0,.35);
  padding: 10px; backdrop-filter: blur(6px);
}

/* header/knapp */
.side-toggle{
  display:flex; align-items:center; gap:8px;
  width:100%; font-weight:800; text-align:left;
  padding:10px 12px; border-radius:10px;
  background: rgba(255,255,255,.06);
  border:1px solid var(--stroke, rgba(255,255,255,.14));
  color: var(--text, #f5f7fa);
}

/* lista */
.side-list{ list-style:none; padding:8px 6px 4px; margin:0;
  display:flex; flex-direction:column; gap:6px; overflow:auto;
  max-height: calc(100vh - 200px);
}
.side-list a{
  display:flex; align-items:center; gap:8px;
  padding:8px 10px; border-radius:10px; text-decoration:none;
  color: var(--text, #e8eef7);
  border:1px solid transparent; transition: border-color .2s, box-shadow .2s, background .2s;
  background: rgba(255,255,255,.03);
}
.side-list a:hover{
  border-color: rgba(255,255,255,.28);
  box-shadow: 0 0 0 3px rgba(0,162,255,.18);
}
.side-list a.is-active{
  background: #131a27;
  border-color: rgba(0,162,255,.35);
  box-shadow: 0 0 0 3px rgba(0,162,255,.22);
}

/* Responsiv: dölj på smala skärmar */
@media (max-width: 1100px){
  .side-shortcuts{ display:none; }
}

@media (min-height:700px){
  .side-shortcuts{ bottom: 16px; max-height: calc(100vh - 140px); }
}

/* === FIX: ta bort box/pill från casinonamnet, behåll på erbjudandet === */

/* 1) Återställ namnraden (h3.casino-name) helt */
.casino-card .info-section h3.casino-name{
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
  min-height: 0 !important;
  display: block !important;

  /* stäng av 2-rads clamp mm från generella h3-regeln */
  -webkit-line-clamp: unset !important;
  -webkit-box-orient: unset !important;
  white-space: normal !important;
  overflow: visible !important;
  text-overflow: clip !important;

  /* typografi för namnet */
  font-size: 1rem !important;
  font-weight: 800 !important;
  color: #ffd666 !important;
  line-height: 1.15 !important;
  letter-spacing: .2px !important;
  border-radius: 0 !important;
}

/* 2) Säkerställ att pill-stilen bara gäller icke-namn */
.casino-card .info-section h3:not(.casino-name){
  background: linear-gradient(90deg,#ffd54a,#ff9f1a) !important;
  border: 1px solid rgba(255,153,0,.6) !important;
  border-radius: 10px !important;
  padding: 6px 8px !important;
  color: #111 !important;
  display: -webkit-box !important;
  -webkit-line-clamp: 2 !important;
  -webkit-box-orient: vertical !important;
  min-height: calc(1.2em * 2 + 12px) !important;
}

/* Licence chip – liten, ren och konsekvent */
.license-chip{
  display:inline-block;
  padding:6px 10px;
  border-radius:999px;
  background: rgba(255,255,255,.06);
  border:1px solid var(--stroke, rgba(255,255,255,.14));
  color: var(--text, #e8eef7);
  font-weight:600;
  font-size:.85rem;
  margin-top:8px;
  white-space:nowrap;
}

#top-recommended,
#how-to-find-a-good-bonus,
#security-and-support,
#providers-and-rtp,
#payment-methods,
#faq { scroll-margin-top: 90px; }

/* Dropdown – superlätt stil, funkar med ditt mörka tema */
.nav-dropdown{ position:relative; }
.nav-dropbtn{
  padding:8px 10px; border-radius:10px; font-weight:700;
  background:transparent; color:var(--text,#e8eef7);
  border:1px solid transparent; cursor:pointer;
}
.nav-dropbtn[aria-expanded="true"],
.nav-dropbtn:hover{ background:rgba(255,255,255,.06); border-color:rgba(255,255,255,.18); }

.nav-submenu{
  position:absolute; top:110%; left:0; min-width:220px;
  background:var(--surface-strong,rgba(10,13,20,.96));
  border:1px solid var(--stroke,rgba(255,255,255,.12));
  border-radius:12px; padding:8px; margin:0; list-style:none; z-index:1000;
}
.nav-submenu[hidden]{ display:none; }
.nav-submenu a{ display:block; padding:9px 10px; border-radius:8px; text-decoration:none; color:var(--text,#e8eef7); }
.nav-submenu a:hover{ background:rgba(255,255,255,.06); }

/* Aktiv länk markering */
.main-nav a.is-active{ text-decoration: underline; text-underline-offset: 3px; }

/* Mobil: dropdown blir block i huvudmenyn */
@media (max-width:900px){
  .main-nav{ flex-direction:column; align-items:stretch; gap:8px; }
  .nav-dropdown{ width:100%; }
  .nav-submenu{ position:static; width:100%; box-shadow:none; }
}

/***** DROPDOWN – MÖRK STIL + HOVER SOM INTE FLIMRAR *****/

/* Layout (vänstersida) – om du redan har detta, behåll ditt */
.header-left {
  display: flex;
  align-items: center;
  gap: 24px;
}

/* Grund */
.dropdown { position: relative; }
.dropdown-toggle {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  cursor: pointer;
}

/* Menyn (mörk som sidan) */
.dropdown-menu {
  display: none;
  position: absolute;
  top: 100%;                 /* Ingen gap – exakt under länken */
  left: 0;
  min-width: 220px;
  padding: 8px;
  background: rgba(10, 13, 20, 0.98);      /* mörk bakgrund */
  color: #fff;
  border: 1px solid rgba(255,255,255,0.08);
  border-radius: 12px;
  box-shadow: 0 18px 40px rgba(0,0,0,0.35);
  z-index: 2000;
}

/* Länkar i menyn – matchar nav-stilen (vita, semibold) */
.dropdown-menu a {
  display: block;
  padding: 10px 12px;
  text-decoration: none;
  color: #fff;
  font-weight: 600;
  border-radius: 8px;
  white-space: nowrap;
}

/* Hoverfärg i menyn */
.dropdown-menu a:hover {
  background: rgba(255,255,255,0.06);
}

/* Öppen via JS (mobil + tillgänglighet) */
.dropdown.open > .dropdown-menu { display: block; }

/* DESKTOP: öppna på hover OCH behåll öppen när man går ner i menyn */
@media (min-width: 769px) {
  .dropdown:hover > .dropdown-menu,
  .dropdown:focus-within > .dropdown-menu {
    display: block;
    animation: dd-fade .12s ease-out;
  }

  /* “Hover-brygga” som eliminerar lucka mellan toggle och meny */
  .dropdown::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    top: 100%;
    height: 10px;     /* liten osynlig zon som håller hover vid förflyttning */
  }

  /* Rotera pilen när öppen */
  .dropdown:hover > .dropdown-toggle .chevron,
  .dropdown.open > .dropdown-toggle .chevron {
    transform: rotate(180deg);
    transition: transform .15s ease;
  }
}

/* MOBIL: följ din .main-nav.active – meny stackas och är klickbar */
@media (max-width: 768px) {
  .dropdown-menu {
    position: static;
    background: transparent;
    color: inherit;
    border: 0;
    box-shadow: none;
    padding: 6px 0 0 10px;  /* lite indrag under “Casinos” */
  }
  .dropdown-menu a {
    padding: 8px 0;
    border-radius: 6px;
  }
}

/* Liten fade-in */
@keyframes dd-fade {
  from { opacity: 0; transform: translateY(-2px); }
  to   { opacity: 1; transform: translateY(0); }
}

/* FIX: din underline på huvudlänkar – rättstavning av 'absolute' */
.main-nav a::after {
  position: absolute;   /* ibland har detta råkat bli 'absolut' i filen */
}

/* --- Shortcut-box: klipp till innehållet, inte kolumnens höjd --- */
.side-shortcuts{
  /* Sluta växa på höjden/följa kolumnen */
  height: auto !important;
  min-height: 0 !important;
  flex: 0 0 auto !important;
  align-self: start !important;    /* i grid/flex: fäst upptill, höjd = content */

  /* Om din bakgrund/ram tidigare låg här: ta bort den från containern */
  background: transparent !important;
  border: 0 !important;

  /* Om den var flex med space-between (som drar ut), gör den neutral */
  display: block !important;
}

/* Lägg den visuella boxen på INNEHÅLLET i stället (så höjden följer innehållet) */
.side-shortcuts .side-list,
.side-shortcuts .side-content,
.side-shortcuts > div {
  background: rgba(10,13,20,0.98);
  border: 1px solid rgba(255,255,255,0.08);
  border-radius: 12px;
  padding: 12px;
  box-shadow: 0 18px 40px rgba(0,0,0,0.35);
  overflow: hidden;               /* klipp hörn och ev. överflöd */
}

/* Om du endast har #side-list direkt i boxen: detta räcker */
.side-shortcuts > #side-list{
  background: rgba(10,13,20,0.98);
  border: 1px solid rgba(255,255,255,0.08);
  border-radius: 12px;
  padding: 12px;
  box-shadow: 0 18px 40px rgba(0,0,0,0.35);
  overflow: hidden;
}

/* Dölj boxen helt om listan är tom (extra trygghet) */
.side-shortcuts:has(#side-list:empty){ display:none; }

/* Småsaker som kan skapa "tom halva" */
.side-shortcuts hr:last-child{ display:none; }        /* göm ensam skiljelinje */
.side-shortcuts .spacer, 
.side-shortcuts .filler{ display:none !important; }   /* spök-padders om sådana finns */



/* Gör sektioner och heron ljusare och transparentare */
.hero,
.section {
  background: rgba(255,255,255,0.07) !important;
  backdrop-filter: blur(8px) brightness(1.2) !important;
  border: 1px solid rgba(255,255,255,0.08) !important;
  box-shadow: 0 10px 30px rgba(0,0,0,0.4) !important;
}

/* Justerar textfärger så de inte blir för bleka mot ljusare bakgrund */
.hero, .section, .casino-card, .hero-title, .hero-sub, .section-header {
  color: #f5f6fa !important;
}

/* Extra ljusare "casino-glow" overlay (ligger ovanpå bilden) */
body::after {
  content: "";
  position: fixed;
  inset: 0;
  background: radial-gradient(circle at 50% 20%, rgba(255,204,0,0.05), transparent 70%);
  z-index: -1;
  pointer-events: none;
}


/* === HERO TRANSPARENT FIX === */
.hero {
  background: transparent !important;
  backdrop-filter: none !important;
  box-shadow: none !important;
  border: none !important;
}

/* Om du vill ha en liten glow över texten (valfritt men snyggt) */
.hero .hero-title,
.hero .hero-sub {
  text-shadow: 0 2px 8px rgba(0,0,0,0.5);
}

.casino-card .features li:nth-child(3){
  display: none !important;
}

@media (max-width: 768px){
  .casino-card .features li:nth-child(3){
    display: none !important;
  }
}

/* === Latest Review Section (uppdaterad design) === */
.mini-card {
  background: linear-gradient(145deg, #1c1c1c, #242424);
  border: 1px solid rgba(255,255,255,0.08);
  border-radius: 16px;
  box-shadow: 0 8px 20px rgba(0,0,0,0.4);
  padding: 20px;
  color: #fff;
  transition: all 0.3s ease-in-out;
  position: relative;
  overflow: hidden;
}

.mini-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 12px 25px rgba(0,0,0,0.5);
  border-color: rgba(255, 153, 0, 0.5);
}

/* Rubrik */
.mini-card .mini-kicker {
  display: inline-block;
  background: linear-gradient(90deg, #ff9900, #ffcc00);
  color: #000;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  font-size: 0.8rem;
  padding: 4px 10px;
  border-radius: 8px;
  margin-bottom: 12px;
}

/* Översta raden med logga och text */
.mini-row {
  display: flex;
  align-items: center;
  gap: 15px;
  margin-bottom: 12px;
}

.mini-row img {
  background: #fff;
  border-radius: 10px;
  padding: 6px;
  width: 120px;
  height: auto;
  box-shadow: 0 0 10px rgba(0,0,0,0.3);
}

/* Rubrik + subtext */
#lr-title {
  font-size: 1.2rem;
  font-weight: 700;
  color: #ffcc66;
  margin-bottom: 5px;
}

#lr-sub {
  font-size: 0.9rem;
  color: #ccc;
  line-height: 1.4;
}

/* Fördelar */
.mini-pros {
  margin: 15px 0;
  padding-left: 0;
  list-style: none;
}

.mini-pros li {
  font-size: 0.9rem;
  color: #eee;
  margin: 3px 0;
  position: relative;
  padding-left: 15px;
}

.mini-pros li::before {
  content: '✓';
  color: #ff9900;
  position: absolute;
  left: 0;
}

/* Knappen längst ner */
.mini-btn {
  display: inline-block;
  width: 100%;
  text-align: center;
  background: linear-gradient(90deg, #ff9900, #ffcc00);
  color: #000;
  font-weight: 700;
  text-transform: uppercase;
  border-radius: 10px;
  padding: 10px 0;
  text-decoration: none;
  transition: all 0.3s ease;
  box-shadow: 0 4px 12px rgba(255,153,0,0.4);
}

.mini-btn:hover {
  background: linear-gradient(90deg, #ffb700, #ffee33);
  transform: scale(1.03);
  box-shadow: 0 6px 16px rgba(255,204,0,0.5);
}

/* ===== WIDE VARIANT – bygger ovanpå din .casino-card ===== */
.casino-card--wide{
  /* mer yta men samma mörka stil som dina kort */
  padding: 16px 16px 14px;
  display: flex;
  flex-direction: column;
  gap: 12px;
  min-height: 360px; /* större, men kompakt nog för 4 på rad */
}



.casino-card--wide .ccw-head{ min-width:0; }
.casino-card--wide .ccw-name{
  margin:0; font-weight:800; font-size:1.05rem;
}
.casino-card--wide .ccw-offer{
  margin:2px 0 6px; font-weight:600; opacity:.95;
}
.casino-card--wide .ccw-rating{
  display:flex; align-items:center; gap:6px;
  color:#ffb400; font-weight:700; font-size:.92rem;
}
.casino-card--wide .ccw-rating .ccw-score{ opacity:.9; }

/* små badges under rubriken */
.casino-card--wide .ccw-badges{
  list-style:none; padding:0; margin:6px 0 0;
  display:flex; flex-wrap:wrap; gap:6px;
}
.casino-card--wide .ccw-badges li{
  font-size:.75rem; font-weight:700;
  padding:4px 8px; border-radius:999px;
  background: rgba(255,255,255,0.06);
  border:1px solid rgba(255,255,255,0.08);
}

/* METRICS: 4 rutor */
.casino-card--wide .ccw-metrics{
  list-style:none; padding:0; margin:0;
  display:grid; grid-template-columns:repeat(4,1fr); gap:8px;
}
.casino-card--wide .ccw-metrics li{
  background: rgba(255,255,255,0.04);
  border:1px solid rgba(255,255,255,0.08);
  border-radius:10px; padding:10px;
  display:flex; flex-direction:column; gap:2px;
  min-height:66px;
}
.casino-card--wide .ccw-metrics span{
  font-size:.78rem; opacity:.75;
}
.casino-card--wide .ccw-metrics strong{
  font-size:1rem; font-weight:800;
}

/* INFO: 3–4 rader med ikoner */
.casino-card--wide .ccw-info{
  list-style:none; padding:0; margin:0;
  display:grid; grid-template-columns:1fr 1fr; gap:6px 10px;
}
.casino-card--wide .ccw-info li{
  display:flex; align-items:center; gap:8px;
  font-size:.94rem; opacity:.95;
}
.casino-card--wide .ccw-info i{ opacity:.9; }

/* CTAS – använd dina befintliga knappar, bara layouten här */
.casino-card--wide .ccw-ctas{
  display:flex; gap:10px; margin-top:4px;
}
.casino-card--wide .ccw-ctas .review-btn,
.casino-card--wide .ccw-ctas .play-btn{
  flex:1 1 auto; text-align:center;
  font-weight:800;
}

/* Footnote */
.casino-card--wide .ccw-foot{
  font-size:.78rem; opacity:.7; margin-top:2px;
}

/* RESPONSIVE: håller 4 på rad, men skalar innehåll snyggt */
@media (max-width:1100px){
  .casino-card--wide .ccw-metrics{ grid-template-columns:repeat(2,1fr); }
  .casino-card--wide .ccw-info{ grid-template-columns:1fr; }
}
@media (max-width:520px){
  .casino-card--wide{ padding:14px; }
}

/* ===== Svag bakgrundsbelysning på hover, utan rörelse ===== */
.casino-card,
.casino-card--wide,
.review-card-simple,
.review-card-premium {
  position: relative;                 /* behövs för overlay */
  overflow: hidden;                   /* klipp overlay i rundade hörn */
  transform: none !important;         /* ingen förflyttning */
  transition: box-shadow 80ms linear; /* behåll ev. minimal skugga */
}

/* Overlay som bakgrundsglöd */
.casino-card::before,
.casino-card--wide::before,
.review-card-simple::before,
.review-card-premium::before {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: inherit;
  background: radial-gradient(120% 120% at 50% 50%,
              rgba(255,255,255,0.06) 0%,
              rgba(255,255,255,0.02) 60%,
              rgba(255,255,255,0.00) 100%);
  opacity: 0;                         /* osynlig som standard */
  pointer-events: none;               /* klick går igenom */
  transition: opacity 100ms linear;   /* mjuk fade */
}

/* Hover = bara lite mer ljus, absolut ingen rörelse */
.casino-card:hover::before,
.casino-card--wide:hover::before,
.review-card-simple:hover::before,
.review-card-premium:hover::before {
  opacity: 1;                         /* svag upplysning */
}

/* Valfritt: pytteliten skuggjustering (nästan omärklig) */
.casino-card:hover,
.casino-card--wide:hover,
.review-card-simple:hover,
.review-card-premium:hover {
  box-shadow: 0 1px 4px rgba(0,0,0,0.07);
}


/* Packa om textdelen så den får plats bredvid stor logga */
.casino-card--wide .ccw-head{
  min-width: 0;
  display: grid;
  grid-template-columns: 1fr;   /* allt i en kolumn, kompakt */
  gap: 6px;
}
.casino-card--wide .ccw-name{
  margin: 0;
  font-size: 1.05rem;
  line-height: 1.2;
  font-weight: 800;
}
.casino-card--wide .ccw-offer{
  margin: 0;
  font-weight: 700;
  opacity: .95;
}

/* Gör rating + badges extra kompakta så de inte trycker på loggan */
.casino-card--wide .ccw-rating{
  display: flex; align-items: center; gap: 6px;
  color: #ffb400;
  font-weight: 700;
  font-size: .9rem;
}
.casino-card--wide .ccw-badges{
  display:flex; flex-wrap:wrap; gap:6px;
  margin-top: 2px;
}
.casino-card--wide .ccw-badges li{
  font-size: .75rem; font-weight: 700;
  padding: 4px 8px;
  border-radius: 999px;
  background: rgba(255,255,255,0.06);
  border: 1px solid rgba(255,255,255,0.08);
}

/* Justera undersektioner lite för den större toppen */
.casino-card--wide .ccw-metrics{ margin-top: 2px; }
.casino-card--wide .ccw-info{ margin-top: 0; }


/* === Reviews hero: center the block nicely === */
.hero--spread .hero-inner{
  max-width: 1180px;          /* lite bredare yta */
  margin: 0 auto;             /* centrera hela hero */
  grid-template-columns: 1fr; /* en kolumn på den här sidan */
  justify-items: center;      /* centrera innehållet i griden */
}

.hero--spread .hero-copy{
  max-width: 980px;           /* centrera textblocket */
  width: 100%;
}

.hero--spread .hero-title,
.hero--spread .updated-date{
  text-align: center;         /* centrera rubrik + datum */
}

/* Introtext: centrera blocket men behåll lättläst vänsterjusterad text */
.hero--spread .hero-intro{
  margin: 0 auto;             /* lägg blocket i mitten */
  max-width: 95ch;            /* behaglig radlängd */
  column-gap: 40px;
}
@media (min-width: 992px){
  .hero--spread .hero-intro{ column-count: 2; }
}
@media (max-width: 991.98px){
  .hero--spread .hero-intro{ column-count: 1; }
}

/* Stabil tvåspalt i hero som inte bryter stycken och ser jämn ut */
.hero--spread .hero-intro--grid{
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 40px;
  max-width: 95ch;
  margin: 0 auto;
  line-height: 1.65;
  color: var(--muted, #c4c9d4);
}
.hero--spread .hero-intro--grid .col p{
  margin: 0 0 14px;
}

/* Mobil/tablet = en spalt */
@media (max-width: 991.98px){
  .hero--spread .hero-intro--grid{ grid-template-columns: 1fr; gap: 16px; }
}

/**************************************************
 * LOGO SYSTEM v2 — snygga, konsekventa loggor
 * - Drop-in: lägg längst ned i styles.css
 * - HTML: <div class="logo-wrapper"><img loading="lazy" class="casino-logo" src="..." alt=""></div>
 **************************************************/

/* Basstorlek (kan justeras globalt) */
:root{
  --logo-w: 180px;
  --logo-h: 84px;
  --logo-radius: 12px;
  --logo-pad: 8px;
  --logo-stroke: rgba(255,255,255,.12);
  --logo-surface: rgba(255,255,255,.04);
}

/* 1) Standard wrapper — funkar i alla kort */
.logo-wrapper{
  position: relative;
  width: var(--logo-w);
  height: var(--logo-h);
  margin: 10px auto 12px;
  padding: var(--logo-pad);
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: var(--logo-radius);
  background: var(--logo-surface);
  border: 1px solid var(--logo-stroke);
  box-shadow:
    0 8px 22px rgba(0,0,0,.35),
    inset 0 0 0 1px rgba(255,255,255,.04);
  overflow: hidden;
  backdrop-filter: blur(6px);
}

/* Liten highlight/glass */
.logo-wrapper::after{
  content:"";
  position:absolute; inset:0;
  background:
    radial-gradient(100% 60% at 50% 0%, rgba(255,255,255,.08), transparent 55%),
    linear-gradient(180deg, rgba(255,255,255,.04), rgba(255,255,255,0) 40%);
  pointer-events:none;
}

/* 2) Bilden – aldrig stretch, alltid skarp */
.logo-wrapper img,
.casino-logo{
  display: block;
  width: auto;
  height: auto;
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
  image-rendering: auto;                /* skarp på retina */
  -webkit-user-drag: none;
}

/* 3) Responsiv skalning */
@media (max-width: 900px){
  :root{ --logo-w: 170px; --logo-h: 78px; }
}
@media (max-width: 560px){
  :root{ --logo-w: 160px; --logo-h: 74px; }
}

/* 4) Utilities för specialfall (valfritt) */
.logo-wrapper.is-square{ --logo-w: 120px; --logo-h: 120px; }
.logo-wrapper.is-wide  { --logo-w: 200px; --logo-h: 72px;  }
.logo-wrapper.is-tall  { --logo-w: 150px; --logo-h: 96px;  }

/* Ljus logga på mörk bakgrund som behöver lyftas lite */
.logo-wrapper.elevate{
  box-shadow:
    0 10px 26px rgba(0,0,0,.42),
    0 0 0 1px rgba(255,255,255,.05) inset;
}

/* Om du har helt vit/svart logga och vill tona mot temat */
.casino-logo.is-mono { filter: saturate(0) contrast(1.05) brightness(1.02); }

/* 5) Integrering i dina kortlayouter */
.casino-card .logo-wrapper{ margin-top: 4px; }

/* Wide-kort: använd samma “seat” men större ruta och grid align */
.casino-card--wide .ccw-top{
  display: grid;
  grid-template-columns: 140px 1fr;
  gap: 14px;
  align-items: center;
}
.casino-card--wide .ccw-logo{
  /* låt .ccw-logo återanvända logo-wrapper-stilen */
  all: unset;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 140px; height: 140px;
  border-radius: 14px;
  background: var(--logo-surface);
  border: 1px solid var(--logo-stroke);
  box-shadow: 0 8px 22px rgba(0,0,0,.35), inset 0 0 0 1px rgba(255,255,255,.04);
  overflow: hidden;
  backdrop-filter: blur(6px);
}
.casino-card--wide .ccw-logo img{ max-width:100%; max-height:100%; object-fit: contain; }

@media (max-width: 1100px){
  .casino-card--wide .ccw-top{ grid-template-columns: 120px 1fr; gap: 12px; }
  .casino-card--wide .ccw-logo{ width:120px; height:120px; }
}
@media (max-width: 900px){
  .casino-card--wide .ccw-top{ grid-template-columns: 100px 1fr; gap: 10px; }
  .casino-card--wide .ccw-logo{ width:100px; height:100px; }
}
@media (max-width: 520px){
  .casino-card--wide .ccw-top{ grid-template-columns: 84px 1fr; gap: 10px; }
  .casino-card--wide .ccw-logo{ width:84px; height:84px; border-radius: 12px; }
}

/* 6) Skydd mot oönskade tidigare regler (failsafe) */
.logo-wrapper img,
.casino-card--wide .ccw-logo img{
  max-width: 100% !important;
  max-height: 100% !important;
  width: auto !important;
  height: auto !important;
  object-fit: contain !important;
  background: transparent !important;
  border: 0 !important;
}

/* 7) Mikro-animation (valfritt, mycket subtil) */
.logo-wrapper,
.casino-card--wide .ccw-logo{
  transition: transform .18s ease, box-shadow .18s ease, background .18s ease;
}
.casino-card:hover .logo-wrapper,
.casino-card--wide:hover .ccw-logo{
  transform: translateY(-1px);
  box-shadow:
    0 12px 28px rgba(0,0,0,.42),
    inset 0 0 0 1px rgba(255,255,255,.05);
}

/* === Center logo box in all layouts === */
.casino-card .logo-wrapper{
  margin-inline: auto;      /* center i block-layout */
  align-self: center;       /* center i flex/grid på korsaxeln */
  justify-self: center;     /* center i grid på huvudaxeln */
}

/* Om loggan ligger i en länk eller inner-element – fyll rutan så centreringsregler funkar */
.logo-wrapper > :is(a, div, span) {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
}


/* Wide-kort: säkerställ centrerad loggoruta i grid-kolumnen */
.casino-card--wide .ccw-logo{
  margin: 0 auto;
  align-self: center;
  justify-self: center;
}

/* Eliminera små “baseline-gap” som kan se ut som off-center */
.logo-wrapper img {
  display: block;
  vertical-align: middle;
}


/* === Hide license on cards === */
.casino-card .license-block,
.casino-card .license-title,
.casino-card .license-icon,
.casino-card .license-chip,
.casino-card [class*="license"]{
  display: none !important;
}

/* Om “license”-sektionen låg i en grid/flex-rad – ta bort tom yta */
.casino-card .features,
.casino-card .card-meta,
.casino-card .card-footer{
  gap: 10px; /* justera vid behov om det blev för glest */
}

/* Wide-kort (ifall licensen fanns där också) */
.casino-card--wide .license-block,
.casino-card--wide .license-chip,
.casino-card--wide [class*="license"]{
  display: none !important;
}

/* Nollställ ev. marginal efter borttagen licensrad */
.license-block + *,
.license-chip + *{
  margin-top: 0 !important;
}

/* Hide section menus on mobile */
@media (max-width: 900px){
  .side-shortcuts{ display:none !important; }         /* sidomenyn på startsidan */
  .review-nav-mobile{ display:none !important; }      /* mobilnav i reviews */
}

/* === FIX: hamburgermenyn på mobil === */
@media (max-width: 768px) {
  .site-header {
    position: relative;
    z-index: 2000; /* se till att headern och knappen ligger över allt */
  }

  .menu-toggle {
    display: block;
    position: relative;
    z-index: 2001; /* högre än .main-nav */
    cursor: pointer;
    background: none;
    border: none;
    width: 40px;
    height: 40px;
  }

  /* Gör symbolen tydlig och klickbar */
  .menu-toggle::before {
    content: "☰";
    font-size: 28px;
    color: #ffcc00; /* byt till orange/guld för synlighet */
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
  }

  /* När menyn är öppen – byt till X */
  .menu-toggle.is-open::before {
    content: "✖";
    color: #ffcc00;
  }

  /* Visa menyn när aktiv */
  .main-nav {
    display: none;
    flex-direction: column;
    background: #0b0f17;
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    padding: 20px;
    border-top: 2px solid #ff9900;
  }

  .main-nav.active {
    display: flex;
  }
}

/* === NAV OVERRIDE, sist i filen === */
@media (max-width: 768px){
  .site-header { position: relative; z-index: 2000; }
  .menu-toggle { pointer-events: auto !important; z-index: 2001 !important; }
  .site-header .main-nav { display: none !important; }
  .site-header .main-nav.active { display: flex !important; }
  .menu-toggle.is-open::before { content: "✖"; }
}

/* === MOBILE OPTIMIZATION FOR WIDE CARDS (QBET STYLE) === */
@media (max-width: 640px) {

  .casino-card--wide {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    gap: 12px;
    padding: 16px 14px;
  }

  /* Top layout */
  .casino-card--wide .ccw-top {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 10px;
    text-align: center;
    width: 100%;
  }

  /* Logo */
  .casino-card--wide .ccw-logo img {
    width: 95px;
    height: auto;
    border-radius: 10px;
  }

  /* Name */
  .casino-card--wide .ccw-name {
    font-size: 1.35rem;
    line-height: 1.25;
  }

  /* Offer */
  .casino-card--wide .ccw-offer {
    font-size: 0.95rem;
    color: #ffd666;
    margin-top: 3px;
  }

  /* Rating */
  .casino-card--wide .ccw-rating {
    font-size: 0.9rem;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 4px;
  }

  /* Badges */
  .casino-card--wide .ccw-badges {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 6px;
    list-style: none;
    padding: 0;
    margin-top: 4px;
  }
  .casino-card--wide .ccw-badges li {
    background: rgba(255,255,255,.08);
    border: 1px solid rgba(255,215,0,.25);
    border-radius: 8px;
    padding: 3px 8px;
    font-size: 0.8rem;
  }

  /* Metrics (2 columns) */
  .casino-card--wide .ccw-metrics {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 10px;
    width: 100%;
    margin: 12px 0;
    list-style: none;
    padding: 0;
  }
  .casino-card--wide .ccw-metrics li {
    background: rgba(255,255,255,.05);
    border: 1px solid rgba(255,255,255,.1);
    border-radius: 8px;
    padding: 8px 0;
    font-size: 0.85rem;
    min-height: 62px;
  }

  /* Info stays left-aligned for better readability */
  .casino-card--wide .ccw-info {
    list-style: none;
    padding: 0;
    margin: 12px 0;
    font-size: 0.85rem;
    text-align: left;
    width: 100%;
    display: grid;
    gap: 8px;
  }

  /* CTA buttons (full width) */
  .casino-card--wide .ccw-ctas {
    display: flex;
    flex-direction: column;
    gap: 10px;
    width: 100%;
    margin-top: auto;
  }
  .casino-card--wide .ccw-ctas a {
    width: 100%;
    text-align: center;
  }

  /* Footnote */
  .casino-card--wide .ccw-foot {
    font-size: 0.75rem;
    opacity: 0.7;
    margin-top: 10px;
  }
}


/* === FOOTER === */
.site-footer {
  background: rgba(0, 0, 0, 0.75);
  color: #ccc;
  padding: 50px 20px 30px;
  border-top: 1px solid rgba(255,255,255,0.1);
  font-size: 0.9rem;
  backdrop-filter: blur(6px);
}

.footer-container {
  max-width: 1200px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
  gap: 40px;
}

.footer-col h3,
.footer-col h4 {
  color: #ffd700;
  margin-bottom: 10px;
  font-weight: 700;
}

.footer-col p {
  line-height: 1.5;
  margin-bottom: 10px;
}

.footer-col ul {
  list-style: none;
  padding: 0;
  margin: 0;
}

.footer-col ul li {
  margin-bottom: 6px;
}

.footer-col a {
  color: #ff9900;
  text-decoration: none;
  transition: color 0.2s ease;
}

.footer-col a:hover {
  color: #ffd700;
  text-decoration: underline;
}

.footer-contact a {
  color: #ffd666;
  font-weight: 600;
}

.age-warning {
  margin-top: 10px;
  font-weight: 700;
  color: #ffd666;
}

.footer-bottom {
  text-align: center;
  border-top: 1px solid rgba(255,255,255,0.15);
  margin-top: 40px;
  padding-top: 20px;
  font-size: 0.85rem;
  opacity: 0.9;
}

@media (max-width: 640px) {
  .footer-container {
    grid-template-columns: 1fr;
    text-align: center;
  }
}



.review-btn.off {
  pointer-events: none;
  background: #444 !important;
  color: #aaa !important;
  border: 1px solid #555 !important;
  opacity: 0.6;
  cursor: not-allowed;
}

.review-btn.off:hover {
  background: #444 !important;
  color: #aaa !important;
}

* {
  font-display: swap !important;
}

@media (max-width: 768px) {
  body { background-attachment: scroll; }
}



/* ======= Pagination (orange style to match site) ======= */
.pagination {
  text-align: center;
  margin: 60px 0 30px;
  font-family: 'Poppins', sans-serif;
}

.pagination a,
.pagination span {
  display: inline-block;
  margin: 0 8px;
  padding: 10px 22px;
  border-radius: 30px;
  text-decoration: none;
  font-weight: 600;
  color: #333;
  background: #f4f4f4;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.08);
  transition: all 0.25s ease;
}

.pagination a:hover {
  background: #ff9c3f; /* orange hover */
  color: #fff;
  box-shadow: 0 3px 10px rgba(255, 156, 63, 0.5);
  transform: translateY(-2px);
}

.pagination .current {
  background: #ff9c3f; /* active orange */
  color: #fff;
  box-shadow: 0 3px 10px rgba(255, 156, 63, 0.5);
  cursor: default;
}

.pagination a:first-child,
.pagination a:last-child {
  padding: 10px 16px;
}

.pagination a:first-child:hover,
.pagination a:last-child:hover {
  background: #e68b30; /* darker orange on hover */
}

/* ======= Responsive pagination ======= */
@media (max-width: 600px) {
  .pagination a,
  .pagination span {
    margin: 0 4px;
    padding: 8px 16px;
    font-size: 0.95rem;
  }
}

/* === Latest review logo: remove white box & extra padding === */
#latest-review .mini-row img {
  background: transparent !important;
  padding: 0 !important;
  box-shadow: none !important;
  width: 120px;
  height: 78px;
  object-fit: contain; /* eller 'cover' om du vill fylla rutan mer aggressivt */
  border-radius: 8px;
}

/* === FIX: Compact logo boxes in "Check out other reviews" === */
.other-reviews-grid .casino-card.small .logo-wrapper {
  width: auto !important;      /* bryter global width:100% */
  height: auto;
  margin: 0 auto;
}

/* om du vill att även inner-elementet inte tvingas till 100% */
.other-reviews-grid .casino-card.small .logo-wrapper > * {
  width: auto !important;
  height: auto !important;
}

.other-reviews-grid .casino-card.small .logo-wrapper {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 10px;
  width: 160px;                /* fast, snygg box */
  height: 80px;
  border-radius: 10px;
}

.other-reviews-grid .casino-card.small .logo-wrapper img {
  max-width: 120px;
  max-height: 50px;
  width: auto;
  height: auto;
  object-fit: contain;
  display: block;
}


.disclaimer-text {
  margin: 6px 0 0;
  font-size: 0.8rem;
  color: #aaa;
  line-height: 1.5;
}

/**************************************************
 * GUIDE HUB STYLES
 **************************************************/

.guides-hero {
  padding: 64px 20px 48px;
  text-align: center;
  color: var(--text, #f5f7fa);
}

.guides-hero h1 {
  font-size: clamp(2rem, 4vw, 2.6rem);
  color: #ffd666;
  font-weight: 800;
  margin-bottom: 14px;
  text-shadow: 0 2px 10px rgba(0, 0, 0, 0.4);
}

.guides-hero p {
  max-width: 700px;
  margin: 0 auto;
  font-size: 1.05rem;
  color: var(--muted, #c4c9d4);
  line-height: 1.6;
  opacity: .95;
}

/* === GRID === */
.guides-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  gap: 24px;
  max-width: 1100px;
  margin: 0 auto;
  padding: 40px 20px 80px;
}

/* === GUIDE CARD === */
.guide-card {
  position: relative;
  background: var(--surface-strong, rgba(10,13,20,.92));
  border: 1px solid var(--stroke, rgba(255,255,255,.12));
  border-radius: 16px;
  padding: 22px 20px;
  color: var(--text, #f5f7fa);
  box-shadow: 0 10px 24px rgba(0,0,0,.3);
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}

.guide-card:hover {
  transform: translateY(-4px);
  border-color: var(--accent, #ff9900);
  box-shadow: 0 12px 28px rgba(255, 153, 0, 0.25);
}

.guide-label {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: 0.8rem;
  text-transform: uppercase;
  font-weight: 700;
  color: var(--accent, #ff9900);
  margin-bottom: 10px;
  opacity: 0.9;
}

.guide-card h2 {
  font-size: 1.3rem;
  color: #fff;
  font-weight: 700;
  margin: 4px 0 10px;
  line-height: 1.3;
}

.guide-card p {
  font-size: 0.98rem;
  color: var(--muted, #c4c9d4);
  flex-grow: 1;
  margin-bottom: 18px;
  line-height: 1.55;
}

/* === CTA link === */
.guide-card a {
  align-self: flex-start;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  color: var(--accent, #ff9900);
  font-weight: 700;
  text-decoration: none;
  transition: color .25s ease, transform .25s ease;
}

.guide-card a:hover {
  color: #ffd666;
  transform: translateX(3px);
}

/* === MOBILE === */
@media (max-width: 600px) {
  .guides-hero {
    padding: 48px 16px 36px;
  }
  .guides-hero p {
    font-size: 0.95rem;
  }
  .guide-card {
    padding: 18px 16px;
  }
}

/* === GUIDE PAGE === */
.guide-content {
  max-width: 800px;
  margin: 0 auto;
  padding: 60px 20px 80px;
  color: #f5f7fa;
  line-height: 1.7;
}

.guide-content h2 {
  font-size: 1.6rem;
  color: #ffd666;
  margin-top: 48px;
  margin-bottom: 14px;
  font-weight: 700;
}

.guide-content p {
  margin-bottom: 18px;
  color: #d8dbe3;
}

.clean-list {
  list-style: none;
  padding: 0;
  margin: 0 0 24px;
}

.clean-list li {
  padding-left: 1.6em;
  position: relative;
  margin-bottom: 8px;
}

.clean-list li::before {
  content: "•";
  position: absolute;
  left: 0.4em;
  color: #ffd666;
  font-weight: bold;
}

.tip-box {
  background: rgba(255, 214, 102, 0.08);
  border-left: 3px solid #ffd666;
  padding: 14px 18px;
  border-radius: 8px;
  font-size: 0.98rem;
  margin: 28px 0;
  color: #e7e9ef;
}

.quote-box {
  margin-top: 40px;
  background: rgba(255,255,255,0.05);
  border-left: 3px solid #ff9900;
  padding: 20px 24px;
  font-style: italic;
  border-radius: 10px;
  color: #f0f2f5;
}

.quote-box cite {
  display: block;
  font-size: 0.9rem;
  opacity: 0.8;
  margin-top: 8px;
  font-style: normal;
}

/**************************************************
 * GUIDE HERO — No-Sticky Bonus
 **************************************************/
.guide-hero {
  position: relative;
  background: url('/images/hero/no-sticky-bg.webp') center/cover no-repeat;
  min-height: 420px;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  color: #fff;
  overflow: hidden;
}

.guide-hero-overlay {
  position: absolute;
  inset: 0;
  z-index: 1;
}

.guide-hero-content {
  position: relative;
  z-index: 2;
  padding: 40px 20px;
  max-width: 800px;
  animation: fadeInUp 0.8s ease-out both;
}

.guide-hero h1 {
  font-size: clamp(2rem, 5vw, 3rem);
  font-weight: 800;
  color: #ffd666;
  margin-bottom: 14px;
  text-shadow: 0 2px 20px rgba(0, 0, 0, 0.6);
}

.guide-tagline {
  font-size: 1.1rem;
  color: #e4e7f0;
  margin-bottom: 24px;
  opacity: 0.95;
}

.author-chip {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  font-size: 0.95rem;
  background: rgba(255,255,255,0.08);
  border-radius: 30px;
  padding: 6px 14px;
  color: #f5f7fa;
  backdrop-filter: blur(6px);
}

.author-chip img {
  border-radius: 50%;
  border: 2px solid #ffd666;
}

@keyframes fadeInUp {
  from {
    opacity: 0;
    transform: translateY(20px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@media (max-width: 600px) {
  .guide-hero {
    min-height: 360px;
  }
  .guide-hero h1 {
    font-size: 2.1rem;
  }
  .guide-tagline {
    font-size: 1rem;
  }
}

/* === FAQ SECTION === */
.faq-section {
  max-width: 780px;
  margin: 80px auto;
  padding: 0 20px 60px;
  border-top: 1px solid rgba(255,255,255,0.1);
}

.faq-title {
  font-size: 1.7rem;
  color: #ffd666;
  font-weight: 700;
  margin-bottom: 32px;
  text-align: center;
}

.faq-item {
  margin-bottom: 28px;
  background: rgba(255,255,255,0.05);
  border-radius: 12px;
  padding: 20px 24px;
  border-left: 3px solid #ffd666;
}

.faq-item h3 {
  font-size: 1.1rem;
  color: #fff;
  font-weight: 600;
  margin-bottom: 10px;
}

.faq-item p {
  color: #d4d8e0;
  line-height: 1.6;
}

.faq-item a {
  color: #ffd666;
  text-decoration: none;
  font-weight: 600;
}

.faq-item a:hover {
  text-decoration: underline;
}

/* === FORCE GOLD COLOR ON HERO TITLE === */
.hero .hero-title,
.hero-title {
  color: #ffd666 !important;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 1px;
}

/* ================================
   OFFICIAL REGISTERS – MATCH SITE
   ================================ */

.reg-links {
  padding: 28px 16px;
  margin: 24px auto 0;
  background: var(--surface-strong, rgba(10,13,20,.92));
  border: 1px solid var(--stroke, rgba(255,255,255,.12));
  border-radius: 14px;
  box-shadow: 0 10px 24px rgba(0,0,0,.35);
  max-width: 1100px;
}

.reg-links .reg-title {
  margin: 0 0 12px;
  font-size: 1.05rem;
  font-weight: 800;
  color: #fff;
  letter-spacing: .2px;
}

.reg-links .reg-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0,1fr));
  gap: 10px;
}
@media (min-width: 720px) {
  .reg-links .reg-grid { grid-template-columns: repeat(4, minmax(0,1fr)); }
}

.reg-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 10px 14px;
  border-radius: 999px;
  background: rgba(255,255,255,.06);
  color: var(--text, #e8eef7);
  text-decoration: none;
  font-weight: 700;
  font-size: .95rem;
  border: 1px solid var(--stroke, rgba(255,255,255,.14));
  box-shadow: 0 1px 2px rgba(0,0,0,.12);
  transition: box-shadow .2s ease, border-color .2s ease, transform .05s ease;
}
.reg-btn:hover {
  border-color: rgba(255,255,255,.28);
  box-shadow: 0 0 0 3px rgba(255,153,0,.18);
  transform: translateY(-1px);
}
.reg-btn:active { transform: translateY(0); }

.reg-note {
  margin-top: 10px;
  color: var(--muted, #c4c9d4);
  font-size: .9rem;
  opacity: .95;
}

/* Valfria små ikoner i knapparna (Font Awesome finns redan) */
.reg-btn i { opacity: .9; }

/* =========================
   FAQ – your section flavor
   ========================= */

/* Om du använder <section class="faq-section"> med .faq-item */
.faq-section {
  padding: 28px 16px;
  max-width: 1100px;
  margin: 24px auto 0;
}
.faq-section .faq-title {
  margin: 0 0 10px;
  font-size: 1.2rem;
  font-weight: 800;
  color: #fff;
}

.faq-section .faq-item {
  background: var(--surface-strong, rgba(10,13,20,.92));
  border: 1px solid var(--stroke, rgba(255,255,255,.12));
  border-radius: 14px;
  padding: 14px 16px;
  box-shadow: 0 10px 24px rgba(0,0,0,.35);
  color: var(--text, #f5f7fa);
  margin-bottom: 10px;
}
.faq-section .faq-item h3 {
  margin: 0 0 6px;
  font-size: 1.05rem;
  color: #fff;
}
.faq-section .faq-item p {
  margin: 0;
  color: var(--muted, #c4c9d4);
}

/* Om du istället använder <details> i .faq redan – finjustera */
.faq details { background: transparent; border-radius: 10px; }
.faq summary { color: #fff; }
.faq .faq-a { color: var(--muted, #c4c9d4); }

/* ==============================
   License comparison tight tweak
   – (matchar dina quality-cards)
   ============================== */

#compare-licenses .providers-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 12px;
}
@media (min-width: 900px) {
  #compare-licenses .providers-grid { grid-template-columns: 1fr 1fr; }
}
#compare-licenses .quality-card {
  background: var(--surface-strong, rgba(10,13,20,.92));
  border: 1px solid var(--stroke, rgba(255,255,255,.12));
  border-radius: 14px;
  padding: 16px 18px;
  color: var(--text, #f5f7fa);
  box-shadow: 0 10px 24px rgba(0,0,0,.35);
}
#compare-licenses .quality-kicker {
  font-size: 1rem;
  font-weight: 600;
  margin-bottom: 10px;
  color: #fff;
}
#compare-licenses .clean-list {
  list-style: none;
  padding: 0;
  margin: 8px 0 0;
  display: grid;
  gap: 8px;
  color: var(--text, #f5f7fa);
}
#compare-licenses .chip-row { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 10px; }
#compare-licenses .chip {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 6px 10px;
  border-radius: 999px;
  background: rgba(255,255,255,.06);
  border: 1px solid var(--stroke, rgba(255,255,255,.14));
  color: var(--text, #e8eef7);
  font-weight: 600;
  font-size: .9rem;
}

.breadcrumbs {max-width:1100px;margin:10px auto 0;padding:0 16px;font-size:.9rem;opacity:.9}
.breadcrumbs ol{list-style:none;display:flex;gap:8px;padding:0;margin:0;flex-wrap:wrap}
.breadcrumbs li::after{content:"/";margin:0 6px;opacity:.6}
.breadcrumbs li:last-child::after{content:""}
.breadcrumbs a{text-decoration:none}

/* ================================
   License Quick Comparison Table
   ================================ */

.table-wrap{
  max-width:1100px;
  margin:16px auto 0;
  padding:0 16px;
}

.cmp-table{
  width:100%;
  border-collapse:separate;
  border-spacing:0;
  background: var(--surface-strong, rgba(10,13,20,.92));
  border:1px solid var(--stroke, rgba(255,255,255,.12));
  border-radius:14px;
  overflow:hidden;
  box-shadow: 0 10px 24px rgba(0,0,0,.35);
}

.cmp-table thead th{
  text-align:left;
  font-weight:800;
  color:#fff;
  padding:12px 14px;
  border-bottom:1px solid var(--stroke, rgba(255,255,255,.12));
  background: linear-gradient(0deg, rgba(255,255,255,.03), rgba(255,255,255,.03));
}

.cmp-table tbody td{
  padding:12px 14px;
  color: var(--text, #f5f7fa);
  border-bottom:1px dashed var(--stroke, rgba(255,255,255,.12));
  vertical-align:top;
}

.cmp-table tbody tr:last-child td{
  border-bottom:none;
}

/* Lätt zebra för läsbarhet (valfritt) */
.cmp-table tbody tr:nth-child(odd) td{
  background: rgba(255,255,255,.02);
}

/* Små chip-etiketter i “Notes” kolumnen (om du vill använda) */
.cmp-table .chip{
  display:inline-flex;align-items:center;gap:6px;
  padding:4px 8px; border-radius:999px;
  background: rgba(255,255,255,.06);
  border:1px solid var(--stroke, rgba(255,255,255,.14));
  font-weight:600; font-size:.85rem; color: var(--text, #e8eef7);
}

/* === Mobil: gör tabellen kort-baserad utan att ändra HTML === */
@media (max-width: 720px){

  .cmp-table{ border-radius:12px; overflow:hidden; }
  .cmp-table thead{ display:none; }

  .cmp-table, .cmp-table tbody, .cmp-table tr, .cmp-table td{
    display:block; width:100%;
  }

  .cmp-table tr{
    border-bottom:1px solid var(--stroke, rgba(255,255,255,.12));
    padding:8px 10px;
  }

  .cmp-table tr:last-child{
    border-bottom:none;
  }

  .cmp-table td{
    display:flex;
    gap:10px;
    padding:8px 4px;
    border:none;
  }

  /* Visa egna etiketter per cell */
  .cmp-table td:nth-child(1)::before{ content:"Jurisdiction"; min-width:120px; opacity:.7; }
  .cmp-table td:nth-child(2)::before{ content:"Player Protection"; min-width:120px; opacity:.7; }
  .cmp-table td:nth-child(3)::before{ content:"Dispute Route"; min-width:120px; opacity:.7; }
  .cmp-table td:nth-child(4)::before{ content:"Notes"; min-width:120px; opacity:.7; }
}

/* Hjälpklass om du använder <h2 class="sr-only"> */
.sr-only{
  position:absolute !important;
  width:1px;height:1px;
  padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;
}

/* === Verify steps === */
.steps-list{
  counter-reset: step;
  list-style: none;
  padding: 0;
  margin: 18px 0 0;
  display: grid;
  gap: 12px;
}
.steps-list > li{
  background: var(--surface-strong, rgba(10,13,20,.92));
  border: 1px solid var(--stroke, rgba(255,255,255,.12));
  border-radius: 14px;
  padding: 14px 16px;
  box-shadow: 0 10px 24px rgba(0,0,0,.35);
  color: var(--text, #f5f7fa);
}
.steps-list > li h3{
  margin: 0 0 6px;
  font-size: 1.05rem;
  color: #fff;
}
.steps-list > li p{ margin: 0; color: var(--muted, #c4c9d4); }

/* === Inline callout / tip === */
.inline-callout{
  display: flex;
  align-items: flex-start;
  gap: 10px;
  margin: 14px 0 0;
  padding: 12px 14px;
  border-radius: 12px;
  background: rgba(255,255,255,.06);
  border: 1px dashed var(--stroke, rgba(255,255,255,.18));
  color: var(--text, #e8eef7);
}
.inline-callout i{ margin-top: 2px; opacity: .9; }
.inline-callout p{ margin: 0; }

/* === Red flags grid/cards === */
.cards-grid{
  display: grid;
  grid-template-columns: 1fr;
  gap: 12px;
  margin-top: 14px;
}
@media (min-width: 800px){
  .cards-grid{ grid-template-columns: repeat(2, 1fr); }
}
.danger-card{
  background: linear-gradient(180deg, rgba(255,90,90,.08), rgba(255,90,90,.02));
  border: 1px solid rgba(255,90,90,.25);
  border-radius: 14px;
  padding: 16px 18px;
  color: var(--text, #f5f7fa);
  box-shadow: 0 10px 24px rgba(0,0,0,.35);
}
.danger-card h3{ margin: 0 0 6px; color: #fff; font-size: 1.05rem; }
.danger-card p{ margin: 0; color: var(--muted, #c4c9d4); }

/* =========================
   Legal notice / notice-block
   ========================= */
.notice-block{
  max-width: 900px;
  margin: 16px auto 0;
  padding: 12px 14px;
  border-radius: 12px;
  background: linear-gradient(180deg, rgba(255,255,255,.05), rgba(255,255,255,.03));
  border: 1px solid var(--stroke, rgba(255,255,255,.12));
  box-shadow: 0 10px 24px rgba(0,0,0,.35);
  color: var(--text, #f5f7fa);
}

.notice-block p{
  margin: 0;
  line-height: 1.55;
  color: var(--muted, #c4c9d4);
}

.notice-block p strong{
  color: #fff;
  font-weight: 800;
}

/* Valfria varianter (om du vill använda modifierarklasser) */
.notice-block--info{
  background: linear-gradient(180deg, rgba(11,98,255,.10), rgba(11,98,255,.04));
  border-color: rgba(11,98,255,.28);
}
.notice-block--warning{
  background: linear-gradient(180deg, rgba(217,119,6,.12), rgba(217,119,6,.04));
  border-color: rgba(217,119,6,.30);
}
.notice-block--danger{
  background: linear-gradient(180deg, rgba(225,29,72,.12), rgba(225,29,72,.04));
  border-color: rgba(225,29,72,.30);
}

/* Länkstil inuti notice (om du länkar till policies etc.) */
.notice-block a{
  color: #fff;
  font-weight: 700;
  text-decoration: underline;
  text-underline-offset: 2px;
}
.notice-block a:hover{
  text-decoration-thickness: 2px;
}

/* Liten ikonvariant om du vill lägga in <i> före texten */
.notice-block i{
  margin-right: 8px;
  opacity: .9;
  vertical-align: -1px;
}

/* Disable hover lift on the Latest review card only */
#latest-review {
  transform: none !important;
}

#latest-review:hover {
  transform: none !important;
  box-shadow: 0 8px 20px rgba(0,0,0,0.4) !important; /* behåll originalskuggan */
  border-color: rgba(255,255,255,0.08) !important;   /* behåll originalramen */
}

/* FIX: se-warning ska inte trycka ner casinonamnet */
.info-section {
  position: relative;
}

/* Absolut position – påverkar EJ höjd */
.se-warning {
  position: absolute;
  top: -4px;               /* perfekt spacing */
  left: 0;
  right: 0;
  text-align: center;

  background: #c40000;
  color: #fff;
  font-size: 0.75rem;
  font-weight: 700;
  padding: 2px 6px;
  border-radius: 4px;

  display: none;          /* default: gömt */
  z-index: 10;
}

/* === SEO text block under cards === */
.seo-text-block {
  max-width: 980px;
  margin: 40px auto 0;
  padding: 24px 22px;
  border-radius: 16px;
  background: var(--surface);
  border: 1px solid var(--stroke);
  box-shadow: 0 16px 32px rgba(0,0,0,0.5);
  line-height: 1.7;
  font-size: 0.95rem;
  color: var(--muted);
}

/* Rubriker i blocket */
.seo-text-block h2 {
  font-size: 1.4rem;
  margin-bottom: 10px;
  color: var(--text);
}

.seo-text-block h3 {
  font-size: 1.1rem;
  margin-top: 18px;
  margin-bottom: 8px;
  color: #ffd666;
}

/* Brödtext & listor */
.seo-text-block p {
  margin: 0 0 10px;
}

.seo-text-block ul {
  margin: 0 0 12px 18px;
  padding-left: 0;
}

.seo-text-block li {
  margin-bottom: 6px;
}

/* Små justeringar på mobil */
@media (max-width: 640px) {
  .seo-text-block {
    margin-top: 30px;
    padding: 18px 14px;
    font-size: 0.9rem;
  }

  .seo-text-block h2 {
    font-size: 1.25rem;
  }

  .seo-text-block h3 {
    font-size: 1rem;
  }
}


.nojs-nav {
  display: flex;
  gap: 14px;
  padding: 12px 16px;
  border-bottom: 1px solid rgba(255,255,255,0.12);
}

.nojs-nav a {
  color: inherit;
  text-decoration: none;
  font-weight: 600;
}

/* TEMP TEST: stäng av tunga scroll-effekter */
html, body { background-attachment: scroll !important; }

.section,
.hero,
.site-footer,
.logo-wrapper,
.side-shortcuts,
.author-chip {
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}

/* Fix: undvik tung repaint vid scroll */
html, body {
  background-attachment: scroll !important;
}

.section,
.hero,
.site-footer {
  -webkit-backdrop-filter: none !important;
  backdrop-filter: none !important;
  background: rgba(10, 13, 20, 0.82); /* justera 0.75–0.9 efter smak */
  border: 1px solid rgba(255,255,255,0.08);
}

/* === GLOBAL FALLING CHIPS (same on ALL pages) === */
html, body {
  background-color: #111 !important;
}

/* Lägg bilden direkt på body (stabilt, krockar inte med overlay) */
body {
  background-image: url('/images/backgrounds/falling-chips.webp');
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  background-attachment: fixed;
}


/* Om du råkar ha blur/backdrop-filter kvar någonstans */
.hero, .section {
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}

/* === STICKY FOOTER (always at bottom) === */
html, body { height: 100%; }

body{
  min-height: 100vh;
  display: flex;
  flex-direction: column;
}

/* Din sida använder <main> */
main{
  flex: 1 0 auto;
}

/* Footer längst ner även när content är kort */
.site-footer,
footer{
  margin-top: auto !important;
}

/* ================================
   Top Recommended: 1 kort per swipe (mobil)
   ================================ */
@media (max-width: 720px){

  /* Gör varje swipe-sida = 100% */
  #top-recommended .rec5-grid{
    grid-auto-columns: 100% !important;
  }

  /* Se till att "casino-card" snappar som rec5-card */
  #top-recommended .rec5-grid > .casino-card{
    min-width: 100%;
    width: 100%;
    box-sizing: border-box;
    scroll-snap-align: start;
  }
}

[hidden] { display: none !important; }

/* =========================
   TOP 3 PICKS (Top Bonuses)
   ========================= */

.updated-note{
  margin-top: 10px;
  font-size: 0.9rem;
  color: #c4c9d4;
  opacity: .95;
}

.top-picks{
  max-width: 900px;
  margin: 0 auto 22px;
  padding: 16px;
  border-radius: 14px;
  border: 1px solid rgba(255,255,255,.10);
  background: rgba(255,255,255,.03);
}

.top-picks h2{
  margin: 0 0 12px;
  font-size: 1.15rem;
  color: #fff;
}

.top-picks-grid{
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
}

.top-pick{
  display: grid;
  gap: 6px;
  text-decoration: none;
  padding: 12px 12px;
  border-radius: 12px;
  border: 1px solid rgba(255,255,255,.10);
  background: rgba(0,0,0,.25);
  transition: transform .18s ease, border-color .18s ease, background .18s ease;
}

.top-pick strong{
  font-size: 1rem;
  color: #ffd666;
  line-height: 1.2;
}

.top-pick span{
  font-size: .9rem;
  color: #c4c9d4;
}

.top-pick:hover{
  transform: translateY(-2px);
  border-color: rgba(255,153,0,.45);
  background: rgba(255,153,0,.08);
}

.top-pick:focus-visible{
  outline: 2px solid #ff9900;
  outline-offset: 2px;
}

@media (max-width: 900px){
  .top-picks-grid{ grid-template-columns: 1fr; }
}

/* ===== FIX: Top 3 bullets inside the card ===== */
.top-pick{
  overflow: hidden;              /* stoppar att bullets/indenter hamnar utanför */
}



/* === TOP PICKS: keep logos same size === */
.top-picks .tp-head{
  display: flex;
  align-items: center;
  gap: 12px;
}

.top-picks .tp-logo{
  width: 120px;       /* samma bredd för alla */
  height: 44px;       /* samma höjd för alla */
  object-fit: contain; /* behåller proportioner utan att klippa */
  display: block;
  flex: 0 0 120px;    /* låser bredden så layouten blir jämn */
}

/* === TOP PICKS: green "Claim bonus" button === */
.top-picks .top-pick-cta{
  background: #16a34a; /* green */
  color: #fff;
  border: 1px solid rgba(0,0,0,0.08);
}

/* hover/focus */
.top-picks .top-pick:hover .top-pick-cta,
.top-picks .top-pick:focus-visible .top-pick-cta{
  background: #15803d; /* darker green */
}

@media (max-width: 520px){
  .top-picks .tp-logo{
    width: 100px;
    height: 40px;
    flex-basis: 100px;
  }
}

/* Make Top Picks bullets look like the orange feature boxes */
.tp-points{
  list-style: none;
  padding: 0;
  margin: 10px 0 0 0;
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.tp-points li{
  font-size: var(--fz-body, 0.85rem);
  font-weight: 600;
  padding: 4px 8px;
  border-radius: 8px;
  background: rgba(0,0,0,0.4);
  border: 1px solid #ff9900;
  box-shadow: 0 0 6px rgba(255,153,0,0.25);
}

/* Bonus line box: the <p> directly after the casino name (your name is h3) */
.casino-card .info-section .casino-name + p{
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;

  min-height: 46px;
  padding: 10px 12px;
  margin: 8px 0 12px;

  border: 1px solid rgba(255,153,0,0.65);
  border-radius: 12px;
  background: rgba(0,0,0,0.35);

  font-weight: 800;
  letter-spacing: 0.2px;
  color: #ffd666;
  line-height: 1.15;
}

/* BONUS BOX (fixed area + 2-line clamp, no flex) */
.casino-card .info-section .casino-name + p{
  border: 1px solid rgba(255,153,0,0.65);
  border-radius: 12px;
  background: rgba(0,0,0,0.35);

  padding: 10px 12px;
  margin: 8px 0 12px;
  min-height: 54px;            /* samma höjd på alla */
  text-align: center;

  font-weight: 800;
  letter-spacing: 0.2px;
  color: #ffd666;
  line-height: 1.15;

  /* 2-line clamp (works because NOT flex) */
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
}

/* Bonus line text smaller */
.casino-card .info-section .casino-name + p{
  font-size: 0.85rem;
  line-height: 1.15;
}

.review-btn.disabled{
  opacity: .5;
  pointer-events: none;
  cursor: not-allowed;
}

/* Side shortcuts toggle */
.side-list[hidden] { display: none !important; }

/* Om du vill animera/ha kontroll kan du även ha en klass, men hidden räcker ofta */
.side-shortcuts .side-toggle { cursor: pointer; }

/* Hide the Sections shortcut nav everywhere */
.side-shortcuts{ display: none !important; }

/* Reviews "Load more" */
.loadmore-wrap{
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:10px;
  margin-top:18px;
}

.loadmore-btn{
  appearance:none;
  border:0;
  cursor:pointer;
  padding:12px 18px;
  border-radius:14px;
  font-weight:700;
  font-family:inherit;
  background: rgba(255,255,255,.08);
  color:#fff;
  box-shadow: 0 10px 30px rgba(0,0,0,.25);
}

.loadmore-btn:hover{ transform: translateY(-1px); }
.loadmore-btn:active{ transform: translateY(0px); }

/* ==========================
   NEW SEARCH BAR (tbt-searchbar)
   ========================== */
.tbt-searchbar{
  max-width: 1100px;
  margin: 2rem auto 1.5rem;
  padding: 14px 16px;
  border-radius: 16px;
  background: rgba(15, 20, 32, 0.88);
  border: 1px solid rgba(255,255,255,0.10);
  box-shadow: 0 18px 40px rgba(0,0,0,0.30);
}

.tbt-searchbar__inner{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap: 14px;
  flex-wrap: wrap;
}

.tbt-searchbar__label{
  display:block;
  font-size: 0.85rem;
  opacity: 0.85;
  margin-bottom: 6px;
}

.tbt-searchbar__inputwrap{
  display:flex;
  align-items:center;
  gap: 10px;
  padding: 10px 12px;
  border-radius: 12px;
  border: 1px solid rgba(255,255,255,0.12);
  background: rgba(9, 12, 19, 0.85);
}

.tbt-searchbar__inputwrap i{
  opacity: 0.75;
}

.tbt-searchbar__input{
  width: min(520px, 72vw);
  border: 0;
  outline: none;
  background: transparent;
  color: #fff;
  font-size: 0.98rem;
  font-family: inherit;
}

.tbt-searchbar__input::placeholder{
  color: rgba(255,255,255,0.55);
}

.tbt-searchbar__inputwrap:focus-within{
  border-color: rgba(79, 140, 255, 0.9);
  box-shadow: 0 0 0 3px rgba(79, 140, 255, 0.18);
}

.tbt-searchbar__count{
  font-size: 0.92rem;
  opacity: 0.90;
  padding-bottom: 2px;
}

.tbt-searchbar__count span{
  font-weight: 800;
}

/* =========================
   Country filter (Top Recommended)
   Matchar rec5/hero mörka paneler
   ========================= */

.country-filter{
  margin: 12px 0 18px;
  background: var(--surface-strong, #0f1624);
  border: 1px solid var(--stroke, rgba(255,255,255,.12));
  border-radius: 14px;
  padding: 14px;
  box-shadow: 0 12px 24px rgba(0,0,0,.28);
}

.country-filter label{
  display:block;
  margin-bottom: 8px;
  color: var(--muted, #c4c9d4);
  font-weight: 600;
  letter-spacing: .2px;
}

.country-filter select{
  width: 100%;
  max-width: 420px;
  display: block;

  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;

  background: rgba(255,255,255,.06);
  color: var(--text, #e8eef7);
  border: 1px solid var(--stroke, rgba(255,255,255,.14));
  border-radius: 12px;

  padding: 12px 44px 12px 12px;
  font-family: 'Poppins', sans-serif;
  font-weight: 700;
  font-size: 14px;

  transition: border-color .2s ease, box-shadow .2s ease, background .2s ease;
  outline: none;
}

/* Hover + focus i samma känsla som dina knappar (mini-btn/rec5-btn) */
.country-filter select:hover{
  border-color: rgba(255,255,255,.28);
  background: rgba(255,255,255,.08);
}

.country-filter select:focus{
  border-color: rgba(255,255,255,.28);
  box-shadow: 0 0 0 3px rgba(255,153,0,.18);
  background: rgba(255,255,255,.10);
}

/* Custom arrow (matchar accent) */
.country-filter{
  position: relative;
}

.country-filter::after{
  content: "";
  position: absolute;
  right: 18px;
  /* Placering: justerad för label + select */
  top: 54px;
  width: 10px;
  height: 10px;
  border-right: 2px solid rgba(255,255,255,.70);
  border-bottom: 2px solid rgba(255,255,255,.70);
  transform: rotate(45deg);
  pointer-events: none;
  opacity: .9;
}

/* “Showing…” texten */
#countryFilterNote{
  margin: 10px 0 0;
  color: var(--muted, #c4c9d4);
  font-size: 13px;
}

/* Mobil: tighter och pil lite högre */
@media (max-width: 520px){
  .country-filter{
    padding: 12px;
    border-radius: 12px;
  }
  .country-filter select{
    max-width: 100%;
    font-size: 14px;
    padding: 11px 42px 11px 12px;
  }
  .country-filter::after{
    top: 52px;
    right: 16px;
  }
}

.casino-card.geo-hidden { display:none !important; }
.casino-card.page-hidden { display:none; }

/* =========================
   Pagination (Next/Prev)
   ========================= */
.pagination{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:12px;
  margin-top: 18px;
  flex-wrap: wrap;
}

.pagination .page-info{
  font-weight: 700;
  color: var(--muted, #c4c9d4);
  font-size: .95rem;
  padding: 6px 10px;
  border-radius: 999px;
  border: 1px solid rgba(255,255,255,.10);
  background: rgba(10,13,20,.55);
}

/* Snygga knappar */
.pagination .page-btn{
  appearance:none;
  border: 1px solid rgba(255,255,255,.14);
  background: linear-gradient(180deg, rgba(255,153,0,.22), rgba(255,153,0,.10));
  color: #fff;
  font-weight: 800;
  letter-spacing: .2px;
  padding: 11px 16px;
  border-radius: 999px;
  cursor: pointer;
  box-shadow:
    0 10px 24px rgba(0,0,0,.35),
    0 0 0 3px rgba(255,153,0,.10);
  transition: transform .12s ease, box-shadow .2s ease, border-color .2s ease, filter .2s ease;
  user-select: none;
}

.pagination .page-btn:hover{
  transform: translateY(-1px);
  filter: brightness(1.06);
  border-color: rgba(255,255,255,.22);
  box-shadow:
    0 14px 28px rgba(0,0,0,.38),
    0 0 0 4px rgba(255,153,0,.16),
    0 0 18px rgba(255,153,0,.18);
}

.pagination .page-btn:active{
  transform: translateY(0px);
  filter: brightness(0.98);
}

/* Tydlig fokus för tangentbord */
.pagination .page-btn:focus-visible{
  outline: 2px solid var(--accent, #ff9900);
  outline-offset: 3px;
}

/* Disabled-stil (prev på page 1, next på sista sidan) */
.pagination .page-btn:disabled{
  opacity: .45;
  cursor: not-allowed;
  transform: none;
  filter: none;
  background: rgba(255,255,255,.06);
  border-color: rgba(255,255,255,.10);
  box-shadow: none;
}

/* Lite mer “premium” känsla: pilarna får spacing */
.pagination #prevPage::before{
  content:"‹";
  margin-right: 8px;
  opacity: .95;
}
.pagination #nextPage::after{
  content:"›";
  margin-left: 8px;
  opacity: .95;
}

/* Mobil: knapparna fyller bredden snyggt */
@media (max-width: 560px){
  .pagination{
    gap:10px;
  }
  .pagination .page-btn{
    width: 100%;
    max-width: 340px;
    justify-content:center;
  }
}
