/*
Theme Name: Mariofans Modern
Description: Eigenständiges Mariofans-Theme mit bestehendem Design und kompatiblen Inhaltsdaten.
Version: 1.0.24
Update URI: https://mariofans.de/#mariofans-modern
Author: Mariofans
Text Domain: mariofans
Requires PHP: 8.0
License: GPL-2.0-or-later
*/

/* -----------------------------------
   Theme Styles
   Parent CSS wird in functions.php geladen.
----------------------------------- */

/* -----------------------------------
   Allgemeine Styles
----------------------------------- */
:root{
  /* Typography */
  --mf-font-base: Verdana, Geneva, sans-serif;
  --mf-text: #1f2937;
  --mf-text-soft: #4b5563;
  --mf-text-muted: #667085;
  --mf-heading: #111827;
  --mf-link: #2563eb;
  --mf-font-sm: 13px;
  --mf-font-md: 15px;
  --mf-font-lg: 17px;
  --mf-font-xl: 20px;
  --mf-leading-tight: 1.25;
  --mf-leading-normal: 1.55;
  --mf-leading-relaxed: 1.72;

  /* Shared desktop and mobile navigation */
  --mf-nav-desktop-height:68px;
  --mf-nav-mobile-height:64px;
  --mf-nav-bg:#f1f8fc;
  --mf-nav-bg-soft:#fbfdff;
  --mf-nav-bg-hover:#dceff8;
  --mf-nav-border:#b9d8e9;
  --mf-nav-primary:#0668a1;
  --mf-nav-primary-dark:#045281;
  --mf-nav-text:#17324a;
  --mf-nav-shadow:0 10px 28px rgba(4,82,129,.14);
  --mf-nav-panel-shadow:0 18px 42px rgba(4,82,129,.16);

  /* Images, galleries and videos */
  --mf-media-border:#dce8f0;
  --mf-media-soft:#f8fbfd;
  --mf-media-blue:#0668a1;
  --mf-media-shadow:0 10px 30px rgba(15,23,42,.08);

  /* Existing Luigi's Mansion overview */
  --lm-bg:#ffffff;
  --lm-bg2:#f9f9fb;
  --lm-surface:#ffffff;
  --lm-text:#1b1f24;
  --lm-muted:#6b7280;
  --lm-border:#e8ebf0;
  --lm-accent:#ff6600;
  --lm-accent-2:#33a532;
}

body {
  background-image: url(images/mf_bg_2.webp);
  background-repeat: repeat;
  background-position: center;
}

.rot, .blau, .gruen { font-weight: bold; }
.rot { color: red; }
.blau { color: darkblue; }
.gruen { color: green; }

/* Keyboard navigation must remain visible above the fixed header. */
.mf-skip-link{
  position:fixed;
  top:12px;
  left:12px;
  z-index:100001;
  max-width:calc(100% - 24px);
  box-sizing:border-box;
  padding:12px 16px;
  border:2px solid #045281;
  border-radius:8px;
  background:#fff;
  color:#045281;
  font-size:16px;
  font-weight:700;
  text-decoration:none;
  transform:translateY(calc(-100% - 60px));
}

.mf-skip-link:focus{
  transform:none;
  outline:3px solid #0668a1;
  outline-offset:3px;
}

.admin-bar .mf-skip-link{
  top:58px;
}

.mf-home-page a:focus-visible,
.mobile-top-bar :is(a, button):focus-visible,
.mf-desktop-topbar :is(a, button):focus-visible{
  outline:2px solid #0668a1;
  outline-offset:3px;
}

#main:focus{
  outline:none;
}

