@font-face {
    font-family:'visby';
    src:url(../fonts/VisbyCF/VisbyCF-Thin.woff2)  format('woff2)');
    font-weight:100;
    font-display:optional;
    ascent-override: 105%;
    descent-override: 35%;
    line-gap-override: 10%;
    }
    
    @font-face {
    font-family:'visby';
    src:url(../fonts/VisbyCF/VisbyCF-Light.woff2)  format('woff2)');
    font-weight:200;
    font-display:optional;
    ascent-override: 105%;
    descent-override: 35%;
    line-gap-override: 10%;
    }
    
    @font-face {
    font-family:'visby';
    src:url(../fonts/VisbyCF/VisbyCF-Regular.woff2)  format('woff2)');
    font-weight:300;
    font-display:optional;
    ascent-override: 105%;
    descent-override: 35%;
    line-gap-override: 10%;
    }
    
    @font-face {
    font-family:'visby';
    src:url(../fonts/VisbyCF/VisbyCF-Medium.woff2)  format('woff2)');
    font-weight:400;
    font-display:optional;
    ascent-override: 105%;
    descent-override: 35%;
    line-gap-override: 10%;
    }
    
    @font-face {
    font-family:'visby';
    src:url(../fonts/VisbyCF/VisbyCF-Bold.woff2) format('woff2)');
    font-weight:500;
    font-display:optional;
    
    ascent-override: 105%;
    descent-override: 35%;
    line-gap-override: 10%;
    }
    
    @font-face {
    font-family:'visby';
    src:url(../fonts/VisbyCF/VisbyCF-DemiBold.woff2) format('woff2)');
    font-weight:600;
    font-display:optional;
    ascent-override: 105%;
    descent-override: 35%;
    line-gap-override: 10%;
    }
    
    @font-face {
    font-family:'visby';
    src:url(../fonts/VisbyCF/VisbyCF-ExtraBold.woff2) format('woff2)');
    font-weight:700;
    font-display:optional;
    ascent-override: 105%;
    descent-override: 35%;
    line-gap-override: 10%;
    }
    
    @font-face {
    font-family:'visby';
    src:url(../fonts/VisbyCF/VisbyCF-Heavy.woff2) format('woff2)');
    font-weight:800;
    font-display:optional;
    ascent-override: 105%;
    descent-override: 35%;
    line-gap-override: 10%;
    }
    
    :root {
    --white:#fff;
    --black:#000;
    --green:#358A42;
    --red:#DB2C28;
    --purple:#3F1F68;
    --gray:#333;
    --gray-light:#E0E0E0;
    --gray-medium:#CECECE;
    --radious-general:.6rem;
    --shadow-default:5px 5px 15px 0 rgb(0 0 0 / 15%);
    --transition-default:all .3s ease-in-out
    }
    
    body {
    margin:0;
    padding:0;
    font-family:'visby',sans-serif;
    font-display:optional;
    position:relative;
    }
    
    main {
    position:relative;
    background-image:url(../img/cdmx-bg.png);
    background-repeat:no-repeat;
    background-size:cover;
    position:top;
    z-index: -1;
    }
    
    section {
    padding:90px 0
    }
    
    h1 {
    color:var(--white);
    text-transform:uppercase
    }
    
    h2 {
    color:var(--green);
    font-size:45px;
    font-weight:500
    }
    
    h2 span {
    font-weight:800;
    font-size:60px
    }
    
    header {
    top:0;
    position:sticky;
    z-index:50;
    width:100%;
    background-color:#fff
    }
    
    .section-dec {
    position:relative
    }
    
    .section-dec__img {
    position:absolute;
    width:65vw;
    bottom:var(--b);
    right:var(--r);
    left:var(--l);
    z-index:-1;
    display:none
    }
    
    .px-0 {
    padding-right:0!important;
    padding-left:0!important
    }
    
    header .navbar {
    background-color:#fff;
    width:100%;
    text-align:center;
    z-index:99;
    top:0;
    padding:0;
    box-shadow:0 0 20px 0 #00000040
    }
    
    .navbar-toggler {
    padding:4px 8px;
    border:1px solid #333;
    transition:.5s ease-in-out;
    border-radius:6px;
    background-color:#333;
    display:flex;
    flex-direction:column;
    justify-content:center;
    align-items:center;
    gap:8px;
    width:50px;
    height:50px
    }
    
    .navbar-toggler span:nth-child(1) {
    width:80%
    }
    
    .navbar-toggler span {
    display:block;
    width:100%;
    height:2px;
    background-color:#fff;
    transition:.5s ease-in-out
    }
    
    header .nav-link {
    font-size:14px;
    transition:all .5s ease-in-out;
    margin:auto 10px;
    position:relative;
    font-weight:400;
    color:var(--green)
    }
    
    header .nav-link:hover,header .nav-link:active,header .nav-link:focus {
    color:var(--red)
    }
    
    @media screen and (max-width: 991px) {
    header .nav-link::before {
    display:none
    }
    }
    
    #hero {
    /* background-image:url(../img/banner.webp); */
    background-position:center;
    background-repeat:no-repeat;
    background-size:cover;
    height:700px;
    width:100%;
    margin:0;
    padding:0;
    display:flex;
    align-items:center;
    position: relative;
    }

    #hero .hero-img{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    z-index: -1;
    }
    
    #hero p {
    color:var(--white);
    font-size:20px
    }
    
    .containerspans {
    display:flex
    }
    
    .hero__data {
    display:flex;
    align-items:center;
    gap:1rem;
    justify-content:center
    }
    
    .hero__title {
    font-size:3.2rem;
    font-weight:300;
    width:100%;
    max-width:800px
    }
    
    .hero__title span {
    font-weight:500
    }
    
    .hero__btn {
    color:var(--white);
    background-color:#fa1b96;
    display:block;
    border-radius:30px;
    width:100%;
    max-width:14rem;
    text-decoration:none;
    margin:0 auto;
    font-size:1.3rem;
    padding:.7rem 1rem;
    transition:var(--transition-default)
    }
    
    .hero__btn:hover {
    background-color:#008a39;
    color:#fff
    }
    
    .clock {
    display:flex;
    justify-content:center;
    background:#fa1b96;
    padding:15px 0;
    width:100%;
    position:absolute;
    top:7rem;
    left:0
    }
    
    .clock span {
    color:#fff;
    font-size:50px;
    padding:0 10px;
    font-family:"visby",sans-serif;
    font-display:optional;
    font-optical-sizing:auto;
    font-weight:700;
    text-align:center
    }
    
    .clock span .small {
    font-size:14px;
    margin:0;
    font-family:"Lexend",sans-serif;
    font-display:optional;
    font-optical-sizing:auto;
    font-weight:600
    }
    
    .clock .puntos {
    position:relative
    }
    
    @media (max-width: 767px) {
    .clock {
    justify-content:center
    }
    
    .clock span {
    font-size:24px;
    padding:0 10px
    }
    
    .clock span .small {
    font-size:12px
    }
    }
    
    @media (max-width: 399px) {
    .clock {
    flex-wrap:wrap
    }
    }
    
    #video {
    padding:120px 0 80px
    }
    
    .img-gradience {
    border-radius:var(--radious-general);
    overflow:hidden;
    width:100%;
    position:relative
    }
    
    .img-gradience::before {
    content:"";
    position:absolute;
    width:100%;
    height:100%;
    top:0;
    left:0
    }
    
    .img-gradience img {
    width:100%
    }
    
    .z-10 {
    z-index:10
    }
    
    .z-20 {
    z-index:20
    }
    
    .video__content {
    border-radius:var(--radious-general);
    box-shadow:var(--shadow-default);
    position:relative;
    overflow:hidden;
    padding-top:56.25%
    }
    
    .video__content iframe {
    position:absolute;
    top:0;
    left:0;
    width:100%;
    height:100%;
    border:0
    }
    
    .hora {
    color:var(--gray);
    font-weight:700;
    text-align:center
    }
    
    .conferencia {
    color:#fa1b96;
    font-weight:700;
    margin-bottom:0;
    font-size:20px
    }
    
    .nombre-conferencia {
    color:#333;
    font-weight:400
    }
    
    hr.div-hr {
    border:none;
    border-left:4px solid var(--green);
    width:1px;
    margin-bottom:0;
    padding:0
    }
    
    hr {
    opacity:1;
    margin:0
    }
    
    .card.cardpro {
    border:none;
    border-radius:10px;
    -webkit-box-shadow:5px 5px 15px 0 #0003;
    -moz-box-shadow:5px 5px 15px 0 #0003;
    box-shadow:5px 5px 15px 0 #0003;
    margin:15px 0;
    width:100%;
    max-width:99%
    }
    
    .card.cardpro p {
    margin-bottom:0
    }
    
    .cardpro__img {
    width:100%
    }
    
    .programa-sec {
    width:100%;
    min-height:100vh;
    position:relative
    }
    
    .programa-sec__title {
    display:flex;
    flex-direction:row;
    flex-wrap:wrap
    }
    
    .programa-sec__title span {
    display:block;
    font-weight:800
    }
    
    .programa-sec__title span:first-child {
    font-weight:500
    }
    
    .programa-sec__title span:nth-child(n+2) {
    width:100%;
    font-size:11rem;
    margin-bottom:-3rem
    }
    
    .program-sec__list {
    min-height:80vh;
    overflow:hidden;
    position:relative
    }
    
    .program-sec__content {
    position:absolute;
    top:0;
    left:0;
    width:100%;
    padding:0 1rem
    }
    
    .cardpro .col-3 {
    display:flex;
    align-items:center;
    justify-content:center
    }
    
    .cardpro .col-6 {
    display:flex;
    flex-direction:column;
    align-items:start;
    justify-content:center
    }
    
    .accordion-button:not(.collapsed)::after {
    background-image:none!important
    }
    
    .dec-program {
    position:relative
    }
    
    .dec-program::before {
    position:absolute;
    top:0;
    right:100%;
    content:"";
    background-image:url(../img/cincillo-programa.png);
    background-position:top;
    background-repeat:no-repeat;
    background-size:contain;
    width:clamp(0rem,10vw,3rem);
    height:100%
    }
    
    .accordion-body li {
    text-align:start
    }
    
    #acceso {
    padding:0 0 90px
    }
    
    #acceso p {
    font-size:18px;
    color:var(--gray)
    }
    
    #acceso .card.default {
    border:none;
    margin:15px 0;
    -webkit-box-shadow:var(--shadow-default);
    -moz-box-shadow:var(--shadow-default);
    box-shadow:var(--shadow-default);
    border-radius:10px
    }
    
    #acceso .card.default p {
    color:var(--green);
    font-size:1.3rem
    }
    
    #acceso .card.card-ticket {
    background-image:url(../img/tickett.png);
    background-position:center;
    background-size:cover;
    background-repeat:no-repeat;
    width:100%;
    height:100%;
    border:none;
    padding:100px 20px 130px;
    color:var(--white);
    -webkit-box-shadow:0;
    -moz-box-shadow:0;
    box-shadow:0
    }
    
    h1.precio {
    font-size:35px;
    font-weight:600;
    justify-content:center;
    display:flex;
    align-items:center
    }
    
    h1.precio span {
    font-size:70px;
    font-weight:800
    }
    
    .card.card-ticket ul {
    margin:20px
    }
    
    .card.card-ticket ul li {
    font-size:15px
    }
    
    .btn.btn-blanco,.btn.btn-green {
    background-color:#fa1b96;
    color:#fff;
    font-weight:700;
    font-size:20px;
    width:100%;
    padding:10px 0;
    transition:var(--transition-default)
    }
    
    .btn.btn-blanco {
    background-color:#fff;
    color:#fa1b96
    }
    
    .btn.btn-blanco:hover {
    background-color:#fa1b96;
    color:#fff
    }
    
    .btn.btn-green {
    background-color:var(--green);
    color:var(--white)
    }
    
    .btn.btn-green:hover {
    background-color:var(--white);
    color:var(--green)
    }
    
    #mesas {
    padding:90px 0
    }
    
    #mesas .card,#patrocinadores .card,#app .card {
    border:none;
    margin:15px 0;
    -webkit-box-shadow:var(--shadow-default);
    -moz-box-shadow:var(--shadow-default);
    box-shadow:var(--shadow-default);
    border-radius:10px
    }
    
    #speakers {
    padding:90px 0
    }
    
    .card.speaker {
    border:0;
    border-radius:var(--radious-general);
    overflow:hidden;
    box-shadow:var(--shadow-default);
    margin:1rem 0
    }
    
    .card.speaker .card-img {
    position:relative
    }
    
    .card.speaker .card-img::before {
    content:"";
    width:100%;
    position:absolute;
    top:0;
    left:0;
    height:100%;
    background:linear-gradient(0deg,#333f 0%,#333f 10%,#33333393 29%,#3330 76%)
    }
    
    .swiperSpeakers {
    width:100%;
    height:auto
    }
    
    .swiperSpeakers .swiper-button-next {
    top:auto;
    bottom:20px;
    border:1px solid var(--white-color);
    width:auto;
    height:auto;
    padding:2px 10px;
    border-radius:4px;
    background-color:#fff0;
    right:0;
    margin-left:56px;
    transition:all .5s ease-in-out;
    transform:translateY(28px);
    color:var(--white)
    }
    
    .swiperSpeakers .swiper-button-next::after {
    content:""
    }
    
    .swiperSpeakers .swiper-button-prev {
    top:auto;
    bottom:20px;
    border:1px solid var(--white-color);
    width:auto;
    height:auto;
    padding:2px 10px;
    border-radius:4px;
    background-color:#fff0;
    left:0;
    transition:all .5s ease-in-out;
    transform:translateY(28px);
    color:var(--white)
    }
    
    .swiperSpeakers .swiper-button-prev::after {
    content:""
    }
    
    .swiperSpeakers .swiper-button-next,.swiperSpeakers .swiper-button-prev {
    position:relative
    }
    
    .swiperSpeakers .swiper-button-next svg,.swiperSpeakers .swiper-button-prev svg {
    fill:var(--green);
    width:20px;
    height:20px
    }
    
    .swiperSpeakers .swiper-button-next:hover svg,.swiperSpeakers .swiper-button-prev:hover svg,.swiperSpeakers .swiper-button-next:active svg,.swiperSpeakers .swiper-button-prev:active svg {
    opacity:.6
    }
    
    .swiper__nav {
    position:relative;
    height:50px;
    display:flex;
    align-items:center;
    justify-content:end
    }
    
    .name-job {
    position:absolute;
    background-color:#fff;
    padding:10px 15px 10px 20px;
    border-radius:0 45px 45px 0;
    bottom:5%
    }
    
    .name-job .info-speaker {
    padding:10px 25px 0 10px
    }
    
    .name-job .info-speaker h5 {
    color:var(--green);
    font-size:16px
    }
    
    .name-job .info-speaker p {
    color:var(--gray);
    font-size:12px;
    padding-bottom:0;
    margin-bottom:0;
    display:none
    }
    
    .btn-speaker {
    background-color:transparent;
    border:none;
    font-size:14px;
    color:var(--red)
    }
    
    hr.div-hr2 {
    border:none;
    border-left:4px solid var(--red);
    width:1px;
    margin-bottom:0;
    padding:0;
    max-height:60px
    }
    
    .card .speakers {
    border:none!important
    }
    
    .card-special {
    display:flex;
    filter:drop-shadow(0px 0px 20px #0003)
    }
    
    .card-special__left,.card-special__right {
    width:100%;
    max-width:50%
    }
    
    .card-special__left {
    background-color:var(--white);
    padding:1.9rem 1.4rem;
    margin-top:auto;
    border-top-left-radius:var(--radious-general);
    border-bottom-left-radius:.2rem
    }
    
    .card-special__title {
    display:flex;
    gap:1rem;
    margin-bottom:1.6rem
    }
    
    .card-special__title h2 {
    font-size:2.4rem;
    font-weight:400;
    margin-bottom:0
    }
    
    .card-special__title h2 span {
    font-size:2.4rem
    }
    
    .card-special__title hr.div-hr {
    max-height:100%
    }
    
    .card-special__text {
    font-size:.8rem
    }
    
    .card-special__right {
    background-color:var(--green);
    border-top-left-radius:var(--radious-general);
    display:flex;
    justify-content:center;
    flex-direction:column;
    align-items:center;
    border-top-right-radius:.2rem;
    border-bottom-right-radius:.2rem
    }
    
    .card-special__img {
    width:100%
    }
    
    .gasolinero-sec {
    padding-top:14rem;
    padding-bottom:22rem
    }
    
    .gasolinero-sec__title {
    display:flex;
    align-items:center;
    justify-content:center;
    gap:1rem;
    position:relative;
    z-index:40
    }
    
    .gasolinero-sec__title h2 {
    margin-bottom:0
    }
    
    .gasolinero-sec__title img {
    width:5rem
    }
    
    .card-gasolinero {
    position:relative;
    background-color:var(--white);
    display:flex;
    box-shadow:var(--shadow-default);
    border-radius:var(--radious-general);
    padding:2.5rem 3rem;
    gap:1rem;
    z-index:40
    }
    
    .card-gasolinero hr.div-hr {
    max-height:100%
    }
    
    .card-gasolinero__text {
    font-size:1.2rem;
    font-weight:300
    }
    
    .gasolinero-sec__img {
    position:absolute
    }
    
    .img__1 {
    bottom:50%;
    left:-50%;
    z-index:30
    }
    
    .img__2 {
    top:65%;
    left:-25%;
    z-index:20
    }
    
    .img__3 {
    top:0;
    right:-35%;
    z-index:10
    }
    
    .gallery-networking {
    display:flex;
    flex-direction:row;
    gap:1rem
    }
    
    .gallery-networking__frame {
    position:relative;
    overflow:hidden;
    border-radius:var(--radious-general);
    width:100%;
    max-width:12%;
    min-height:38rem;
    transition:max-width .6s ease-in-out
    }
    
    .gallery-networking__img {
    height:100%;
    width:100%;
    object-fit:cover
    }
    
    .gallery-networking__title {
    position:absolute;
    bottom:2.5rem;
    z-index:10;
    width:100%
    }
    
    .gallery-networking__detail {
    position:relative;
    width:3rem;
    text-wrap:nowrap;
    transition:width .6s ease-in-out
    }
    
    .gallery-networking__pleca {
    background-color:var(--white);
    border-top-right-radius:100rem;
    border-bottom-right-radius:100rem;
    width:0;
    overflow:hidden;
    transition:width .6s ease-in-out
    }
    
    .gallery-networking__pleca p {
    color:var(--green);
    font-weight:400;
    padding:1rem 4rem;
    margin-bottom:0
    }
    
    .gallery-networking__button {
    position:absolute;
    border:none;
    background-color:var(--red);
    color:var(--white);
    display:flex;
    justify-content:center;
    align-items:center;
    width:2.8rem;
    height:2.8rem;
    border-radius:100rem;
    font-size:2.8rem;
    font-weight:200;
    top:50%;
    right:-1rem;
    transform:translateY(-50%)
    }
    
    .gallery-networking__button img {
    width:16px;
    height:16px
    }
    
    .gallery-networking__frame .img-gradience {
    border-radius:0;
    width:100%;
    height:100%
    }
    
    .gallery-networking__frame.active {
    max-width:60%
    }
    
    .gallery-networking__frame.active .gallery-networking__detail {
    width:55%
    }
    
    .gallery-networking__frame.active .gallery-networking__pleca {
    width:100%
    }
    
    .card-evento {
    position:relative;
    width:100%;
    height:100%;
    border-radius:var(--radious-general);
    overflow:hidden
    }
    
    .card-evento__pleca {
    position:absolute;
    bottom:1rem;
    left:0;
    z-index:30;
    background-color:var(--white);
    border-top-right-radius:100rem;
    border-bottom-right-radius:100rem;
    width:100%;
    max-width:65%;
    padding:.7rem 1.8rem;
    display:flex
    }
    
    .card-evento__data {
    padding:.5rem .8rem 0
    }
    
    .card-evento__title {
    color:var(--green)
    }
    
    .card-evento__text {
    margin-bottom:0;
    color:var(--gray);
    font-size:.8rem
    }
    
    .card-evento__logo {
    position:absolute;
    top:35%;
    width:100%;
    max-width:14rem;
    left:50%;
    transform:translate(-50%,-50%);
    z-index:20
    }
    
    .card-evento__bg {
    width:100%;
    z-index:10
    }
    
    .aside {
    background-image:url(../img/textura.png);
    background-position:center;
    background-size:cover;
    display:flex;
    flex-direction:column;
    height:100%;
    max-height:100vh;
    position:sticky;
    top:0;
    width:100%;
    box-shadow:0 0 20px 0 #00000040;
    background-color:var(--white)
    }
    
    .aside__group {
    display:flex;
    align-items:center;
    flex-direction:column;
    width:available;
    width:-moz-available;
    width:-wit-available;
    width:-o-available;
    width:-ms-available
    }
    
    .aside__title {
    background-color:var(--green);
    color:var(--white);
    text-align:center;
    padding:.5rem .2rem;
    width:100%
    }
    
    .aside__title p {
    word-break:break-all;
    font-size: 1rem;
    }
    
    .aside__img {
    background-color:var(--white);
    margin:0 auto;
    padding:1rem .8rem;
    border-bottom-left-radius:var(--radious-general);
    border-bottom-right-radius:var(--radious-general);
    box-shadow:var(--shadow-default)
    }
    
    .aside.aside__movil {
    position:fixed;
    z-index:50;
    bottom:0;
    height:90px;
    background-color:var(--white);
    box-shadow:none
    }
    
    .aside.aside__movil .aside__group {
    position:relative;
    display:flex;
    flex-direction:row;
    align-items:normal;
    height:100%;
    width:100%;
    justify-content:start
    }
    
    .aside.aside__movil .aside__title {
    width:2.5rem
    }
    
    .aside.aside__movil .aside__title p {
    -webkit-writing-mode:sideways-lr;
    -ms-writing-mode:sideways-lr;
    writing-mode:sideways-lr;
    margin:0;
    font-size:.8rem
    }
    
    .aside.aside__movil .aside__img {
    margin:auto 0;
    border-radius:var(--radious-general)
    }
    
    .aside.aside__movil .aside__img img {
    width:100%;
    max-width:8rem
    }
    
    body.modal-speakers__active {
    overflow:hidden!important
    }
    
    .modal-speakers {
    position:fixed;
    top:0;
    left:0;
    width:100%;
    height:100%;
    min-height:100vh;
    z-index:100;
    overflow:hidden;
    display:flex;
    visibility:visible
    }
    
    .modal-speakers__content {
    position:relative;
    width:100%;
    height:100%;
    display:flex
    }
    
    .modal-speakers:not(.show) {
    display:none
    }
    
    .modal-speakers__left {
    background-color:var(--green);
    width:100%;
    max-width:20%;
    position:absolute;
    top:0;
    left:0;
    transform:translateX(0);
    height:100%;
    z-index:20;
    transition:all .3s ease-in-out
    }
    
    .modal-speakers__content.disabled .modal-speakers__left {
    transform:translateX(-150%);
    transition:all .3s ease-in-out
    }
    
    .modal-speakers__nav {
    display:flex;
    align-items:start;
    padding:1rem 1.6rem
    }
    
    .modal-speakers__back {
    background-color:inherit;
    border:0;
    border-radius:0;
    transition:var(--transition-default)
    }
    
    .modal-speakers__back:hover {
    opacity:.6
    }
    
    .modal-speakers__img {
    position:relative;
    width:100%;
    height:100%;
    padding-top:40%
    }
    
    .modal-speakers__img img {
    width:100%;
    margin-left:45%;
    border-radius:.1rem;
    border:1rem solid var(--white);
    box-shadow:var(--shadow-default)
    }
    
    .modal-speakers__right {
    display:flex;
    flex-direction:column;
    align-items:start;
    justify-content:center;
    background-color:var(--white);
    width:100%;
    max-width:80%;
    height:100%;
    min-height:100vh;
    position:absolute;
    top:0;
    right:0;
    z-index:10;
    padding-right:30px;
    transform:translateX(0);
    transition:all .3s ease-in-out
    }
    
    .modal-speakers__content.disabled .modal-speakers__right {
    transform:translateX(100%);
    transition:all .3s ease-in-out
    }
    
    .modal-speakers__detail {
    padding-left:20%;
    width:100%;
    max-width:1200px
    }
    
    .modal-speakers__bussine {
    display:none
    }
    
    .modal-speakers__description {
    text-align:justify
    }
    
    .footer p {
    margin-bottom:0
    }
    
    .footer__top {
    margin-bottom:-3rem;
    z-index:10;
    position:relative
    }
    
    .footer__news {
    background-color:var(--white);
    box-shadow:5px 5px 15px 0 #0000001a;
    border-radius:.8rem;
    padding:2rem 3.2rem
    }
    
    .footer__title {
    color:var(--green);
    margin-bottom:0;
    font-size:calc(1.275rem + .3vw)
    }
    
    .footer__subtitle {
    color:var(--black);
    font-weight:300
    }
    
    .footer__form {
    display:flex;
    flex-direction:row;
    width:100%
    }
    
    .footer__input {
    padding:.8rem 2rem;
    border-top-left-radius:var(--radious-general);
    border-bottom-left-radius:var(--radious-general);
    width:100%;
    border:2px solid var(--gray-light);
    outline:2px solid transparent;
    transition:var(--transition-default)
    }
    
    .footer__input:focus {
    border-color:var(--red);
    outline:2px solid #db2c2866
    }
    
    .footer__input::placeholder {
    color:var(--gray-medium);
    font-weight:500
    }
    
    .footer__button {
    background-color:var(--red);
    color:var(--white);
    border:0;
    padding:.6rem 2rem;
    border:2px solid var(--red);
    transition:var(--transition-default);
    border-radius:0 var(--radious-general) var(--radious-general) 0
    }
    
    .footer__button:hover {
    border:2px solid var(--red);
    color:var(--red)
    }
    
    .footer__bottom {
    background-color:var(--green);
    border-top-left-radius:1.8rem;
    border-top-right-radius:1.8rem;
    z-index:1;
    position:relative;
    padding-top:5rem;
    padding-bottom:1.6rem;
    color:var(--white)
    }
    
    .footer__rs {
    list-style:none;
    padding-left:0;
    display:flex;
    margin-bottom:0;
    width:100%;
    justify-content:center;
    gap:1rem
    }
    
    .footer__rs-link {
    display:block;
    transition:var(--transition-default)
    }
    
    .footer__rs-link:hover {
    opacity:.6
    }
    
    .footer__rs-icon {
    width:100%;
    max-width:1.2rem
    }
    
    .footer__contact {
    background-color:var(--gray);
    padding:1rem 0
    }
    
    .footer__contact-links {
    display:flex;
    gap:1rem;
    color:var(--white);
    align-items:center
    }
    
    .footer__contact-links a {
    text-decoration:none;
    color:var(--white);
    transition:var(--transition-default)
    }
    
    .footer__contact-links a:hover,.footer__contact-links a:active {
    opacity:.6
    }
    
    .jc-rwd {
    justify-content:end
    }
    
    .cardform {
    background-image:url(../tuxtla/img/textura.png);
    background-repeat:no-repeat;
    background-size:cover;
    background-position:center;
    border:1px solid #f7f7f7;
    -webkit-box-shadow:10px 10px 20px -8px #c7c7c7ff;
    -moz-box-shadow:10px 10px 20px -8px #c7c7c7ff;
    box-shadow:10px 10px 20px -8px #c7c7c7ff
    }
    
    .input-field {
    position:relative
    }
    
    .input-field input {
    width:100%;
    height:50px;
    border-radius:0;
    padding:6px 15px;
    background:transparent;
    outline:none;
    border:1px solid #ff0084!important;
    background-color:transparent!important;
    font-family:"mont"!important;
    font-display:swap!important;
    font-size:14px!important;
    color:#333!important
    }
    
    .input-field input.is-invalid,input.is-invalid {
    border-color:#DB2C28!important
    }
    
    .input-field input.is-invalid~label,input.is-invalid~label {
    color:#DB2C28!important
    }
    
    .input-field label {
    position:absolute;
    top:50%;
    left:15px;
    transform:translateY(-50%);
    font-size:14px;
    pointer-events:none;
    transition:.3s;
    display:block!important;
    color:#ff5018!important
    }
    
    .form-control::file-selector-button {
    color:#333!important;
    font-family:'mont';
    font-display:swap!important;
    background-color:transparent!important;
    margin:0 7px 0 5px
    }
    
    .input-field label i {
    color:#e41e2b
    }
    
    .input-field label span {
    color:#FF8C00
    }
    
    .form-select {
    --bs-form-select-bg-img:none
    }
    
    select {
    -moz-appearance:none;
    -webkit-appearance:none;
    appearance:none;
    position:relative
    }
    
    select.is-invalid,.form-select.is-invalid:not([multiple]):not([size]),.form-select.is-invalid:not([multiple])[size="1"],.was-validated .form-select:invalid:not([multiple]):not([size]),.was-validated .form-select:invalid:not([multiple])[size="1"] {
    border-color:#DB2C28!important;
    --bs-form-select-bg-icon:none
    }
    
    .form-group.select::after {
    content:"▼";
    font-size:14px;
    color:#fff!important;
    position:absolute;
    top:75%;
    right:10px;
    transform:translateY(-50%);
    pointer-events:none;
    z-index:10
    }
    
    input:focus {
    border:2px solid #18ffff
    }
    
    input:focus~label,input:valid~label,textarea:focus~label,textarea:valid~label {
    top:0;
    left:15px;
    font-size:14px;
    padding:0 4px;
    background:#fff
    }
    
    select:focus~label,select:valid~label {
    top:0;
    left:15px;
    font-size:14px;
    padding:0 4px;
    background:#fff
    }
    
    .cardform form textarea {
    width:100%;
    border-radius:0;
    padding:6px 15px;
    outline:none;
    border:1px solid #ff0084!important;
    background-color:transparent!important;
    font-family:"mont",sans-serif!important;
    font-display:swap!important;
    font-size:15px!important;
    color:#333!important;
    font-weight:500
    }
    
    .cardform form textarea:focus {
    background-color:transparent
    }
    
    .custom-select-container {
    position:relative;
    width:100%;
    display:flex;
    flex-direction:column
    }
    
    .custom-select-container::placeholder,.custom-select-container option {
    color:#333
    }
    
    .custom-select-container option:disabled {
    color:#fafafa80!important
    }
    
    .custom-select-container::after {
    content:"▼";
    font-size:14px;
    color:#fff!important;
    position:absolute;
    top:75%;
    right:10px;
    transform:translateY(-50%);
    pointer-events:none
    }
    
    .custom-input {
    width:100%;
    padding:8px;
    font-size:16px;
    border:1px solid #fff;
    border-radius:5px;
    box-sizing:border-box;
    width:100%;
    height:50px;
    border-radius:0;
    padding:6px 15px;
    outline:none;
    border:1px solid #fff!important;
    background-color:#358a42;
    font-family:"mont",sans-serif!important;
    font-display:swap!important;
    font-size:15px!important;
    color:#fff!important;
    font-weight:500
    }
    
    .custom-dropdown {
    position:absolute;
    width:100%;
    max-height:150px;
    overflow-y:auto;
    border:1px solid #ccc;
    border-radius:5px;
    background-color:#fff;
    display:none;
    z-index:10;
    top:100%
    }
    
    .custom-dropdown div {
    padding:8px;
    cursor:pointer
    }
    
    .custom-dropdown div:hover {
    background-color:#f0f0f0
    }
    
    .custom-input::placeholder {
    color:#fff;
    font-style:italic;
    opacity:1
    }
    
    label {
    color:#ff5018!important
    }
    
    .btn.btn-danger {
    color:#fff;
    background-color:#ff0084;
    border:none;
    width:100%
    }
    
    .btn.btn-danger:hover {
    color:#fff;
    background-color:#ff5018;
    border:none;
    width:100%
    }
    
    .form-control {
    background-color:#358A42
    }
    
    .ev-001-color {
    color:#3F1F68
    }
    
    .ev-002-color {
    color:#ff5018
    }