/* =========================================================
   Expekt-tema – all text & kommentarer på svenska
   ========================================================= */
:root{
  --expekt-orange: #FF6A00;
  --expekt-orange-600: #e65f00;
  --expekt-dark: #111216;
  --expekt-ink: #e7eaef;
  --expekt-muted: #aab1c1;
  --expekt-border: #2a2f39;
  --expekt-bg: #0e0f13;
  --white: #ffffff;
}

/* ===== Bas ===== */
*{ box-sizing: border-box; }
html,body{ margin:0; padding:0; background:var(--expekt-bg); color:var(--white); font-family: "Inter", system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif; line-height:1.65; }
a{ color:var(--white); text-decoration:none; }
a:hover{ opacity:.92; }
.container{ width:min(1160px,92%); margin-inline:auto; }

/* ===== Header/Nav ===== */
.site-header{ position:sticky; top:0; z-index:1000; background:rgba(17,18,22,.95); backdrop-filter: blur(6px); border-bottom:1px solid var(--expekt-border); }
.nav-bar{ display:grid; grid-template-columns:1fr auto 1fr; align-items:center; gap:16px; min-height:72px; }
.brand__logo{ height:34px; width:auto; display:block; }
.main-nav__list{ list-style:none; margin:0; padding:0; display:flex; gap:28px; }
.nav-link{ font-weight:700; color:#d9dde5; padding:8px 2px; border-bottom:2px solid transparent; }
.nav-link:hover{ border-bottom-color:var(--expekt-orange); }
.auth-actions{ justify-self:end; display:flex; gap:10px; align-items:center; }

/* ===== Knappar ===== */
.btn{ display:inline-flex; align-items:center; justify-content:center; padding:12px 18px; border-radius:999px; font-weight:800; transition:background .2s ease, transform .08s ease; border:1px solid transparent; }
.btn--ghost{ background:transparent; border-color:var(--expekt-border); color:#dfe3ea; }
.btn--cta{ background:var(--expekt-orange); color:#111; }
.btn--cta:hover{ background:var(--expekt-orange-600); }
.btn--sm{ padding:8px 12px; font-size:.9rem; }
.btn--lg{ padding:14px 22px; font-size:1.05rem; }

/* ===== Hero ===== */
.hero{ position:relative; min-height:520px; display:grid; border-bottom:1px solid var(--expekt-border); }
.hero__media{ position:absolute; inset:0; background:
  radial-gradient(1200px 600px at 10% 0%, rgba(255,106,0,.22), transparent 60%),
  radial-gradient(900px 600px at 90% 30%, rgba(255,106,0,.16), transparent 62%),
  url("hero.jpg") center/cover no-repeat;
  filter: saturate(1) brightness(.9); opacity:.6;
}
.hero__content{ position:relative; padding:72px 0 80px; display:flex; flex-direction:column; gap:18px; }
.hero__title{ font-size:clamp(2rem,3.5vw,3rem); line-height:1.1; font-weight:800; }
.hero__subtitle{ max-width:760px; color:#e7eaef; }
.hero__note{ color:var(--expekt-muted); font-size:.9rem; }

/* ===== Innehåll ===== */
.content{ padding:48px 0; }
.section{ margin-top:36px; padding:24px; background:linear-gradient(180deg, rgba(255,255,255,.02), rgba(255,255,255,0)); border:1px solid var(--expekt-border); border-radius:16px; }
.section h2{ font-size:1.35rem; margin:0 0 10px 0; font-weight:800; }
.steps{ padding-left:20px; margin:10px 0 0 0; }
.muted{ color:var(--expekt-muted); }

/* ===== Tabeller ===== */
.table-wrap{ overflow:auto; border-radius:12px; border:1px solid var(--expekt-border); }
.table{ width:100%; border-collapse:collapse; background:#151821; }
.table th, .table td{ padding:12px 14px; border-bottom:1px solid var(--expekt-border); text-align:left; }
.table thead th{ background:#11141a; font-weight:800; }

/* ===== Spelgalleri ===== */
.table-grid{ display:grid; grid-template-columns:repeat(6,1fr); gap:14px; }
.game{ display:flex; flex-direction:column; gap:8px; background:#141821; border:1px solid var(--expekt-border); border-radius:12px; padding:10px; }
.game img{ width:100%; height:120px; object-fit:cover; border-radius:8px; }
.game span{ font-weight:700; }

/* ===== FAQ ===== */
.faq{ background:#12141b; border:1px solid var(--expekt-border); border-radius:12px; padding:12px 16px; margin:10px 0; }
.faq summary{ cursor:pointer; font-weight:800; }
.anchor{ display:inline-block; width:0; height:0; }

/* ===== Flytande CTA ===== */
.float-cta{ position:fixed; left:16px; bottom:16px; z-index:1200; background:var(--expekt-orange); color:#111; font-weight:800; padding:14px 18px; border-radius:999px; box-shadow:0 10px 30px rgba(0,0,0,.35); }
.float-cta:hover{ background:var(--expekt-orange-600); }

/* ===== Footer ===== */
.site-footer{ margin-top:56px; background:var(--expekt-dark); border-top:1px solid var(--expekt-border); }
.footer-grid{ display:grid; gap:28px; padding:36px 0; grid-template-columns:repeat(3,1fr); }
.footer-title{ font-size:1.05rem; margin:0 0 10px 0; font-weight:800; }
.footer-links{ list-style:none; padding:0; margin:0; display:grid; gap:8px; }
.footer-links a{ color:#d9dde5; }
.footer-links a:hover{ color:var(--white); }
.footer-note{ margin-top:10px; color:var(--expekt-muted); }
.footer-bottom{ border-top:1px solid var(--expekt-border); padding:12px 0; background:#0f1014; color:#aab1c1; }
.footer-bottom__row{ display:flex; justify-content:space-between; gap:14px; align-items:center; }

/* ===== Responsivt ===== */
@media (max-width: 1100px){ .table-grid{ grid-template-columns:repeat(4,1fr); } }
@media (max-width: 780px){
  .nav-bar{ grid-template-columns:1fr auto; grid-template-areas:"brand auth" "menu menu"; row-gap:10px; }
  .brand{ grid-area:brand; } .main-nav{ grid-area:menu; } .auth-actions{ grid-area:auth; }
  .main-nav__list{ justify-content:center; gap:18px; }
  .table-grid{ grid-template-columns:repeat(2,1fr); }
  .hero{ min-height:460px; }
}
@media (max-width: 520px){
  .auth-actions .btn{ padding:10px 14px; }
  .game img{ height:100px; }
  .section{ padding:18px; }
}