.header-second, .mean-container .mean-bar, .mean-container .mean-nav {
  background: #80abcd;
  background-image: linear-gradient(90deg, #0668a1, #045281);
}

.sidebar .widget_text.widget-boxed, .copyright { color: white; }

.widget-boxed .widget-title, .widget-boxed h4, .widget-boxed h5 {
  color: white;
  border-bottom: 1px solid #5d6072;
  padding-bottom: 15px;
}

.widget_tabs { padding-bottom: 30px; background-color: white; }

.middle-main, .portfolio .portfolio-list li, .side-postlist li, .postlist-grid .posts-grid li {
  background-color: white;
}

.postlist-blog .entry-title { font-size: 20px; line-height: 1.2em; }

.comments-link a { display: inline-block; color: #999; font-size: 12px; margin-right: 10px; }

.entry {
  box-shadow: 0 14px 28px rgba(0,0,0,0.25), 0 10px 10px rgba(0,0,0,0.22);
  height: 80px;
  background-color: white;
}

.header-socials .social-title { color: white; font-size: 25px; }

.header-logo .site-title {
  text-transform: uppercase;
  font-family: "Verdana", serif;
  font-size: 54px;
  color: black;
  text-shadow: 2px 2px 1px rgba(150, 150, 150, 1);
  font-weight: bold;
}

.header-main {
  background-image: url(https://mariofans.de/wp-content/uploads/2025/04/logo2025.jpg);
  min-height: 180px;
  padding-top: 30px;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
}

.post-details .entry-header, .post-details .entry-meta-share {
  border-bottom: 1px solid #e2e2e2;
  padding-bottom: 15px;
}

.post-details .entry-title { font-size: 30px; }

/* -----------------------------------
   Galerie Thumbnails
----------------------------------- */
.gallery.has-thumbnails .main-image { margin-right: 0; }
.gallery .thumbnails { position: static; text-align: center; }
.gallery .thumbnails > * { display: inline; }
.gallery .thumbnails img { margin: 0 5px 12px; }

.side-postlist li .post-thumbnail { height: 100%; width: 110px; }
.game-infobox .game-thumb { width: 110px; height: 100%; }

.posts-grid li img, .post-thumbnail img { width: 100%; height: 180px; object-fit: cover; display: block; }

.inner { min-height: 250px; }
.post > .inner { min-height: 220px; transition: all 0.3s ease; }

/* -----------------------------------
   Related Gallery
----------------------------------- */
.related-gallery {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(150px, 1fr));
  gap: 20px;
  margin-top: 20px;
}

.gallery-item { text-align: center; }

.gallery-thumb {
  width: 150px;
  height: 150px;
  object-fit: cover;
  border-radius: 8px;
  transition: transform 0.3s ease;
}

.gallery-item:hover .gallery-thumb { transform: scale(1.05); }

.gallery-title { display: block; margin-top: 8px; font-size: 14px; color: #333; text-decoration: none; }

/* -----------------------------------
   Fortschritts-Tabelle & Checkliste
----------------------------------- */
#checklist-progress {
  width: 100%;
  border-collapse: collapse;
  margin-bottom: 2em;
  font-family: system-ui, sans-serif;
}

#checklist-progress th, #checklist-progress td { padding: 10px; text-align: center; border: 1px solid #ddd; }
#checklist-progress thead { background-color: #f0f0f5; }
#checklist-progress tbody tr:nth-child(even) { background-color: #fafafa; }

#checklist-progress td[data-percent]::after {
  content: "";
  display: block;
  height: 5px;
  margin-top: 6px;
  background: linear-gradient(to right, #facc15, #84cc16);
  border-radius: 2px;
  width: attr(data-percent '%'); /* JS-Lösung nötig */
}

.checklist-item {
  padding: 15px;
  border: 1px solid #e5e7eb;
  margin: 10px 0;
  border-radius: 8px;
  background: #fff;
  transition: box-shadow 0.2s ease;
}

.checklist-item:hover { box-shadow: 0 2px 6px rgba(0,0,0,0.05); }

.checklist-item input[type="checkbox"] {
  width: 12px;
  height: 12px;
  margin-right: 8px;
  transform: scale(1.1);
  cursor: pointer;
}

.guide-category {
  font-size: 1.4em;
  margin-top: 2em;
  padding: 6px 10px;
  border-left: 6px solid #facc15;
  background: #fef9c3;
  font-weight: bold;
}

/* -----------------------------------
   Druckansicht
----------------------------------- */
@media print {
  body { background: white; color: black; }
  .checklist-item { page-break-inside: avoid; border: 1px solid #aaa; background: none; }
  input[type="checkbox"] { width: 12px; height: 12px; border: 1px solid #333; }
}

/* -----------------------------------
   Mobile Guide Sidebar scrollbar
----------------------------------- */
#mobile-guides-menu {
  max-height: 70vh;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
}

#mobile-guides-menu::-webkit-scrollbar { width: 6px; }
#mobile-guides-menu::-webkit-scrollbar-track { background: transparent; }
#mobile-guides-menu::-webkit-scrollbar-thumb { background-color: rgba(0,0,0,0.3); border-radius: 3px; }

/* -----------------------------------
   Mobile Optimierungen (max-width: 768px)
----------------------------------- */
@media (max-width: 768px) {

  /* Body */

  /* Header */
  .header-logo .site-title {
    font-size: 26px !important;
  }

  /* Container volle Breite */
  .main-row .container { 
    width: 100% !important; 
    max-width: 100% !important; 
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  /* Content */
  .content-area,
  .entry-content,
  .post-details,
  .entry-header { 
    box-sizing: border-box !important; 
    padding-left: 10px !important;
    padding-right: 10px !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }

  /* Post Inner */
  .post > .inner { 
    padding: 12px !important;
  }

  /* Thumbnails */
  .post-thumbnail { 
    text-align: center; 
    margin-bottom: 15px;
  }
  .post-thumbnail img { 
    width: 100%; 
    height: auto; 
    max-height: 200px; 
    display: block; 
    margin: 0 auto; 
    object-fit: contain; 
  }

  /* Post Titles */
  .post-details .entry-title { 
    font-size: 24px !important; 
    line-height: 1.3 !important; 
    margin: 0 0 10px 0 !important;
  }
  .postlist-blog .entry-title,
  .postlist > h2,
  .portfolio .portfolio-title { 
    font-size: 18px !important; 
    line-height: 1.3 !important; 
  }

  /* Entry Content */
  .entry-content,
  .post-details .entry-content {
    font-size: 14px !important;
    line-height: 1.6 !important;
    color: #3b3a3b !important;
    margin-bottom: 15px;
  }

  /* Sidebar Widgets */
  .sidebar .widget,
  .sidebar div[class*="widget_"] {
    font-size: 16px !important;
    line-height: 1.6 !important;
    padding: 15px !important;
    margin-bottom: 20px;
  }

  /* Widget Listen */
  .widget_categories li,
  .widget_nav_menu li,
  .widget_pages li,
  .widget_meta li,
  .widget_links li,
  .widget_archive li { 
    font-size: 16px !important; 
    line-height: 1.6 !important; 
    margin-bottom: 8px !important;
  }

  /* Meta Info */
  .post .entry-header .entry-meta a,
  .post .entry-header .entry-date,
  .comments-link a {
    font-size: 14px !important;
    line-height: 1.5 !important;
  }

  /* Post Featured Icon */
  .post .featured-icon {
    font-size: 16px !important;
    margin-right: 15px !important;
    line-height: 1.2 !important;
  }
  .post .featured-icon i { font-size: 18px !important; }

  /* Mega Menu */
  .mega-menu { 
    flex-direction: column; 
    font-size: 16px !important; 
  }
  .sub-menu {
    position: static;
    opacity: 1 !important;
    visibility: visible !important;
    transform: none !important;
    box-shadow: none;
    border: none;
    padding: 0 10px !important;
  }
  .sub-menu .menu-column { 
    min-width: auto; 
    padding: 10px 0 !important; 
  }
  .sub-menu .menu-column ul li a { 
    font-size: 16px !important; 
  }

  /* Abstand zwischen Posts */
  .postlist-blog .post,
  .postlist-cols-1 .post,
  .postlist-cols-3 .post,
  .postlist-cols-4 .post {
    margin-bottom: 25px !important;
  }

  /* Checklisten Abstände */
  .checklist-item { margin: 12px 0 !important; padding: 12px !important; }

  /* Galerie-Abstände */
  .gallery.has-thumbnails,
  .related-gallery { margin-bottom: 20px !important; }
}

/* TFuse Guides Widget: Schriftgröße erzwingen */
.widget_guides.game-guides,
.widget_guides.game-guides ul,
.widget_guides.game-guides li {
    font-size: 18px !important;   /* Schriftgröße */
    line-height: 1.6 !important;  /* Zeilenhöhe */
    font-family: Verdana, sans-serif !important;
}

/* Mobile Ansicht */
@media (max-width: 768px) {
    .widget_guides.game-guides,
    .widget_guides.game-guides ul,
    .widget_guides.game-guides li {
        font-size: 20px !important;
        line-height: 1.6 !important;
    }
}

/* ===== Luigi's Mansion Overview – Light Style (scoped) ===== */

/* Wrapper */
.mf-lm.lm-wrap{ margin: 0 0 2.25rem 0; color: var(--lm-text); }

/* ---------------- Hero ---------------- */
.mf-lm .lm-hero{
  background: var(--lm-bg);
  color: var(--lm-text);
  border: 1px solid var(--lm-border);
  border-radius: 18px;
  padding: 28px 22px;
  margin: 0 0 18px 0;
  position: relative;
  overflow: hidden;
}
.mf-lm .lm-hero::after{ display:none; }
.mf-lm .lm-hero-inner{ position: relative; z-index: 1; max-width: 1100px; }
.mf-lm .lm-hero h1{ margin: 0 0 6px 0; font-weight: 800; letter-spacing:.2px; line-height:1.15; }
.mf-lm .lm-hero-text{ margin: 0; opacity:.92; max-width:70ch; }

/* Pills – helle Version */
.mf-lm .lm-pills{ margin-top: 14px; display:flex; flex-wrap:wrap; gap:8px; }
.mf-lm .lm-pill{
  display:inline-block;
  padding:8px 12px;
  border-radius:999px;
  background: rgba(0,0,0,.05);   /* heller Hintergrund */
  color: var(--lm-text);         /* dunkle Schrift */
  text-decoration:none;
  border: 1px solid rgba(0,0,0,.08);
  backdrop-filter: blur(2px);
  transition: transform .12s ease, background .12s ease, border-color .12s ease;
}
.mf-lm .lm-pill:hover{
  transform: translateY(-1px);
  background: rgba(0,0,0,.08);
  border-color: var(--lm-accent);
  color: var(--lm-accent);
}

/* ---------------- Section Title ---------------- */
.mf-lm .lm-subtitle{ margin: 14px 0 10px; font-size: 1.15rem; }

/* ---------------- Grid ---------------- */
.mf-lm .lm-grid{
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
  display: grid !important;
  grid-template-columns: repeat(auto-fill, minmax(240px, 1fr));
  gap: 16px;
}

/* ---------------- Cards ---------------- */
.mf-lm .lm-card{
  background: var(--lm-surface);
  border: 1px solid var(--lm-border);
  border-radius: 16px;
  box-shadow: 0 1px 2px rgba(16,24,40,.04);
  transition: transform .15s ease, box-shadow .15s ease, border-color .15s ease;
  position: relative;
  overflow: hidden;
}
.mf-lm .lm-card::before{
  content:"";
  position:absolute; inset:0 auto 0 0; width:4px;
  background: linear-gradient(180deg, #ff7a1a, #ff4d0a);
  opacity: .0; transition: opacity .15s ease;
}
.mf-lm .lm-card:hover{
  transform: translateY(-3px);
  border-color: #ffd2bf;
  box-shadow: 0 10px 24px rgba(16,24,40,.08);
}
.mf-lm .lm-card:hover::before{ opacity:.95; }

.mf-lm .lm-card-link{
  display:flex; flex-direction:column; gap:8px;
  padding:16px 18px; text-decoration:none; color: inherit; min-height:180px;
}
.mf-lm .lm-card-title{ font-weight:800; letter-spacing:.2px; line-height:1.2; color: var(--lm-text); }
.mf-lm .lm-card-title small{
  font-weight:600; font-size:.8rem; margin-left:.4rem;
  padding: 2px 8px; border-radius:999px; background:#f3f5f8; color:#3b4453;
}

.mf-lm .lm-card-progress{ font-size:.92rem; color:#364150; opacity:.95; --p:100; }
.mf-lm .lm-card-progress::after{
  content:""; display:block; height:6px; margin-top:6px; background:#eceff3; border-radius:20px;
}
.mf-lm .lm-card-progress::before{
  content:""; display:block; height:6px; width: calc(var(--p)*1%);
  margin-top:-6px; background: var(--lm-accent); border-radius:20px;
}

.mf-lm .lm-card-meta{
  margin-top:auto; font-size:.92rem; color:#4b5563; display:inline-flex; align-items:center; gap:.35rem;
}

/* Focus Accessibilty */
.mf-lm .lm-card-link:focus-visible{
  outline: 2px solid var(--lm-accent);
  outline-offset: 3px; border-radius: 14px;
}

/* Legend */
.mf-lm .lm-legend{ margin-top: 10px; font-size:.95rem; color:#667085; }

/* Responsive Tweaks */
@media (max-width: 640px){
  .mf-lm .lm-hero{ border-radius: 14px; padding: 22px 16px; }
  .mf-lm .lm-grid{ grid-template-columns: 1fr; gap: 14px; }
  .mf-lm .lm-card-link{ min-height: 160px; }
}

/* Vorschaubilder */
.mf-lm .lm-card-thumb{
  width: 100%;
  border-radius: 12px;
  aspect-ratio: 16 / 9;
  object-fit: cover;
}

/* Mariofans – Universal Tax Card Layout Enhancer */

/* Layout types if needed */
.mf-game-cards-grid.layout-compact .lm-card-link { min-height: 130px; }
.mf-game-cards-grid.layout-wide { grid-template-columns: repeat(auto-fill, minmax(300px,1fr)); }

.mf-game-cards-grid {
    list-style: none;
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(240px, 1fr));
    gap: 16px;
    margin: 0;
    padding: 0;
}

.mf-game-cards-grid .lm-card {
    background: var(--lm-surface);
    border: 1px solid var(--lm-border);
    border-radius: 16px;
    overflow: hidden;
    transition: transform .15s ease, box-shadow .15s ease;
}

.mf-game-cards-grid .lm-card-link {
    display: flex;
    flex-direction: column;
    gap: 8px;
    text-decoration: none;
    color: var(--lm-text);
    min-height: 180px;
    padding: 16px 18px;
}

.mf-game-cards-grid .lm-card-thumb {
    width: 100%;
    height: 140px;
    object-fit: cover;
    border-radius: 12px;
}

.mf-game-cards-grid .lm-card-title {
    font-weight: 800;
    line-height: 1.2;
}

.mf-game-cards-grid .lm-card-progress {
    font-size: .92rem;
    color: #364150;
    opacity: .95;
    --p: 100;
    position: relative;
}

.mf-game-cards-grid .lm-card-progress::after {
    content: "";
    display: block;
    height: 6px;
    margin-top: 6px;
    background: #eceff3;
    border-radius: 20px;
}

.mf-game-cards-grid .lm-card-progress::before {
    content: "";
    display: block;
    height: 6px;
    width: calc(var(--p) * 1%);
    margin-top: -6px;
    background: var(--lm-accent);
    border-radius: 20px;
}

.mf-game-cards-grid .lm-card-meta {
    margin-top: auto;
    font-size: .92rem;
    color: #4b5563;
    display: inline-flex;
    align-items: center;
    gap: .35rem;
}

.mf-game-cards-grid .lm-card:hover {
    transform: translateY(-3px);
    box-shadow: 0 10px 24px rgba(16,24,40,.08);
}


/* =====================================================
   Widget: Neueste Spiele
===================================================== */

.mf-latest-games {
    list-style: none;
    margin: 0;
    padding: 0;
}

.mf-game-item {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    padding: 10px 0;
    border-bottom: 1px solid rgba(0,0,0,.06);
}

.mf-game-item:last-child {
    border-bottom: none;
}

/* Cover */
.mf-game-thumb {
    width: 56px;
    flex-shrink: 0;
}

.mf-game-thumb img {
    width: 100%;
    height: auto;
    border-radius: 6px;
    display: block;
}

/* Meta */
.mf-game-meta {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.mf-game-title {
    text-decoration: none;
}

.mf-game-title:hover {
    color: #2563eb;
}

/* Release */
.mf-game-release {
    display: flex;
    align-items: center;
    gap: 6px;
    font-size: .85rem;
    color: #6b7280;
}

.mf-game-release .mf-flag {
    width: 18px;
    height: auto;
}

/* =====================================================
   GUIDE SIDEBAR – EINZUG NUR ÜBER ABSTAND (FINAL)
   100% Parent-sicher
===================================================== */

.widget_mf_guides .mf-guide-list {
    margin: 0;
    padding: 0;
}

/* Hauptebene */
.widget_mf_guides .mf-guide-list > li {
    margin: 2px 22px;
}

/* Hauptlinks */
.widget_mf_guides .mf-guide-list > li > a {
    display: block;
    padding: 6px 22px;
    font-size: 14px;
    line-height: 1.4;
    color: #2563eb;
    text-decoration: none;
    border-radius: 4px;
}

.widget_mf_guides .mf-guide-list > li > a:hover {
    background: rgba(37,99,235,.08);
}

/* Aktiver Haupteintrag */
.widget_mf_guides .mf-guide-list > li.current > a {
    font-weight: 700;
    color: #111;
}

/* -----------------------------
   UNTERPUNKTE – NUR EINZUG
------------------------------ */

.widget_mf_guides .mf-guide-list ul.subitems {
    margin: 4px 0 6px 20px;
    padding: 0; /* bewusst 0 */
}

/* 👉 HIER passiert der Einzug */
.widget_mf_guides .mf-guide-list ul.subitems li {
    padding-left: 22px;   /* DESKTOP sichtbar */
}

/* Links bleiben ruhig */
.widget_mf_guides .mf-guide-list ul.subitems li a {
    display: block;
    padding: 4px 6px;
    font-size: 13px;
    color: #374151;
}

/* Aktiver Unterpunkt */
.widget_mf_guides .mf-guide-list ul.subitems li.current > a {
    font-weight: 600;
    color: #111;
}

/* Parent-Kram endgültig neutralisieren */
.widget_mf_guides li::before,
.widget_mf_guides li::after,
.widget_mf_guides li::marker {
    content: none !important;
}

/* =====================================================
   FIX: Sidebar-Text & Einzug
   NUR für neues Guide Widget
===================================================== */

.widget_mf_guides,
.widget_mf_guides * {
  hyphens: none !important;
}

/* Links müssen Block-Elemente sein */
.widget_mf_guides a {
  display: block !important;
  white-space: normal;
}

.widget_mf_guides ul.subitems {
  margin-left: 18px;
  padding-left: 14px;
}

/* =====================================
GUIDE HUB
===================================== */


.mf-guides-page .mf-breadcrumbs{
    margin:0 0 14px;
    padding:12px 16px;
    background:#fff;
    border-radius:12px;
    box-shadow:0 2px 8px rgba(0,0,0,0.04);
}

.mf-guides-page .mf-article-content .mf-guidehub{
    margin-top:22px;
}

.mf-guides-page .mf-guide-filter{
    margin-bottom:24px;
}

.mf-page-breadcrumbs{
    margin:0 0 14px;
    padding:12px 16px;
    background:#fff;
    border-radius:12px;
    box-shadow:0 2px 8px rgba(0,0,0,0.04);
}

.mf-home-page .mf-home-intro{
    margin:0 0 24px;
}

.mf-home-page .mf-home-news,
.mf-home-page .mf-home-guides,
.mf-home-page .mf-home-games,
.mf-home-page .mf-home-popular{
    margin:0 0 24px;
}

.mf-home-page .mf-home-news h2,
.mf-home-page .mf-home-guides h2,
.mf-home-page .mf-home-games h2,
.mf-home-page .mf-home-popular h2{
    margin:0 0 14px;
}

.mf-page-article{
    margin-bottom:20px;
}

.mf-guide-taxonomy-list{
    margin-top:0;
}

.mf-search-filters{
    background:#fff;
    padding:14px 16px;
    border-radius:12px;
    box-shadow:0 2px 8px rgba(0,0,0,0.04);
    margin:0 0 20px;
}

.mf-search-filter-title{
    display:block;
    margin:0 0 10px;
    font-size:13px;
    font-weight:800;
    color:#111827;
    text-transform:uppercase;
}

.mf-search-filters ul{
    display:flex;
    flex-wrap:wrap;
    gap:8px;
    list-style:none;
    margin:0;
    padding:0;
}

.mf-search-filters a{
    display:inline-flex;
    align-items:center;
    gap:6px;
    padding:6px 10px;
    border-radius:999px;
    background:#f3f4f6;
    color:#333;
    font-size:13px;
    font-weight:600;
    text-decoration:none;
}

.mf-search-filters a:hover{
    background:#e5e7eb;
}

.mf-search-filters .remove{
    font-style:normal;
    color:#888;
}

.mf-review-listing-head{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:12px;
}

.mf-review-listing{
    border:1px solid #edf0f3;
    border-radius:12px;
    background:#fff;
    overflow:hidden;
    box-shadow:0 2px 8px rgba(0,0,0,0.04);
    transition:transform .16s ease, box-shadow .16s ease, border-color .16s ease;
}

.mf-review-listing:hover{
    transform:translateY(-2px);
    border-color:#d7dee8;
    box-shadow:0 10px 22px rgba(15,23,42,.08);
}

.mf-review-listing a{
    border-radius:12px;
}

.mf-review-listing .mf-news-thumb{
    border-radius:8px;
    overflow:hidden;
}

.mf-review-summary{
    display:grid;
    grid-template-columns:minmax(120px, 160px) minmax(0, 1fr) minmax(0, 1fr);
    gap:14px;
    margin:18px 0 22px;
}

.mf-review-score,
.mf-review-points{
    background:#f9fafb;
    border:1px solid #edf0f3;
    border-radius:12px;
    padding:14px;
}

.mf-review-score{
    display:flex;
    flex-direction:column;
    justify-content:center;
    align-items:center;
    text-align:center;
}

.mf-review-score-label{
    margin-bottom:6px;
    color:#667085;
    font-size:12px;
    font-weight:800;
    text-transform:uppercase;
}

.mf-review-score strong{
    color:#111827;
    font-size:30px;
    line-height:1;
}

.mf-review-points h2{
    margin:0 0 10px;
    font-size:14px;
    line-height:1.25;
    color:#111827;
}

.mf-review-points ul{
    list-style:none;
    margin:0;
    padding:0;
}

.mf-review-points li{
    position:relative;
    margin:0 0 8px;
    padding-left:20px;
    color:#374151;
    font-size:13px;
    line-height:1.45;
}

.mf-review-points li:last-child{
    margin-bottom:0;
}

.mf-review-points li::before{
    position:absolute;
    left:0;
    top:0;
    font-weight:800;
}

.mf-review-points-positive li::before{
    content:"+";
    color:#16a34a;
}

.mf-review-points-negative li::before{
    content:"-";
    color:#dc2626;
}

.mf-review-rating{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-width:38px;
    min-height:30px;
    padding:4px 8px;
    border-radius:8px;
    background:#111827;
    color:#fff;
    font-size:13px;
    font-weight:800;
    line-height:1;
    flex-shrink:0;
}

@media (max-width:600px){
    .mf-review-summary{
        grid-template-columns:1fr;
    }

    .mf-review-score{
        align-items:flex-start;
        text-align:left;
    }

    .mf-review-listing{
        border-radius:12px;
        border-bottom:1px solid #edf0f3;
    }

    .mf-review-listing a{
        padding:10px;
        border-radius:12px;
    }
}

.mf-guide-article{
    margin-bottom:20px;
}

.mf-article-breadcrumbs{
    margin:0 0 16px;
    padding-bottom:12px;
    border-bottom:1px solid #eee;
}

.mf-guide-related .related-gallery{
    margin-top:14px;
}

.mf-single-review,
.mf-single-music,
.mf-single-game{
    margin-top:30px;
}

.mf-review-article,
.mf-music-article,
.mf-game-article{
    margin-bottom:20px;
}

.mf-game-article .postlist,
.mf-game-article .post-info{
    margin:0;
    padding:0;
    background:transparent;
}

.mf-game-article .load_button{
    margin-top:20px;
}

.mf-layout-with-sidebar{
    display:grid;
    grid-template-columns:minmax(0, 1fr) 300px;
    gap:24px;
    align-items:start;
}

/* Let full-width Auto Ads extend without widening the game's grid track. */
body.single-game .mf-layout-main{
    min-width:0;
}

.mf-layout-sidebar{
    min-width:0;
}

.mf-layout-sidebar .widget{
    background:#fff;
    padding:18px;
    border-radius:12px;
    box-shadow:0 2px 8px rgba(0,0,0,0.04);
    margin-bottom:20px;
    color:#273142;
    border:1px solid #edf0f3;
    overflow:hidden;
}

.mf-layout-sidebar .widget-title,
.mf-layout-sidebar .widget-boxed .widget-title{
    margin:0 0 14px;
    padding:0 0 10px;
    border-bottom:1px solid #edf0f3;
    color:#111827;
    line-height:1.25;
    font-weight:800;
}

.mf-layout-sidebar .textwidget,
.mf-layout-sidebar .game-infobox{
    color:#374151;
}

.mf-layout-sidebar a{
    color:#2563eb;
    text-decoration:none;
    font-weight:600;
}

.mf-layout-sidebar a:hover{
    color:#1d4ed8;
    text-decoration:underline;
}

.mf-layout-sidebar .game-thumb{
    border-radius:10px;
    margin:0 0 14px;
}

.mf-layout-sidebar .game-creator,
.mf-layout-sidebar .game-inforow,
.mf-layout-sidebar .game-descr{
    margin:0 0 12px !important;
    padding:10px 0;
    border-bottom:1px solid #f0f2f5;
}

.mf-layout-sidebar .game-creator:last-child,
.mf-layout-sidebar .game-inforow:last-child,
.mf-layout-sidebar .game-descr:last-child{
    border-bottom:none;
    margin-bottom:0 !important;
}

.mf-layout-sidebar .game-creator > span,
.mf-layout-sidebar .game-inforow{
    display:block;
    margin-top:4px;
    color:#4b5563;
}

.mf-layout-sidebar h4,
.mf-layout-sidebar .widget-boxed h4,
.mf-layout-sidebar .widget-boxed h5{
    margin:12px 0 8px;
    padding:0;
    border-bottom:none;
    color:#111827;
    font-size:13px;
    line-height:1.3;
    font-weight:800;
    text-transform:uppercase;
}

.mf-layout-sidebar strong{
    color:#111827 !important;
}

.mf-layout-sidebar img{
    max-width:100%;
    height:auto;
}

.mf-layout-sidebar .alignleft{
    float:none;
    display:block;
    margin:0 0 10px;
}

.mf-game-section{
    background:#fff;
    padding:18px 20px;
    border-radius:12px;
    box-shadow:0 2px 8px rgba(0,0,0,0.04);
    margin-top:20px;
}

.mf-game-section h2{
    margin:0 0 14px;
}

.mf-game-section-list{
    display:flex;
    flex-direction:column;
    gap:12px;
}

.mf-game-section-item a{
    display:flex;
    gap:14px;
    padding:10px;
    border:1px solid #edf0f3;
    border-radius:10px;
    text-decoration:none;
    transition:transform .16s ease, box-shadow .16s ease, border-color .16s ease, background .16s ease;
}

.mf-game-section-item a:hover{
    background:#f9fafb;
    border-color:#d7dee8;
    box-shadow:0 10px 22px rgba(15,23,42,.08);
    transform:translateY(-2px);
}

.mf-game-section-thumb{
    width:110px;
    height:78px;
    flex-shrink:0;
    border-radius:8px;
    overflow:hidden;
    background:#f3f4f6;
}

.mf-game-section-thumb img{
    width:100%;
    height:100%;
    object-fit:cover;
}

.mf-game-section-content{
    min-width:0;
}

.mf-game-section-content h3{
    margin:0 0 4px;
}

.mf-game-section-content p{
    margin:4px 0 0;
}

.mf-game-media-grid{
    display:grid;
}

.mf-game-media-grid a{
    display:block;
    overflow:hidden;
    aspect-ratio:16 / 10;
}

.mf-game-media-grid img{
    width:100%;
    height:100%;
    object-fit:cover;
    transition:transform .16s ease;
}

.mf-game-media-grid a:hover img{
    transform:scale(1.04);
}

.mf-game-archive-grid{
    display:grid;
}

.mf-game-archive-card{
    background:#fff;
    border:1px solid #edf0f3;
    overflow:hidden;
    transition:transform .16s ease, box-shadow .16s ease, border-color .16s ease;
}

.mf-game-archive-card:hover{
    transform:translateY(-2px);
}

.mf-game-archive-card .mf-game-list-main{
    display:block;
    color:inherit;
    text-decoration:none;
}

.mf-game-archive-thumb{
    background:#f3f4f6;
    overflow:hidden;
}

.mf-game-archive-thumb img{
    width:100%;
    height:100%;
    object-fit:cover;
}


.mf-game-archive-content h2{
    margin:0 0 6px;
}

.mf-game-archive-content p{
    margin:0;
}

@media (max-width:900px){
    .mf-layout-with-sidebar{
        grid-template-columns:1fr;
    }

    .mf-layout-sidebar{
        margin-top:4px;
    }
}

@media (max-width:600px){
    .mf-game-section{
        padding:16px;
    }

    .mf-game-section-item a{
        gap:10px;
        padding:8px;
    }

    .mf-game-section-thumb{
        width:78px;
        height:58px;
    }
}

.mf-breadcrumbs{
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    gap:8px;
    margin:0 0 16px;
}

.mf-breadcrumbs a{
    text-decoration:none;
    font-weight:600;
}

.mf-breadcrumbs a:hover{
    text-decoration:underline;
}

.archive-header,
.mf-guidehub-header{
    margin-bottom:22px;
    padding:20px;
    background:#fff;
    border:1px solid #e5e7eb;
    border-radius:12px;
    box-shadow:0 6px 18px rgba(15,23,42,.06);
}

.archive-title{
    margin:0 0 8px;
}

.archive-description{
    margin:0;
    max-width:70ch;
    line-height:1.6;
}


/* =====================================
FILTER BAR
===================================== */

.mf-guide-filter{
    display:flex;
    flex-direction:column; /* 🔥 untereinander */
    gap:10px;
    margin-bottom:20px;
    padding:14px;
    background:#fff;
    border:1px solid #e5e7eb;
    border-radius:12px;
    box-shadow:0 4px 14px rgba(15,23,42,.05);
}

/* RESET (wichtig für Safari etc.) */

.mf-guide-dropdown,
.mf-guide-search{
    appearance:none;
    -webkit-appearance:none;
    background:#fff;
    font-family:inherit;
}

/* DROPDOWN */

.mf-guide-dropdown{
    width:100%;
    height:42px;
    padding:0 12px;

    border-radius:8px;
    border:1px solid #ddd;
    background:#fff;

    font-size:14px;
}

/* SEARCH */

.mf-guide-search{
    width:100%;
    height:42px;
    padding:0 14px;

    border-radius:8px;
    border:1px solid #ddd;

    font-size:14px;
}

/* NO RESULTS */

.mf-no-results{
    font-size:18px;
    font-weight:600;
    margin-bottom:30px;
}


/* =====================================
SPIEL
===================================== */

.mf-game{
    margin-bottom:28px;
    padding:18px;
    background:#fff;
    border:1px solid #e5e7eb;
    border-radius:12px;
    box-shadow:0 6px 18px rgba(15,23,42,.05);
}

.mf-game-title{
    margin-bottom:14px;
    border-bottom:1px solid #eee;
    padding-bottom:10px;
}

.mf-guide-count{
    font-weight:600;
}


/* =====================================
GUIDE LIST – ULTRA KOMPAKT
===================================== */

.mf-guide-card{
    border:1px solid #edf0f3;
    border-radius:10px;
    background:#fff;
    overflow:hidden;
    transition:transform .16s ease, box-shadow .16s ease, border-color .16s ease;
}

.mf-guide-card + .mf-guide-card{
    margin-top:10px;
}

/* ITEM */

.mf-guide-card a{
    display:flex;
    gap:14px;
    padding:10px;
    align-items:center;
    text-decoration:none;
    color:inherit;
}

/* HOVER */

.mf-guide-card a:hover{
    background:#f9fafb;
}

.mf-guide-card:hover{
    transform:translateY(-2px);
    border-color:#d7dee8;
    box-shadow:0 10px 22px rgba(15,23,42,.08);
}


/* =====================================
THUMB (kleiner)
===================================== */

.mf-guide-thumb{
    width:96px;
    height:68px;
    flex-shrink:0;
    border-radius:8px;
    overflow:hidden;
    background:#f3f4f6;
}

.mf-guide-thumb img{
    width:100%;
    height:100%;
    object-fit:cover;
}


/* =====================================
TEXT
===================================== */

.mf-guide-title{
    margin-bottom:4px;
}



/* =====================================
GAME BLOCK
===================================== */

/* =====================================
HIGHLIGHT
===================================== */

mark{
    background:#ffe066;
    padding:2px 3px;
}


/* =====================================
MOBILE (ZUSAMMENGEFASST)
===================================== */

@media (max-width:700px){

    .mf-guide-filter{
        flex-direction:column;
        align-items:stretch;
    }

    .mf-guide-dropdown,
    .mf-guide-search{
        width:100%;
        height:44px;
        font-size:16px;
    }
	 .mf-guide-card a{
        padding:8px 0;
    }

    .mf-guide-thumb{
        width:55px;
        height:40px;
    }

    .mf-guide-title{
        font-size:13px;
    }

    .mf-guide-excerpt{
        font-size:11px;
        line-height:1.2;
    }
}

/* =====================================================
GLOBAL
===================================================== */

img{
max-width:100%;
height:auto;
display:block;
}

.mf-section{
margin-bottom:50px;
}

.mf-section h2{
font-size:26px;
margin-bottom:20px;
}

/* =====================================================
STARTSEITE
===================================================== */

.mf-home{
    margin-top:40px;
}

/* Intro */

.mf-home-intro{
    margin-bottom:40px;
}

.mf-home-intro h1{
    font-size:32px;
    margin-bottom:10px;
}

.mf-home-intro p{
    line-height:1.6;
}

/* ===================================================== 
LATEST GUIDES (STARTSEITE)
===================================================== */

.mf-home-guides{
    margin-bottom:40px;
}

.mf-guides-compact{
    display:flex;
    flex-direction:column;
    gap:10px;
}

.mf-guide-card-compact a{
    display:flex;
    gap:12px;
    align-items:flex-start;
    text-decoration:none;
    padding:6px 8px;
    border-radius:6px;
}

.mf-guide-card-compact a:hover{
    background:#f7f7f7;
}

.mf-guide-thumb-small img{
    width:50px;
    height:50px;
    object-fit:cover;
    border-radius:4px;
}

.mf-guide-text-small{
    flex:1;
}

.mf-guide-title-small{
    margin-bottom:2px;
}



/* =====================================================
LATEST NEWS (STARTSEITE – LISTE)
===================================================== */

.mf-home-news{
    margin:40px 0;
}

.mf-news-list{
    display:flex;
    flex-direction:column;
    gap:12px;
}

.mf-news-item a{
    display:flex;
    gap:12px;
    padding:10px;
    border-radius:10px;
    text-decoration:none;
}

.mf-news-item a:hover{
    background:#f7f7f7;
}

/* THUMB */

.mf-news-item .mf-news-thumb{
    flex:0 0 100px;
    height:70px;
    border-radius:8px;
    overflow:hidden;
}

.mf-news-item .mf-news-thumb img{
    width:100%;
    height:100%;
    object-fit:cover;
}

/* TEXT */

.mf-news-item .mf-news-title{
    font-size:15px;
    font-weight:600;
    margin-bottom:4px;
}

.mf-news-item .mf-news-date{
    font-size:12px;
    color:#888;
}

.mf-news-item .mf-news-excerpt{
    font-size:13px;
    color:#555;
}


/* =====================================================
ARCHIV LINK (RECHTSBÜNDIG)
===================================================== */

.mf-section-archive{
    margin-top:12px;
    display:flex;
    justify-content:flex-end;
}

.mf-section-archive a{
    font-size:14px;
    font-weight:600;
    text-decoration:none;
}

.mf-section-archive a:hover{
    text-decoration:underline;
}

/* =====================================================
NEWS HUB + ARCHIV
===================================================== */


.mf-news-hub .mf-news-list{
    margin-top:10px;
}

/* PAGINATION */

.mf-news-pagination{
    padding:12px;
    display:flex;
    justify-content:center;
    flex-wrap:wrap;
    gap:6px;
    background:#fff;
    border:1px solid #e5e7eb;
}

.mf-news-pagination a,
.mf-news-pagination span{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-width:36px;
    height:36px;
    padding:0 10px;
    border:1px solid #ddd;
    background:#fff;
    text-decoration:none;
    font-size:14px;
}




/* =====================================================
LIST MOBILE
===================================================== */

@media (max-width:600px){

    .mf-news-item{
        border-bottom:1px solid #eee;
    }

    .mf-news-item a{
        padding:10px 0;
        border-radius:0;
    }

    .mf-news-item .mf-news-excerpt{
        display:none;
    }

    .mf-section-archive{
        justify-content:flex-start;
    }
}


/* =====================================================
SINGLE NEWS
===================================================== */

.mf-single-news{
    margin-top:30px;
    width:100%;
}

/* Container Fix */

.mf-single-news .container{
    max-width:100% !important;
    padding:0 !important;
}

.mf-single-news .mf-container{
    max-width:1200px;
    margin:0 auto;
    padding:0 16px;
}


/* =====================================================
BACK LINK
===================================================== */

.mf-back-link{
    margin-bottom:18px;
}

.mf-back-link a,
.mf-context-back a{
    display:inline-flex;
    align-items:center;
    gap:8px;
    min-height:38px;
    font-size:14px;
    font-weight:700;
    line-height:1.2;
    padding:8px 12px;
    border:1px solid #e5e7eb;
    border-radius:10px;
    background:#fff;
    color:#1f2937;
    box-shadow:0 2px 8px rgba(15,23,42,.05);
    text-decoration:none;
    transition:background .16s ease, border-color .16s ease, transform .16s ease;
}

.mf-back-link a:hover,
.mf-context-back a:hover{
    background:#f8fafc;
    border-color:#cbd5e1;
    color:#0f5f9e;
    transform:translateX(-2px);
}

.mf-back-link i,
.mf-context-back i{
    font-size:13px;
}


/* =====================================================
STICKY BAR (MOBILE)
===================================================== */

@media (max-width:700px){

    .mf-sticky-bar{
        position:sticky;
        top:0;
        z-index:50;
        display:flex;
        gap:10px;
        padding:10px 12px;
        background:#fff;
        border-bottom:1px solid #eee;
    }

    .mf-sticky-back a{
        padding:6px 10px;
        background:#f3f4f6;
        border-radius:8px;
        text-decoration:none;
        color:#333;
    }

    .mf-sticky-cats{
        display:flex;
        gap:8px;
        overflow-x:auto;
        white-space:nowrap;
    }

    .mf-sticky-cats a{
        font-size:13px;
        padding:6px 10px;
        background:#f3f4f6;
        border-radius:20px;
        text-decoration:none;
        color:#333;
        flex-shrink:0;
    }

}


/* =====================================================
ARTICLE CARD
===================================================== */

.mf-article{
    background:#fff;
    padding:22px 20px;
    border-radius:12px;
    box-shadow:0 2px 8px rgba(0,0,0,0.04);
}


/* =====================================================
TITLE + META
===================================================== */




/* =====================================================
CONTENT
===================================================== */


.mf-article-content p{
    margin-bottom:16px;
}

.mf-article-content a{
    text-decoration:underline;
}


/* =====================================================
INLINE IMAGE (RECHTS, KLEIN)
===================================================== */

.mf-inline-image{
    float:right;
    margin:0 0 14px 20px;
}


/* Clearfix */

.mf-article-content::after{
    content:"";
    display:block;
    clear:both;
}


/* =====================================================
VIDEO
===================================================== */

.mf-article-content iframe{
    width:100%;
    aspect-ratio:16/9;
    border-radius:12px;
    margin:20px 0;
}


/* =====================================================
SECTION CARDS
===================================================== */

.mf-article-nav,
.mf-related-news,
.mf-comments{
    background:#fff;
    padding:18px 20px;
    border-radius:12px;
    box-shadow:0 2px 8px rgba(0,0,0,0.04);
    margin-top:20px;
}

.mf-comments{
    margin-bottom:44px;
}


/* NAV */

.mf-article-nav{
    display:flex;
    justify-content:space-between;
    gap:20px;
}

.mf-article-nav a{
    text-decoration:none;
    color:#333;
}

.mf-article-nav a:hover{
    text-decoration:underline;
}


/* RELATED */

.mf-related-news h3{
    margin-bottom:12px;
}


/* =====================================================
MOBILE
===================================================== */

@media (max-width:700px){


}

@media (max-width:600px){

    .mf-article{
        padding:16px;
    }

    .mf-article-title{
        font-size:20px;
    }

    .mf-article-nav{
        flex-direction:column;
        gap:10px;
    }

    .mf-article-nav,
    .mf-related-news,
    .mf-comments{
        padding:16px;
        border-radius:10px;
    }

}

/* =====================================================
META (DATUM + AUTOR)
===================================================== */

.mf-article-meta{
    margin-bottom:8px;
}

.mf-meta-sep{
    margin:0 6px;
    color:#bbb;
}


/* =====================================================
KATEGORIEN (DESKTOP)
===================================================== */

.mf-article-cats{
    display:flex;
    flex-wrap:wrap;
    gap:8px;
    margin-bottom:14px;
}

.mf-article-cats a{
    font-size:12px;
    padding:5px 10px;
    background:#f3f4f6;
    border-radius:20px;
    text-decoration:none;
    color:#333;
}

.mf-article-cats a:hover{
    background:#e5e7eb;
}

/* =====================================================
   MODERN TYPOGRAPHY OVERRIDES
   Finaler Block: gewinnt gegen alte Theme-Regeln
===================================================== */

body{
  font-family: var(--mf-font-base);
  font-size: 14px;
  line-height: var(--mf-leading-normal);
  color: var(--mf-text);
}

.mf-single-news,
.mf-single-news *,
.mf-page-breadcrumbs,
.mf-news-list,
.mf-game-archive-grid,
.mf-guidehub,
.mf-search-page{
  letter-spacing: 0;
}

.mf-article-title,
.archive-title,
.mf-home-page .mf-home-news h2,
.mf-home-page .mf-home-guides h2,
.mf-home-page .mf-home-games h2,
.mf-home-page .mf-home-popular h2,
.mf-game-section h2,
.mf-game-title{
  color: var(--mf-heading);
  font-weight: 800;
  letter-spacing: 0;
}

.mf-article-title{
  font-size: clamp(22px, 2vw, 26px);
  line-height: var(--mf-leading-tight);
  margin-bottom: 8px;
}

.archive-title{
  font-size: clamp(22px, 2.1vw, 28px);
  line-height: var(--mf-leading-tight);
}

.mf-article-content{
  font-size: clamp(15px, 1.2vw, 16px);
  line-height: var(--mf-leading-relaxed);
  color: var(--mf-text);
}

.mf-article-content p,
.archive-description,
.mf-home-intro p{
  color: var(--mf-text-soft);
}

.mf-article-content h2{
  font-size: clamp(19px, 1.7vw, 22px);
  line-height: var(--mf-leading-tight);
  margin: 26px 0 12px;
  color: var(--mf-heading);
}

.mf-article-content h3{
  font-size: clamp(17px, 1.5vw, 19px);
  line-height: var(--mf-leading-tight);
  margin: 22px 0 10px;
  color: var(--mf-heading);
}

.mf-article-meta,
.mf-news-date,
.mf-card-meta,
.mf-breadcrumbs,
.mf-guide-count{
  font-size: var(--mf-font-sm);
  line-height: 1.45;
  color: var(--mf-text-muted);
}

.mf-news-title,
.mf-guide-title,
.mf-guide-title-small,
.mf-game-section-content h3,
.mf-game-archive-content h2,
.mf-game-title,
.mf-search-result-item .mf-news-title,
.mf-review-listing .mf-news-title,
.mf-guide-listing .mf-news-title,
.mf-blog-listing .mf-news-title{
  font-size: var(--mf-font-md);
  line-height: 1.32;
  color: var(--mf-heading);
  font-weight: 700;
}

.mf-home-page .mf-home-news h2,
.mf-home-page .mf-home-guides h2,
.mf-home-page .mf-home-games h2,
.mf-home-page .mf-home-popular h2,
.mf-game-section h2{
  font-size: var(--mf-font-xl);
  line-height: var(--mf-leading-tight);
}

.mf-news-excerpt,
.mf-guide-excerpt,
.mf-guide-excerpt-small,
.mf-game-section-content p,
.mf-game-archive-content p,
.mf-search-result-item .mf-news-excerpt,
.mf-review-listing .mf-news-excerpt,
.mf-guide-listing .mf-news-excerpt,
.mf-blog-listing .mf-news-excerpt{
  font-size: var(--mf-font-sm);
  line-height: 1.5;
  color: var(--mf-text-soft);
}

.mf-breadcrumbs a,
.mf-article-content a,
.mf-news-item a,
.mf-game-section-item a,
.mf-game-archive-card a{
  color: inherit;
}

.mf-article-content a{
  color: var(--mf-link);
}

.mf-layout-sidebar .widget-title,
.mf-layout-sidebar .widget-boxed .widget-title{
  font-size: var(--mf-font-lg);
}

.mf-layout-sidebar .textwidget,
.mf-layout-sidebar .game-infobox{
  font-size: var(--mf-font-sm);
  line-height: 1.58;
}

@media (max-width: 768px){
  body{
    font-size: 15px;
    line-height: 1.6;
  }

  .mf-article-title,
  .archive-title{
    font-size: 22px;
  }

  .mf-article-content{
    font-size: 15px;
    line-height: 1.7;
  }

  .mf-news-title,
  .mf-guide-title,
  .mf-guide-title-small,
  .mf-game-section-content h3,
  .mf-game-archive-content h2,
  .mf-search-result-item .mf-news-title,
  .mf-review-listing .mf-news-title,
  .mf-guide-listing .mf-news-title,
  .mf-blog-listing .mf-news-title{
    font-size: 15px;
  }

  .mf-news-excerpt,
  .mf-guide-excerpt,
  .mf-guide-excerpt-small,
  .mf-game-section-content p,
  .mf-game-archive-content p,
  .mf-search-result-item .mf-news-excerpt,
  .mf-review-listing .mf-news-excerpt,
  .mf-guide-listing .mf-news-excerpt,
  .mf-blog-listing .mf-news-excerpt{
    font-size: 13px;
    line-height: 1.45;
  }

  .mf-article-meta,
  .mf-news-date,
  .mf-breadcrumbs{
    font-size: 13px;
  }
}

/* =====================================================
   Generic completion hub and checklist
===================================================== */

.mf-completion-hub,
.mf-completion-checklist{
  --mf-completion-blue:#0668a1;
  --mf-completion-blue-dark:#045281;
  --mf-completion-blue-soft:#eef7fb;
  --mf-completion-green:#2f8f4e;
  --mf-completion-border:#d6e7f1;
  --mf-completion-text:#111827;
  --mf-completion-muted:#596579;
  --mf-progress:0%;
  width:100%;
  max-width:100%;
  box-sizing:border-box;
  color:var(--mf-completion-text);
}

.mf-completion-hub *,
.mf-completion-checklist *{
  box-sizing:border-box;
}

.mf-article-content .mf-completion-hub a,
.mf-article-content .mf-completion-checklist a{
  text-decoration:none;
}

.mf-completion-hub [hidden],
.mf-completion-checklist [hidden]{
  display:none !important;
}

.mf-completion-eyebrow{
  display:block;
  margin-bottom:6px;
  color:var(--mf-completion-blue);
  font-size:12px;
  font-weight:800;
  line-height:1.3;
  text-transform:uppercase;
}

.mf-completion-hero{
  display:grid;
  grid-template-columns:minmax(0, 1fr) auto;
  align-items:end;
  gap:28px;
  padding:28px;
  border:1px solid var(--mf-completion-border);
  border-radius:16px;
  background:#fff;
  box-shadow:0 10px 30px rgba(15,23,42,.07);
}

.mf-completion-hero h2,
.mf-completion-checklist h2{
  margin:0;
  color:var(--mf-completion-text);
  font-size:32px;
  line-height:1.15;
}

.mf-completion-hero p{
  max-width:72ch;
  margin:12px 0 0;
  color:var(--mf-completion-muted);
  font-size:16px;
  line-height:1.65;
}

.mf-completion-facts{
  display:flex;
  align-items:stretch;
  gap:8px;
}

.mf-completion-facts > div{
  display:flex;
  min-width:92px;
  min-height:78px;
  padding:11px 12px;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  border:1px solid var(--mf-completion-border);
  border-radius:12px;
  background:var(--mf-completion-blue-soft);
  text-align:center;
}

.mf-completion-facts strong{
  color:var(--mf-completion-blue-dark);
  font-size:22px;
  line-height:1;
}

.mf-completion-facts span{
  margin-top:7px;
  color:var(--mf-completion-muted);
  font-size:11px;
  font-weight:700;
  line-height:1.25;
}

.mf-completion-overview,
.mf-completion-targets,
.mf-completion-chapters,
.mf-completion-checklist{
  margin-top:16px;
  padding:22px;
  border:1px solid var(--mf-completion-border);
  border-radius:16px;
  background:#fff;
  box-shadow:0 7px 22px rgba(15,23,42,.055);
}

.mf-completion-overview-head,
.mf-completion-checklist-header{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
}

.mf-completion-overview h3,
.mf-completion-section-title h3{
  margin:0;
  color:var(--mf-completion-text);
  font-size:22px;
  line-height:1.25;
}

.mf-completion-percent{
  flex:0 0 auto;
  color:var(--mf-completion-blue-dark);
  font-size:24px;
  line-height:1;
}

.mf-completion-progress{
  position:relative;
  height:10px;
  margin-top:16px;
  overflow:hidden;
  border-radius:999px;
  background:#e8eef2;
}

.mf-completion-progress > span{
  display:block;
  width:var(--mf-progress);
  height:100%;
  border-radius:inherit;
  background:var(--mf-completion-green);
  transition:width .2s ease;
}

.mf-completion-progress-copy,
.mf-completion-storage-note,
.mf-completion-target-note{
  margin:9px 0 0 !important;
  color:var(--mf-completion-muted);
  font-size:12px !important;
  line-height:1.5 !important;
}

.mf-completion-entry-progress{
  margin:6px 0 0 !important;
  color:var(--mf-completion-muted);
  font-size:12px !important;
  line-height:1.45 !important;
}

.mf-completion-entry-progress strong{
  color:var(--mf-completion-blue-dark);
}

.mf-completion-overview-actions{
  display:flex;
  align-items:center;
  gap:10px;
  margin-top:17px;
}

.mf-completion-primary,
.mf-completion-open,
.mf-completion-tool-button,
.mf-completion-filters button{
  min-height:40px;
  border:1px solid transparent;
  border-radius:999px;
  font-family:inherit;
  font-size:13px;
  font-weight:800;
  line-height:1.2;
  cursor:pointer;
}

.mf-completion-primary,
.mf-completion-open{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:9px 15px;
  background:var(--mf-completion-blue);
  color:#fff !important;
}

.mf-completion-primary:hover,
.mf-completion-open:hover{
  background:var(--mf-completion-blue-dark);
  color:#fff !important;
}

.mf-completion-primary.is-complete{
  background:var(--mf-completion-green);
}

.mf-completion-category-grid{
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:10px;
  margin-top:16px;
}

.mf-completion-category{
  position:relative;
  display:grid;
  grid-template-columns:minmax(0, 1fr) auto;
  gap:4px 10px;
  min-width:0;
  padding:14px 14px 18px;
  overflow:hidden;
  border:1px solid #e0eaf0;
  border-radius:12px;
  background:#f9fbfc;
}

.mf-completion-category::after{
  position:absolute;
  right:0;
  bottom:0;
  left:0;
  width:var(--mf-progress);
  height:4px;
  background:var(--mf-completion-green);
  content:"";
  transition:width .2s ease;
}

.mf-completion-category > span{
  min-width:0;
  color:var(--mf-completion-text);
  font-size:13px;
  font-weight:750;
  overflow-wrap:anywhere;
}

.mf-completion-category > strong{
  color:var(--mf-completion-blue-dark);
  font-size:14px;
}

.mf-completion-category > small{
  grid-column:1 / -1;
  color:var(--mf-completion-muted);
  font-size:11px;
}

.mf-completion-toolbar{
  display:flex;
  align-items:center;
  gap:8px;
  margin:16px 0;
}

.mf-completion-search{
  flex:1 1 280px;
  min-width:160px;
}

.mf-completion-search input{
  width:100%;
  min-height:42px;
  padding:0 14px;
  border:1px solid #bfd8e7;
  border-radius:999px;
  background:#fff;
  color:var(--mf-completion-text);
  font-family:inherit;
  font-size:14px;
}

.mf-completion-search input:focus{
  border-color:var(--mf-completion-blue);
  outline:3px solid rgba(6,104,161,.13);
}

.mf-completion-filters{
  display:inline-flex;
  flex:0 0 auto;
  padding:3px;
  border:1px solid var(--mf-completion-border);
  border-radius:999px;
  background:#f5f8fa;
}

.mf-completion-filters button{
  min-height:34px;
  padding:7px 12px;
  background:transparent;
  color:var(--mf-completion-muted);
}

.mf-completion-filters button.is-active{
  background:#fff;
  color:var(--mf-completion-blue-dark);
  box-shadow:0 2px 7px rgba(15,23,42,.1);
}

.mf-completion-tool-button{
  flex:0 0 auto;
  padding:9px 13px;
  border-color:#b9d8e9;
  background:var(--mf-completion-blue-soft);
  color:var(--mf-completion-blue-dark);
}

.mf-completion-tool-button.is-muted{
  border-color:#dfe5ea;
  background:#fff;
  color:var(--mf-completion-muted);
}

.mf-completion-tool-button:hover,
.mf-completion-tool-button:focus-visible,
.mf-completion-filters button:hover,
.mf-completion-filters button:focus-visible{
  border-color:var(--mf-completion-blue);
  outline:none;
}

.mf-completion-chapter-grid{
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:12px;
}

.mf-completion-chapter{
  display:grid;
  grid-template-columns:minmax(0, 1fr);
  min-width:0;
  overflow:hidden;
  border:1px solid #dfe8ee;
  border-radius:12px;
  background:#fff;
  transition:border-color .16s ease, box-shadow .16s ease;
}

.mf-completion-chapter.has-image{
  grid-template-columns:118px minmax(0, 1fr);
}

.mf-completion-chapter:hover{
  border-color:#a9cfe3;
  box-shadow:0 8px 20px rgba(4,82,129,.09);
}

.mf-completion-chapter.is-complete{
  border-color:#b8ddc3;
  background:#fbfefc;
}

.mf-completion-chapter-image{
  display:block;
  min-height:100%;
  background:#eef2f4;
}

.mf-completion-chapter-image img{
  width:100%;
  height:100%;
  min-height:190px;
  object-fit:cover;
}

.mf-completion-chapter-copy{
  display:flex;
  min-width:0;
  padding:15px;
  flex-direction:column;
}

.mf-completion-chapter-number{
  color:var(--mf-completion-blue);
  font-size:11px;
  font-weight:800;
  text-transform:uppercase;
}

.mf-completion-chapter h4{
  margin:5px 0 0;
  font-size:17px;
  line-height:1.3;
}

.mf-completion-chapter h4 a{
  color:var(--mf-completion-text) !important;
}

.mf-completion-chapter h4 a:hover{
  color:var(--mf-completion-blue) !important;
}

.mf-completion-chapter p{
  display:-webkit-box;
  margin:7px 0 0 !important;
  overflow:hidden;
  color:var(--mf-completion-muted);
  font-size:13px !important;
  line-height:1.45 !important;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:2;
}

.mf-completion-chapter-meta{
  margin-top:9px;
  color:var(--mf-completion-muted);
  font-size:11px;
}

.mf-completion-chapter-meta small{
  margin-left:4px;
  color:var(--mf-completion-green);
  font-weight:750;
}

.mf-completion-chapter-actions{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  margin-top:auto;
  padding-top:12px;
}

.mf-completion-chapter-check{
  display:inline-flex;
  align-items:center;
  min-width:0;
}

.mf-completion-chapter-check input,
.mf-completion-item-title input{
  width:19px;
  height:19px;
  margin:0 7px 0 0;
  accent-color:var(--mf-completion-green);
  cursor:pointer;
}

.mf-completion-chapter-check label{
  margin:0;
  color:var(--mf-completion-muted);
  font-size:12px;
  font-weight:750;
  cursor:pointer;
}

.mf-completion-open{
  min-height:36px;
  padding:7px 12px;
  font-size:12px;
}

.mf-completion-chapters.is-hierarchical .mf-completion-chapter-grid{
  grid-template-columns:1fr;
  gap:10px;
}

.mf-completion-chapter-group{
  display:block;
  overflow:hidden;
}

.mf-completion-chapter-group:hover{
  box-shadow:none;
}

.mf-completion-chapter-group[open]{
  border-color:#a9cfe3;
  box-shadow:0 8px 22px rgba(4,82,129,.08);
}

.mf-completion-group-summary{
  display:grid;
  grid-template-columns:40px minmax(0, 1fr) auto 18px;
  gap:13px;
  min-height:82px;
  padding:13px 15px;
  align-items:center;
  cursor:pointer;
  list-style:none;
}

.mf-completion-group-summary::-webkit-details-marker{
  display:none;
}

.mf-completion-group-summary:focus-visible{
  outline:3px solid rgba(6,104,161,.16);
  outline-offset:-3px;
}

.mf-completion-group-index{
  display:flex;
  width:40px;
  height:40px;
  align-items:center;
  justify-content:center;
  border-radius:50%;
  background:var(--mf-completion-blue-soft);
  color:var(--mf-completion-blue-dark);
  font-size:15px;
  font-weight:850;
}

.mf-completion-chapter-group.is-complete .mf-completion-group-index{
  background:#eaf7ee;
  color:var(--mf-completion-green);
}

.mf-completion-group-title{
  display:block;
  min-width:0;
}

.mf-completion-group-title > strong{
  display:block;
  margin-top:3px;
  color:var(--mf-completion-text);
  font-size:17px;
  line-height:1.3;
}

.mf-completion-group-title > small{
  display:block;
  margin-top:4px;
  color:var(--mf-completion-muted);
  font-size:12px;
  line-height:1.35;
}

.mf-completion-chapter-group[open] .mf-completion-group-summary{
  background:#f7fbfd;
}

.mf-completion-group-progress{
  display:flex;
  min-width:64px;
  flex-direction:column;
  align-items:flex-end;
  color:var(--mf-completion-blue-dark);
}

.mf-completion-group-progress > strong{
  font-size:14px;
  line-height:1.2;
}

.mf-completion-group-progress > small{
  margin-top:3px;
  color:var(--mf-completion-muted);
  font-size:11px;
  font-weight:750;
}

.mf-completion-group-chevron{
  width:10px;
  height:10px;
  border-right:2px solid var(--mf-completion-blue-dark);
  border-bottom:2px solid var(--mf-completion-blue-dark);
  transform:rotate(45deg) translate(-2px, 2px);
  transition:transform .18s ease;
}

.mf-completion-chapter-group[open] .mf-completion-group-chevron{
  transform:rotate(225deg) translate(-2px, 2px);
}

.mf-completion-group-panel{
  padding:0 15px 15px;
  border-top:1px solid #e7edf1;
  background:#fbfdfe;
}

.mf-completion-group-panel > :first-child{
  margin-top:0;
}

.mf-completion-group-overview{
  display:grid;
  grid-template-columns:minmax(0, 1fr);
  gap:14px;
  padding:15px 0;
}

.mf-completion-group-overview.has-image{
  grid-template-columns:116px minmax(0, 1fr);
}

.mf-completion-group-overview > p,
.mf-completion-habitat > p{
  display:contents !important;
  margin:0 !important;
  padding:0 !important;
}

.mf-completion-group-overview-image{
  display:block;
  grid-column:1;
  grid-row:1;
  width:116px;
  aspect-ratio:4 / 3;
  overflow:hidden;
  border-radius:8px;
  background:#eef2f4;
}

.mf-completion-group-overview-image img{
  width:100%;
  height:100%;
  object-fit:cover;
}

.mf-completion-group-overview-copy{
  display:flex;
  grid-column:1;
  grid-row:1;
  min-width:0;
  flex-direction:column;
  justify-content:center;
}

.mf-completion-group-overview.has-image .mf-completion-group-overview-copy{
  grid-column:2;
}

.mf-completion-group-overview-copy p{
  margin-top:0 !important;
}

.mf-completion-stat-list{
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:7px;
  min-width:0;
}

.mf-completion-chapter-stats{
  max-width:680px;
  margin-top:12px;
}

.mf-completion-stat{
  --mf-progress:0%;
  position:relative;
  display:flex;
  min-width:0;
  min-height:39px;
  padding:7px 9px 9px;
  overflow:hidden;
  align-items:center;
  justify-content:space-between;
  gap:7px;
  border:1px solid #d9e9f2;
  border-radius:9px;
  background:#f5fafc;
}

.mf-completion-stat::after{
  position:absolute;
  right:0;
  bottom:0;
  left:0;
  width:var(--mf-progress);
  height:3px;
  background:var(--mf-completion-green);
  content:"";
}

.mf-completion-stat strong{
  flex:0 0 auto;
  color:var(--mf-completion-blue-dark);
  font-size:12px;
  line-height:1;
}

.mf-completion-stat small{
  min-width:0;
  color:var(--mf-completion-muted);
  font-size:10px;
  font-weight:750;
  line-height:1.2;
  overflow-wrap:anywhere;
  text-align:right;
}

.mf-completion-habitats{
  padding-top:14px;
  border-top:1px solid #dfe8ee;
}

.mf-completion-habitats-heading{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin-bottom:5px;
}

.mf-completion-habitats-heading > strong{
  color:var(--mf-completion-text);
  font-size:14px;
}

.mf-completion-habitats-heading > span{
  display:inline-flex;
  min-width:28px;
  min-height:24px;
  padding:3px 8px;
  align-items:center;
  justify-content:center;
  border-radius:999px;
  background:var(--mf-completion-blue-soft);
  color:var(--mf-completion-blue-dark);
  font-size:11px;
  font-weight:800;
}

.mf-completion-habitat{
  display:grid;
  grid-template-columns:minmax(180px, .9fr) minmax(260px, 1.25fr) auto 34px;
  gap:12px;
  min-width:0;
  padding:10px 0;
  align-items:center;
  border-bottom:1px solid #e7edf1;
}

.mf-completion-habitat.has-image{
  grid-template-columns:58px minmax(180px, .9fr) minmax(260px, 1.25fr) auto 34px;
}

.mf-completion-habitat:last-child{
  border-bottom:0;
}

.mf-completion-habitat.is-complete{
  opacity:.68;
}

.mf-completion-habitat-image{
  display:block;
  grid-column:1;
  grid-row:1;
  width:58px;
  height:46px;
  overflow:hidden;
  border-radius:7px;
  background:#eef2f4;
}

.mf-completion-habitat-image img{
  width:100%;
  height:100%;
  object-fit:cover;
}

.mf-completion-habitat-copy{
  display:block;
  grid-column:1;
  grid-row:1;
  min-width:0;
}

.mf-completion-habitat.has-image .mf-completion-habitat-copy{
  grid-column:2;
}

.mf-completion-habitat-stats{
  grid-column:2;
  grid-row:1;
}

.mf-completion-habitat.has-image .mf-completion-habitat-stats{
  grid-column:3;
}

.mf-completion-habitat .mf-completion-chapter-check{
  grid-column:3;
  grid-row:1;
}

.mf-completion-habitat.has-image .mf-completion-chapter-check{
  grid-column:4;
}

.mf-completion-habitat-copy > span{
  display:block;
  color:var(--mf-completion-blue);
  font-size:10px;
  font-weight:800;
  text-transform:uppercase;
}

.mf-completion-habitat-copy > strong{
  display:block;
  margin-top:2px;
  font-size:14px;
  line-height:1.3;
}

.mf-completion-habitat-copy a{
  color:var(--mf-completion-text) !important;
  text-decoration:none;
}

.mf-completion-habitat-copy a:hover{
  color:var(--mf-completion-blue) !important;
}

.mf-completion-habitat-open{
  display:flex;
  grid-column:4;
  grid-row:1;
  width:34px;
  height:34px;
  align-items:center;
  justify-content:center;
  border-radius:50%;
  background:var(--mf-completion-blue-soft);
  color:var(--mf-completion-blue-dark) !important;
  font-size:18px;
  font-weight:800;
}

.mf-completion-habitat.has-image .mf-completion-habitat-open{
  grid-column:5;
}

.mf-completion-habitat-open:hover{
  background:var(--mf-completion-blue);
  color:#fff !important;
}

.mf-completion-empty{
  margin:16px 0 0 !important;
  padding:16px;
  border-radius:10px;
  background:#f6f8fa;
  color:var(--mf-completion-muted);
  text-align:center;
}

.mf-completion-items{
  display:grid;
  gap:10px;
}

.mf-completion-item{
  display:grid;
  grid-template-columns:auto minmax(0, 1fr);
  gap:14px;
  min-width:0;
  padding:14px;
  border:1px solid #dfe8ee;
  border-radius:12px;
  background:#fff;
}

.mf-completion-item:has(input:checked){
  border-color:#b8ddc3;
  background:#fbfefc;
}

.mf-completion-item-image{
  width:150px;
  aspect-ratio:16 / 10;
  overflow:hidden;
  border-radius:8px;
  background:#eef2f4;
}

.mf-completion-item-image img{
  width:100%;
  height:100%;
  object-fit:cover;
}

.mf-completion-item-copy{
  min-width:0;
}

.mf-completion-item-category{
  display:inline-block;
  margin-bottom:6px;
  color:var(--mf-completion-blue);
  font-size:10px;
  font-weight:800;
  text-transform:uppercase;
}

.mf-completion-item-title{
  display:flex;
  align-items:flex-start;
}

.mf-completion-item-title label{
  margin:0;
  color:var(--mf-completion-text);
  font-size:15px;
  font-weight:800;
  line-height:1.35;
  cursor:pointer;
}

.mf-completion-item-description p{
  margin:7px 0 0 !important;
  color:var(--mf-completion-muted);
  font-size:13px !important;
  line-height:1.55 !important;
}

.mf-walkthrough{
  margin:24px 0;
}

.mf-walkthrough > h2{
  margin:0 0 14px;
}

.mf-walkthrough-steps{
  display:grid;
  gap:12px;
}

.mf-walkthrough-step{
  display:grid;
  grid-template-columns:42px minmax(0, 1fr);
  gap:14px;
  padding:16px;
  border:1px solid #dce8f0;
  border-radius:12px;
  background:#fff;
}

.mf-walkthrough-step-number{
  display:flex;
  width:42px;
  height:42px;
  align-items:center;
  justify-content:center;
  border-radius:50%;
  background:#0668a1;
  color:#fff;
  font-size:17px;
  font-weight:850;
}

.mf-walkthrough-step-body{
  min-width:0;
}

.mf-walkthrough-step-body h3{
  margin:5px 0 10px;
  color:#111827;
  font-size:18px;
  line-height:1.3;
}

.mf-walkthrough-step-image{
  display:block;
  width:min(100%, 760px);
  margin:0 0 12px;
  overflow:hidden;
  border-radius:10px;
  background:#eef2f4;
}

.mf-walkthrough-step-image img{
  display:block;
  width:100%;
  height:auto;
  margin:0;
}

.mf-walkthrough-step-copy p{
  margin:0 0 10px !important;
}

.mf-walkthrough-step-copy p:last-child{
  margin-bottom:0 !important;
}

@media (max-width:900px){
  .mf-completion-hero{
    grid-template-columns:1fr;
    align-items:start;
  }

  .mf-completion-facts{
    justify-content:flex-start;
  }

  .mf-completion-chapter-grid{
    grid-template-columns:1fr;
  }
}

@media (max-width:700px){
  .mf-completion-hero,
  .mf-completion-overview,
  .mf-completion-targets,
  .mf-completion-chapters,
  .mf-completion-checklist{
    padding:16px;
    border-radius:12px;
  }

  .mf-completion-hero h2,
  .mf-completion-checklist h2{
    font-size:24px;
  }

  .mf-completion-hero p{
    font-size:14px;
  }

  .mf-completion-facts{
    display:grid;
    grid-template-columns:repeat(3, minmax(0, 1fr));
    width:100%;
  }

  .mf-completion-facts > div{
    min-width:0;
    min-height:70px;
    padding:9px 6px;
  }

  .mf-completion-facts strong{
    font-size:19px;
  }

  .mf-completion-overview h3,
  .mf-completion-section-title h3{
    font-size:19px;
  }

  .mf-completion-entry-progress{
    max-width:28ch;
  }

  .mf-completion-category-grid{
    grid-template-columns:repeat(2, minmax(0, 1fr));
  }

  .mf-completion-toolbar{
    align-items:stretch;
    flex-direction:column;
  }

  .mf-completion-search{
    flex-basis:auto;
    min-width:0;
  }

  .mf-completion-filters{
    display:grid;
    grid-template-columns:repeat(3, minmax(0, 1fr));
    width:100%;
  }

  .mf-completion-tool-button{
    width:100%;
  }

  .mf-completion-chapter.has-image{
    grid-template-columns:92px minmax(0, 1fr);
  }

  .mf-completion-chapter-image img{
    min-height:210px;
  }

  .mf-completion-chapter-actions{
    align-items:flex-start;
    flex-direction:column;
  }

  .mf-completion-open{
    width:100%;
  }

  .mf-completion-group-summary{
    grid-template-columns:36px minmax(0, 1fr) 15px;
    gap:10px;
    min-height:78px;
    padding:12px;
  }

  .mf-completion-group-index{
    width:36px;
    height:36px;
    font-size:13px;
  }

  .mf-completion-group-title > strong{
    font-size:15px;
  }

  .mf-completion-group-progress{
    grid-column:2;
    align-items:flex-start;
  }

  .mf-completion-group-chevron{
    grid-column:3;
    grid-row:1 / span 2;
  }

  .mf-completion-group-panel{
    padding:0 12px 12px;
  }

  .mf-completion-group-overview.has-image{
    grid-template-columns:76px minmax(0, 1fr);
    gap:10px;
  }

  .mf-completion-group-overview-image{
    width:76px;
  }

  .mf-completion-chapter-stats{
    grid-template-columns:repeat(2, minmax(0, 1fr));
    max-width:none;
  }

  .mf-completion-chapter-stats .mf-completion-stat:last-child:nth-child(odd){
    grid-column:1 / -1;
  }

  .mf-completion-stat{
    min-height:54px;
    align-items:flex-start;
    flex-direction:column;
    justify-content:center;
    gap:4px;
  }

  .mf-completion-stat small{
    width:100%;
    overflow-wrap:normal;
    text-align:left;
  }

  .mf-completion-habitat-stats .mf-completion-stat{
    padding-right:6px;
    padding-left:6px;
  }

  .mf-completion-habitat-stats .mf-completion-stat small{
    font-size:9px;
  }

  .mf-completion-habitat{
    grid-template-columns:minmax(0, 1fr) 34px;
    grid-template-rows:auto auto auto;
    gap:9px;
  }

  .mf-completion-habitat .mf-completion-habitat-copy{
    grid-column:1;
    grid-row:1;
  }

  .mf-completion-habitat.has-image{
    grid-template-columns:48px minmax(0, 1fr) 34px;
  }

  .mf-completion-habitat.has-image .mf-completion-habitat-copy{
    grid-column:2;
    grid-row:1;
  }

  .mf-completion-habitat-image{
    width:48px;
    height:42px;
  }

  .mf-completion-habitat-stats,
  .mf-completion-habitat.has-image .mf-completion-habitat-stats{
    grid-column:1 / -1;
    grid-row:2;
  }

  .mf-completion-habitat .mf-completion-chapter-check,
  .mf-completion-habitat.has-image .mf-completion-chapter-check{
    grid-column:1 / -1;
    grid-row:3;
  }

  .mf-completion-habitat-open{
    grid-column:2;
    grid-row:1;
  }

  .mf-completion-habitat.has-image .mf-completion-habitat-open{
    grid-column:3;
  }

  .mf-completion-item{
    grid-template-columns:1fr;
  }

  .mf-completion-item-image{
    width:100%;
    max-width:none;
  }

  .mf-walkthrough-step{
    grid-template-columns:34px minmax(0, 1fr);
    gap:10px;
    padding:13px;
  }

  .mf-walkthrough-step-number{
    width:34px;
    height:34px;
    font-size:14px;
  }

  .mf-walkthrough-step-body h3{
    margin-top:3px;
    font-size:16px;
  }
}

@media (max-width:420px){
  .mf-completion-category-grid{
    grid-template-columns:1fr;
  }

  .mf-completion-overview-actions{
    align-items:stretch;
    flex-direction:column;
  }

  .mf-completion-primary{
    width:100%;
  }

  .mf-completion-chapter.has-image{
    grid-template-columns:1fr;
  }

  .mf-completion-chapter-image{
    max-height:150px;
  }

  .mf-completion-chapter-image img{
    min-height:150px;
  }
}

/* =====================================================
   CLEANUP OVERRIDES
   Moderne Child-Regeln gegen alte ThemeFuse-Reste
===================================================== */

.mf-is-hidden{
  display:none;
}

.mf-context-back{
  margin:0;
  padding:14px 0 0;
  background:transparent;
}

.mf-context-back .mf-container{
  display:flex;
  justify-content:flex-start;
  max-width:1200px;
  margin:0 auto;
  padding:0 16px;
}

.mf-lm-hero-offset{
  margin-top:10px;
  margin-bottom:26px;
}

.mf-single-guide .mf-article,
.mf-single-review .mf-article,
.mf-single-music .mf-article,
.mf-single-game .mf-article,
.mf-page .mf-article,
.mf-search-page .mf-article{
  border:1px solid #e5e7eb;
}

.mf-single-guide .main-top + .mf-context-back,
.mf-single-review .main-top + .mf-context-back,
.mf-single-music .main-top + .mf-context-back{
  margin-bottom:4px;
}

@media (max-width: 768px){
  .mf-context-back{
    padding-top:10px;
  }

  .mf-context-back a{
    font-size:13px;
  }
}

/* =====================================================
   USER CLEANUP: Game, News CTA, Footer Gap, Home Cards
===================================================== */

body{
  padding-bottom:0;
}

.site-main{
  padding-bottom:56px;
}

.mf-single-game{
  margin-top:24px;
}

.main-top .games_header .fullwidth-image{
  height:clamp(220px, 34vw, 420px) !important;
  min-height:220px;
  display:flex;
  align-items:center;
  background-size:cover;
  background-position:center;
  overflow:hidden;
}

.main-top .games_header .fullwidth-content{
  position:relative;
  left:auto;
  right:auto;
  top:auto;
  bottom:auto;
  transform:none;
  width:min(1120px, calc(100% - 32px));
  margin:0 auto;
  padding:24px 0;
  text-align:center;
  z-index:3;
}

.main-top .games_header .fullwidth-content h2{
  max-width:900px;
  margin:0 auto;
  font-size:clamp(26px, 4vw, 44px);
  line-height:1.1;
  letter-spacing:0;
}

.main-top .games_header .subtitle{
  display:none !important;
}
.main-top .games_header .rating{
  display:inline-flex;
  align-items:center;
  min-height:30px;
  margin:12px auto 0;
  border-radius:999px;
  background:rgba(255,255,255,.92);
  color:#111827;
  font-size:13px;
  font-weight:800;
  line-height:1;
}

.mf-layout-sidebar .game-thumb,
.mf-layout-sidebar .game-thumb img{
  width:100%;
  height:auto;
  max-height:none;
  object-fit:contain;
}

.mf-layout-sidebar .game-thumb{
  padding:8px;
  background:#f8fafc;
  border:1px solid #edf0f3;
}

.mf-game-media-grid a{
  cursor:zoom-in;
}

.mf-lightbox{
  position:fixed;
  inset:0;
  z-index:100000;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:24px;
}

.mf-lightbox-figure{
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:10px;
  margin:0;
}

.mf-lightbox img{
  display:block;
  max-width:min(1100px, 94vw);
  max-height:88vh;
  width:auto;
  height:auto;
  box-shadow:0 24px 80px rgba(0,0,0,.45);
}

.mf-lightbox-caption{
  max-width:min(900px, 88vw);
  color:#fff;
  font-size:14px;
  line-height:1.45;
  text-align:center;
}

.mf-lightbox-close{
  position:absolute;
  top:18px;
  right:18px;
  width:42px;
  height:42px;
  border:0;
  border-radius:999px;
  background:#fff;
  color:#111827;
  font-size:28px;
  line-height:1;
  cursor:pointer;
}

.mf-lightbox-counter{
  position:absolute;
  left:18px;
  top:18px;
  min-height:34px;
  padding:8px 12px;
  border-radius:999px;
  background:rgba(255,255,255,.92);
  color:#111827;
  font-size:13px;
  font-weight:850;
}

.mf-lightbox-nav{
  position:absolute;
  top:50%;
  display:flex;
  align-items:center;
  justify-content:center;
  width:46px;
  height:58px;
  border:0;
  border-radius:999px;
  background:rgba(255,255,255,.92);
  color:#111827;
  font-size:38px;
  line-height:1;
  cursor:pointer;
  transform:translateY(-50%);
}

.mf-lightbox-prev{
  left:18px;
}

.mf-lightbox-next{
  right:18px;
}

.mf-lightbox-nav:hover,
.mf-lightbox-close:hover{
  background:#e7f3fa;
  color:#045281;
}

body.mf-lightbox-open{
  overflow:hidden;
}

.mf-more-game{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  padding:16px;
  border:1px solid #e5e7eb;
}

.mf-more-game-text{
  display:flex;
  flex-direction:column;
  gap:2px;
  min-width:0;
}

.mf-more-game-text span{
  font-size:12px;
  font-weight:800;
  text-transform:uppercase;
}

.mf-more-game-text strong{
  color:#111827;
  font-size:16px;
  line-height:1.3;
}

.mf-more-game a{
  flex-shrink:0;
  padding:8px 12px;
  color:#fff;
  font-size:13px;
  font-weight:800;
  text-decoration:none;
}

.mf-more-game-links{
  display:flex;
  flex-wrap:wrap;
  justify-content:flex-end;
  gap:8px;
}

.mf-more-game a:hover{
  color:#fff;
}

.mf-home-page{
  --mf-home-thumb-width:72px;
  --mf-home-thumb-height:54px;
}

.mf-home-page :where(.mf-home-section, .mf-home-card, .mf-home-card > a){
  box-sizing:border-box;
  min-width:0;
}

.mf-home-page .mf-home-section{
  margin:0 0 22px;
  padding:18px;
  background:#fff;
  border:1px solid #e5e7eb;
  box-shadow:0 2px 8px rgba(15,23,42,.04);
}


.mf-home-page .mf-home-list{
  display:flex;
  flex-direction:column;
  margin:0;
  padding:0;
  list-style:none;
}

.mf-home-page .mf-home-card{
  margin:0;
  border:0;
}

.mf-home-page .mf-home-card a{
  display:grid;
  grid-template-columns:var(--mf-home-thumb-width) minmax(0, 1fr);
  gap:12px;
  align-items:center;
  color:inherit;
  text-decoration:none;
}


.mf-home-page .mf-home-thumb{
  flex:0 0 var(--mf-home-thumb-width);
  overflow:hidden;
  background:#f3f4f6;
}

.mf-home-page .mf-home-thumb picture{
  display:block;
  width:100%;
  height:100%;
}

.mf-home-page .mf-home-thumb img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  border-radius:0;
}

.mf-home-page .mf-news-title,
.mf-home-page .mf-guide-title-small,
.mf-home-page .mf-latest-game-title{
  margin:0 0 3px;
  color:#0b1728;
  font-weight:800;
  line-height:1.32;
  text-decoration:none;
}

.mf-home-page .mf-news-date,
.mf-home-page .mf-guide-excerpt-small,
.mf-home-page .mf-news-excerpt,
.mf-home-page .mf-game-release{
  color:#475467;
  font-size:13px;
  line-height:1.45;
}

.mf-home-page .mf-game-release{
  margin-top:3px;
}

@media (max-width: 700px){
  .site-main{
    padding-bottom:42px;
  }

  .main-top .games_header .fullwidth-image{
    height:clamp(190px, 54vw, 300px) !important;
  }

  .main-top .games_header .fullwidth-content{
    width:calc(100% - 24px);
    padding-bottom:18px;
  }

  .mf-more-game{
    align-items:stretch;
    flex-direction:column;
  }

  .mf-more-game a{
    text-align:center;
  }

  .mf-more-game-links{
    justify-content:stretch;
  }

  .mf-more-game-links a{
    width:100%;
  }

  .mf-home-page .mf-home-section{
    padding:14px;
  }

  .mf-home-page{
    --mf-home-thumb-width:64px;
    --mf-home-thumb-height:50px;
  }
}

/* =====================================================
   TOP NAVIGATION
   Gemeinsames System fuer Desktop und Mobile
===================================================== */

.mobile-top-bar,
.mf-desktop-topbar{
  border-bottom:1px solid var(--mf-nav-border);
  backdrop-filter:blur(14px);
}


@media (min-width:769px){





  .mf-desktop-logo{
    display:flex;
    align-items:center;
    min-width:0;
  }


  .mf-desktop-navigation{
    min-width:0;
  }



  .mf-desktop-navigation .mega-menu > li > a{
    transition:background .16s ease, color .16s ease;
  }


  .mf-desktop-navigation .sub-menu{
    transition:opacity .16s ease, transform .16s ease, visibility .16s ease;
  }

  .mf-desktop-navigation .mega-menu > li:hover > .sub-menu,
  .mf-desktop-navigation .mega-menu > li:focus-within > .sub-menu,
  .mf-desktop-navigation .sub-menu li:hover > .sub-menu,
  .mf-desktop-navigation .sub-menu li:focus-within > .sub-menu{
    opacity:1;
    visibility:visible;
    transform:translateY(0);
    pointer-events:auto;
  }






  .mf-desktop-search:focus-within{
    background:#fff;
    border-color:#93c5fd;
    box-shadow:0 0 0 3px rgba(37,99,235,.12);
  }

  .mf-desktop-search input{
    min-width:0;
    width:100%;
    height:100%;
    padding:0 8px 0 0;
    background:transparent;
    border:0;
    color:#111827;
    font-size:13px;
    outline:0;
  }

  .mf-desktop-search button{
    min-width:64px;
    height:30px;
    padding:0 10px;
    border:0;
    border-radius:999px;
    background:var(--mf-nav-primary);
    color:#fff;
    font-size:12px;
    font-weight:800;
    cursor:pointer;
  }

  .mf-desktop-search button:hover{
    background:var(--mf-nav-primary-dark);
  }

  .site-header .header-main{
    min-height:150px;
    padding:0;
    background-position:right center;
  }

  .site-header .header-main-container{
    min-height:150px;
  }

  .site-header .header-logo,
  .site-header .header-socials{
    display:none;
  }
}

@media (min-width:769px) and (max-width:1240px){
  .mf-desktop-topbar-inner{
    grid-template-columns:145px minmax(0, 1fr) 150px;
    gap:10px;
    padding:0 16px;
  }

  .mf-desktop-logo img{
    height:34px;
    max-width:138px;
  }

  .mf-desktop-navigation .mega-menu{
    gap:2px;
  }

  .mf-desktop-navigation .mega-menu > li > a{
    padding:0 8px;
    font-size:13px;
  }

  .mf-desktop-search{
    width:150px;
  }

  .mf-desktop-search button{
    min-width:46px;
    padding:0 8px;
  }
}

@media (max-width:768px){
  body{
    scroll-padding-top:var(--mf-nav-mobile-height);
  }


  .admin-bar{
    padding-top:calc(46px + var(--mf-nav-mobile-height));
  }



  .mobile-top-inner{
    box-sizing:border-box;
    gap:10px;
  }

  .mobile-logo{
    display:flex;
    align-items:center;
    min-width:0;
  }

  .mobile-logo img{
    display:block;
    width:auto;
    height:36px;
    max-width:160px;
    object-fit:contain;
  }

  .menu-toggle,
  .guides-toggle{
    cursor:pointer;
    touch-action:manipulation;
  }


  .mobile-top-menu,
  .mobile-guides-menu{
    margin:0 10px 10px;
    padding:12px;
    background:#fff;
    border:1px solid var(--mf-nav-border);
    border-radius:0 0 16px 16px;
    box-shadow:0 18px 38px rgba(6,104,161,.16);
  }

  .mobile-top-menu{
    max-height:calc(100vh - var(--mf-nav-mobile-height) - env(safe-area-inset-bottom, 0px) - 18px);
    overflow-y:auto;
    -webkit-overflow-scrolling:touch;
  }


  .mobile-top-search{
    display:flex;
    align-items:center;
    height:42px;
    margin:0 0 12px;
    padding:0 4px 0 12px;
    background:var(--mf-nav-bg-soft);
    border:1px solid var(--mf-nav-border);
    border-radius:999px;
    overflow:hidden;
  }

  .mobile-top-search:focus-within{
    background:#fff;
    border-color:#93c5fd;
    box-shadow:0 0 0 3px rgba(37,99,235,.12);
  }

  .mobile-top-search input[type="search"]{
    flex:1;
    min-width:0;
    padding:0 8px 0 0;
    background:transparent;
    border:0;
    color:#111827;
    font-size:15px;
    outline:0;
  }

  .mobile-top-search input[type="search"]::placeholder{
    color:#94a3b8;
  }

  .mobile-top-search button[type="submit"]{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:34px;
    height:34px;
    padding:0;
    border:0;
    border-radius:999px;
    background:var(--mf-nav-primary);
    color:#fff;
    font-size:15px;
    cursor:pointer;
  }

  .top-menu-list{
    display:flex;
    flex-direction:column;
    gap:6px;
    list-style:none;
    margin:0;
    padding:0;
  }

  .top-menu-list li a{
    display:flex;
    align-items:center;
    min-height:42px;
    padding:0 12px;
    border:0;
    border-radius:11px;
    color:#111827;
    font-size:15px;
    font-weight:800;
    line-height:1.2;
    text-decoration:none;
  }

  .top-menu-list li a:hover{
    background:#eaf4ff;
    color:var(--mf-nav-primary-dark);
  }

  .mobile-top-menu .sub-menu{
    display:none;
    grid-template-columns:1fr;
    gap:6px;
    list-style:none;
    margin:6px 0 4px;
    padding:9px;
    border:1px solid #d6e7f1;
    border-radius:14px;
    background:#f8fbfd;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.8);
    max-height:min(46vh, 430px);
    overflow-y:auto;
    -webkit-overflow-scrolling:touch;
  }

  .mobile-menu-item-has-children.is-open > .sub-menu{
    display:grid !important;
  }

  .mobile-menu-row{
    display:grid;
    grid-template-columns:minmax(0, 1fr) 42px;
    gap:6px;
    align-items:center;
  }

  .mobile-menu-row > a{
    min-width:0;
  }

  .mobile-menu-row > a:only-child{
    grid-column:1 / -1;
  }

  .mobile-submenu-toggle{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:42px;
    height:42px;
    padding:0;
    border:1px solid #c7e0ee;
    border-radius:11px;
    background:#eef7fb;
    color:#045281;
    font-size:16px;
    font-weight:900;
    line-height:1;
    cursor:pointer;
    transition:background .15s ease, border-color .15s ease, color .15s ease, transform .15s ease;
  }

  .mobile-submenu-toggle:hover,
  .mobile-submenu-toggle:focus{
    border-color:#0668a1;
    background:#e7f3fa;
    color:#045281;
    outline:none;
  }

  .mobile-menu-item-has-children.is-open .mobile-submenu-toggle span{
    transform:rotate(180deg);
  }

  .mobile-platform-group-title{
    margin:8px 2px 2px;
    padding:0 8px;
    color:#045281;
    font-size:11px;
    font-weight:900;
    letter-spacing:.06em;
    line-height:1.2;
    text-transform:uppercase;
  }

  .mobile-platform-group-title:first-child{
    margin-top:0;
  }

  .mobile-top-menu .sub-menu li a{
    min-height:36px;
    padding:8px 10px;
    border:1px solid transparent;
    border-radius:10px;
    background:#fff;
    color:#17324a;
    font-size:13px;
    font-weight:800;
  }

  .mobile-top-menu .sub-menu li a:hover,
  .mobile-top-menu .sub-menu li a:focus{
    border-color:#b9d8e9;
    background:#e7f3fa;
    color:#045281;
  }

  .mobile-guides-menu{
    max-height:calc(100vh - var(--mf-nav-mobile-height) - 22px);
    overflow:auto;
  }

  #page{
    padding-top:0;
  }

  .breadcrumbs,
  .breadcrumb,
  nav.breadcrumb,
  .mf-breadcrumb{
    margin-top:6px;
  }
}

/* =====================================================
   NAVIGATION RESCUE
   Stabilisiert Layout nach CSS-Bereinigung
===================================================== */

.mobile-top-bar,
.mf-desktop-topbar{
  display:none;
}

@media (min-width:769px){
  body{
    padding-top:68px !important;
  }

  .mobile-top-bar{
    display:none !important;
  }

  .mf-desktop-topbar{
    position:fixed !important;
    top:0;
    left:0;
    right:0;
    display:block !important;
    min-height:68px;
    background:#f1f8fc;
    background-image:linear-gradient(180deg, #fbfdff 0%, #f1f8fc 100%);
    border-bottom:1px solid #b9d8e9;
    box-shadow:0 10px 28px rgba(4,82,129,.14);
  }

  .admin-bar .mf-desktop-topbar{
    top:32px;
  }

  .mf-desktop-topbar-inner{
    display:grid !important;
    grid-template-columns:170px minmax(0, 1fr) 190px;
    align-items:center;
    gap:16px;
    max-width:1640px;
    min-height:68px;
    margin:0 auto;
    padding:0 28px;
  }

  .mf-desktop-logo img{
    display:block;
    width:auto;
    height:40px;
    max-width:160px;
    object-fit:contain;
  }

  .mf-desktop-navigation .mega-menu{
    justify-content:flex-start;
    list-style:none;
    margin:0;
    padding:0;
  }

  .mf-desktop-navigation .mega-menu > li{
    margin:0;
    padding:0;
  }





  .mf-desktop-search{
    display:flex;
    align-items:center;
    width:190px;
    height:40px;
    padding:0 4px 0 14px;
    background:#fbfdff;
    border:1px solid #b9d8e9;
    border-radius:999px;
  }
}

@media (max-width:768px){
  body{
    padding-top:64px !important;
  }

  .mf-desktop-topbar,
  #masthead,
  .site-header{
    display:none !important;
  }

  .mobile-top-bar{
    position:fixed !important;
    top:0;
    left:0;
    right:0;
    z-index:9999;
    display:block !important;
    min-height:64px;
    background:#f1f8fc;
    background-image:linear-gradient(180deg, #fbfdff 0%, #f1f8fc 100%);
    border-bottom:1px solid #b9d8e9;
    box-shadow:0 10px 28px rgba(4,82,129,.14);
  }

  .admin-bar .mobile-top-bar{
    top:46px;
  }

  .mobile-top-inner{
    display:flex !important;
    align-items:center;
    justify-content:space-between;
    min-height:64px;
    padding:8px 12px;
  }

  .menu-toggle,
  .guides-toggle{
    display:inline-flex !important;
    align-items:center;
    justify-content:center;
    width:40px;
    height:40px;
    margin-left:0;
    padding:0;
    border:1px solid #0668a1;
    border-radius:12px;
    font-size:24px;
    font-weight:900;
    line-height:1;
  }

  .mobile-top-menu.hidden,
  .mobile-guides-menu.hidden{
    display:none !important;
  }
}

/* =====================================================
   NAV COLOR TUNE
   Nur Farben: Desktop und Mobile gemeinsam
===================================================== */

.mf-desktop-topbar,
.mobile-top-bar{
  background:#f7fbfd;
  background-image:linear-gradient(180deg, #ffffff 0%, #eef7fb 100%);
  border-bottom-color:#c7e0ee;
  box-shadow:0 10px 26px rgba(4,82,129,.12);
}

.mf-desktop-navigation .mega-menu > li > a{
  color:#17324a;
}

.mf-desktop-navigation .mega-menu > li:hover > a,
.mf-desktop-navigation .mega-menu > li.current-menu-item > a,
.mf-desktop-navigation .mega-menu > li.current-menu-ancestor > a{
  background:#0668a1;
  color:#fff;
}

.mf-desktop-navigation .sub-menu,
.mobile-top-menu,
.mobile-guides-menu{
  background:#fff;
  border-color:#c7e0ee;
  box-shadow:0 18px 38px rgba(4,82,129,.14);
}

.mf-desktop-navigation .sub-menu a:hover,
.top-menu-list li a:hover{
  background:#e7f3fa;
  color:#045281;
}

.mf-desktop-search,
.mobile-top-search{
  background:#fff;
  border-color:#b7d8e9;
}

.mf-desktop-search:focus-within,
.mobile-top-search:focus-within{
  border-color:#0668a1;
  box-shadow:0 0 0 3px rgba(6,104,161,.14);
}

.mf-desktop-search button,
.mobile-top-search button[type="submit"],
.menu-toggle,
.guides-toggle{
  background:#0668a1;
  border-color:#0668a1;
  color:#fff;
}

.mf-desktop-search button:hover,
.mobile-top-search button[type="submit"]:hover,
.menu-toggle:hover,
.guides-toggle:hover{
  background:#045281;
  border-color:#045281;
  color:#fff;
}

/* =====================================================
   MODERN GAME ARCHIVE
===================================================== */

.mf-games-archive-page{
  margin-top:28px;
}

.mf-games-archive-header{
  padding:22px;
  border-color:#dbe8f1;
  border-radius:14px;
  box-shadow:0 10px 28px rgba(15,23,42,.07);
}

.mf-games-archive-header-main{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:20px;
}

.mf-archive-kicker{
  margin:0 0 8px;
  color:#0668a1;
  font-size:12px;
  font-weight:900;
  letter-spacing:.04em;
  text-transform:uppercase;
}

.mf-archive-count{
  flex:0 0 auto;
  min-width:110px;
  padding:12px 14px;
  border:1px solid #dbe8f1;
  border-radius:12px;
  background:#f7fbfd;
  text-align:center;
}

.mf-archive-count strong{
  display:block;
  color:#111827;
  font-size:26px;
  line-height:1;
}

.mf-archive-count span{
  display:block;
  margin-top:4px;
  color:#667085;
  font-size:12px;
  font-weight:800;
  text-transform:uppercase;
}

.mf-game-archive-grid{
  grid-template-columns:repeat(auto-fill, minmax(250px, 1fr));
  gap:18px;
}

.mf-game-archive-card{
  border-color:#e1e8ef;
  border-radius:14px;
  box-shadow:0 3px 10px rgba(15,23,42,.05);
}

.mf-game-archive-card:hover{
  border-color:#b9d8e9;
  box-shadow:0 14px 30px rgba(4,82,129,.12);
}

.mf-game-archive-card .mf-game-list-main{
  height:100%;
}

.mf-game-archive-thumb{
  aspect-ratio:16 / 9;
}

.mf-game-archive-content{
  padding:15px;
}

.mf-game-archive-content h2{
  margin-bottom:7px;
  font-size:17px;
}

.mf-game-archive-meta{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  margin:0 0 9px;
}

.mf-game-archive-meta span{
  display:inline-flex;
  align-items:center;
  min-height:24px;
  padding:3px 8px;
  border-radius:999px;
  background:#eef7fb;
  color:#045281;
  font-size:12px;
  font-weight:800;
  line-height:1.2;
}

@media (max-width:700px){
  .mf-games-archive-page{
    margin-top:18px;
  }

  .mf-games-archive-header-main{
    align-items:stretch;
    flex-direction:column;
  }

  .mf-archive-count{
    width:100%;
    text-align:left;
  }

  .mf-game-archive-grid{
    grid-template-columns:1fr;
    gap:14px;
  }
}

/* Mobile menu buttons: dark icon on light blue button */
@media (max-width:768px){
  .menu-toggle,
  .guides-toggle{
    background:#e7f3fa;
    border-color:#9fcce2;
    color:#045281;
    box-shadow:0 3px 10px rgba(4,82,129,.16);
  }

  .menu-toggle:hover,
  .guides-toggle:hover{
    background:#d3eafa;
    border-color:#0668a1;
    color:#045281;
  }
}

/* Game archive cards: compact covers for archive/filter pages */

.mf-games-archive-page .mf-game-archive-card .mf-game-list-main{
  display:grid;
  align-items:stretch;
}

.mf-games-archive-page .mf-game-archive-thumb{
  aspect-ratio:auto;
  border-radius:0;
}

.mf-games-archive-page .mf-game-archive-thumb img{
  width:100%;
  height:100%;
  object-fit:cover;
}

.mf-games-archive-page .mf-game-archive-content{
  display:flex;
  flex-direction:column;
  justify-content:center;
  min-width:0;
}


.mf-games-archive-page .mf-game-archive-content p{
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
}

@media (max-width:700px){



  .mf-games-archive-page .mf-game-archive-content{
    padding:10px 12px;
  }
}

/* Legacy ThemeFuse game archive fallback */
.postlist-grid .posts-grid{
  display:grid;
  grid-template-columns:repeat(auto-fill, minmax(280px, 1fr));
  gap:14px;
}

.postlist-grid .posts-grid li,
.postlist-grid .posts-grid .post{
  min-height:0;
}

.postlist-grid .posts-grid .post-thumbnail,
.postlist-grid .posts-grid li .post-thumbnail{
  display:block;
  max-height:150px;
  overflow:hidden;
  border-radius:12px;
}

.postlist-grid .posts-grid .post-thumbnail img,
.postlist-grid .posts-grid li .post-thumbnail img{
  width:100%;
  height:150px;
  object-fit:cover;
}

/* Smaller game cards and guide-list surface */

.mf-games-archive-page .mf-game-archive-card .mf-game-list-main{
  grid-template-columns:88px minmax(0, 1fr);
  min-height:88px;
}

.mf-games-archive-page .mf-game-archive-thumb{
  width:88px;
  height:88px;
}

.mf-games-archive-page .mf-game-archive-content{
  padding:10px 12px;
}

.mf-games-archive-page .mf-game-archive-content h2{
  margin-bottom:4px;
  font-size:15px;
}

.mf-games-archive-page .mf-game-archive-meta{
  gap:4px;
  margin-bottom:5px;
}

.mf-games-archive-page .mf-game-archive-meta span{
  min-height:20px;
  padding:2px 7px;
  font-size:11px;
}

.mf-games-archive-page .mf-game-archive-content p{
  font-size:12px;
  line-height:1.35;
}

.mf-guide-taxonomy-page .mf-guide-taxonomy-list{
  padding:14px;
  background:#fff;
  border:1px solid #e5e7eb;
  border-radius:14px;
  box-shadow:0 3px 10px rgba(15,23,42,.05);
}

.mf-guide-taxonomy-page .mf-guide-listing{
  border:1px solid #edf0f3;
  border-radius:12px;
  background:#fff;
  overflow:hidden;
}

.mf-guide-taxonomy-page .mf-guide-listing a{
  border-radius:12px;
}

@media (max-width:700px){
  .mf-games-archive-page .mf-game-archive-card .mf-game-list-main{
    grid-template-columns:76px minmax(0, 1fr);
    min-height:76px;
  }

  .mf-games-archive-page .mf-game-archive-thumb{
    width:76px;
    height:76px;
  }

  .mf-guide-taxonomy-page .mf-guide-taxonomy-list{
    padding:10px;
  }
}

/* =====================================================
   Guide sequence navigation
===================================================== */

.mf-guide-sequence-section{
  margin-top:20px;
}

.mf-guide-sequence-nav{
  margin:0;
}

.mf-guide-sequence-main{
  display:flex;
  justify-content:center;
  margin-bottom:14px;
}

.mf-guide-sequence-overview,
.mf-guide-sequence-progress{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:30px;
  padding:5px 12px;
  border-radius:999px;
  font-size:12px;
  font-weight:800;
  line-height:1.2;
}

.mf-guide-sequence-overview{
  background:#0668a1;
  color:#fff;
  text-decoration:none;
}

.mf-guide-sequence-overview:hover{
  background:#045281;
  color:#fff;
}

.mf-guide-sequence-links{
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:12px;
}

.mf-guide-sequence-link{
  display:flex;
  flex-direction:column;
  justify-content:center;
  min-height:74px;
  padding:12px;
  background:#fff;
  border:1px solid #e5e7eb;
  border-radius:10px;
  color:#111827;
  text-decoration:none;
  transition:background .16s ease, border-color .16s ease, transform .16s ease;
}

.mf-guide-sequence-link:hover{
  background:#eef7fb;
  border-color:#b9d8e9;
  color:#111827;
  transform:translateY(-1px);
}

.mf-guide-sequence-link span{
  margin-bottom:4px;
  color:#0668a1;
  font-size:12px;
  font-weight:800;
  text-transform:uppercase;
}

.mf-guide-sequence-link strong{
  display:block;
  font-size:14px;
  line-height:1.35;
}

.mf-guide-sequence-link.is-next{
  text-align:right;
}

.mf-guide-sequence-link:only-child{
  grid-column:1 / -1;
  text-align:center;
}

.mf-guide-sequence-progress{
  display:table;
  margin:12px auto 0;
  background:#f8fafc;
  color:#4b5563;
  border:1px solid #e5e7eb;
}

@media (max-width:700px){
  .mf-guide-sequence-section{
    padding:16px;
  }

  .mf-guide-sequence-main{
    margin-bottom:10px;
  }

  .mf-guide-sequence-links{
    grid-template-columns:repeat(2, minmax(0, 1fr));
    gap:8px;
  }

  .mf-guide-sequence-link{
    min-height:64px;
    padding:10px;
  }

  .mf-guide-sequence-link span{
    font-size:11px;
  }

  .mf-guide-sequence-link strong{
    font-size:12px;
    line-height:1.25;
  }

  .mf-guide-sequence-link.is-next{
    text-align:right;
  }
}

/* =====================================================
   Archive and search list surfaces
===================================================== */

.mf-list-surface,
.mf-search-results{
  margin-top:18px;
  padding:14px;
  background:#fff;
  border:1px solid #e5e7eb;
  border-radius:14px;
  box-shadow:0 3px 10px rgba(15,23,42,.05);
}

.mf-archive-page .mf-news-item,
.mf-search-page .mf-news-item{
  border:1px solid #edf0f3;
  border-radius:12px;
  background:#fff;
  overflow:hidden;
}

.mf-archive-page .mf-news-item a,
.mf-search-page .mf-news-item a{
  min-height:94px;
  padding:10px;
}

.mf-archive-page .mf-news-thumb,
.mf-search-page .mf-news-thumb{
  flex:0 0 112px;
  width:112px;
  height:76px;
  background:#f3f4f6;
}

.mf-archive-page .mf-news-thumb picture,
.mf-search-page .mf-news-thumb picture{
  display:block;
  width:100%;
  height:100%;
}

.mf-archive-page .mf-news-thumb img,
.mf-search-page .mf-news-thumb img{
  box-sizing:border-box;
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
}

.mf-archive-page .type-game .mf-news-thumb img,
.mf-search-page .type-game .mf-news-thumb img{
  object-fit:contain;
  padding:4px;
  background:#f8fafc;
}

.mf-archive-page .mf-news-content,
.mf-search-page .mf-news-content{
  min-width:0;
}

.mf-archive-page .mf-news-title,
.mf-archive-page .mf-news-excerpt,
.mf-search-page .mf-news-title,
.mf-search-page .mf-news-excerpt{
  overflow-wrap:anywhere;
}

@media (max-width:600px){
  .mf-list-surface,
  .mf-search-results{
    padding:10px;
  }

  .mf-archive-page .mf-news-item a,
  .mf-search-page .mf-news-item a{
    align-items:center;
    gap:10px;
    min-height:78px;
  }

  .mf-archive-page .mf-news-thumb,
  .mf-search-page .mf-news-thumb{
    flex-basis:76px;
    width:76px;
    height:58px;
  }

  .mf-archive-page .mf-news-date,
  .mf-search-page .mf-news-date{
    font-size:11px;
  }
}

/* =====================================================
   Guide taxonomy hub
===================================================== */

.mf-guide-hub-header{
  overflow:visible;
}

.mf-guide-hub-actions{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:18px;
}

.mf-guide-hub-actions a{
  display:inline-flex;
  align-items:center;
  min-height:32px;
  padding:6px 11px;
  border:1px solid #dbe8f1;
  border-radius:999px;
  background:#f8fbfd;
  color:#045281;
  font-size:12px;
  font-weight:800;
  line-height:1.2;
  text-decoration:none;
}

.mf-guide-hub-actions a:hover{
  background:#0668a1;
  border-color:#0668a1;
  color:#fff;
}

.mf-guide-hub-start{
  margin-top:20px;
}

.mf-guide-hub-start-label{
  display:table;
  margin:0 0 12px;
  padding:5px 12px;
  border-radius:999px;
  background:#0668a1;
  color:#fff;
  font-size:12px;
  font-weight:800;
  line-height:1.2;
}

.mf-guide-hub-feature{
  display:grid;
  grid-template-columns:180px minmax(0, 1fr);
  gap:16px;
  color:inherit;
  text-decoration:none;
}

.mf-guide-hub-feature-thumb{
  overflow:hidden;
  border-radius:12px;
  background:#f3f4f6;
  aspect-ratio:16 / 10;
}

.mf-guide-hub-feature-thumb img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
}

.mf-guide-hub-feature-content{
  display:flex;
  flex-direction:column;
  justify-content:center;
  min-width:0;
}

.mf-guide-hub-feature-content h2{
  margin:0 0 8px;
  color:#111827;
  font-size:20px;
  line-height:1.25;
}

.mf-guide-hub-feature-content p{
  margin:0 0 12px;
  color:#4b5563;
  font-size:14px;
  line-height:1.5;
}

.mf-guide-hub-feature-content span{
  display:inline-flex;
  align-self:flex-start;
  min-height:32px;
  padding:6px 12px;
  border-radius:999px;
  background:#eef7fb;
  color:#045281;
  font-size:12px;
  font-weight:800;
}

.mf-guide-hub-section{
  margin-top:24px;
}

.mf-guide-hub-section-header{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin-bottom:10px;
  padding:12px 14px;
  background:#fff;
  border:1px solid #e5e7eb;
  border-radius:14px;
  box-shadow:0 3px 10px rgba(15,23,42,.05);
}

.mf-guide-hub-section-header h2{
  margin:0;
  color:#111827;
  font-size:20px;
  line-height:1.25;
}

.mf-guide-hub-section-header span{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:34px;
  height:28px;
  padding:0 9px;
  border-radius:999px;
  background:#eef7fb;
  color:#045281;
  font-size:12px;
  font-weight:800;
}

.mf-guide-hub-section-description{
  margin:-2px 0 12px;
  padding:0 14px;
  color:#4b5563;
  font-size:14px;
  line-height:1.55;
}

@media (max-width:700px){
  .mf-guide-hub-actions{
    gap:6px;
  }

  .mf-guide-hub-actions a{
    min-height:30px;
    padding:5px 9px;
    font-size:11px;
  }

  .mf-guide-hub-feature{
    grid-template-columns:88px minmax(0, 1fr);
    gap:12px;
  }

  .mf-guide-hub-feature-thumb{
    aspect-ratio:1;
  }

  .mf-guide-hub-feature-content h2{
    font-size:15px;
  }

  .mf-guide-hub-feature-content p{
    display:none;
  }

  .mf-guide-hub-feature-content span{
    min-height:28px;
    padding:5px 9px;
    font-size:11px;
  }

  .mf-guide-hub-section-header h2{
    font-size:18px;
  }
}

/* =====================================================
   Guide table of contents
===================================================== */

.mf-guide-toc{
  margin:18px 0 22px;
  padding:0;
  background:#f8fbfd;
  border:1px solid #dbe8f1;
  border-radius:10px;
  box-shadow:0 3px 10px rgba(15,23,42,.05);
  overflow:hidden;
}

.mf-guide-toc[hidden]{
  display:none;
}

.mf-guide-toc-toggle{
  display:flex;
  align-items:center;
  width:100%;
  min-height:48px;
  padding:12px 16px;
  border:0;
  border-radius:0;
  background:transparent;
  color:#12324c;
  font:inherit;
  font-size:15px;
  font-weight:800;
  line-height:1.2;
  text-align:left;
  cursor:pointer;
}

.mf-guide-toc-toggle::after{
  content:"";
  width:9px;
  height:9px;
  margin-left:12px;
  border-right:2px solid currentColor;
  border-bottom:2px solid currentColor;
  transform:rotate(45deg) translateY(-2px);
  transition:transform .18s ease;
  flex:0 0 auto;
}

.mf-guide-toc.is-open .mf-guide-toc-toggle::after{
  transform:rotate(225deg) translate(-2px, -2px);
}

.mf-guide-toc-toggle:hover,
.mf-guide-toc.is-open .mf-guide-toc-toggle{
  background:#eef7fb;
  color:#045281;
}

.mf-guide-toc-toggle:focus-visible{
  outline:3px solid rgba(6,104,161,.24);
  outline-offset:-3px;
}

.mf-guide-toc-count{
  margin-left:auto;
  color:#667085;
  font-size:12px;
  font-weight:700;
}

.mf-guide-toc-list{
  display:none;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  column-gap:28px;
  margin:0;
  padding:4px 16px 14px;
  list-style:none;
  counter-reset:mf-guide-toc;
  border-top:1px solid #dbe8f1;
}

.mf-guide-toc.is-open .mf-guide-toc-list{
  display:grid;
}

.mf-guide-toc-list > .mf-guide-toc-item{
  min-width:0;
  counter-increment:mf-guide-toc;
  border-bottom:1px solid #e7eef3;
}

.mf-guide-toc-list > .mf-guide-toc-item > a{
  display:block;
  position:relative;
  padding:10px 8px 10px 28px;
  color:#243b53;
  font-size:13px;
  font-weight:700;
  line-height:1.35;
  text-decoration:none;
  overflow-wrap:anywhere;
}

.mf-guide-toc-list > .mf-guide-toc-item > a::before{
  content:counter(mf-guide-toc, decimal-leading-zero);
  position:absolute;
  top:10px;
  left:0;
  color:#0f6fa8;
  font-size:11px;
  font-weight:800;
}

.mf-guide-toc-list a:hover,
.mf-guide-toc-list a:focus-visible{
  background:#eef7fb;
  color:#045281;
}

.mf-guide-toc-list a:focus-visible{
  outline:2px solid rgba(6,104,161,.3);
  outline-offset:-2px;
}

.mf-guide-toc-sublist{
  display:block;
  margin:0 0 8px 28px;
  padding:0 0 0 12px;
  list-style:none;
  border-left:2px solid #dbe8f1;
}

.mf-guide-toc-sublist:empty{
  display:none;
}

.mf-guide-toc-level-3 a{
  display:block;
  padding:6px 8px;
  color:#4b5563;
  font-size:12px;
  font-weight:700;
  text-decoration:none;
}

.mf-guide-article .mf-article-content h2,
.mf-guide-article .mf-article-content h3,
.mf-toc-article .mf-article-content h2,
.mf-toc-article .mf-article-content h3{
  scroll-margin-top:90px;
}

@media (max-width:700px){
  .mf-guide-toc{
    margin:14px 0 18px;
  }

  .mf-guide-toc-toggle{
    padding:12px 14px;
  }

  .mf-guide-toc-list{
    grid-template-columns:1fr;
    padding:4px 14px 12px;
  }
}

/* =====================================================
   Guide reading sidebar
===================================================== */

.mf-guide-reading-layout{
  --mf-guide-sticky-top:88px;
  --mf-guide-heading-offset:104px;
  min-width:0;
  margin-bottom:20px;
}

.admin-bar .mf-guide-reading-layout{
  --mf-guide-sticky-top:120px;
  --mf-guide-heading-offset:136px;
}

.mf-guide-reading-layout.has-navigation{
  display:grid;
  grid-template-columns:minmax(0, 1fr);
  align-items:start;
  gap:16px;
}

.mf-guide-reading-layout > .mf-guide-article{
  min-width:0;
  margin:0;
  border-radius:8px;
}

.mf-guide-reading-layout .mf-article-title,
.mf-guide-reading-layout .mf-article-content :where(h2, h3){
  overflow-wrap:anywhere;
}

.mf-guide-reading-layout .mf-article-content h2,
.mf-guide-reading-layout .mf-article-content h3{
  scroll-margin-top:var(--mf-guide-heading-offset);
}

.mf-guide-sidebar,
.mf-guide-sidebar *{
  box-sizing:border-box;
}

.mf-guide-sidebar{
  min-width:0;
  letter-spacing:0;
}

.mf-guide-sidebar[hidden]{
  display:none;
}

.mf-guide-chapters,
.mf-guide-sidebar .mf-guide-toc{
  margin:0;
  padding:0;
  border:1px solid #dbe5eb;
  border-radius:6px;
  background:#fff;
  box-shadow:none;
  overflow:hidden;
}

.mf-guide-page-outline:not([hidden]) + .mf-guide-chapters{
  margin-top:14px;
}

.mf-guide-sidebar summary{
  display:flex;
  align-items:center;
  gap:10px;
  min-height:48px;
  padding:12px 14px;
  margin:0;
  color:#243b53;
  font-size:15px;
  font-weight:700;
  line-height:1.4;
  list-style:none;
  cursor:pointer;
}

.mf-guide-sidebar summary::-webkit-details-marker{ display:none; }
.mf-guide-sidebar summary::marker{ content:""; }

.mf-guide-sidebar summary::after{
  content:"";
  flex:0 0 7px;
  width:7px;
  height:7px;
  margin:0 2px 0 auto;
  border-right:2px solid currentColor;
  border-bottom:2px solid currentColor;
  transform:rotate(45deg) translateY(-2px);
}

.mf-guide-sidebar details[open] > summary::after{
  transform:rotate(225deg) translate(-2px, -2px);
}

.mf-guide-sidebar summary:hover{ background:#f1f8fc; }

.mf-guide-sidebar :where(summary, a):focus-visible{
  outline:2px solid #0668a1;
  outline-offset:-2px;
}

.mf-guide-nav-count,
.mf-guide-sidebar .mf-guide-toc-count{
  flex:0 0 auto;
  min-width:25px;
  margin-left:auto;
  padding:2px 6px;
  border-radius:4px;
  background:#f0f4f6;
  color:#52616b;
  font-size:12px;
  font-weight:600;
  line-height:1.5;
  text-align:center;
}

.mf-guide-sidebar summary:has(.mf-guide-nav-count, .mf-guide-toc-count)::after{ margin-left:0; }

.mf-guide-sidebar nav{
  max-height:45vh;
  overflow-y:auto;
  overscroll-behavior:contain;
  scrollbar-width:thin;
  scrollbar-color:#b7cbd7 transparent;
  border-top:1px solid #e5ecf0;
}

.mf-guide-chapters-game{
  margin:0;
  padding:12px 14px 8px;
  color:#52616b;
  font-size:12px;
  line-height:1.5;
}

.mf-guide-chapters ol,
.mf-guide-sidebar .mf-guide-toc-list{
  display:block;
  margin:0;
  padding:4px 0 8px;
  list-style:none;
  border:0;
}

.mf-guide-chapters li,
.mf-guide-sidebar .mf-guide-toc-item{
  margin:0;
  padding:0;
  border:0;
}

.mf-guide-chapters li a{
  display:grid;
  grid-template-columns:22px minmax(0, 1fr);
  align-items:baseline;
  gap:8px;
  min-height:44px;
  padding:10px 12px 10px 10px;
  border-left:3px solid transparent;
  color:#344054;
  font-size:13px;
  font-weight:400;
  line-height:1.5;
  text-decoration:none;
  overflow-wrap:anywhere;
}

.mf-guide-chapter-number{
  color:#667085;
  font-size:12px;
  font-variant-numeric:tabular-nums;
  text-align:center;
}

.mf-guide-sidebar .mf-guide-toc-list a{
  display:block;
  padding:9px 14px 9px 12px;
  border-left:3px solid transparent;
  color:#344054;
  font-size:13px;
  font-weight:400;
  line-height:1.5;
  text-decoration:none;
  overflow-wrap:anywhere;
}

.mf-guide-sidebar .mf-guide-toc-list a::before{ content:none; }
.mf-guide-sidebar .mf-guide-toc-sublist{ margin:0; padding:0; border:0; }
.mf-guide-sidebar .mf-guide-toc-sublist a{ padding-left:26px; font-size:12px; }

.mf-guide-sidebar nav a:hover{
  background:#f1f8fc;
  color:#045281;
}

.mf-guide-sidebar nav a[aria-current]{
  border-left-color:#0668a1;
  background:#eaf5fc;
  color:#045281;
  font-weight:700;
}

.mf-guide-chapters-overview{
  display:flex;
  align-items:center;
  gap:8px;
  min-height:44px;
  padding:10px 14px;
  border-top:1px solid #e5ecf0;
  color:#0668a1;
  font-size:12px;
  font-weight:700;
  line-height:1.5;
  overflow-wrap:anywhere;
}

.mf-guide-chapters-overview:hover{ color:#045281; background:#f1f8fc; }

@media (min-width:1101px){
  .mf-guide-reading-layout.has-navigation{
    grid-template-columns:minmax(0, 1fr) 280px;
    gap:24px;
  }

  .mf-guide-reading-layout > .mf-guide-article{ grid-column:1; grid-row:1; }

  .mf-guide-sidebar{
    grid-column:2;
    grid-row:1;
    position:sticky;
    top:var(--mf-guide-sticky-top);
    max-height:calc(100dvh - var(--mf-guide-sticky-top) - 16px);
    overflow-y:auto;
    overscroll-behavior:contain;
    scrollbar-width:thin;
  }

  .mf-guide-sidebar nav{ max-height:calc(100dvh - var(--mf-guide-sticky-top) - 176px); }

  .mf-guide-sidebar:has(.mf-guide-chapters[open]) .mf-guide-page-outline[open] nav,
  .mf-guide-sidebar:has(.mf-guide-page-outline[open]) .mf-guide-chapters[open] nav{
    max-height:max(96px, calc((100dvh - var(--mf-guide-sticky-top) - 220px) / 2));
  }
}

@media (max-width:782px){
  .admin-bar .mf-guide-reading-layout{ --mf-guide-heading-offset:150px; }
}

.mf-single-guide .mf-guide-sequence-section{
  padding:20px;
  border:1px solid #dbe5eb;
  border-radius:0;
  background:#fff;
  box-shadow:none;
}

.mf-guide-sequence-section .mf-guide-sequence-nav{
  display:grid;
  grid-template-columns:minmax(0, 1fr) minmax(120px, 180px) minmax(0, 1fr);
  align-items:stretch;
  gap:12px;
}

.mf-guide-sequence-section .mf-guide-sequence-main{
  grid-column:2;
  grid-row:1;
  align-self:center;
  margin:0;
}

.mf-guide-sequence-section .mf-guide-sequence-links{ display:contents; }
.mf-guide-sequence-section .mf-guide-sequence-link{ min-width:0; border-radius:6px; overflow-wrap:anywhere; }
.mf-guide-sequence-section .mf-guide-sequence-link.is-prev{ grid-column:1; grid-row:1; text-align:left; }
.mf-guide-sequence-section .mf-guide-sequence-link.is-next{ grid-column:3; grid-row:1; text-align:right; }
.mf-guide-sequence-section .mf-guide-sequence-overview{ background:transparent; color:#0668a1; border-radius:0; }
.mf-guide-sequence-section .mf-guide-sequence-overview:hover{ color:#045281; text-decoration:underline; }
.mf-guide-sequence-section .mf-guide-sequence-progress{ grid-column:1 / -1; grid-row:2; margin:0; padding:0; border:0; background:transparent; }

.mf-guide-sequence-section:is(.is-first-chapter, .is-last-chapter) .mf-guide-sequence-nav{ grid-template-columns:repeat(2, minmax(0,1fr)); }
.mf-guide-sequence-section.is-first-chapter .mf-guide-sequence-main{ grid-column:1; }
.mf-guide-sequence-section.is-first-chapter .mf-guide-sequence-link.is-next{ grid-column:2; }
.mf-guide-sequence-section.has-no-neighbours .mf-guide-sequence-nav{ grid-template-columns:minmax(0,1fr); }
.mf-guide-sequence-section.has-no-neighbours .mf-guide-sequence-main{ grid-column:1; }

@media (max-width:700px){
  .mf-single-guide .mf-guide-sequence-section{ padding:14px; }
  .mf-guide-sequence-section .mf-guide-sequence-nav{ grid-template-columns:repeat(2, minmax(0, 1fr)); gap:10px; }
  .mf-guide-sequence-section .mf-guide-sequence-main{ grid-column:1 / -1; grid-row:2; }
  .mf-guide-sequence-section .mf-guide-sequence-link.is-next{ grid-column:2; }
  .mf-guide-sequence-section .mf-guide-sequence-progress{ grid-row:3; }
  .mf-guide-sequence-section:is(.is-first-chapter, .is-last-chapter) .mf-guide-sequence-main{ grid-column:1 / -1; grid-row:2; }
  .mf-guide-sequence-section:is(.is-first-chapter, .is-last-chapter) .mf-guide-sequence-link:is(.is-prev, .is-next){ grid-column:1 / -1; grid-row:1; }
}

@media print{
  .mf-guide-sidebar,
  .mf-single-guide .mf-guide-sequence-section{ display:none; }
  .mf-guide-reading-layout.has-navigation{ display:block; }
}

/* =====================================================
   Guide hub shortcode consistency
===================================================== */

.mf-guidehub{
  display:flex;
  flex-direction:column;
}

.mf-guidehub .mf-guide-filter{
  margin:0;
}

.mf-guidehub .mf-guide-dropdown,
.mf-guidehub .mf-guide-search{
  line-height:1.2;
}


.mf-guidehub .mf-no-results{
  margin:0;
  padding:18px 20px;
  background:#fff;
  border:1px solid #e5e7eb;
  border-radius:14px;
  box-shadow:0 3px 10px rgba(15,23,42,.05);
  color:#4b5563;
  font-size:15px;
  font-weight:700;
}

.mf-guidehub-game{
  margin:0;
}

.mf-guidehub-section-header{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin:0 0 14px;
  padding-bottom:12px;
  border-bottom:1px solid #edf0f3;
}

.mf-guidehub-section-header .mf-game-title{
  padding:0;
  border:0;
  color:#111827;
  line-height:1.2;
  font-weight:800;
}

.mf-guidehub-section-header .mf-guide-count{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:999px;
  white-space:nowrap;
}

.mf-guidehub-list{
  flex-direction:column;
}

.mf-guidehub-card{
  margin:0;
  border:1px solid #edf0f3;
  background:#fff;
  overflow:hidden;
  transition:transform .16s ease, box-shadow .16s ease, border-color .16s ease;
}

.mf-guidehub-card + .mf-guidehub-card{
  margin-top:0;
}

.mf-guidehub-card a{
  display:flex;
  gap:14px;
  align-items:flex-start;
  color:inherit;
  text-decoration:none !important;
}

.mf-guidehub-card:hover{
  transform:translateY(-1px);
}

.mf-guidehub-card a:hover{
  background:#f8fbfd;
}

.mf-guidehub-card .mf-news-thumb{
  flex:0 0 96px;
  overflow:hidden;
  background:#f3f4f6;
}

.mf-guidehub-card .mf-news-thumb img{
  width:100%;
  height:100%;
  object-fit:cover;
}

.mf-guidehub-card .mf-news-content{
  display:flex;
  flex-direction:column;
  justify-content:center;
  min-width:0;
  padding-top:1px;
}

.mf-guidehub-card .mf-news-title{
  margin:0 0 4px;
  line-height:1.3;
  text-decoration:none;
}

.mf-guidehub-card .mf-news-date{
  margin:0 0 3px;
  line-height:1.35;
}

.mf-guidehub-card .mf-news-excerpt{
  margin:0;
  color:#4b5563;
  font-size:13px;
  line-height:1.45;
}

.mf-guidehub-card a:hover .mf-news-title{
  color:#045281;
}

.mf-article-content .mf-guidehub a,
.mf-article-content .mf-guidehub a:hover,
.mf-article-content .mf-guidehub a:focus,
.mf-article-content .mf-guidehub a *,
.mf-article-content .mf-guidehub a:hover *,
.mf-article-content .mf-guidehub a:focus *{
  text-decoration:none !important;
}

.mf-article-content .mf-guidehub p{
  margin:0;
}

.mf-article-content > p:empty{
  display:none;
}

@media (max-width:700px){
  .mf-guidehub{
    margin-top:18px;
  }


  .mf-guidehub-game{
    padding:14px;
    border-radius:14px;
  }

  .mf-guidehub-section-header{
    align-items:flex-start;
    flex-direction:column;
    gap:8px;
  }

  .mf-guidehub-section-header .mf-game-title{
    font-size:20px;
  }

  .mf-guidehub-card a{
    gap:10px;
    padding:9px;
  }


  .mf-guidehub-card .mf-news-title{
    font-size:14px;
  }

  .mf-guidehub-card .mf-news-excerpt{
    display:-webkit-box;
    -webkit-line-clamp:3;
    -webkit-box-orient:vertical;
    overflow:hidden;
    font-size:12px;
    line-height:1.35;
  }
}

/* =====================================================
   Guide hub lazy accordion
===================================================== */


.mf-guidehub .mf-guidehub-section-header{
  margin-bottom:0;
}

.mf-guidehub .mf-game-title{
  width:100%;
}

.mf-guidehub-toggle{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  width:100%;
  border:0;
  color:inherit;
  cursor:pointer;
  font:inherit;
  text-align:left;
}

.mf-guidehub-toggle-text{
  display:flex;
  justify-content:space-between;
  width:100%;
  min-width:0;
}

.mf-guidehub-toggle-text > span:first-child{
  overflow:hidden;
  text-overflow:ellipsis;
}

.mf-guidehub-toggle-icon{
  border-radius:999px;
  position:relative;
}

.mf-guidehub-toggle-icon::before,
.mf-guidehub-toggle-icon::after{
  content:"";
  position:absolute;
  top:50%;
  left:50%;
  width:12px;
  height:2px;
  border-radius:999px;
  background:#045281;
  transform:translate(-50%, -50%);
  transition:transform .16s ease;
}

.mf-guidehub-toggle-icon::after{
  transform:translate(-50%, -50%) rotate(90deg);
}

.mf-guidehub-game.is-open .mf-guidehub-toggle-icon::after{
  transform:translate(-50%, -50%) rotate(0deg);
}

.mf-guidehub-toggle:hover .mf-guidehub-toggle-icon,
.mf-guidehub-toggle:focus-visible .mf-guidehub-toggle-icon{
  background:#dceff8;
  border-color:#7db9d8;
}

.mf-guidehub-toggle:focus-visible{
  outline:2px solid rgba(6,104,161,.22);
  outline-offset:4px;
  border-radius:10px;
}

.mf-guidehub-panel{
  margin-top:14px;
}

.mf-guidehub-loader{
  padding:14px 16px;
  border:1px dashed #b9d8e9;
  color:#4b5563;
  font-size:14px;
  font-weight:700;
}

.mf-guidehub-search-results{
  margin:0;
  border:1px solid #e5e7eb;
}

.mf-guidehub-game.is-loading .mf-guidehub-toggle-icon::before{
  animation:mf-guidehub-pulse .8s ease-in-out infinite;
}

@keyframes mf-guidehub-pulse{
  0%, 100%{
    opacity:.4;
  }

  50%{
    opacity:1;
  }
}

@media (max-width:700px){
  .mf-guidehub-toggle{
    align-items:flex-start;
  }

  .mf-guidehub-toggle-text{
    align-items:flex-start;
    flex-direction:column;
  }

  .mf-guidehub-toggle-icon{
    margin-top:2px;
  }
}

/* =====================================================
   Front page portal hero and grids
===================================================== */

body.home{
  margin:0;
  padding-top:0;
}

body.home #masthead{
  display:none;
}

.mf-home-page{
  padding-top:0;
  margin-top:0;
}

.mf-home-hero{
  position:relative;
  display:flex;
  align-items:flex-end;
  min-height:clamp(300px, 34vw, 460px);
  margin:0 calc(50% - 50vw) 26px;
  padding:0 calc(50vw - 50%);
  overflow:hidden;
  background:#111827;
  color:#fff;
}

.mf-home-hero::after{
  content:"";
  position:absolute;
  inset:0;
  background:
    linear-gradient(180deg, rgba(5,18,32,.05) 0%, rgba(5,18,32,.18) 48%, rgba(5,18,32,.76) 100%),
    linear-gradient(90deg, rgba(5,18,32,.76) 0%, rgba(5,18,32,.42) 42%, rgba(5,18,32,.08) 78%);
  z-index:1;
}

.mf-home-hero::before{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:0;
  height:34px;
  background:linear-gradient(180deg, rgba(255,255,255,0) 0%, rgba(255,255,255,.82) 100%);
  z-index:2;
  pointer-events:none;
}

.mf-home-hero-media{
  position:absolute;
  inset:0;
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
}

.mf-home-hero-media img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:inherit;
}

.mf-home-hero-content{
  position:relative;
  z-index:3;
  max-width:680px;
  padding:clamp(34px, 5vw, 66px) 18px clamp(32px, 4.2vw, 54px);
}

.mf-home-kicker{
  display:inline-flex;
  align-items:center;
  min-height:28px;
  margin:0 0 10px;
  padding:5px 11px;
  border:1px solid rgba(255,255,255,.36);
  border-radius:999px;
  background:rgba(255,255,255,.14);
  color:#fff;
  font-size:12px;
  font-weight:800;
  line-height:1.2;
}

.mf-home-hero h1{
  margin:0 0 10px;
  color:#fff;
  font-size:clamp(30px, 3.4vw, 48px);
  font-weight:900;
  line-height:1.08;
  text-shadow:0 2px 16px rgba(0,0,0,.38);
}

.mf-home-hero p{
  max-width:58ch;
  margin:0;
  color:rgba(255,255,255,.92);
  font-size:16px;
  line-height:1.58;
}

.mf-home-hero-actions{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:18px;
}

.mf-home-hero-actions a{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:36px;
  padding:8px 14px;
  border:1px solid rgba(255,255,255,.34);
  border-radius:999px;
  background:rgba(255,255,255,.14);
  color:#fff;
  font-size:13px;
  font-weight:800;
  line-height:1.2;
  text-decoration:none;
  backdrop-filter:blur(5px);
}

.mf-home-hero-actions a:hover,
.mf-home-hero-actions a.is-primary{
  background:#0668a1;
  border-color:#0668a1;
  color:#fff;
}





.mf-home-page .mf-home-section{
  border-radius:16px;
  min-height:0;
}



.mf-home-page .mf-home-section h2{
  margin-top:0;
  padding-top:2px;
}


@media (max-width:768px){
  body.home{
    padding-top:0;
  }

  body.home #masthead{
    display:none !important;
  }

  .mf-home-page{
    margin-top:0;
    padding-top:0;
  }

  .mf-home-hero{
    min-height:clamp(230px, 62vw, 330px);
    margin:0 calc(50% - 50vw) 18px;
  }

  .mf-home-hero::after{
    background:linear-gradient(180deg, rgba(5,18,32,.08) 0%, rgba(5,18,32,.62) 58%, rgba(5,18,32,.88) 100%);
  }

  .mf-home-hero::before{
    height:22px;
  }

  .mf-home-hero-media{
    object-position:center top;
  }

  .mf-home-hero-content{
    width:100%;
    padding:68px 16px 24px;
  }

  .mf-home-kicker{
    min-height:26px;
    font-size:11px;
  }

  .mf-home-hero h1{
    font-size:26px;
    line-height:1.12;
  }

  .mf-home-hero p{
    font-size:14px;
    line-height:1.5;
  }

  .mf-home-hero-actions{
    grid-template-columns:1fr;
    gap:8px;
    margin-top:14px;
  }

  .mf-home-hero-actions a{
    min-height:34px;
    padding:7px 11px;
    font-size:12px;
  }

  .mf-home-primary-grid,
  .mf-home-secondary-grid{
    grid-template-columns:1fr;
  }

  .mf-home-primary-grid{
    min-height:0;
  }

  .mf-home-page .mf-home-news,
  .mf-home-page .mf-home-guides{
    min-height:640px;
  }

  .mf-home-page .mf-home-games,
  .mf-home-page .mf-home-popular{
    min-height:330px;
  }
}

@media (max-width:768px){
  body.home .mf-home-primary-grid,
  body.home .mf-home-secondary-grid{
    display:flex !important;
    flex-direction:column;
    gap:14px;
  }

  body.home .mf-home-primary-grid > *,
  body.home .mf-home-secondary-grid > *{
    width:100%;
  }
}

/* =====================================================
   News hub shortcode consistency
===================================================== */

.mf-news-hub{
  margin-top:0;
}

.mf-news-hub .mf-list-surface{
  margin-top:0;
}

.mf-news-hub .mf-news-item{
  border:1px solid #edf0f3;
  border-radius:12px;
  background:#fff;
  overflow:hidden;
}

.mf-news-hub .mf-news-item a{
  min-height:94px;
  padding:10px;
}

.mf-news-hub .mf-news-thumb{
  flex:0 0 112px;
  width:112px;
  height:76px;
  background:#f3f4f6;
}

.mf-news-hub .mf-news-thumb picture{
  display:block;
  width:100%;
  height:100%;
}

.mf-news-hub .mf-news-thumb img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
}

.mf-news-hub .mf-news-content{
  min-width:0;
}

.mf-news-hub .mf-news-title,
.mf-news-hub .mf-news-excerpt{
  overflow-wrap:anywhere;
}

.mf-news-hub .mf-no-results{
  margin:0;
  padding:16px;
  color:#4b5563;
  font-size:15px;
  font-weight:700;
}

.mf-article-content .mf-news-hub a,
.mf-article-content .mf-news-hub a:hover,
.mf-article-content .mf-news-hub a:focus,
.mf-article-content .mf-news-hub a *,
.mf-article-content .mf-news-hub a:hover *,
.mf-article-content .mf-news-hub a:focus *{
  text-decoration:none !important;
}

.mf-article-content .mf-news-hub p{
  margin:0;
}

@media (max-width:600px){
  .mf-news-hub .mf-news-item a{
    align-items:center;
    gap:10px;
    min-height:78px;
  }

  .mf-news-hub .mf-news-thumb{
    flex-basis:76px;
    width:76px;
    height:58px;
  }

  .mf-news-hub .mf-news-date{
    font-size:11px;
  }

  .mf-news-hub .mf-news-excerpt{
    display:-webkit-box;
    -webkit-line-clamp:3;
    -webkit-box-orient:vertical;
    overflow:hidden;
  }
}

/* =====================================================
   Desktop navigation without legacy mega-menu base
===================================================== */

@media (min-width:769px){
  .mf-desktop-navigation .mf-nav-menu,
  .mf-desktop-navigation .mf-nav-menu ul{
    list-style:none;
    margin:0;
    padding:0;
  }

  .mf-desktop-navigation .mf-nav-menu{
    justify-content:flex-start;
  }

  .mf-desktop-navigation .mf-nav-menu > li{
    margin:0;
    padding:0;
  }

  .mf-desktop-navigation .mf-nav-menu > li > a{
    transition:background .16s ease, color .16s ease;
  }


  .mf-desktop-navigation .mf-nav-menu .sub-menu{
    position:absolute;
    top:calc(100% + 10px);
    left:0;
    z-index:10000;
    display:block;
    min-width:230px;
    max-width:min(720px, calc(100vw - 32px));
    margin:0;
    padding:12px;
    background:#fff;
    border:1px solid #b9d8e9;
    border-radius:14px;
    box-shadow:0 18px 42px rgba(4,82,129,.16);
    opacity:0;
    visibility:hidden;
    transform:translateY(6px);
    pointer-events:none;
    transition:opacity .16s ease, transform .16s ease, visibility .16s ease;
  }

  .mf-desktop-navigation .mf-nav-menu li:hover > .sub-menu,
  .mf-desktop-navigation .mf-nav-menu li:focus-within > .sub-menu{
    opacity:1;
    visibility:visible;
    transform:translateY(0);
    pointer-events:auto;
  }

  .mf-desktop-navigation .mf-nav-menu .sub-menu li{
    position:relative;
    margin:0;
    padding:0;
  }

  .mf-desktop-navigation .mf-nav-menu .sub-menu a{
    display:block;
    padding:8px 10px;
    border-radius:8px;
    color:#374151;
    font-size:13px;
    font-weight:700;
    line-height:1.35;
    text-decoration:none;
    white-space:normal;
  }

  .mf-desktop-navigation .mf-nav-menu .sub-menu a:hover{
    background:#f3f7fb;
    color:#045281;
  }

  .mf-desktop-navigation .mf-nav-menu .sub-menu .sub-menu{
    top:-10px;
    left:calc(100% + 10px);
  }
}

/* =====================================================
   Final desktop dropdown override
===================================================== */

@media (min-width:769px){
  .mf-desktop-navigation .mf-nav-menu,
  .mf-desktop-navigation .mega-menu{
    display:flex !important;
    align-items:center !important;
    gap:6px !important;
  }

  .mf-desktop-navigation .mf-nav-menu > li,
  .mf-desktop-navigation .mega-menu > li{
    position:relative !important;
  }

  .mf-desktop-navigation .mf-nav-menu > li > a,
  .mf-desktop-navigation .mega-menu > li > a{
    display:flex !important;
    align-items:center !important;
    min-height:42px !important;
    padding:0 13px !important;
    border-radius:12px !important;
    background:transparent !important;
    color:#17324a !important;
    font-size:14px !important;
    font-weight:800 !important;
    line-height:1 !important;
    text-decoration:none !important;
    white-space:nowrap !important;
  }

  .mf-desktop-navigation .mf-nav-menu > li:hover > a,
  .mf-desktop-navigation .mf-nav-menu > li.current-menu-item > a,
  .mf-desktop-navigation .mf-nav-menu > li.current-menu-ancestor > a,
  .mf-desktop-navigation .mega-menu > li:hover > a,
  .mf-desktop-navigation .mega-menu > li.current-menu-item > a,
  .mf-desktop-navigation .mega-menu > li.current-menu-ancestor > a{
    background:#0668a1 !important;
    color:#fff !important;
  }

  .mf-desktop-navigation .sub-menu{
    position:absolute !important;
    top:calc(100% + 10px) !important;
    left:0 !important;
    z-index:10000 !important;
    display:block !important;
    margin:0 !important;
    list-style:none !important;
    opacity:0 !important;
    visibility:hidden !important;
    transform:translateY(6px) !important;
    pointer-events:none !important;
  }

  .mf-desktop-navigation li:hover > .sub-menu,
  .mf-desktop-navigation li:focus-within > .sub-menu{
    opacity:1 !important;
    visibility:visible !important;
    transform:translateY(0) !important;
    pointer-events:auto !important;
  }

  .mf-desktop-navigation .sub-menu li{
    position:relative !important;
    margin:0 !important;
    padding:0 !important;
    background:transparent !important;
  }

  .mf-desktop-navigation .sub-menu a{
    background:transparent !important;
    text-decoration:none !important;
    white-space:normal !important;
  }


}

/* =====================================================
   Final guide hub visual polish
===================================================== */

.mf-guidehub{
  gap:12px;
  margin-top:18px;
}

.mf-guidehub .mf-guide-filter{
  display:grid;
  grid-template-columns:minmax(220px, 320px) minmax(260px, 1fr);
  gap:10px;
  padding:14px;
  background:#fff;
  border:1px solid #d6e7f1;
  border-radius:16px;
  box-shadow:0 8px 24px rgba(15,23,42,.06);
}

.mf-guidehub .mf-guide-dropdown,
.mf-guidehub .mf-guide-search{
  min-height:44px;
  padding:0 14px;
  border:1px solid #b9d8e9;
  border-radius:999px;
  background:#f8fbfd;
  color:#111827;
  font-size:14px;
  font-weight:650;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.8);
}

.mf-guidehub .mf-guide-dropdown:focus,
.mf-guidehub .mf-guide-search:focus{
  background:#fff;
  border-color:#0668a1;
  outline:3px solid rgba(6,104,161,.14);
}

.mf-guidehub-game{
  padding:0;
  overflow:hidden;
  background:#fff;
  border:1px solid #dce8f0;
  border-radius:16px;
  box-shadow:0 5px 18px rgba(15,23,42,.05);
  transition:border-color .16s ease, box-shadow .16s ease, transform .16s ease;
}

.mf-guidehub-game:hover{
  border-color:#b9d8e9;
  box-shadow:0 10px 26px rgba(15,23,42,.08);
}

.mf-guidehub-game.is-open{
  border-color:#9fcae2;
  box-shadow:0 14px 34px rgba(4,82,129,.12);
}

.mf-guidehub-game.is-collapsed{
  padding-bottom:0;
}

.mf-guidehub .mf-guidehub-section-header{
  display:block;
  margin:0;
  padding:0;
  border:0;
}

.mf-guidehub-section-header .mf-game-title{
  margin:0;
  font-size:18px;
}

.mf-guidehub-toggle{
  min-height:64px;
  padding:14px 16px 14px 18px;
  background:linear-gradient(180deg, #fff 0%, #f8fbfd 100%);
  transition:background .16s ease;
}

.mf-guidehub-toggle:hover{
  background:#f1f8fc;
}

.mf-guidehub-game.is-open .mf-guidehub-toggle{
  background:#eef7fb;
}

.mf-guidehub-toggle-text{
  align-items:center;
  gap:14px;
}

.mf-guidehub-toggle-text > span:first-child{
  color:#111827;
  font-size:18px;
  font-weight:850;
  line-height:1.25;
}

.mf-guidehub-section-header .mf-guide-count{
  flex:0 0 auto;
  min-height:30px;
  padding:6px 11px;
  background:#edf8f0;
  border:1px solid #c9e7d0;
  color:#176b36;
  font-size:12px;
  font-weight:850;
}

.mf-guidehub-toggle-icon{
  flex:0 0 34px;
  width:34px;
  height:34px;
  background:#fff;
  border:1px solid #b9d8e9;
  box-shadow:0 3px 10px rgba(4,82,129,.12);
}

.mf-guidehub-game.is-open .mf-guidehub-toggle-icon{
  background:#0668a1;
  border-color:#0668a1;
}

.mf-guidehub-game.is-open .mf-guidehub-toggle-icon::before,
.mf-guidehub-game.is-open .mf-guidehub-toggle-icon::after{
  background:#fff;
}

.mf-guidehub-panel{
  margin:0;
  padding:0 16px 16px;
  background:#fff;
}

.mf-guidehub-list{
  display:grid;
  grid-template-columns:repeat(auto-fit, minmax(320px, 1fr));
  gap:10px;
  padding-top:12px;
  border-top:1px solid #e8eff4;
}

.mf-guidehub-card{
  border-color:#e7edf2;
  border-radius:14px;
  box-shadow:0 2px 8px rgba(15,23,42,.035);
}

.mf-guidehub-card a{
  min-height:88px;
  padding:11px;
}

.mf-guidehub-card:hover{
  border-color:#b9d8e9;
  box-shadow:0 10px 22px rgba(4,82,129,.1);
}

.mf-guidehub-card .mf-news-thumb{
  flex-basis:92px;
  width:92px;
  height:66px;
  border-radius:12px;
}

.mf-guidehub-card .mf-news-title{
  color:#111827;
  font-size:14px;
  font-weight:850;
}

.mf-guidehub-card .mf-news-date{
  display:inline-flex;
  width:max-content;
  margin-bottom:4px;
  padding:2px 7px;
  border-radius:999px;
  background:#eef7fb;
  color:#045281;
  font-size:11px;
  font-weight:800;
}

.mf-guidehub-loader,
.mf-guidehub-search-results{
  border-color:#d6e7f1;
  border-radius:16px;
  background:#fff;
  box-shadow:0 6px 18px rgba(15,23,42,.05);
}

.mf-guidehub-loader{
  margin-top:12px;
}

.mf-guidehub-search-results{
  padding:16px;
}

.mf-guidehub-search-results .mf-guidehub-list{
  padding-top:0;
  border-top:0;
}

@media (max-width:700px){
  .mf-guidehub{
    gap:10px;
  }

  .mf-guidehub .mf-guide-filter{
    grid-template-columns:1fr;
    padding:12px;
    border-radius:14px;
  }

  .mf-guidehub-toggle{
    min-height:58px;
    padding:13px 14px;
  }

  .mf-guidehub-toggle-text > span:first-child{
    font-size:16px;
  }

  .mf-guidehub-toggle-text{
    gap:7px;
  }

  .mf-guidehub-panel{
    padding:0 12px 12px;
  }

  .mf-guidehub-list{
    grid-template-columns:1fr;
    gap:9px;
  }

  .mf-guidehub-card a{
    min-height:78px;
  }

  .mf-guidehub-card .mf-news-thumb{
    flex-basis:74px;
    width:74px;
    height:56px;
  }
}

/* =====================================================
   Unified search and archive list cards
===================================================== */

.mf-list-surface:not(.mf-game-archive-grid){
  display:flex;
  flex-direction:column;
  gap:10px;
}

.mf-search-type-filters{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin:0 0 16px;
  padding:12px;
  background:#fff;
  border:1px solid #dce8f0;
  border-radius:16px;
  box-shadow:0 5px 16px rgba(15,23,42,.05);
}

.mf-search-type-filters a{
  display:inline-flex;
  align-items:center;
  gap:8px;
  min-height:34px;
  padding:7px 12px;
  border:1px solid #d6e7f1;
  border-radius:999px;
  background:#f8fbfd;
  color:#17324a;
  font-size:13px;
  font-weight:800;
  line-height:1;
  text-decoration:none;
  transition:background .16s ease, border-color .16s ease, color .16s ease, transform .16s ease;
}

.mf-search-type-filters a:hover,
.mf-search-type-filters a:focus{
  background:#e7f3fa;
  border-color:#b9d8e9;
  color:#045281;
  text-decoration:none;
  transform:translateY(-1px);
}

.mf-search-type-filters a.is-active{
  background:#0668a1;
  border-color:#0668a1;
  color:#fff;
}

.mf-search-type-filters strong{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:24px;
  height:22px;
  padding:0 7px;
  border-radius:999px;
  background:rgba(255,255,255,.78);
  color:#045281;
  font-size:12px;
  font-weight:900;
}

.mf-search-type-filters a.is-active strong{
  background:rgba(255,255,255,.22);
  color:#fff;
}

.mf-list-card{
  border:1px solid #e7edf2;
  border-radius:14px;
  background:#fff;
  overflow:hidden;
  transition:border-color .16s ease, box-shadow .16s ease, transform .16s ease;
}

.mf-list-card:hover{
  border-color:#b9d8e9;
  box-shadow:0 10px 24px rgba(4,82,129,.09);
  transform:translateY(-1px);
}

.mf-list-card > a{
  display:flex;
  align-items:flex-start;
  gap:12px;
  min-height:96px;
  padding:11px;
  color:inherit;
  text-decoration:none !important;
}

.mf-list-card > a:hover,
.mf-list-card > a:focus{
  background:#f8fbfd;
  text-decoration:none !important;
}

.mf-list-card .mf-news-thumb{
  flex:0 0 112px;
  width:112px;
  height:78px;
  border-radius:10px;
  background:#f3f4f6;
  overflow:hidden;
}

.mf-list-card .mf-news-thumb img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
}

.mf-list-card.type-game .mf-news-thumb img{
  object-fit:contain;
  padding:5px;
  background:#f8fafc;
}

.mf-list-card .mf-news-content{
  min-width:0;
}

.mf-list-card .mf-news-title{
  margin-bottom:4px;
  color:#111827;
  font-size:15px;
  font-weight:850;
  line-height:1.3;
}

.mf-list-card .mf-news-date{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:5px;
  margin-bottom:4px;
  color:#667085;
  font-size:12px;
  font-weight:650;
}

.mf-list-card .mf-meta-sep{
  margin:0;
}

.mf-list-card .mf-news-excerpt{
  color:#4b5563;
  font-size:13px;
  line-height:1.48;
}

.mf-list-card .mf-news-title,
.mf-list-card .mf-news-excerpt{
  overflow-wrap:anywhere;
}

.mf-search-highlight{
  display:inline;
  padding:0 2px;
  border-radius:4px;
  background:#fff2a8;
  color:inherit;
  box-shadow:0 0 0 1px rgba(250,204,21,.25);
}

@media (max-width:600px){
  .mf-search-type-filters{
    gap:7px;
    padding:10px;
    border-radius:14px;
  }

  .mf-search-type-filters a{
    min-height:32px;
    padding:6px 10px;
    font-size:12px;
  }

  .mf-search-type-filters strong{
    min-width:20px;
    height:20px;
    padding:0 6px;
    font-size:11px;
  }

  .mf-list-card > a{
    align-items:center;
    gap:10px;
    min-height:78px;
    padding:10px;
  }

  .mf-list-card .mf-news-thumb{
    flex-basis:76px;
    width:76px;
    height:58px;
  }

  .mf-list-card .mf-news-title{
    font-size:15px;
  }

  .mf-list-card .mf-news-date{
    font-size:11px;
  }

  .mf-list-card .mf-news-excerpt{
    display:-webkit-box;
    -webkit-line-clamp:2;
    -webkit-box-orient:vertical;
    overflow:hidden;
    font-size:12px;
  }
}

/* =====================================================
   Final archive polish: games and reviews
===================================================== */

.mf-games-archive-page .mf-game-archive-grid,
.mf-search-page .mf-game-archive-grid{
  display:grid;
  grid-template-columns:repeat(auto-fill, minmax(300px, 1fr));
  gap:12px;
  padding:14px;
}

.mf-game-list-card{
  min-width:0;
  display:flex;
  flex-direction:column;
  border:1px solid #e7edf2;
  border-radius:14px;
  background:#fff;
  overflow:hidden;
  box-shadow:0 2px 8px rgba(15,23,42,.035);
  transition:border-color .16s ease, box-shadow .16s ease, transform .16s ease;
}

.mf-game-list-card:hover{
  border-color:#b9d8e9;
  box-shadow:0 10px 24px rgba(4,82,129,.09);
  transform:translateY(-1px);
}

.mf-game-list-card > .mf-game-list-main{
  display:grid;
  grid-template-columns:86px minmax(0, 1fr);
  flex:1 1 auto;
  height:auto;
  min-height:86px;
  color:inherit;
  text-decoration:none !important;
}

.mf-game-list-card > .mf-game-list-main:hover,
.mf-game-list-card > .mf-game-list-main:focus{
  background:#f8fbfd;
  text-decoration:none !important;
}

.mf-game-archive-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:10px;
}

.mf-game-list-card .mf-game-archive-thumb{
  width:86px;
  height:86px;
  aspect-ratio:auto;
  background:#f3f4f6;
  border-right:1px solid #edf0f3;
  overflow:hidden;
}

.mf-game-list-card .mf-game-archive-thumb img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
}

.mf-game-list-card .mf-game-archive-content{
  display:flex;
  flex-direction:column;
  justify-content:center;
  min-width:0;
  padding:10px 12px;
}

.mf-game-list-card .mf-game-archive-content h2{
  margin:0 0 4px;
  color:#111827;
  font-size:15px;
  font-weight:850;
  line-height:1.3;
  overflow-wrap:anywhere;
}

.mf-game-list-card .mf-game-archive-head h2{
  min-width:0;
}

.mf-game-review-rating{
  min-width:38px;
  min-height:28px;
  padding:5px 9px;
  border-radius:999px;
  background:#0668a1;
  color:#fff;
  font-size:12px;
  font-weight:900;
  box-shadow:0 4px 12px rgba(4,82,129,.16);
}

.mf-game-list-card .mf-game-archive-meta{
  display:flex;
  flex-wrap:wrap;
  gap:4px;
  margin:0 0 5px;
}

.mf-game-list-card .mf-game-archive-meta span{
  min-height:20px;
  padding:2px 7px;
  border-radius:999px;
  background:#eef7fb;
  color:#045281;
  font-size:11px;
  font-weight:850;
  line-height:1.2;
}

.mf-game-list-card .mf-game-archive-content p{
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  margin:0;
  overflow:hidden;
  color:#4b5563;
  font-size:12px;
  line-height:1.4;
}

.mf-game-card-actions{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  padding:9px 12px 11px;
  border-top:1px solid #edf0f3;
  background:#f8fbfd;
}

.mf-game-card-action{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:30px;
  padding:6px 10px;
  border:1px solid #cfe3ef;
  border-radius:999px;
  background:#fff;
  color:#045281 !important;
  font-size:12px;
  font-weight:850;
  line-height:1.1;
  text-decoration:none !important;
  transition:background .15s ease, border-color .15s ease, color .15s ease, transform .15s ease;
}

.mf-game-card-action:hover,
.mf-game-card-action:focus{
  border-color:#0668a1;
  background:#eaf5fb;
  color:#045281 !important;
  text-decoration:none !important;
  transform:translateY(-1px);
}

.mf-game-card-action.is-review{
  border-color:#0668a1;
  background:#0668a1;
  color:#fff !important;
  box-shadow:0 4px 12px rgba(4,82,129,.14);
}

.mf-game-card-action.is-review:hover,
.mf-game-card-action.is-review:focus{
  border-color:#045281;
  background:#045281;
  color:#fff !important;
}

.mf-game-card-action.is-news{
  border-color:#b9d8e9;
  background:#eef7fb;
  color:#045281 !important;
}

.mf-game-card-action.is-news:hover,
.mf-game-card-action.is-news:focus{
  border-color:#0668a1;
  background:#dff0f8;
}

.mf-review-archive .mf-review-list{
  margin-top:18px;
}

.mf-review-archive .mf-review-listing-head{
  align-items:center;
}

.mf-review-archive .mf-review-rating{
  min-width:42px;
  min-height:30px;
  border-radius:999px;
  background:#0668a1;
  box-shadow:0 4px 12px rgba(4,82,129,.16);
}

.mf-review-archive .mf-list-card .mf-news-thumb{
  background:#f3f4f6;
}

.mf-review-archive .mf-list-card .mf-news-excerpt{
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
}

.mf-review-archive .mf-archive-count,
.mf-games-archive-page .mf-archive-count{
  border-color:#d6e7f1;
  background:#f8fbfd;
}

@media (max-width:700px){
  .mf-games-archive-page .mf-game-archive-grid,
  .mf-search-page .mf-game-archive-grid{
    grid-template-columns:1fr;
    padding:10px;
  }

  .mf-game-list-card > .mf-game-list-main{
    grid-template-columns:76px minmax(0, 1fr);
    min-height:76px;
  }

  .mf-game-list-card .mf-game-archive-thumb{
    width:76px;
    height:76px;
  }

  .mf-game-list-card .mf-game-archive-content{
    padding:9px 10px;
  }

  .mf-game-list-card .mf-game-archive-content h2{
    font-size:14px;
  }

  .mf-game-archive-head{
    gap:8px;
  }

  .mf-game-review-rating{
    min-width:34px;
    min-height:26px;
    padding:4px 8px;
    font-size:11px;
  }

  .mf-game-list-card .mf-game-archive-content p{
    -webkit-line-clamp:1;
  }

  .mf-game-card-actions{
    gap:7px;
    padding:8px 10px 10px;
  }

  .mf-game-card-action{
    flex:1 1 0;
    min-width:0;
  }

  .mf-review-archive .mf-games-archive-header-main{
    align-items:stretch;
    flex-direction:column;
  }
}

/* =====================================================
   Final guide archive and pagination system
===================================================== */

.mf-guide-archive .mf-guide-taxonomy-list,
.mf-guide-taxonomy-page .mf-guide-taxonomy-list{
  display:flex;
  flex-direction:column;
  gap:10px;
  margin-top:18px;
}

.mf-guide-archive .mf-list-card,
.mf-guide-taxonomy-page .mf-list-card{
  border-color:#e7edf2;
}

.mf-guide-archive .mf-list-card .mf-news-thumb,
.mf-guide-taxonomy-page .mf-list-card .mf-news-thumb{
  background:#f3f4f6;
}

.mf-guide-archive .mf-list-card .mf-news-date,
.mf-guide-taxonomy-page .mf-list-card .mf-news-date{
  display:inline-flex;
  width:max-content;
  margin-bottom:5px;
  padding:2px 7px;
  border-radius:999px;
  background:#eef7fb;
  color:#045281;
  font-size:11px;
  font-weight:850;
}

.mf-guide-taxonomy-page .mf-guide-hub-section{
  margin-top:22px;
}

.mf-guide-taxonomy-page .mf-guide-hub-section:first-of-type{
  margin-top:0;
}

.mf-guide-taxonomy-page .mf-guide-hub-section-header{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin:0 0 10px;
  padding:14px 16px;
  background:#fff;
  border:1px solid #dce8f0;
  border-radius:16px;
  box-shadow:0 5px 16px rgba(15,23,42,.05);
}

.mf-guide-taxonomy-page .mf-guide-hub-section-header h2{
  margin:0;
  color:#111827;
  font-size:18px;
  font-weight:850;
  line-height:1.25;
}

.mf-guide-taxonomy-page .mf-guide-hub-section-header span{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:32px;
  height:28px;
  padding:0 9px;
  border-radius:999px;
  background:#edf8f0;
  border:1px solid #c9e7d0;
  color:#176b36;
  font-size:12px;
  font-weight:900;
}

.mf-guide-taxonomy-page .mf-guide-hub-section-description{
  margin:-2px 0 12px;
  padding:0 2px;
  color:#4b5563;
  font-size:14px;
  line-height:1.55;
}

.mf-news-pagination{
  margin-top:24px;
  border-color:#dce8f0;
  border-radius:16px;
  box-shadow:0 5px 16px rgba(15,23,42,.05);
}

.mf-news-pagination:empty{
  display:none;
}

.mf-news-pagination a,
.mf-news-pagination span{
  border-color:#d6e7f1;
  border-radius:999px;
  color:#17324a;
  font-weight:800;
}

.mf-news-pagination a:hover,
.mf-news-pagination a:focus{
  background:#e7f3fa;
  border-color:#b9d8e9;
  color:#045281;
  text-decoration:none;
}

.mf-news-pagination .current{
  background:#0668a1;
  border-color:#0668a1;
  color:#fff;
}

.mf-guide-archive .mf-archive-count,
.mf-guide-taxonomy-page .mf-archive-count,
.mf-generic-archive-header .mf-archive-count{
  border-color:#d6e7f1;
  background:#f8fbfd;
}

@media (max-width:700px){
  .mf-guide-archive .mf-games-archive-header-main,
  .mf-guide-taxonomy-page .mf-games-archive-header-main,
  .mf-generic-archive-header .mf-games-archive-header-main{
    align-items:stretch;
    flex-direction:column;
  }

  .mf-guide-taxonomy-page .mf-guide-hub-section{
    margin-top:18px;
  }

  .mf-guide-taxonomy-page .mf-guide-hub-section-header{
    align-items:flex-start;
    padding:12px;
    border-radius:14px;
  }

  .mf-guide-taxonomy-page .mf-guide-hub-section-header h2{
    font-size:16px;
  }

  .mf-news-pagination{
    gap:5px;
    padding:10px;
  }

  .mf-news-pagination a,
  .mf-news-pagination span{
    min-width:32px;
    height:32px;
    padding:0 9px;
    font-size:13px;
  }
}

/* =====================================================
   Unified related game CTA
===================================================== */

.mf-more-game{
  margin:26px 0 0;
  border-color:#d6e7f1;
  border-radius:16px;
  background:linear-gradient(180deg, #fff 0%, #f8fbfd 100%);
  box-shadow:0 5px 16px rgba(15,23,42,.05);
}

.mf-more-game-text span{
  color:#045281;
  letter-spacing:.02em;
}

.mf-more-game-text strong{
  font-weight:850;
}

.mf-more-game-text em{
  color:#667085;
  font-size:12px;
  font-style:normal;
  font-weight:700;
}

.mf-more-game-links a,
.mf-more-game a{
  border:1px solid #0668a1;
  border-radius:999px;
  background:#0668a1;
  box-shadow:0 4px 12px rgba(4,82,129,.14);
}

.mf-more-game-links a:hover,
.mf-more-game a:hover{
  background:#045281;
  border-color:#045281;
}

.mf-affiliate-game{
  border-color:#fed7aa;
  background:linear-gradient(180deg, #fff 0%, #fff7ed 100%);
}

.mf-affiliate-game .mf-more-game-text span{
  color:#b45309;
}

.mf-affiliate-game .mf-more-game-links a,
.mf-affiliate-game a{
  border-color:#ea580c;
  background:#ea580c;
  box-shadow:0 4px 12px rgba(234,88,12,.15);
}

.mf-affiliate-game .mf-more-game-links a:hover,
.mf-affiliate-game a:hover{
  border-color:#c2410c;
  background:#c2410c;
}

@media (max-width:700px){
  .mf-more-game{
    margin-top:22px;
    padding:14px;
    border-radius:14px;
  }

  .mf-more-game-links{
    gap:7px;
  }
}

/* =====================================================
   Game hub summary and section navigation
===================================================== */

.mf-game-hub-nav{
  position:sticky;
  top:86px;
  z-index:20;
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin:0 0 14px;
  padding:12px;
  background:rgba(255,255,255,.94);
  border:1px solid #d6e7f1;
  border-radius:16px;
  box-shadow:0 8px 24px rgba(15,23,42,.08);
  backdrop-filter:blur(10px);
}

.mf-game-hub-nav a{
  display:inline-flex;
  align-items:center;
  gap:7px;
  min-height:34px;
  padding:7px 12px;
  border:1px solid #d6e7f1;
  border-radius:999px;
  background:#f8fbfd;
  color:#17324a;
  font-size:13px;
  font-weight:850;
  line-height:1;
  text-decoration:none;
}

.mf-game-hub-nav a:hover,
.mf-game-hub-nav a:focus{
  background:#e7f3fa;
  border-color:#b9d8e9;
  color:#045281;
  text-decoration:none;
}

.mf-game-hub-nav strong{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:22px;
  height:20px;
  padding:0 7px;
  border-radius:999px;
  background:#0668a1;
  color:#fff;
  font-size:11px;
  font-weight:900;
}

.mf-game-facts{
  display:grid;
  grid-template-columns:repeat(auto-fit, minmax(150px, 1fr));
  gap:10px;
  margin:16px 0 20px;
}

.mf-game-fact{
  min-width:0;
  padding:12px;
  border:1px solid #dce8f0;
  border-radius:14px;
  background:#f8fbfd;
}

.mf-game-fact span{
  display:block;
  margin:0 0 4px;
  color:#667085;
  font-size:11px;
  font-weight:900;
  line-height:1.2;
  text-transform:uppercase;
}

.mf-game-fact strong{
  display:block;
  color:#111827;
  font-size:14px;
  font-weight:850;
  line-height:1.35;
}

.mf-game-section{
  scroll-margin-top:110px;
}

@media (max-width:700px){
  .mf-game-hub-nav{
    position:static;
    gap:7px;
    padding:10px;
    border-radius:14px;
  }

  .mf-game-hub-nav a{
    flex:1 1 calc(50% - 7px);
    justify-content:center;
    min-height:32px;
    padding:7px 9px;
    font-size:12px;
  }

  .mf-game-facts{
    grid-template-columns:1fr 1fr;
    gap:8px;
    margin:14px 0 18px;
  }

  .mf-game-fact{
    padding:10px;
    border-radius:12px;
  }
}

/* =====================================================
   Unified desktop and mobile navigation
===================================================== */

.mf-desktop-topbar,
.mobile-top-bar{
  background:rgba(247,251,253,.96);
  background-image:linear-gradient(180deg, rgba(255,255,255,.98), rgba(238,247,251,.98));
  border-bottom-color:var(--mf-nav-border);
  box-shadow:0 8px 24px rgba(4,82,129,.12);
  -webkit-backdrop-filter:blur(14px);
  backdrop-filter:blur(14px);
}

.mf-menu-icon{
  display:grid;
  gap:4px;
  width:19px;
}

.mf-menu-icon span{
  display:block;
  width:100%;
  height:2px;
  border-radius:999px;
  background:currentColor;
  transition:transform .18s ease, opacity .18s ease;
}

.menu-toggle[aria-expanded="true"] .mf-menu-icon span:nth-child(1){
  transform:translateY(6px) rotate(45deg);
}

.menu-toggle[aria-expanded="true"] .mf-menu-icon span:nth-child(2){
  opacity:0;
}

.menu-toggle[aria-expanded="true"] .mf-menu-icon span:nth-child(3){
  transform:translateY(-6px) rotate(-45deg);
}

.mf-search-icon{
  position:relative;
  display:inline-block;
  width:12px;
  height:12px;
  flex:0 0 12px;
  border:2px solid currentColor;
  border-radius:50%;
}

.mf-search-icon::after{
  content:"";
  position:absolute;
  right:-5px;
  bottom:-3px;
  width:6px;
  height:2px;
  border-radius:999px;
  background:currentColor;
  transform:rotate(45deg);
  transform-origin:left center;
}

@media (min-width:769px){
  .mf-desktop-topbar{
    z-index:10050;
  }

  .mf-desktop-topbar-inner{
    grid-template-columns:160px minmax(0, 1fr) 200px;
    gap:14px;
    max-width:1440px;
    padding-inline:24px;
  }

  .mf-desktop-navigation,
  .mf-desktop-navigation .mf-primary-nav-list{
    overflow:visible !important;
  }

  .mf-desktop-navigation .mf-primary-nav-list{
    display:flex !important;
    align-items:center !important;
    gap:3px !important;
    list-style:none;
    margin:0;
    padding:0;
  }

  .mf-desktop-navigation .mf-primary-nav-list > .mf-nav-item{
    position:relative !important;
    margin:0;
    padding:0;
  }

  .mf-desktop-navigation .mf-primary-nav-list > .mf-nav-item > a{
    position:relative;
    display:flex !important;
    align-items:center !important;
    min-height:40px !important;
    padding:0 11px !important;
    border:1px solid transparent !important;
    border-radius:10px !important;
    background:transparent !important;
    color:var(--mf-nav-text) !important;
    font-size:13px !important;
    font-weight:800 !important;
    line-height:1 !important;
    text-decoration:none !important;
    white-space:nowrap !important;
    transition:background .16s ease, border-color .16s ease, color .16s ease;
  }

  .mf-desktop-navigation .mf-primary-nav-list > .mf-nav-item > a:hover,
  .mf-desktop-navigation .mf-primary-nav-list > .mf-nav-item > a:focus{
    border-color:#c7e0ee !important;
    background:var(--mf-nav-bg-hover) !important;
    color:var(--mf-nav-primary-dark) !important;
  }

  .mf-desktop-navigation .mf-primary-nav-list > .current-menu-item > a,
  .mf-desktop-navigation .mf-primary-nav-list > .current-menu-ancestor > a{
    border-color:var(--mf-nav-primary) !important;
    background:var(--mf-nav-primary) !important;
    color:#fff !important;
    box-shadow:0 5px 14px rgba(6,104,161,.2);
  }

  .mf-desktop-navigation .menu-item-has-children > a::after{
    content:"";
    width:6px;
    height:6px;
    margin-left:8px;
    border-right:2px solid currentColor;
    border-bottom:2px solid currentColor;
    transform:rotate(45deg) translateY(-1px);
    opacity:.6;
  }

  .mf-desktop-navigation .mf-platform-menu{
    position:absolute !important;
    top:calc(100% - 4px) !important;
    left:0 !important;
    z-index:10000 !important;
    display:block !important;
    width:min(720px, calc(100vw - 250px));
    min-width:560px !important;
    max-width:720px !important;
    max-height:calc(100vh - 100px);
    margin:0 !important;
    padding:12px !important;
    overflow-y:auto;
    list-style:none !important;
    background:rgba(255,255,255,.99) !important;
    border:1px solid #cfe4ef !important;
    border-radius:14px !important;
    box-shadow:var(--mf-nav-panel-shadow) !important;
    opacity:0 !important;
    visibility:hidden !important;
    transform:none !important;
    pointer-events:none !important;
    transition:opacity .14s ease, visibility .14s ease;
  }

  .mf-desktop-navigation .mf-platform-menu::before{
    content:"";
    position:absolute;
    top:-7px;
    left:24px;
    width:12px;
    height:12px;
    background:#fff;
    border-top:1px solid #cfe4ef;
    border-left:1px solid #cfe4ef;
    transform:rotate(45deg);
  }

  .mf-desktop-navigation .mf-platform-menu::after{
    content:"";
    position:absolute;
    top:0;
    left:0;
    right:0;
    height:1px;
  }

  .mf-desktop-navigation .mf-nav-item:hover > .mf-platform-menu,
  .mf-desktop-navigation .mf-nav-item:focus-within > .mf-platform-menu{
    opacity:1 !important;
    visibility:visible !important;
    transform:none !important;
    pointer-events:auto !important;
  }

  .mf-desktop-navigation .mf-platform-menu-header{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:16px;
    margin:0 !important;
    padding:2px 4px 10px !important;
    border:0 !important;
    border-bottom:1px solid #e3eef4 !important;
  }

  .mf-desktop-navigation .mf-platform-menu-header > span{
    color:var(--mf-heading);
    font-size:15px;
    font-weight:900;
  }

  .mf-desktop-navigation .mf-platform-menu-header > a{
    display:inline-flex !important;
    align-items:center !important;
    min-height:32px !important;
    padding:0 12px !important;
    border:1px solid #b9d8e9 !important;
    border-radius:999px !important;
    background:var(--mf-nav-bg-hover) !important;
    color:var(--mf-nav-primary-dark) !important;
    font-size:12px !important;
    font-weight:900 !important;
    text-decoration:none !important;
  }

  .mf-desktop-navigation .mf-platform-menu-header > a:hover,
  .mf-desktop-navigation .mf-platform-menu-header > a:focus{
    border-color:var(--mf-nav-primary) !important;
    background:var(--mf-nav-primary) !important;
    color:#fff !important;
  }

  .mf-desktop-navigation .mf-platform-group{
    display:grid;
    grid-template-columns:108px minmax(0, 1fr);
    align-items:start;
    gap:12px;
    width:100% !important;
    min-width:0;
    max-width:none !important;
    margin:0 !important;
    padding:10px 4px !important;
    background:transparent !important;
    border:0 !important;
    border-bottom:1px solid #e8f0f5 !important;
    border-radius:0;
  }

  .mf-desktop-navigation .mf-platform-group:last-child{
    padding-bottom:2px !important;
    border-bottom:0 !important;
  }

  .mf-desktop-navigation .mf-platform-group-title{
    display:block;
    margin:7px 0 0;
    color:var(--mf-nav-primary-dark);
    font-size:11px;
    font-weight:900;
    line-height:1.2;
    text-transform:uppercase;
  }

  .mf-desktop-navigation .mf-platform-links{
    position:static !important;
    display:grid !important;
    grid-template-columns:repeat(3, minmax(0, 1fr));
    gap:3px 5px;
    width:100% !important;
    min-width:0 !important;
    max-width:none !important;
    margin:0 !important;
    padding:0 !important;
    float:none !important;
    list-style:none !important;
    opacity:1 !important;
    visibility:inherit !important;
    transform:none !important;
    pointer-events:inherit !important;
  }

  .mf-desktop-navigation .mf-platform-menu *{
    pointer-events:inherit !important;
  }

  .mf-desktop-navigation .mf-platform-links li{
    width:auto !important;
    min-width:0 !important;
    max-width:none !important;
    margin:0 !important;
    padding:0 !important;
    float:none !important;
    border:0 !important;
    box-shadow:none !important;
  }

  .mf-desktop-navigation .mf-platform-links a{
    display:block !important;
    width:auto !important;
    min-width:0 !important;
    max-width:none !important;
    min-height:0 !important;
    padding:7px 9px !important;
    border-radius:8px !important;
    background:var(--mf-nav-bg-soft) !important;
    border:0 !important;
    box-shadow:none !important;
    color:var(--mf-nav-text) !important;
    font-size:12px !important;
    font-weight:700 !important;
    line-height:1.25 !important;
    text-decoration:none !important;
  }

  .mf-desktop-navigation .mf-platform-links a:hover,
  .mf-desktop-navigation .mf-platform-links a:focus{
    background:var(--mf-nav-bg-hover) !important;
    color:var(--mf-nav-primary-dark) !important;
  }

  .mf-desktop-search{
    width:200px;
    height:40px;
  }

  .mf-desktop-search button{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:7px;
    min-width:76px;
  }
}

@media (min-width:769px) and (max-width:1100px){
  .mf-desktop-topbar-inner{
    grid-template-columns:138px minmax(0, 1fr) 132px;
    gap:8px;
    padding-inline:12px;
  }

  .mf-desktop-logo img{
    max-width:132px;
    height:34px;
  }

  .mf-desktop-navigation .mf-primary-nav-list{
    gap:0 !important;
  }

  .mf-desktop-navigation .mf-primary-nav-list > .mf-nav-item > a{
    padding-inline:7px !important;
    font-size:12px !important;
  }

  .mf-desktop-navigation .mf-platform-menu{
    width:min(520px, calc(100vw - 230px));
    min-width:440px !important;
  }

  .mf-desktop-navigation .mf-platform-group{
    grid-template-columns:92px minmax(0, 1fr);
    gap:8px;
  }

  .mf-desktop-navigation .mf-platform-links{
    grid-template-columns:repeat(2, minmax(0, 1fr));
  }

  .mf-desktop-search{
    width:132px;
  }

  .mf-desktop-search button{
    min-width:34px;
    width:34px;
    padding:0;
  }

  .mf-desktop-search .mf-search-label{
    position:absolute;
    width:1px;
    height:1px;
    overflow:hidden;
    clip:rect(0, 0, 0, 0);
    white-space:nowrap;
  }
}

@media (max-width:768px){
  .mobile-top-inner{
    display:grid !important;
    grid-template-columns:44px minmax(0, 1fr) 44px;
    align-items:center;
    gap:8px;
    padding:8px 12px;
  }

  .mobile-logo{
    grid-column:2;
    grid-row:1;
    justify-self:center;
  }

  .menu-toggle{
    grid-column:1;
    grid-row:1;
  }

  .guides-toggle{
    grid-column:3;
    grid-row:1;
  }

  .mobile-top-bar .menu-toggle,
  .mobile-top-bar .guides-toggle{
    width:40px;
    height:40px;
    margin:0;
    padding:0;
    background:#dceff8 !important;
    border:1px solid #83bdd9 !important;
    border-radius:11px;
    color:var(--mf-nav-primary-dark) !important;
    box-shadow:0 4px 12px rgba(4,82,129,.14) !important;
  }

  .mobile-top-bar .menu-toggle:hover,
  .mobile-top-bar .menu-toggle:focus,
  .mobile-top-bar .guides-toggle:hover,
  .mobile-top-bar .guides-toggle:focus{
    background:#c9e7f5 !important;
    border-color:var(--mf-nav-primary) !important;
    color:#033f63 !important;
  }

  .mobile-top-menu,
  .mobile-guides-menu{
    margin:8px 10px 10px;
    padding:12px;
    border-radius:15px;
    box-shadow:var(--mf-nav-panel-shadow);
  }

  .mobile-top-menu .mf-primary-nav-list{
    gap:4px;
  }

  .mobile-top-menu .mf-primary-nav-list > .mf-nav-item > a,
  .mobile-top-menu .mobile-menu-row > a{
    min-height:42px;
    padding:0 12px;
    border:1px solid transparent;
    border-radius:10px;
    color:var(--mf-nav-text);
    font-size:15px;
    font-weight:800;
    text-decoration:none;
  }

  .mobile-top-menu .mf-primary-nav-list > .mf-nav-item > a:hover,
  .mobile-top-menu .mobile-menu-row > a:hover{
    border-color:#c7e0ee;
    background:var(--mf-nav-bg-hover);
    color:var(--mf-nav-primary-dark);
  }

  .mobile-top-menu .mf-primary-nav-list > .current-menu-item > a,
  .mobile-top-menu .current-menu-item > .mobile-menu-row > a{
    border-color:var(--mf-nav-primary);
    background:var(--mf-nav-primary);
    color:#fff;
    box-shadow:0 4px 12px rgba(6,104,161,.18);
  }

  .mobile-submenu-toggle span{
    width:8px;
    height:8px;
    border-right:2px solid currentColor;
    border-bottom:2px solid currentColor;
    transform:rotate(45deg) translate(-1px, -1px);
    transition:transform .16s ease;
  }

  .mobile-menu-item-has-children.is-open .mobile-submenu-toggle span{
    transform:rotate(225deg) translate(-1px, -1px);
  }

  .mobile-top-menu .mf-platform-menu{
    grid-template-columns:repeat(3, minmax(0, 1fr));
    gap:6px;
    padding:10px;
    background:linear-gradient(180deg, #f4f9fc 0%, #eef6fa 100%);
    border:1px solid #cfe4ef;
    border-radius:12px;
  }

  .mobile-top-menu .mf-platform-menu-header{
    grid-column:1 / -1;
    order:0;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:10px;
    margin:0;
    padding:0 2px 9px;
    border:0;
    border-bottom:1px solid #d9e9f2;
  }

  .mobile-top-menu .mf-platform-menu-header > span{
    color:var(--mf-heading);
    font-size:13px;
    font-weight:900;
  }

  .mobile-top-menu .mf-platform-menu-header > a{
    min-height:30px;
    padding:0 12px;
    border:1px solid var(--mf-nav-primary);
    border-radius:999px;
    background:var(--mf-nav-primary);
    color:#fff;
    font-size:12px;
    font-weight:900;
  }

  .mobile-top-menu .mf-platform-group{
    display:contents;
    margin:0;
    padding:0;
    border:0;
    background:transparent;
  }

  .mobile-platform-group-toggle{
    order:1;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:5px;
    width:100%;
    min-width:0;
    min-height:40px;
    margin:0;
    padding:7px 5px;
    border:1px solid #cfe4ef;
    border-radius:9px;
    background:#fff;
    color:var(--mf-nav-primary-dark);
    font-family:inherit;
    font-size:12px;
    font-weight:900;
    line-height:1.25;
    text-align:center;
    cursor:pointer;
    box-shadow:0 1px 2px rgba(16,42,67,.04);
    transition:background .16s ease, border-color .16s ease, color .16s ease, box-shadow .16s ease;
  }

  .mobile-platform-group-toggle:hover,
  .mobile-platform-group-toggle:focus{
    background:var(--mf-nav-bg-hover);
    color:var(--mf-nav-primary-dark);
  }

  .mobile-platform-group-toggle[aria-expanded="true"]{
    border-color:var(--mf-nav-primary);
    background:var(--mf-nav-primary);
    color:#fff;
    box-shadow:0 4px 10px rgba(6,104,161,.18);
  }

  .mf-platform-count{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-width:21px;
    height:20px;
    padding:0 5px;
    border-radius:999px;
    background:#edf6fb;
    color:var(--mf-nav-primary-dark);
    font-size:10px;
  }

  .mobile-platform-group-toggle[aria-expanded="true"] .mf-platform-count{
    background:rgba(255,255,255,.2);
    color:#fff;
  }

  .mf-platform-chevron{
    display:none;
  }

  .mobile-top-menu .mf-platform-links{
    grid-column:1 / -1;
    order:2;
    display:grid;
    grid-template-columns:repeat(2, minmax(0, 1fr));
    gap:5px;
    margin:2px 0 0;
    padding:9px 0 0;
    border-top:1px solid #d9e9f2;
    list-style:none;
  }

  .mobile-top-menu .mf-platform-links[hidden]{
    display:none !important;
  }

  .mobile-top-menu .mf-platform-links li{
    margin:0 !important;
    padding:0 !important;
    border:0 !important;
    box-shadow:none !important;
  }

  .mobile-top-menu .mf-platform-links li a{
    display:flex;
    align-items:center;
    min-height:40px;
    padding:8px 10px;
    border-radius:8px;
    border:1px solid transparent !important;
    background:rgba(255,255,255,.82);
    box-shadow:none !important;
    color:var(--mf-nav-text);
    font-size:12px;
    line-height:1.3;
  }

  .mobile-top-menu .mf-platform-links li a:hover,
  .mobile-top-menu .mf-platform-links li a:focus{
    border-color:#b9d8e9 !important;
    background:#fff;
    color:var(--mf-nav-primary-dark);
  }
}

@media (max-width:350px){
  .mobile-platform-group-toggle{
    padding-inline:3px;
    font-size:11px;
  }

  .mobile-platform-group-toggle .mf-platform-count{
    display:none;
  }
}

/* =====================================================
   Final media presentation
===================================================== */

.mf-article-content :where(.wp-block-image, figure.wp-caption, .wp-caption, .gallery, .wp-block-gallery, .wp-block-embed, .mf-media-embed, .video_embed),
.post-details .entry-content :where(.wp-block-image, figure.wp-caption, .wp-caption, .gallery, .wp-block-gallery, .wp-block-embed, .mf-media-embed, .video_embed){
  margin:24px 0;
}

.mf-article-content :where(img),
.post-details .entry-content :where(img){
  max-width:100%;
  height:auto;
}

.mf-article-content :where(.wp-block-image a, .wp-caption a, .gallery a, .wp-block-gallery a, .mf-modern-gallery-link),
.post-details .entry-content :where(.wp-block-image a, .wp-caption a, .gallery a, .wp-block-gallery a, .mf-modern-gallery-link),
.mf-game-media-grid a{
  text-decoration:none !important;
}

.mf-article-content :where(.wp-block-image a, .wp-caption a),
.post-details .entry-content :where(.wp-block-image a, .wp-caption a){
  display:inline-block;
  max-width:100%;
  border-radius:16px;
  cursor:zoom-in;
}

.mf-article-content > img,
.mf-article-content p > img:only-child,
.mf-article-content .wp-block-image img,
.mf-article-content .wp-caption img,
.post-details .entry-content > img,
.post-details .entry-content p > img:only-child,
.post-details .entry-content .wp-block-image img,
.post-details .entry-content .wp-caption img{
  display:block;
  width:auto;
  max-width:100%;
  border:1px solid var(--mf-media-border);
  border-radius:16px;
  background:#fff;
  box-shadow:var(--mf-media-shadow);
}

.mf-article-content .aligncenter,
.post-details .entry-content .aligncenter{
  display:block;
  margin:24px auto;
}

.mf-article-content .alignleft,
.post-details .entry-content .alignleft{
  float:left;
  max-width:min(320px, 45%);
  margin:6px 24px 16px 0;
}

.mf-article-content .alignright,
.post-details .entry-content .alignright{
  float:right;
  max-width:min(320px, 45%);
  margin:6px 0 16px 24px;
}

.mf-article-content :where(.wp-caption, figure.wp-caption),
.post-details .entry-content :where(.wp-caption, figure.wp-caption){
  max-width:100%;
  padding:8px;
  border:1px solid var(--mf-media-border);
  border-radius:18px;
  background:#fff;
  box-shadow:var(--mf-media-shadow);
}

.mf-article-content :where(.wp-caption, figure.wp-caption) img,
.post-details .entry-content :where(.wp-caption, figure.wp-caption) img{
  width:100%;
  border:0;
  border-radius:12px;
  box-shadow:none;
}

.mf-article-content :where(figcaption, .wp-caption-text),
.post-details .entry-content :where(figcaption, .wp-caption-text){
  margin:8px 4px 2px;
  color:#667085;
  font-size:12px;
  font-weight:700;
  line-height:1.4;
  text-align:center;
}

.mf-inline-image{
  width:min(260px, 42%);
  padding:8px;
  border:1px solid var(--mf-media-border);
  border-radius:18px;
  background:#fff;
  box-shadow:var(--mf-media-shadow);
}

.mf-inline-image img{
  width:100%;
  border:0;
  border-radius:12px;
  box-shadow:none;
}

.mf-article-content :where(.video_embed, .mf-media-embed-video),
.post-details .entry-content :where(.video_embed, .mf-media-embed-video){
  position:relative;
  overflow:hidden;
  aspect-ratio:16 / 9;
  border:1px solid var(--mf-media-border);
  border-radius:18px;
  background:#07192a;
  box-shadow:var(--mf-media-shadow);
}

.mf-article-content :where(.wp-block-embed),
.post-details .entry-content :where(.wp-block-embed){
  overflow:hidden;
  padding:8px;
  border:1px solid var(--mf-media-border);
  border-radius:18px;
  background:#fff;
  box-shadow:var(--mf-media-shadow);
}

.mf-article-content :where(.wp-block-embed__wrapper),
.post-details .entry-content :where(.wp-block-embed__wrapper){
  position:relative;
  overflow:hidden;
  aspect-ratio:16 / 9;
  border-radius:13px;
  background:#07192a;
}

.mf-article-content :where(.video_embed, .wp-block-embed__wrapper, .mf-media-embed-video) iframe,
.post-details .entry-content :where(.video_embed, .wp-block-embed__wrapper, .mf-media-embed-video) iframe{
  position:absolute;
  inset:0;
  display:block;
  width:100% !important;
  height:100% !important;
  max-width:none;
  margin:0 !important;
  border:0;
  border-radius:0;
  aspect-ratio:auto;
}

.mf-youtube-privacy{
  position:relative;
  display:block;
  width:100%;
  overflow:hidden;
  aspect-ratio:16 / 9;
  border:1px solid var(--mf-media-border);
  border-radius:18px;
  background:#07192a;
  box-shadow:var(--mf-media-shadow);
  color:#fff;
  isolation:isolate;
}

.mf-youtube-privacy-frame{
  position:absolute;
  inset:0;
  z-index:1;
}

.mf-youtube-privacy-frame iframe{
  position:absolute;
  inset:0;
  display:block;
  width:100% !important;
  height:100% !important;
  border:0;
}

.mf-youtube-privacy-button{
  position:absolute;
  inset:0;
  z-index:2;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:18px;
  width:100%;
  height:100%;
  padding:24px;
  border:0;
  background:
    linear-gradient(135deg, rgba(7,25,42,.96), rgba(6,104,161,.78)),
    #07192a;
  color:#fff;
  cursor:pointer;
  font:inherit;
  text-align:left;
}

.mf-youtube-privacy-button:hover,
.mf-youtube-privacy-button:focus{
  background:
    linear-gradient(135deg, rgba(4,82,129,.98), rgba(6,104,161,.82)),
    #045281;
  outline:none;
}

.mf-youtube-privacy-button:focus-visible{
  outline:3px solid rgba(255,255,255,.58);
  outline-offset:-8px;
}

.mf-youtube-privacy-icon{
  position:relative;
  flex:0 0 auto;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:72px;
  height:72px;
  border:2px solid rgba(255,255,255,.72);
  border-radius:999px;
  background:rgba(255,255,255,.94);
  box-shadow:0 16px 34px rgba(0,0,0,.28);
}

.mf-youtube-privacy-icon::before{
  content:"";
  width:0;
  height:0;
  margin-left:5px;
  border-top:13px solid transparent;
  border-bottom:13px solid transparent;
  border-left:20px solid #0668a1;
}

.mf-embed-privacy.is-google-maps{
  aspect-ratio:4 / 3;
  background:#082033;
}

.mf-embed-privacy.is-google-maps .mf-youtube-privacy-button{
  background:
    linear-gradient(135deg, rgba(8,32,51,.96), rgba(6,104,161,.74)),
    #082033;
}

.mf-embed-privacy.is-google-maps .mf-youtube-privacy-icon::before{
  width:20px;
  height:20px;
  margin:0 0 5px;
  border:0;
  border-radius:50% 50% 50% 0;
  background:#0668a1;
  transform:rotate(-45deg);
}

.mf-embed-privacy.is-google-maps .mf-youtube-privacy-icon::after{
  content:"";
  position:absolute;
  top:50%;
  left:50%;
  width:8px;
  height:8px;
  border-radius:999px;
  background:#fff;
  transform:translate(-50%, -70%);
}

.mf-youtube-privacy-text{
  display:grid;
  gap:6px;
  max-width:440px;
}

.mf-youtube-privacy-text strong{
  color:#fff;
  font-size:20px;
  font-weight:900;
  line-height:1.15;
}

.mf-youtube-privacy-text span{
  color:rgba(255,255,255,.86);
  font-size:13px;
  font-weight:700;
  line-height:1.45;
}

.mf-youtube-privacy-link{
  position:absolute;
  right:18px;
  bottom:14px;
  z-index:3;
  display:inline-flex;
  align-items:center;
  min-height:30px;
  padding:6px 10px;
  border:1px solid rgba(255,255,255,.26);
  border-radius:999px;
  background:rgba(255,255,255,.12);
  color:#fff !important;
  font-size:12px;
  font-weight:800;
  line-height:1.2;
  text-decoration:none !important;
  backdrop-filter:blur(8px);
}

.mf-youtube-privacy-link:hover,
.mf-youtube-privacy-link:focus{
  background:rgba(255,255,255,.2);
  color:#fff !important;
  text-decoration:none !important;
}

.mf-youtube-privacy.is-loaded .mf-youtube-privacy-button,
.mf-youtube-privacy.is-loaded .mf-youtube-privacy-link{
  display:none;
}

.video_embed .mf-youtube-privacy,
.wp-block-embed__wrapper .mf-youtube-privacy{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  margin:0;
  border:0;
  border-radius:inherit;
  box-shadow:none;
}

.mf-article-content iframe:not(.instagram-media),
.post-details .entry-content iframe:not(.instagram-media){
  max-width:100%;
}

/* Abstaende nur am aeusseren In-Page-Auto-Ad-Container setzen.
   Google-Anker und Vignetten behalten ihre eigene Positionierung. */
:where(.mf-article-content, .post-details .entry-content) .google-auto-placed,
.mf-auto-ad-relocated{
  display:block !important;
  clear:both !important;
  float:none !important;
  max-width:100% !important;
  margin:28px auto !important;
  text-align:center;
}

:where(.mf-article-content, .post-details .entry-content) .google-auto-placed ins.adsbygoogle,
.mf-auto-ad-relocated ins.adsbygoogle{
  margin-top:0 !important;
  margin-bottom:0 !important;
}

/* Eine automatisch eingefuegte Anzeige zwischen vollstaendigen Kapiteln
   belegt eine eigene Rasterzeile, statt eine Kapitelkarte zu verdraengen. */
.mf-completion-chapter-grid > .google-auto-placed{
  grid-column:1 / -1;
  min-width:0;
  width:100%;
}

/* Google kann bei unbefuellten Slots ein grosses iframe in einem bereits
   auf 0 x 0 kollabierten ins zuruecklassen. Nur diese leeren Slots begrenzen. */
.google-auto-placed ins.adsbygoogle[data-ad-status="unfilled"],
.google-auto-placed ins.adsbygoogle[data-ad-status="unfill-optimized"]{
  overflow:hidden !important;
}

/* Google berechnet fuer breite mobile Anzeigen eigene Breiten und negative
   Seitenraender. Diese duerfen am ins/iframe nicht ueberschrieben werden. */

.mf-article-content > iframe[src*="youtube"],
.mf-article-content > iframe[src*="youtu.be"],
.mf-article-content > iframe[src*="youtube-nocookie"],
.mf-article-content > iframe[src*="vimeo"],
.mf-article-content p > iframe[src*="youtube"],
.mf-article-content p > iframe[src*="youtu.be"],
.mf-article-content p > iframe[src*="youtube-nocookie"],
.mf-article-content p > iframe[src*="vimeo"],
.post-details .entry-content > iframe[src*="youtube"],
.post-details .entry-content > iframe[src*="youtu.be"],
.post-details .entry-content > iframe[src*="youtube-nocookie"],
.post-details .entry-content > iframe[src*="vimeo"],
.post-details .entry-content p > iframe[src*="youtube"],
.post-details .entry-content p > iframe[src*="youtu.be"],
.post-details .entry-content p > iframe[src*="youtube-nocookie"],
.post-details .entry-content p > iframe[src*="vimeo"]{
  display:block;
  width:100% !important;
  height:auto;
  min-height:260px;
  margin:24px 0 !important;
  border:1px solid var(--mf-media-border);
  border-radius:18px;
  aspect-ratio:16 / 9;
  background:#07192a;
  box-shadow:var(--mf-media-shadow);
}

.mf-article-content video,
.post-details .entry-content video{
  display:block;
  width:100%;
  max-width:100%;
  height:auto;
  margin:24px 0;
  border:1px solid var(--mf-media-border);
  border-radius:18px;
  background:#07192a;
  box-shadow:var(--mf-media-shadow);
}

.mf-article-content a[href$=".jpg" i] img,
.mf-article-content a[href$=".jpeg" i] img,
.mf-article-content a[href$=".png" i] img,
.mf-article-content a[href$=".webp" i] img,
.mf-article-content a[href$=".avif" i] img,
.post-details .entry-content a[href$=".jpg" i] img,
.post-details .entry-content a[href$=".jpeg" i] img,
.post-details .entry-content a[href$=".png" i] img,
.post-details .entry-content a[href$=".webp" i] img,
.post-details .entry-content a[href$=".avif" i] img{
  cursor:zoom-in;
}

.mf-article-content .wp-block-gallery,
.post-details .entry-content .wp-block-gallery{
  display:grid;
  grid-template-columns:repeat(auto-fill, minmax(130px, 1fr));
  gap:12px;
}

.mf-article-content .wp-block-gallery :where(.wp-block-image),
.post-details .entry-content .wp-block-gallery :where(.wp-block-image){
  width:auto !important;
  margin:0 !important;
}

.mf-article-content .wp-block-gallery :where(.wp-block-image a),
.post-details .entry-content .wp-block-gallery :where(.wp-block-image a){
  display:block;
  overflow:hidden;
  border-radius:14px;
}

.mf-article-content .wp-block-gallery :where(.wp-block-image img),
.post-details .entry-content .wp-block-gallery :where(.wp-block-image img){
  width:100%;
  height:auto;
  aspect-ratio:1 / 1;
  object-fit:cover;
}

.mf-article-content .gallery,
.post-details .entry-content .gallery{
  display:grid;
  grid-template-columns:repeat(auto-fill, minmax(130px, 1fr));
  gap:12px;
}

.mf-article-content .gallery .gallery-item,
.post-details .entry-content .gallery .gallery-item{
  width:auto !important;
  margin:0 !important;
}

.mf-article-content .gallery .gallery-icon a,
.post-details .entry-content .gallery .gallery-icon a{
  display:block;
  overflow:hidden;
  border:1px solid var(--mf-media-border);
  border-radius:14px;
  background:#fff;
  box-shadow:0 6px 18px rgba(15,23,42,.07);
}

.mf-article-content .gallery img,
.post-details .entry-content .gallery img{
  display:block;
  width:100%;
  height:auto;
  aspect-ratio:1 / 1;
  object-fit:cover;
  border:0 !important;
  border-radius:0;
  box-shadow:none;
  transition:transform .16s ease;
}

.mf-article-content .gallery a:hover img,
.post-details .entry-content .gallery a:hover img{
  transform:scale(1.04);
}

.mf-modern-gallery{
  display:grid;
  grid-template-columns:repeat(var(--mf-gallery-columns, 3), minmax(0, 1fr));
  gap:12px;
  margin:24px 0;
}

.mf-modern-gallery-item{
  min-width:0;
  margin:0;
}

.mf-modern-gallery-link{
  display:block;
  overflow:hidden;
  border:1px solid var(--mf-media-border);
  border-radius:16px;
  background:#fff;
  box-shadow:0 6px 18px rgba(15,23,42,.07);
  cursor:zoom-in;
  transition:transform .16s ease, border-color .16s ease, box-shadow .16s ease;
}

.mf-modern-gallery-link:hover,
.mf-modern-gallery-link:focus{
  transform:translateY(-2px);
  border-color:#b9d8e9;
  box-shadow:0 12px 26px rgba(15,23,42,.1);
}

.mf-modern-gallery-link:focus-visible{
  outline:2px solid var(--mf-media-blue);
  outline-offset:3px;
}

.mf-modern-gallery-img{
  display:block;
  width:100%;
  height:auto;
  aspect-ratio:16 / 9;
  object-fit:cover;
  border:0;
  border-radius:0;
  box-shadow:none;
  transition:transform .16s ease;
}

.mf-modern-gallery-link:hover .mf-modern-gallery-img,
.mf-modern-gallery-link:focus .mf-modern-gallery-img{
  transform:scale(1.035);
}

.mf-modern-gallery-caption{
  margin:8px 4px 0;
  color:#667085;
  font-size:12px;
  font-weight:700;
  line-height:1.4;
  text-align:center;
}

.mf-game-media-section{
  padding:20px;
  border:1px solid var(--mf-media-border);
  border-radius:18px;
  background:#fff;
  box-shadow:0 8px 24px rgba(15,23,42,.06);
}

.mf-game-media-section h2{
  margin-top:0;
}

.mf-game-media-grid{
  grid-template-columns:repeat(auto-fill, minmax(136px, 1fr));
  gap:10px;
}

.mf-game-media-grid a{
  position:relative;
  border:1px solid var(--mf-media-border);
  border-radius:14px;
  background:var(--mf-media-soft);
  box-shadow:0 6px 18px rgba(15,23,42,.07);
  transition:transform .16s ease, border-color .16s ease, box-shadow .16s ease;
}

.mf-game-media-grid a:hover{
  transform:translateY(-2px);
  border-color:#b9d8e9;
  box-shadow:0 12px 26px rgba(15,23,42,.1);
}

.related-gallery .gallery-item a{
  display:block;
  height:100%;
  padding:8px;
  border:1px solid var(--mf-media-border);
  border-radius:16px;
  background:#fff;
  text-decoration:none;
  box-shadow:0 6px 18px rgba(15,23,42,.06);
  transition:transform .16s ease, border-color .16s ease, box-shadow .16s ease;
}

.related-gallery .gallery-item a:hover{
  transform:translateY(-2px);
  border-color:#b9d8e9;
  box-shadow:0 12px 26px rgba(15,23,42,.1);
}

.related-gallery .gallery-thumb{
  width:100%;
  height:120px;
  border-radius:12px;
  object-fit:cover;
  transform:none;
}

.related-gallery .gallery-title{
  margin-top:9px;
  color:#111827;
  font-size:13px;
  font-weight:800;
  line-height:1.3;
  text-decoration:none;
}

.mf-lightbox{
  background:rgba(8,13,24,.88);
  backdrop-filter:blur(8px);
  animation:mf-lightbox-in .16s ease;
}

.mf-lightbox img{
  object-fit:contain;
  border:1px solid rgba(255,255,255,.18);
  border-radius:18px;
}

.mf-lightbox-close{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  box-shadow:0 10px 28px rgba(0,0,0,.22);
  transition:transform .16s ease, background .16s ease;
}

.mf-lightbox-close:hover{
  transform:scale(1.05);
  background:#e7f3fa;
}

.mf-lightbox-nav:focus-visible,
.mf-lightbox-close:focus-visible{
  outline:3px solid rgba(255,255,255,.7);
  outline-offset:3px;
}

@keyframes mf-lightbox-in{
  from{
    opacity:0;
  }

  to{
    opacity:1;
  }
}

@media (max-width:700px){
  .mf-article-content :where(.wp-block-image, figure.wp-caption, .wp-caption, .gallery, .wp-block-gallery, .wp-block-embed, .mf-media-embed, .video_embed),
  .post-details .entry-content :where(.wp-block-image, figure.wp-caption, .wp-caption, .gallery, .wp-block-gallery, .wp-block-embed, .mf-media-embed, .video_embed){
    margin:18px 0;
  }

  .mf-article-content .alignleft,
  .mf-article-content .alignright,
  .post-details .entry-content .alignleft,
  .post-details .entry-content .alignright{
    float:none;
    max-width:100%;
    margin:18px auto;
  }

  .mf-inline-image{
    float:none;
    width:100%;
    max-width:340px;
    margin:18px auto;
  }

  .mf-article-content :where(.video_embed, .wp-block-embed, .mf-media-embed-video),
  .post-details .entry-content :where(.video_embed, .wp-block-embed, .mf-media-embed-video),
  .mf-game-media-section{
    border-radius:14px;
  }

  .mf-article-content .gallery,
  .post-details .entry-content .gallery,
  .mf-modern-gallery,
  .mf-game-media-grid,
  .related-gallery{
    grid-template-columns:repeat(2, minmax(0, 1fr));
    gap:10px;
  }

  .mf-game-media-section{
    padding:14px;
  }

  .related-gallery .gallery-thumb{
    height:104px;
  }

  .mf-article-content > iframe[src*="youtube"],
  .mf-article-content > iframe[src*="youtu.be"],
  .mf-article-content > iframe[src*="youtube-nocookie"],
  .mf-article-content > iframe[src*="vimeo"],
  .mf-article-content p > iframe[src*="youtube"],
  .mf-article-content p > iframe[src*="youtu.be"],
  .mf-article-content p > iframe[src*="youtube-nocookie"],
  .mf-article-content p > iframe[src*="vimeo"],
  .post-details .entry-content > iframe[src*="youtube"],
  .post-details .entry-content > iframe[src*="youtu.be"],
  .post-details .entry-content > iframe[src*="youtube-nocookie"],
  .post-details .entry-content > iframe[src*="vimeo"],
  .post-details .entry-content p > iframe[src*="youtube"],
  .post-details .entry-content p > iframe[src*="youtu.be"],
  .post-details .entry-content p > iframe[src*="youtube-nocookie"],
  .post-details .entry-content p > iframe[src*="vimeo"]{
    min-height:190px;
    margin:18px 0 !important;
    border-radius:14px;
  }

  .mf-youtube-privacy-button{
    flex-direction:column;
    gap:12px;
    padding:18px 16px 46px;
    text-align:center;
  }

  .mf-youtube-privacy-icon{
    width:56px;
    height:56px;
  }

  .mf-youtube-privacy-icon::before{
    border-top-width:10px;
    border-bottom-width:10px;
    border-left-width:16px;
  }

  .mf-youtube-privacy-text{
    max-width:280px;
  }

  .mf-youtube-privacy-text strong{
    font-size:17px;
  }

  .mf-youtube-privacy-text span{
    font-size:12px;
  }

  .mf-youtube-privacy-link{
    right:50%;
    bottom:10px;
    transform:translateX(50%);
    max-width:calc(100% - 24px);
    justify-content:center;
    text-align:center;
  }

  .mf-lightbox{
    padding:16px;
  }

  .mf-lightbox-close{
    top:12px;
    right:12px;
  }
}

/* =====================================================
   Spiele-Serien Landingpage
===================================================== */

.mf-series-page{
  margin-top:28px;
}

.mf-series-hero,
.mf-series-featured,
.mf-series-directory{
  margin-bottom:24px;
}

.mf-series-hero{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:24px;
  padding:28px;
  border:1px solid #dbe8f1;
  border-radius:18px;
  background:linear-gradient(180deg, #ffffff 0%, #f4f9fc 100%);
  box-shadow:0 12px 30px rgba(15,23,42,.07);
}

.mf-series-hero h1{
  margin:0 0 8px;
  color:#0f172a;
  font-size:clamp(30px, 4vw, 46px);
  line-height:1.08;
}

.mf-series-hero p{
  max-width:72ch;
  margin:0;
  color:#4b5563;
  font-size:16px;
  line-height:1.65;
}

.mf-series-stats{
  display:grid;
  grid-template-columns:repeat(2, minmax(92px, 1fr));
  gap:10px;
  flex:0 0 auto;
}

.mf-series-stats div{
  min-width:100px;
  padding:13px 14px;
  border:1px solid #cfe2ee;
  border-radius:14px;
  background:#fff;
  text-align:center;
}

.mf-series-stats strong{
  display:block;
  color:#045281;
  font-size:26px;
  line-height:1;
}

.mf-series-stats span{
  display:block;
  margin-top:5px;
  color:#667085;
  font-size:12px;
  font-weight:900;
  text-transform:uppercase;
}

.mf-section-heading,
.mf-series-directory-head{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:18px;
  margin-bottom:14px;
}

.mf-section-heading h2,
.mf-series-directory-head h2{
  margin:0;
  color:#111827;
  font-size:24px;
  line-height:1.15;
}

.mf-section-heading a{
  color:#0668a1;
  font-size:14px;
  font-weight:900;
  text-decoration:none;
}

.mf-section-heading a:hover{
  text-decoration:underline;
}

.mf-series-featured-grid{
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:14px;
}

.mf-series-card{
  min-width:0;
}

.mf-series-card a{
  display:grid;
  grid-template-rows:auto 1fr;
  height:100%;
  overflow:hidden;
  border:1px solid #dfe8ef;
  border-radius:16px;
  background:#fff;
  color:inherit;
  text-decoration:none;
  box-shadow:0 8px 22px rgba(15,23,42,.06);
  transition:transform .16s ease, border-color .16s ease, box-shadow .16s ease;
}

.mf-series-card a:hover,
.mf-series-card a:focus{
  transform:translateY(-2px);
  border-color:#b9d8e9;
  box-shadow:0 16px 34px rgba(4,82,129,.13);
}

.mf-series-card-media{
  display:block;
  aspect-ratio:16 / 9;
  background:#eef7fb;
}

.mf-series-card-img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}

.mf-series-card-body{
  padding:15px 16px 17px;
}

.mf-series-card-meta{
  margin-bottom:7px;
  color:#0668a1;
  font-size:12px;
  font-weight:900;
  text-transform:uppercase;
}

.mf-series-card h2{
  margin:0 0 7px;
  color:#111827;
  font-size:20px;
  line-height:1.18;
}

.mf-series-card p{
  margin:0;
  color:#4b5563;
  font-size:14px;
  line-height:1.45;
}

.mf-series-directory{
  padding:22px;
  border:1px solid #dbe8f1;
  border-radius:18px;
  background:#fff;
  box-shadow:0 10px 26px rgba(15,23,42,.06);
}

.mf-series-directory-head p{
  margin:5px 0 0;
  color:#667085;
  font-size:14px;
}

.mf-series-search{
  flex:0 1 340px;
}

.mf-series-search input{
  width:100%;
  min-height:44px;
  padding:0 14px;
  border:1px solid #cfe2ee;
  border-radius:12px;
  background:#f8fbfd;
  color:#111827;
  font:inherit;
}

.mf-series-search input:focus{
  outline:2px solid rgba(6,104,161,.22);
  border-color:#0668a1;
  background:#fff;
}

.mf-series-details-list{
  display:grid;
  gap:10px;
}

.mf-series-detail{
  border:1px solid #e2e8f0;
  border-radius:14px;
  background:#fff;
  overflow:hidden;
}

.mf-series-detail summary{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  min-height:60px;
  padding:14px 16px;
  cursor:pointer;
  list-style:none;
}

.mf-series-detail summary::-webkit-details-marker{
  display:none;
}

.mf-series-detail summary strong{
  display:block;
  color:#111827;
  font-size:17px;
  line-height:1.25;
}

.mf-series-detail summary small{
  display:block;
  margin-top:3px;
  color:#667085;
  font-size:12px;
  font-weight:900;
  text-transform:uppercase;
}

.mf-series-detail summary b{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:30px;
  height:30px;
  border-radius:999px;
  background:#e7f3fa;
  color:#045281;
  font-size:20px;
  line-height:1;
}

.mf-series-detail[open] summary{
  border-bottom:1px solid #edf2f7;
  background:#f8fbfd;
}

.mf-series-detail[open] summary b{
  transform:rotate(45deg);
}

.mf-series-game-strip{
  display:grid;
  grid-template-columns:repeat(6, minmax(0, 1fr));
  gap:10px;
  padding:14px 16px;
}

.mf-series-game{
  display:block;
  min-width:0;
  color:#111827;
  text-decoration:none;
}

.mf-series-game-thumb{
  display:block;
  aspect-ratio:1;
  overflow:hidden;
  border:1px solid #edf2f7;
  border-radius:12px;
  background:#eef7fb;
}

.mf-series-game-thumb img{
  width:100%;
  height:100%;
  object-fit:cover;
}

.mf-series-game-title{
  display:-webkit-box;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:2;
  overflow:hidden;
  margin-top:7px;
  color:#111827;
  font-size:12px;
  font-weight:800;
  line-height:1.25;
}

.mf-series-more{
  display:inline-flex;
  align-items:center;
  margin:0 16px 16px;
  padding:8px 12px;
  border-radius:999px;
  background:#0668a1;
  color:#fff;
  font-size:13px;
  font-weight:900;
  text-decoration:none;
}

.mf-series-more:hover{
  background:#045281;
  color:#fff;
}

.mf-series-card.is-hidden,
.mf-series-detail.is-hidden{
  display:none;
}

.mf-series-no-results{
  margin:14px 0 0;
}

@media (max-width:900px){
  .mf-series-featured-grid{
    grid-template-columns:repeat(2, minmax(0, 1fr));
  }

  .mf-series-game-strip{
    grid-template-columns:repeat(3, minmax(0, 1fr));
  }
}

@media (max-width:700px){
  .mf-series-page{
    margin-top:18px;
  }

  .mf-series-hero,
  .mf-series-directory{
    padding:18px;
    border-radius:16px;
  }

  .mf-series-hero,
  .mf-section-heading,
  .mf-series-directory-head{
    align-items:stretch;
    flex-direction:column;
  }

  .mf-series-stats{
    grid-template-columns:repeat(2, minmax(0, 1fr));
  }

  .mf-series-featured-grid{
    grid-template-columns:1fr;
  }

  .mf-series-search{
    flex-basis:auto;
  }

  .mf-series-game-strip{
    grid-template-columns:repeat(2, minmax(0, 1fr));
    padding:12px;
  }

  .mf-series-detail summary{
    padding:13px 12px;
  }

  .mf-series-more{
    margin:0 12px 14px;
  }
}

/* =====================================================
   Rendering Performance
===================================================== */

@supports (content-visibility:auto){
  .mf-related-news,
  .mf-comments,
  .mf-article-nav,
  .mf-guide-sequence-section,
  .mf-home-popular,
  .mf-home-games,
  .mf-home-reviews,
  .mf-home-comments,
  .mf-game-media-section,
  .mf-series-directory,
  .mf-games-database,
  .mf-release-calendar{
    content-visibility:auto;
    contain-intrinsic-size:1px 420px;
  }

  @media (max-width:700px){
    .mf-related-news,
    .mf-comments,
    .mf-article-nav,
    .mf-guide-sequence-section,
    .mf-home-popular,
    .mf-home-games,
    .mf-home-reviews,
    .mf-home-comments,
    .mf-game-media-section,
    .mf-series-directory,
    .mf-games-database,
    .mf-release-calendar{
      contain-intrinsic-size:1px 520px;
    }
  }
}

/* =====================================================
   Home: layout, sections and list items
===================================================== */

.mf-home-page .mf-container{
  max-width:1200px;
}

.mf-home-primary-grid{
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:18px;
  margin-bottom:18px;
  align-items:start;
  min-height:0;
}

.mf-home-side-stack{
  display:flex;
  flex-direction:column;
  gap:18px;
  min-width:0;
}

.mf-home-secondary-grid{
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:18px;
  align-items:start;
}

.mf-home-primary-grid .mf-home-section,
.mf-home-secondary-grid .mf-home-section,
.mf-home-side-stack .mf-home-section{
  height:auto;
  min-height:0;
  margin:0;
}

.mf-home-page .mf-home-news,
.mf-home-page .mf-home-guides,
.mf-home-page .mf-home-reviews,
.mf-home-page .mf-home-comments,
.mf-home-page .mf-home-games,
.mf-home-page .mf-home-popular{
  min-height:0;
  padding:18px;
  border:1px solid #dce8f0;
  border-radius:16px;
  background:#fff;
  box-shadow:0 5px 16px rgba(15,23,42,.05);
}

.mf-home-page .mf-home-section h2{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin:0 0 14px;
  color:#111827;
  font-size:20px;
  font-weight:850;
  line-height:1.22;
}

.mf-home-page .mf-home-list{
  gap:9px;
}

.mf-home-page .mf-home-card a{
  min-height:74px;
  padding:8px;
  border:1px solid transparent;
  border-radius:12px;
  transition:background .15s ease, border-color .15s ease;
}

.mf-home-page .mf-home-card a:hover,
.mf-home-page .mf-home-card a:focus{
  border-color:#d6e7f1;
  background:#f8fbfd;
  text-decoration:none;
}

.mf-home-page .mf-home-thumb{
  width:var(--mf-home-thumb-width);
  height:var(--mf-home-thumb-height);
  border-radius:10px;
}

.mf-home-page .mf-news-title,
.mf-home-page .mf-guide-title-small,
.mf-home-page .mf-latest-game-title{
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
  font-size:15px;
}

.mf-home-page .mf-news-excerpt,
.mf-home-page .mf-guide-excerpt-small{
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
}

.mf-home-review-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:8px;
}

.mf-home-review-head .mf-news-title{
  min-width:0;
}

.mf-home-review-head .mf-review-rating{
  min-width:34px;
  min-height:26px;
  padding:4px 8px;
  border-radius:999px;
  background:#0668a1;
  font-size:12px;
  box-shadow:0 4px 12px rgba(4,82,129,.16);
}

.mf-home-page .mf-section-archive{
  margin-top:12px;
}

.mf-home-page .mf-section-archive a{
  display:inline-flex;
  align-items:center;
  min-height:30px;
  padding:5px 10px;
  border-radius:999px;
  background:#eef7fb;
  color:#045281;
  font-size:13px;
  font-weight:850;
  text-decoration:none;
}

.mf-home-page .mf-section-archive a:hover,
.mf-home-page .mf-section-archive a:focus{
  background:#dff0f8;
  text-decoration:none;
}

@media (max-width:768px){
  .mf-home-primary-grid,
  .mf-home-secondary-grid,
  .mf-home-side-stack{
    display:flex !important;
    flex-direction:column;
    gap:14px;
  }

  .mf-home-page .mf-home-news,
  .mf-home-page .mf-home-guides,
  .mf-home-page .mf-home-reviews,
  .mf-home-page .mf-home-comments,
  .mf-home-page .mf-home-games,
  .mf-home-page .mf-home-popular{
    padding:14px;
    border-radius:14px;
  }

  .mf-home-page .mf-home-section h2{
    font-size:18px;
  }
}

/* =====================================================
   Home layout final order and pill safety
===================================================== */

.mf-home-full-row{
  min-width:0;
  margin-bottom:18px;
}

.mf-home-full-row .mf-home-section{
  height:auto;
  margin:0;
}

.mf-home-page .mf-home-reviews .mf-home-list{
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:10px;
}

.mf-home-page .mf-home-reviews .mf-home-card a{
  height:100%;
}

.mf-home-page .mf-home-comment-list{
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:10px;
}

.mf-home-page .mf-home-comment-card a{
  grid-template-columns:42px minmax(0, 1fr);
  align-items:start;
  height:100%;
}

.mf-home-comment-avatar{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:42px;
  height:42px;
  border-radius:50%;
  background:#e7f3fa;
  color:#045281;
  font-size:16px;
  font-weight:900;
}

.mf-home-comment-content,
.mf-home-comment-head,
.mf-home-comment-excerpt,
.mf-home-comment-post{
  display:block;
  min-width:0;
}

.mf-home-comment-head{
  display:flex;
  align-items:baseline;
  justify-content:space-between;
  flex-wrap:wrap;
  gap:10px;
  margin-bottom:3px;
}

.mf-home-comment-head strong{
  min-width:0;
  overflow-wrap:anywhere;
  color:#0b1728;
  font-size:14px;
  line-height:1.35;
}

.mf-home-comment-head time,
.mf-home-comment-post{
  color:#475467;
  font-size:12px;
  line-height:1.4;
}

.mf-home-comment-head time{
  flex:0 0 auto;
}

.mf-home-comment-excerpt{
  display:-webkit-box;
  overflow:hidden;
  overflow-wrap:anywhere;
  color:#344054;
  font-size:13px;
  line-height:1.45;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:2;
}

.mf-home-comment-post{
  margin-top:4px;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.mf-home-page .mf-news-content,
.mf-home-page .mf-guide-text-small,
.mf-home-page .mf-game-meta,
.mf-home-page .mf-home-card a > *{
  min-width:0;
}

.mf-home-page .mf-news-title,
.mf-home-page .mf-guide-title-small,
.mf-home-page .mf-latest-game-title,
.mf-home-page .mf-news-excerpt,
.mf-home-page .mf-guide-excerpt-small{
  overflow-wrap:anywhere;
}

.mf-home-page :where(.mf-home-hero-actions, .mf-section-archive, .mf-game-card-actions, .mf-more-game-links, .mf-lm .lm-pills, .lm-pills, .mf-article-cats, .mf-guide-sequence-main, .mf-guide-sequence-links),
:where(.mf-home-hero-actions, .mf-section-archive, .mf-game-card-actions, .mf-more-game-links, .mf-lm .lm-pills, .lm-pills, .mf-article-cats, .mf-guide-sequence-main, .mf-guide-sequence-links){
  min-width:0;
  max-width:100%;
  box-sizing:border-box;
}

:where(.mf-home-hero-actions a, .mf-section-archive a, .mf-game-card-action, .mf-more-game a, .mf-more-game-links a, .mf-lm .lm-pill, .lm-pill, .mf-guide-sequence-overview, .mf-guide-sequence-progress, .mf-article-cats a){
  box-sizing:border-box;
  max-width:100%;
  min-width:0;
  white-space:normal;
  overflow-wrap:anywhere;
  text-align:center;
  align-items:center;
  justify-content:center;
}

@media (max-width:768px){
  .mf-home-full-row{
    margin-bottom:14px;
  }

  .mf-home-page .mf-home-reviews .mf-home-list{
    display:flex;
    flex-direction:column;
    gap:9px;
  }

  .mf-home-page .mf-home-comment-list{
    display:flex;
    flex-direction:column;
    gap:9px;
  }

  .mf-home-page .mf-container,
  .mf-home-primary-grid,
  .mf-home-full-row,
  .mf-home-secondary-grid,
  .mf-home-primary-grid > *,
  .mf-home-full-row > *,
  .mf-home-secondary-grid > *{
    width:100%;
    min-width:0;
    max-width:100%;
    box-sizing:border-box;
  }

  .mf-home-page .mf-home-section{
    width:100%;
    max-width:100%;
    margin-right:0;
    margin-left:0;
    box-sizing:border-box;
  }

  .mf-home-page .mf-section-archive{
    justify-content:center;
  }

  .mf-home-hero-actions{
    display:flex;
    justify-content:center;
  }

  .mf-home-hero-actions a{
    width:auto;
    flex:0 1 auto;
  }
}

/* =====================================================
   Back to top
===================================================== */

.mf-back-to-top{
  position:fixed;
  right:18px;
  bottom:calc(env(safe-area-inset-bottom, 0px) + 92px);
  z-index:890;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:46px;
  height:46px;
  border:1px solid #b9d8e9;
  border-radius:999px;
  background:#0668a1;
  color:#fff;
  font-size:22px;
  font-weight:900;
  line-height:1;
  box-shadow:0 14px 30px rgba(4,82,129,.22);
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transform:translateY(10px);
  transition:opacity .18s ease, transform .18s ease, background .15s ease, border-color .15s ease;
}

.mf-back-to-top:hover,
.mf-back-to-top:focus{
  border-color:#045281;
  background:#045281;
  outline:none;
}

.mf-back-to-top:focus-visible{
  outline:3px solid rgba(6,104,161,.24);
  outline-offset:3px;
}

.mf-back-to-top.is-visible{
  visibility:visible;
  opacity:1;
  pointer-events:auto;
  transform:translateY(0);
}

@media (prefers-reduced-motion:reduce){
  .mf-back-to-top{
    transition:none;
  }
}

@media (max-width:768px){
  .mf-back-to-top{
    right:12px;
    bottom:calc(env(safe-area-inset-bottom, 0px) + 82px);
    width:42px;
    height:42px;
    font-size:20px;
  }
}

/* =====================================================
   Games database and release calendar
===================================================== */

.mf-game-archive-toolbar{
  display:flex;
  justify-content:flex-end;
  margin:0 0 14px;
  padding:12px 14px;
  border:1px solid #dce8f0;
  border-radius:16px;
  background:#fff;
  box-shadow:0 5px 16px rgba(15,23,42,.05);
}

.mf-game-archive-toolbar label{
  display:flex;
  align-items:center;
  gap:10px;
  color:#4b5563;
  font-size:13px;
  font-weight:850;
}

.mf-game-archive-toolbar select,
.mf-games-database-controls select,
.mf-games-database-controls input{
  min-height:40px;
  padding:0 12px;
  border:1px solid #b9d8e9;
  border-radius:999px;
  background:#f8fbfd;
  color:#111827;
  font:inherit;
  font-size:14px;
}

.mf-games-database,
.mf-release-calendar{
  margin:24px 0;
  padding:18px;
  border:1px solid #dce8f0;
  border-radius:18px;
  background:#fff;
  box-shadow:0 6px 18px rgba(15,23,42,.06);
}

.mf-games-database-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:16px;
  margin:0 0 16px;
}

.mf-games-database-head h2{
  margin:0 0 4px;
  color:#111827;
  font-size:24px;
  font-weight:900;
  line-height:1.15;
}

.mf-games-database-head p{
  margin:0;
  color:#4b5563;
  font-size:14px;
  line-height:1.5;
}

.mf-games-database-head > span{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:46px;
  min-height:36px;
  padding:6px 12px;
  border:1px solid #cfe3ef;
  border-radius:999px;
  background:#eef7fb;
  color:#045281;
  font-size:15px;
  font-weight:900;
}

.mf-games-database-controls{
  display:grid;
  grid-template-columns:minmax(220px, 1.4fr) repeat(3, minmax(170px, 1fr));
  gap:10px;
  margin-bottom:14px;
}

.mf-games-database-controls label,
.mf-games-database-controls input,
.mf-games-database-controls select{
  width:100%;
}

.mf-games-db-grid{
  display:grid;
  grid-template-columns:repeat(auto-fill, minmax(280px, 1fr));
  gap:12px;
}

.mf-games-db-card{
  min-width:0;
  border:1px solid #e7edf2;
  border-radius:14px;
  background:#fff;
  overflow:hidden;
  box-shadow:0 2px 8px rgba(15,23,42,.035);
}

.mf-games-db-card[hidden]{
  display:none;
}

.mf-games-db-card a{
  display:grid;
  grid-template-columns:84px minmax(0, 1fr);
  gap:12px;
  min-height:92px;
  padding:10px;
  color:inherit;
  text-decoration:none;
}

.mf-games-db-card a:hover,
.mf-games-db-card a:focus{
  background:#f8fbfd;
  text-decoration:none;
}

.mf-games-db-thumb{
  display:block;
  width:84px;
  height:84px;
  overflow:hidden;
  border-radius:12px;
  background:#f3f4f6;
}

.mf-games-db-thumb img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
}

.mf-games-db-content{
  display:flex;
  flex-direction:column;
  justify-content:center;
  min-width:0;
}

.mf-games-db-content > strong{
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
  color:#111827;
  font-size:15px;
  font-weight:850;
  line-height:1.28;
}

.mf-games-db-meta{
  display:flex;
  flex-wrap:wrap;
  gap:5px;
  margin-top:6px;
}

.mf-games-db-meta b{
  padding:2px 7px;
  border-radius:999px;
  background:#eef7fb;
  color:#045281;
  font-size:11px;
  font-weight:850;
  line-height:1.2;
}

.mf-games-db-excerpt{
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  margin-top:6px;
  overflow:hidden;
  color:#4b5563;
  font-size:12px;
  line-height:1.4;
}

.mf-games-db-empty{
  margin:14px 0 0;
}

.mf-release-today{
  display:grid;
  grid-template-columns:repeat(auto-fit, minmax(220px, 1fr));
  gap:10px;
}

.mf-release-today a,
.mf-release-today p{
  display:flex;
  flex-direction:column;
  gap:4px;
  margin:0;
  padding:14px;
  border:1px solid #fed7aa;
  border-radius:14px;
  background:#fff7ed;
  color:#111827;
  text-decoration:none;
}

.mf-release-today strong{
  font-size:16px;
  line-height:1.25;
}

.mf-release-today span{
  color:#b45309;
  font-size:13px;
  font-weight:900;
}

.mf-release-all{
  margin-top:14px;
}

.mf-release-all summary{
  display:inline-flex;
  min-height:34px;
  padding:8px 12px;
  border-radius:999px;
  background:#eef7fb;
  color:#045281;
  font-size:13px;
  font-weight:900;
  cursor:pointer;
}

.mf-release-months{
  display:grid;
  grid-template-columns:repeat(auto-fit, minmax(240px, 1fr));
  gap:12px;
  margin-top:14px;
}

.mf-release-month{
  border:1px solid #e7edf2;
  border-radius:14px;
  background:#fff;
  overflow:hidden;
}

.mf-release-month h3{
  margin:0;
  padding:12px 14px;
  border-bottom:1px solid #edf0f3;
  background:#f8fbfd;
  color:#111827;
  font-size:16px;
  font-weight:900;
}

.mf-release-row{
  display:grid;
  grid-template-columns:52px minmax(0, 1fr);
  gap:8px;
  padding:10px 14px;
  color:#111827;
  text-decoration:none;
}

.mf-release-row + .mf-release-row{
  border-top:1px solid #edf0f3;
}

.mf-release-row:hover{
  background:#f8fbfd;
  text-decoration:none;
}

.mf-release-row span{
  color:#045281;
  font-size:12px;
  font-weight:900;
}

.mf-release-row strong{
  min-width:0;
  font-size:13px;
  line-height:1.3;
}

.mf-release-row em{
  grid-column:2;
  color:#667085;
  font-size:12px;
  font-style:normal;
}

@media (max-width:900px){
  .mf-games-database-controls{
    grid-template-columns:1fr 1fr;
  }
}

@media (max-width:700px){
  .mf-game-archive-toolbar{
    justify-content:stretch;
  }

  .mf-game-archive-toolbar label{
    align-items:stretch;
    flex-direction:column;
    width:100%;
  }

  .mf-games-database,
  .mf-release-calendar{
    padding:14px;
    border-radius:16px;
  }

  .mf-games-database-head{
    flex-direction:column;
  }

  .mf-games-database-controls,
  .mf-games-db-grid,
  .mf-release-months{
    grid-template-columns:1fr;
  }

  .mf-games-db-card a{
    grid-template-columns:76px minmax(0, 1fr);
  }

  .mf-games-db-thumb{
    width:76px;
    height:76px;
  }
}

/* =====================================================
   Kontrollierte AdSense-Platzierungen
===================================================== */

.mf-manual-ad{
  display:block;
  clear:both;
  width:100%;
  max-width:100%;
  min-width:0;
  margin:34px 0;
  padding:14px 0;
  border-top:1px solid #e5ebf0;
  border-bottom:1px solid #e5ebf0;
  background:#fff;
  text-align:center;
  box-sizing:border-box;
}

.mf-manual-ad-label{
  display:block;
  margin:0 0 8px;
  color:#7b8794;
  font-size:10px;
  font-weight:700;
  line-height:1;
  text-align:center;
  text-transform:uppercase;
  letter-spacing:0;
}

.mf-manual-ad ins.adsbygoogle,
.mf-article-content .mf-manual-ad ins.adsbygoogle,
.post-details .entry-content .mf-manual-ad ins.adsbygoogle{
  display:block !important;
  width:100% !important;
  max-width:100% !important;
  min-height:100px;
  margin:0 auto !important;
}

.mf-manual-ad-multiplex{
  margin-top:54px;
  margin-bottom:42px;
  padding-top:18px;
  padding-bottom:18px;
}

.mf-manual-ad-multiplex ins.adsbygoogle{
  min-height:280px;
}

.mf-manual-ad-context-game{
  border-color:#d9e8f2;
}

@media (max-width:700px){
  .mf-manual-ad{
    max-width:100vw;
    margin:28px 0;
    padding:12px 0;
  }

  .mf-manual-ad ins.adsbygoogle,
  .mf-article-content .mf-manual-ad ins.adsbygoogle,
  .post-details .entry-content .mf-manual-ad ins.adsbygoogle{
    min-height:90px;
  }

  .mf-manual-ad-multiplex{
    margin-top:42px;
    margin-bottom:34px;
  }

  .mf-manual-ad-multiplex ins.adsbygoogle{
    min-height:240px;
  }
}

/* =====================================================
   Modern site footer
===================================================== */

.mf-site-footer{
  position:relative;
  margin-top:0;
  padding:38px 0 calc(24px + env(safe-area-inset-bottom, 0px));
  border-top:4px solid #80abcd;
  background:#102a43;
  color:#dbe7ef;
}

.mf-site-footer .mf-container{
  width:min(100% - 32px, 1200px);
  max-width:1200px;
  margin:0 auto;
  padding:0;
}

.mf-footer-main{
  display:grid;
  grid-template-columns:minmax(280px, 1.6fr) repeat(2, minmax(150px, .7fr));
  gap:clamp(28px, 5vw, 72px);
  align-items:start;
}

.mf-footer-brand{
  max-width:520px;
}

.mf-footer-logo{
  display:inline-flex;
  align-items:center;
  max-width:210px;
  text-decoration:none;
}

.mf-footer-logo img{
  width:100%;
  height:auto;
}

.mf-footer-brand p{
  max-width:48ch;
  margin:16px 0 0;
  color:#e1ebf1;
  font-size:14px;
  line-height:1.65;
}

.mf-footer-nav h2{
  margin:2px 0 13px;
  color:#fff;
  font-size:14px;
  font-weight:800;
  line-height:1.3;
}

.mf-footer-nav ul{
  display:grid;
  gap:9px;
  margin:0;
  padding:0;
  list-style:none;
}

.mf-footer-nav a,
.mf-footer-home{
  color:#dbe7ef;
  text-decoration:none;
  text-underline-offset:3px;
}

.mf-footer-nav a{
  display:inline-flex;
  min-height:28px;
  align-items:center;
  font-size:14px;
  line-height:1.4;
}

.mf-footer-nav a:hover,
.mf-footer-nav a:focus,
.mf-footer-home:hover,
.mf-footer-home:focus{
  color:#fff;
  text-decoration:underline;
}

.mf-footer-nav a:focus-visible,
.mf-footer-logo:focus-visible,
.mf-footer-home:focus-visible{
  outline:3px solid #80abcd;
  outline-offset:4px;
  border-radius:4px;
}

.mf-footer-bottom{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  margin-top:32px;
  padding-top:20px;
  border-top:1px solid rgba(219,231,239,.2);
}

.mf-site-footer .mf-footer-copy{
  padding:0;
  border:0;
  color:#dbe7ef;
  font-size:12px;
  line-height:1.5;
}

.mf-site-footer .mf-footer-copy a{
  color:inherit;
}

.mf-footer-home{
  flex:0 0 auto;
  font-size:12px;
  font-weight:700;
}

@media (max-width:700px){
  .mf-site-footer{
    padding-top:30px;
  }

  .mf-site-footer .mf-container{
    width:min(100% - 28px, 1200px);
  }

  .mf-footer-main{
    grid-template-columns:repeat(2, minmax(0, 1fr));
    gap:28px 18px;
  }

  .mf-footer-brand{
    grid-column:1 / -1;
  }

  .mf-footer-logo{
    max-width:180px;
  }

  .mf-footer-brand p{
    margin-top:12px;
  }

  .mf-footer-bottom{
    align-items:flex-start;
    flex-direction:column;
    gap:10px;
    margin-top:28px;
  }
}

/* =====================================================
   Modern content tables
===================================================== */

@media (max-width:700px){
  .mf-article-content table:not([role="presentation"]),
  .entry-content table:not([role="presentation"]),
  .content-area table:not([role="presentation"]){
    display:block;
    max-width:100%;
    overflow-x:auto;
    overscroll-behavior-inline:contain;
    -webkit-overflow-scrolling:touch;
  }
}

.mf-table-wrap{
  position:relative;
  max-width:100%;
  margin:18px 0 24px;
  overflow:hidden;
  border:1px solid #d7e5ee;
  border-radius:8px;
  background:#fff;
  box-shadow:0 2px 8px rgba(16,42,67,.06);
}

.mf-table-scroll{
  max-width:100%;
  overflow-x:auto;
  overscroll-behavior-inline:contain;
  scrollbar-width:thin;
  scrollbar-color:#80abcd #edf5f9;
  -webkit-overflow-scrolling:touch;
}

.mf-table-scroll::-webkit-scrollbar{
  height:8px;
}

.mf-table-scroll::-webkit-scrollbar-track{
  background:#edf5f9;
}

.mf-table-scroll::-webkit-scrollbar-thumb{
  border:2px solid #edf5f9;
  border-radius:8px;
  background:#80abcd;
}

.mf-table-scroll > table,
.content-area .mf-table-scroll > table{
  display:table !important;
  width:100% !important;
  min-width:100%;
  margin:0;
  overflow:visible;
  border:0 !important;
  border-collapse:separate;
  border-spacing:0;
  table-layout:auto;
  background:#fff;
  color:#243b53;
  font-size:14px;
  line-height:1.45;
}

.mf-table-scroll > table caption{
  padding:13px 14px;
  border-bottom:1px solid #d7e5ee;
  background:#fff;
  color:#102a43;
  font-size:15px;
  font-weight:800;
  text-align:left;
}

.mf-table-scroll > table th,
.mf-table-scroll > table td,
.mf-table-scroll > #checklist-progress th,
.mf-table-scroll > #checklist-progress td{
  padding:11px 14px;
  border:0;
  border-right:1px solid #e4edf3;
  border-bottom:1px solid #e4edf3;
  vertical-align:top;
  overflow-wrap:anywhere;
}

.mf-table-scroll > table tr > :last-child{
  border-right:0;
}

.mf-table-scroll > table tbody tr:last-child > *{
  border-bottom:0;
}

.mf-table-scroll > table thead th,
.mf-table-scroll > #checklist-progress thead th{
  background:#eef7fb;
  color:#12324c;
  font-weight:800;
  text-align:left;
  vertical-align:bottom;
}

.mf-table-scroll > table tbody th{
  background:#f7fafc;
  color:#173b57;
  font-weight:750;
  text-align:left;
}

.mf-table-scroll > table tbody tr:nth-child(even) td,
.mf-table-scroll > #checklist-progress tbody tr:nth-child(even) td{
  background:#fbfdfe;
}

.mf-table-scroll > table tbody tr:hover > *{
  background:#f2f8fc;
}

.mf-table-scroll > table a{
  color:#0868a1;
  text-decoration-thickness:1px;
  text-underline-offset:2px;
}

.mf-table-scroll > #checklist-progress{
  margin:0;
  font-family:inherit;
}

.mf-table-scroll > #checklist-progress th,
.mf-table-scroll > #checklist-progress td{
  text-align:center;
}

