/******************************
*   Tipografias
******************************/
@import url('all.css');
@import url('typo.css');

:root {
    --negro: 0, 0, 0;
    --blanco: 255, 255, 255;
    --dark: 39, 39, 39;
    --verde: 2, 95, 33;
    --verde_n: 69, 233, 42;
    --verde01: 12, 69, 49;
    --verde02: 37, 134, 57;
    --rojo_l: 234, 28, 35;
    --rojo_d: 170, 2, 7;
    --color: 64, 64, 64;
    --amarillo: 251, 199, 107;

    --deg01: linear-gradient(90deg, rgb(var(--verde02)), rgb(var(--verde01)));
    --deg02: linear-gradient(90deg, rgb(var(--verde01)), rgb(var(--verde02)));
    --deg03: radial-gradient(ellipse at center, rgb(var(--verde02)), rgb(var(--verde01)));

    --am01: 251, 201, 109;
    --am02: 238, 162, 0;

    --ro01: 220, 88, 88;
    --ro02: 178, 34, 34;
    --ro03: 169, 22, 27;

    --do01: 95, 64, 2;
    --do02: 251, 199, 107;
    --deg-do: linear-gradient(-90deg, rgb(var(--do01)), rgb(var(--do02)));
}


::selection {
    color: rgb(var(--verde), 1);
    background: rgb(var(--blanco), 1);
}
::-moz-selection {
    color: rgb(var(--verde), 1);
    background: rgb(var(--blanco), 1);
}
::-webkit-selection {
    color: rgb(var(--verde), 1);
    background: rgb(var(--blanco), 1);
}

/******************************
*   Reset
******************************/
*{
    border: 0px;
    margin: 0px;
    padding: 0px;
}
html {
    scroll-behavior: smooth;
    scroll-padding: 72px;
}
body {
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
    font-family: 'Helvetica Neue';
    font-weight: normal;
    font-style: normal;
    font-display: swap;
    line-height: 1.4;
    font-size: 16px;
    color: rgb(var(--color));
    background: rgb(var(--name));
}
figure,
picture {
    pointer-events: none;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}
figure img { margin: 0 auto; }
img {
    max-width: 100%;
    height: auto;
    display: block;
}
a, a:link, a:hover, a:visited {
    text-decoration: none;
    color: inherit;
    cursor: pointer;

    -webkit-transition: all 0.3s ease-out;
    -moz-transition: all 0.3s ease-out;
    -ms-transition: all 0.3s ease-out;
    -o-transition: all 0.3s ease-out;
    transition: all 0.3s ease-out;
}
ul,
ol {
    margin: 0;
    padding: 0;
    padding-inline-start: 20px;
}
li + li { margin-top: 15px; }
h1, h2, h3, h4, h5, h6 {
    margin: 0;
    font-family: 'Compacta';
    font-weight: bold;
    font-style: italic;
}
input,
select,
textarea {
    display: block;
    width: 100%;
    height: 50px;
    padding: 12px 16px;
    color: rgb(var(--color));
    background: #d5e8dc;
    border-radius: 0px;
    -moz-appearance: none;
    -webkit-appearance: none;
    border-bottom: 1px solid rgba(var(--verde), .3);
    -webkit-transition: all 0.3s ease-out;
    -moz-transition: all 0.3s ease-out;
    -ms-transition: all 0.3s ease-out;
    -o-transition: all 0.3s ease-out;
    transition: all 0.3s ease-out;
}
textarea {
    width: 100%;
    max-width: 100%;
    min-width: 100%;
    min-height: 150px;
}
label {
    /* color: rgb(var(--verde)); */
    display: block;
    text-align: left;
}
/* Change autocomplete styles in WebKit */
input:-webkit-autofill,
input:-webkit-autofill:hover,
input:-webkit-autofill:focus,
textarea:-webkit-autofill,
textarea:-webkit-autofill:hover,
textarea:-webkit-autofill:focus,
select:-webkit-autofill,
select:-webkit-autofill:hover,
select:-webkit-autofill:focus {
  -webkit-text-fill-color: rgb(var(--color));
  -webkit-box-shadow: 0 0 0px 1000px #d5e8dc inset;
  transition: background-color 5000s ease-in-out 0s;
}
input::placeholder,
textarea::placeholder { color: rgb(var(--color), 1); }
button { background: transparent; }
input:focus,
select:focus,
textarea:focus,
button:focus { outline: none; }

input:focus,
input:valid { border-bottom: 1px solid rgba(var(--verde), 1); }

input[type="checkbox"]:focus,
input[type="checkbox"]:valid { border-bottom: none; }

p { margin: 0; }
p + *,
* + p,
* + ol,
* + ul { margin-top: 20px; }
ol + *,
ul + *,
* + h2,
* + h3,
* + h4,
* + h5,
* + h6 { margin-top: 40px; }

ul > li::marker,
ul > li > ul > li::marker,
ol > li::marker,
ol > li > ol > li::marker {
    color: rgb(var(--verde02), 1);
    font-weight: bold;
}
table {
    width: 100%;
    text-align: center;
}
table tr th,
table tr td { padding: 12px 6px; }
table thead tr th {
    font-family: 'Compacta';
    font-weight: bold;
    font-style: italic;
    font-size: 22px;
    background: rgb(var(--verde));
    color: rgb(var(--blanco));
    text-align: center;
}
table tbody tr td { line-height: 1.1; }
table tbody tr:nth-child(even) td { background: rgba(var(--verde02), .2); }

/******************************
*   General
******************************/
main::after,
main::before {
    content: '';
    position: absolute;
}
main::after {
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-image: url('../img/bg.jpg');
    background-repeat: repeat-y;
    background-position: center;
    background-size: 100%;
    opacity: .6;
    z-index: -2;
}
.bg__v::before {
    background: rgb(var(--verde));
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: -3;
    -webkit-transition: all 0.3s ease-out;
    -moz-transition: all 0.3s ease-out;
    -ms-transition: all 0.3s ease-out;
    -o-transition: all 0.3s ease-out;
    transition: all 0.3s ease-out;
}
.bg__v::after { mix-blend-mode: color-burn; }
.bg__special::after {
    background-image: url('../img/bg-especial.webp');
    background-size: cover;
    background-repeat: no-repeat;
    opacity: .2;
}
.bg__v.bg__special::after { mix-blend-mode: normal; }
main {
    min-height: 100vh;
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: center;
    z-index: 1;
}
main section {
    padding: 60px 0;
    position: relative;
}
main section:first-child { padding-top: 120px; }

.page__content > section {
    display: flex;
    flex-direction: column;
    justify-content: center;
}
.page__content section:nth-child(1) {
    min-height: 250px;
    padding-top: 110px;
}
.page__content section:nth-child(2) { min-height: calc(100vh - 250px); }


/* Head Section */
* + .h__sect,
.h__sect+ * { margin-top: 60px; }
.h__sect { text-align: center; }
.h__sect h2 {
    display: grid;
    grid-template-columns: 1fr;
    text-transform: uppercase;
    font-size: 10vw;
    -webkit-transform: skewY(-2deg);
    -moz-transform: skewY(-2deg);
    -ms-transform: skewY(-2deg);
    -o-transform: skewY(-2deg);
    transform: skewY(-2deg);
}
.h__sect h2::before,
.h__sect h2 > * {
    grid-area: 1 / 1 / 2 / 2;
    position: relative;
}
.h__sect h2::before {
    content: attr(data-text);
    display: block;
    color: transparent;
    -webkit-text-stroke-width: 1px;
    -webkit-text-stroke-color: rgb(var(--verde_n));
    -webkit-transform: translate(-4px, 4px);
    -moz-transform: translate(-4px, 4px);
    -ms-transform: translate(-4px, 4px);
    -o-transform: translate(-4px, 4px);
    transform: translate(-4px, 4px);
}
.h__sect h2 span { display: block; }
.tit__r { color: rgb(var(--rojo_l)); }
.tit__b { color: rgb(var(--blanco)); }
.h__sect p {
    max-width: 750px;
    margin-left: auto;
    margin-right: auto;
}

/* CTA */
.c__cta + *,
* + .c__cta { margin-top: 40px; }
.c__cta {
    display: flex;
    flex-flow: row wrap;
    justify-content: center;
    gap: 20px;
}
.cta {
    -webkit-transition: all 0.3s ease-out;
    -moz-transition: all 0.3s ease-out;
    -ms-transition: all 0.3s ease-out;
    -o-transition: all 0.3s ease-out;
    transition: all 0.3s ease-out;
}
.cta,
a.cta {
    display: inline-flex;
    justify-content: center;
    gap: 6px;
    white-space: nowrap;
    line-height: 1;
    min-width: 150px;
    padding: 16px 20px;
    font-family: 'Compacta';
    font-weight: bold;
    font-style: italic;
    text-transform: uppercase;
    color: rgb(var(--blanco), 1);
    position: relative;
    border-radius: 1000px;
    border: 2px solid rgb(var(--blanco));
}
.cta__01 { background: rgb(var(--rojo_l)); }
.cta__01:hover { background: rgb(var(--rojo_d)); }

.cta__02 { background: rgb(var(--verde02)); }
.cta__02:hover { background: rgb(var(--verde)); }
a.cta__03,
.cta__03 {
    color: rgb(var(--verde));
    text-decoration: underline;
}

/* Slider */
.cont__slider { position: relative; }
.cont__slider .swiper { overflow: visible; }
.cont__slider .swiper-slide { height: auto; }
.cont__contrls {
    margin-top: 20px;
    display: flex;
    justify-content: center;
    gap: 25px;
}
.cont__contrls .swiper-pagination {
    position: relative;
    margin: 0 auto;
    top: initial;
    left: initial;
    bottom: initial;
}
.cont__contrls .swiper-pagination .swiper-pagination-bullet {
    width: 10px;
    height: 10px;
    margin: 0 6px;
    opacity: 1;
    background: rgb(var(--blanco));
    border: 2px solid rgb(var(--verde));
    -webkit-transition: all 0.3s ease-out;
    -moz-transition: all 0.3s ease-out;
    -ms-transition: all 0.3s ease-out;
    -o-transition: all 0.3s ease-out;
    transition: all 0.3s ease-out;
}
.cont__contrls .swiper-pagination .swiper-pagination-bullet-active {
    border-color: rgb(var(--blanco));
    background: rgb(var(--rojo_l));
    filter: drop-shadow(0 0 4px rgba(var(--negro), .3));
    will-change: filter;
}
.swiper-button-disabled,
.swiper-button-disabled .arrow { pointer-events: none; }
.swiper-button-disabled .arrow { opacity: .3; }
.arrow {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background: rgb(var(--rojo_l));
    -webkit-transition: all 0.3s ease-out;
    -moz-transition: all 0.3s ease-out;
    -ms-transition: all 0.3s ease-out;
    -o-transition: all 0.3s ease-out;
    transition: all 0.3s ease-out;
    cursor: pointer;
    border: 2px solid;
    color: rgb(var(--blanco));
}
.arrow i { font-size: 22px; }
.arrow:hover { background: rgb(var(--rojo_d)); }

