@charset "UTF-8";
/**
 * Set up a decent box model on the root element
 */
html {
  overflow-x: hidden;
  scroll-behavior: smooth;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  padding-right: 0 !important; }

/**
 * Make all elements from the DOM inherit from the parent box-sizing
 * Since `*` has a specificity of 0, it does not override the `html` value
 * making all elements inheriting from the root box-sizing value
 * See: https://css-tricks.com/inheriting-box-sizing-probably-slightly-better-best-practice/
 */
*,
*::before,
*::after {
  -webkit-box-sizing: inherit;
  box-sizing: inherit;
  padding: 0;
  margin: 0; }

/**
 * Basic styles for links
 */
a {
  text-decoration: none; }
  a:hover, a:active, a:focus {
    text-decoration: underline; }
  a:hover {
    text-decoration: none; }

:root {
  --fa-font-solid: normal 900 1em/1 "Font Awesome 5 Pro";
  --fa-font-regular: normal 400 1em/1 "Font Awesome 5 Pro";
  --fa-font-light: normal 300 1em/1 "Font Awesome 5 Pro";
  --fa-font-duotone: normal 900 1em/1 "Font Awesome 5 Duotone";
  --fa-font-brands: normal 400 1em/1 "Font Awesome 5 Brands"; }

.icon::before {
  /* removed font- based rules */
  display: inline-block;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased; }

.icon-solid {
  font: var(--fa-font-solid);
  font-weight: 900; }

.icon-regular {
  font: var(--fa-font-regular);
  font-weight: 400; }

.icon-light {
  font: var(--fa-font-light);
  font-weight: 300; }

.icon-duotone, .icon-duo {
  font: var(--fa-font-duotone);
  font-weight: 900; }

.icon-brands {
  font: var(--fa-font-brands);
  font-weight: 400; }

body {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  height: 100%;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  overflow-x: hidden;
  background: transparent;
  overflow-x: hidden;
  padding-right: 0 !important; }
  @media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
    body {
      padding-right: 0 !important; } }
  @media only screen and (max-width: 767px) {
    body {
      overflow-x: hidden; } }

input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button, .phone {
  -webkit-appearance: none !important;
  margin: 0; }

/* Firefox */
input[type=number], .phone {
  -moz-appearance: textfield; }

footer {
  margin-top: auto; }

#rc-imageselect, .g-recaptcha {
  display: inline; }

#rc-imageselect {
  max-width: 100%; }

@media only screen and (max-width: 1030px) and (min-width: 992px) {
  .g-recaptcha > div > div {
    width: 100% !important;
    height: 78px;
    -webkit-transform: scale(0.77);
    -ms-transform: scale(0.77);
    transform: scale(0.77);
    webkit-transform: scale(0.77);
    text-align: center;
    position: relative; } }

@media only screen and (max-width: 991px) and (min-width: 768px) {
  .g-recaptcha > div > div {
    width: 100% !important;
    height: 78px;
    -webkit-transform: scale(0.66);
    -ms-transform: scale(0.66);
    transform: scale(0.66);
    webkit-transform: scale(0.66);
    text-align: center;
    position: relative; } }

@media only screen and (max-width: 500px) {
  .g-recaptcha > div > div {
    width: 100% !important;
    height: 78px;
    -webkit-transform: scale(0.88);
    -ms-transform: scale(0.88);
    transform: scale(0.88);
    webkit-transform: scale(0.88);
    text-align: center;
    position: relative; } }

/**
 * Clear inner floats
 */
.clearfix::after {
  clear: both;
  content: '';
  display: table; }

/**
 * Hide text while making it readable for screen readers
 * 1. Needed in WebKit-based browsers because of an implementation bug;
 *    See: https://code.google.com/p/chromium/issues/detail?id=457146
 */
.hide-text {
  overflow: hidden;
  padding: 0;
  /* 1 */
  text-indent: 101%;
  white-space: nowrap; }

/**
 * Hide element while making it readable for screen readers
 * Shamelessly borrowed from HTML5Boilerplate:
 * https://github.com/h5bp/html5-boilerplate/blob/master/src/css/main.css#L119-L133
 */
.visually-hidden {
  border: 0;
  clip: rect(0 0 0 0);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px; }

@font-face {
  font-family: 'Nescafe Sans';
  src: url("../fonts/NescafeSans-Bold.eot");
  src: url("../fonts/NescafeSans-Bold.eot?#iefix") format("embedded-opentype"), url("../fonts/NescafeSans-Bold.woff2") format("woff2"), url("../fonts/NescafeSans-Bold.woff") format("woff"), url("../fonts/NescafeSans-Bold.ttf") format("truetype"), url("../fonts/NescafeSans-Bold.svg#NescafeSans-Bold") format("svg");
  font-weight: bold;
  font-style: normal;
  font-display: swap; }

@font-face {
  font-family: 'Nescafe Sans';
  src: url("../fonts/NescafeSans-Regular.eot");
  src: url("../fonts/NescafeSans-Regular.eot?#iefix") format("embedded-opentype"), url("../fonts/NescafeSans-Regular.woff2") format("woff2"), url("../fonts/NescafeSans-Regular.woff") format("woff"), url("../fonts/NescafeSans-Regular.ttf") format("truetype"), url("../fonts/NescafeSans-Regular.svg#NescafeSans-Regular") format("svg");
  font-weight: normal;
  font-style: normal;
  font-display: swap; }