.mf-table-scroll > #checklist-progress th:first-child,
.mf-table-scroll > #checklist-progress td:first-child{
  text-align:left;
}

.mf-table-scroll:focus-visible{
  outline:3px solid rgba(6,104,161,.35);
  outline-offset:-3px;
}

@media (max-width:700px){
  .mf-table-wrap{
    margin:14px 0 20px;
  }

  .mf-table-scroll > table,
  .content-area .mf-table-scroll > table{
    width:max-content !important;
    min-width:100% !important;
    max-width:none !important;
    white-space:normal !important;
  }

  .mf-table-scroll > table th,
  .mf-table-scroll > table td,
  .mf-table-scroll > #checklist-progress th,
  .mf-table-scroll > #checklist-progress td{
    min-width:110px;
    max-width:34ch;
    padding:10px 12px;
    word-break:normal;
    overflow-wrap:break-word;
  }

  .mf-table-scroll > table th:first-child,
  .mf-table-scroll > table td:first-child{
    min-width:145px;
  }

  .mf-table-scroll > table thead th{
    white-space:nowrap;
  }

  .mf-table-wrap.is-scrollable::before,
  .mf-table-wrap.is-scrollable::after{
    content:"";
    position:absolute;
    z-index:4;
    top:0;
    bottom:8px;
    width:28px;
    pointer-events:none;
  }

  .mf-table-wrap.is-scrollable::before{
    left:0;
    background:linear-gradient(90deg, rgba(16,42,67,.16), rgba(16,42,67,0));
  }

  .mf-table-wrap.is-scrollable::after{
    right:0;
    background:linear-gradient(270deg, rgba(16,42,67,.16), rgba(16,42,67,0));
  }

  .mf-table-wrap.is-at-start::before,
  .mf-table-wrap.is-at-end::after{
    display:none;
  }

  .mf-table-scroll > table.mf-table-sticky-first th:first-child,
  .mf-table-scroll > table.mf-table-sticky-first td:first-child{
    position:sticky;
    z-index:2;
    left:0;
    background:#fff;
    box-shadow:1px 0 0 #d7e5ee;
  }

  .mf-table-scroll > table.mf-table-sticky-first thead th:first-child{
    z-index:3;
    background:#eef7fb;
  }

  .mf-table-scroll > table.mf-table-sticky-first tbody tr:nth-child(even) td:first-child{
    background:#fbfdfe;
  }
}

