ul.pagination-list {
    display: flex;
    list-style: none;
}

li {
    padding-right: 10px;
}

#sp-main-body {
  padding: 10px 0;
}

.minimenu-giocagiaco {
  position: fixed;
  top: 20px;
  left: 0px;
  width: 52px;
  z-index: 2;
  padding-top: 100px; 
  margin: 10px;
  
}
.minimenu-giocagiaco-btn {
  border-radius: 50%; 
  width: 50px; 
  height: 50px;
  font-size:22px;
}


.winners {
 	position: relative;
}

.winners::after {
  content: "\f091";
    font-family: FontAwesome;
    font-style: normal;
    font-weight: normal;
    text-decoration: inherit;
/*personalizzare come necessario*/
    position: absolute;
    right: 0;
}

#gold_cup {
	color: gold;  	
}

#silver_cup {
	color: silver;  	
}

#bronze_cup {
	color: chocolate;  	
}



:root {
  --gg-blue: #0b4d91;
  --gg-blue-dark: #073565;
  --gg-blue-light: #eaf3fc;
  --gg-green: #168b4d;
  --gg-gold: #f4b323;
  --gg-ink: #20354c;
  --gg-muted: #64758a;
  --gg-line: #dbe5ef;
  --gg-bg: #f5f8fc;
  --gg-white: #fff;
  --gg-shadow: 0 12px 32px rgba(20, 54, 88, .12);
}


.gg-home-v2,
.gg-home-v2 * {
    box-sizing: border-box;
}

.gg-home-v2 {
    overflow: hidden;
    color: var(--gg-ink);
    background: var(--gg-bg);
    font-family: Arial, Helvetica, sans-serif;
    line-height: 1.55;
}

.gg-home-v2 a {
    color: inherit;
}

.gg-home-v2 img {
    max-width: 100%;
    height: auto;
}

.gg-container { width: min(1180px, calc(100% - 32px)); margin: 0 auto; }
.gg-section { padding: 76px 0; }
.gg-section--white { background: var(--gg-white); }
.gg-section--soft { background: var(--gg-bg); }

.gg-kicker {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 10px;
  color: var(--gg-blue);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
}
.gg-kicker::before {
  content: "";
  width: 24px;
  height: 3px;
  border-radius: 3px;
  background: var(--gg-gold);
}
.gg-heading {
  margin: 0 0 14px;
  color: var(--gg-ink);
  font-size: clamp(30px, 4vw, 46px);
  line-height: 1.08;
  letter-spacing: -.03em;
}
.gg-lead {
  max-width: 760px;
  margin: 0;
  color: var(--gg-muted);
  font-size: 18px;
}
.gg-section-head { margin-bottom: 34px; }