@font-face {
  font-family: 'Formula1';
  src: url("../fonts/Formula1-Regular_web_0.ttf") format("truetype");
  font-weight: normal;
  font-style: normal;
  font-display: swap; }

@font-face {
  font-family: 'Formula1-wide';
  src: url("../fonts/Formula1-Wide_web_0.ttf") format("truetype");
  font-weight: normal;
  font-style: normal;
  font-display: swap; }

@font-face {
  font-family: 'Formula1_bold';
  src: url("../fonts/Formula1-Bold_web_0.ttf") format("truetype");
  font-weight: normal;
  font-style: normal;
  font-display: swap; }

/**
 * Basic typography style for copy text
 */
.nescafe-sans-bold, .nescafe-bold, .footer * b, .footer * strong {
  font-family: 'Nescafe Sans';
  font-weight: bold;
  font-style: normal; }

.nescafe-sans-regular, .nescafe-sans, .footer * {
  font-family: 'Nescafe Sans';
  font-weight: normal;
  font-style: normal; }

.Formula1, body, .heading-1 h1, .heading-1 h2, .heading-1 h3, .heading-1 h4, .heading-1 h5, .heading-1 h6, .heading-2 h1, .heading-2 h2, .heading-2 h3, .heading-2 h4, .heading-2 h5, .heading-2 h6 {
  font-family: 'Formula1';
  font-weight: normal;
  font-style: normal; }

.Formula1-bold, .menu-desktop .nav-item .nav-link, .menu__mobile-left .nav-item .nav-link, .secction-como-participar h2, .secction-premios h2, .page-ganador h2, .contentWinner h3, .contentWinner p {
  font-family: 'Formula1_bold';
  font-weight: bold;
  font-style: normal; }

.menu-desktop {
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: end; }
  @media screen and (max-width: 991px) {
    .menu-desktop {
      display: none; } }
  .menu-desktop .nav-item {
    text-align: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center; }
    .menu-desktop .nav-item .nav-link {
      color: white;
      text-decoration: none;
      text-transform: uppercase;
      position: relative;
      text-decoration: none;
      font-size: 13px;
      padding-left: 2rem;
      padding-right: 2rem; }
      @media only screen and (max-width: 1300px) and (min-width: 992px) {
        .menu-desktop .nav-item .nav-link {
          font-size: 11px; } }
      .menu-desktop .nav-item .nav-link:hover, .menu-desktop .nav-item .nav-link:focus {
        color: white;
        text-decoration: underline;
        text-decoration-thickness: 2px;
        text-underline-offset: 5px; }
  .menu-desktop .nav-link.active {
    color: white !important;
    text-decoration: underline; }
    @media only screen and (max-width: 1021px) and (min-width: 768px) {
      .menu-desktop .nav-link.active {
        font-size: 14px; } }

.wrapper-btn {
  padding: 0rem 4rem 0rem 0rem; }
  @media screen and (max-width: 992px) {
    .wrapper-btn {
      width: 100%;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: end;
      -ms-flex-pack: end;
      justify-content: end;
      padding: 0rem 1.5rem 0rem 1.5rem; } }
  @media screen and (max-width: 767px) {
    .wrapper-btn {
      width: auto;
      padding: 0rem 0rem 0rem 0rem; } }
  @media screen and (max-width: 992px) {
    .wrapper-btn .btn-whatsapp {
      width: -webkit-fit-content;
      width: -moz-fit-content;
      width: fit-content; } }

#sticky-wrapper {
  z-index: 2 !important; }

@media screen and (min-width: 992px) {
  .content-logo {
    width: 15%;
    margin-left: auto;
    margin-right: auto;
    padding: 0rem 15px;
    text-align: center; }
    .content-logo img {
      max-width: 80px; } }

@media screen and (max-width: 991px) {
  .content-logo img {
    max-width: 80px; } }