/* Banner Top */
.head__sect {
    overflow: hidden;
    border-bottom-right-radius: 2em;
    border-bottom-left-radius: 2em;
    padding-bottom: 40px;
    z-index: 1;
}
.head__sect .sect__bg,
.head__sect .sect__bg::before {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
.head__sect .sect__bg::before {
    content: '';
    background: rgba(var(--verde), .7);
    mix-blend-mode: multiply;
    z-index: 1;
}
.head__sect .sect__bg img {
    width: 100%;
    height: 100%;
    object-position: center;
    object-fit: cover;
}
.head__sect div {
    position: relative;
    z-index: 1;
}

/* BG Rounder */
.bg__round + * { position: relative; }
.bg__round  {
    position: absolute;
    width: 100%;
    height: 100%;
    left: 0;
    bottom: 0;
    overflow: hidden;
    z-index: -1;
    -webkit-mask-image: url('../img/curv.svg');
    mask-image: url('../img/curv.svg');
    mask-repeat: no-repeat;
    mask-position: center top;
    mask-size: 180%;
}
.bg__round::before,
.bg__round::after {
    content: '';
    position: absolute;
}
.bg__round::before {
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(var(--verde), .7);
    z-index: 1;
}
.bg__round::after {
    width: 120%;
    height: 50%;
    max-height: 400px;
    background: linear-gradient(to bottom, rgba(0,0,0,0) -20%,rgba(0,0,0,0.65) 100%);
    border-radius: 50%;
    left: 50%;
    -webkit-transform: translateX(-50%);
    -moz-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    -o-transform: translateX(-50%);
    transform: translateX(-50%);
    z-index: 1;
    bottom: -25%;
}
.bg__round figure {
    position: absolute;
    top: 0;
    left: 0;
}
.bg__round figure::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 60%;
    background: linear-gradient(to top,  rgba(var(--verde),0) 0%,rgba(var(--verde),0.9) 70%);
    z-index: 1;
}
.bg__round figure,
.bg__round figure img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}
.bg__round figure img {
    filter: blur(2px);
}

/* Paginador */
* + .cont__pagi,
.cont__pagi + * { margin-top: 30px; }
.cont__pagi ul {
    list-style: none;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 6px;
    padding-inline-start: 0px;
}
.cont__pagi ul li + li { margin-top: 0; }
.page__link {
    padding: 10px;
    font-family: 'Compacta';
    font-weight: bold;
    font-style: italic;
    font-size: 20px;
    line-height: 1;
}
.page__link a:hover,
.page__link a.active { color: rgb(var(--rojo_l)); }
.disable > *{
    pointer-events: none;
    filter: grayscale(1);
    opacity: .3;
}
.ar__min {
    width: 32px;
    height: 32px;
}
.ar__min i { font-size: 18px; }

/* Box */
.box__sect {
    text-align: center;
    max-width: 850px;
    margin-right: auto;
    margin-left: auto;
}
.box__small { max-width: 600px; }
.box__full {
    max-width: none;
    width: 100%;
}
.sect__b,
.sect__v {
    border-radius: 30px;
    padding: 60px 30px;
    box-shadow: 0 0 10px rgba(var(--negro), .05);
}
.sect__b { background: rgb(var(--blanco)); }
.sect__v {
    background: var(--deg03);
    color: rgb(var(--blanco));
}
.sect__v label,
.sect__v .text__form { color: rgb(var(--blanco)); }
.sect__v input,
.sect__v select,
.sect__v .camp__check div i { background: rgba(var(--blanco), .8); }
.box__sect .box__text {
    margin-right: auto;
    margin-left: auto;
    max-width: 550px;
}
.box__text {
    font-size: 18px;
    text-align: center;
}
.box__text + * { margin-top: 30px; }

/* Image */
.graf__center + * { margin-top: 30px; }
.graf__center {
    max-width: 120px;
    width: 40%;
    margin-left: auto;
    margin-right: auto;
    filter: drop-shadow(0 4px 5px rgba(var(--negro), .2));
    will-change: filter;
}
.text__box {
    text-align: left;
    display: inline-block;
    margin-right: auto;
    margin-left: auto;
}
.t__message {
    text-align: center;
    font-family: 'Compacta';
    font-weight: bold;
    font-style: italic;
    font-size: 28px;
    text-transform: uppercase;
}

/* Box Boder */
.box__border {
    padding: 4px;
    background: var(--deg-do);
    border-radius: 30px;
}
.box__border > * { border-radius: 28px; }

/******************************
*   Home
******************************/
#home main section:first-child { padding-top: 90px; }