.gg-btns { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 26px; }
.gg-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 48px;
  padding: 12px 20px;
  border: 1px solid transparent;
  border-radius: 12px;
  font-size: 15px;
  font-weight: 800;
  text-decoration: none;
  transition: transform .18s ease, box-shadow .18s ease, background .18s ease;
}
.gg-btn:hover { transform: translateY(-2px); }
.gg-btn--primary { color: #fff; background: linear-gradient(135deg, #1973d7, var(--gg-blue)); box-shadow: 0 8px 20px rgba(11, 77, 145, .25); }
.gg-btn--secondary { color: var(--gg-blue); background: #fff; border-color: #bfd1e3; }
.gg-btn--ghost { color: #fff; background: rgba(255,255,255,.12); border-color: rgba(255,255,255,.35); }

.gg-hero2 {
  position: relative;
  min-height: 650px;
  display: flex;
  align-items: center;
  color: #fff;
  background:
    linear-gradient(90deg, rgba(4, 35, 70, .94) 0%, rgba(6, 49, 96, .82) 52%, rgba(4, 35, 70, .36) 100%),
    url('/images/2026/05/14/wc2026_1.jpeg') center/cover no-repeat;
}
.gg-hero2::after {
  content: "";
  position: absolute;
  inset: auto 0 0;
  height: 130px;
  background: linear-gradient(transparent, rgba(4, 29, 55, .35));
  pointer-events: none;
}
.gg-hero2__inner {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: minmax(0, 1.25fr) minmax(260px, .75fr);
  gap: 44px;
  align-items: center;
  padding: 92px 0;
}
.gg-hero2__badge {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 7px 11px;
  border: 1px solid rgba(255,255,255,.28);
  border-radius: 999px;
  background: rgba(255,255,255,.10);
  font-size: 12px;
  font-weight: 800;
}
.gg-hero2 h1 {
  max-width: 800px;
  margin: 18px 0 18px;
  color: #fff;
  font-size: clamp(42px, 6vw, 72px);
  line-height: .98;
  letter-spacing: -.045em;
}
.gg-hero2__copy { max-width: 720px; margin: 0; color: rgba(255,255,255,.88); font-size: 19px; }
.gg-hero2__note { margin-top: 16px; color: rgba(255,255,255,.72); font-size: 13px; }
.gg-hero2__logo-card {
  justify-self: end;
  width: min(340px, 100%);
  padding: 28px;
  text-align: center;
  border: 1px solid rgba(255,255,255,.25);
  border-radius: 24px;
  background: rgba(255,255,255,.12);
  box-shadow: 0 18px 50px rgba(0,0,0,.22);
  backdrop-filter: blur(8px);
}
.gg-hero2__logo-card img { width: 210px; }
.gg-hero2__logo-card strong { display: block; margin-top: 12px; font-size: 17px; }
.gg-hero2__logo-card span { display: block; margin-top: 4px; color: rgba(255,255,255,.72); font-size: 13px; }

.gg-competition { margin-top: -42px; position: relative; z-index: 3; }
.gg-competition__card {
  display: grid;
  grid-template-columns: 180px 1fr;
  gap: 28px;
  align-items: center;
  padding: 28px;
  background: #fff;
  border: 1px solid var(--gg-line);
  border-radius: 22px;
  box-shadow: var(--gg-shadow);
}
.gg-competition__logo {
  display: grid;
  place-items: center;
  min-height: 160px;
  border-radius: 18px;
  background: linear-gradient(145deg, #eef6ff, #fff);
}
.gg-competition__logo img { width: 145px; }
.gg-status {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: var(--gg-green);
  font-size: 12px;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: .06em;
}
.gg-status::before {
  content: "";
  width: 9px;
  height: 9px;
  border-radius: 50%;
  background: var(--gg-green);
  box-shadow: 0 0 0 5px rgba(22, 139, 77, .12);
}
.gg-competition h2 { margin: 8px 0 8px; font-size: clamp(27px, 3vw, 38px); line-height: 1.1; }
.gg-competition p { margin: 0; color: var(--gg-muted); }
.gg-stat-strip {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 10px;
  margin-top: 22px;
}
.gg-stat {
  padding: 12px;
  border: 1px solid var(--gg-line);
  border-radius: 12px;
  background: #f9fbfe;
  text-align: center;
}
.gg-stat strong { display: block; color: var(--gg-blue); font-size: 20px; }
.gg-stat span { color: var(--gg-muted); font-size: 11px; }

.gg-grid-3 { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; }
.gg-card2 {
  height: 100%;
  padding: 24px;
  border: 1px solid var(--gg-line);
  border-radius: 18px;
  background: #fff;
  box-shadow: 0 6px 20px rgba(23, 57, 91, .06);
}
.gg-number {
  display: grid;
  place-items: center;
  width: 44px;
  height: 44px;
  margin-bottom: 18px;
  color: #fff;
  border-radius: 14px;
  background: linear-gradient(135deg, #1973d7, var(--gg-blue));
  font-weight: 900;
}
.gg-card2 h3 { margin: 0 0 8px; font-size: 20px; }
.gg-card2 p { margin: 0; color: var(--gg-muted); }

.gg-feature-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; }
.gg-feature {
  display: flex;
  gap: 14px;
  padding: 20px;
  border: 1px solid var(--gg-line);
  border-radius: 16px;
  background: #fff;
}
.gg-feature__icon {
  display: grid;
  place-items: center;
  flex: 0 0 42px;
  height: 42px;
  border-radius: 12px;
  color: var(--gg-blue);
  background: var(--gg-blue-light);
  font-size: 20px;
}
.gg-feature h3 { margin: 0 0 5px; font-size: 16px; }
.gg-feature p { margin: 0; color: var(--gg-muted); font-size: 13px; }

.gg-live-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; }
.gg-live-card {
  position: relative;
  min-height: 270px;
  padding: 25px;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  overflow: hidden;
  color: #fff;
  border-radius: 20px;
  background: linear-gradient(145deg, #0d5aa7, #072f5c);
  box-shadow: var(--gg-shadow);
}
.gg-live-card:nth-child(2) { background: linear-gradient(145deg, #168b4d, #0c5530); }
.gg-live-card:nth-child(3) { background: linear-gradient(145deg, #ca8210, #8d5000); }
.gg-live-card::before {
  content: "";
  position: absolute;
  width: 160px;
  height: 160px;
  right: -45px;
  top: -45px;
  border-radius: 50%;
  background: rgba(255,255,255,.09);
}
.gg-live-card h3 { position: relative; margin: 0 0 8px; font-size: 23px; }
.gg-live-card p { position: relative; margin: 0 0 18px; color: rgba(255,255,255,.78); }
.gg-live-card a { position: relative; font-weight: 800; text-decoration: none; }

.gg-story {
  display: grid;
  grid-template-columns: .9fr 1.1fr;
  gap: 48px;
  align-items: center;
}
.gg-story__visual {
  min-height: 420px;
  display: grid;
  place-items: center;
  padding: 30px;
  border-radius: 24px;
  background:
    linear-gradient(rgba(5, 42, 82, .25), rgba(5, 42, 82, .25)),
    url('/images/2023/12/14/istock-470755388.jpg') center/cover no-repeat;
  box-shadow: var(--gg-shadow);
}
.gg-story__year {
  padding: 18px 24px;
  color: #fff;
  border: 1px solid rgba(255,255,255,.35);
  border-radius: 18px;
  background: rgba(3, 33, 64, .72);
  text-align: center;
  backdrop-filter: blur(7px);
}
.gg-story__year strong { display: block; color: var(--gg-gold); font-size: 54px; line-height: 1; }
.gg-story__year span { display: block; margin-top: 7px; font-weight: 800; }

.gg-community {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 28px;
  align-items: stretch;
}
.gg-community__copy,
.gg-quotes {
  padding: 30px;
  border-radius: 22px;
  background: #fff;
  border: 1px solid var(--gg-line);
}
.gg-quote { margin: 0; padding: 15px 0; color: var(--gg-muted); font-size: 16px; font-style: italic; border-bottom: 1px solid var(--gg-line); }
.gg-quote:last-child { border-bottom: 0; }

.gg-archive { display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px; }
.gg-archive-card {
  padding: 20px;
  border: 1px solid var(--gg-line);
  border-radius: 16px;
  background: #fff;
}
.gg-archive-card span { display: block; margin-bottom: 8px; color: var(--gg-blue); font-size: 12px; font-weight: 800; text-transform: uppercase; }
.gg-archive-card h3 { margin: 0 0 14px; font-size: 18px; }
.gg-archive-card a { color: var(--gg-blue); font-size: 13px; font-weight: 800; text-decoration: none; }

.gg-participation {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 20px;
}
.gg-participation-card {
  padding: 28px;
  color: #fff;
  border-radius: 20px;
  background: linear-gradient(145deg, #0d5aa7, #073565);
}
.gg-participation-card:nth-child(2) { background: linear-gradient(145deg, #168b4d, #0b5f34); }
.gg-participation-card h3 { margin: 0 0 8px; font-size: 24px; }
.gg-participation-card p { margin: 0 0 20px; color: rgba(255,255,255,.8); }

.gg-final {
  padding: 74px 0;
  color: #fff;
  text-align: center;
  background: linear-gradient(135deg, #0c5eb5, #062e59);
}
.gg-final h2 { max-width: 800px; margin: 0 auto 14px; color: #fff; font-size: clamp(34px, 5vw, 52px); line-height: 1.05; }
.gg-final p { max-width: 700px; margin: 0 auto; color: rgba(255,255,255,.8); font-size: 18px; }
.gg-final .gg-btns { justify-content: center; }

.gg-home-v2 a.gg-btn.gg-btn--secondary {
    color: #0b4d91 !important;
    background-color: #ffffff !important;
    border: 1px solid #bfd1e3 !important;
    text-decoration: none !important;
}

.gg-home-v2 a.gg-btn.gg-btn--secondary:hover,
.gg-home-v2 a.gg-btn.gg-btn--secondary:focus,
.gg-home-v2 a.gg-btn.gg-btn--secondary:active {
    color: #ffffff !important;
    background-color: #0b4d91 !important;
    border-color: #0b4d91 !important;
    text-decoration: none !important;
}


@media (max-width: 991px) {
  .gg-hero2__inner, .gg-story { grid-template-columns: 1fr; }
  .gg-hero2__logo-card { justify-self: start; width: 260px; }
  .gg-grid-3, .gg-feature-grid, .gg-live-grid { grid-template-columns: 1fr 1fr; }
  .gg-archive { grid-template-columns: 1fr 1fr; }
  .gg-competition__card { grid-template-columns: 140px 1fr; }
}

@media (max-width: 700px) {
  .gg-section { padding: 54px 0; }
  .gg-container { width: min(100% - 22px, 1180px); }
  .gg-hero { min-height: auto; }
  .gg-hero2__inner { padding: 72px 0 92px; gap: 28px; }
  .gg-hero2__logo-card { display: none; }
  .gg-competition { margin-top: -30px; }
  .gg-competition__card { grid-template-columns: 1fr; padding: 20px; }
  .gg-competition__logo { min-height: 130px; }
  .gg-stat-strip { grid-template-columns: 1fr 1fr; }
  .gg-grid-3, .gg-feature-grid, .gg-live-grid, .gg-community, .gg-participation, .gg-archive { grid-template-columns: 1fr; }
  .gg-story__visual { min-height: 300px; }
  .gg-home-v2 .gg-btn { width: 100%; }
  .gg-hero h1 { font-size: clamp(40px, 12vw, 54px); line-height: 1.02; }
  .gg-hero__copy { font-size: 17px; }
  .gg-hero__badge { line-height: 1.35; }
  .gg-btns { gap: 10px; }
}

/* =========================================================
   GUIDA GIOCAGIACO
   Tutti gli stili sono circoscritti a .gg-guide-page
   ========================================================= */

.gg-guide-page {
    --gg-guide-blue: #0b4d91;
    --gg-guide-blue-dark: #073565;
    --gg-guide-blue-soft: #edf5fd;
    --gg-guide-green: #168b4d;
    --gg-guide-gold: #f4b323;
    --gg-guide-red: #bd3543;
    --gg-guide-ink: #20354c;
    --gg-guide-muted: #64758a;
    --gg-guide-line: #d9e5ef;
    --gg-guide-bg: #f5f8fc;
    --gg-guide-white: #ffffff;
    --gg-guide-shadow: 0 12px 30px rgba(19, 54, 88, .11);

    overflow: hidden;
    color: var(--gg-guide-ink);
    background: var(--gg-guide-bg);
    font-family: Arial, Helvetica, sans-serif;
    line-height: 1.6;
}

.gg-guide-page,
.gg-guide-page * {
    box-sizing: border-box;
}

.gg-guide-page a {
    color: inherit;
}

.gg-guide-page img {
    max-width: 100%;
    height: auto;
}

.gg-guide-container {
    width: min(1160px, calc(100% - 32px));
    margin: 0 auto;
}

/* HERO */

.gg-guide-hero {
    position: relative;
    overflow: hidden;
    padding: 58px 0 82px;
    color: #ffffff;
    background:
        radial-gradient(circle at 88% 20%, rgba(255,255,255,.18), transparent 25%),
        linear-gradient(135deg, #146fcf 0%, var(--gg-guide-blue-dark) 100%);
}

.gg-guide-hero::after {
    content: "?";
    position: absolute;
    right: 5%;
    bottom: -105px;
    color: rgba(255,255,255,.075);
    font-size: clamp(260px, 35vw, 500px);
    font-weight: 900;
    line-height: 1;
    pointer-events: none;
}

.gg-guide-hero__content {
    position: relative;
    z-index: 1;
    max-width: 830px;
}

.gg-guide-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 14px;
    padding: 6px 11px;
    color: #163754;
    background: var(--gg-guide-gold);
    border-radius: 999px;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: .05em;
    text-transform: uppercase;
}

.gg-guide-hero h1 {
    margin: 0 0 16px;
    color: #ffffff;
    font-size: clamp(36px, 5.5vw, 64px);
    font-weight: 800;
    line-height: 1.05;
}

.gg-guide-hero__lead {
    max-width: 760px;
    margin: 0;
    color: rgba(255,255,255,.91);
    font-size: 18px;
}

.gg-guide-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 24px;
}

.gg-guide-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-height: 46px;
    padding: 10px 17px;
    color: #ffffff !important;
    background: var(--gg-guide-blue);
    border: 1px solid var(--gg-guide-blue);
    border-radius: 11px;
    font-size: 14px;
    font-weight: 800;
    text-decoration: none !important;
    transition: transform .18s ease, background .18s ease, border-color .18s ease;
}

.gg-guide-btn:hover,
.gg-guide-btn:focus {
    color: #ffffff !important;
    background: var(--gg-guide-blue-dark);
    border-color: var(--gg-guide-blue-dark);
    text-decoration: none !important;
    transform: translateY(-1px);
}

.gg-guide-btn--light {
    color: var(--gg-guide-blue) !important;
    background: #ffffff;
    border-color: #ffffff;
}

.gg-guide-btn--light:hover,
.gg-guide-btn--light:focus {
    color: #173956 !important;
    background: var(--gg-guide-gold);
    border-color: var(--gg-guide-gold);
}

.gg-guide-btn--ghost {
    color: #ffffff !important;
    background: rgba(255,255,255,.10);
    border-color: rgba(255,255,255,.48);
}

.gg-guide-btn--outline {
    color: var(--gg-guide-blue) !important;
    background: #ffffff;
    border-color: #bcd2e7;
}

/* RIEPILOGO RAPIDO */

.gg-guide-quick {
    position: relative;
    z-index: 2;
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 12px;
    margin-top: -43px;
}

.gg-guide-quick__item {
    position: relative;
    min-height: 148px;
    padding: 19px 16px 17px;
    background: #ffffff;
    border: 1px solid var(--gg-guide-line);
    border-radius: 16px;
    box-shadow: var(--gg-guide-shadow);
}

.gg-guide-quick__number {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 38px;
    height: 38px;
    margin-bottom: 12px;
    color: #ffffff;
    background: linear-gradient(135deg, #1972c8, var(--gg-guide-blue-dark));
    border-radius: 11px;
    font-size: 17px;
    font-weight: 800;
}

.gg-guide-quick__item h2 {
    margin: 0 0 5px;
    color: #1d3e5e;
    font-size: 15px;
    line-height: 1.25;
}

.gg-guide-quick__item p {
    margin: 0;
    color: var(--gg-guide-muted);
    font-size: 12px;
    line-height: 1.45;
}

/* BODY E INDICE */

.gg-guide-body {
    padding: 34px 0 70px;
}

.gg-guide-toc {
    position: sticky;
    top: 74px;
    z-index: 20;
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-bottom: 26px;
    padding: 12px;
    background: rgba(255,255,255,.96);
    border: 1px solid var(--gg-guide-line);
    border-radius: 14px;
    box-shadow: 0 8px 22px rgba(22, 51, 79, .08);
    backdrop-filter: blur(8px);
}

.gg-guide-toc a {
    display: inline-flex;
    align-items: center;
    min-height: 34px;
    padding: 7px 11px;
    color: var(--gg-guide-blue) !important;
    background: var(--gg-guide-blue-soft);
    border: 1px solid #d3e5f7;
    border-radius: 9px;
    font-size: 12px;
    font-weight: 700;
    text-decoration: none !important;
}

.gg-guide-toc a:hover,
.gg-guide-toc a:focus {
    color: #ffffff !important;
    background: var(--gg-guide-blue);
    border-color: var(--gg-guide-blue);
}

/* SEZIONI */

.gg-guide-section {
    scroll-margin-top: 144px;
    margin-top: 22px;
    padding: 29px;
    background: #ffffff;
    border: 1px solid var(--gg-guide-line);
    border-radius: 18px;
    box-shadow: 0 8px 22px rgba(24, 56, 87, .06);
}

.gg-guide-section__head {
    display: flex;
    align-items: flex-start;
    gap: 13px;
    margin-bottom: 21px;
}

.gg-guide-section__icon {
    display: flex;
    flex: 0 0 46px;
    align-items: center;
    justify-content: center;
    width: 46px;
    height: 46px;
    color: #ffffff;
    background: linear-gradient(135deg, #1b70c7, var(--gg-guide-blue-dark));
    border-radius: 13px;
    font-size: 20px;
}

.gg-guide-section h2 {
    margin: 0 0 4px;
    color: #163b61;
    font-size: clamp(25px, 3vw, 33px);
    line-height: 1.2;
}

.gg-guide-section__subtitle {
    margin: 0;
    color: var(--gg-guide-muted);
    font-size: 14px;
}

.gg-guide-intro {
    max-width: 880px;
    color: #40566d;
}

/* PASSAGGI */

.gg-guide-steps {
    display: grid;
    gap: 13px;
    margin-top: 19px;
}

.gg-guide-step {
    display: grid;
    grid-template-columns: 58px minmax(0, 1fr);
    gap: 15px;
    padding: 18px;
    background: #f9fbfd;
    border: 1px solid var(--gg-guide-line);
    border-radius: 14px;
}

.gg-guide-step__number {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 48px;
    height: 48px;
    color: #ffffff;
    background: var(--gg-guide-blue);
    border-radius: 13px;
    font-size: 19px;
    font-weight: 800;
}

.gg-guide-step h3 {
    margin: 1px 0 6px;
    color: #203b58;
    font-size: 18px;
}

.gg-guide-step p {
    margin: 0;
    color: #53687d;
    font-size: 14px;
}

.gg-guide-step ul {
    margin: 9px 0 0;
    padding-left: 19px;
    color: #53687d;
    font-size: 14px;
}

/* CARDS */

.gg-guide-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
    margin-top: 18px;
}

.gg-guide-grid--3 {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.gg-guide-card {
    padding: 18px;
    background: #f9fbfd;
    border: 1px solid var(--gg-guide-line);
    border-radius: 14px;
}

.gg-guide-card__icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 42px;
    height: 42px;
    margin-bottom: 12px;
    color: var(--gg-guide-blue);
    background: var(--gg-guide-blue-soft);
    border-radius: 12px;
    font-size: 18px;
}

.gg-guide-card h3 {
    margin: 0 0 6px;
    color: #203b58;
    font-size: 17px;
}

.gg-guide-card p {
    margin: 0;
    color: var(--gg-guide-muted);
    font-size: 13px;
}

.gg-guide-card .gg-guide-actions {
    margin-top: 14px;
}

/* AVVISI */

.gg-guide-alert {
    display: flex;
    gap: 11px;
    margin: 18px 0;
    padding: 15px 17px;
    background: #fff8e3;
    border: 1px solid #f3d58a;
    border-left: 5px solid var(--gg-guide-gold);
    border-radius: 11px;
}

.gg-guide-alert--green {
    background: #edf9f2;
    border-color: #b9e2c9;
    border-left-color: var(--gg-guide-green);
}

.gg-guide-alert--red {
    background: #fff1f3;
    border-color: #efc0c6;
    border-left-color: var(--gg-guide-red);
}

.gg-guide-alert strong {
    color: #5a4300;
}

.gg-guide-alert--green strong {
    color: #126437;
}

.gg-guide-alert--red strong {
    color: #8d2430;
}

/* DETAILS E FAQ */

.gg-guide-details {
    margin-top: 12px;
    background: #ffffff;
    border: 1px solid var(--gg-guide-line);
    border-radius: 13px;
    overflow: hidden;
}

.gg-guide-details > summary {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 15px 17px;
    color: var(--gg-guide-blue);
    background: #f6f9fc;
    cursor: pointer;
    font-weight: 800;
    list-style: none;
}

.gg-guide-details > summary::-webkit-details-marker {
    display: none;
}

.gg-guide-details > summary::after {
    content: "+";
    margin-left: auto;
    font-size: 22px;
    line-height: 1;
}

.gg-guide-details[open] > summary::after {
    content: "−";
}

.gg-guide-details__body {
    padding: 18px;
    border-top: 1px solid var(--gg-guide-line);
}

.gg-guide-details__body p:last-child {
    margin-bottom: 0;
}

/* VIDEO */

.gg-guide-video-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
    margin-top: 18px;
}

.gg-guide-video {
    overflow: hidden;
    background: #ffffff;
    border: 1px solid var(--gg-guide-line);
    border-radius: 15px;
}

.gg-guide-video__frame {
    position: relative;
    aspect-ratio: 16 / 9;
    background: #0b1f34;
}

.gg-guide-video__frame iframe {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    border: 0;
}

.gg-guide-video__body {
    padding: 15px 17px 17px;
}

.gg-guide-video h3 {
    margin: 0 0 5px;
    color: #203b58;
    font-size: 17px;
}

.gg-guide-video p {
    margin: 0;
    color: var(--gg-guide-muted);
    font-size: 13px;
}

/* IMMAGINI */

.gg-guide-gallery {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
    margin-top: 16px;
}

.gg-guide-gallery figure {
    margin: 0;
    overflow: hidden;
    background: #ffffff;
    border: 1px solid var(--gg-guide-line);
    border-radius: 13px;
}

.gg-guide-gallery img {
    display: block;
    width: 100%;
}

.gg-guide-gallery figcaption {
    padding: 10px 13px;
    color: var(--gg-guide-muted);
    font-size: 12px;
}

/* FINALE */

.gg-guide-final {
    margin-top: 24px;
    padding: 35px;
    color: #ffffff;
    text-align: center;
    background: linear-gradient(135deg, #1169c5, var(--gg-guide-blue-dark));
    border-radius: 18px;
    box-shadow: var(--gg-guide-shadow);
}

.gg-guide-final h2 {
    margin: 0 0 9px;
    color: #ffffff;
    font-size: clamp(27px, 4vw, 39px);
}

.gg-guide-final p {
    max-width: 730px;
    margin: 0 auto 18px;
    color: rgba(255,255,255,.89);
}

.gg-guide-final .gg-guide-actions {
    justify-content: center;
}

/* RESPONSIVE */

@media (max-width: 960px) {
    .gg-guide-quick {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .gg-guide-grid--3 {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 700px) {
    .gg-guide-container {
        width: min(100% - 22px, 1160px);
    }

    .gg-guide-hero {
        padding: 38px 0 70px;
    }

    .gg-guide-hero__lead {
        font-size: 16px;
    }

    .gg-guide-actions {
        flex-direction: column;
    }

    .gg-guide-btn {
        width: 100%;
    }

    .gg-guide-quick {
        grid-template-columns: 1fr 1fr;
        margin-top: -42px;
    }

    .gg-guide-quick__item {
        min-height: 139px;
        padding: 15px;
    }

    .gg-guide-toc {
        position: static;
        overflow-x: auto;
        flex-wrap: nowrap;
    }

    .gg-guide-toc a {
        flex: 0 0 auto;
    }

    .gg-guide-section {
        scroll-margin-top: 85px;
        padding: 20px 15px;
        border-radius: 14px;
    }

    .gg-guide-section__icon {
        flex-basis: 40px;
        width: 40px;
        height: 40px;
    }

    .gg-guide-step {
        grid-template-columns: 44px minmax(0, 1fr);
        gap: 11px;
        padding: 15px 13px;
    }

    .gg-guide-step__number {
        width: 40px;
        height: 40px;
        font-size: 16px;
    }

    .gg-guide-grid,
    .gg-guide-grid--3,
    .gg-guide-video-grid,
    .gg-guide-gallery {
        grid-template-columns: 1fr;
    }

    .gg-guide-final {
        padding: 28px 17px;
    }
}

@media (max-width: 420px) {
    .gg-guide-quick {
        grid-template-columns: 1fr;
    }

    .gg-guide-quick__item {
        min-height: 0;
    }
}




/* ==========================================================
   PAGINA CONTATTI GIOCAGIACO
   Limitata alla pagina SP Page Builder n. 11.
   Non modifica dashboard, home, regolamenti o altre pagine.
   ========================================================== */

.sp-page-builder.page-11 {
    --gg-contact-blue: #0b4d91;
    --gg-contact-blue-dark: #073565;
    --gg-contact-blue-soft: #edf5fd;
    --gg-contact-green: #168b4d;
    --gg-contact-gold: #f4b323;
    --gg-contact-red: #bd3543;
    --gg-contact-ink: #20354c;
    --gg-contact-muted: #64758a;
    --gg-contact-line: #d9e5ef;
    --gg-contact-bg: #f5f8fc;
    --gg-contact-white: #ffffff;
    --gg-contact-shadow: 0 12px 30px rgba(19, 54, 88, .11);

    overflow: hidden;
    color: var(--gg-contact-ink);
    background: var(--gg-contact-bg);
    font-family: Arial, Helvetica, sans-serif;
    line-height: 1.6;
}

.sp-page-builder.page-11,
.sp-page-builder.page-11 * {
    box-sizing: border-box;
}

.sp-page-builder.page-11 a {
    color: inherit;
}

.sp-page-builder.page-11 img {
    max-width: 100%;
    height: auto;
}

.sp-page-builder.page-11 .sppb-row-container {
    width: min(1160px, calc(100% - 32px));
    max-width: 1160px;
}

/* Nasconde i vecchi elementi della pagina dopo aver inserito i nuovi blocchi.
   Puoi eliminare direttamente queste vecchie sezioni da SP Page Builder. */
.sp-page-builder.page-11 #section-id-1702645552724,
.sp-page-builder.page-11 #section-id-1702645552802,
.sp-page-builder.page-11 #section-id-1702909295479 {
    display: none !important;
}

/* Elimina le spaziature generate dalle vecchie impostazioni di SP Page Builder. */
.sp-page-builder.page-11 #section-id-1702645552736 {
    scroll-margin-top: 90px;
    padding-top: 26px !important;
    padding-bottom: 26px !important;
    background: transparent;
}

/* HERO */

.gg-contact-hero {
    position: relative;
    overflow: hidden;
    padding: 58px 0 76px;
    color: #ffffff;
    background:
        radial-gradient(circle at 86% 20%, rgba(255,255,255,.17), transparent 25%),
        linear-gradient(135deg, #146fcf 0%, var(--gg-contact-blue-dark) 100%);
}

.gg-contact-hero::after {
    content: "✉";
    position: absolute;
    right: 4%;
    bottom: -118px;
    color: rgba(255,255,255,.07);
    font-size: clamp(240px, 34vw, 470px);
    font-weight: 900;
    line-height: 1;
    pointer-events: none;
}

.gg-contact-container {
    position: relative;
    z-index: 1;
    width: min(1160px, calc(100% - 32px));
    margin: 0 auto;
}

.gg-contact-hero__grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 300px;
    align-items: center;
    gap: 42px;
}

.gg-contact-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 14px;
    padding: 6px 11px;
    color: #163754;
    background: var(--gg-contact-gold);
    border-radius: 999px;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: .05em;
    text-transform: uppercase;
}

.gg-contact-hero h1 {
    max-width: 760px;
    margin: 0 0 16px;
    color: #ffffff;
    font-size: clamp(37px, 5.5vw, 64px);
    font-weight: 800;
    line-height: 1.05;
}

.gg-contact-hero__lead {
    max-width: 760px;
    margin: 0;
    color: rgba(255,255,255,.91);
    font-size: 18px;
}

.gg-contact-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 24px;
}

.gg-contact-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-height: 46px;
    padding: 10px 17px;
    color: #ffffff !important;
    background: var(--gg-contact-blue);
    border: 1px solid var(--gg-contact-blue);
    border-radius: 11px;
    font-size: 14px;
    font-weight: 800;
    text-decoration: none !important;
    transition: transform .18s ease, background .18s ease, border-color .18s ease;
}

.gg-contact-btn:hover,
.gg-contact-btn:focus {
    color: #ffffff !important;
    background: var(--gg-contact-blue-dark);
    border-color: var(--gg-contact-blue-dark);
    text-decoration: none !important;
    transform: translateY(-1px);
}

.gg-contact-btn--light {
    color: var(--gg-contact-blue) !important;
    background: #ffffff;
    border-color: #ffffff;
}

.gg-contact-btn--light:hover,
.gg-contact-btn--light:focus {
    color: #173956 !important;
    background: var(--gg-contact-gold);
    border-color: var(--gg-contact-gold);
}

.gg-contact-btn--ghost {
    color: #ffffff !important;
    background: rgba(255,255,255,.10);
    border-color: rgba(255,255,255,.48);
}

.gg-contact-team {
    display: flex;
    align-items: flex-end;
    justify-content: center;
    min-height: 270px;
    padding: 20px 20px 0;
    background: rgba(255,255,255,.94);
    border: 1px solid rgba(255,255,255,.56);
    border-radius: 25px;
    box-shadow: var(--gg-contact-shadow);
}

.gg-contact-team img {
    display: block;
    max-height: 250px;
    object-fit: contain;
}

/* CATEGORIE */

.gg-contact-topics-wrap {
    position: relative;
    z-index: 2;
    margin-top: -42px;
}

.gg-contact-topics {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 12px;
}

.gg-contact-topic {
    min-height: 152px;
    padding: 18px;
    background: #ffffff;
    border: 1px solid var(--gg-contact-line);
    border-radius: 16px;
    box-shadow: var(--gg-contact-shadow);
}

.gg-contact-topic__icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    margin-bottom: 12px;
    color: var(--gg-contact-blue);
    background: var(--gg-contact-blue-soft);
    border-radius: 11px;
    font-size: 18px;
}

.gg-contact-topic h2 {
    margin: 0 0 5px;
    color: #1d3e5e;
    font-size: 16px;
    line-height: 1.25;
}

.gg-contact-topic p {
    margin: 0;
    color: var(--gg-contact-muted);
    font-size: 12px;
    line-height: 1.45;
}

/* COLONNA INFORMATIVA */

.gg-contact-info {
    height: 100%;
    padding: 25px;
    background: linear-gradient(160deg, #0f5cad 0%, var(--gg-contact-blue-dark) 100%);
    border-radius: 18px;
    box-shadow: var(--gg-contact-shadow);
    color: #ffffff;
}

.gg-contact-info__head {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 12px;
}

.gg-contact-info__icon {
    display: flex;
    flex: 0 0 44px;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 44px;
    color: #173956;
    background: var(--gg-contact-gold);
    border-radius: 12px;
    font-size: 19px;
}

.gg-contact-info h2 {
    margin: 0;
    color: #ffffff;
    font-size: 24px;
    line-height: 1.2;
}

.gg-contact-info > p {
    margin: 0 0 18px;
    color: rgba(255,255,255,.86);
    font-size: 14px;
}

.gg-contact-checklist {
    margin: 0;
    padding: 0;
    list-style: none;
}

.gg-contact-checklist li {
    position: relative;
    margin: 11px 0;
    padding-left: 29px;
    color: rgba(255,255,255,.91);
    font-size: 13px;
}

.gg-contact-checklist li::before {
    content: "✓";
    position: absolute;
    left: 0;
    top: 2px;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 19px;
    height: 19px;
    color: #173956;
    background: var(--gg-contact-gold);
    border-radius: 50%;
    font-size: 11px;
    font-weight: 900;
}

.gg-contact-quicklinks {
    display: grid;
    gap: 8px;
    margin-top: 22px;
}

.gg-contact-quicklinks a {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 10px 12px;
    color: #ffffff !important;
    background: rgba(255,255,255,.10);
    border: 1px solid rgba(255,255,255,.20);
    border-radius: 10px;
    font-size: 13px;
    font-weight: 700;
    text-decoration: none !important;
}

.gg-contact-quicklinks a:hover,
.gg-contact-quicklinks a:focus {
    color: #173956 !important;
    background: #ffffff;
}

.gg-contact-social {
    display: flex;
    gap: 8px;
    margin-top: 21px;
}

.gg-contact-social a {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 39px;
    height: 39px;
    color: #ffffff !important;
    background: rgba(255,255,255,.12);
    border: 1px solid rgba(255,255,255,.24);
    border-radius: 10px;
    text-decoration: none !important;
}

.gg-contact-social a:hover,
.gg-contact-social a:focus {
    color: var(--gg-contact-blue) !important;
    background: #ffffff;
}

/* MODULO AJAX ESISTENTE */

.sp-page-builder.page-11 #sppb-addon-1702645707263 {
    height: 100%;
    padding: 27px;
    background: #ffffff;
    border: 1px solid var(--gg-contact-line);
    border-radius: 18px;
    box-shadow: var(--gg-contact-shadow);
}

.sp-page-builder.page-11 #sppb-addon-1702645707263::before {
    content: "Scrivici";
    display: block;
    margin-bottom: 3px;
    color: #173d62;
    font-size: 28px;
    font-weight: 800;
    line-height: 1.2;
}

.sp-page-builder.page-11 #sppb-addon-1702645707263::after {
    content: "Compila tutti i campi: più dettagli ci fornisci, più sarà semplice aiutarti.";
    display: block;
    margin-top: -1px;
    margin-bottom: 21px;
    color: var(--gg-contact-muted);
    font-size: 13px;
}

.sp-page-builder.page-11 #sppb-addon-1702645707263 .sppb-ajax-contact-content {
    display: flex;
    flex-direction: column;
}

.sp-page-builder.page-11 #sppb-addon-1702645707263 form {
    display: flex;
    flex-direction: column;
}

.sp-page-builder.page-11 #sppb-addon-1702645707263 .sppb-row {
    margin-right: -7px;
    margin-left: -7px;
}

.sp-page-builder.page-11 #sppb-addon-1702645707263 .sppb-form-group {
    margin-bottom: 15px !important;
    padding-right: 7px;
    padding-left: 7px;
}

.sp-page-builder.page-11 #sppb-addon-1702645707263 label {
    display: block;
    margin-bottom: 6px;
    color: #304b66;
    font-size: 13px;
    font-weight: 800;
}

.sp-page-builder.page-11 #sppb-addon-1702645707263 .sppb-form-control {
    width: 100%;
    min-height: 50px;
    padding: 11px 13px;
    color: var(--gg-contact-ink);
    background: #f9fbfd;
    border: 1px solid #cddbe8;
    border-radius: 10px;
    box-shadow: none;
    font-size: 14px;
    transition: border-color .18s ease, box-shadow .18s ease, background .18s ease;
}