.menu__mobile-left {
  position: absolute;
  top: calc(100% + 0px);
  left: -100vw;
  width: 100vw;
  height: 100vh;
  background-color: #9D0000;
  z-index: 2;
  overflow-y: scroll;
  -webkit-transition: all 0.3s linear;
  -o-transition: all 0.3s linear;
  transition: all 0.3s linear;
  padding: 30px 25px;
  list-style: none; }
  .menu__mobile-left .nav-item {
    border-bottom: 2px solid #BB4D4D; }
    .menu__mobile-left .nav-item .nav-link {
      color: white;
      text-decoration: none;
      line-height: 1.2;
      text-transform: uppercase;
      position: relative;
      text-decoration: none;
      font-size: 16px;
      padding: 20px 0px; }
    .menu__mobile-left .nav-item::after {
      content: '';
      display: block;
      background-color: #620E13;
      width: 100%;
      height: 2px; }
    .menu__mobile-left .nav-item:last-child {
      border-bottom: 0 !important; }
      .menu__mobile-left .nav-item:last-child::after {
        display: none !important; }
  @media screen and (min-width: 992px) {
    .menu__mobile-left {
      display: none; } }
  .menu__mobile-left .custom-links-legals {
    position: absolute;
    left: 25px;
    bottom: 15%;
    -webkit-transform: translate(0, 0);
    -ms-transform: translate(0, 0);
    transform: translate(0, 0);
    width: calc(100% - 3rem); }
    .menu__mobile-left .custom-links-legals div {
      margin-top: 20px;
      margin-bottom: 20px; }
    .menu__mobile-left .custom-links-legals .custom-line {
      border-top: 2px solid #72060B;
      border-top-left-radius: 2px;
      border-top-right-radius: 2px;
      border-bottom: 2px solid #C95053;
      border-bottom-left-radius: 2px;
      border-bottom-right-radius: 2px;
      margin-bottom: 0 !important; }
    .menu__mobile-left .custom-links-legals a {
      color: white;
      text-decoration: none;
      line-height: 1.2;
      position: relative;
      font-size: 18px; }
      .menu__mobile-left .custom-links-legals a:hover, .menu__mobile-left .custom-links-legals a:focus {
        text-decoration: underline; }

.menu__mobile-left.open {
  left: 0; }

.hamburger {
  padding: 0 !important; }
  .hamburger .hamburger-inner, .hamburger .hamburger-inner:after, .hamburger .hamburger-inner:before {
    background-color: white !important; }
  .hamburger:hover, .hamburger:focus {
    opacity: 1; }

.hamburger.is-active:hover {
  opacity: 1; }

.footer * {
  font-size: 14px;
  color: white; }

.footer .number-rt p {
  font-size: 16px;
  color: white !important; }

.footer .links-footer {
  margin-top: 0.5rem;
  margin-bottom: 0.5rem; }
  @media screen and (max-width: 767px) {
    .footer .links-footer {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
      -ms-flex-direction: column;
      flex-direction: column; } }
  .footer .links-footer a {
    color: white;
    text-decoration: underline;
    position: relative;
    margin-left: 8px;
    margin-right: 8px;
    font-size: 12px; }
    .footer .links-footer a:hover, .footer .links-footer a:focus {
      color: white;
      text-decoration: none; }
    .footer .links-footer a::after {
      content: '';
      display: block;
      width: 1.5px;
      height: 15px;
      background: white;
      position: absolute;
      right: -10px;
      top: 50%;
      -webkit-transform: translate(0, -50%);
      -ms-transform: translate(0, -50%);
      transform: translate(0, -50%); }
      @media screen and (max-width: 767px) {
        .footer .links-footer a::after {
          display: none; } }
    @media screen and (max-width: 433px) {
      .footer .links-footer a:nth-child(2)::after {
        display: none; } }
    @media only screen and (max-width: 528px) and (min-width: 433px) {
      .footer .links-footer a:nth-child(3)::after {
        display: none; } }
    .footer .links-footer a:last-child::after {
      display: none; }
    @media screen and (max-width: 767px) {
      .footer .links-footer a {
        margin-bottom: 8px; } }

.footer .wrapper-text-footer p {
  font-size: 12px; }

.custom-link-footer {
  color: #C1A5A5;
  text-decoration: underline; }
  .custom-link-footer:hover, .custom-link-footer:focus {
    color: #C1A5A5;
    text-decoration: none; }

.social-media {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between; }
  @media screen and (max-width: 767px) {
    .social-media {
      -ms-flex-pack: distribute;
      justify-content: space-around;
      -webkit-box-align: center;
      -ms-flex-align: center;
      align-items: center; } }
  .social-media .facebook, .social-media .fb {
    height: 40px;
    width: 40px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center; }
    .social-media .facebook::after, .social-media .fb::after {
      font-family: "Font Awesome 5 Brands";
      font-weight: 900;
      content: "\f39e";
      color: white;
      font-size: 20px; }
  .social-media .twitter, .social-media .tw {
    height: 40px;
    width: 40px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center; }
    .social-media .twitter::after, .social-media .tw::after {
      font-family: "Font Awesome 5 Brands";
      font-weight: 400;
      content: "\f099";
      color: white;
      font-size: 20px; }
  .social-media .yt {
    height: 40px;
    width: 40px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center; }
    .social-media .yt::after {
      font-family: "Font Awesome 5 Brands";
      font-weight: 400;
      content: "\f167";
      color: white;
      font-size: 20px; }
  .social-media .ig {
    height: 40px;
    width: 40px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center; }
    .social-media .ig::after {
      font-family: "Font Awesome 5 Brands";
      font-weight: 400;
      content: "\f16d";
      color: white;
      font-size: 20px; }
  .social-media .ink {
    height: 40px;
    width: 40px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center; }
    .social-media .ink::after {
      font-family: "Font Awesome 5 Brands";
      font-weight: 400;
      content: "\f08c";
      color: white;
      font-size: 20px; }
  .social-media .tiktok {
    height: 40px;
    width: 40px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center; }
    .social-media .tiktok::after {
      font-family: "Font Awesome 5 Brands";
      font-weight: 400;
      content: "\e07b";
      color: white;
      font-size: 20px; }

.btn-whatsapp {
  background-color: #00c332;
  border-radius: 30px;
  color: white;
  padding: 5px 25px;
  border: 0;
  outline: none;
  text-decoration: none;
  font-size: 13px;
  font-weight: 700;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content; }
  @media screen and (max-width: 767px) {
    .btn-whatsapp {
      font-size: 11px;
      padding: 5px 15px; } }
  .btn-whatsapp:hover, .btn-whatsapp:focus {
    text-decoration: none;
    color: white;
    background-color: #00c332; }
  .btn-whatsapp .wa {
    padding-left: 5px;
    padding-right: 5px; }
    .btn-whatsapp .wa::after {
      font-family: "Font Awesome 5 Brands";
      font-weight: 900;
      content: "\f232";
      color: white;
      font-size: 20px; }

.section-hero .wrapper-break {
  position: relative;
  text-align: center; }
  .section-hero .wrapper-break .img-gana {
    width: 70%;
    padding-top: 3rem; }
  .section-hero .wrapper-break .img-text {
    width: 70%;
    padding-top: 1rem;
    padding-bottom: 2rem; }
  .section-hero .wrapper-break .img-choco-1 {
    position: absolute;
    left: -151px;
    width: 62%;
    top: 100px; }
    @media screen and (max-width: 576px) {
      .section-hero .wrapper-break .img-choco-1 {
        left: 0%;
        width: 35%; } }
  .section-hero .wrapper-break .img-choco-2 {
    position: absolute;
    width: 90%;
    right: -250px;
    top: 30px; }
    @media screen and (max-width: 576px) {
      .section-hero .wrapper-break .img-choco-2 {
        right: 0%;
        width: 35%; } }

.section-hero .wrapper-checo {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: end; }

.secction-como-participar {
  display: block;
  border-top: 4px solid white;
  border-bottom: 4px solid white; }
  @media screen and (max-width: 767px) {
    .secction-como-participar {
      border-bottom: none;
      border-top: 5px solid white; } }
  .secction-como-participar h2 {
    color: white;
    text-transform: uppercase; }
  .secction-como-participar .wrapper-img {
    text-align: center; }
    .secction-como-participar .wrapper-img p {
      color: white;
      margin-top: -40px; }
    .secction-como-participar .wrapper-img a {
      color: white;
      text-decoration: underline;
      cursor: pointer; }
      .secction-como-participar .wrapper-img a:hover {
        text-decoration: none; }
    .secction-como-participar .wrapper-img img {
      -webkit-transition: -webkit-transform 0.5s ease;
      transition: -webkit-transform 0.5s ease;
      -o-transition: transform 0.5s ease;
      transition: transform 0.5s ease;
      transition: transform 0.5s ease, -webkit-transform 0.5s ease; }
      .secction-como-participar .wrapper-img img:hover {
        -webkit-transform: scale(1.02);
        -ms-transform: scale(1.02);
        transform: scale(1.02); }

.secction-premios {
  position: relative; }
  .secction-premios h2 {
    color: white;
    text-transform: uppercase; }
  .secction-premios p {
    color: white; }
  .secction-premios .choco-1 {
    position: absolute;
    top: -7%;
    left: 0%;
    width: 20%; }
    @media screen and (max-width: 767px) {
      .secction-premios .choco-1 {
        display: none; } }
  .secction-premios .choco-2 {
    position: absolute;
    top: -7%;
    right: 0%;
    width: 20%; }
    @media screen and (max-width: 767px) {
      .secction-premios .choco-2 {
        display: none; } }
  .secction-premios .wrapper-premios {
    -webkit-transition: -webkit-transform 0.3s ease;
    transition: -webkit-transform 0.3s ease;
    -o-transition: transform 0.3s ease;
    transition: transform 0.3s ease;
    transition: transform 0.3s ease, -webkit-transform 0.3s ease; }
    .secction-premios .wrapper-premios:hover {
      -webkit-transform: translateY(-5px);
      -ms-transform: translateY(-5px);
      transform: translateY(-5px); }

/* === LOGIN PAGE STYLES === */
/* Fondo general de la página de usuario */
.gerber-login-page {
  background-color: #b31329;
  /* Azul claro Gerber */
  /* Si tienes un degradado, úsalo aquí */
  position: relative;
  padding: 2rem 0; }

/* Tarjeta */
.gerber-login-page .card {
  border-radius: 2rem;
  /* Bordes muy redondeados estilo bebé */
  -webkit-box-shadow: 0 15px 35px rgba(0, 85, 184, 0.2) !important;
  box-shadow: 0 15px 35px rgba(0, 85, 184, 0.2) !important; }

.text-gerber-blue {
  color: #b31329; }

/* === FORMULARIOS DE DRUPAL === */
/* Labels */
.gerber-login-page label {
  color: #b31329;
  font-weight: bold;
  margin-bottom: 0.5rem;
  font-size: 0.95rem; }

/* Inputs (Cajas de texto) */
.gerber-login-page .form-control,
.gerber-login-page input[type="text"],
.gerber-login-page input[type="password"],
.gerber-login-page input[type="email"] {
  border-radius: 50rem !important;
  /* Pill shape */
  border: 1px solid #cfe2ff;
  padding: 1.2rem 1.5rem;
  /* Padding generoso */
  height: auto;
  /* Dejar que el padding defina la altura */
  background-color: #f8fbff;
  color: #033e8c;
  font-weight: 500;
  margin-bottom: 1rem;
  width: 100%; }

.gerber-login-page input:focus {
  background-color: #fff;
  border-color: #b31329;
  /* Foco naranja */
  -webkit-box-shadow: 0 0 0 4px rgba(244, 124, 32, 0.1);
  box-shadow: 0 0 0 4px rgba(244, 124, 32, 0.1); }

/* Descripción de los campos (ej: requisitos de contraseña) */
.gerber-login-page .description,
.gerber-login-page .form-text {
  font-size: 0.8rem;
  color: #6c757d;
  margin-top: -0.5rem;
  margin-bottom: 1rem;
  padding-left: 1rem; }

/* Botón de Submit (Iniciar Sesión) */
.gerber-login-page .form-actions {
  text-align: center;
  margin-top: 2rem; }

.gerber-login-page button,
.gerber-login-page input[type="submit"] {
  background-color: #b31329;
  border: none;
  color: white;
  padding: 0.8rem 3rem;
  border-radius: 50rem;
  font-weight: bold;
  text-transform: uppercase;
  letter-spacing: 1px;
  font-size: 1rem;
  -webkit-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
  cursor: pointer;
  width: 100%; }

.gerber-login-page button:hover,
.gerber-login-page input[type="submit"]:hover {
  background-color: #b31329;
  -webkit-transform: translateY(-2px);
  -ms-transform: translateY(-2px);
  transform: translateY(-2px);
  -webkit-box-shadow: 0 5px 15px rgba(244, 124, 32, 0.4);
  box-shadow: 0 5px 15px rgba(244, 124, 32, 0.4); }

/* Links (Olvidé mi contraseña) */
.gerber-login-page a {
  color: #5d9cec;
  text-decoration: none;
  font-weight: 600; }

.gerber-login-page a:hover {
  color: #033e8c;
  text-decoration: underline; }

/* === DRUPAL TABS (Local Tasks) === */
/* Estilizar las pestañas de "Crear nueva cuenta", "Iniciar sesión" */
.gerber-login-page .tabs {
  list-style: none;
  padding: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  margin-bottom: 2rem;
  border-bottom: 1px solid #eee; }

.gerber-login-page .tabs li {
  margin: 0 5px; }

.gerber-login-page .tabs a {
  display: block;
  padding: 0.5rem 1rem;
  color: #aaa;
  border-bottom: 3px solid transparent;
  -webkit-transition: all 0.3s;
  -o-transition: all 0.3s;
  transition: all 0.3s; }

.gerber-login-page .tabs a.is-active {
  color: #033e8c;
  border-bottom-color: #033e8c;
  font-weight: bold; }

/* === ESTILOS PÁGINA 404 === */
/* Contenedor que ocupa toda la altura menos el header/footer si los hubiera */
.gerber-404-container {
  padding: 3rem 1rem; }
  .gerber-404-container p {
    color: #b31329; }

/* El número gigante */
.error-code {
  font-size: 8rem;
  /* Grande en desktop */
  font-weight: 900;
  line-height: 1;
  color: #b31329;
  /* Azul oscuro Gerber */
  text-shadow: 4px 4px 0px rgba(255, 255, 255, 0.2); }

/* El cero naranja */
.text-orange {
  color: #f47c20; }

.title-section-white .subtitle {
  color: #b31329 !important; }

/* Ajustes responsivos para móviles */
@media (max-width: 768px) {
  .error-code {
    font-size: 5rem; }
  .subtitle {
    font-size: 1.5rem; } }

/* Botón (por si no está cargando las clases globales de botones) */
.btn-gerber-orange {
  background-color: #f47c20;
  border-color: #f47c20;
  -webkit-transition: -webkit-transform 0.2s ease, -webkit-box-shadow 0.2s ease;
  transition: -webkit-transform 0.2s ease, -webkit-box-shadow 0.2s ease;
  -o-transition: transform 0.2s ease, box-shadow 0.2s ease;
  transition: transform 0.2s ease, box-shadow 0.2s ease;
  transition: transform 0.2s ease, box-shadow 0.2s ease, -webkit-transform 0.2s ease, -webkit-box-shadow 0.2s ease; }

.btn-gerber-orange:hover {
  background-color: #d96a17;
  -webkit-transform: translateY(-3px);
  -ms-transform: translateY(-3px);
  transform: translateY(-3px);
  -webkit-box-shadow: 0 10px 20px rgba(244, 124, 32, 0.4);
  box-shadow: 0 10px 20px rgba(244, 124, 32, 0.4); }

/* === DRUPAL PRIMARY TABS (Local Tasks) === */
/* Contenedor principal del bloque */
#block-gerber-primary-local-tasks {
  margin-bottom: 2rem;
  position: relative;
  z-index: 5;
  /* Asegura que esté por encima del contenido si hay solapamiento */ }

/* Limpiar la lista (ul) */
#block-gerber-primary-local-tasks ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  /* Permite que bajen si no caben en móviles */
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  /* Centradas, se ve más elegante */
  list-style: none;
  padding: 0;
  margin: 0;
  gap: 0.5rem;
  /* Espacio entre botones */ }

/* Estilo base de cada Link (El botón inactivo) */
#block-gerber-primary-local-tasks ul li a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  padding: 0.6rem 1.5rem;
  /* Tipografía */
  color: #5d9cec;
  /* Azul claro o grisáceo */
  text-decoration: none;
  font-weight: 600;
  font-size: 0.9rem;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  /* Forma y Borde */
  background-color: #fff;
  border: 1px solid #e0e0e0;
  border-radius: 50rem;
  /* Pill shape (redondeado total) */
  /* Transiciones suaves */
  -webkit-transition: all 0.2s ease-in-out;
  -o-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
  -webkit-box-shadow: 0 2px 4px rgba(0, 0, 0, 0.03);
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.03); }

/* Estado Hover (Al pasar el mouse) */
#block-gerber-primary-local-tasks ul li a:hover {
  background-color: #f0f7ff;
  color: #0055b8;
  /* Azul Gerber */
  border-color: #8ec6e6;
  -webkit-transform: translateY(-2px);
  -ms-transform: translateY(-2px);
  transform: translateY(-2px);
  /* Pequeño efecto de elevación */
  -webkit-box-shadow: 0 4px 8px rgba(0, 85, 184, 0.1);
  box-shadow: 0 4px 8px rgba(0, 85, 184, 0.1); }

/* Estado Activo (La pestaña seleccionada actualmente) */
#block-gerber-primary-local-tasks ul li a.is-active {
  background-color: #0055b8;
  /* Fondo Azul Gerber */
  color: #ffffff;
  /* Texto Blanco */
  border-color: #0055b8;
  -webkit-box-shadow: 0 4px 10px rgba(0, 85, 184, 0.3);
  box-shadow: 0 4px 10px rgba(0, 85, 184, 0.3);
  cursor: default;
  /* Indica que ya estás aquí */ }

/* Quitar efecto hover en el activo para que no "baile" */
#block-gerber-primary-local-tasks ul li a.is-active:hover {
  -webkit-transform: none;
  -ms-transform: none;
  transform: none;
  background-color: #004494;
  /* Un poco más oscuro */ }