/* Inicio */
.inicio {
    padding-bottom: 0;
    color: rgb(var(--blanco));
    filter: drop-shadow(0 4px 5px rgba(var(--negro), .5));
    will-change: filter;
    overflow: hidden;
}
.bg__ini {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    overflow: hidden;
}
.bg__ini::before,
.bg__ini::after {
    content: '';
    position: absolute;
}
.bg__ini::before {
    width: 80%;
    height: 100%;
    top: 0;
    right: 0;
    background: linear-gradient(to right,  rgba(var(--verde02),0) 0%,rgba(var(--verde02),0.80) 70%,rgba(var(--verde01),0.90) 100%);
}
.bg__ini::after {
    top: 30%;
    width: 30%;
    padding-top: 30%;
    right: 80%;
    border-radius: 50%;
    background: #9BB053;
    border-radius: 50%;
    filter: blur(80px);
    will-change: filter;
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    -o-transform: translateY(-50%);
    transform: translateY(-50%);
}
.bg__ini img {
    width: 100%;
    height: 100%;
    object-position: center;
    object-fit: cover;
}
.cont__master {
    position: relative;
    width: 95%;
    margin: 0 auto;
    display: grid;
    grid-template-columns: 1fr;
}
.marster__col { grid-area: 1 / 1 / 2 / 2; }
.col__01 picture{ filter: drop-shadow(0px 0px 10px rgba(var(--verde), .6)); }
.col__02 {
    font-family: 'Compacta';
    font-weight: bold;
    font-style: italic;
    text-transform: uppercase;
    padding-bottom: 15px;
}
.col__02 p + p { margin: 0; }
.logo__selec > * {
    width: 10%;
    min-width: 50px;
    max-width: 100px;
    margin: 0 auto;
}
.txt__01 p::before {
    filter: drop-shadow(0 8px 1px rgba(var(--negro), .3));
    will-change: filter;
}
.txt__01 p { line-height: 1; }
.txt__02 p { line-height: 1.1; }
.txt__01 p {
    display: grid;
    grid-template-columns: 1fr;
    -webkit-transform: skewY(-2deg);
    -moz-transform: skewY(-2deg);
    -ms-transform: skewY(-2deg);
    -o-transform: skewY(-2deg);
    transform: skewY(-2deg);
}
.txt__01 p > *,
.txt__01 p::before {
    grid-area: 1 / 1 / 2 / 2;
    position: relative;
}
.txt__01 p::before {
    content: attr(data-text);
    display: block;
    color: transparent;
    -webkit-text-stroke-width: 1px;
    -webkit-text-stroke-color: rgb(var(--verde_n));
    -webkit-transform: translate(-4px, 4px);
    -moz-transform: translate(-4px, 4px);
    -ms-transform: translate(-4px, 4px);
    -o-transform: translate(-4px, 4px);
    transform: translate(-4px, 4px);
}
.col__02 > * + * { margin-top: 30px; }
.txt__01 p:nth-child(1) {font-size: 7vw;}
.txt__01 p:nth-child(2) {font-size: 8vw;}
.txt__01 p:nth-child(3) {
    font-size: 11vw;
    -webkit-transform: skewY(-2deg) translateX(20%);
    -moz-transform: skewY(-2deg) translateX(20%);
    -ms-transform: skewY(-2deg) translateX(20%);
    -o-transform: skewY(-2deg) translateX(20%);
    transform: skewY(-2deg) translateX(20%);
}
.txt__02 {
    text-align: center;
    filter: drop-shadow(0 10px 2px rgba(var(--negro), .3));
    will-change: filter;
}
.txt__02 p:nth-child(1),
.txt__02 p:nth-child(3) { font-size: 4vw; }
.txt__02 p:nth-child(2) {
    font-size: 4.6vw;
    display: grid;
    grid-template-columns: 1fr;
}
.txt__02 p:nth-child(2) > *,
.txt__02 p:nth-child(2)::before {
    grid-area: 1 / 1 / 2 / 2;
    position: relative;
}
.txt__02 p:nth-child(2)::before {
    content: attr(data-text);
    display: block;
    -webkit-text-stroke-width: 2px;
    -webkit-text-stroke-color: #584211;
}
.txt__02 p:nth-child(2) span {
    background: -webkit-linear-gradient(#eec872, #dba122, #eec872, #dba122);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}
.cont__prod {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    position: relative;
    margin-right: auto;
    margin-left: auto;
    position: relative;
    z-index: 1;
}
.bg__prod {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 100%;
    height: 100%;
    background: rgb(var(--amarillo));
    -webkit-transform: translate(-50%, -50%);
    -moz-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    -o-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    border-radius: 50%;
    filter: blur(30px);
    will-change: filter;
    opacity: .6;
}
.cont__prod > figure {
    position: relative;
    filter: drop-shadow(0px 0px 10px rgba(var(--negro), .2));
    will-change: filter;
}
.cont__prod > figure > img { position: relative; }
.prod__01 { width: 25%; }
.prod__02 { width: 29%; }
.prod__03 { width: 24%; }
.prod__04 { width: 20%; }
.cont__prod > figure::before {
    content: '';
    position: absolute;
    left: 50%;
    -webkit-transform: translateX(-50%);
    -moz-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    -o-transform: translateX(-50%);
    transform: translateX(-50%);
    bottom: -1%;
    background: rgb(var(--negro), 1);
    width: 150%;
    height: 3%;
    border-radius: 50%;
    filter: blur(3px);
    will-change: filter;
    opacity: .5;
    z-index: -1;
}
.legal__ini {
    position: relative;
    color: rgb(var(--blanco));
    background: rgb(var(--verde));
    font-size: 60%;
    line-height: 1.2;
    padding: 15px;
}

/* Como participar */
.como { overflow: hidden; }
.card__info {
    position: relative;
    height: 100%;
    filter: drop-shadow(0 0 10px rgba(var(--negro), .1));
    will-change: filter;
}
.number {
    position: absolute;
    width: 50px;
    height: 50px;
    border-radius: 50%;
    background: rgb(var(--rojo_l));
    display: flex;
    justify-content: center;
    align-items: center;
    left: 50%;
    top: -25px;
    z-index: 2;
}
.number::before {
    content: '';
    position: absolute;
    width: 100%;
    height: 100%;
    border-radius: 50%;
    border: 2px solid rgb(var(--blanco));
    -webkit-transform: scale(1.1);
    -moz-transform: scale(1.1);
    -ms-transform: scale(1.1);
    -o-transform: scale(1.1);
    transform: scale(1.1);
}
.number span {
    font-size: 28px;
    font-family: 'Compacta';
    font-weight: bold;
    font-style: italic;
    color: rgb(var(--blanco));
}
.info__fil {
    display: flex;
    flex-direction: column;
    border-radius: 30px;
    overflow: hidden;
    height: 100%;
}
.info__fil > * {
    display: flex;
    align-items: center;
}
.info__img { position: relative; }
.bg__card,
.bg__card::before {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
}
.bg__card::before {
    content: '';
    background: rgba(var(--verde), .7);
}
.bg__card img {
    object-fit: cover;
    object-position: center;
    width: 100%;
    height: 100%;
}
.img__card {
    position: relative;
    padding: 0 15px;
    z-index: 1;
}
.info__text {
    background: rgb(var(--blanco));
    padding: 20px;
    height: 100%;
    text-align: center;
}
.info__text > div { width: 100%; }
.info__text p span {
    display: block;
    font-size: 28px;
    font-family: 'Compacta';
    font-weight: bold;
    font-style: italic;
    color: rgb(var(--rojo_l));
}
.info__text a {
    text-decoration: underline;
    font-weight: 500;
}
.nota { font-size: 12px; }
.card__dife .info__text p span i {
    display: block;
    color: rgb(var(--verde));
}
.card__dife .img__card img { margin-left: -20px; }

/* Recompensas */
.recompensas {
    color: rgb(var(--blanco));
    overflow: hidden;
    text-align: center;
    border-radius: 30px;
}
.bg__re {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    overflow: hidden;
}
.bg__re::before,
.bg__re::after {
    content: '';
    position: absolute;
    pointer-events: none;
}
.bg__re::before {
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(var(--verde), .7);
}
.bg__re figure,
.bg__re figure img {
    width: 100%;
    height: 100%;
}
.bg__re figure img {
    object-fit: cover;
    object-position: center;
}
.cont__recom {
    position: relative;
    padding: 0 15px;
}
.cont__cap {
    border-radius: 1000px;
    padding: 4px;
    background: linear-gradient(to top,  rgba(var(--verde),1) 0%,rgba(var(--blanco),1) 100%);
    height: 100%;
    filter: drop-shadow(0 0 8px rgba(var(--negro), .6));
    will-change: filter;
}
.cap__info {
    padding: 0 0 40px;
    border-radius: 1000px;
    background: rgb(var(--blanco));
    text-align: center;
    color: rgb(var(--color));
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: space-evenly;
    gap: 10px;
}
.cap__info figure {
    position: relative;
    padding-top: 100%;
    margin: -20px -20px 0 -20px;
    filter: drop-shadow(0 0 4px rgba(var(--negro), .6));
    will-change: filter;
}
.cap__info figure img {
    position: absolute;
    object-position: center bottom;
    object-fit: contain;
    top: 50%;
    left: 50%;
    width: 100%;
    height: 100%;
    -webkit-transform: translate(-50%, -50%);
    -moz-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    -o-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
}
.cap__info > span {
    font-size: 22px;
    font-family: 'Compacta';
    font-weight: bold;
    font-style: italic;
    line-height: 1;
    padding: 0 40px;
}

/* Ranking */
.info__rank {
    margin-right: auto;
    margin-left: auto;
    max-width: 900px;
}
* + .ranking__head,
.ranking__head + * { margin-top: 30px; }
.ranking__head span {
    margin: 0 auto;
    display: block;
    width: 100%;
    padding: 15px;
    background: rgb(var(--verde));
    color: rgb(var(--blanco));
    font-size: 22px;
    font-family: 'Compacta';
    font-weight: bold;
    font-style: italic;
    text-align: center;
    line-height: 1;
}

* + .cont__semanas,
.cont__semanas + * { margin-top: 30px; }
.cont__semanas {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 20px;
}
.text__sem {
    line-height: 1;
    font-weight: 500;
}

* + .tab__rank,
.tab__rank + * { margin-top: 30px; }

.pie__txt {
    text-align: center;
    font-style: italic;
}

* + .fil__info { margin-top: 100px; }
.fil__info {
    background: var(--deg01);
    color: rgb(var(--blanco));
    border-radius: 30px;
    text-align: center;
}
.fil__info > * { padding: 30px; }
.info__col h3 { font-size: 28px; }
.graf__prem {
    position: relative;
    width: 200px;
    margin-top: -80px;
    margin-right: auto;
    margin-left: auto;
}
.prem__bg {
    position: absolute;
    width: 90%;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    -moz-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    -o-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
}
.prem__bg::before {
    content: '';
    display: block;
    width: 100%;
    padding-top: 100%;
    background: rgb(var(--amarillo));
    border-radius: 50%;
    filter: drop-shadow(0 10px 6px rgba(var(--negro), .3));
    will-change: filter;
}
.prem__bg::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: 2px solid rgb(var(--blanco));
    border-radius: 50%;
}
.prem__img {
    position: relative;
    filter: drop-shadow(0 10px 6px rgba(var(--negro), .3));
    will-change: filter;
}

/* Ganadores */
.recompensas + .ganadores { margin-top: 60px; }
.ganadores { color: rgb(var(--blanco)); }
.ganadores .container {
    max-width: 1920px;
    width: 100%;
}
.ganadores .container .cont__slider { overflow: hidden; }
.ganadores .slide__gana { padding-top: 15px; }
.mask__r {
    -webkit-mask-image: linear-gradient(-90deg, rgba(var(--verde), 0) 35px, rgba(var(--verde), 1) 20%);
    mask-image: linear-gradient(-90deg, rgba(var(--verde), 0) 35px, rgba(var(--verde), 1) 20%);
}
.mask__l {
    -webkit-mask-image: linear-gradient(90deg, rgba(var(--verde), 0) 35px, rgba(var(--verde), 1) 20%);
    mask-image: linear-gradient(90deg, rgba(var(--verde), 0) 35px, rgba(var(--verde), 1) 20%);
}
.cont__winner > * + * { margin-top: 30px; }
.cont__pla {
    position: relative;
    filter: drop-shadow(0 0 8px rgba(var(--negro), .6));
    will-change: filter;
}
.pla__text {
    position: absolute;
    top: 48%;
    color: rgb(var(--rojo_d));
    left: 0;
    right: 0;
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    -o-transform: translateY(-50%);
    transform: translateY(-50%);
    font-family: 'Compacta';
    font-weight: bold;
    font-style: italic;
    text-align: center;
    text-transform: uppercase;
    mix-blend-mode: color-burn;
}
.pla__text span {
    font-size: 8.5vw;
    display: block;
    line-height: 1;
}
.pla__text span:nth-child(2) { font-size: 10vw; }
.info__winner  {
    font-family: 'Compacta';
    font-weight: bold;
    font-style: italic;
    text-align: center;
    text-transform: uppercase;
}
.info__winner > * {
    display: block;
    line-height: 1.2;
    font-size: 24px;
}
.info__winner > * + * { margin-top: 12px; }
.ganadores .cont__contrls { margin-top: 0; }
.ganadores .cont__contrls > * {
    position: absolute;
    top: 40%;
    -webkit-transform: translateY(50%);
    -moz-transform: translateY(50%);
    -ms-transform: translateY(50%);
    -o-transform: translateY(50%);
    transform: translateY(50%);
    z-index: 10;
}
.ganadores .cont__contrls > .swiper-prev { left: 0%; }
.ganadores .cont__contrls > .swiper-next { right: 0%; }

/******************************
*   Formularios
******************************/
.cont__form {
    margin-right: auto;
    margin-left: auto;
}
.cont__form .c__cta { margin-top: 0; }
.cont__camps {
    display: flex;
    flex-direction: column;
    gap: 30px;
}
.camp .box__text { font-size: initial; }
.camp > div { position: relative; }
.icon {
    position: absolute;
    pointer-events: none;
    top: 0;
    width: 47px;
    height: 50px;
    color: rgb(var(--verde));
    display: flex;
    justify-content: center;
    align-items: center;
}
.i__select { right: 0; }
.cont__check {
    display: flex;
    flex-direction: column;
    gap: 15px;
}
.camp__check {
    display: inline-flex;
    flex-direction: row-reverse;
    align-items: center;
    justify-content: flex-end;
    line-height: 1;
    gap: 6px;
}
.camp__check > div { position: relative; }
.camp__check > * { cursor: pointer; }
.camp__check > *,
.camp__check div > * { margin: 0; }
.camp__check div input {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    opacity: 0;
    cursor: pointer;
}
.camp__check div i {
    display: block;
    width: 20px;
    height: 20px;
    background: rgba(var(--verde02), .2);
    font-weight: 900;
    font-family: "Font Awesome 6 Pro";
    font-style: normal;
    pointer-events: none;
}
.camp__check div i::before {
    content: "\f00c";
    display: flex;
    justify-content: center;
    align-items: center;
    line-height: 1;
    width: 100%;
    height: 100%;
    -webkit-transition: all 300ms cubic-bezier(0.68, -0.1, 0.265, 1.55);
    -moz-transition: all 300ms cubic-bezier(0.68, -0.1, 0.265, 1.55);
    -ms-transition: all 300ms cubic-bezier(0.68, -0.1, 0.265, 1.55);
    -o-transition: all 300ms cubic-bezier(0.68, -0.1, 0.265, 1.55);
    transition: all 300ms cubic-bezier(0.68, -0.1, 0.265, 1.55);
    -webkit-transform: scale(0);
    -moz-transform: scale(0);
    -ms-transform: scale(0);
    -o-transform: scale(0);
    transform: scale(0);
}
.camp__check div input:checked + i::before {
    -webkit-transform: scale(1);
    -moz-transform: scale(1);
    -ms-transform: scale(1);
    -o-transform: scale(1);
    transform: scale(1);
}
* + .text__form { margin-top: 30px; }
.text__form {
    text-align: center;
    /* color: rgb(var(--verde)); */
}
.text__form span { display: block; }
.text__form a {
    font-weight: 600;
    text-decoration: underline;
}
.camp__text {
    font-size: 80%;
    margin-top: 10px;
    text-align: left;
}

/* Indicadores */
* + .cont__indi,
.cont__indi + * { margin-top: 40px; }
.cont__indi { text-align: center; }
.cont__indi > div {
    display: flex;
    justify-content: center;
    align-items: center;
}
.indi__step {
    width: 45px;
    height: 45px;
    border-radius: 50%;
    border: 2px solid rgb(var(--rojo_l));
    background: rgb(var(--blanco));
    display: flex;
    justify-content: center;
    align-items: center;
    -webkit-transition: all 0.3s ease-out;
    -moz-transition: all 0.3s ease-out;
    -ms-transition: all 0.3s ease-out;
    -o-transition: all 0.3s ease-out;
    transition: all 0.3s ease-out;
}
.line {
    width: 50px;
    height: 4px;
    background: rgb(var(--rojo_l));
}
.indi__step span {
    color: rgb(var(--rojo_l));
    font-family: 'Compacta';
    font-weight: bold;
    font-style: italic;
    font-size: 24px;
}
.indi__step.active { background: rgb(var(--rojo_l)); }
.indi__step.active span { color: rgb(var(--blanco)); }

.cont__step { display: none; }
#step__01 { display: block; }

/******************************
*   Perfil
******************************/
[data-page="perfil"] .head__sect .h__sect + * { margin-top: 0; }
[data-page="perfil"] .head__sect .container::before,
[data-page="perfil"] .head__sect .container::after { content: unset; }
[data-page="perfil"] .head__sect .container,
.info__goles {
    display: flex;
    justify-content: space-around;
    align-items: center;
}
[data-page="perfil"] .head__sect .container { flex-flow: row wrap; }
.info__goles {
    color: rgb(var(--blanco));
    font-family: 'Compacta';
    font-weight: bold;
    font-style: italic;
    text-align: center;
    font-size: 24px;
    gap: 40px;
    filter: drop-shadow(0 0 10px rgba(var(--negro), .3));
    will-change: filter;
}
.info__goles > * > * { display: block; }
.info__goles > * > *:nth-child(1) { font-size: 48px; }

.usuario .container {
    max-width: 1500px;
    width: 100%;
}
.usuario .cont__box { text-align: center; }

.box__user {
    padding: 4px;
    background: var(--deg-do);
    border-radius: 30px;
}
.user__info {
    padding: 30px 20px;
    border-radius: 26px;
    background: linear-gradient(rgb(var(--verde01)), rgb(var(--verde02)));
    color: rgb(var(--blanco));
    font-family: 'Compacta';
    font-weight: bold;
    font-style: italic;
    display: flex;
    flex-direction: column;
    gap: 30px;
}
.info__01 .cont__pla {
    width: 200px;
    margin: 0 auto;
}
.info__01 .pla__text span { font-size: 26px; }
.info__01 .pla__text span:nth-child(2) { font-size: 32px; }

.info__02 > * + * { margin-top: 30px; }
.info__02 p + p { margin-top: 12px; }
.info__name {
    text-align: center;
    font-size: 38px;
    text-transform: uppercase;
}
.info__basic span {
    display: block;
    font-size: 22px;
}
.info__basic { font-size: 18px; }

/* LB */
.lb__box {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    overflow: auto;
    background: rgb(64, 64, 64, .8);
    z-index: 1000;
    display: none;
}
.box__center {
    width: 100%;
    min-height: 100vh;
    min-height: 100dvh;
    display: flex;
    justify-content: center;
    flex-direction: column;
    padding: 30px 0;
}
.cont__lb .info__comple p { margin: 0; }
.cont__lb .info__comple p span {
    display: block;
    font-family: 'Helvetica Neue';
    font-weight: normal;
    font-style: italic;
    font-size: initial;
}
.cont__lb .info__comple p span:nth-child(1) {
    letter-spacing: 0.05em;
    font-weight: 500;
}
.cont__lb .info__02 > *:last-child {
    font-family: 'Helvetica Neue';
    font-weight: normal;
    font-style: normal;
    font-size: initial;
}
.cont__lb .info__comple .datos {
    max-width: 1000px;
    margin: 0 auto;
    display: flex;
    flex-flow: column;
    gap: 20px 30px;
}
.cont__lb .info__02 > *:last-child {
    text-align: center;
    font-size: initial;
}
.cont__lb hr {
    opacity: .2;
    display: none;
}
.closr {
    width: 35px;
    height: 35px;
    border-radius: 4px;
    background: rgb(var(--rojo_l));
    display: flex;
    justify-content: center;
    align-items: center;
    margin: -10px 0 0 auto;
    cursor: pointer;
    font-size: 20px;
}
/* LB */

.tickets {
    text-align: center;
    color: rgb(var(--blanco));
}
.tickets .bg__round {
    top: 150px;
    height: auto;
}

/* Filtros */
.cont__filter {
    display: flex;
    justify-content: space-between;
    flex-direction: column;
    gap: 30px;
    margin-right: auto;
    margin-left: auto;
    max-width: 850px;
}
.fil__btn {
    display: flex;
    gap: 10px;
    justify-content: flex-end;
}
.btn__fil {
    width: 30px;
    cursor: pointer;
}

/* Grid */
* + .grid__item,
.grid__item + * { margin-top: 60px; }
.grid__item + *.cont__pagi { margin-top: 30px; }
.grid__item {
    display: flex;
    flex-flow: wrap;
    gap: 40px;
    margin-right: auto;
    margin-left: auto;
    max-width: 850px;
}
.item__cont { flex: 1 1 100%; }

/* Tickets */
.ticket__box {
    position: relative;
    color: rgb(var(--blanco));
}
.box__forma {
    -webkit-mask-image: url('../img/shape-01.svg');
    mask-image: url('../img/shape-01.svg');
    mask-repeat: no-repeat;
    mask-position: center;
    mask-size: 100%;
}
.box__forma svg {
    width: 100%;
    height: auto;
    display: block;
}
.box__forma #shape { fill: transparent; }
.line__form {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
}
.img__ticket {
    position: absolute;
    width: 80%;
    top: 12%;
    left: 10%;
    right: 5%;
    bottom: 32%;
    filter: drop-shadow(0 0 4px rgba(var(--negro), .3));
    will-change: filter;
}
.img__ticket figure,
.img__ticket figure img {
    width: 100%;
    height: 100%;
}
.img__ticket figure img {
    object-position: center;
    object-fit: contain;
}
.form__flo {
    position: absolute;
    filter: drop-shadow(0 0 4px rgba(var(--negro), .3));
    will-change: filter;
}
.form__01 {
    width: 26%;
    top: 10%;
    left: 5%;
}
.form__02 {
    left: 5%;
    right: 10%;
    bottom: 3%;
}
.form__text,
.status__text {
    font-family: 'Compacta';
    font-weight: bold;
    font-style: italic;
    text-align: center;
    text-transform: uppercase;
}
.form__text {
    position: absolute;
    top: 0;
    left: 0;
    right: 0%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
}
.form__text span {
    display: block;
    line-height: 1;
}
.form__text span:nth-child(1) {
    font-size: 280%;
    -webkit-transform: translateY(-15%);
    -moz-transform: translateY(-15%);
    -ms-transform: translateY(-15%);
    -o-transform: translateY(-15%);
    transform: translateY(-15%);
}
.form__text span:nth-child(2) { width: 80%; }
.number__id {
    text-align: left;
    margin-bottom: -3%;
    font-size: 90%;
    font-weight: 500;
}
.status__text {
    position: absolute;
    top: 26%;
    left: 0;
    right: 5%;
    bottom: 7%;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 8vw;
    line-height: 1;
}

/* Status Aprobado */
.t__aprob .box__forma {
    background:
    radial-gradient(ellipse at center, rgb(var(--verde02)) 0%, rgb(var(--verde01)) 100%);
}
.t__aprob .form__flo svg { fill: rgb(var(--dark)); }
.t__aprob .status__text::before { content: 'Aprobado'; }

/* Status Pendiente */
.t__pend { color: rgb(var(--dark)); }
.t__pend .box__forma {
    background:
    radial-gradient(ellipse at center, rgb(var(--am01)) 5%, rgb(var(--am02)) 100%);
}
.t__pend .form__flo svg { fill: rgb(var(--am02)); }
.t__pend .status__text::before { content: 'En aprobación'; }

/* Status Rechazado */
.t__recha .box__forma {
    background:
    radial-gradient(ellipse at center, rgb(var(--ro01)) 0%, rgb(var(--ro02)) 100%);
}
.t__recha .form__flo svg { fill: rgb(var(--ro03)); }
.t__recha .status__text::before { content: 'Rechazado'; }

.date {
    position: absolute;
    top: 3%;
    left: 42%;
}
.date span {
    display: block;
    line-height: 1;
    font-weight: 500;
    font-size: 4.5vw;
}

.toltip {
    position: relative;
    display: inline-block;
}
.ticket__box .toltip {
    position: absolute;
    top: 6%;
    right: 8%;
    color: rgb(var(--color));
    z-index: 10;
}
.tooltip__btn {
    width: 20px;
    height: 20px;
    border-radius: 50%;
    background: rgb(var(--blanco));
    display: flex;
    justify-content: center;
    align-items: center;
}
.tooltip__btn > * {
    font-size: 12px;
    line-height: 1;
}
.tooltip__content {
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    background: rgb(var(--blanco));
    position: absolute;
    padding: 4px;
    border-radius: 6px;
    width: 180px;
    font-size: 12px;
    text-align: center;
    bottom: calc(100% + 10px);
    right: -40px;
    -webkit-transition: all 0.3s ease-out;
    -moz-transition: all 0.3s ease-out;
    -ms-transition: all 0.3s ease-out;
    -o-transition: all 0.3s ease-out;
    transition: all 0.3s ease-out;
    filter: drop-shadow(0 0 4px rgba(var(--negro), .2));
    will-change: filter;
}
.tooltip__content::before {
    content: '';
    position: absolute;
    width: 15px;
    height: 15px;
    border-radius: 2px;
    background: rgb(var(--blanco));
    bottom: -4px;
    right: 43px;
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    -o-transform: rotate(45deg);
    transform: rotate(45deg);
    z-index: -1;
}
.tooltip__content.activo {
    opacity: 1;
    visibility: visible;
    pointer-events: all;
}
.camp .toltip { vertical-align: text-top; }
.camp .tooltip__btn {
    border: 1px solid rgb(var(--verde));
    color: rgb(var(--verde));
}

/******************************
*   Registrar Tiket
******************************/
.fil__registra {
    display: flex;
    flex-direction: column;
    gap: 50px;
}
.fil__registra h3 { color: rgb(var(--verde)); }
.fil__registra ul {
    list-style: none;
    padding-inline-start: 0;
}
.fil__registra ul li {
    display: flex;
    align-items: baseline;
}
.fil__registra ul > li::before {
    content: "\f00c";
    font-weight: 900;
    font-family: "Font Awesome 6 Pro";
    margin-right: 6px;
    color: rgb(var(--verde));
}
.fil__registra .card__info { height: auto; }
.fil__registra .info__fil { border-radius: 30px; }
.fil__registra .info__fil,
.fil__registra .info__text { height: auto; }
.fil__registra .info__img { background: rgb(var(--blanco)); }
.fil__registra .info__fil > * { align-items: stretch; }
.fil__registra .info__img > .img__card img {
    height: 100%;
    object-fit: cover;
}
.fil__registra .cont__camps label { display: inline-block; }
.input__file label {
    font-family: 'Compacta';
    font-weight: bold;
    font-style: italic;
    font-size: 22px;
}
.input__file > div {
    border-radius: 10px;
    overflow: hidden;
    background: #d5e8dc;
    -webkit-transition: all 0.3s ease-out;
    -moz-transition: all 0.3s ease-out;
    -ms-transition: all 0.3s ease-out;
    -o-transition: all 0.3s ease-out;
    transition: all 0.3s ease-out;
    cursor: pointer;
}
.input__file > div::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background:
    repeating-linear-gradient(
      to right,
      rgb(var(--verde)) 0 10px,
      transparent 10px 20px
    ) top no-repeat,
    repeating-linear-gradient(
      to bottom,
      rgb(var(--verde)) 0 10px,
      transparent 10px 20px
    ) right no-repeat,
    repeating-linear-gradient(
      to right,
      rgb(var(--verde)) 0 10px,
      transparent 10px 20px
    ) bottom no-repeat,
    repeating-linear-gradient(
      to bottom,
      rgb(var(--verde)) 0 10px,
      transparent 10px 20px
    ) left no-repeat;
    background-size: calc(100% - 10px) 1px, 1px calc(100% - 10px);
    z-index: 1;
    pointer-events: none;
}
.input__file > div:hover,
.input__file > div.dragover { background: rgba(var(--verde), .5); }