.sp-page-builder.page-11 #sppb-addon-1702645707263 textarea.sppb-form-control {
    min-height: 145px;
    resize: vertical;
}

.sp-page-builder.page-11 #sppb-addon-1702645707263 .sppb-form-control:focus {
    background: #ffffff;
    border-color: var(--gg-contact-blue);
    box-shadow: 0 0 0 3px rgba(11, 77, 145, .13);
    outline: none;
}

.sp-page-builder.page-11 #sppb-addon-1702645707263 .sppb-form-check {
    display: grid;
    grid-template-columns: 20px minmax(0, 1fr);
    align-items: start;
    gap: 8px;
    padding: 12px;
    background: #f5f8fc;
    border: 1px solid var(--gg-contact-line);
    border-radius: 10px;
}

.sp-page-builder.page-11 #sppb-addon-1702645707263 .sppb-form-check-input {
    position: static;
    width: 17px;
    height: 17px;
    margin: 3px 0 0;
}

.sp-page-builder.page-11 #sppb-addon-1702645707263 .sppb-form-check-label {
    margin: 0;
    color: #5b6d7f;
    font-size: 11px;
    font-weight: 400;
    line-height: 1.5;
}

.sp-page-builder.page-11 #sppb-addon-1702645707263 .sppb-form-check-label a {
    color: var(--gg-contact-blue) !important;
    font-weight: 700;
    text-decoration: underline;
}

.sp-page-builder.page-11 #sppb-addon-1702645707263 .g-recaptcha {
    margin: 2px 0 15px;
    overflow: hidden;
}

.sp-page-builder.page-11 #sppb-addon-1702645707263 .sppb-form-button {
    margin-top: 2px;
    text-align: left !important;
}

.sp-page-builder.page-11 #sppb-addon-1702645707263 .sppb-form-button button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 48px;
    padding: 11px 20px;
    color: #ffffff !important;
    background: linear-gradient(135deg, #176dc5, var(--gg-contact-blue-dark)) !important;
    border: 0 !important;
    border-radius: 11px !important;
    box-shadow: 0 8px 18px rgba(11, 77, 145, .20);
    font-size: 14px;
    font-weight: 800;
}

.sp-page-builder.page-11 #sppb-addon-1702645707263 .sppb-form-button button:hover,
.sp-page-builder.page-11 #sppb-addon-1702645707263 .sppb-form-button button:focus {
    background: var(--gg-contact-blue-dark) !important;
    transform: translateY(-1px);
}

.sp-page-builder.page-11 #sppb-addon-1702645707263 .sppb-ajax-contact-status {
    padding: 12px 14px;
    border-radius: 10px;
    font-size: 13px;
}

/* FAQ E FINALE */

.gg-contact-after {
    padding: 30px 0 68px;
}

.gg-contact-section {
    padding: 27px;
    background: #ffffff;
    border: 1px solid var(--gg-contact-line);
    border-radius: 18px;
    box-shadow: 0 8px 22px rgba(24, 56, 87, .06);
}

.gg-contact-section__head {
    display: flex;
    align-items: flex-start;
    gap: 13px;
    margin-bottom: 18px;
}

.gg-contact-section__icon {
    display: flex;
    flex: 0 0 44px;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 44px;
    color: #ffffff;
    background: linear-gradient(135deg, #1b70c7, var(--gg-contact-blue-dark));
    border-radius: 12px;
    font-size: 19px;
}

.gg-contact-section h2 {
    margin: 0 0 4px;
    color: #163b61;
    font-size: clamp(25px, 3vw, 32px);
    line-height: 1.2;
}

.gg-contact-section__subtitle {
    margin: 0;
    color: var(--gg-contact-muted);
    font-size: 14px;
}

.gg-contact-faq {
    margin-top: 11px;
    background: #ffffff;
    border: 1px solid var(--gg-contact-line);
    border-radius: 12px;
    overflow: hidden;
}

.gg-contact-faq > summary {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 14px 16px;
    color: var(--gg-contact-blue);
    background: #f6f9fc;
    cursor: pointer;
    font-weight: 800;
    list-style: none;
}

.gg-contact-faq > summary::-webkit-details-marker {
    display: none;
}

.gg-contact-faq > summary::after {
    content: "+";
    margin-left: auto;
    font-size: 21px;
    line-height: 1;
}

.gg-contact-faq[open] > summary::after {
    content: "−";
}

.gg-contact-faq__body {
    padding: 16px;
    color: #53687d;
    border-top: 1px solid var(--gg-contact-line);
    font-size: 14px;
}

.gg-contact-final {
    margin-top: 22px;
    padding: 29px;
    color: #ffffff;
    text-align: center;
    background: linear-gradient(135deg, #1169c5, var(--gg-contact-blue-dark));
    border-radius: 17px;
    box-shadow: var(--gg-contact-shadow);
}

.gg-contact-final h2 {
    margin: 0 0 8px;
    color: #ffffff;
    font-size: clamp(26px, 4vw, 36px);
}

.gg-contact-final p {
    max-width: 720px;
    margin: 0 auto 17px;
    color: rgba(255,255,255,.88);
}

.gg-contact-final .gg-contact-actions {
    justify-content: center;
}

/* RESPONSIVE */

@media (max-width: 900px) {
    .gg-contact-hero__grid {
        grid-template-columns: minmax(0, 1fr) 220px;
    }

    .gg-contact-team {
        min-height: 220px;
    }

    .gg-contact-topics {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 767.98px) {
    .sp-page-builder.page-11 .sppb-row-container,
    .gg-contact-container {
        width: min(100% - 22px, 1160px);
    }

    .gg-contact-hero {
        padding: 38px 0 69px;
    }

    .gg-contact-hero__grid {
        grid-template-columns: 1fr;
    }

    .gg-contact-hero__lead {
        font-size: 16px;
    }

    .gg-contact-team {
        max-width: 250px;
        min-height: 0;
        margin: 0 auto;
        padding: 12px 12px 0;
    }

    .gg-contact-team img {
        max-height: 210px;
    }

    .gg-contact-actions {
        flex-direction: column;
    }

    .gg-contact-btn {
        width: 100%;
    }

    .gg-contact-topics-wrap {
        margin-top: -39px;
    }

    .gg-contact-topics {
        grid-template-columns: 1fr 1fr;
    }

    .gg-contact-topic {
        min-height: 145px;
        padding: 15px;
    }

    .sp-page-builder.page-11 #section-id-1702645552736 {
        padding-top: 18px !important;
        padding-bottom: 18px !important;
    }

    .sp-page-builder.page-11 #sppb-addon-1702645707263,
    .gg-contact-info,
    .gg-contact-section {
        padding: 20px 16px;
        border-radius: 14px;
    }

    .sp-page-builder.page-11 #sppb-addon-1702645707263 {
        margin-top: 15px;
    }

    .sp-page-builder.page-11 #sppb-addon-1702645707263 .sppb-form-button button {
        width: 100%;
    }

    .gg-contact-after {
        padding: 20px 0 50px;
    }

    .gg-contact-final {
        padding: 27px 17px;
    }
}

@media (max-width: 390px) {
    .gg-contact-topics {
        grid-template-columns: 1fr;
    }

    .gg-contact-topic {
        min-height: 0;
    }

    .sp-page-builder.page-11 #sppb-addon-1702645707263 .g-recaptcha {
        width: 100%;
        transform: scale(.86);
        transform-origin: left top;
        margin-bottom: -23px;
    }
}


/* ==========================================================
   PAGINA STORIA GIOCAGIACO
   Design dedicato e limitato al wrapper .gg-story-page
   ========================================================== */

.gg-story-page {
    --gg-blue: #0b4d91;
    --gg-blue-dark: #073565;
    --gg-blue-soft: #edf5fd;
    --gg-green: #178e4e;
    --gg-gold: #f1b72a;
    --gg-ink: #1f3348;
    --gg-muted: #617487;
    --gg-line: #d7e4ef;
    --gg-bg: #f5f8fc;
    --gg-card: #ffffff;
    --gg-shadow: 0 16px 36px rgba(16, 52, 84, .12);

    color: var(--gg-ink);
    background: var(--gg-bg);
    font-family: Arial, Helvetica, sans-serif;
    line-height: 1.65;
}

.gg-story-page,
.gg-story-page * {
    box-sizing: border-box;
}

.gg-story-page img {
    max-width: 100%;
    height: auto;
}

.gg-story-container {
    width: min(1160px, calc(100% - 32px));
    margin: 0 auto;
}

/* HERO */

.gg-story-hero {
    position: relative;
    overflow: hidden;
    padding: 62px 0 84px;
    color: #ffffff;
    background:
        radial-gradient(circle at 84% 20%, rgba(255,255,255,.18), transparent 22%),
        linear-gradient(135deg, #156fce 0%, var(--gg-blue-dark) 100%);
}

.gg-story-hero::before {
    content: "#1994";
    position: absolute;
    right: 2%;
    bottom: -40px;
    color: rgba(255,255,255,.07);
    font-size: clamp(130px, 18vw, 300px);
    font-weight: 900;
    line-height: 1;
    pointer-events: none;
}

.gg-story-hero__grid {
    position: relative;
    z-index: 1;
    display: grid;
    grid-template-columns: minmax(0, 1.2fr) minmax(320px, .8fr);
    align-items: center;
    gap: 40px;
}

.gg-story-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 16px;
    padding: 6px 12px;
    color: #153755;
    background: var(--gg-gold);
    border-radius: 999px;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: .05em;
    text-transform: uppercase;
}

.gg-story-title {
    margin: 0 0 16px;
    color: #ffffff;
    font-size: clamp(40px, 5.8vw, 72px);
    font-weight: 900;
    line-height: 1.02;
}

.gg-story-lead {
    max-width: 700px;
    margin: 0 0 24px;
    color: rgba(255,255,255,.9);
    font-size: 18px;
}

.gg-story-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
}

.gg-story-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-height: 48px;
    padding: 11px 18px;
    color: #ffffff !important;
    background: var(--gg-blue);
    border: 1px solid var(--gg-blue);
    border-radius: 12px;
    font-size: 14px;
    font-weight: 800;
    text-decoration: none !important;
    transition: transform .18s ease, background .18s ease, border-color .18s ease;
}

.gg-story-btn:hover,
.gg-story-btn:focus {
    color: #ffffff !important;
    background: var(--gg-blue-dark);
    border-color: var(--gg-blue-dark);
    transform: translateY(-1px);
    text-decoration: none !important;
}

.gg-story-btn--light {
    color: var(--gg-blue) !important;
    background: #ffffff;
    border-color: #ffffff;
}

.gg-story-btn--light:hover,
.gg-story-btn--light:focus {
    color: #173956 !important;
    background: var(--gg-gold);
    border-color: var(--gg-gold);
}

.gg-story-portrait-card {
    padding: 18px;
    background: rgba(255,255,255,.93);
    border: 1px solid rgba(255,255,255,.5);
    border-radius: 24px;
    box-shadow: var(--gg-shadow);
    color: var(--gg-ink);
}

.gg-story-portrait-card__img {
    overflow: hidden;
    border-radius: 18px;
}

.gg-story-portrait-card__img img {
    display: block;
    width: 100%;
    height: 480px;
    object-fit: cover;
    object-position: center center;
}

.gg-story-portrait-card__caption {
    margin-top: 14px;
    font-size: 13px;
    color: var(--gg-muted);
}

.gg-story-portrait-card__caption strong {
    display: block;
    margin-bottom: 4px;
    color: var(--gg-blue-dark);
    font-size: 16px;
}

/* METRICHE */