/* =====================================================
   Home discovery, editorial formats and 30-day ranking
===================================================== */

.mf-home-finder{
  display:grid;
  grid-template-columns:minmax(230px, .72fr) minmax(320px, 1.28fr);
  align-items:center;
  gap:20px;
  margin:0 0 18px;
  padding:16px 18px;
  border:1px solid #dce8f0;
  border-radius:8px;
  background:#f7fafc;
}

.mf-home-finder-copy span,
.mf-home-section-kicker{
  display:block;
  margin:0 0 3px;
  color:#0668a1;
  font-size:12px;
  font-weight:850;
  line-height:1.35;
}

.mf-home-finder-copy h2{
  margin:0;
  color:#111827;
  font-size:18px;
  font-weight:850;
  line-height:1.25;
}

.mf-home-search{
  display:grid;
  grid-template-columns:minmax(0, 1fr) 46px;
  min-width:0;
  border:1px solid #b9cfdd;
  border-radius:8px;
  background:#fff;
  box-shadow:0 3px 10px rgba(15,23,42,.05);
  overflow:hidden;
}

.mf-home-search input{
  width:100%;
  min-width:0;
  height:46px;
  padding:0 14px;
  border:0;
  border-radius:0;
  background:transparent;
  color:#111827;
  font:inherit;
  font-size:14px;
}