.txt__input,
.img__input {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
.txt__input {
    display: flex;
    justify-content: center;
    flex-direction: column;
    align-items: center;
    text-align: center;
    color: rgb(var(--verde));
}
.txt__input span { font-size: 80%; }
.img__input img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    opacity: 0;
    -webkit-transition: all 0.3s ease-out;
    -moz-transition: all 0.3s ease-out;
    -ms-transition: all 0.3s ease-out;
    -o-transition: all 0.3s ease-out;
    transition: all 0.3s ease-out;
}
.img__input.hola img { opacity: 1; }
.input__file div input {
    width: 100%;
    padding: 40% 0 0 0 ;
    cursor: pointer;
    border: 0;
    background: transparent;
    position: relative;
    z-index: 1;
}
.input__file div input:focus { outline: none; }

/******************************
*   Trivias
******************************/
#trivia { display: none; }
.cont__timer {
    position: relative;
    width: 96px;
    border-radius: 50%;
    margin: 0 auto -48px;
}
.cont__timer::before {
    content: '';
    position: absolute;
    background: rgb(var(--blanco));
    border-radius: 50%;
    width: 95%;
    height: 95%;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    -moz-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    -o-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
}
.cont__timer > div {
    width: 100%;
    padding-top: 100%;
}
.timer__circle {
    position: absolute;
    top: 0;
    left: 0;
    transform: rotateX(0deg) rotateY(180deg) rotate(-90deg);
    width: 100%;
    height: 100%;
    fill: none;
}
.circle__bg {
    stroke: #363636;
    stroke-width: 7px;
}
.circle__line {
    display: flex;
    stroke: rgb(var(--verde_n));
    stroke-dasharray: 408;
    stroke-dashoffset: 0;
    stroke-linecap: round;
    stroke-width: 8px;
    transition: stroke 0.3s linear;
}
.time__tex {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 88%;
    height: 88%;
    -webkit-transform: translate(-50%, -50%);
    -moz-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    -o-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 10;
}
.time__tex span {
    font-size: 30px;
    font-family: 'Compacta';
    font-weight: bold;
    font-style: italic;
    color: rgb(var(--verde));
}