.gg-story-metrics {
    margin-top: -42px;
    position: relative;
    z-index: 2;
}

.gg-story-metrics__grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 14px;
}

.gg-story-metric {
    padding: 22px 18px;
    background: var(--gg-card);
    border: 1px solid var(--gg-line);
    border-radius: 18px;
    box-shadow: var(--gg-shadow);
}

.gg-story-metric__year {
    margin-bottom: 10px;
    color: var(--gg-blue);
    font-size: 14px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: .05em;
}

.gg-story-metric__value {
    margin-bottom: 6px;
    color: var(--gg-ink);
    font-size: 32px;
    font-weight: 900;
    line-height: 1;
}

.gg-story-metric p {
    margin: 0;
    color: var(--gg-muted);
    font-size: 13px;
}

/* SEZIONI GENERICHE */

.gg-story-section {
    padding: 34px 0;
}

.gg-story-section--tight {
    padding-top: 16px;
}

.gg-story-card {
    padding: 28px;
    background: var(--gg-card);
    border: 1px solid var(--gg-line);
    border-radius: 22px;
    box-shadow: 0 10px 24px rgba(20, 54, 83, .08);
}

.gg-story-section__head {
    display: flex;
    align-items: flex-start;
    gap: 14px;
    margin-bottom: 20px;
}

.gg-story-section__icon {
    display: flex;
    flex: 0 0 46px;
    align-items: center;
    justify-content: center;
    width: 46px;
    height: 46px;
    color: #ffffff;
    background: linear-gradient(135deg, #1a72c9, var(--gg-blue-dark));
    border-radius: 12px;
    font-size: 19px;
}

.gg-story-section__eyebrow {
    display: block;
    margin-bottom: 4px;
    color: var(--gg-green);
    font-size: 12px;
    font-weight: 800;
    letter-spacing: .05em;
    text-transform: uppercase;
}

.gg-story-section h2 {
    margin: 0 0 4px;
    color: var(--gg-blue-dark);
    font-size: clamp(28px, 4vw, 38px);
    line-height: 1.12;
}

.gg-story-section__subtitle {
    margin: 0;
    color: var(--gg-muted);
    font-size: 15px;
}

.gg-story-grid-2 {
    display: grid;
    grid-template-columns: minmax(0, 1.1fr) minmax(0, .9fr);
    gap: 18px;
}

.gg-story-intro p,
.gg-story-richtext p {
    margin: 0 0 16px;
    font-size: 17px;
    color: #314b62;
}

.gg-story-highlight-list {
    display: grid;
    gap: 12px;
}

.gg-story-highlight {
    padding: 16px;
    background: linear-gradient(180deg, #f8fbff 0%, #eff6fc 100%);
    border: 1px solid var(--gg-line);
    border-radius: 14px;
}

.gg-story-highlight strong {
    display: block;
    margin-bottom: 4px;
    color: var(--gg-blue-dark);
    font-size: 15px;
}

/* TIMELINE */

.gg-story-timeline {
    position: relative;
    margin-top: 8px;
}

.gg-story-timeline::before {
    content: "";
    position: absolute;
    left: 18px;
    top: 0;
    bottom: 0;
    width: 3px;
    background: linear-gradient(180deg, #cfe1f1 0%, #95bee4 100%);
    border-radius: 999px;
}

.gg-story-event {
    position: relative;
    margin-bottom: 18px;
    margin-left: 58px;
    padding: 18px 18px 18px 22px;
    background: #ffffff;
    border: 1px solid var(--gg-line);
    border-radius: 16px;
}

.gg-story-event::before {
    content: "";
    position: absolute;
    left: -49px;
    top: 20px;
    width: 18px;
    height: 18px;
    background: var(--gg-gold);
    border: 4px solid #ffffff;
    border-radius: 50%;
    box-shadow: 0 0 0 3px #96bfe4;
}

.gg-story-event__year {
    display: inline-block;
    margin-bottom: 8px;
    padding: 5px 10px;
    color: #173857;
    background: var(--gg-gold);
    border-radius: 999px;
    font-size: 12px;
    font-weight: 900;
    letter-spacing: .04em;
    text-transform: uppercase;
}

.gg-story-event h3 {
    margin: 0 0 8px;
    color: var(--gg-blue-dark);
    font-size: 20px;
    line-height: 1.2;
}

.gg-story-event p {
    margin: 0;
    color: #4a6075;
    font-size: 15px;
}

/* QUOTE */

.gg-story-quote {
    position: relative;
    overflow: hidden;
    padding: 32px;
    color: #ffffff;
    background: linear-gradient(135deg, #0c4d92 0%, #083564 100%);
    border-radius: 22px;
    box-shadow: var(--gg-shadow);
}

.gg-story-quote::before {
    content: "“";
    position: absolute;
    right: 14px;
    top: -30px;
    color: rgba(255,255,255,.12);
    font-size: 170px;
    line-height: 1;
}

.gg-story-quote p {
    position: relative;
    z-index: 1;
    margin: 0 0 14px;
    color: rgba(255,255,255,.93);
    font-size: 19px;
    font-style: italic;
}

.gg-story-quote cite {
    position: relative;
    z-index: 1;
    display: block;
    color: #ffffff;
    font-weight: 800;
    font-style: normal;
}

/* CARDS / UNIQUE */

.gg-story-cards-3 {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 16px;
}

.gg-story-mini-card {
    padding: 20px;
    background: #ffffff;
    border: 1px solid var(--gg-line);
    border-radius: 16px;
}

.gg-story-mini-card__icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 42px;
    height: 42px;
    margin-bottom: 12px;
    color: var(--gg-blue);
    background: var(--gg-blue-soft);
    border-radius: 12px;
    font-size: 18px;
}

.gg-story-mini-card h3 {
    margin: 0 0 8px;
    color: var(--gg-blue-dark);
    font-size: 18px;
}

.gg-story-mini-card p {
    margin: 0;
    color: var(--gg-muted);
    font-size: 14px;
}

/* CTA FINALE */

.gg-story-final {
    text-align: center;
    padding: 34px 24px;
    color: #ffffff;
    background: linear-gradient(135deg, #1268c4 0%, #083565 100%);
    border-radius: 24px;
    box-shadow: var(--gg-shadow);
}

.gg-story-final h2 {
    margin: 0 0 10px;
    color: #ffffff;
    font-size: clamp(30px, 4.5vw, 42px);
}

.gg-story-final p {
    max-width: 760px;
    margin: 0 auto 20px;
    color: rgba(255,255,255,.89);
    font-size: 17px;
}

.gg-story-final .gg-story-actions {
    justify-content: center;
}

/* RESPONSIVE */

@media (max-width: 980px) {
    .gg-story-hero__grid,
    .gg-story-grid-2 {
        grid-template-columns: 1fr;
    }

    .gg-story-metrics__grid,
    .gg-story-cards-3 {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 767.98px) {
    .gg-story-container {
        width: min(100% - 22px, 1160px);
    }

    .gg-story-hero {
        padding: 42px 0 76px;
    }

    .gg-story-lead,
    .gg-story-intro p,
    .gg-story-richtext p,
    .gg-story-final p {
        font-size: 16px;
    }

    .gg-story-portrait-card__img img {
        height: 400px;
    }

    .gg-story-metrics__grid,
    .gg-story-cards-3 {
        grid-template-columns: 1fr;
    }

    .gg-story-card,
    .gg-story-quote {
        padding: 22px 18px;
        border-radius: 18px;
    }

    .gg-story-event {
        margin-left: 44px;
        padding: 16px;
    }

    .gg-story-event::before {
        left: -38px;
    }

    .gg-story-actions {
        flex-direction: column;
    }

    .gg-story-btn {
        width: 100%;
    }
}



/* ==========================================================
   PAGINA AUTORE — CARLO GIACOPETTI
   Tutti gli stili sono circoscritti a .gg-author-page
   ========================================================== */

.gg-author-page {
    --gga-blue: #0b4d91;
    --gga-blue-dark: #073565;
    --gga-blue-soft: #edf5fd;
    --gga-green: #168b4d;
    --gga-gold: #f4b323;
    --gga-ink: #20354c;
    --gga-muted: #64758a;
    --gga-line: #d9e5ef;
    --gga-bg: #f5f8fc;
    --gga-white: #ffffff;
    --gga-shadow: 0 14px 34px rgba(19, 54, 88, .12);

    overflow: hidden;
    color: var(--gga-ink);
    background: var(--gga-bg);
    font-family: Arial, Helvetica, sans-serif;
    line-height: 1.62;
}

.gg-author-page,
.gg-author-page * {
    box-sizing: border-box;
}

.gg-author-page a {
    color: inherit;
}

.gg-author-page img,
.gg-author-page video {
    max-width: 100%;
    height: auto;
}

.gg-author-container {
    width: min(1160px, calc(100% - 32px));
    margin: 0 auto;
}

/* HERO */

.gg-author-hero {
    position: relative;
    overflow: hidden;
    padding: 58px 0 82px;
    color: #ffffff;
    background:
        radial-gradient(circle at 86% 19%, rgba(255,255,255,.18), transparent 24%),
        linear-gradient(135deg, #146fcf 0%, var(--gga-blue-dark) 100%);
}

.gg-author-hero::after {
    content: "</>";
    position: absolute;
    right: 2%;
    bottom: -72px;
    color: rgba(255,255,255,.065);
    font-family: monospace;
    font-size: clamp(150px, 22vw, 330px);
    font-weight: 900;
    line-height: 1;
    pointer-events: none;
}

.gg-author-hero__grid {
    position: relative;
    z-index: 1;
    display: grid;
    grid-template-columns: minmax(0, 1.14fr) minmax(300px, .86fr);
    align-items: center;
    gap: 42px;
}

.gg-author-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 14px;
    padding: 6px 11px;
    color: #163754;
    background: var(--gga-gold);
    border-radius: 999px;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: .05em;
    text-transform: uppercase;
}

.gg-author-hero h1 {
    max-width: 780px;
    margin: 0 0 14px;
    color: #ffffff;
    font-size: clamp(38px, 5.5vw, 65px);
    font-weight: 900;
    line-height: 1.04;
}

.gg-author-hero__role {
    margin: 0 0 16px;
    color: #d9ecff;
    font-size: clamp(18px, 2.2vw, 25px);
    font-weight: 700;
}

.gg-author-hero__lead {
    max-width: 750px;
    margin: 0;
    color: rgba(255,255,255,.9);
    font-size: 17px;
}

.gg-author-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 23px;
}

.gg-author-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-height: 47px;
    padding: 10px 17px;
    color: #ffffff !important;
    background: var(--gga-blue);
    border: 1px solid var(--gga-blue);
    border-radius: 11px;
    font-size: 14px;
    font-weight: 800;
    text-decoration: none !important;
    transition: transform .18s ease, background .18s ease, border-color .18s ease;
}

.gg-author-btn:hover,
.gg-author-btn:focus {
    color: #ffffff !important;
    background: var(--gga-blue-dark);
    border-color: var(--gga-blue-dark);
    text-decoration: none !important;
    transform: translateY(-1px);
}

.gg-author-btn--light {
    color: var(--gga-blue) !important;
    background: #ffffff;
    border-color: #ffffff;
}

.gg-author-btn--light:hover,
.gg-author-btn--light:focus {
    color: #173956 !important;
    background: var(--gga-gold);
    border-color: var(--gga-gold);
}

.gg-author-btn--ghost {
    color: #ffffff !important;
    background: rgba(255,255,255,.10);
    border-color: rgba(255,255,255,.46);
}

.gg-author-btn--outline {
    color: var(--gga-blue) !important;
    background: #ffffff;
    border-color: #bcd2e7;
}

.gg-author-photo-card {
    position: relative;
    padding: 14px;
    background: rgba(255,255,255,.95);
    border: 1px solid rgba(255,255,255,.56);
    border-radius: 25px;
    box-shadow: var(--gga-shadow);
}

.gg-author-photo-card__image {
    overflow: hidden;
    border-radius: 18px;
}

.gg-author-photo-card__image img {
    display: block;
    width: 100%;
    height: 470px;
    object-fit: cover;
    object-position: center 44%;
}

.gg-author-photo-card__caption {
    padding: 13px 5px 2px;
    color: var(--gga-muted);
    font-size: 13px;
}

.gg-author-photo-card__caption strong {
    display: block;
    color: var(--gga-blue-dark);
    font-size: 17px;
}

/* NUMERI */

.gg-author-facts {
    position: relative;
    z-index: 2;
    margin-top: -42px;
}

.gg-author-facts__grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 13px;
}

.gg-author-fact {
    min-height: 137px;
    padding: 19px;
    background: #ffffff;
    border: 1px solid var(--gga-line);
    border-radius: 17px;
    box-shadow: var(--gga-shadow);
}

.gg-author-fact__value {
    display: block;
    margin-bottom: 6px;
    color: var(--gga-blue);
    font-size: 29px;
    font-weight: 900;
    line-height: 1;
}

.gg-author-fact__label {
    display: block;
    margin-bottom: 5px;
    color: var(--gga-ink);
    font-size: 14px;
    font-weight: 800;
}

.gg-author-fact p {
    margin: 0;
    color: var(--gga-muted);
    font-size: 12px;
}

/* SEZIONI */

.gg-author-body {
    padding: 33px 0 68px;
}

.gg-author-section {
    margin-top: 22px;
    padding: 28px;
    background: #ffffff;
    border: 1px solid var(--gga-line);
    border-radius: 19px;
    box-shadow: 0 9px 24px rgba(23, 55, 85, .07);
}

.gg-author-section__head {
    display: flex;
    align-items: flex-start;
    gap: 13px;
    margin-bottom: 20px;
}

.gg-author-section__icon {
    display: flex;
    flex: 0 0 45px;
    align-items: center;
    justify-content: center;
    width: 45px;
    height: 45px;
    color: #ffffff;
    background: linear-gradient(135deg, #1b70c7, var(--gga-blue-dark));
    border-radius: 12px;
    font-size: 19px;
}

.gg-author-section__kicker {
    display: block;
    margin-bottom: 3px;
    color: var(--gga-green);
    font-size: 11px;
    font-weight: 900;
    letter-spacing: .07em;
    text-transform: uppercase;
}

.gg-author-section h2 {
    margin: 0 0 4px;
    color: #163b61;
    font-size: clamp(26px, 3.5vw, 35px);
    line-height: 1.17;
}

.gg-author-section__subtitle {
    margin: 0;
    color: var(--gga-muted);
    font-size: 14px;
}

.gg-author-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
}

.gg-author-grid--3 {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.gg-author-copy p {
    margin: 0 0 15px;
    color: #3c556d;
    font-size: 16px;
}

.gg-author-copy p:last-child {
    margin-bottom: 0;
}

/* ORIGINE E METODO */

.gg-author-origin {
    display: grid;
    grid-template-columns: minmax(0, 1.08fr) minmax(280px, .92fr);
    gap: 20px;
    align-items: stretch;
}

.gg-author-origin__photo {
    overflow: hidden;
    min-height: 380px;
    border-radius: 16px;
    background: #e6eef6;
}

.gg-author-origin__photo img {
    display: block;
    width: 100%;
    height: 100%;
    min-height: 380px;
    object-fit: cover;
}

.gg-author-quote {
    margin-top: 18px;
    padding: 17px 19px;
    color: #ffffff;
    background: linear-gradient(135deg, var(--gga-blue), var(--gga-blue-dark));
    border-radius: 14px;
    font-size: 17px;
    font-style: italic;
}

.gg-author-principles {
    display: grid;
    gap: 11px;
}

.gg-author-principle {
    display: grid;
    grid-template-columns: 42px minmax(0, 1fr);
    gap: 11px;
    padding: 15px;
    background: #f8fbfe;
    border: 1px solid var(--gga-line);
    border-radius: 13px;
}

.gg-author-principle__icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 42px;
    height: 42px;
    color: var(--gga-blue);
    background: var(--gga-blue-soft);
    border-radius: 11px;
    font-size: 17px;
}

.gg-author-principle h3 {
    margin: 0 0 4px;
    color: var(--gga-blue-dark);
    font-size: 16px;
}

.gg-author-principle p {
    margin: 0;
    color: var(--gga-muted);
    font-size: 13px;
}

/* COMPETENZE */

.gg-author-skill-card {
    padding: 18px;
    background: #f9fbfd;
    border: 1px solid var(--gga-line);
    border-radius: 14px;
}

.gg-author-skill-card__icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 42px;
    height: 42px;
    margin-bottom: 12px;
    color: var(--gga-blue);
    background: var(--gga-blue-soft);
    border-radius: 12px;
    font-size: 18px;
}

.gg-author-skill-card h3 {
    margin: 0 0 7px;
    color: var(--gga-blue-dark);
    font-size: 17px;
}

.gg-author-skill-card p {
    margin: 0 0 10px;
    color: var(--gga-muted);
    font-size: 13px;
}

.gg-author-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
}