.mf-home-search input:focus{
  outline:0;
}

.mf-home-search:focus-within{
  border-color:#0668a1;
  box-shadow:0 0 0 3px rgba(6,104,161,.16);
}

.mf-home-search button{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:46px;
  height:46px;
  padding:0;
  border:0;
  border-radius:0;
  background:#0668a1;
  color:#fff;
  font-size:19px;
  cursor:pointer;
}

.mf-home-search button:hover,
.mf-home-search button:focus-visible{
  background:#045281;
}

.mf-home-page .mf-home-ratgeber{
  min-height:0;
  padding:20px;
  border:1px solid #dce8f0;
  border-radius:8px;
  background:#fff;
  box-shadow:0 5px 16px rgba(15,23,42,.05);
}

.mf-home-section-head{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:20px;
  margin:0 0 15px;
}

.mf-home-page .mf-home-section .mf-home-section-head h2{
  margin:0;
  padding:0;
}

.mf-home-section-link{
  flex:0 0 auto;
  color:#0668a1;
  font-size:13px;
  font-weight:850;
  text-decoration:none;
}

.mf-home-section-link:hover,
.mf-home-section-link:focus{
  color:#045281;
  text-decoration:underline;
  text-underline-offset:3px;
}

.mf-home-ratgeber-grid{
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:16px;
}

