:root {
      --bg:#07111f;
      --bg-2:#0a1527;
      --panel:#0d1a2c;
      --panel-2:#101f34;
      --line:rgba(255,255,255,.09);
      --text:#f7f9ff;
      --muted:#aab5c7;
      --orange:#f7b23a;
      --orange-2:#ee9526;
      --gold:#ffd25a;
      --blue:#1688ff;
      --blue-2:#00b8ff;
      --radius:24px;
      --content:1200px;
      --shadow:0 24px 80px rgba(0,0,0,.34);
    }

    * { box-sizing:border-box; }
    html { scroll-behavior:smooth; }
    body {
      margin:0;
      font-family:Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
      color:var(--text);
      background:
        linear-gradient(180deg,#040a14 0%,#07101d 38%,#081320 100%);
      min-height:100vh;
    }

    a { color:inherit; text-decoration:none; }
    button { font:inherit; }

    .container {
      width:min(var(--content), calc(100% - 36px));
      margin-inline:auto;
    }

    .eyebrow {
      color:var(--orange);
      font-size:.78rem;
      letter-spacing:.18em;
      text-transform:uppercase;
      font-weight:800;
    }

    .btn {
      display:inline-flex;
      align-items:center;
      justify-content:center;
      gap:.55rem;
      min-height:44px;
      padding:0 19px;
      border-radius:999px;
      border:1px solid var(--line);
      background:rgba(255,255,255,.03);
      color:#fff;
      font-family:Arial, Helvetica, sans-serif;
      font-size:.90rem;
      font-weight:600;
      letter-spacing:.005em;
      cursor:pointer;
      transition:.2s ease;
      white-space:nowrap;
    }

    .btn:hover { transform:translateY(-2px); border-color:rgba(255,255,255,.2); }
    .btn.primary {
      border:1px solid rgba(255,196,96,.24);
      background:linear-gradient(180deg,#f8a536 0%, #ef8420 100%);
      box-shadow:
        inset 0 1px 0 rgba(255,240,185,.20),
        0 12px 28px rgba(241,129,26,.26);
    }
    .btn.primary:hover {
      box-shadow:
        inset 0 1px 0 rgba(255,240,185,.24),
        0 16px 34px rgba(241,129,26,.34);
    }

    /* HEADER */
    .site-header {
      position:sticky;
      top:0;
      z-index:50;
      backdrop-filter:blur(14px);
      background:rgba(5,11,21,.78);
      border-bottom:1px solid var(--line);
    }

    .header-inner {
      min-height:76px;
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap:24px;
    }

    .brand {
      display:flex;
      align-items:center;
      min-width:180px;
    }

    .brand img {
      display:block;
      width:190px;
      max-height:54px;
      object-fit:contain;
      object-position:left center;
    }

    .brand-fallback {
      font-size:1.15rem;
      font-weight:950;
      letter-spacing:.08em;
    }

    .desktop-nav {
      display:flex;
      align-items:center;
      gap:30px;
      color:#d9e0ea;
      font-family:Arial, Helvetica, sans-serif;
      font-size:.88rem;
      font-weight:500;
      letter-spacing:.01em;
      margin-left:auto;
    }

    .desktop-nav a {
      opacity:.88;
      transition:.2s;
      line-height:1;
      padding:10px 0;
    }
    .desktop-nav a:hover { opacity:1; color:#fff; }

    .header-cta {
      margin-left:8px;
      min-height:42px;
      padding-inline:18px;
      font-size:.88rem;
    }

    .mobile-toggle {
      display:none;
      width:44px;
      height:44px;
      border-radius:14px;
      border:1px solid var(--line);
      background:rgba(255,255,255,.04);
      color:#fff;
      cursor:pointer;
    }

    .mobile-nav {
      display:none;
      padding:0 0 16px;
    }
    .mobile-nav.open {
      display:grid;
      gap:10px;
    }
    .mobile-nav a {
      padding:11px 4px;
      color:#dfe7f3;
      border-bottom:1px solid var(--line);
    }

    /* HERO */
    .hero {
      position:relative;
      padding:28px 0 24px;
      overflow:hidden;
      isolation:isolate;
      background:
        radial-gradient(circle at 6% 52%, rgba(255,129,32,.22) 0%, rgba(255,129,32,.10) 13%, transparent 26%),
        radial-gradient(circle at 90% 28%, rgba(43,108,255,.22) 0%, rgba(43,108,255,.10) 18%, transparent 32%),
        linear-gradient(90deg, rgba(7,16,29,0) 0%, rgba(7,16,29,.32) 22%, rgba(7,16,29,.12) 50%, rgba(7,16,29,.30) 78%, rgba(7,16,29,0) 100%);
    }

    .hero::before {
      content:"";
      position:absolute;
      inset:0;
      z-index:-2;
      pointer-events:none;
      background:
        radial-gradient(circle at 16% 50%, rgba(255,162,61,.10), transparent 22%),
        radial-gradient(circle at 84% 18%, rgba(72,120,255,.12), transparent 24%),
        radial-gradient(circle at 50% 50%, rgba(3,7,16,0) 0%, rgba(3,7,16,.30) 60%, rgba(3,7,16,.55) 100%);
    }

    .hero::after {
      content:"";
      position:absolute;
      inset:0;
      z-index:-1;
      pointer-events:none;
      opacity:.28;
      background-image:
        radial-gradient(rgba(255,255,255,.10) .6px, transparent .6px);
      background-size:4px 4px;
      mix-blend-mode:soft-light;
    }

    .hero-grid {
      display:grid;
      grid-template-columns:minmax(0, .95fr) minmax(0, 1.05fr);
      gap:40px;
      align-items:start;
    }

    .hero-copy h1 {
      margin:8px 0 16px;
      font-size:clamp(3rem,6vw,5.2rem);
      line-height:.95;
      letter-spacing:-.055em;
      max-width:740px;
    }

    .hero-copy h1 .accent-orange {
      color:var(--orange-2);
    }

    .hero-copy h1 .accent-gold {
      color:var(--gold);
    }

    .hero-copy p {
      margin:0;
      max-width:620px;
      color:var(--muted);
      font-size:1.07rem;
      line-height:1.72;
    }

    .hero-actions {
      display:flex;
      flex-wrap:wrap;
      gap:12px;
      margin-top:28px;
    }

    .featured {
      position:relative;
      min-height:420px;
      border-radius:30px;
      border:1px solid rgba(66,136,255,.48);
      overflow:hidden;
      background:
        linear-gradient(180deg,rgba(4,10,20,.04),rgba(4,10,20,.78)),
        radial-gradient(circle at 28% 24%,rgba(255,145,38,.18),transparent 26%),
        linear-gradient(135deg,#10213b,#0a1220 54%,#0a1730);
      box-shadow:
        0 0 38px rgba(43,108,255,.16),
        0 0 60px rgba(255,148,43,.08),
        var(--shadow),
        0 0 0 1px rgba(28,132,255,.08) inset;
    }

    .featured::before {
      content:"";
      position:absolute;
      inset:0;
      background:
        linear-gradient(90deg,transparent 0 49%,rgba(255,255,255,.025) 50%,transparent 51%),
        linear-gradient(0deg,transparent 0 49%,rgba(255,255,255,.02) 50%,transparent 51%);
      background-size:48px 48px;
      opacity:.35;
    }

    .placeholder-art {
      position:absolute;
      inset:0;
      display:grid;
      place-items:center;
      color:rgba(255,255,255,.28);
      font-size:1rem;
      font-weight:800;
      letter-spacing:.12em;
      text-transform:uppercase;
    }

    .featured-content {
      position:absolute;
      inset:auto 28px 26px 28px;
      z-index:2;
    }

    .featured-badge {
      display:inline-flex;
      padding:7px 11px;
      border-radius:999px;
      border:1px solid rgba(255,255,255,.16);
      background:rgba(6,14,26,.68);
      font-size:.74rem;
      letter-spacing:.11em;
      text-transform:uppercase;
      font-weight:800;
    }

    .featured h2 {
      margin:14px 0 6px;
      font-size:2.2rem;
      letter-spacing:-.035em;
    }

    .featured p {
      margin:0 0 18px;
      color:#c4cfdf;
    }




    /* INFO STRIP */
    .facts {
      padding:8px 0 26px;
    }

    .facts-grid {
      display:grid;
      grid-template-columns:repeat(4,1fr);
      border:0;
    }

    .fact {
      display:flex;
      align-items:center;
      justify-content:flex-start;
      gap:17px;
      min-height:76px;
      padding:10px 26px;
      border-right:1px solid rgba(255,255,255,.12);
    }

    .fact:first-child {
      padding-left:14px;
    }

    .fact:last-child {
      border-right:0;
    }

    .fact-icon {
      width:48px;
      height:48px;
      flex:0 0 48px;
      display:grid;
      place-items:center;
      background:none;
      border:0;
      border-radius:0;
      filter:
        drop-shadow(0 0 5px rgba(79,111,255,.72))
        drop-shadow(0 0 13px rgba(74,101,255,.38));
    }

    .fact-icon img {
      width:46px;
      height:46px;
      overflow:visible;
    }

    .fact-copy {
      min-width:0;
      line-height:1.05;
    }

    .fact-copy strong {
      display:block;
      margin:0;
      color:#f7f9ff;
      font-family:Arial, Helvetica, sans-serif;
      font-size:1.14rem;
      font-weight:400;
      letter-spacing:-.01em;
      line-height:1.05;
      white-space:nowrap;
      text-shadow:none;
    }

    .fact-copy span {
      display:block;
      margin-top:5px;
      color:#7e8ba5;
      font-family:Arial, Helvetica, sans-serif;
      font-size:.66rem;
      font-weight:400;
      letter-spacing:.025em;
      line-height:1;
      white-space:nowrap;
      text-shadow:none;
    }

    /* GAME TICKER */
    .game-strip {
      border-top:1px solid var(--line);
      border-bottom:1px solid var(--line);
      background:rgba(255,255,255,.015);
    }

    .game-strip-inner {
      display:grid;
      grid-template-columns:260px 1fr;
      align-items:stretch;
      gap:26px;
      min-height:86px;
    }
    .game-strip-inner::-webkit-scrollbar { display:none; }

    .strip-title {
      min-width:0;
      padding:0 18px;
      border-right:1px solid var(--line);
      display:flex;
      align-items:center;
      justify-content:center;
      text-align:center;
    }
    .strip-title strong {
      display:block;
      font-size:1.02rem;
      color:var(--orange);
      text-transform:uppercase;
      letter-spacing:.13em;
      margin:0;
    }
    .strip-title span { color:var(--muted); font-size:.90rem; line-height:1.35; }

    .strip-list{
      min-width:0;
      display:flex;
      align-items:center;
      gap:20px;
      overflow:auto;
      scrollbar-width:none;
    }

    .strip-list::-webkit-scrollbar{
      display:none;
    }

    .strip-game {
      display:flex;
      align-items:center;
      gap:10px;
      min-width:max-content;
      font-size:1.08rem;
      font-weight:700;
      letter-spacing:.005em;
    }
    .strip-game i {
      width:40px;
      height:40px;
      border-radius:50%;
      display:grid;
      place-items:center;
      border:1px solid rgba(255,255,255,.11);
      background:#0b1728;
      font-style:normal;
    }
    .dot { color:var(--orange); opacity:.9; }

    /* GAMES */
    .games-section {
      padding:58px 0 26px;
    }

    .section-head {
      display:flex;
      align-items:end;
      justify-content:space-between;
      gap:24px;
      margin-bottom:24px;
    }

    .section-head h2 {
      margin:8px 0 0;
      font-size:clamp(2rem,4vw,3.1rem);
      letter-spacing:-.045em;
    }

    .section-head p {
      margin:0;
      max-width:520px;
      color:var(--muted);
      line-height:1.65;
    }

    .cards {
      display:grid;
      grid-template-columns:repeat(3,1fr);
      gap:18px;
    }

    .game-card {
      min-height:330px;
      border-radius:22px;
      overflow:hidden;
      position:relative;
      border:1px solid var(--line);
      background:
        linear-gradient(180deg,transparent 0%,rgba(5,10,18,.88) 68%,rgba(5,10,18,.98) 100%),
        linear-gradient(135deg,#152642,#0a1424);
      box-shadow:0 15px 40px rgba(0,0,0,.22);
    }

    .game-card::after {
      content:"IMMAGINE GIOCO";
      position:absolute;
      inset:0;
      display:grid;
      place-items:center;
      color:rgba(255,255,255,.16);
      font-weight:900;
      letter-spacing:.12em;
      font-size:.78rem;
    }

    .game-card-content {
      position:absolute;
      z-index:2;
      inset:auto 18px 18px 18px;
    }

    .game-card h3 {
      margin:0 0 5px;
      font-size:1.5rem;
      letter-spacing:-.02em;
    }

    .game-card p {
      margin:0 0 16px;
      color:#b9c4d4;
      font-size:.92rem;
    }

    .card-action {
      display:inline-flex;
      align-items:center;
      justify-content:center;
      gap:.45rem;
      min-height:36px;
      padding:0 16px;
      border-radius:999px;
      font-family:Arial, Helvetica, sans-serif;
      font-size:.84rem;
      font-weight:600;
      letter-spacing:.005em;
      white-space:nowrap;
      text-decoration:none;
      transition:.2s ease;
    }

    .card-action.available {
      color:#f7fbff;
      border:1px solid rgba(135,182,255,.16);
      background:linear-gradient(180deg,#2f6dff 0%, #2154e8 100%);
      box-shadow:
        inset 0 1px 0 rgba(214,232,255,.18),
        0 10px 22px rgba(39,94,255,.20);
    }

    .card-action.available:hover {
      transform:translateY(-1px);
      box-shadow:
        inset 0 1px 0 rgba(214,232,255,.20),
        0 14px 26px rgba(39,94,255,.28);
    }

    .card-action.upcoming {
      color:#c5cfde;
      border:1px solid rgba(255,255,255,.08);
      background:rgba(20,26,40,.72);
      box-shadow:inset 0 1px 0 rgba(255,255,255,.03);
      cursor:default;
    }

    .card-action.upcoming .lock {
      font-size:.82rem;
      opacity:.9;
      line-height:1;
    }

    .status {
      display:inline-flex;
      align-items:center;
      gap:7px;
      padding:7px 10px;
      border-radius:999px;
      background:rgba(0,0,0,.32);
      border:1px solid var(--line);
      color:#dce5f2;
      font-size:.77rem;
      font-weight:800;
    }

    .status.live::before {
      content:"";
      width:8px;height:8px;border-radius:50%;
      background:#38d878;
      box-shadow:0 0 12px rgba(56,216,120,.65);
    }

    .status.soon::before {
      content:"";
      width:8px;height:8px;border-radius:50%;
      background:var(--orange);
      box-shadow:0 0 12px rgba(255,158,24,.5);
    }

    /* CTA */
    .cta-wrap {
      padding:30px 0 42px;
    }

    .cta {
      position:relative;
      min-height:88px;
      display:grid;
      grid-template-columns:1fr auto;
      align-items:center;
      gap:24px;
      overflow:hidden;
      border-radius:18px;
      border:1px solid rgba(255,158,24,.48);
      background:
        radial-gradient(circle at 17% 48%,rgba(255,151,24,.18),transparent 22%),
        radial-gradient(circle at 82% 50%,rgba(24,115,255,.18),transparent 25%),
        linear-gradient(90deg,#0a1424 0%,#0d1830 48%,#091526 100%);
      padding:16px 26px;
      box-shadow:0 18px 55px rgba(0,0,0,.26);
    }

    .cta::before,
    .cta::after {
      content:"";
      position:absolute;
      left:0;
      right:0;
      bottom:-1px;
      height:56px;
      pointer-events:none;
    }

    .cta::before {
      background:
        linear-gradient(145deg, transparent 0 8%, rgba(20,43,73,.95) 8% 15%, transparent 15% 24%,
        rgba(15,36,64,.92) 24% 33%, transparent 33% 44%,
        rgba(19,47,82,.85) 44% 54%, transparent 54% 66%,
        rgba(17,39,69,.9) 66% 78%, transparent 78% 100%);
      opacity:.85;
    }

    .cta::after {
      background:linear-gradient(180deg,transparent,rgba(5,10,18,.68));
    }

    .cta > * {
      position:relative;
      z-index:2;
    }

    .cta h2 {
      margin:5px 0 0;
      font-size:clamp(1.65rem,2.45vw,2.35rem);
      letter-spacing:-.03em;
      line-height:1;
      white-space:nowrap;
    }

    .cta-action {
      justify-self:end;
    }

    /* FOOTER */
    footer {
      border-top:1px solid var(--line);
      background:#050b14;
      padding:38px 0 20px;
    }

    .footer-grid {
      display:grid;
      grid-template-columns:1.35fr repeat(3,.75fr);
      gap:36px;
      padding-bottom:28px;
    }

    .footer-brand img {
      width:180px;
      display:block;
      margin-bottom:14px;
    }
    .footer-brand p {
      color:var(--muted);
      line-height:1.6;
      max-width:360px;
      margin:0;
    }

    .footer-col h4 {
      margin:0 0 12px;
      font-size:.86rem;
      text-transform:uppercase;
      letter-spacing:.13em;
      color:#d9e2ef;
    }

    .footer-col a {
      display:block;
      color:var(--muted);
      padding:4px 0;
      font-size:.92rem;
    }

    .footer-bottom {
      border-top:1px solid var(--line);
      padding-top:18px;
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap:18px;
      color:#7f8ca0;
      font-size:.8rem;
    }


    .socials{
      display:flex;
      align-items:center;
      gap:10px;
      margin-top:10px;
    }

    .social-btn{
      width:40px;
      height:40px;
      display:grid !important;
      place-items:center;
      padding:0 !important;
      border-radius:50%;
      border:1px solid var(--line);
      background:rgba(255,255,255,.035);
      transition:.2s ease;
    }

    .social-btn:hover{
      transform:translateY(-2px);
      border-color:rgba(255,158,24,.45);
      background:rgba(255,158,24,.08);
    }

    .social-btn svg{
      width:19px;
      height:19px;
      fill:#dfe7f3;
    }

    .footer-legal{
      display:flex;
      align-items:center;
      gap:9px;
      flex-wrap:wrap;
      justify-content:flex-end;
    }

    .footer-legal a{
      color:#8f9caf;
    }


    /* RESPONSIVE */
    @media (max-width:980px) {
      .desktop-nav, .header-cta { display:none; }
      .mobile-toggle { display:grid; place-items:center; }
      .hero-grid { grid-template-columns:1fr; gap:32px; }
      .hero-copy h1 { max-width:820px; }
      .featured { min-height:360px; }
      .facts-grid { grid-template-columns:repeat(2,1fr); }
      .fact:nth-child(2) { border-right:0; }
      .fact:nth-child(-n+2) { border-bottom:1px solid rgba(255,255,255,.10); }
      .cards { grid-template-columns:repeat(2,1fr); }
      .footer-grid { grid-template-columns:1.2fr 1fr 1fr; }
      .footer-col:last-child { display:none; }
    }

    @media (max-width:680px) {
      .container { width:min(100% - 22px,var(--content)); }
      .site-header .brand img { width:154px; }
      .hero { padding-top:38px; }
      .hero-copy h1 { font-size:clamp(2.6rem,13vw,4.2rem); }
      .hero-copy p { font-size:1rem; }
      .hero-actions { display:grid; grid-template-columns:1fr; }
      .hero-actions .btn { width:100%; }
      .featured { min-height:320px; border-radius:22px; }
      .featured-content { inset:auto 20px 20px 20px; }
      .featured h2 { font-size:1.8rem; }
      .facts-grid { grid-template-columns:1fr; }
      .fact {
        border-right:0 !important;
        border-bottom:1px solid rgba(255,255,255,.10);
        min-height:70px;
        padding:10px 16px;
      }
      .fact:first-child { padding-left:16px; }
      .fact-icon {
        width:43px;
        height:43px;
        flex-basis:43px;
      }
      .fact-icon img {
        width:41px;
        height:41px;
      }
      .fact-copy strong {
        font-size:1.04rem;
      }
      .fact:last-child { border-bottom:0; }
      .game-strip-inner { grid-template-columns:1fr; gap:0; }
      .strip-title {
        border-right:0;
        border-bottom:1px solid var(--line);
        padding:14px 0;
      }
      .strip-list {
        padding:14px 0;
      }
      .section-head { display:block; }
      .section-head p { margin-top:12px; }
      .cards { grid-template-columns:1fr; }
      .game-card { min-height:300px; }
      .cta {
        grid-template-columns:1fr;
        gap:14px;
        padding:18px 20px;
      }
      .cta h2 { white-space:normal; }
      .cta-action { justify-self:start; }
      .footer-grid { grid-template-columns:1fr 1fr; }
      .footer-brand { grid-column:1/-1; }
      .footer-col:last-child { display:block; }
      .footer-bottom { align-items:flex-start; flex-direction:column; }
      .footer-legal { justify-content:flex-start; }
    }

/* === CMS dynamic integration === */
.skip{position:fixed;top:-120px;left:16px;z-index:1000;padding:10px 14px;border-radius:10px;background:#fff;color:#08111f}.skip:focus{top:16px}
.featured-art{background-image:linear-gradient(180deg,rgba(4,10,20,.10),rgba(4,10,20,.82)),var(--featured-image)!important;background-size:cover!important;background-position:center!important}.featured-art .featured-content{text-shadow:0 2px 18px rgba(0,0,0,.55)}
.game-card{isolation:isolate}.game-card.has-art{background:#08111f}.game-card.has-art::before{content:"";position:absolute;inset:0;z-index:-2;background-image:linear-gradient(180deg,rgba(5,10,18,.06) 0%,rgba(5,10,18,.44) 48%,rgba(5,10,18,.96) 78%,rgba(5,10,18,1) 100%),var(--card-image);background-size:cover;background-position:center}.game-card.has-art::after{display:none}.game-card-hit{position:absolute;inset:0;z-index:1}.game-card-content{z-index:2;pointer-events:none}.game-card-content a,.game-card-content button{pointer-events:auto}.strip-game{text-decoration:none}.strip-game:hover{color:#fff}.social-empty{color:var(--muted);margin:0}
.social-btn span{font-weight:700;color:#dfe7f3}.social-btn svg{display:block}

/* === Generic internal pages === */
.page-hero{position:relative;overflow:hidden;padding:54px 0 22px;background:radial-gradient(circle at 12% 44%,rgba(255,129,32,.14),transparent 22%),radial-gradient(circle at 90% 8%,rgba(43,108,255,.14),transparent 24%)}
.page-hero::after{content:"";position:absolute;inset:0;pointer-events:none;opacity:.18;background-image:radial-gradient(rgba(255,255,255,.08) .7px,transparent .7px);background-size:4px 4px;mix-blend-mode:soft-light}
.page-hero-inner{position:relative;z-index:1;max-width:920px}.page-kicker{margin:0 0 12px;color:var(--orange);text-transform:uppercase;letter-spacing:.18em;font-size:.90rem;font-weight:700}.page-title{margin:0;font-size:clamp(2.6rem,5.6vw,4.4rem);line-height:.95;letter-spacing:-.045em}.page-meta{margin-top:12px;color:#7f8ba1;font-size:1rem}
.page-wrap{padding:18px 0 72px}.page-layout{display:grid;grid-template-columns:minmax(0,1fr) 290px;gap:28px;align-items:start}.content-card,.side-card{background:linear-gradient(180deg,rgba(10,17,31,.88),rgba(9,14,27,.96));border:1px solid rgba(255,255,255,.08);box-shadow:0 18px 44px rgba(0,0,0,.28)}.content-card{border-radius:24px;padding:36px 36px 28px}.content-card>.lead{margin:0 0 28px;color:#c5d0df;font-size:1.08rem;line-height:1.85}.content-section+.content-section{margin-top:26px;padding-top:24px;border-top:1px solid rgba(255,255,255,.07)}.content-section h2,.prose h2{margin:0 0 12px;font-size:1.52rem;line-height:1.08;letter-spacing:-.03em}.prose h2:not(:first-child){margin-top:26px;padding-top:24px;border-top:1px solid rgba(255,255,255,.07)}.content-section h3,.prose h3{margin:22px 0 8px;font-size:1.16rem}.content-section p,.content-section li,.prose p,.prose li{color:#b6c2d5;font-size:1rem;line-height:1.8}.content-section ul,.prose ul,.content-section ol,.prose ol{padding-left:24px}.content-section a,.prose a{color:var(--orange)}.prose details{padding:16px 0;border-bottom:1px solid rgba(255,255,255,.07)}.prose summary{cursor:pointer;color:#f4f7fd;font-weight:650}.side{display:grid;gap:18px;position:sticky;top:96px}.side-card{border-radius:18px;padding:18px}.side-title{margin:0 0 12px;color:#f4f7fd;font-size:.88rem;font-weight:700;text-transform:uppercase;letter-spacing:.14em}.side-nav{display:grid;gap:8px}.side-nav a{display:block;padding:10px 12px;border-radius:12px;color:#c4d0e1;background:rgba(255,255,255,.02);border:1px solid rgba(255,255,255,.05)}.side-nav a:hover{color:#fff;border-color:rgba(255,158,24,.22);background:rgba(255,158,24,.05)}.lang-switch{display:grid;gap:10px}.lang-btn{display:inline-flex;align-items:center;gap:10px;min-height:42px;padding:0 14px;border-radius:999px;border:1px solid rgba(255,255,255,.08);color:#dde5ef;background:rgba(255,255,255,.03);font-size:.92rem;font-weight:600}.lang-btn.active{color:#fff;border-color:rgba(255,196,96,.22);background:linear-gradient(180deg,#f8a536 0%,#ef8420 100%);box-shadow:inset 0 1px 0 rgba(255,240,185,.18),0 12px 28px rgba(241,129,26,.18)}

/* Forms */
.public-form{display:grid;gap:18px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.public-form label{display:grid;gap:8px;color:#dfe6ef;font-size:.92rem}.public-form input,.public-form textarea,.public-form select{width:100%;min-width:0;padding:12px 14px;border-radius:12px;border:1px solid rgba(255,255,255,.10);background:#07111f;color:#f7f9ff;font:inherit}.public-form textarea{resize:vertical}.check{display:flex!important;align-items:center;gap:10px}.check input{width:20px;height:20px}.captcha-box{border:1px solid rgba(255,255,255,.08);border-radius:14px;padding:16px;display:grid;gap:10px}.captcha-box input{max-width:220px}.text-button{border:0;background:transparent;color:var(--orange);padding:0;text-align:left;cursor:pointer}.honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.form-status{min-height:22px;color:var(--muted)}

/* === Game detail page === */
.game-detail{padding:28px 0 72px}.breadcrumbs{display:flex;flex-wrap:wrap;gap:10px;color:#7f8ba1;font-size:.95rem;margin-bottom:22px}.breadcrumbs .sep{opacity:.6}.breadcrumbs a:hover{color:#fff}.meta-pills{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:18px}.pill{display:inline-flex;align-items:center;min-height:34px;padding:0 14px;border-radius:999px;border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.03);color:#edf3fa;font-size:.78rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase}.pill.live{color:#102311;border-color:rgba(173,234,153,.35);background:linear-gradient(180deg,#8de26e 0%,#6cc853 100%);box-shadow:0 10px 24px rgba(91,191,63,.18)}.game-page-title{margin:0 0 10px;font-size:clamp(2.7rem,6vw,4.6rem);line-height:.95;letter-spacing:-.05em}.game-page-subtitle{margin:0 0 28px;color:#d1d9e5;font-size:1.25rem;line-height:1.45}.game-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:28px;align-items:start}.game-stage{border:1px solid rgba(255,255,255,.08);border-radius:26px;overflow:hidden;background:linear-gradient(180deg,rgba(10,17,31,.88),rgba(9,14,27,.96));box-shadow:0 18px 44px rgba(0,0,0,.28)}
.game-viewport-shell{width:100%;display:flex;justify-content:center;align-items:flex-start;background:#050914;overflow:hidden}.game-viewport{position:relative;overflow:hidden;background:#050914;max-width:100%}.game-viewport iframe{position:absolute;left:0;top:0;border:0;max-width:none;transform-origin:top left;background:#050914}.game-viewport:fullscreen{width:100vw!important;height:100vh!important;max-width:none!important;border:0!important;border-radius:0!important;background:#050914}.game-stage-actions{display:flex;flex-wrap:wrap;gap:12px;padding:18px 20px 20px;border-top:1px solid rgba(255,255,255,.05);background:rgba(255,255,255,.015)}.game-state{min-height:420px;display:grid;place-items:center;text-align:center;padding:36px}.game-state h2{margin:6px 0 10px;font-size:2rem}.game-state p{max-width:620px;color:#b7c2d2}.state-symbol{font-size:3.2rem;color:var(--orange)}.game-side{display:grid;gap:18px}.side-kicker{margin:0 0 18px;color:#8a97ae;font-size:.82rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase}.glance-list{display:grid;gap:14px;margin-bottom:18px}.glance-row{display:flex;align-items:center;justify-content:space-between;gap:18px;color:#dae2ed;font-size:.98rem}.glance-row .label{color:#a6b2c6}.glance-row .value{color:#f3f7fd;font-weight:600;text-align:right}.side-divider{height:1px;margin:18px 0;background:rgba(255,255,255,.08)}.side-section-title{margin:0 0 12px;color:#f4f8fe;font-size:1rem;font-weight:700}.control-list{display:grid;gap:10px;margin:0;padding:0;list-style:none}.control-list li{color:#bcc7d7;line-height:1.55;font-size:.96rem}.game-intro{margin:18px 0 0;color:#c3cfde;font-size:1.04rem;line-height:1.85}.info-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px;margin-top:38px}.info-block h2{margin:0 0 18px;font-size:2rem;letter-spacing:-.04em;line-height:1}.number-list,.tip-list{display:grid;gap:16px;margin:0;padding:0;list-style:none}.number-list li,.tip-list li{display:flex;gap:14px;align-items:flex-start;color:#ccd6e4;line-height:1.7;font-size:1rem}.num-disc{width:32px;height:32px;flex:0 0 32px;border-radius:50%;display:grid;place-items:center;color:#112617;font-weight:800;font-size:.94rem;background:linear-gradient(180deg,#91e46c 0%,#6dcb53 100%);box-shadow:0 10px 20px rgba(91,191,63,.16)}.tip-mark{width:20px;flex:0 0 20px;color:var(--orange);font-size:1rem;line-height:1.8}.muted-copy{color:#aeb9ca;line-height:1.75}.game-metrics{color:#aeb9ca;font-size:.86rem;line-height:1.7}.rating{display:block}.vote-form fieldset{border:0;padding:0;margin:12px 0}.vote-form legend{font-size:.9rem;color:#cbd5e1;margin-bottom:8px}.stars{display:flex;flex-wrap:wrap;gap:8px}.stars label{position:relative}.stars input{position:absolute;opacity:0}.stars span{display:inline-flex;padding:7px 9px;border-radius:10px;border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.03);cursor:pointer;font-size:.8rem}.stars input:checked+span{border-color:rgba(248,165,54,.5);background:rgba(248,165,54,.12);color:#ffd66d}.more-section{margin-top:56px;padding-top:34px;border-top:1px solid rgba(255,255,255,.08)}.game-more-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:22px}.game-more-head h2{margin:0;font-size:2.1rem;line-height:1;letter-spacing:-.04em}.section-link{color:#cfd8e6;font-size:1rem;font-weight:600}.game-mini-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.mini-card{border:1px solid rgba(255,255,255,.08);border-radius:20px;overflow:hidden;background:linear-gradient(180deg,rgba(10,17,31,.88),rgba(9,14,27,.96));box-shadow:0 18px 44px rgba(0,0,0,.28)}.mini-art{aspect-ratio:16/9;background:linear-gradient(180deg,rgba(20,34,60,.82),rgba(7,14,27,.96));background-size:cover;background-position:center}.mini-art.has-art{background-image:linear-gradient(180deg,rgba(4,10,20,.05),rgba(4,10,20,.35)),var(--mini-image)}.mini-content{padding:16px 16px 18px}.mini-content h3{margin:0 0 6px;font-size:1.38rem;letter-spacing:-.03em}.mini-content p{margin:0 0 14px;color:#b4bfd1;font-size:.95rem;line-height:1.65}.btn.blue{color:#f7fbff;border:1px solid rgba(135,182,255,.16);background:linear-gradient(180deg,#2f6dff 0%,#2154e8 100%);box-shadow:inset 0 1px 0 rgba(214,232,255,.16),0 10px 22px rgba(39,94,255,.20)}

/* AdSense */
.ad-slot{display:grid;place-items:center;min-height:100px;color:#75839a;font-size:.72rem;text-transform:uppercase;letter-spacing:.12em}.ad-body{width:100%;display:grid;place-items:center}.game-ad-shell{width:min(1640px,calc(100% - 24px));margin-inline:auto;display:grid;grid-template-columns:180px minmax(0,1240px) 180px;gap:18px;justify-content:center;align-items:start}.game-ad-main{min-width:0;grid-column:2}.ad-gameLeft,.ad-gameRight{position:sticky;top:100px;min-height:600px}.ad-gameBelow{margin-top:22px;min-height:120px}.ad-gameAbove{width:min(1240px,calc(100% - 40px));margin:18px auto 0;min-height:100px}.ad-homeAfterHero,.ad-homeAfterGames{width:min(1200px,calc(100% - 36px));margin:12px auto;min-height:100px}

/* Dialog */
dialog{width:min(620px,calc(100% - 28px));max-height:90vh;overflow:auto;border:1px solid rgba(255,255,255,.10);border-radius:22px;background:#0a1424;color:#f7f9ff;padding:22px;box-shadow:0 30px 90px rgba(0,0,0,.55)}dialog::backdrop{background:rgba(0,0,0,.62);backdrop-filter:blur(4px)}.dialog-head{display:flex;align-items:center;justify-content:space-between;gap:16px}.dialog-head h2{margin:0}.dialog-close{width:42px;height:42px;border-radius:50%;border:1px solid rgba(255,255,255,.10);background:rgba(255,255,255,.04);color:#fff;font-size:1.4rem;cursor:pointer}

@media(max-width:1680px){.game-ad-shell{grid-template-columns:minmax(0,1240px);width:min(1240px,calc(100% - 40px))}.ad-gameLeft,.ad-gameRight{position:static;min-height:100px}.game-ad-main{grid-column:1}.game-ad-shell>.ad-gameLeft{order:2}.game-ad-shell>.game-ad-main{order:1}.game-ad-shell>.ad-gameRight{order:3}}
@media(max-width:1080px){.page-layout,.game-layout{grid-template-columns:1fr}.side{position:static;grid-template-columns:repeat(2,minmax(0,1fr))}.game-mini-grid{grid-template-columns:1fr 1fr}.game-side{grid-template-columns:1fr 1fr}}
@media(max-width:760px){.page-hero{padding:36px 0 14px}.page-kicker{font-size:.78rem;letter-spacing:.14em}.page-meta{font-size:.90rem}.content-card{padding:24px 20px 20px;border-radius:18px}.content-card>.lead{font-size:1rem;line-height:1.7}.content-section h2,.prose h2{font-size:1.28rem}.content-section p,.content-section li,.prose p,.prose li{font-size:.96rem;line-height:1.72}.side,.game-side{grid-template-columns:1fr}.form-grid{grid-template-columns:1fr}.game-detail{padding:22px 0 54px}.game-page-subtitle{font-size:1.08rem}.game-stage-actions{padding:16px}.game-stage-actions .btn{min-height:44px;padding:0 16px;font-size:.90rem}.info-grid{grid-template-columns:1fr;gap:24px}.game-more-head{flex-direction:column;align-items:flex-start}.game-mini-grid{grid-template-columns:1fr}.game-ad-shell,.ad-gameAbove{width:min(100% - 20px,1240px)}}

.fact-icon img {object-fit:contain;display:block}

/* ===== STICKY FOOTER GLOBALE ===== */
html,
body {
  min-height: 100%;
}

body {
  min-height: 100vh;
  min-height: 100dvh;
  display: flex;
  flex-direction: column;
}

body > main {
  flex: 1 0 auto;
}

body > footer,
.site-footer {
  margin-top: auto;
  flex-shrink: 0;
}


/* GAMEXITA COOKIE BANNER */
.gx-cookie-banner{
 position:fixed;
 left:20px;
 right:20px;
 bottom:20px;
 z-index:9999;
 max-width:1180px;
 margin:0 auto;
 padding:18px 20px;
 display:flex;
 align-items:center;
 justify-content:space-between;
 gap:24px;
 background:#0b1626;
 border:1px solid rgba(255,255,255,.14);
 border-radius:18px;
 box-shadow:0 18px 60px rgba(0,0,0,.45);
 color:#fff;
}

.gx-cookie-banner[hidden]{
 display:none!important;
}

.gx-cookie-copy{
 max-width:760px;
}

.gx-cookie-copy strong{
 display:block;
 margin-bottom:5px;
 font-size:1.05rem;
}

.gx-cookie-copy p{
 margin:0 0 6px;
 line-height:1.5;
 color:rgba(255,255,255,.78);
}

.gx-cookie-copy a,
.gx-cookie-dialog a{
 color:#7fc4ff;
}

.gx-cookie-actions{
 display:flex;
 gap:10px;
 flex-wrap:wrap;
 justify-content:flex-end;
}

.gx-cookie-dialog{
 width:min(620px,calc(100vw - 32px));
 padding:0;
 border:1px solid rgba(255,255,255,.14);
 border-radius:18px;
 background:#0b1626;
 color:#fff;
 box-shadow:0 24px 80px rgba(0,0,0,.6);
}

.gx-cookie-dialog::backdrop{
 background:rgba(0,0,0,.68);
}

.gx-cookie-dialog-head{
 display:flex;
 align-items:center;
 justify-content:space-between;
 padding:18px 20px;
 border-bottom:1px solid rgba(255,255,255,.10);
 font-size:1.1rem;
}

.gx-cookie-x{
 border:0;
 background:transparent;
 color:#fff;
 font-size:1.7rem;
 cursor:pointer;
}

.gx-cookie-option{
 display:flex;
 align-items:center;
 justify-content:space-between;
 gap:20px;
 padding:18px 20px;
 border-bottom:1px solid rgba(255,255,255,.08);
}

.gx-cookie-option p{
 margin:5px 0 0;
 color:rgba(255,255,255,.68);
 line-height:1.45;
}

.gx-cookie-option input{
 width:22px;
 height:22px;
 flex:0 0 auto;
}

.gx-cookie-dialog-actions{
 display:flex;
 align-items:center;
 justify-content:space-between;
 gap:16px;
 padding:18px 20px;
}

@media(max-width:720px){
 .gx-cookie-banner{
  left:10px;
  right:10px;
  bottom:10px;
  padding:16px;
  align-items:stretch;
  flex-direction:column;
 }

 .gx-cookie-actions{
  display:grid;
  grid-template-columns:1fr 1fr;
 }

 .gx-cookie-actions .primary{
  grid-column:1/-1;
 }

 .gx-cookie-dialog-actions{
  align-items:stretch;
  flex-direction:column;
 }
}


.footer-cookie-preferences{
 background:none;
 border:0;
 padding:0;
 margin:0;
 color:inherit;
 font:inherit;
 cursor:pointer;
 text-decoration:none;
}

.footer-cookie-preferences:hover{
 text-decoration:underline;
}