/* Estados */
.big .circle__line { stroke: rgb(var(--verde_n)); }
.middle .circle__line { stroke: rgb(var(--am02)); }
.small .circle__line { stroke: rgb(var(--rojo_l)); }

.form__tri {
    margin: 0 auto;
    max-width: 800px;
}
.item__ques {
    display: flex;
    flex-direction: column;
    gap: 20px;
    position: relative;
}
.box__ques {
    position: relative;
    border-radius: 30px;
    overflow: hidden;
    padding: 80px 30px 40px;
    text-align: center;
}
.box__ques::before {
    content: '';
    position: absolute;
    top: 0;
    left: 50%;
    width: 100%;
    height: 100%;
    -webkit-transform: translateX(-50%);
    -moz-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    -o-transform: translateX(-50%);
    transform: translateX(-50%);
    -webkit-mask-image: url('../img/mask.svg');
    mask-image: url('../img/mask.svg');
    mask-repeat: no-repeat;
    mask-position: top center;
    mask-size: 1620px;
    background: rgb(var(--blanco));
    pointer-events: none;
}
.box__ques > * {
    position: relative;
    z-index: 1;
}
.cont__ans {
    display: flex;
    flex-flow: wrap;
    gap: 20px;
}
.ans__item { flex: 0 0 100%; }
.ans__item input {
    opacity: 0;
    display: none;
    position: absolute;
}
.ans__item label {
    position: relative;
    font-weight: normal;
    font-size: 18px;
    color: rgb(var(--blanco));
    border-radius: 20px;
    border: 1px solid rgb(var(--blanco));
    text-align: center;
    margin: 0;
    height: 100%;
    cursor: pointer;
    padding: 20px 35px;
    display: flex;
    justify-content: center;
    align-items: center;
    background: rgba(var(--blanco), .15);
    -webkit-transition: all 0.3s ease-out;
    -moz-transition: all 0.3s ease-out;
    -ms-transition: all 0.3s ease-out;
    -o-transition: all 0.3s ease-out;
    transition: all 0.3s ease-out;
}
.ans__item label::before {
    content: "\f058";
    position: absolute;
    top: 10px;
    right: 10px;
    font-weight: 900;
    font-family: "Font Awesome 6 Pro";
    font-style: normal;
    line-height: 1;
    color: rgba(var(--am02), 1);
    -webkit-transition: all 300ms cubic-bezier(0.68, -0.1, 0.265, 1.55);
    -moz-transition: all 300ms cubic-bezier(0.68, -0.1, 0.265, 1.55);
    -ms-transition: all 300ms cubic-bezier(0.68, -0.1, 0.265, 1.55);
    -o-transition: all 300ms cubic-bezier(0.68, -0.1, 0.265, 1.55);
    transition: all 300ms cubic-bezier(0.68, -0.1, 0.265, 1.55);
    -webkit-transform: scale(0);
    -moz-transform: scale(0);
    -ms-transform: scale(0);
    -o-transform: scale(0);
    transform: scale(0);
}
.ans__item label span {
    display: block;
    -webkit-text-stroke-width: 0;
    -webkit-transition: all 0.3s ease-out;
    -moz-transition: all 0.3s ease-out;
    -ms-transition: all 0.3s ease-out;
    -o-transition: all 0.3s ease-out;
    transition: all 0.3s ease-out;
}
.ans__item:hover label { background: rgba(var(--blanco), .3); }
.ans__item input:checked + label {
    background: rgba(var(--am02), .2);
    border-color: rgba(var(--am02), 1);
    box-shadow: 0 0 15px rgba(var(--am02), 1);
}
.ans__item input:checked + label::before {
    -webkit-transform: scale(1);
    -moz-transform: scale(1);
    -ms-transform: scale(1);
    -o-transform: scale(1);
    transform: scale(1);
}
.ans__item input:checked + label span {
    -webkit-text-stroke-width: 1px;
    -webkit-text-stroke-color: rgb(var(--blanco));
}
.item__ques .c__cta { margin-top: 0; }

/* Especial */
#content { overflow: hidden; }
#content .swiper { overflow: visible; }
.sect__tri.bg__v::before { opacity: 0; }
.tri__special .time__tex span { color: rgb(var(--do01)); }
.tri__special .circle__bg { stroke: rgb(var(--do02)); }
.tri__special .circle__line {
    --do02: 169, 128, 52;
    stroke: rgb(var(--do02));
}
.tri__special .big .circle__line {
    --do01: 169, 128, 52;
    stroke: rgb(var(--do01));
}
.tri__special .box__ques {
    color: rgb(var(--do01));
}
.tri__special .box__ques::before {
    background: linear-gradient(to right,  rgba(238,200,114,1) 0%,rgba(219,161,34,1) 100%);
}
.tri__special .ans__item label {
    color: rgb(var(--color));
    border: 1px solid rgba(var(--negro), .1);
    background: rgba(var(--negro), .05);
}
.tri__special .ans__item:hover label { background: rgba(var(--negro), .15); }
.tri__special .ans__item input:checked + label { color: rgb(var(--do01)); }
.tri__special .ans__item input:checked + label span { -webkit-text-stroke-color: rgb(var(--do01)); }

.cta__01[disabled] {
    filter: grayscale(1);
    pointer-events: none;
    opacity: .5;
}
.number__ques {
    position: absolute;
    font-size: 30px;
    font-family: 'Compacta';
    font-weight: bold;
    font-style: italic;
    top: -42px;
    left: 20px;
    color: #B67900;
    z-index: 1;
}
.number__ques + *{ margin-top: 0; }
.ques__sect { display: none; }
.ques__sect.active { display: block; }

/* Especial final */
.sect__re {
    color: rgb(var(--blanco));
    max-width: 600px;
}
.box__result {
    --negro: 27, 27, 27;
    background: rgba(var(--negro), .68);
    border-radius: 30px;
    padding: 30px;
    position: relative;
}
.box__result > * + * { margin-top: 20px; }
.res__graph figure {
    width: 72px;
    margin: -64px auto 0;
}
.res__text {
    font-size: 30px;
    font-family: 'Compacta';
    font-weight: bold;
    font-style: italic;
}
.rt__01 {
    font-size: 36px;
    text-transform: uppercase;
}
.rt__02 { font-size: 26px; }
.final__time > * {
    padding: 10px;
    background: rgb(var(--negro));
    display: inline-block;
    line-height: 1;
    font-size: 24px;
}
.number__hits {
    display: flex;
    justify-content: center;
}
.number__hits > * {
    --gris: 111, 111, 111;
    font-size: 60px;
    font-family: 'Compacta';
    font-weight: bold;
    font-style: italic;
    border: 1px solid #4E4E4E;
    padding: 20px;
    line-height: 1;
    background: rgb(var(--gris));
}