.mf-ratgeber-card,
.mf-ratgeber-card a,
.mf-ratgeber-content{
  display:block;
  min-width:0;
}

.mf-ratgeber-card a{
  color:inherit;
  text-decoration:none;
}

.mf-ratgeber-media{
  position:relative;
  display:block;
  width:100%;
  aspect-ratio:16 / 9;
  overflow:hidden;
  border-radius:6px;
  background:#e8eef2;
}

.mf-ratgeber-media img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  transition:transform .2s ease;
}

.mf-ratgeber-card a:hover .mf-ratgeber-media img,
.mf-ratgeber-card a:focus .mf-ratgeber-media img{
  transform:scale(1.025);
}

.mf-ratgeber-format{
  position:absolute;
  left:8px;
  bottom:8px;
  display:inline-flex;
  align-items:center;
  min-height:24px;
  padding:4px 8px;
  border-radius:5px;
  background:#0668a1;
  color:#fff;
  font-size:11px;
  font-weight:850;
  line-height:1.2;
}

.mf-ratgeber-content{
  padding-top:9px;
}

.mf-ratgeber-content time{
  display:block;
  margin-bottom:3px;
  color:#667085;
  font-size:11px;
  line-height:1.35;
}

.mf-ratgeber-title{
  display:-webkit-box;
  overflow:hidden;
  color:#111827;
  font-size:16px;
  font-weight:850;
  line-height:1.3;
  overflow-wrap:anywhere;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:2;
}