.gg-author-tag {
    display: inline-flex;
    padding: 5px 8px;
    color: #33536f;
    background: #ffffff;
    border: 1px solid #cfdeeb;
    border-radius: 999px;
    font-size: 11px;
    font-weight: 700;
}

/* PROGETTI / VIDEO */

.gg-author-project {
    overflow: hidden;
    background: #ffffff;
    border: 1px solid var(--gga-line);
    border-radius: 15px;
}

.gg-author-project__media {
    position: relative;
    aspect-ratio: 16 / 9;
    overflow: hidden;
    background: #0a2036;
}

.gg-author-project__media iframe,
.gg-author-project__media video {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    border: 0;
    object-fit: cover;
}

.gg-author-project__body {
    padding: 17px;
}

.gg-author-project__type {
    display: inline-flex;
    margin-bottom: 8px;
    padding: 4px 8px;
    color: var(--gga-blue);
    background: var(--gga-blue-soft);
    border-radius: 999px;
    font-size: 10px;
    font-weight: 900;
    text-transform: uppercase;
}

.gg-author-project h3 {
    margin: 0 0 7px;
    color: var(--gga-blue-dark);
    font-size: 18px;
}

.gg-author-project p {
    margin: 0;
    color: var(--gga-muted);
    font-size: 13px;
}

/* FORMAZIONE */

.gg-author-mission {
    padding: 24px;
    color: #ffffff;
    background:
        radial-gradient(circle at 90% 18%, rgba(255,255,255,.13), transparent 26%),
        linear-gradient(135deg, #0e5da9 0%, var(--gga-blue-dark) 100%);
    border-radius: 17px;
}

.gg-author-mission h3 {
    margin: 0 0 9px;
    color: #ffffff;
    font-size: 25px;
}

.gg-author-mission p {
    margin: 0 0 15px;
    color: rgba(255,255,255,.87);
}

.gg-author-mission__list {
    margin: 0;
    padding: 0;
    list-style: none;
}

.gg-author-mission__list li {
    position: relative;
    margin: 8px 0;
    padding-left: 27px;
    color: rgba(255,255,255,.93);
    font-size: 13px;
}

.gg-author-mission__list {
    margin: 0;
    padding: 0;
    list-style: none !important;
}

.gg-author-mission__list li {
    position: relative;
    margin: 8px 0;
    padding-left: 28px;
    list-style: none !important;
}

.gg-author-mission__list li::marker {
    content: "";
}

.gg-author-mission__list li::before {
    content: "\2713" !important;

    position: absolute;
    left: 0;
    top: 2px;

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

    width: 19px;
    height: 19px;

    color: #173956;
    background: #f4b323;
    border-radius: 50%;

    font-family: Arial, Helvetica, sans-serif !important;
    font-size: 11px;
    font-weight: 900;
    line-height: 1;
}

.gg-author-course {
    padding: 22px;
    background: #f8fbfe;
    border: 1px solid var(--gga-line);
    border-radius: 17px;
}

.gg-author-course__badge {
    display: inline-flex;
    margin-bottom: 10px;
    padding: 5px 9px;
    color: #126438;
    background: #e7f7ee;
    border: 1px solid #bee4ce;
    border-radius: 999px;
    font-size: 11px;
    font-weight: 900;
}

.gg-author-course h3 {
    margin: 0 0 8px;
    color: var(--gga-blue-dark);
    font-size: 23px;
}

.gg-author-course p {
    margin: 0 0 14px;
    color: var(--gga-muted);
}

/* CERTIFICAZIONI */

.gg-author-cert-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(280px, .75fr);
    gap: 19px;
    align-items: center;
}

.gg-author-cert-list {
    display: grid;
    gap: 10px;
}

.gg-author-cert {
    display: grid;
    grid-template-columns: 43px minmax(0, 1fr);
    gap: 11px;
    padding: 14px;
    background: #f8fbfe;
    border: 1px solid var(--gga-line);
    border-radius: 13px;
}

.gg-author-cert__icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 43px;
    height: 43px;
    color: #694c00;
    background: #fff2c3;
    border-radius: 11px;
    font-size: 18px;
}

.gg-author-cert h3 {
    margin: 0 0 3px;
    color: var(--gga-blue-dark);
    font-size: 15px;
}

.gg-author-cert p {
    margin: 0;
    color: var(--gga-muted);
    font-size: 12px;
}

.gg-author-cert-image {
    padding: 10px;
    background: #ffffff;
    border: 1px solid var(--gga-line);
    border-radius: 15px;
}

.gg-author-cert-image img {
    display: block;
    width: 100%;
    border-radius: 9px;
}

/* TESTIMONIANZE */

.gg-author-testimonials {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 13px;
}

.gg-author-testimonial {
    position: relative;
    padding: 20px;
    background: #f9fbfd;
    border: 1px solid var(--gga-line);
    border-radius: 14px;
}

.gg-author-testimonial::before {
    content: "“";
    position: absolute;
    right: 13px;
    top: -6px;
    color: #d7e6f4;
    font-size: 72px;
    font-family: Georgia, serif;
    line-height: 1;
}

.gg-author-testimonial__stars {
    margin-bottom: 9px;
    color: #e6a900;
    font-size: 13px;
}

.gg-author-testimonial blockquote {
    position: relative;
    z-index: 1;
    margin: 0 0 13px;
    color: #425b72;
    font-size: 14px;
}

.gg-author-testimonial strong {
    display: block;
    color: var(--gga-blue-dark);
    font-size: 13px;
}

.gg-author-testimonial span {
    color: var(--gga-muted);
    font-size: 11px;
}

/* CTA */

.gg-author-final {
    margin-top: 23px;
    padding: 34px;
    color: #ffffff;
    text-align: center;
    background: linear-gradient(135deg, #1169c5, var(--gga-blue-dark));
    border-radius: 19px;
    box-shadow: var(--gga-shadow);
}

.gg-author-final h2 {
    margin: 0 0 9px;
    color: #ffffff;
    font-size: clamp(27px, 4vw, 39px);
}

.gg-author-final p {
    max-width: 750px;
    margin: 0 auto 18px;
    color: rgba(255,255,255,.88);
}

.gg-author-final .gg-author-actions {
    justify-content: center;
}

/* RESPONSIVE */

@media (max-width: 960px) {
    .gg-author-hero__grid,
    .gg-author-origin,
    .gg-author-cert-grid {
        grid-template-columns: 1fr;
    }

    .gg-author-facts__grid,
    .gg-author-grid--3 {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .gg-author-photo-card {
        max-width: 520px;
        margin: 0 auto;
    }
}

@media (max-width: 700px) {
    .gg-author-container {
        width: min(100% - 22px, 1160px);
    }

    .gg-author-hero {
        padding: 39px 0 72px;
    }

    .gg-author-hero__lead,
    .gg-author-copy p {
        font-size: 15px;
    }

    .gg-author-photo-card__image img {
        height: 400px;
    }

    .gg-author-facts__grid,
    .gg-author-grid,
    .gg-author-grid--3,
    .gg-author-testimonials {
        grid-template-columns: 1fr;
    }

    .gg-author-section {
        padding: 20px 15px;
        border-radius: 14px;
    }

    .gg-author-section__icon {
        flex-basis: 40px;
        width: 40px;
        height: 40px;
    }

    .gg-author-origin__photo,
    .gg-author-origin__photo img {
        min-height: 330px;
    }

    .gg-author-actions {
        flex-direction: column;
    }

    .gg-author-btn {
        width: 100%;
    }

    .gg-author-final {
        padding: 27px 17px;
    }
}






/* REGOLAMENTO */

.gg-rules {
  --gg-blue: #0b4d91;
  --gg-blue-dark: #073565;
  --gg-blue-soft: #edf5fd;
  --gg-green: #168b4d;
  --gg-gold: #f4b323;
  --gg-red: #c83745;
  --gg-ink: #20354c;
  --gg-muted: #64758a;
  --gg-line: #d9e5ef;
  --gg-bg: #f5f8fc;
  --gg-white: #fff;
  --gg-shadow: 0 12px 30px rgba(19, 54, 88, .11);
  color: var(--gg-ink);
  background: var(--gg-bg);
  font-family: Arial, Helvetica, sans-serif;
  line-height: 1.6;
}

.gg-rules,
.gg-rules * {
  box-sizing: border-box;
}

.gg-rules a {
  color: inherit;
}

.gg-rules img {
  max-width: 100%;
  height: auto;
}

.gg-rules__container {
  width: min(1160px, calc(100% - 32px));
  margin: 0 auto;
}

.gg-rules__hero {
  position: relative;
  overflow: hidden;
  padding: 54px 0;
  color: #fff;
  background:
	radial-gradient(circle at 86% 25%, rgba(255,255,255,.16), transparent 24%),
	linear-gradient(135deg, #1169c5 0%, var(--gg-blue-dark) 100%);
}

.gg-rules__hero::after {
  content: "1994";
  position: absolute;
  right: 4%;
  bottom: -54px;
  color: rgba(255,255,255,.07);
  font-size: clamp(130px, 20vw, 260px);
  font-weight: 900;
  line-height: 1;
  pointer-events: none;
}

.gg-rules__hero-grid {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: 1fr 220px;
  align-items: center;
  gap: 36px;
}

.gg-rules__eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  margin-bottom: 13px;
  padding: 6px 11px;
  color: #183858;
  background: var(--gg-gold);
  border-radius: 999px;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .05em;
  text-transform: uppercase;
}

.gg-rules__hero h1 {
  max-width: 760px;
  margin: 0 0 15px;
  color: #fff;
  font-size: clamp(34px, 5vw, 58px);
  line-height: 1.06;
  font-weight: 800;
}

.gg-rules__lead {
  max-width: 760px;
  margin: 0;
  color: rgba(255,255,255,.9);
  font-size: 18px;
}

.gg-rules__logo {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 200px;
  padding: 18px;
  background: rgba(255,255,255,.94);
  border: 1px solid rgba(255,255,255,.5);
  border-radius: 24px;
  box-shadow: var(--gg-shadow);
}

.gg-rules__logo img {
  max-width: 180px;
}

.gg-rules__facts {
  position: relative;
  z-index: 2;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 12px;
  margin-top: -28px;
}

.gg-rule-fact {
  min-height: 116px;
  padding: 18px;
  background: #fff;
  border: 1px solid var(--gg-line);
  border-radius: 16px;
  box-shadow: var(--gg-shadow);
}

.gg-rule-fact__value {
  display: block;
  margin-bottom: 2px;
  color: var(--gg-blue);
  font-size: 25px;
  font-weight: 800;
}

.gg-rule-fact__label {
  display: block;
  color: var(--gg-muted);
  font-size: 13px;
  line-height: 1.35;
}

.gg-rules__body {
  padding: 34px 0 68px;
}

.gg-rules__toc {
  position: sticky;
  top: 74px;
  z-index: 20;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 0 0 26px;
  padding: 12px;
  background: rgba(255,255,255,.96);
  border: 1px solid var(--gg-line);
  border-radius: 14px;
  box-shadow: 0 8px 22px rgba(22, 51, 79, .08);
  backdrop-filter: blur(8px);
}

.gg-rules__toc a {
  display: inline-flex;
  align-items: center;
  min-height: 34px;
  padding: 7px 11px;
  color: var(--gg-blue) !important;
  background: var(--gg-blue-soft);
  border: 1px solid #d3e5f7;
  border-radius: 9px;
  font-size: 12px;
  font-weight: 700;
  text-decoration: none !important;
}

.gg-rules__toc a:hover,
.gg-rules__toc a:focus {
  color: #fff !important;
  background: var(--gg-blue);
  border-color: var(--gg-blue);
}

.gg-rule-section {
  scroll-margin-top: 142px;
  margin-top: 22px;
  padding: 28px;
  background: #fff;
  border: 1px solid var(--gg-line);
  border-radius: 18px;
  box-shadow: 0 8px 22px rgba(24, 56, 87, .06);
}

.gg-rule-section__head {
  display: flex;
  align-items: flex-start;
  gap: 13px;
  margin-bottom: 20px;
}

.gg-rule-section__icon {
  display: flex;
  flex: 0 0 44px;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 44px;
  color: #fff;
  background: linear-gradient(135deg, #1b70c7, var(--gg-blue-dark));
  border-radius: 12px;
  font-size: 19px;
}

.gg-rule-section h2 {
  margin: 0 0 4px;
  color: #163b61;
  font-size: clamp(24px, 3vw, 32px);
  line-height: 1.2;
}

.gg-rule-section__subtitle {
  margin: 0;
  color: var(--gg-muted);
  font-size: 14px;
}

.gg-rule-alert {
  display: flex;
  gap: 11px;
  margin: 18px 0;
  padding: 15px 17px;
  background: #fff8e3;
  border: 1px solid #f3d58a;
  border-left: 5px solid var(--gg-gold);
  border-radius: 11px;
}

.gg-rule-alert--danger {
  background: #fff1f3;
  border-color: #efc0c6;
  border-left-color: var(--gg-red);
}

.gg-rule-alert strong {
  color: #523c00;
}

.gg-rule-alert--danger strong {
  color: #8d2430;
}

.gg-rule-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
  margin: 18px 0;
}

.gg-rule-grid--3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.gg-rule-card {
  padding: 17px;
  background: #f9fbfd;
  border: 1px solid var(--gg-line);
  border-radius: 13px;
}

.gg-rule-card__top {
  display: flex;
  align-items: center;
  gap: 11px;
  margin-bottom: 7px;
}

.gg-rule-points {
  display: inline-flex;
  flex: 0 0 auto;
  align-items: center;
  justify-content: center;
  min-width: 50px;
  min-height: 38px;
  padding: 6px 10px;
  color: #fff;
  background: var(--gg-blue);
  border-radius: 10px;
  font-size: 17px;
  font-weight: 800;
}

.gg-rule-points--bonus {
  color: #24384d;
  background: var(--gg-gold);
}

.gg-rule-card h3 {
  margin: 0;
  color: #203b58;
  font-size: 16px;
  line-height: 1.25;
}

.gg-rule-card p {
  margin: 0;
  color: var(--gg-muted);
  font-size: 13px;
}

.gg-rule-list {
  margin: 14px 0;
  padding: 0;
  list-style: none;
}

.gg-rule-list li {
  position: relative;
  margin: 8px 0;
  padding-left: 27px;
}

.gg-rule-list li::before {
  content: "✓";
  position: absolute;
  left: 0;
  top: 1px;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 19px;
  height: 19px;
  color: #fff;
  background: var(--gg-green);
  border-radius: 50%;
  font-size: 11px;
  font-weight: 800;
}

.gg-rule-details {
  margin-top: 14px;
  background: #fff;
  border: 1px solid var(--gg-line);
  border-radius: 13px;
  overflow: hidden;
}

.gg-rule-details > summary {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 15px 17px;
  color: var(--gg-blue);
  background: #f6f9fc;
  cursor: pointer;
  font-weight: 800;
  list-style: none;
}

.gg-rule-details > summary::-webkit-details-marker {
  display: none;
}

.gg-rule-details > summary::after {
  content: "+";
  margin-left: auto;
  font-size: 22px;
  line-height: 1;
}

.gg-rule-details[open] > summary::after {
  content: "−";
}

.gg-rule-details__body {
  padding: 18px;
  border-top: 1px solid var(--gg-line);
}

.gg-rule-score-grid {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 8px;
}

.gg-rule-score {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 7px;
  padding: 9px 10px;
  background: #f5f8fc;
  border: 1px solid var(--gg-line);
  border-radius: 9px;
  font-size: 13px;
}

.gg-rule-score strong {
  color: var(--gg-blue);
}

.gg-rule-flow {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 10px;
  margin: 17px 0;
}

.gg-rule-flow__item {
  position: relative;
  padding: 15px 10px;
  text-align: center;
  background: var(--gg-blue-soft);
  border: 1px solid #cae0f3;
  border-radius: 12px;
}

.gg-rule-flow__item strong {
  display: block;
  color: var(--gg-blue);
  font-size: 22px;
}

.gg-rule-flow__item span {
  display: block;
  color: var(--gg-muted);
  font-size: 12px;
}

.gg-rule-mini-table {
  width: 100%;
  border-collapse: collapse;
  margin: 14px 0;
  font-size: 14px;
}

.gg-rule-mini-table th,
.gg-rule-mini-table td {
  padding: 11px 12px;
  text-align: left;
  border-bottom: 1px solid var(--gg-line);
}

.gg-rule-mini-table th {
  color: #36516b;
  background: #eef3f8;
  font-size: 12px;
  text-transform: uppercase;
}

.gg-rule-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 20px;
}

.gg-rule-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-height: 44px;
  padding: 10px 16px;
  color: #fff !important;
  background: var(--gg-blue);
  border: 1px solid var(--gg-blue);
  border-radius: 10px;
  font-weight: 800;
  text-decoration: none !important;
}