/******************************
*   Faqs
******************************/
.acordeon {
    margin-right: auto;
    margin-left: auto;
    max-width: 850px;
    display: flex;
    flex-direction: column;
    gap: 20px;
}
.acor__info { display: none; }
.fil__acor {
    border-radius: 10px;
    background: rgb(var(--blanco));
}
.acor__title {
    padding: 20px 20px;
    cursor: pointer;
    gap: 10px;
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.acor__title h4 {
    font-size: 18px;
    font-family: 'Helvetica Neue';
    font-weight: normal;
    font-style: normal;
    font-weight: 500;
    color: rgb(var(--verde));
    width: calc(100% - 40px);
}
.indica {
    width: 30px;
    height: 30px;
    position: relative;
    background: rgb(var(--rojo_l));
    border-radius: 50%;
}
.indica::before,
.indica::after {
    content: '';
    position: absolute;
    width: 50%;
    height: 2px;
    background: rgb(var(--blanco));
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    -moz-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    -o-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    -webkit-transition: all 300ms cubic-bezier(0.68, -0.1, 0.265, 1.55);
    -moz-transition: all 300ms cubic-bezier(0.68, -0.1, 0.265, 1.55);
    -ms-transition: all 300ms cubic-bezier(0.68, -0.1, 0.265, 1.55);
    -o-transition: all 300ms cubic-bezier(0.68, -0.1, 0.265, 1.55);
    transition: all 300ms cubic-bezier(0.68, -0.1, 0.265, 1.55);
}
.indica::after {
    -webkit-transform: translate(-50%, -50%) rotate(90deg);
    -moz-transform: translate(-50%, -50%) rotate(90deg);
    -ms-transform: translate(-50%, -50%) rotate(90deg);
    -o-transform: translate(-50%, -50%) rotate(90deg);
    transform: translate(-50%, -50%) rotate(90deg);
}
.active .indica::after {
    -webkit-transform: translate(-50%, -50%) rotate(0deg);
    -moz-transform: translate(-50%, -50%) rotate(0deg);
    -ms-transform: translate(-50%, -50%) rotate(0deg);
    -o-transform: translate(-50%, -50%) rotate(0deg);
    transform: translate(-50%, -50%) rotate(0deg);
}
.acor__info { padding: 0 20px 20px; }

/******************************
*   Legal
******************************/
.text__legal {
    max-width: 950px;
    margin-left: auto;
    margin-right: auto;
}
.text__legal h2,
.text__legal h3,
.text__legal h4 { color: rgb(var(--verde02)); }

/******************************
*   Teaser
******************************/


/******************************
*   Mobile
******************************/
/* Extra Small Devices, Phones */
@media (max-width : 479px) {
/* Ticket */
.form__text { font-size: 5vw; }
.number__id { font-size: 4vw; }

}
@media (min-width : 480px) {
/* Grid */
.item__cont { flex: 1 1 calc(50% - 40px); }

/* Ticket */
.status__text { font-size: 4vw; }

}
/* Small Devices, Tablets */
@media (min-width : 480px) and (max-width : 767px) {
/* Ticket */
.form__text { font-size: 2.4vw; }
.number__id { font-size: 2vw; }
.date span { font-size: 2.5vw; }

}
@media (max-width : 679px) {
/* Home: Como participar */
.number {
    -webkit-transform: translateX(-50%);
    -moz-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    -o-transform: translateX(-50%);
    transform: translateX(-50%);
}

/* Home: Ranking */
.tab__rank { font-size: 14px; }

/* Home: Recompensas */
.cap__info > span { padding: 0 30px; }

/* Grid */
.grid__item { width: 80%; }

/* Registrar Tiket */
.fil__registra .info__img { display: flex; }
.fil__registra .info__img > .img__card { width: 40%; }
.fil__registra .info__img > .img__card img {
    width: 150%;
    max-width: initial;
}
.fil__registra .info__img > div { width: 60%; }
.fil__registra .info__img > div {
    padding: 15px;
    text-align: center;
    display: flex;
    align-items: center;
}
.fil__registra .info__img > div span {
    display: block;
    font-size: 28px;
    font-family: 'Compacta';
    font-weight: bold;
    font-style: italic;
    color: rgb(var(--blanco));
    position: relative;
    z-index: 1;
}
.fil__registra .info__text p:nth-child(1) { display: none; }
.fil__registra .info__text p { margin: 0; }

/* Trivia Especial */
.tri__special .cont__timer { margin: 0 40px -48px auto }
.tri__special .box__ques::before {
    left: calc(100% - 88px);
    width: 250%;
}

}
@media (min-width : 680px) {
/* Home: Como participar */
.number { left: 25px; }
.info__fil {
    flex-direction: row-reverse;
    border-radius: 50px;
}
.info__img { width: 55%; }
.info__text {
    width: 45%;
    padding: 30px;
    text-align: left;
}
.card__dife .info__img { width: 35%; }
.card__dife .info__text { width: 65%; }

.card__dife .img__card {
    height: 100%;
    overflow: hidden;
}
.card__dife .img__card img {
    width: 100%;
    height: 100%;
    object-position: center;
    object-fit: cover;
}

/* Ticket */
.status__text { font-size: 32px; }
.date span { font-size: 14px; }

/* Registrar Tiket */
.fil__registra .bg__card,
.fil__registra .img__card {
    border-radius: 30px;
    overflow: hidden;
}
.fil__registra .info__img > div { display: none; }

/* Perfil */
/* LB */
.cont__lb .info__comple .datos { flex-flow: wrap; }
.cont__lb .info__comple .datos > * { width: calc(50% - 15px); }

/* Trivia */
.cont__timer {
    width: 120px;
    margin: 0 auto -60px;
}
.time__tex span { font-size: 42px; }
.box__ques::before { mask-size: 1990px; }
.box__ques {
    padding: 110px 30px 40px;
    font-size: 22px;
}
.ans__item { flex: 0 0 calc((100% - (2 * 20px)) / 3); }
.ans__item label { padding: 40px 15px; }

.number__ques {
    color: rgb(var(--blanco));
    top: 20px;
    left: 30px;
}

}
@media (min-width : 680px) and (max-width : 767px) {
}
/* Small Devices, Nav */
@media (max-width : 767px) {
.container {
    margin-right: initial;
    margin-left: initial;
}

/* Home: Inicio */
.marster__col {
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
}
.col__01 { padding-right: 40%; }
.col__02 { padding-left: 35%; }
.col__01 > * {
    -webkit-transform: translate(-20%, 20%);
    -moz-transform: translate(-20%, 20%);
    -ms-transform: translate(-20%, 20%);
    -o-transform: translate(-20%, 20%);
    transform: translate(-20%, 20%);
}
.logo__selec,
.txt__01 { margin-left: -40%; }
.txt__01 {
    -webkit-transform: translate(0%, -10%);
    -moz-transform: translate(0%, -10%);
    -ms-transform: translate(0%, -10%);
    -o-transform: translate(0%, -10%);
    transform: translate(0%, -10%);
}
.cont__prod { margin-left: -20%; }

/* Home: Ranking */
.ranking .container {
    padding-right: 0px;
    padding-left: 0px;
}
.fil__info > *:nth-child(1) { padding-bottom: 0; }

/* Home: Ganadores */
.ganadores { margin-bottom: 30px; }

/* Perfil */
.usuario {
    padding-top: 0;
    overflow: hidden;
    margin-top: -30px;
}
.usuario .user__01 {
    margin-left: -15px;
    margin-right: -15px;
}
.usuario .user__01 .box__user {
    padding: 0;
    border-radius: 0;
}
.usuario .user__01 .box__user .user__info {
    padding-top: 60px;
    border-radius: 0;
}
.usuario .user__01 .box__user .user__info .info__01 { display: none; }
.fil__user > * + * { margin-top: 60px; }

.tickets .h__sect + * { margin-top: 90px; }

}
/* Medium Devices to Large Devices */
@media (min-width : 768px) {
table thead tr th:first-child,
table tbody tr:nth-child(even) td:first-child {
    border-top-left-radius: 10px;
    border-bottom-left-radius: 10px;
}
table thead tr th:last-child,
table tbody tr:nth-child(even) td:last-child {
    border-top-right-radius: 10px;
    border-bottom-right-radius: 10px;
}

/* General */
main section:first-child { padding-top: 140px; }
.h__sect h2 { font-size: 52px; }

/* Box */
.cont__box {
    border-radius: 30px;
    padding: 30px;
    box-shadow: 0 0 10px rgba(var(--negro), .1);
}
.box__w { background: rgb(var(--blanco)); }
.box__cristal {
    background: rgb(var(--blanco), .2);
    backdrop-filter: blur(6px);
    -webkit-backdrop-filter: blur(6px);
}

/* Home: Inicio */
.cont__master {
    display: flex;
    justify-content: center;
    align-items: flex-end;
}
.col__01 { width: 50%; }
.col__02 { width: 50%; }
.logo__selec {
    position: absolute;
    left: 0;
    bottom: 5%;
    width: 4%;
    margin: 0;
}
.col__02 > *.logo__selec + * { margin-top: 0; }
.txt__01 p:nth-child(1) {font-size: 4vw;}
.txt__01 p:nth-child(2) {font-size: 4.5vw;}
.txt__01 p:nth-child(3) { font-size: 6vw; }
/* .txt__01 p::before { -webkit-text-stroke-width: 2px; } */
.txt__02 {
    width: 80%;
    margin-right: auto;
    margin-left: auto;
}
.txt__02 p:nth-child(1),
.txt__02 p:nth-child(3) { font-size: 2.2vw; }
.txt__02 p:nth-child(2) { font-size: 3vw; }
.txt__02 p:nth-child(2)::before { -webkit-text-stroke-width: 4px; }
.cont__prod { width: 85%; }
.legal__ini {
    position: absolute;
    z-index: 10;
    background: transparent;
    bottom: 5%;
    font-size: 60%;
    left: 9%;
    width: 40%;
    padding: 0;
}

/* Home: Como */
.slide__como .cont__contrls {
    display: flex;
}

/* Home: Ranking */
.ranking__head span {
    max-width: 540px;
    border-radius: 10px;
}
.tab__rank {
    border-radius: 10px;
    border: 1px solid rgba(var(--verde), .2);
}

* + .fil__info { margin-top: calc(8.5% + 20px); }
.fil__info {
    display: flex;
    align-items: center;
}
.fil__info > *:nth-child(1) { width: 25%; }
.fil__info > *:nth-child(2) { width: 75%; }
.graf__prem {
    margin-top: -50%;
    margin-left: -15px;
    margin-right: -30px;
    width: auto;
}
.info__col h3 { font-size: 32px; }

/* Home: Ganadores */
.ranking + .ganadores .bg__round  { height: 130%; }
.ganadores .slide__gana {
    margin: 0 auto;
    width: 90%;
}
.cont__winner > *  {
    -webkit-transition: all 0.3s ease-out;
    -moz-transition: all 0.3s ease-out;
    -ms-transition: all 0.3s ease-out;
    -o-transition: all 0.3s ease-out;
    transition: all 0.3s ease-out;
}
.cont__winner .cont__pla {
    width: 100%;
    margin-right: auto;
    margin-left: auto;
    transform-origin: 50% 100%;
    opacity: 0;
    -webkit-transform: scale(.6) translateY(100%);
    -moz-transform: scale(.6) translateY(100%);
    -ms-transform: scale(.6) translateY(100%);
    -o-transform: scale(.6) translateY(100%);
    transform: scale(.6) translateY(100%);
}
.info__winner  {
    -webkit-transform: scale(.5);
    -moz-transform: scale(.5);
    -ms-transform: scale(.5);
    -o-transform: scale(.5);
    transform: scale(.5);
    opacity: 0;
}
.swiper-slide-active .cont__winner .cont__pla {
    -webkit-transform: scale(1) translateY(0%);
    -moz-transform: scale(1) translateY(0%);
    -ms-transform: scale(1) translateY(0%);
    -o-transform: scale(1) translateY(0%);
    transform: scale(1) translateY(0%);
    opacity: 1;
}
.swiper-slide-prev .cont__winner .cont__pla,
.swiper-slide-next .cont__winner .cont__pla {
    -webkit-transform: scale(.8) translateY(10%);
    -moz-transform: scale(.8) translateY(10%);
    -ms-transform: scale(.8) translateY(10%);
    -o-transform: scale(.8) translateY(10%);
    transform: scale(.8) translateY(10%);
    opacity: .5;
}
.swiper-prev-prev .cont__winner .cont__pla,
.swiper-next-next .cont__winner .cont__pla {
    -webkit-transform: scale(.6) translateY(40%);
    -moz-transform: scale(.6) translateY(40%);
    -ms-transform: scale(.6) translateY(40%);
    -o-transform: scale(.6) translateY(40%);
    transform: scale(.6) translateY(40%);
    opacity: .4;
}
.swiper-slide-active .info__winner {
    -webkit-transform: scale(1);
    -moz-transform: scale(1);
    -ms-transform: scale(1);
    -o-transform: scale(1);
    transform: scale(1);
    opacity: 1;
}
.ganadores .cont__contrls > * { top: 50%; }
.ganadores .cont__contrls > .swiper-prev { left: 4%; }
.ganadores .cont__contrls > .swiper-next { right: 4%; }

.pla__text span { font-size: 4vw; }
.pla__text span:nth-child(2) { font-size: 6vw; }

/* Perfil */
.fil__user {
    display: flex;
    align-items: flex-start;
    flex-direction: row;
    gap: 30px;
}
.user__01,
.user__02 { width: 100%; }
.user__col {
    position: -webkit-sticky;
    position: -moz-sticky;
    position: -o-sticky;
    position: -ms-sticky;
    position: sticky;
    top: 120px;
}
.user__01 { width: 300px; }
.user__02 { width: calc(100% - 330px); }

/* Lb */
.cont__lb .user__info {
    flex-direction: row;
    align-items: center;
    gap: 60px;
    position: relative;
    padding: 30px 60px;
}
.cont__lb .info__comple .datos > *:nth-child(1) { order: 1; }
.cont__lb .info__comple .datos > *:nth-child(2) { order: 3; }
.cont__lb .info__comple .datos > *:nth-child(3) { order: 5; }
.cont__lb .info__comple .datos > *:nth-child(4) { order: 7; }
.cont__lb .info__comple .datos > *:nth-child(5) { order: 9; }
.cont__lb .info__comple .datos > *:nth-child(6) { order: 11; }
.cont__lb .info__comple .datos > *:nth-child(7) { order: 2; }
.cont__lb .info__comple .datos > *:nth-child(8) { order: 4; }
.cont__lb .info__comple .datos > *:nth-child(9) { order: 6; }
.cont__lb .info__comple .datos > *:nth-child(10) { order: 8; }
.cont__lb .info__comple .datos > *:nth-child(11) { order: 10; }
.closr {
    position: absolute;
    top: 20px;
    right: 20px;
    margin: 0;
}

/* Formularios */
.form__fil { max-width: 425px; }
.form__fil .cont__camps { flex-flow: column; }
.form__col .cont__camps { flex-flow: wrap; }
.form__col .cont__camps .camp { flex: 1 1 calc(50% - 30px); }
.form__col .cont__camps .camp.camp__full { flex: 1 1 100%; }
.cont__filter {
    justify-content: space-between;
    flex-direction: row;
}
.fil__camp {
    max-width: 300px;
    width: 100%;
}
.tickets .bg__round { top: 170px; }

/* Especial final */
.res__graph {
    margin-top: auto;
    position: absolute;
    width: 22%;
    left: 85%;
    bottom: 0%;
}
.res__graph figure {
    margin: auto;
    width: 100%;
}
.res__graph + * { margin-top: 0; }

}
/* Medium Devices, Desktops */
@media (min-width : 768px) and (max-width : 991px) {
/* Home: Inicio */
.legal__ini { left: 11%; }

/* Home: Ranking */
.ranking .container { width: 100%; }

/* Perfil */
.user__02 .form__text { font-size: 1.5vw; }
.user__02 .number__id { font-size: 1.3vw; }
.user__02 .status__text { font-size: 2.8vw; }
.user__02 .date span { font-size: 1.3vw; }

}
@media (max-width : 991px) {
/* Home: Recompensas */
.bg__re::after {
    left: 50%;
    width: 200%;
    padding-top: 200%;
    bottom: 50%;
    background: rgba(var(--negro), .3);
    border-radius: 50%;
    -webkit-transform: translateX(-50%);
    -moz-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    -o-transform: translateX(-50%);
    transform: translateX(-50%);
}
/* .recompensas { text-align: center; } */
.col__recom + .col__recom { margin-top: 30px; }
.slide__reco .cont__contrls { display: none; }

}
@media (min-width : 992px) {
/* Home: Inicio */
.col__02 > * + * { margin-top: 1.7vw; }
.txt__01 {
    -webkit-transform: translateX(18%);
    -moz-transform: translateX(18%);
    -ms-transform: translateX(18%);
    -o-transform: translateX(18%);
    transform: translateX(18%);
}
.txt__01 p:nth-child(1) {font-size: 2vw;}
.txt__01 p:nth-child(2) {font-size: 2.4vw;}
.txt__01 p:nth-child(3) {
    font-size: 3vw;
    -webkit-transform: skewY(-2deg) translateX(16%);
    -moz-transform: skewY(-2deg) translateX(16%);
    -ms-transform: skewY(-2deg) translateX(16%);
    -o-transform: skewY(-2deg) translateX(16%);
    transform: skewY(-2deg) translateX(16%);
}
.txt__02 { width: 45%; }
.txt__02 p:nth-child(1),
.txt__02 p:nth-child(3) { font-size: .9vw; }
.txt__02 p:nth-child(2) { font-size: 1.4vw; }
.col__02 .cta {
    font-size: 1vw;
    padding: 1vw 2vw;
}
/* .cont__prod { width: 70%; } */

/* Home: Recompensas */
.recompensas { border-radius: 0; }
.bg__re::after {
    top: 50%;
    left: 0;
    width: 39%;
    padding-top: 60%;
    background: rgba(var(--negro), .3);
    border-top-right-radius: 50% 50%;
    border-bottom-right-radius: 50% 50%;
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    -o-transform: translateY(-50%);
    transform: translateY(-50%);
}
.cont__recom { display: flex; }
/* .recompensas .h__sect { text-align: left; } */
.col__recom {
    display: flex;
    flex-direction: column;
    justify-content: center;
}
.recom__01 {
    width: 35%;
    padding: 0 3%;
}
.recom__02 { width: 65%; }
/* .cont__slider .right__deg {
    -webkit-mask-image: linear-gradient(-90deg, rgba(var(--verde), 0) 35px, rgba(var(--verde), 1) 8%);
    mask-image: linear-gradient(-90deg, rgba(var(--verde), 0) 35px, rgba(var(--verde), 1) 8%);
} */
.cont__slider .right__deg { margin-right: -15px; }
.cont__slider .left__deg {
    -webkit-mask-image: linear-gradient(90deg, rgba(var(--verde), 0) 35px, rgba(var(--verde), 1) 8%);
    mask-image: linear-gradient(90deg, rgba(var(--verde), 0) 35px, rgba(var(--verde), 1) 8%);
    padding-right: 15px;
}
.left__deg .swiper { padding: 20px 0 10px 90px; }

/* Home: Ganadores */
.ganadores .cont__contrls > * { top: 70%; }
.ganadores .cont__contrls > .swiper-prev { left: 4%; }
.ganadores .cont__contrls > .swiper-next { right: 4%; }
.pla__text span { font-size: 2.5vw; }
.pla__text span:nth-child(2) { font-size: 4vw; }

/* Grid */
.item__cont { flex: 0 0 calc(33.333% - 26.9px); }

/* Registrar Tiket */
.fil__registra { flex-direction: row; }
.regis__col:nth-child(1) { width: 65%; }
.regis__col:nth-child(2) { width: 35%; }

}
/* Large Devices, Wide Screens */
@media (min-width : 992px) and (max-width : 1200px) {
}
@media (max-width : 1023px) {
}
@media (min-width : 1024px) {

/* Home: Inicio */
#home main section:first-child { padding-top: 120px; }
.cont__master { width: 93%; }
.col__01 { width: 45%; }
.col__02 {
    width: 45%;
    padding-bottom: 1vw;
}

}
@media (max-width : 1199px) {
}
@media (min-width : 1200px) {
/* Home: Recompensas */
.recom__01 { padding: 0 4%; }

/* Perfil */
.user__01 { width: 400px; }
.user__02 { width: calc(100% - 430px); }

}
@media (min-width : 992px) and (max-width : 1400px) {
/* Perfil */
.user__02 .grid__item { gap: 30px; }
.user__02 .item__cont { flex: 0 0 calc(33.333% - 26.9px); }
.user__02 .form__text { font-size: 1vw; }
.user__02 .number__id { font-size: .9vw; }
.user__02 .status__text { font-size: 2vw; }
.user__02 .date span { font-size: 1.2vw; }

}





header ul,
footer ul,
header ol,
footer ol {
    padding-inline-start: 0;
    list-style: none;
}
header ul + ul,
header li + li,
footer li + li { margin-top: 0; }

/******************************
*   Header
******************************/
.header {
    position: fixed;
    top: 0px;
    left: 0;
    right: 0;
    z-index: 1000;
    font-family: 'Compacta';
    font-weight: bold;
    font-style: italic;
}
.cont__menu {
    display: flex;
    justify-content: flex-end;
    align-items: center;
    gap: 60px;
    padding: 6px 40px;
    position: relative;
    -webkit-transition: all 0.3s ease-out;
    -moz-transition: all 0.3s ease-out;
    -ms-transition: all 0.3s ease-out;
    -o-transition: all 0.3s ease-out;
    transition: all 0.3s ease-out;
}
.cont__menu::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border-bottom-right-radius: 50px;
    border-bottom-left-radius: 50px;
    box-shadow: 0 5px 10px rgba(var(--negro), .2);
    background: var(--deg01);
    -webkit-transition: all 0.3s ease-out;
    -moz-transition: all 0.3s ease-out;
    -ms-transition: all 0.3s ease-out;
    -o-transition: all 0.3s ease-out;
    transition: all 0.3s ease-out;
}
.logo {
    width: 90px;
    position: relative;
}
.logo a span {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
}
.logo a figure svg {
    width: 100%;
    height: auto;
    fill: rgb(var(--blanco));
    display: flex;
    -webkit-transition: all 0.3s ease-out;
    -moz-transition: all 0.3s ease-out;
    -ms-transition: all 0.3s ease-out;
    -o-transition: all 0.3s ease-out;
    transition: all 0.3s ease-out;
}
.menu .cont__nav nav { display: flex; }
.menu .cont__nav nav ul.men__btn { gap: 20px; }
.menu .cont__nav nav ul li a {
    display: block;
    position: relative;
    text-transform: uppercase;
    font-size: 22px;
    color: rgb(var(--blanco));
    line-height: 1;
    text-align: center;
}