.mf-ratgeber-card a:hover .mf-ratgeber-title,
.mf-ratgeber-card a:focus .mf-ratgeber-title{
  color:#0668a1;
}

.mf-ratgeber-excerpt{
  display:-webkit-box;
  margin-top:5px;
  overflow:hidden;
  color:#475467;
  font-size:13px;
  line-height:1.45;
  overflow-wrap:anywhere;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:2;
}

.mf-home-heading-note{
  flex:0 0 auto;
  color:#667085;
  font-size:11px;
  font-weight:750;
  line-height:1.3;
}

.mf-home-popular .mf-guide-thumb-small{
  position:relative;
}

.mf-home-popular .mf-guide-thumb-small img{
  border-radius:10px;
}

.mf-home-rank{
  position:absolute;
  z-index:2;
  top:5px;
  left:5px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:24px;
  height:24px;
  border:2px solid #fff;
  border-radius:50%;
  background:#0668a1;
  color:#fff;
  font-size:12px;
  font-weight:900;
  line-height:1;
  box-shadow:0 2px 7px rgba(15,23,42,.25);
}

.mf-ratgeber-archive .mf-generic-archive-header{
  border-top:4px solid #0668a1;
}

.mf-ratgeber-archive .mf-archive-kicker{
  color:#0668a1;
}