.gg-rule-btn--secondary {
  color: var(--gg-blue) !important;
  background: #fff;
  border-color: #bcd2e7;
}

.gg-rule-btn:hover,
.gg-rule-btn:focus {
  color: #fff !important;
  background: var(--gg-blue-dark);
  border-color: var(--gg-blue-dark);
}

.gg-rule-legal {
  margin-top: 22px;
  padding: 18px;
  color: #52677b;
  background: #eef2f5;
  border-radius: 12px;
  font-size: 13px;
}

.gg-rules__final {
  margin-top: 24px;
  padding: 34px;
  color: #fff;
  text-align: center;
  background: linear-gradient(135deg, #1169c5, var(--gg-blue-dark));
  border-radius: 18px;
  box-shadow: var(--gg-shadow);
}

.gg-rules__final h2 {
  margin: 0 0 9px;
  color: #fff;
  font-size: clamp(26px, 4vw, 38px);
}

.gg-rules__final p {
  max-width: 720px;
  margin: 0 auto 19px;
  color: rgba(255,255,255,.88);
}

.gg-rules__final .gg-rule-actions {
  justify-content: center;
}

.gg-rules__final .gg-rule-btn {
  color: var(--gg-blue) !important;
  background: #fff;
  border-color: #fff;
}

.gg-rules__final .gg-rule-btn--secondary {
  color: #fff !important;
  background: rgba(255,255,255,.1);
  border-color: rgba(255,255,255,.45);
}

@media (max-width: 900px) {
  .gg-rules__hero-grid {
	grid-template-columns: 1fr 160px;
  }
  .gg-rules__facts {
	grid-template-columns: repeat(2, 1fr);
  }
  .gg-rule-grid--3 {
	grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .gg-rule-score-grid {
	grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  .gg-rule-flow {
	grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (max-width: 650px) {
  .gg-rules__container {
	width: min(100% - 22px, 1160px);
  }
  .gg-rules__hero {
	padding: 35px 0 52px;
  }
  .gg-rules__hero-grid {
	grid-template-columns: 1fr;
	text-align: left;
  }
  .gg-rules__logo {
	min-height: 0;
	max-width: 180px;
	margin: 0 auto;
	padding: 12px;
  }
  .gg-rules__logo img {
	max-width: 145px;
  }
  .gg-rules__lead {
	font-size: 16px;
  }
  .gg-rules__facts {
	grid-template-columns: 1fr 1fr;
	margin-top: -22px;
  }
  .gg-rule-fact {
	min-height: 104px;
	padding: 14px;
  }
  .gg-rule-fact__value {
	font-size: 20px;
  }
  .gg-rules__toc {
	position: static;
	overflow-x: auto;
	flex-wrap: nowrap;
	border-radius: 12px;
  }
  .gg-rules__toc a {
	flex: 0 0 auto;
  }
  .gg-rule-section {
	scroll-margin-top: 85px;
	padding: 19px 15px;
	border-radius: 14px;
  }
  .gg-rule-section__icon {
	flex-basis: 39px;
	width: 39px;
	height: 39px;
  }
  .gg-rule-grid,
  .gg-rule-grid--3 {
	grid-template-columns: 1fr;
  }
  .gg-rule-score-grid {
	grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .gg-rule-flow {
	grid-template-columns: 1fr 1fr;
  }
  .gg-rule-mini-table,
  .gg-rule-mini-table tbody,
  .gg-rule-mini-table tr,
  .gg-rule-mini-table td {
	display: block;
	width: 100%;
  }
  .gg-rule-mini-table thead {
	display: none;
  }
  .gg-rule-mini-table tr {
	margin-bottom: 10px;
	padding: 10px;
	background: #f7f9fc;
	border: 1px solid var(--gg-line);
	border-radius: 10px;
  }
  .gg-rule-mini-table td {
	padding: 5px 3px;
	border: 0;
  }
  .gg-rule-actions {
	flex-direction: column;
  }
  .gg-rule-btn {
	width: 100%;
  }
  .gg-rules__final {
	padding: 27px 18px;
  }
}






/* ==========================================================
   MEGA MENU GIOCAGIACO
   ========================================================== */

.gg-mega-menu,
.gg-mega-menu *,
.gg-mega-support,
.gg-mega-support *,
.gg-mega-community,
.gg-mega-community * {
    box-sizing: border-box;
}

/* Introduzione */

.gg-mega-menu__heading {
    margin-bottom: 18px;
}

.gg-mega-menu__kicker,
.gg-mega-support__kicker,
.gg-mega-community__kicker {
    display: block;
    margin-bottom: 5px;
    color: #168b4d;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: .06em;
    text-transform: uppercase;
}

.gg-mega-menu__heading h3 {
    margin: 0 0 5px;
    color: #123f73;
    font-size: 23px;
    font-weight: 800;
}

.gg-mega-menu__heading p {
    max-width: 650px;
    margin: 0;
    color: #66788a;
    font-size: 13px;
    line-height: 1.5;
}

/* Griglia dei collegamenti */

.gg-mega-menu__links {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
}

.gg-mega-link {
    display: grid !important;
    grid-template-columns: 44px minmax(0, 1fr) 18px;
    align-items: center;
    gap: 11px;

    min-height: 76px;
    padding: 12px 13px;

    color: #263e55 !important;
    background: #f7faff;
    border: 1px solid #d9e5ef;
    border-radius: 13px;

    text-decoration: none !important;
    transition:
        transform .18s ease,
        border-color .18s ease,
        box-shadow .18s ease,
        background .18s ease;
}

.gg-mega-link:hover,
.gg-mega-link:focus {
    color: #123f73 !important;
    background: #ffffff;
    border-color: #98bde0;
    box-shadow: 0 7px 17px rgba(18, 63, 115, .10);
    transform: translateY(-2px);
}

.gg-mega-link__icon {
    display: flex;
    align-items: center;
    justify-content: center;

    width: 44px;
    height: 44px;

    color: #0b4d91;
    background: #e8f2fc;
    border-radius: 12px;

    font-size: 18px;
}

.gg-mega-link:hover .gg-mega-link__icon {
    color: #ffffff;
    background: #0b4d91;
}

.gg-mega-link__content {
    min-width: 0;
}

.gg-mega-link__content strong {
    display: block;
    margin-bottom: 2px;
    color: #1f3a54;
    font-size: 14px;
    line-height: 1.25;
}

.gg-mega-link__content small {
    display: block;
    color: #758699;
    font-size: 11px;
    line-height: 1.35;
}

.gg-mega-link__arrow {
    color: #9aabba;
    font-size: 16px;
}

.gg-mega-link:hover .gg-mega-link__arrow {
    color: #0b4d91;
}

/* Card sostegno */

.gg-mega-support,
.gg-mega-community {
    height: 100%;
    padding: 23px;

    color: #ffffff;
    background:
        radial-gradient(
            circle at 90% 10%,
            rgba(255, 255, 255, .17),
            transparent 27%
        ),
        linear-gradient(
            145deg,
            #1269bf 0%,
            #073565 100%
        );

    border-radius: 17px;
    box-shadow: 0 10px 24px rgba(18, 54, 88, .16);
}

.gg-mega-support__icon,
.gg-mega-community__icon {
    display: flex;
    align-items: center;
    justify-content: center;

    width: 45px;
    height: 45px;
    margin-bottom: 14px;

    color: #173956;
    background: #f4b323;
    border-radius: 12px;

    font-size: 19px;
}

.gg-mega-support__kicker,
.gg-mega-community__kicker {
    color: #f4cc63;
}

.gg-mega-support h3,
.gg-mega-community h3 {
    margin: 0 0 9px;
    color: #ffffff;
    font-size: 23px;
    font-weight: 800;
    line-height: 1.2;
}

.gg-mega-support p,
.gg-mega-community p {
    margin: 0 0 14px;
    color: rgba(255, 255, 255, .86);
    font-size: 13px;
    line-height: 1.55;
}

.gg-mega-support ul {
    margin: 0 0 17px;
    padding: 0;
    list-style: none;
}

.gg-mega-support li {
    position: relative;
    margin: 7px 0;
    padding-left: 23px;

    color: rgba(255, 255, 255, .91);
    font-size: 12px;
}

.gg-mega-support li::before {
    content: "✓";

    position: absolute;
    left: 0;
    top: 1px;

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

    width: 17px;
    height: 17px;

    color: #173956;
    background: #f4b323;
    border-radius: 50%;

    font-size: 9px;
    font-weight: 900;
}

.gg-mega-support__paypal button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;

    width: 100%;
    min-height: 44px;
    padding: 10px 13px;

    color: #163956;
    background: #f4b323;
    border: 0;
    border-radius: 10px;

    font-size: 13px;
    font-weight: 800;
    cursor: pointer;
}

.gg-mega-support__paypal button:hover {
    background: #ffffff;
}

.gg-mega-support > small {
    display: block;
    margin-top: 11px;

    color: rgba(255, 255, 255, .68);
    text-align: center;
    font-size: 10px;
}

/* Card visitatori */

.gg-mega-community__actions {
    display: flex;
    gap: 8px;
    margin-top: 17px;
}

.gg-mega-community__actions a {
    display: inline-flex;
    flex: 1;
    align-items: center;
    justify-content: center;

    min-height: 42px;
    padding: 9px 12px;

    color: #0b4d91 !important;
    background: #ffffff;
    border: 1px solid #ffffff;
    border-radius: 10px;

    font-size: 13px;
    font-weight: 800;
    text-decoration: none !important;
}

.gg-mega-community__actions a:hover {
    color: #173956 !important;
    background: #f4b323;
    border-color: #f4b323;
}

.gg-mega-community__actions .gg-mega-community__login {
    color: #ffffff !important;
    background: rgba(255, 255, 255, .10);
    border-color: rgba(255, 255, 255, .43);
}

.gg-mega-community__actions .gg-mega-community__login:hover {
    color: #0b4d91 !important;
    background: #ffffff;
    border-color: #ffffff;
}

/* Adattamento tablet e smartphone */

@media (max-width: 991.98px) {

    .gg-mega-menu__links {
        grid-template-columns: 1fr;
    }

    .gg-mega-support,
    .gg-mega-community {
        margin-top: 15px;
    }
}

@media (max-width: 575.98px) {

    .gg-mega-link {
        grid-template-columns: 40px minmax(0, 1fr) 15px;
        min-height: 68px;
        padding: 10px;
    }

    .gg-mega-link__icon {
        width: 40px;
        height: 40px;
    }

    .gg-mega-community__actions {
        flex-direction: column;
    }
}


/* ==========================================================
   CORREZIONE SCHEDE MEGA MENU GIOCAGIACO
   ========================================================== */

.gg-mega-menu__links {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 12px !important;
    width: 100%;
}

.gg-mega-menu__links .gg-mega-link {
    display: flex !important;
    align-items: center !important;
    gap: 13px !important;

    width: 100% !important;
    min-width: 0 !important;
    min-height: 82px !important;
    padding: 14px 15px !important;

    color: #243c54 !important;
    background: #f7faff !important;
    border: 1px solid #d4e2ef !important;
    border-radius: 14px !important;

    text-decoration: none !important;
    overflow: hidden;

    box-shadow: none;
    transition:
        background-color .18s ease,
        border-color .18s ease,
        box-shadow .18s ease,
        transform .18s ease;
}

.gg-mega-menu__links .gg-mega-link:hover,
.gg-mega-menu__links .gg-mega-link:focus {
    color: #123f73 !important;
    background: #ffffff !important;
    border-color: #8fb6dc !important;

    box-shadow: 0 8px 18px rgba(18, 63, 115, .12);
    transform: translateY(-2px);

    text-decoration: none !important;
}

/* Icona */

.gg-mega-menu__links .gg-mega-link__icon {
    display: flex !important;
    flex: 0 0 46px !important;
    align-items: center !important;
    justify-content: center !important;

    width: 46px !important;
    height: 46px !important;

    color: #0b4d91 !important;
    background: #e7f1fb !important;
    border-radius: 12px !important;

    font-size: 18px !important;
}

.gg-mega-menu__links .gg-mega-link:hover .gg-mega-link__icon {
    color: #ffffff !important;
    background: #0b4d91 !important;
}

/* Contenuto testuale */

.gg-mega-menu__links .gg-mega-link__content {
    display: block !important;
    flex: 1 1 auto !important;

    width: auto !important;
    min-width: 0 !important;
    max-width: none !important;

    margin: 0 !important;
    padding: 0 !important;
}

.gg-mega-menu__links .gg-mega-link__content strong {
    display: block !important;

    width: auto !important;
    max-width: none !important;

    margin: 0 0 3px !important;
    padding: 0 !important;

    color: #183955 !important;
    font-size: 14px !important;
    font-weight: 800 !important;
    line-height: 1.25 !important;

    white-space: normal !important;
    overflow-wrap: normal !important;
    word-break: normal !important;
}

.gg-mega-menu__links .gg-mega-link__content small {
    display: block !important;

    width: auto !important;
    max-width: none !important;

    margin: 0 !important;
    padding: 0 !important;

    color: #728498 !important;
    font-size: 11px !important;
    font-weight: 400 !important;
    line-height: 1.35 !important;

    white-space: normal !important;
    overflow-wrap: normal !important;
    word-break: normal !important;
}

/* Freccia */

.gg-mega-menu__links .gg-mega-link__arrow {
    display: block !important;
    flex: 0 0 16px !important;

    width: 16px !important;
    margin-left: auto !important;

    color: #9aabba !important;
    font-size: 17px !important;
    text-align: center;
}

.gg-mega-menu__links .gg-mega-link:hover .gg-mega-link__arrow {
    color: #0b4d91 !important;
}


/* ==========================================================
   REGOLAMENTO GIOCAGIACO — BARRA COMPATTA
   ========================================================== */

.gg-mega-menu > .gg-mega-regolamento {
    display: flex !important;
    align-items: center !important;
    gap: 13px !important;

    width: 100% !important;
    min-height: 66px !important;
    height: auto !important;

    margin: 13px 0 0 !important;
    padding: 10px 13px !important;

    color: #173956 !important;
    background: linear-gradient(
        135deg,
        #edf6ff 0%,
        #ffffff 78%
    ) !important;

    border: 1px solid #b9d3eb !important;
    border-left: 5px solid #0b4d91 !important;
    border-radius: 13px !important;

    box-shadow: 0 5px 14px rgba(18, 63, 115, 0.08);
    text-decoration: none !important;
    overflow: hidden !important;

    transition:
        transform 0.18s ease,
        box-shadow 0.18s ease,
        border-color 0.18s ease;
}

.gg-mega-menu > .gg-mega-regolamento:hover,
.gg-mega-menu > .gg-mega-regolamento:focus {
    color: #123f73 !important;
    background: #ffffff !important;
    border-color: #7faed7 !important;
    border-left-color: #f4b323 !important;

    box-shadow: 0 8px 19px rgba(18, 63, 115, 0.13);
    transform: translateY(-1px);

    text-decoration: none !important;
}

/* Icona */

.gg-mega-regolamento__icon {
    display: flex !important;
    flex: 0 0 43px !important;
    align-items: center !important;
    justify-content: center !important;

    width: 43px !important;
    height: 43px !important;

    color: #ffffff !important;
    background: linear-gradient(
        135deg,
        #176dc5,
        #073565
    ) !important;

    border-radius: 11px !important;
    font-size: 18px !important;
}

/* Testo */

.gg-mega-regolamento__content {
    display: block !important;
    flex: 1 1 auto !important;

    width: auto !important;
    min-width: 0 !important;
    max-width: none !important;

    margin: 0 !important;
    padding: 0 !important;
}

.gg-mega-regolamento__content strong {
    display: block !important;

    margin: 0 0 2px !important;
    padding: 0 !important;

    color: #173956 !important;
    font-size: 14px !important;
    font-weight: 800 !important;
    line-height: 1.25 !important;

    white-space: normal !important;
    word-break: normal !important;
    overflow-wrap: normal !important;
}

.gg-mega-regolamento__content small {
    display: block !important;

    margin: 0 !important;
    padding: 0 !important;

    color: #708398 !important;
    font-size: 11px !important;
    font-weight: 400 !important;
    line-height: 1.35 !important;

    white-space: normal !important;
    word-break: normal !important;
}

/* Badge */

.gg-mega-regolamento__badge {
    display: inline-flex !important;
    flex: 0 0 auto !important;
    align-items: center !important;
    justify-content: center !important;

    min-height: 28px !important;
    padding: 5px 12px !important;

    color: #173956 !important;
    background: #f4b323 !important;
    border-radius: 999px !important;

    font-size: 10px !important;
    font-weight: 900 !important;
    white-space: nowrap !important;
}

/* Freccia */

.gg-mega-regolamento__arrow {
    display: block !important;
    flex: 0 0 14px !important;

    color: #91a5b7 !important;
    font-size: 17px !important;
}

.gg-mega-regolamento:hover .gg-mega-regolamento__arrow {
    color: #0b4d91 !important;
}

@media (max-width: 575.98px) {

    .gg-mega-menu > .gg-mega-regolamento {
        gap: 10px !important;
        min-height: 62px !important;
        padding: 9px 10px !important;
    }

    .gg-mega-regolamento__icon {
        flex-basis: 39px !important;
        width: 39px !important;
        height: 39px !important;
        font-size: 16px !important;
    }

    .gg-mega-regolamento__content strong {
        font-size: 13px !important;
    }

    .gg-mega-regolamento__content small {
        font-size: 10px !important;
    }

    .gg-mega-regolamento__badge {
        display: none !important;
    }
}









/* ==========================================================
   MEGA MENU COMPETIZIONI CONCLUSE
   ========================================================== */

.gg-closed-menu,
.gg-closed-menu * {
    box-sizing: border-box;
}

/* Testata */

.gg-closed-menu__header {
    display: flex;
    align-items: center;
    gap: 15px;

    margin-bottom: 19px;
    padding-bottom: 17px;

    border-bottom: 1px solid #dce7f0;
}

.gg-closed-menu__title-icon {
    display: flex;
    flex: 0 0 48px;
    align-items: center;
    justify-content: center;

    width: 48px;
    height: 48px;

    color: #ffffff;
    background: linear-gradient(
        135deg,
        #176dc5,
        #073565
    );

    border-radius: 13px;
    font-size: 19px;
}

.gg-closed-menu__kicker {
    display: block;
    margin-bottom: 3px;

    color: #168b4d;
    font-size: 10px;
    font-weight: 900;
    letter-spacing: .07em;
    text-transform: uppercase;
}

.gg-closed-menu__header h3 {
    margin: 0 0 3px;

    color: #123f73;
    font-size: 23px;
    font-weight: 800;
    line-height: 1.2;
}

.gg-closed-menu__header p {
    margin: 0;

    color: #66798d;
    font-size: 12px;
    line-height: 1.45;
}

/* Tre colonne */

.gg-closed-menu__grid {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 15px !important;
}

/* Gruppo */

.gg-closed-group {
    min-width: 0;
    padding: 15px;

    background: #f8fbfe;
    border: 1px solid #d9e5ef;
    border-radius: 15px;
}

.gg-closed-group__heading {
    display: flex;
    align-items: center;
    gap: 10px;

    margin-bottom: 12px;
}

.gg-closed-group__icon {
    display: flex;
    flex: 0 0 38px;
    align-items: center;
    justify-content: center;

    width: 38px;
    height: 38px;

    color: #0b4d91;
    background: #e6f1fb;
    border-radius: 10px;

    font-size: 15px;
}

.gg-closed-group__heading h4 {
    margin: 0 0 2px;

    color: #173956;
    font-size: 15px;
    font-weight: 800;
    line-height: 1.2;
}

.gg-closed-group__heading small {
    display: block;

    color: #7a8a99;
    font-size: 10px;
    line-height: 1.3;
}

/* Singola competizione */

.gg-closed-item {
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;

    width: 100% !important;
    min-width: 0 !important;
    min-height: 67px !important;

    margin-top: 8px !important;
    padding: 10px !important;

    color: #263e55 !important;
    background: #ffffff !important;

    border: 1px solid #d7e3ed !important;
    border-radius: 11px !important;

    text-decoration: none !important;

    transition:
        transform .18s ease,
        border-color .18s ease,
        box-shadow .18s ease;
}

.gg-closed-item:hover,
.gg-closed-item:focus {
    color: #123f73 !important;
    border-color: #85b1d8 !important;

    box-shadow: 0 7px 16px rgba(18, 63, 115, .10);
    transform: translateY(-1px);

    text-decoration: none !important;
}

/* Ultima competizione */

.gg-closed-item--featured {
    background: linear-gradient(
        135deg,
        #edf6ff 0%,
        #ffffff 76%
    ) !important;

    border-color: #91b9dd !important;
}

/* Icona */

.gg-closed-item__icon {
    display: flex !important;
    flex: 0 0 40px !important;
    align-items: center !important;
    justify-content: center !important;

    width: 40px !important;
    height: 40px !important;

    color: #0b4d91 !important;
    background: #e9f2fb !important;
    border-radius: 10px !important;

    font-size: 15px !important;
}

.gg-closed-item:hover .gg-closed-item__icon {
    color: #ffffff !important;
    background: #0b4d91 !important;
}

/* Testo */

.gg-closed-item__content {
    display: block !important;
    flex: 1 1 auto !important;

    min-width: 0 !important;
}

.gg-closed-item__content strong {
    display: block !important;

    margin: 0 0 2px !important;

    color: #183955 !important;
    font-size: 12px !important;
    font-weight: 800 !important;
    line-height: 1.25 !important;

    white-space: normal !important;
    word-break: normal !important;
}

.gg-closed-item__content small {
    display: block !important;

    color: #77899a !important;
    font-size: 9px !important;
    line-height: 1.3 !important;

    white-space: normal !important;
}

/* Badge */

.gg-closed-item__badge {
    display: inline-flex !important;
    flex: 0 0 auto !important;

    padding: 4px 7px !important;

    color: #173956 !important;
    background: #f4b323 !important;
    border-radius: 999px !important;

    font-size: 8px !important;
    font-weight: 900 !important;
    text-transform: uppercase;
}

/* Freccia */

.gg-closed-item__arrow {
    flex: 0 0 12px !important;

    color: #9cacbb !important;
    font-size: 15px !important;
}

.gg-closed-item:hover .gg-closed-item__arrow {
    color: #0b4d91 !important;
}

/* Parte finale */

.gg-closed-menu__footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;

    margin-top: 16px;
    padding: 14px 16px;

    background: linear-gradient(
        135deg,
        #0e5eaf,
        #073565
    );

    border-radius: 13px;
}

.gg-closed-menu__footer strong {
    display: block;

    margin-bottom: 2px;

    color: #ffffff;
    font-size: 13px;
}

.gg-closed-menu__footer small {
    display: block;

    color: rgba(255, 255, 255, .75);
    font-size: 10px;
}

.gg-closed-menu__all {
    display: inline-flex !important;
    flex: 0 0 auto !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 7px !important;

    min-height: 38px !important;
    padding: 8px 13px !important;

    color: #0b4d91 !important;
    background: #ffffff !important;
    border-radius: 9px !important;

    font-size: 11px !important;
    font-weight: 800 !important;
    text-decoration: none !important;
}

.gg-closed-menu__all:hover,
.gg-closed-menu__all:focus {
    color: #173956 !important;
    background: #f4b323 !important;
    text-decoration: none !important;
}



@media (max-width: 991.98px) {

    .gg-closed-menu__grid {
        grid-template-columns: 1fr !important;
    }

    .gg-closed-menu__footer {
        align-items: flex-start;
        flex-direction: column;
    }

    .gg-closed-menu__all {
        width: 100% !important;
    }
}

@media (max-width: 575.98px) {

    .gg-closed-menu__header {
        align-items: flex-start;
    }

    .gg-closed-menu__header h3 {
        font-size: 19px;
    }

    .gg-closed-menu__title-icon {
        flex-basis: 42px;
        width: 42px;
        height: 42px;
    }

    .gg-closed-group {
        padding: 12px;
    }

    .gg-closed-item {
        min-height: 62px !important;
        padding: 9px !important;
    }

    .gg-closed-item__icon {
        flex-basis: 37px !important;
        width: 37px !important;
        height: 37px !important;
    }

    .gg-closed-item__badge {
        display: none !important;
    }
}


/* Icona archivio indipendente da Font Awesome */

.gg-closed-menu__title-icon {
    display: flex !important;
    flex: 0 0 48px !important;
    align-items: center !important;
    justify-content: center !important;

    width: 48px !important;
    height: 48px !important;

    background:
        linear-gradient(135deg, #176dc5, #073565) !important;

    border-radius: 13px !important;
}

.gg-closed-menu__title-icon::before {
    content: "" !important;

    display: block !important;
    width: 23px !important;
    height: 23px !important;

    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 12a9 9 0 1 0 3-6.7'/%3E%3Cpath d='M3 4v6h6'/%3E%3Cpath d='M12 7v5l3 2'/%3E%3C/svg%3E") !important;

    background-repeat: no-repeat !important;
    background-position: center !important;
    background-size: contain !important;

    font-family: initial !important;
}




/* =========================================================
   GIOCAGIACO HOME - CORREZIONE BOTTONI + MURO DEI CAMPIONI
   Da aggiungere ALLA FINE di custom.css
   ========================================================= */

/* 1. Correzione definitiva del testo dei pulsanti principali */
html body .gg-home-v2 a.gg-btn.gg-btn--primary,
html body .gg-home-v2 a.gg-btn.gg-btn--primary:link,
html body .gg-home-v2 a.gg-btn.gg-btn--primary:visited,
html body .gg-home-v2 a.gg-btn.gg-btn--primary:hover,
html body .gg-home-v2 a.gg-btn.gg-btn--primary:focus,
html body .gg-home-v2 a.gg-btn.gg-btn--primary:active {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    text-decoration: none !important;
}

html body .gg-home-v2 a.gg-btn.gg-btn--primary * {
    color: inherit !important;
    -webkit-text-fill-color: inherit !important;
}

/* Stato della competizione conclusa */
.gg-home-v2 .gg-status--closed {
    color: #8a5700;
    background: #fff4d5;
    border-color: #f0d17a;
}

/* 2. Muro dei Campioni */
.gg-champions-wall {
    position: relative;
    overflow: hidden;
    color: #ffffff;
    background:
        radial-gradient(circle at 12% 15%, rgba(29, 120, 210, .34), transparent 34%),
        radial-gradient(circle at 88% 18%, rgba(244, 179, 35, .18), transparent 28%),
        linear-gradient(145deg, #061f3b 0%, #073b70 52%, #082b50 100%);
}

.gg-champions-wall::before,
.gg-champions-wall::after {
    content: "";
    position: absolute;
    pointer-events: none;
    border-radius: 50%;
}

.gg-champions-wall::before {
    top: -190px;
    right: -130px;
    width: 430px;
    height: 430px;
    border: 1px solid rgba(255, 255, 255, .08);
    box-shadow: 0 0 0 55px rgba(255, 255, 255, .025), 0 0 0 110px rgba(255, 255, 255, .015);
}

.gg-champions-wall::after {
    left: -90px;
    bottom: -170px;
    width: 330px;
    height: 330px;
    background: rgba(22, 139, 77, .10);
}

.gg-champions-wall > .gg-container {
    position: relative;
    z-index: 1;
}

.gg-champions-wall__head {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 32px;
    margin-bottom: 30px;
}

.gg-champions-wall__head > div {
    max-width: 790px;
}

.gg-champions-wall__kicker {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 10px;
    color: #7de3a8;
    font-size: 13px;
    font-weight: 800;
    letter-spacing: .9px;
    text-transform: uppercase;
}

.gg-champions-wall__kicker::before {
    content: "";
    width: 9px;
    height: 9px;
    background: #35b66f;
    border: 4px solid rgba(53, 182, 111, .22);
    border-radius: 50%;
    box-sizing: content-box;
}

.gg-champions-wall__head h2 {
    margin: 0 0 10px;
    color: #ffffff;
    font-size: clamp(30px, 4vw, 46px);
    line-height: 1.08;
    letter-spacing: -.8px;
}

.gg-champions-wall__head p {
    margin: 0;
    color: #c8d8e8;
    font-size: 17px;
    line-height: 1.65;
}

.gg-champions-wall__archive-link {
    display: inline-flex;
    flex: 0 0 auto;
    align-items: center;
    gap: 8px;
    padding: 12px 17px;
    color: #ffffff !important;
    border: 1px solid rgba(255, 255, 255, .28);
    border-radius: 10px;
    font-size: 14px;
    font-weight: 800;
    text-decoration: none !important;
    transition: background .2s ease, border-color .2s ease, transform .2s ease;
}

.gg-champions-wall__archive-link:hover,
.gg-champions-wall__archive-link:focus {
    color: #ffffff !important;
    background: rgba(255, 255, 255, .10);
    border-color: rgba(255, 255, 255, .48);
    transform: translateY(-2px);
}

.gg-current-champion {
    display: grid;
    grid-template-columns: minmax(0, 1.7fr) minmax(280px, .75fr);
    gap: 24px;
    padding: 26px;
    color: #20374f;
    background: rgba(255, 255, 255, .98);
    border: 1px solid rgba(244, 179, 35, .75);
    border-radius: 24px;
    box-shadow: 0 22px 60px rgba(0, 0, 0, .24);
}

.gg-current-champion__main {
    min-width: 0;
}

.gg-current-champion__identity {
    display: flex;
    align-items: center;
    gap: 18px;
}

.gg-current-champion__avatar {
    display: flex;
    flex: 0 0 92px;
    align-items: center;
    justify-content: center;
    width: 92px;
    height: 92px;
    color: #ffffff;
    background:
        radial-gradient(circle at 32% 24%, rgba(255,255,255,.38), transparent 26%),
        linear-gradient(145deg, #1575cf, #073b70);
    border: 5px solid #fff0b7;
    border-radius: 50%;
    box-shadow: 0 8px 22px rgba(6, 55, 103, .25);
    font-size: 37px;
    font-weight: 900;
    line-height: 1;
}

.gg-current-champion__eyebrow {
    display: inline-block;
    margin-bottom: 4px;
    color: #168b4d;
    font-size: 12px;
    font-weight: 900;
    letter-spacing: .65px;
    text-transform: uppercase;
}

.gg-current-champion__identity h3 {
    margin: 0;
    color: #073b70;
    font-size: clamp(31px, 4vw, 45px);
    line-height: 1;
}

.gg-current-champion__identity p {
    margin: 7px 0 0;
    color: #64778a;
    font-size: 15px;
}

.gg-current-champion__story {
    margin: 22px 0;
    color: #435a70;
    font-size: 16px;
    line-height: 1.68;
}

.gg-current-champion__story strong {
    color: #073b70;
}

.gg-current-champion__stats {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 10px;
}

.gg-current-champion__stats > div {
    min-width: 0;
    padding: 13px 10px;
    text-align: center;
    background: #f4f8fc;
    border: 1px solid #d8e5f0;
    border-radius: 12px;
}

.gg-current-champion__stats strong {
    display: block;
    overflow: hidden;
    color: #0b5aa5;
    font-size: 19px;
    line-height: 1.2;
    text-overflow: ellipsis;
}

.gg-current-champion__stats span {
    display: block;
    margin-top: 5px;
    color: #687b8d;
    font-size: 11px;
    line-height: 1.3;
}

.gg-current-champion__actions {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 22px;
}

.gg-champion-podium {
    align-self: stretch;
    padding: 20px;
    color: #ffffff;
    background: linear-gradient(155deg, #0a4c8b, #062e57);
    border: 1px solid rgba(255, 255, 255, .17);
    border-radius: 18px;
}

.gg-champion-podium__title {
    display: flex;
    align-items: center;
    gap: 8px;
    padding-bottom: 14px;
    border-bottom: 1px solid rgba(255, 255, 255, .15);
    font-size: 15px;
    font-weight: 900;
}

.gg-champion-podium ol {
    margin: 12px 0 0;
    padding: 0;
    list-style: none;
}

.gg-champion-podium li {
    display: grid;
    grid-template-columns: 34px minmax(0, 1fr) auto;
    align-items: center;
    gap: 9px;
    padding: 12px 0;
    border-bottom: 1px solid rgba(255, 255, 255, .12);
}

.gg-champion-podium li:last-child {
    border-bottom: 0;
}

.gg-champion-podium li.is-first {
    color: #ffdc6e;
}

.gg-champion-podium__position {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 29px;
    height: 29px;
    color: #073b70;
    background: #ffffff;
    border-radius: 50%;
    font-size: 13px;
    font-weight: 900;
}

.gg-champion-podium li.is-first .gg-champion-podium__position {
    background: #ffcf45;
}

.gg-champion-podium__name {
    overflow: hidden;
    font-size: 15px;
    font-weight: 800;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.gg-champion-podium li strong {
    font-size: 15px;
}

.gg-champion-podium p {
    margin: 14px 0 0;
    color: #c5d9eb;
    font-size: 12px;
    line-height: 1.55;
}

.gg-champions-history__head {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 20px;
    margin: 32px 0 16px;
}

.gg-champions-history__head span {
    display: block;
    margin-bottom: 4px;
    color: #7de3a8;
    font-size: 12px;
    font-weight: 900;
    letter-spacing: .7px;
    text-transform: uppercase;
}

.gg-champions-history__head h3 {
    margin: 0;
    color: #ffffff;
    font-size: 25px;
}

.gg-champions-history__head p {
    max-width: 430px;
    margin: 0;
    color: #b9ccdf;
    font-size: 13px;
    text-align: right;
}

.gg-champions-history {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
}

.gg-champion-card,
.gg-champion-card:link,
.gg-champion-card:visited {
    display: grid;
    grid-template-columns: 48px minmax(0, 1fr) auto;
    align-items: center;
    gap: 13px;
    padding: 14px;
    color: #ffffff !important;
    background: rgba(255, 255, 255, .08);
    border: 1px solid rgba(255, 255, 255, .14);
    border-radius: 14px;
    text-decoration: none !important;
    transition: transform .2s ease, background .2s ease, border-color .2s ease;
}

.gg-champion-card:hover,
.gg-champion-card:focus {
    color: #ffffff !important;
    background: rgba(255, 255, 255, .14);
    border-color: rgba(255, 255, 255, .28);
    transform: translateY(-3px);
}

.gg-champion-card__avatar {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 48px;
    height: 48px;
    color: #073b70;
    background: linear-gradient(145deg, #ffe59b, #f4b323);
    border-radius: 50%;
    box-shadow: inset 0 0 0 3px rgba(255,255,255,.5);
    font-size: 15px;
    font-weight: 900;
}

.gg-champion-card__content {
    min-width: 0;
}

.gg-champion-card__content small,
.gg-champion-card__content strong,
.gg-champion-card__content em {
    display: block;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.gg-champion-card__content small {
    color: #a9c3dc;
    font-size: 10px;
    font-weight: 700;
}

.gg-champion-card__content strong {
    margin-top: 2px;
    color: #ffffff;
    font-size: 16px;
}

.gg-champion-card__content em {
    margin-top: 2px;
    color: #77dba0;
    font-size: 10px;
    font-style: normal;
}

.gg-champion-card__arrow {
    color: #ffcf45;
    font-size: 18px;
    transition: transform .2s ease;
}

.gg-champion-card:hover .gg-champion-card__arrow {
    transform: translateX(3px);
}

.gg-home-v2 .gg-archive-card--latest {
    border-color: #edc450;
    box-shadow: 0 8px 24px rgba(244, 179, 35, .15);
}

.gg-home-v2 .gg-archive-card--latest > span {
    color: #8a5700;
    background: #fff2c9;
}

@media (max-width: 991.98px) {
    .gg-champions-wall__head,
    .gg-champions-history__head {
        align-items: flex-start;
        flex-direction: column;
    }

    .gg-champions-history__head p {
        max-width: none;
        text-align: left;
    }

    .gg-current-champion {
        grid-template-columns: 1fr;
    }

    .gg-current-champion__stats {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .gg-champions-history {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 575.98px) {
    .gg-champions-wall__head h2 {
        font-size: 31px;
    }

    .gg-current-champion {
        padding: 18px;
        border-radius: 18px;
    }

    .gg-current-champion__identity {
        align-items: flex-start;
    }

    .gg-current-champion__avatar {
        flex-basis: 68px;
        width: 68px;
        height: 68px;
        border-width: 4px;
        font-size: 28px;
    }

    .gg-current-champion__identity h3 {
        font-size: 31px;
    }

    .gg-current-champion__stats {
        grid-template-columns: 1fr 1fr;
    }

    .gg-current-champion__actions .gg-btn {
        width: 100%;
    }

    .gg-champions-history {
        grid-template-columns: 1fr;
    }
}

/* ==========================================================
   AVATAR PROFILO NELLE CLASSIFICHE - v1.1.1
   ========================================================== */
.gg-user-avatar {
    align-items: center;
    background: linear-gradient(135deg, #eaf3fc, #d9e9f8);
    border: 2px solid #ffffff;
    border-radius: 50%;
    box-shadow: 0 0 0 1px #b9cbe0, 0 3px 8px rgba(17, 62, 105, .14);
    color: #0c4f91;
    display: inline-flex;
    font-size: 14px;
    font-weight: 800;
    justify-content: center;
    line-height: 1;
    overflow: hidden;
    text-align: center;
}

.gg-user-avatar img {
    display: block;
    height: 100%;
    object-fit: cover;
    width: 100%;
}

.gg-user-avatar--preset {
    background: linear-gradient(135deg, #fff8d9, #ffdda0);
    border-color: #ffffff;
    color: #714f00;
    font-family: "Apple Color Emoji", "Segoe UI Emoji", "Noto Color Emoji", sans-serif;
    font-size: 21px;
}

.gg-user-avatar--trophy {
    background: linear-gradient(135deg, #fff7cc, #ffc84d);
    box-shadow: 0 0 0 1px #e6b126, 0 4px 10px rgba(193, 132, 0, .22);
}

.gg-user-avatar--ball {
    background: linear-gradient(135deg, #ffffff, #e9eef3);
}

.gg-user-avatar--star,
.gg-user-avatar--crown {
    background: linear-gradient(135deg, #fff4c1, #ffd66f);
}

.gg-user-identity {
    min-width: 0;
}

.gg-user-identity__content {
    min-width: 0;
}

.gg-friend-action,
.gg-group-friend-btn,
.gg-mobile-rank-card .btn-outline-secondary,
.gg-mobile-rank-card .btn-success {
    flex: 0 0 auto;
}

@media (max-width: 767.98px) {
    .gg-user-avatar--preset {
        font-size: 24px;
    }
}

/* =========================================================
   MEGA MENU - PULSANTE MURO DEI CAMPIONI
   ========================================================= */

.gg-closed-menu__footer-actions {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: flex-end;
    gap: 10px;
}

.gg-closed-menu__footer a.gg-closed-menu__champions,
.gg-closed-menu__footer a.gg-closed-menu__champions:link,
.gg-closed-menu__footer a.gg-closed-menu__champions:visited {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px;

    min-height: 42px;
    padding: 10px 17px;

    color: #173956 !important;
    background-color: #ffc434 !important;
    border: 1px solid #ffc434 !important;
    border-radius: 11px !important;

    font-size: 14px;
    font-weight: 800;
    line-height: 1.2;
    text-decoration: none !important;
    white-space: nowrap;
}

.gg-closed-menu__footer a.gg-closed-menu__champions:hover,
.gg-closed-menu__footer a.gg-closed-menu__champions:focus,
.gg-closed-menu__footer a.gg-closed-menu__champions:active {
    color: #ffffff !important;
    background-color: #d89400 !important;
    border-color: #d89400 !important;
    text-decoration: none !important;
}

.gg-closed-menu__footer a.gg-closed-menu__champions span {
    color: inherit !important;
}

/* Pulsante Tutte le competizioni */
.gg-closed-menu__footer a.gg-closed-menu__all,
.gg-closed-menu__footer a.gg-closed-menu__all:link,
.gg-closed-menu__footer a.gg-closed-menu__all:visited {
    color: #0b4d91 !important;
    background-color: #ffffff !important;
    text-decoration: none !important;
}

@media (max-width: 767px) {
    .gg-closed-menu__footer {
        align-items: stretch;
        gap: 15px;
    }

    .gg-closed-menu__footer-actions {
        justify-content: stretch;
        width: 100%;
    }

    .gg-closed-menu__champions,
    .gg-closed-menu__all {
        flex: 1 1 100%;
        width: 100%;
        text-align: center;
    }
}


/* =========================================================
   MENU OFF-CANVAS: tutta la riga apre e chiude il sottomenu
   ========================================================= */

.offcanvas-menu li.menu-parent > a,
.offcanvas-menu li.menu-parent > .menu-separator {
    position: relative;
    display: flex;
    align-items: center;
    width: 100%;
    min-height: 42px;
    padding: 9px 38px 9px 0;
    cursor: pointer;
}

/*
 * Il menu-toggler trasparente copre tutta la riga.
 * Helix continuerà a gestire normalmente apertura e chiusura.
 */
.offcanvas-menu li.menu-parent > a > .menu-toggler,
.offcanvas-menu li.menu-parent > .menu-separator > .menu-toggler {
    position: absolute;
    inset: 0;
    z-index: 2;
    width: 100%;
    height: 100%;
    opacity: 0;
    cursor: pointer;
}

/* Freccia al posto del simbolo + */
.offcanvas-menu li.menu-parent > a::after,
.offcanvas-menu li.menu-parent > .menu-separator::after {
    content: "";
    position: absolute;
    top: 50%;
    right: 8px;
    width: 9px;
    height: 9px;
    border-right: 2px solid currentColor;
    border-bottom: 2px solid currentColor;
    transform: translateY(-70%) rotate(45deg);
    transition: transform .2s ease;
    pointer-events: none;
}

/* Freccia verso l'alto quando il menu è aperto */
.offcanvas-menu li.menu-parent.menu-parent-open > a::after,
.offcanvas-menu li.menu-parent.menu-parent-open > .menu-separator::after {
    transform: translateY(-30%) rotate(225deg);
}

/* Sottomenu più leggibile */
.offcanvas-menu .menu-child {
    margin: 3px 0 10px 10px;
    padding-left: 14px;
    border-left: 2px solid rgba(45, 155, 71, .35);
}

.offcanvas-menu .menu-child > li > a {
    display: block;
    padding: 6px 0;
    line-height: 1.3;
}

/* Voce corrente */
.offcanvas-menu .menu-child > li.current > a,
.offcanvas-menu .menu-child > li.active > a {
    color: #289b3b;
    font-weight: 700;
}


/* Miglioramento grafico menu off-canvas */
.offcanvas-menu {
    font-size: 15px;
}

/* Titoli delle sezioni principali */
.offcanvas-menu li.menu-parent > a,
.offcanvas-menu li.menu-parent > .menu-separator {
    min-height: 46px;
    font-size: 16px;
    font-weight: 700;
    padding-top: 11px;
    padding-bottom: 11px;
}

/* Maggiore separazione tra i blocchi principali */
.offcanvas-menu li.menu-parent {
    margin-bottom: 7px;
}

/* Sottomenu */
.offcanvas-menu .menu-child {
    margin: 2px 0 12px 10px;
    padding: 2px 0 3px 14px;
    border-left: 2px solid rgba(40, 155, 59, .45);
}

/* Singole voci del sottomenu */
.offcanvas-menu .menu-child > li > a {
    display: block;
    padding: 4px 0;
    line-height: 1.35;
}

/* Voce attiva */
.offcanvas-menu .menu-child > li.current > a,
.offcanvas-menu .menu-child > li.active > a {
    color: #177c2c;
    font-weight: 700;
}

/* Immagini presenti nel menu */
.offcanvas-menu .menu-child img {
    display: block;
    width: 190px;
    max-width: 90%;
    height: auto;
    margin: 10px auto 12px;
    border-radius: 10px;
}





/* =========================================================
   GIOCAGIACO SERIE A
   ========================================================= */

.gg-home-v2 .gg-status--upcoming {
    color: #075a31;
    background: #e6f7ed;
    border-color: #9fd7b8;
}

.gg-home-v2 .gg-hero2--seriea {
    background:
        radial-gradient(
            circle at 84% 18%,
            rgba(255, 255, 255, .18),
            transparent 28%
        ),
        linear-gradient(
            135deg,
            #052f59 0%,
            #075e43 55%,
            #063c68 100%
        );
}

.gg-home-v2 .gg-hero2__logo-card--seriea {
    border-color: rgba(255, 255, 255, .32);
    box-shadow:
        0 22px 55px rgba(0, 0, 0, .25),
        inset 0 0 0 1px rgba(255, 255, 255, .08);
}

.gg-home-v2 .gg-competition--seriea
.gg-competition__card {
    border-top: 5px solid #168b4d;
}

.gg-home-v2 .gg-competition--seriea
.gg-competition__logo {
    background:
        radial-gradient(
            circle,
            rgba(22, 139, 77, .12),
            transparent 68%
        ),
        #ffffff;
}

.gg-home-v2 .gg-feature__icon {
    overflow: hidden;
    font-size: 18px;
}

.gg-home-v2 .gg-final__eyebrow {
    display: inline-block;
    margin-bottom: 8px;
    color: #ffdc6e;
    font-size: 12px;
    font-weight: 900;
    letter-spacing: .8px;
    text-transform: uppercase;
}

@media (max-width: 575.98px) {

    .gg-home-v2 .gg-hero2--seriea h1 {
        font-size: 36px;
    }

    .gg-home-v2 .gg-competition--seriea
    .gg-stat-strip {
        grid-template-columns: 1fr 1fr;
    }

}


/* =========================================================
   COUNTDOWN GIOCAGIACO SERIE A
   ========================================================= */

.gg-home-v2 .gg-countdown {
    width: 100%;
    max-width: 620px;
    margin: 24px 0 22px;
    padding: 17px;
    color: #ffffff;
    background:
        linear-gradient(
            135deg,
            rgba(255, 255, 255, .13),
            rgba(255, 255, 255, .06)
        );
    border: 1px solid rgba(255, 255, 255, .27);
    border-radius: 16px;
    box-shadow:
        0 14px 35px rgba(0, 0, 0, .18),
        inset 0 1px 0 rgba(255, 255, 255, .08);
    backdrop-filter: blur(5px);
    -webkit-backdrop-filter: blur(5px);
}

.gg-home-v2 .gg-countdown__heading {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 14px;
}

.gg-home-v2 .gg-countdown__icon {
    display: flex;
    flex: 0 0 42px;
    align-items: center;
    justify-content: center;
    width: 42px;
    height: 42px;
    color: #062f59;
    background: linear-gradient(
        145deg,
        #ffe49a,
        #f5bd2e
    );
    border-radius: 50%;
    box-shadow: 0 5px 14px rgba(0, 0, 0, .18);
    font-size: 20px;
}

.gg-home-v2 .gg-countdown__heading strong {
    display: block;
    margin-bottom: 3px;
    color: #ffffff;
    font-size: 16px;
    font-weight: 900;
    line-height: 1.25;
}

.gg-home-v2 .gg-countdown__heading span {
    display: block;
    color: rgba(255, 255, 255, .76);
    font-size: 12px;
}

.gg-home-v2 .gg-countdown__numbers {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 9px;
}

.gg-home-v2 .gg-countdown__item {
    min-width: 0;
    padding: 11px 6px 9px;
    text-align: center;
    background: rgba(2, 27, 54, .55);
    border: 1px solid rgba(255, 255, 255, .14);
    border-radius: 11px;
}

.gg-home-v2 .gg-countdown__item strong {
    display: block;
    color: #ffdc6e;
    font-size: clamp(23px, 3vw, 31px);
    font-weight: 900;
    line-height: 1;
    font-variant-numeric: tabular-nums;
    text-shadow: 0 2px 8px rgba(0, 0, 0, .2);
}

.gg-home-v2 .gg-countdown__item span {
    display: block;
    margin-top: 6px;
    color: rgba(255, 255, 255, .8);
    font-size: 10px;
    font-weight: 800;
    letter-spacing: .4px;
    text-transform: uppercase;
}

.gg-home-v2 .gg-countdown__started {
    display: none;
    padding: 13px;
    color: #ffffff;
    background: rgba(22, 139, 77, .75);
    border: 1px solid rgba(255, 255, 255, .23);
    border-radius: 11px;
    font-size: 17px;
    font-weight: 900;
    text-align: center;
}

.gg-home-v2 .gg-countdown.is-started
.gg-countdown__numbers {
    display: none;
}

.gg-home-v2 .gg-countdown.is-started
.gg-countdown__started {
    display: block;
}

.gg-home-v2 .gg-countdown.is-started
.gg-countdown__heading {
    display: none;
}


/* Tablet e smartphone */

@media (max-width: 767.98px) {

    .gg-home-v2 .gg-countdown {
        max-width: none;
        margin-top: 20px;
        padding: 14px;
    }

    .gg-home-v2 .gg-countdown__item strong {
        font-size: 25px;
    }

}


@media (max-width: 430px) {

    .gg-home-v2 .gg-countdown__numbers {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .gg-home-v2 .gg-countdown__item {
        padding: 10px 5px;
    }

    .gg-home-v2 .gg-countdown__heading strong {
        font-size: 14px;
    }

}

/* =========================================================
   CENTRATURA LOGO GIOCAGIACO SERIE A
   ========================================================= */

.gg-home-v2 .gg-hero2__logo-card--seriea {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;
}

.gg-home-v2 .gg-hero2__logo-card--seriea img {
    display: block !important;
    width: 200px !important;
    height: 200px !important;
    max-width: 200px !important;
    margin: 0 auto 24px !important;
    object-fit: contain !important;
    object-position: center center !important;
    align-self: center !important;
}

.gg-home-v2 .gg-hero2__logo-card--seriea strong,
.gg-home-v2 .gg-hero2__logo-card--seriea > span {
    display: block;
    width: 100%;
    text-align: center;
}