/* Btn mobile */
.btn__mob {
    width: 60px;
    height: 60px;
    cursor: pointer;
    position: relative;
    -webkit-transform: translateX(15px);
    -moz-transform: translateX(15px);
    -ms-transform: translateX(15px);
    -o-transform: translateX(15px);
    transform: translateX(15px);
    z-index: 10;
}
.btn__mob > div {
    position: absolute;
    width: 60%;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    -moz-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    -o-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
}
.btn__mob > div span {
    display: block;
    width: 100%;
    -webkit-transition: all 300ms cubic-bezier(0.68, -0.1, 0.265, 1.55);
    -moz-transition: all 300ms cubic-bezier(0.68, -0.1, 0.265, 1.55);
    -ms-transition: all 300ms cubic-bezier(0.68, -0.1, 0.265, 1.55);
    -o-transition: all 300ms cubic-bezier(0.68, -0.1, 0.265, 1.55);
    transition: all 300ms cubic-bezier(0.68, -0.1, 0.265, 1.55);
}
.btn__mob > div span i {
    display: block;
    width: 100%;
    height: 2px;
    background: rgb(var(--blanco));
}
.btn__mob > div span + span { margin-top: 6px; }
.btn__mob.active > div span i { background: rgb(var(--rojo_l)); }
.btn__mob.active > div span:nth-child(2) {
    -webkit-transform: scaleX(0);
    -moz-transform: scaleX(0);
    -ms-transform: scaleX(0);
    -o-transform: scaleX(0);
    transform: scaleX(0);
}
.btn__mob.active > div span:nth-child(1) {
    -webkit-transform: translate(0px, 8px) rotate(45deg);
    -moz-transform: translate(0px, 8px) rotate(45deg);
    -ms-transform: translate(0px, 8px) rotate(45deg);
    -o-transform: translate(0px, 8px) rotate(45deg);
    transform: translate(0px, 8px) rotate(45deg);
}
.btn__mob.active > div span:nth-child(3) {
    -webkit-transform: translate(0px, -8px) rotate(-45deg);
    -moz-transform: translate(0px, -8px) rotate(-45deg);
    -ms-transform: translate(0px, -8px) rotate(-45deg);
    -o-transform: translate(0px, -8px) rotate(-45deg);
    transform: translate(0px, -8px) rotate(-45deg);
}