@media (max-width:768px){
  .mf-home-finder{
    grid-template-columns:1fr;
    gap:11px;
    margin-bottom:14px;
    padding:14px;
  }

  .mf-home-finder-copy h2{
    font-size:16px;
  }

  .mf-home-page .mf-home-ratgeber{
    padding:14px;
  }

  .mf-home-section-head{
    align-items:flex-start;
    gap:12px;
  }

  .mf-home-section-link{
    padding-top:2px;
    font-size:12px;
  }

  .mf-home-ratgeber-grid{
    grid-template-columns:1fr;
    gap:12px;
  }

  .mf-ratgeber-card a{
    display:grid;
    grid-template-columns:112px minmax(0, 1fr);
    gap:11px;
    align-items:start;
  }

  .mf-ratgeber-media{
    aspect-ratio:4 / 3;
  }

  .mf-ratgeber-content{
    padding-top:0;
  }

  .mf-ratgeber-title{
    font-size:14px;
  }

  .mf-ratgeber-excerpt{
    display:none;
  }

  .mf-ratgeber-format{
    right:5px;
    bottom:5px;
    left:5px;
    justify-content:center;
    min-height:20px;
    padding:3px 5px;
    font-size:10px;
  }
}

/* Existing live refinements preserved from the open website. */
.main-top .main-top-inner { background: none; }
.main-top, .site-header .header-main { --mf-header-wave: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1000 400' preserveAspectRatio='none'%3E%3Cpath fill='black' d='M0 0H1000V360C820 386 650 385 520 372C350 358 210 375 0 384Z'/%3E%3C/svg%3E"); position: relative; isolation: isolate; mask-image: var(--mf-header-wave); mask-size: 100% 100%; mask-repeat: no-repeat; margin-bottom: -1px; }
.main-top .fullwidth-image, .site-header .header-main { min-height: clamp(330px, 32vw, 470px); background-color: rgb(18, 48, 74); background-image: url("https://mariofans.de/wp-content/uploads/2025/04/logo2025.jpg"); background-size: cover; background-position: center 43%; background-repeat: no-repeat; }
.main-top .games_header .fullwidth-image { height: clamp(330px, 32vw, 470px) !important; }
.main-top .fullwidth-image::after, .site-header .header-main::after { content: ""; position: absolute; inset: 0px; z-index: 1; pointer-events: none; background: linear-gradient(rgba(5, 19, 37, 0.44) 0px, rgba(5, 19, 37, 0.14) 110px, transparent 235px); }
.main-top .fullwidth-image :is(.layer-full, .layer-center) { display: none; }
.main-top .fullwidth-image .fullwidth-content { z-index: 3; }
.site-header .header-main { height: clamp(330px, 32vw, 470px); padding: 0px; }
.site-header .header-main-container { min-height: 0px !important; padding: 0px !important; }
.mf-context-back { padding-top: 14px; }
@media (min-width: 769px) {
  body { padding-top: 0px !important; }
  .mf-desktop-topbar { top: 0px; left: 0px; right: 0px; z-index: 10050; backdrop-filter: none; position: fixed !important; background: none transparent !important; border: 0px !important; box-shadow: none !important; }
  body.admin-bar .mf-desktop-topbar { top: 32px; }
  .mf-desktop-topbar-inner { box-sizing: border-box; width: calc(100% - 24px); max-width: 1440px; min-height: 60px; margin: 8px auto 0px; border: 1px solid rgba(255, 255, 255, 0.24); border-radius: 15px; background: rgba(7, 24, 44, 0.72); box-shadow: rgba(0, 0, 0, 0.24) 0px 8px 26px; backdrop-filter: blur(12px); }
  .mf-desktop-logo img { filter: drop-shadow(rgba(0, 0, 0, 0.7) 0px 1px 4px); }
  .mf-desktop-navigation .mf-primary-nav-list > .mf-nav-item > a, .mf-desktop-navigation .mf-nav-menu > li > a { color: rgb(255, 255, 255) !important; text-shadow: rgba(0, 0, 0, 0.75) 0px 1px 3px; }
  .mf-desktop-navigation .mf-nav-menu > li:hover > a, .mf-desktop-navigation .mf-nav-menu > li:focus-within > a { color: rgb(255, 255, 255) !important; background: rgba(255, 255, 255, 0.16) !important; }
  .mf-desktop-navigation .mf-primary-nav-list > .current-menu-item > a, .mf-desktop-navigation .mf-primary-nav-list > .current-menu-ancestor > a { border-color: rgba(255, 255, 255, 0.55) !important; background: rgba(5, 65, 105, 0.72) !important; }
  .mf-desktop-navigation .sub-menu { background: rgb(255, 255, 255); box-shadow: rgba(0, 0, 0, 0.22) 0px 12px 28px; }
  .mf-desktop-navigation .sub-menu a { color: rgb(23, 50, 74) !important; text-shadow: none; }
  .mf-desktop-search { background: rgba(255, 255, 255, 0.94); border-color: rgba(255, 255, 255, 0.7); box-shadow: rgba(0, 0, 0, 0.15) 0px 3px 14px; }
  .mf-desktop-topbar :is(a, button):focus-visible { outline-color: rgb(255, 255, 255); }
}
@media (max-width: 768px) {
  body { padding-top: 0px !important; }
  #masthead.site-header, .site-header { display: block !important; }
  .site-header .header-main { height: 310px; min-height: 310px; background-position: center 38%; }
  .main-top .fullwidth-image { min-height: 310px; background-position: center 38%; height: 310px !important; }
  .mobile-top-bar { top: 0px; left: 0px; right: 0px; z-index: 10050; backdrop-filter: blur(12px); position: fixed !important; background: none rgba(7, 24, 44, 0.72) !important; border: 0px !important; box-shadow: rgba(0, 0, 0, 0.2) 0px 8px 26px !important; }
  body.admin-bar .mobile-top-bar { top: 46px; }
  .mobile-logo img { filter: drop-shadow(rgba(0, 0, 0, 0.7) 0px 1px 4px); }
  .mobile-top-bar .menu-toggle, .mobile-top-bar .guides-toggle { color: rgb(255, 255, 255) !important; border-color: rgba(255, 255, 255, 0.65) !important; background: rgba(255, 255, 255, 0.12) !important; }
  .mobile-top-bar .menu-toggle:hover, .mobile-top-bar .menu-toggle:focus, .mobile-top-bar .guides-toggle:hover, .mobile-top-bar .guides-toggle:focus { color: rgb(255, 255, 255) !important; background: rgba(255, 255, 255, 0.22) !important; }
  .mobile-top-menu, .mobile-guides-menu { background: rgb(247, 251, 253); }
  .mf-context-back { padding-top: 8px; }
}
@media (prefers-reduced-transparency: reduce) {
  .main-top .fullwidth-image::after, .site-header .header-main::after { background: rgba(5, 19, 37, 0.4); }
  .mf-desktop-topbar-inner, .mobile-top-bar { background: rgb(7, 24, 44) !important; }
}
.mf-guide-hero .fullwidth-image { box-sizing: border-box; display: flex; align-items: center; justify-content: center; padding: 88px 24px 40px; }
.mf-guide-hero .fullwidth-image::after { background: linear-gradient(rgba(5, 19, 37, 0.6), rgba(5, 19, 37, 0.42) 45%, rgba(5, 19, 37, 0.64)); }
.mf-guide-hero-content { position: relative; z-index: 3; width: min(900px, 100%); color: rgb(255, 255, 255); text-align: center; text-shadow: rgba(0, 0, 0, 0.65) 0px 2px 12px; }
.mf-guide-hero-breadcrumbs, .mf-guide-hero-meta, .mf-guide-hero-cats { display: flex; align-items: center; justify-content: center; flex-wrap: wrap; gap: 8px; }
.mf-guide-hero-breadcrumbs { margin-bottom: 14px; color: rgba(255, 255, 255, 0.86); font-size: 13px; line-height: 1.4; }
.mf-guide-hero-breadcrumbs a, .mf-guide-hero-meta a { color: rgb(255, 255, 255); text-decoration: underline; text-underline-offset: 3px; }
.mf-guide-hero-content h1 { max-width: 850px; margin: 0px auto 12px; color: rgb(255, 255, 255); font-size: clamp(28px, 4.1vw, 52px); font-weight: 800; line-height: 1.12; overflow-wrap: anywhere; }
.mf-guide-hero-meta { color: rgba(255, 255, 255, 0.94); font-size: 14px; }
.mf-guide-hero-cats { margin-top: 16px; }
.mf-guide-hero-cats a { padding: 5px 12px; border: 1px solid rgba(255, 255, 255, 0.58); border-radius: 999px; background: rgba(7, 24, 44, 0.42); color: rgb(255, 255, 255); font-size: 12px; font-weight: 700; line-height: 1.4; text-decoration: none; }
.mf-guide-hero-cats a:hover, .mf-guide-hero-cats a:focus-visible { background: rgba(7, 24, 44, 0.78); color: rgb(255, 255, 255); }
.mf-single-guide { margin-top: 16px; }
.mf-guide-article .mf-article-content > :first-child { margin-top: 0px; }
.mf-guide-resume { display: grid; grid-template-columns: minmax(0px, 1fr) auto; align-items: center; gap: 4px 18px; margin-bottom: 14px; padding: 14px 16px; border: 1px solid rgb(186, 215, 200); border-radius: 12px; background: rgb(238, 246, 241); color: rgb(36, 77, 66); line-height: 1.45; }
.mf-guide-resume[hidden] { display: none !important; }
.mf-guide-resume-copy { grid-row: 1 / span 2; min-width: 0px; }
.mf-guide-resume-copy strong, .mf-guide-resume-copy small { display: block; }
.mf-guide-resume-copy strong { margin-bottom: 2px; font-size: 13px; }
.mf-guide-resume a { grid-column: 2; justify-self: end; color: rgb(11, 102, 115); font-size: 14px; font-weight: 700; text-decoration: none; }
.mf-guide-resume a:hover { text-decoration: underline; }
.mf-guide-resume button { grid-column: 2; justify-self: end; padding: 0px; border: 0px; background: none; color: rgb(54, 92, 82); font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-optical-sizing: inherit; font-size-adjust: inherit; font-kerning: inherit; font-feature-settings: inherit; font-variation-settings: inherit; font-language-override: inherit; font-size: 12px; text-decoration: underline; cursor: pointer; }
.mf-guide-resume small { color: rgb(83, 112, 101); font-size: 12px; }
@media (max-width: 768px) {
  .mf-guide-hero .fullwidth-image { min-height: 310px; padding: 82px 18px 24px; height: auto !important; }
  .mf-guide-hero-breadcrumbs { margin-bottom: 10px; font-size: 11px; }
  .mf-guide-hero-content h1 { margin-bottom: 10px; font-size: clamp(25px, 7vw, 36px); }
  .mf-guide-hero-meta { font-size: 12px; }
  .mf-guide-hero-cats { gap: 6px; margin-top: 12px; }
  .mf-guide-hero-cats a { padding: 4px 9px; font-size: 11px; }
  .mf-guide-resume { grid-template-columns: 1fr; gap: 7px; padding: 13px 14px; }
  .mf-guide-resume-copy, .mf-guide-resume a, .mf-guide-resume button { grid-area: auto / 1; justify-self: start; }
}
@media print {
  .mf-guide-resume { display: none; }
}
.mf-game-completion { display: flex; align-items: center; justify-content: space-between; gap: 18px; margin: 22px 0px 28px; padding: 20px 22px; border: 1px solid rgb(203, 223, 238); border-radius: 10px; background: linear-gradient(120deg, rgb(238, 248, 255), rgb(255, 255, 255)); }
.mf-game-completion div { display: grid; gap: 4px; min-width: 0px; }
.mf-game-completion .mf-game-completion-actions { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 8px; }
.mf-game-completion span { color: rgb(82, 101, 121); font-size: 13px; }
.mf-game-completion strong { color: rgb(24, 46, 71); font-size: 18px; line-height: 1.35; }
.mf-game-completion a { flex: 0 0 auto; padding: 11px 16px; border-radius: 7px; background: rgb(6, 104, 161); color: rgb(255, 255, 255); font-weight: 700; text-decoration: none; }
.mf-game-completion a span { color: inherit; font-size: inherit; }
.mf-game-completion a:hover, .mf-game-completion a:focus-visible { background: rgb(3, 77, 122); color: rgb(255, 255, 255); }
.mf-game-completion a.is-secondary { border: 1px solid rgb(185, 216, 233); background: rgb(255, 255, 255); color: rgb(4, 82, 129); }
.mf-game-completion a.is-secondary:hover, .mf-game-completion a.is-secondary:focus-visible { background: rgb(231, 243, 250); }
.mf-game-completion a:focus-visible { outline: rgb(228, 154, 36) solid 3px; outline-offset: 3px; }
.mf-guide-goals { display: flex; flex-wrap: wrap; align-items: center; gap: 7px; margin: 2px 0px 18px; }
.mf-guide-goals a { display: inline-flex; align-items: center; min-height: 34px; padding: 5px 10px; border: 1px solid rgb(213, 229, 238); border-radius: 6px; background: rgb(245, 250, 253); color: rgb(7, 89, 135); font-size: 12px; font-weight: 700; line-height: 1.3; text-decoration: none; }
.mf-guide-goals a:hover, .mf-guide-goals a:focus-visible { border-color: rgb(122, 185, 220); background: rgb(232, 244, 251); color: rgb(3, 77, 122); }
.mf-guide-goals a:focus-visible { outline: rgb(228, 154, 36) solid 2px; outline-offset: 2px; }
.mf-guide-article .mf-article-content li[id^="mf-guide-"] { scroll-margin-top: var(--mf-guide-heading-offset,110px); }
@media (max-width: 700px) {
  .mf-game-completion { align-items: stretch; flex-direction: column; padding: 17px; }
  .mf-game-completion a { align-self: flex-start; }
  .mf-game-completion .mf-game-completion-actions { justify-content: flex-start; }
}
.mf-guide-hub-hero .fullwidth-image { background-position: center 40%; }
.mf-guide-hub-hero-kicker { margin-bottom: 10px; color: rgba(255, 255, 255, 0.94); font-size: 12px; font-weight: 850; letter-spacing: 0.09em; text-transform: uppercase; }
.mf-guide-hub-hero-count { display: inline-flex; align-items: center; gap: 5px; padding: 6px 13px; border: 1px solid rgba(255, 255, 255, 0.5); border-radius: 999px; background: rgba(7, 24, 44, 0.42); color: rgb(255, 255, 255); font-size: 13px; font-weight: 700; }
.mf-guide-hub-page { margin-top: 20px; }
.mf-guide-hub-page .mf-guide-hub-header { padding: 22px 24px; border-color: rgb(220, 232, 240); border-radius: 16px; }
.mf-guide-hub-page .mf-guide-hub-header .archive-description { max-width: 85ch; color: rgb(51, 65, 85); font-size: 16px; }
.mf-guide-hub-page .mf-guide-hub-header .archive-description > :first-child { margin-top: 0px; }
.mf-guide-hub-page .mf-guide-hub-header .archive-description > :last-child { margin-bottom: 0px; }
@media (max-width: 700px) {
  .mf-guide-hub-hero .fullwidth-image { background-position: center center; }
  .mf-guide-hub-page .mf-guide-hub-header { padding: 18px; }
}
.mf-guide-taxonomy-page .mf-guide-hub-start { scroll-margin-top: 100px; }
.mf-guide-taxonomy-page .mf-guide-hub-section { scroll-margin-top: 100px; }
.mf-guide-hub-category-link { margin: 0px 0px 14px; }
.mf-guide-hub-category-link a { color: rgb(7, 89, 135); font-weight: 700; text-decoration: underline; text-underline-offset: 3px; }
.mf-guide-hub-grid { display: grid; grid-template-columns: repeat(2, minmax(0px, 1fr)); gap: 10px; margin: 0px; padding: 0px; list-style: none; }
.mf-guide-hub-grid li { min-width: 0px; margin: 0px; padding: 0px; list-style: none; }
.mf-guide-overview .mf-guide-hub-grid { margin:0; padding:0; }
.mf-guide-overview .mf-guide-hub-grid li { margin:0; padding:0; border:0; background:none; box-shadow:none; }
.mf-guide-overview .mf-guide-hub-grid li[hidden] { display:none; }
.mf-guide-overview .mf-guide-hub-grid li::before { content:none; }
.mf-guide-overview .mf-guide-hub-section-header { display:flex; align-items:center; justify-content:space-between; gap:12px; }
.mf-guide-overview .mf-guide-hub-section-header h2 { margin:0; }
.mf-guide-overview .mf-guide-hub-grid a { box-sizing:border-box; height:100%; }
.mf-guide-overview .mf-guide-hub-grid > .google-auto-placed { grid-column:1 / -1; min-width:0; }
.mf-guide-overview .mf-guide-hub-section-header h2 { min-width:0; overflow-wrap:anywhere; }
.mf-guide-overview .mf-guide-hub-section-header .mf-guide-count { flex-shrink:0; }
.mf-guidehub-section-header .mf-guidehub-overview-link { display:inline-block; margin:0 0 12px; font-weight:700; text-decoration:underline; text-underline-offset:3px; }
.mf-guide-hub-grid a { display: flex; align-items: center; gap: 12px; min-height: 62px; padding: 13px 15px; border: 1px solid rgb(220, 232, 240); border-radius: 10px; background: rgb(255, 255, 255); color: rgb(24, 55, 82); text-decoration: none; box-shadow: rgba(15, 23, 42, 0.035) 0px 2px 9px; }
.mf-guide-hub-grid a:hover, .mf-guide-hub-grid a:focus-visible { border-color: rgb(138, 187, 216); background: rgb(242, 249, 253); color: rgb(4, 82, 129); text-decoration: none; }
.mf-guide-hub-grid a:focus-visible, .mf-guide-hub-actions a:focus-visible, .mf-guide-hub-feature:focus-visible { outline: rgb(228, 154, 36) solid 3px; outline-offset: 2px; }
.mf-guide-hub-card-number { flex: 0 0 auto; display: grid; place-items: center; width: 30px; height: 30px; border-radius: 8px; background: rgb(232, 244, 251); color: rgb(4, 82, 129); font-size: 12px; font-weight: 800; }
.mf-guide-hub-card-copy { display: grid; gap: 3px; min-width: 0px; }
.mf-guide-hub-card-copy strong { font-size: 15px; line-height: 1.35; overflow-wrap: anywhere; }
.mf-guide-hub-card-copy small { color: rgb(101, 120, 138); font-size: 12px; line-height: 1.35; }
.mf-guide-hub-card-arrow { margin-left: auto; color: rgb(6, 104, 161); font-size: 18px; }
.mf-guide-sidebar .mf-guide-companions { display: grid; gap: 7px; margin-top: 14px; padding: 14px; border: 1px solid rgb(219, 229, 235); border-radius: 7px; background: rgb(255, 255, 255); max-height: none; overflow: visible; }
.mf-guide-companions strong { color: rgb(36, 59, 83); font-size: 13px; }
.mf-guide-companions a { color: rgb(6, 104, 161); font-size: 13px; line-height: 1.4; text-decoration: underline; text-underline-offset: 2px; }
.mf-guide-companions a:hover { color: rgb(3, 77, 122); }
.mf-guide-companions a:focus-visible { outline: rgb(228, 154, 36) solid 2px; outline-offset: 2px; }
@media (max-width: 700px) {
  .mf-guide-hub-grid { grid-template-columns: 1fr; }
  .mf-guide-hub-grid a { min-height: 56px; padding: 11px 12px; }
}

/* Mariofans contact page – 4 October 2026 */
.page-id-285 .mf-page-article { padding: clamp(22px, 3vw, 38px); }
.page-id-285 .mf-article-title { margin: 0 0 18px; font-size: clamp(28px, 3vw, 36px); line-height: 1.2; }
.mf-contact { --contact-blue: #0668a1; --contact-ink: #102a43; }
.mf-contact *, .mf-contact *::before, .mf-contact *::after { box-sizing: border-box; }
.mf-contact .mf-contact-intro { max-width: 840px; margin-bottom: 30px; }
.mf-contact .mf-contact-kicker { display: inline-block; color: #0668a1; font-size: 12px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.mf-contact .mf-contact-intro h2 { margin: 9px 0 12px; color: #102a43; font-size: clamp(25px, 2.7vw, 34px); line-height: 1.25; }
.mf-contact .mf-contact-intro > p { max-width: 750px; margin: 0; font-size: 16px; line-height: 1.75; }
.mf-contact .mf-contact-topics { display: flex; flex-wrap: wrap; gap: 8px; list-style: none; padding: 0; margin: 18px 0 0; }
.mf-contact .mf-contact-topics li { margin: 0; padding: 6px 12px; border: 1px solid #d9e9f2; border-radius: 999px; background: #f0f7fb; color: #31546d; font-size: 12px; font-weight: 700; line-height: 1.5; }
.mf-contact .mf-contact-layout { display: grid; grid-template-columns: minmax(0, 1.7fr) minmax(270px, 1fr); align-items: start; gap: 24px; }
.mf-contact .mf-contact-form-panel { min-width: 0; padding: clamp(20px, 2.4vw, 28px); border: 1px solid #dce8f0; border-radius: 18px; background: #f8fbfd; }
.mf-contact .mf-contact-form-panel h2 { margin: 0 0 7px; color: #102a43; font-size: 24px; }
.mf-contact .mf-contact-form-hint { margin: 0 0 22px; font-size: 13px; }
.mf-contact .wpcf7-form { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); column-gap: 18px; row-gap: 18px; }
.mf-contact .wpcf7-form > p { grid-column: 1 / -1; margin: 0; padding: 0; }
.mf-contact .wpcf7-form > p:nth-of-type(1) { grid-column: 1; }
.mf-contact .wpcf7-form > p:nth-of-type(2) { grid-column: 2; }
.mf-contact .wpcf7-form label { display: block; color: #243d52; font-size: 13px; font-weight: 700; line-height: 1.5; }
.mf-contact .wpcf7-form label > br { display: none; }
.mf-contact .wpcf7-form-control-wrap { display: block; margin-top: 8px; }
.mf-contact .wpcf7-form input[type="text"], .mf-contact .wpcf7-form input[type="email"], .mf-contact .wpcf7-form textarea { display: block; width: 100%; max-width: 100%; min-height: 48px; margin: 0; padding: 12px 14px; border: 1px solid #cbdbe6; border-radius: 10px; background: #fff; color: #102a43; font: 16px/1.5 Verdana, Geneva, sans-serif; box-shadow: 0 1px 2px rgba(16, 42, 67, .03); transition: border-color .15s, box-shadow .15s; }
.mf-contact .wpcf7-form textarea { min-height: 180px; height: 180px; resize: vertical; }
.mf-contact .wpcf7-form input[type="text"]:focus, .mf-contact .wpcf7-form input[type="email"]:focus, .mf-contact .wpcf7-form textarea:focus { outline: 2px solid #0668a1; outline-offset: 2px; border-color: #0668a1; box-shadow: 0 0 0 4px rgba(6, 104, 161, .08); }
.mf-contact .wpcf7-form input[type="submit"] { min-height: 48px; padding: 12px 28px; border: 0; border-radius: 10px; background: #0668a1; color: #fff; font: 700 15px/1.5 Verdana, Geneva, sans-serif; cursor: pointer; box-shadow: 0 4px 12px rgba(6,104,161,.15); transition: background .15s, transform .15s; }
.mf-contact .wpcf7-form input[type="submit"]:hover { background: #045281; transform: translateY(-1px); }
.mf-contact a:focus-visible, .mf-contact .wpcf7-form input[type="submit"]:focus-visible { outline: 3px solid #e49a24; outline-offset: 4px; }
.mf-contact .wpcf7-not-valid-tip { margin-top: 6px; color: #a12626; font-size: 12px; font-weight: 400; }
.mf-contact .wpcf7-form .wpcf7-not-valid { border-color: #b83d3d; }
.mf-contact .wpcf7-form .wpcf7-response-output { grid-column: 1 / -1; margin: 0; padding: 12px 14px; border-radius: 10px; font-size: 14px; line-height: 1.6; }
.mf-contact .mf-contact-privacy { margin: 18px 0 0; padding-top: 16px; border-top: 1px solid #dce8f0; color: #536a7c; font-size: 12px; line-height: 1.7; }
.mf-contact .mf-contact-sidebar { display: grid; gap: 20px; min-width: 0; }
.mf-contact .mf-contact-direct { padding: 26px; border-radius: 18px; background: linear-gradient(135deg, #102a43, #075886); color: #fff; box-shadow: 0 8px 22px rgba(16,42,67,.13); }
.mf-contact .mf-contact-icon { display: inline-flex; align-items: center; justify-content: center; width: 52px; height: 52px; margin-bottom: 18px; border: 1px solid rgba(255,255,255,.2); border-radius: 14px; background: rgba(255,255,255,.08); color: #fff; }
.mf-contact .mf-contact-direct h2 { margin: 0 0 9px; color: #fff; font-size: 21px; }
.mf-contact .mf-contact-direct p { margin: 0 0 18px; color: #dcecf6; font-size: 14px; }
.mf-contact .mf-contact-email { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 10px; padding: 13px 0 0; border-top: 1px solid rgba(255,255,255,.2); color: #fff; font-size: 16px; font-weight: 700; text-decoration: none; overflow-wrap: anywhere; }
.mf-contact .mf-contact-email:hover { color: #fff; text-decoration: underline; }
.mf-contact .mf-contact-help { padding: 25px; border: 1px solid #dce8f0; border-radius: 18px; background: #fff; }
.mf-contact .mf-contact-help > h2 { margin: 0 0 22px; color: #102a43; font-size: 19px; line-height: 1.4; }
.mf-contact .mf-contact-tip { display: flex; align-items: flex-start; gap: 12px; margin-bottom: 22px; }
.mf-contact .mf-contact-tip > span { flex: 0 0 30px; display: flex; align-items: center; justify-content: center; height: 30px; border-radius: 9px; background: #eef7fb; color: #0668a1; font-size: 11px; font-weight: 700; }
.mf-contact .mf-contact-tip h3 { margin: 2px 0 6px; color: #243d52; font-size: 14px; line-height: 1.5; }
.mf-contact .mf-contact-tip p { margin: 0; color: #536a7c; font-size: 13px; line-height: 1.7; }
.mf-contact .mf-contact-about { display: flex; align-items: center; justify-content: space-between; gap: 8px; padding-top: 17px; border-top: 1px solid #dce8f0; color: #0668a1; font-size: 13px; font-weight: 700; text-decoration: none; }
.mf-contact .mf-contact-about:hover { text-decoration: underline; }
@media (max-width: 850px) { .mf-contact .mf-contact-layout { grid-template-columns: minmax(0, 1fr); } .mf-contact .mf-contact-sidebar { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); } }
@media (max-width: 600px) { .page-id-285 .mf-page-article { padding: 20px 16px; } .mf-contact .mf-contact-intro { margin-bottom: 24px; } .mf-contact .mf-contact-intro > p { font-size: 15px; } .mf-contact .mf-contact-layout { gap: 18px; } .mf-contact .mf-contact-sidebar, .mf-contact .wpcf7-form { grid-template-columns: minmax(0, 1fr); } .mf-contact .wpcf7-form > p:nth-of-type(1), .mf-contact .wpcf7-form > p:nth-of-type(2) { grid-column: 1 / -1; } .mf-contact .mf-contact-form-panel { padding: 20px 16px; } .mf-contact .mf-contact-direct, .mf-contact .mf-contact-help { padding: 22px; } .mf-contact .wpcf7-form input[type="submit"] { width: 100%; } .mf-contact .wpcf7-spinner { display: block; margin: 10px auto 0; } }

.page-id-285 .mf-article-toc { display: none; }