/* === RESPONSIVE === */
@media (max-width: 768px) {
  #block-gerber-primary-local-tasks ul {
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    /* En móvil alineado a la izq */
    overflow-x: auto;
    /* Scroll horizontal si son muchas tabs */
    white-space: nowrap;
    padding-bottom: 10px;
    /* Espacio para la barra de scroll */ }
  #block-gerber-primary-local-tasks ul li a {
    padding: 0.5rem 1rem;
    font-size: 0.8rem; } }

.btnError {
  background-color: #b31329;
  color: white; }

.heading-1 {
  text-align: center; }
  .heading-1 h1, .heading-1 h2, .heading-1 h3, .heading-1 h4, .heading-1 h5, .heading-1 h6 {
    color: #F5D933;
    margin-bottom: 0;
    letter-spacing: 1px;
    text-shadow: #9e0000 3px 0px 0px, #9e0000 2.83487px 0.98158px 0px, #9e0000 2.35766px 1.85511px 0px, #9e0000 1.62091px 2.52441px 0px, #9e0000 0.70571px 2.91581px 0px, #9e0000 -0.28717px 2.98622px 0px, #9e0000 -1.24844px 2.72789px 0px, #9e0000 -2.07227px 2.16926px 0px, #9e0000 -2.66798px 1.37182px 0px, #9e0000 -2.96998px 0.42336px 0px, #9e0000 -2.94502px -0.5717px 0px, #9e0000 -2.59586px -1.50383px 0px, #9e0000 -1.96093px -2.27041px 0px, #9e0000 -1.11013px -2.78704px 0px, #9e0000 -0.13712px -2.99686px 0px, #9e0000 0.85099px -2.87677px 0px, #9e0000 1.74541px -2.43999px 0px, #9e0000 2.44769px -1.73459px 0px, #9e0000 2.88051px -0.83825px 0px, #db0c37 5px 0px 0px, #db0c37 4.90033px 0.99335px 0px, #db0c37 4.60531px 1.94709px 0px, #db0c37 4.12668px 2.82321px 0px, #db0c37 3.48353px 3.58678px 0px, #db0c37 2.70151px 4.20736px 0px, #db0c37 1.81179px 4.6602px 0px, #db0c37 0.84984px 4.92725px 0px, #db0c37 -0.146px 4.99787px 0px, #db0c37 -1.13601px 4.86924px 0px, #db0c37 -2.08073px 4.54649px 0px, #db0c37 -2.94251px 4.04248px 0px, #db0c37 -3.68697px 3.37732px 0px, #db0c37 -4.28444px 2.57751px 0px, #db0c37 -4.71111px 1.67494px 0px, #db0c37 -4.94996px 0.7056px 0px, #db0c37 -4.99147px -0.29187px 0px, #db0c37 -4.83399px -1.27771px 0px, #db0c37 -4.48379px -2.2126px 0px, #db0c37 -3.95484px -3.05929px 0px, #db0c37 -3.26822px -3.78401px 0px, #db0c37 -2.4513px -4.35788px 0px, #db0c37 -1.53666px -4.75801px 0px, #db0c37 -0.56076px -4.96845px 0px, #db0c37 0.4375px -4.98082px 0px, #db0c37 1.41831px -4.79462px 0px, #db0c37 2.34258px -4.41727px 0px, #db0c37 3.17346px -3.86382px 0px, #db0c37 3.87783px -3.15633px 0px, #db0c37 4.4276px -2.32301px 0px, #db0c37 4.80085px -1.39708px 0px, #db0c37 4.98271px -0.41545px 0px, white 7px 0px 0px, white 6.92869px 0.9966px 0px, white 6.71622px 1.9729px 0px, white 6.36692px 2.909px 0px, white 5.8879px 3.78584px 0px, white 5.28893px 4.58555px 0px, white 4.5822px 5.29183px 0px, white 3.78212px 5.8903px 0px, white 2.90498px 6.36876px 0px, white 1.96865px 6.71747px 0px, white 0.99222px 6.92932px 0px, white -0.00443px 7px 0px, white -1.00098px 6.92806px 0px, white -1.97715px 6.71498px 0px, white -2.91303px 6.36508px 0px, white -3.78956px 5.88551px 0px, white -4.58889px 5.28603px 0px, white -5.29472px 4.57885px 0px, white -5.89269px 3.77839px 0px, white -6.3706px 2.90095px 0px, white -6.71871px 1.96441px 0px, white -6.92995px 0.98784px 0px, white -6.99999px -0.00885px 0px, white -6.92743px -1.00536px 0px, white -6.71372px -1.98139px 0px, white -6.36324px -2.91705px 0px, white -5.88311px -3.79328px 0px, white -5.28313px -4.59223px 0px, white -4.57551px -5.29762px 0px, white -3.77466px -5.89507px 0px, white -2.89692px -6.37243px 0px, white -1.96016px -6.71995px 0px, white -0.98346px -6.93057px 0px, white 0.01328px -6.99999px 0px, white 1.00974px -6.92679px 0px, white 1.98564px -6.71247px 0px, white 2.92107px -6.36139px 0px, white 3.797px -5.88071px 0px, white 4.59557px -5.28022px 0px, white 5.30051px -4.57215px 0px, white 5.89746px -3.77094px 0px, white 6.37426px -2.89289px 0px, white 6.72119px -1.95591px 0px, white 6.93119px -0.97908px 0px, 0 8px 16px rgba(0, 0, 0, 0.6); }
    @media screen and (max-width: 991px) {
      .heading-1 h1, .heading-1 h2, .heading-1 h3, .heading-1 h4, .heading-1 h5, .heading-1 h6 {
        line-height: 1.5; } }
    .heading-1 h1 sup, .heading-1 h2 sup, .heading-1 h3 sup, .heading-1 h4 sup, .heading-1 h5 sup, .heading-1 h6 sup {
      left: 8px; }

.heading-2 {
  text-align: center; }
  .heading-2 h1, .heading-2 h2, .heading-2 h3, .heading-2 h4, .heading-2 h5, .heading-2 h6 {
    color: #FFD900;
    margin-bottom: 0;
    letter-spacing: 1px; }

.basic-page-faq p, .basic-page-faq span {
  color: white; }
  .basic-page-faq p strong, .basic-page-faq span strong {
    color: white; }

.basic-page {
  background-color: white;
  border-radius: 10px;
  padding: 2.25rem; }
  @media screen and (max-width: 991px) {
    .basic-page {
      padding: 1.5rem; } }
  .basic-page p, .basic-page span {
    color: black;
    font-size: 14px; }
    .basic-page p strong, .basic-page span strong {
      color: black; }

.color-white {
  color: white; }

.color-yellow {
  color: #F1D833; }

@media screen and (max-width: 991px) {
  .fs-12px, .fs-12 {
    font-size: 12px; } }

@media screen and (max-width: 991px) {
  .fs-14px, .fs-14 {
    font-size: 14px; } }

@media screen and (max-width: 991px) {
  .fs-16px, .fs-16 {
    font-size: 16px; } }

@media screen and (max-width: 991px) {
  .fs-18px, .fs-18 {
    font-size: 18px; } }

@media screen and (max-width: 991px) {
  .fs-20px, .fs-20 {
    font-size: 20px; } }

@media screen and (max-width: 991px) {
  .fs-22px, .fs-22 {
    font-size: 22px; } }

@media screen and (max-width: 991px) {
  .fs-24px, .fs-24 {
    font-size: 24px; } }

@media screen and (min-width: 992px) {
  .fs-lg-12px, .fs-lg-12 {
    font-size: 12px; } }

@media screen and (min-width: 992px) {
  .fs-lg-14px, .fs-lg-14 {
    font-size: 14px; } }

@media screen and (min-width: 992px) {
  .fs-lg-16px, .fs-lg-16 {
    font-size: 16px; } }

@media screen and (min-width: 992px) {
  .fs-lg-18px, .fs-lg-18 {
    font-size: 18px; } }

@media screen and (min-width: 992px) {
  .fs-lg-20px, .fs-lg-20 {
    font-size: 20px; } }

.c-hr-white {
  border-top: 1.5px solid white; }

@media screen and (max-width: 365px) {
  .custom-container {
    -ms-flex-wrap: nowrap !important;
    flex-wrap: nowrap !important; } }

@media only screen and (max-width: 991px) and (min-width: 767px) {
  .custom-container .navbar-nav {
    padding-left: 3rem !important;
    padding-right: 3rem !important; } }

@media only screen and (max-width: 1199px) and (min-width: 768px) {
  .custom-container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    -ms-flex-wrap: nowrap !important;
    flex-wrap: nowrap !important;
    max-width: 100%; }
    .custom-container .navbar-nav {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: horizontal;
      -webkit-box-direction: normal;
      -ms-flex-direction: row;
      flex-direction: row;
      -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
      -webkit-box-pack: center;
      -ms-flex-pack: center;
      justify-content: center; } }

.z-index-1 {
  z-index: 1 !important; }

@media only screen and (max-width: 1023px) and (min-width: 768px) {
  .social-media .custom-width {
    max-width: 100% !important;
    -webkit-box-flex: 100% !important;
    -ms-flex: 100% !important;
    flex: 100% !important; }
    .social-media .custom-width a .fb, .social-media .custom-width a .tw, .social-media .custom-width a .ig {
      display: -webkit-inline-box !important;
      display: -ms-inline-flexbox !important;
      display: inline-flex !important; } }

.link-legal {
  color: white;
  text-decoration: underline; }
  .link-legal:hover, .link-legal:focus {
    color: white;
    text-decoration: none; }

.list-winners {
  border-radius: 20px;
  background-color: #9D0000;
  padding-top: 2rem;
  padding-bottom: 2rem; }
  @media screen and (max-width: 991px) {
    .list-winners {
      border-radius: 10px; } }
  .list-winners p {
    color: #FFD900;
    margin-bottom: 0;
    font-size: 14px; }
  .list-winners .item-middle {
    padding-left: 0;
    padding-right: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between; }
    .list-winners .item-middle::before {
      display: inline-block;
      content: '|';
      color: white; }
    .list-winners .item-middle::after {
      display: inline-block;
      content: '|';
      color: white; }
    .list-winners .item-middle p {
      font-size: 14px;
      color: white;
      margin-bottom: 0; }

.content-prize-winner a {
  text-decoration: none;
  color: white; }
  .content-prize-winner a:hover, .content-prize-winner a:focus {
    text-decoration: underline;
    color: white; }

.linkLegals {
  color: #FFD900;
  text-decoration: underline; }
  .linkLegals:hover, .linkLegals:focus {
    color: #FFD900;
    text-decoration: none; }

.itemPrizeWinner {
  background-color: #D10013;
  border-radius: 15px;
  text-align: center;
  padding-top: 1rem;
  padding-bottom: 1rem;
  -webkit-box-shadow: 0 15px 15px rgba(0, 0, 0, 0.05);
  box-shadow: 0 15px 15px rgba(0, 0, 0, 0.05); }
  .itemPrizeWinner img {
    margin-bottom: 1.25rem;
    max-width: 70%; }
  .itemPrizeWinner p {
    color: white;
    margin-bottom: 0;
    padding-left: 10px;
    padding-right: 10px; }

.customQuestionMark {
  min-width: 250px;
  padding-bottom: 1rem; }
  .customQuestionMark a {
    color: inherit;
    text-decoration: none;
    text-align: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center; }
    .customQuestionMark a:hover, .customQuestionMark a:focus {
      color: inherit;
      text-decoration: none; }
      .customQuestionMark a:hover .content, .customQuestionMark a:focus .content {
        background-color: #CB2E3C; }
    .customQuestionMark a .content {
      border-radius: 5px;
      background-color: #f23647;
      width: 50px;
      height: 50px;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: center;
      -ms-flex-pack: center;
      justify-content: center;
      -webkit-box-align: center;
      -ms-flex-align: center;
      align-items: center;
      -webkit-transition: all .15s ease-in-out;
      -o-transition: all .15s ease-in-out;
      transition: all .15s ease-in-out; }
      .customQuestionMark a .content i {
        font-size: 26px;
        color: white; }

.page-ganador h2 {
  color: white;
  text-transform: uppercase; }

.contentWinner {
  background-color: white;
  border-radius: 28px;
  position: relative;
  width: 100%;
  /* width */
  /* Track */
  /* Handle */
  /* Handle on hover */ }
  @media screen and (max-width: 767px) {
    .contentWinner {
      overflow-x: auto;
      overflow-y: hidden; } }
  .contentWinner::-webkit-scrollbar {
    width: 5px;
    margin-top: 5px; }
  .contentWinner::-webkit-scrollbar-track {
    background: #6e6d6d;
    border-radius: 10px;
    padding: 5px;
    margin: 5px; }
  .contentWinner::-webkit-scrollbar-thumb {
    background: white;
    border-radius: 10px; }
  .contentWinner::-webkit-scrollbar-thumb:hover {
    background: white; }
  .contentWinner .winner-scroll-container {
    display: -webkit-box !important;
    display: -ms-flexbox !important;
    display: flex !important;
    -ms-flex-wrap: nowrap !important;
    flex-wrap: nowrap !important;
    min-width: 650px;
    /* Al medir 650px, en móviles (<576px) forzosamente activará el scroll */
    padding: 20px;
    text-align: center; }
    .contentWinner .winner-scroll-container .winner-col {
      -webkit-box-flex: 0 !important;
      -ms-flex: 0 0 33.333% !important;
      flex: 0 0 33.333% !important;
      min-width: 200px;
      /* Ninguna columna medirá menos de 200px */ }
  .contentWinner h3 {
    color: #cf101c;
    text-transform: uppercase;
    margin-bottom: 1.5rem; }
  .contentWinner p {
    margin-bottom: 0.5rem;
    white-space: nowrap; }
  .contentWinner::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    width: calc(100% + 30px);
    height: calc(100% + 30px);
    z-index: 1;
    border: 3px solid #ffffff;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    border-radius: 28px; }

.bg-red {
  background-color: #b91722; }

.bg-red-dark {
  background-color: #8d111a; }

.bg-hero {
  background-image: url("../img/fondo_hero.png");
  background-size: 100% 100%;
  background-position: center;
  background-repeat: no-repeat;
  display: block; }
  @media screen and (max-width: 767px) {
    .bg-hero {
      background-image: url("../img/bg_hero_mb.png"); } }

.bg-premios {
  background-image: url("../img/bg_premios.png");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  display: block; }

.bg-general {
  background-image: url("../img/bg_ganadores_v2.png");
  background-size: 100% 100%;
  background-position: center;
  background-repeat: no-repeat; }
  @media screen and (max-width: 991px) {
    .bg-general {
      background-position: top;
      background-image: url("../img/bg_ganadores_mb.png"); } }