/* Extra Small Devices, Phones */
@media (max-width : 479px) {
}
@media (min-width : 480px) {
}
/* Small Devices, Tablets */
@media (min-width : 480px) and (max-width : 767px) {
}
@media (max-width : 679px) {
}
@media (min-width : 680px) {
}
@media (min-width : 680px) and (max-width : 767px) {
}
/* Small Devices, Nav */
@media (max-width : 767px) {
}
/* Medium Devices to Large Devices */
@media (min-width : 768px) {
}
/* Medium Devices, Desktops */
@media (min-width : 768px) and (max-width : 991px) {
}
@media (max-width : 1023px) {
.header.m__active .cont__menu { background: rgb(var(--blanco)); }
.header.m__active .cont__menu::before { opacity: 0; }
.header.m__active .cont__menu .logo a figure svg { fill: rgb(var(--rojo_l)); }
.menu {
    position: absolute;
    top: 100%;
    left: 0;
    width: 100%;
    height: calc(100vh - 72px);
    height: calc(100dvh - 72px);
    background: linear-gradient(to right,  rgba(var(--verde02),1) 0%,rgba(var(--verde01),1) 100%);
    -webkit-transform: translateY(-100%);
    -moz-transform: translateY(-100%);
    -ms-transform: translateY(-100%);
    -o-transform: translateY(-100%);
    transform: translateY(-100%);
    pointer-events: none;
    visibility: hidden;
    opacity: 0;
    -webkit-transition: all .3s cubic-bezier(0.68, -0.1, 0.265, 1);
    -moz-transition: all .3s cubic-bezier(0.68, -0.1, 0.265, 1);
    -ms-transition: all .3s cubic-bezier(0.68, -0.1, 0.265, 1);
    -o-transition: all .3s cubic-bezier(0.68, -0.1, 0.265, 1);
    transition: all .3s cubic-bezier(0.68, -0.1, 0.265, 1);
    z-index: -1;
}
.menu .cont__nav nav {
    width: 100%;
    flex-direction: column;
}
.menu .cont__nav nav ul,
.menu .cont__nav nav ul li { position: relative; }
.menu .cont__nav nav ul + ul::before,
.menu .cont__nav nav ul li + li::before {
    content: '';
    position: absolute;
    width: 100%;
    top: -1.5px;
    height: 3px;
    background: rgb(var(--blanco));
    box-shadow: 0 2px 3px rgba(var(--negro), .2);
}
.menu .cont__nav nav ul li a { padding: 18px 16px; }
.menu.active {
    -webkit-transform: translateY(0%);
    -moz-transform: translateY(0%);
    -ms-transform: translateY(0%);
    -o-transform: translateY(0%);
    transform: translateY(0%);
    pointer-events: all;
    visibility: visible;
    opacity: 1;
}

}
@media (min-width : 1024px) {
html { scroll-padding: 94px; }
.btn__mob { display: none; }
.header {
    display: flex;
    justify-content: center;
}
.cont__menu {
    display: inline-flex;
    padding: 20px 40px;
    background: rgb(var(--blanco));
    border-bottom-right-radius: 50px;
    border-bottom-left-radius: 50px;
    box-shadow: 0 0 10px rgba(var(--negro), .3);
    max-width: 95%;
    width: 100%;
}
.cont__menu::before { opacity: 0; }
.logo { width: 120px; }
.logo a figure svg { fill: rgb(var(--rojo_l)); }

.menu {
    width: 1440px;
    margin: 0 auto;
}
.menu .cont__nav nav {
    gap: 30px;
    align-items: center;
    flex-direction: row-reverse;
    justify-content: space-between;
}
.menu .cont__nav nav ul {
    display: flex;
    align-items: center;
    gap: 30px;
    -webkit-transform: translateY(2px);
    -moz-transform: translateY(2px);
    -ms-transform: translateY(2px);
    -o-transform: translateY(2px);
    transform: translateY(2px);
}
.menu .cont__nav nav ul li a {
    color: rgb(var(--verde));
    font-size: 18px;
}
.menu .cont__nav nav ul li a::before {
    content: '';
    position: absolute;
    width: 100%;
    height: 4px;
    border-radius: 10px;
    background: rgb(var(--rojo_l));
    top: calc(100% + 4px);
    -webkit-transform: scaleX(0);
    -moz-transform: scaleX(0);
    -ms-transform: scaleX(0);
    -o-transform: scaleX(0);
    transform: scaleX(0);
    -webkit-transition: all .3s cubic-bezier(0.68, -0.1, 0.265, 1);
    -moz-transition: all .3s cubic-bezier(0.68, -0.1, 0.265, 1);
    -ms-transition: all .3s cubic-bezier(0.68, -0.1, 0.265, 1);
    -o-transition: all .3s cubic-bezier(0.68, -0.1, 0.265, 1);
    transition: all .3s cubic-bezier(0.68, -0.1, 0.265, 1);
}
.menu .cont__nav nav ul li a:hover::before,
.menu .cont__nav nav ul li a.active::before {
    -webkit-transform: scaleX(1);
    -moz-transform: scaleX(1);
    -ms-transform: scaleX(1);
    -o-transform: scaleX(1);
    transform: scaleX(1);
}
.menu .cont__nav nav ul li a.cta__men {
    border-radius: 100px;
    min-width: 137px;
    padding: 16px 20px;
    background: rgb(var(--rojo_l));
    color: rgb(var(--blanco));
    font-size: 16px;
    position: relative;
    border-radius: 1000px;
    border: 2px solid rgb(var(--blanco));
}
.menu .cont__nav nav ul li a.cta__men::before  { content: unset; }
.menu .cont__nav nav ul li a.cta__men:hover { background: rgb(var(--rojo_d)); }
.menu .cont__nav nav ul li a.cta__perf { background: rgb(var(--verde)); }
.menu .cont__nav nav ul li a.cta__perf:hover { background: rgb(var(--verde02)); }
.header:hover .cont__menu::before,
.header.active .cont__menu::before { opacity: 1; }
.header.active .logo a figure svg { fill: rgb(var(--blanco)); }
.header:hover .cont__menu,
.header.active .cont__menu {
    max-width: 100%;
    background: transparent;
    box-shadow: 0 5px 10px rgba(var(--negro), 0);
}
.header:hover .menu .cont__nav nav ul li a,
.header.active .menu .cont__nav nav ul li a { color: rgb(var(--blanco)); }
.header:hover .menu .cont__nav nav ul li a.cta__perf,
.header.active .menu .cont__nav nav ul li a.cta__perf {
    background: rgb(var(--blanco));
    color: rgb(var(--verde));
}

}
/* Large Devices, Wide Screens */
@media (min-width : 992px) and (max-width : 1200px) {
}
@media (max-width : 1199px) {
}
@media (min-width : 1200px) {
/* .cont__menu { padding: 20px 60px; } */
.menu .cont__nav nav ul li a { font-size: 22px; }
.menu .cont__nav nav ul li a.cta__men { font-size: 18px; }

}


/******************************
*   Footer
******************************/
footer {
    padding: 40px 30px;
    font-size: 14px;
    color: rgb(var(--blanco));
    background: rgb(var(--verde01));
    margin-top: -1px;
}
.cont__fil {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 30px;
}
.fil__logo figure {
    width: 90px;
    min-width: 90px;
    margin: 0 auto;
}
.fil__legal {
    font-size: 12px;
    font-weight: 300;
    text-align: center;
}
.fil__links,
.fol__social {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-flow: row wrap;
    gap: 10px 30px;
    white-space: break-spaces;
}
.fil__links a {
    text-transform: uppercase;
    text-decoration: underline !important;
}
.fol__social > * { margin: 0; }
.fol__social ul {
    display: flex;
    gap: 20px;
}
.fol__social ul li a {
    display: inline-flex;
    font-size: 30px;
}



/* Extra Small Devices, Phones */
@media (max-width : 479px) {
}
@media (min-width : 480px) {
}
/* Small Devices, Tablets */
@media (min-width : 480px) and (max-width : 767px) {
}
@media (max-width : 679px) {
}
@media (min-width : 680px) {
}
@media (min-width : 680px) and (max-width : 767px) {
}
/* Small Devices, Nav */
@media (max-width : 767px) {
}
/* Medium Devices to Large Devices */
@media (min-width : 768px) {
}
@media (max-width : 867px) {
.cont__fil,
.fol__social { flex-direction: column; }

}
@media (min-width : 868px) {
footer { background: var(--deg02); }
.fil__legal {
    text-align: left;
    width: 30%;
}
.fol__social { max-width: 192px; }

}
/* Medium Devices, Desktops */
@media (min-width : 768px) and (max-width : 991px) {
}
@media (max-width : 991px) {
}
@media (min-width : 992px) {
}
/* Large Devices, Wide Screens */
@media (min-width : 992px) and (max-width : 1200px) {
}
@media (max-width : 1199px) {
}
@media (min-width : 1200px) {

}
@media (min-width : 1400px) {
.cont__fil {
    width: 90%;
    margin: 0 auto;
    max-width: 1920px;
}
.fil__legal { width: 40%; }

}
