/* --------------- MODAL KIT SOCIO --------------- */
.modal.modal-kit-socio.active {
    display: block;
    overflow: auto;
    opacity: 1;
}

.modal.modal-kit-socio {
    position: fixed;
    width: 100%;
    height: 100vh;
    background: rgba(0, 0, 0, 0.85);
    top: 0;
    left: 0;
    z-index: 1000;
    padding: 0 3.75% 104px 3.75%;
}

.modal-kit-socio .popup {
    margin-top: 25px;
    max-width: 700px;
}

    .modal-kit-socio .popup .close-popup {
        display: block;
        float: right;
        margin-bottom: 10px;
        cursor: pointer;
    }

        .modal-kit-socio .popup .close-popup svg {
            height: 32px;
            width: 32px;
            stroke: #fff;
            transition: all 500ms ease-in-out;
        }

.modal-kit-socio .popup-content {
    background-color: #fff;
    padding: 40px 24px 150px;
    width: 100%;
    margin: 0 auto;
    max-width: 700px;
}

    .modal-kit-socio .popup-content .svg-icon {
        width: 60px;
        height: 40px;
        margin: 0 auto;
        margin-bottom: 10px;
    }

        .modal-kit-socio .popup-content .svg-icon svg {
            width: 100%;
            height: 100%;
            stroke: #c30000;
        }

    .modal-kit-socio .popup-content h3 {
        text-align: center;
        margin-bottom: 20px;
        font-size: 25px;
    }

    .modal-kit-socio .popup-content .kit-socio-paragraph {
        text-align: center;
        display: block;
        margin: 0 auto;
        width: 75%;
        margin-bottom: 20px;
    }

    .modal-kit-socio .popup-content .code-area-wrapper .code-form {
        position: relative;
        width: 90%;
        height: 40px;
        display: block;
        margin: 0 auto;
        margin-bottom: 15px;
    }

.modal-kit-socio #kit-soc-code-input {
    height: 40px;
    margin-bottom: 30px;
    text-transform: uppercase;
    padding: 10px 15px;
    width: 70%;
    border: 1px solid #ccc;
    margin-left: auto;
    display: block;
    margin-right: auto;
}

.modal-kit-socio .popup-content .code-area-wrapper .code-form .validate-button {
    width: 30%;
}

.modal-kit-socio .popup-content .code-area-wrapper .button-wrapper {
    width: 45%;
    display: block;
    margin: 0 auto;
    text-align: center;
}

.modal-kit-socio .popup-content .code-area-wrapper .code-form .input-error-message {
    position: absolute;
    top: 45px;
    color: #c30000;
    white-space: nowrap;
}

.modal-kit-socio .popup-content .code-area-wrapper .code-form.error #kit-soc-code-input {
    border: solid 1px #c30000;
}

.input-error-message {
    text-align: center;
}

/* --------------- END MODAL KIT SOCIO --------------- */

/* --------------- MODAL VOUCHER FAM?LIA --------------- */
.modal-voucher-familia .icon-voucher-familia {
    font-size: 100px;
    color: #c30000;
}

.modal.modal-voucher-familia.active {
    display: block;
    overflow: auto;
    opacity: 1;
}

.modal.modal-voucher-familia {
    position: fixed;
    width: 100%;
    height: 100vh;
    background: rgba(0,0,0,0.85);
    top: 0;
    left: 0;
    z-index: 1000;
    padding: 0 3.75% 104px 3.75%;
}

.modal-voucher-familia .popup {
    margin-top: 25px;
    max-width: 700px;
    height: 10%;
}

    .modal-voucher-familia .popup .close-popup {
        display: block;
        float: right;
        margin-bottom: 10px;
        cursor: pointer;
    }

        .modal-voucher-familia .popup .close-popup svg {
            height: 32px;
            width: 32px;
            stroke: #fff;
            transition: all 500ms ease-in-out;
        }

.modal-voucher-familia .popup-content {
    background-color: #fff;
    padding: 40px 24px 150px;
    width: 100%;
    margin: 0 auto;
    max-width: 700px;
}

    .modal-voucher-familia .popup-content .svg-icon {
        width: 60px;
        height: 40px;
        margin: 0 auto;
        margin-bottom: 10px;
    }

        .modal-voucher-familia .popup-content .svg-icon svg {
            width: 100%;
            height: 100%;
            stroke: #c30000;
        }

    .modal-voucher-familia .popup-content h3 {
        text-align: center;
        margin-bottom: 20px;
        font-size: 25px;
    }

    .modal-voucher-familia .popup-content .kit-socio-paragraph {
        text-align: center;
        display: block;
        margin: 0 auto;
        width: 75%;
        margin-bottom: 20px;
    }

    .modal-voucher-familia .popup-content .code-area-wrapper .code-form {
        position: relative;
        display: block;
        margin: 0 auto;
    }

        .modal-voucher-familia .popup-content .code-area-wrapper .code-form .input-wrapper {
            width: 50%;
            margin: 0 auto;
        }

.modal-voucher-familia input[type="text"] + label[placeholder] {
    left: auto;
}

.modal-voucher-familia #kit-soc-code-input {
    height: 40px;
    text-transform: uppercase;
    padding: 10px 15px;
    width: 100%;
    border: 1px solid #ccc;
}

.modal-voucher-familia .popup-content .code-area-wrapper .button-wrapper {
    display: block;
    margin: 20px 0 0 0;
    text-align: center;
}

.modal-voucher-familia .input-error-message {
    color: #c30000;
    padding: 10px 0;
    margin: auto;
    width: 75%;
    text-align: center;
}

.modal-voucher-familia #kit-soc-code-input {
    border: solid 1px #c30000;
}
/* --------------- END MODAL VOUCHER FAM?LIA --------------- */

/* DISCLAIMER */
#disclaimer {
    font-size: 11px;
}

    #disclaimer:hover {
        color: black !important;
    }

section header {
    text-align: center;
    margin-bottom: 40px;
    padding: 0 15px;
    float: left;
    width: 100%;
}

    section header > * {
        text-transform: uppercase;
        font-family: Roboto Condensed;
        font-weight: 300;
    }

    section header h4 {
        font-size: 15px;
        margin: 0;
    }

    section header h2 {
        font-size: 28px;
        margin: 0 0 10px 0;
    }

        section header h2 sup {
            top: -5px;
        }

/* advantages */
#members-landing .gallery-section {
    margin: 40px 0;
    padding: 0;
}

    #members-landing .gallery-section .item > a {
        position: relative;
        float: left;
        width: 100%;
        height: 0;
        padding-bottom: 56.25%;
    }

/* red-power-discounts */

#red-power-discounts .discounts {
    padding: 0 3%;
    display: flex;
    flex-wrap: wrap;
}

#red-power-discounts .discount {
    border: solid 1px rgb(221, 221, 221);
}

#join {
    display: flex;
    justify-content: center;
    margin-top: 80px;
}

    #join a {
        width: 80%;
        margin: 0 auto;
    }

        #join a .button {
            width: 100%;
        }

footer .map.row {
    display: none;
}

footer.section.advantages {
    display: none;
}

@media (max-width: 767px) {
    #red-power-discounts .discount:not(:last-child) {
        border-bottom: 0;
    }
}

#red-power-discounts .discount .image-placeholder {
    height: 0;
    padding-bottom: 50%;
    background: none;
}

    #red-power-discounts .discount .image-placeholder picture {
        position: absolute;
        width: 100%;
        height: 100%;
        top: 0;
        left: 0;
        display: flex;
    }

        #red-power-discounts .discount .image-placeholder picture img {
            width: 33.33334%;
            width: auto;
            height: 100%;
        }

#red-power-discounts .discount .description {
    padding: 1% 12% 9% 12%;
    text-align: center;
}

    #red-power-discounts .discount .description p {
        font-size: 26px;
    }

#red-power-discounts > a {
    padding: 6% 3%;
}

    #red-power-discounts > a .button {
        width: 100%;
        text-align: center;
    }

/* Members categories */

#members-categories {
    margin-top: 50px;
    margin-bottom: 30px;
}

    #members-categories .category {
        padding: 0 15px;
    }

        #members-categories .category.th {
            display: none;
        }

        #members-categories .category header {
            margin: 0;
            padding-bottom: 25px;
        }

            #members-categories .category header > * {
                font-weight: normal;
            }

        #members-categories .category .info {
            border-top: solid 1px rgb(221, 221, 221);
            border-bottom: solid 1px rgb(221, 221, 221);
        }

            #members-categories .category .info p {
                text-transform: uppercase;
                padding: 20px 0;
                padding-right: 5%;
            }

            #members-categories .category .info .conditions {
                text-align: right;
            }

                #members-categories .category .info .conditions p {
                    font-weight: bold;
                    font-size: 18px;
                }

            #members-categories .category .info .values {
                text-align: center;
            }

                #members-categories .category .info .values p {
                    font-size: 16px;
                    line-height: 25px;
                }

                #members-categories .category .info .values .price {
                    font-size: 18px;
                }

            #members-categories .category .info p small {
                font-size: 12px;
            }

        #members-categories .category footer {
            margin-top: 60px;
        }

    #members-categories footer .button {
        width: 100%;
        text-align: center;
        background-color: rgb(36, 36, 36);
        color: white;
        border: none;
    }

    #members-categories .slick-dots {
        bottom: -40px !important;
    }

        #members-categories .slick-dots li button:before {
            color: black !important;
        }

#red-power-discounts h2,
#red-power-discounts h4 {
    font-family: Roboto !important;
}

.premium-column p {
    width: 100%;
}

/*Slick Table Categories*/
.slick-table-categories.family {
    margin-bottom: 0px;
}

    .slick-table-categories.family sup {
        font-size: 50%;
    }

    .slick-table-categories.family .col-xs-3.ancora {
        width: 29%;
    }

    .slick-table-categories.family .col-xs-7.slider {
        width: 54%;
    }

    .slick-table-categories.family p span.third {
        width: 55px;
        display: flex;
        justify-content: center;
    }

    .slick-table-categories.family .category p span:not(.third) {
        font-size: 5vw;
        line-height: 34px;
        font-family: Roboto;
        font-weight: 500;
        width: 100%;
    }

.slick-table-categories.index .category header p span:not(.third) {
    font-size: 32px;
    line-height: 34px;
    font-family: Roboto;
    font-weight: 500;
    width: 100%;
}

.slick-table-categories.family .slick-dots,
.slick-table-categories.index .slick-dots {
    bottom: -35px !important;
    width: 100%;
}

.slick-table-categories .category .info .values .price {
    font-size: 14px;
    line-height: 16px;
    display: flex;
    padding: 10px 18px;
    height: 85px;
    flex-wrap: wrap;
}

.slick-table-categories .category .info .values p.no-border {
    border-bottom: none;
}

.slick-table-categories.family .category .info .values .price {
    padding: 10px 10px;
    flex-flow: nowrap;
}

.slick-table-categories .category .info .values .price.double-row > span {
    width: 100%;
}

.slick-table-categories .category .info .values .price span.smaller {
    font-size: 14px;
    font-weight: 400;
    padding: 3px 0px 0px 2px;
}

.slick-table-categories .category .info .conditions p {
    height: 85px;
    padding-right: 10px;
}

.slick-table-categories .category .info .values .price {
    font-size: 18px;
    line-height: 24px;
    display: flex;
    font-weight: 500;
}

.slick-table-categories p {
    text-transform: none;
}

.slick-table-categories .category header {
    height: 66px;
}

.slick-table-categories .category.th {
    margin-top: 66px;
}

.slick-table-categories.full-length .category.th, .slick-table-categories.index .category.th {
    margin-top: 118px;
}

.slick-table-categories.full-length .category header, .slick-table-categories.index .category header {
    height: 118px;
}

.slick-table-categories.full-length header p:nth-of-type(2) {
    min-height: 33px;
    font-family: Roboto;
}

.slick-table-categories.family.full-length header p:nth-of-type(2) {
    display: flex;
    padding-top: 10px;
}

.slick-table-categories.index header p:nth-of-type(2) {
    padding-top: 10px;
}

.slick-table-categories .disclaimer {
    padding: 60px 0;
}

@media (max-width: 425px) {
    section header h2 {
        font-size: 22px;
    }

    #red-power-discounts .discount .description p {
        font-size: 16px;
    }
}

@media screen and (min-width:500px) {
    .slick-table-categories.family .category p span:not(.third) {
        font-size: 22px;
    }
}

@media (min-width: 768px) {
    #join {
        justify-content: flex-end;
        margin-top: 40px;
    }

        #join a {
            width: 164px;
            margin: 0;
        }
    /* --------------- MODAL KIT SOCIO --------------- */
    .modal-kit-socio .popup-content .code-area-wrapper .code-form {
        width: 75%;
        margin-bottom: 40px;
    }

    .modal-kit-socio .popup-content h3 {
        margin-bottom: 30px;
    }

    .modal-kit-socio .popup-content .kit-socio-paragraph {
        width: 45%;
        margin-bottom: 30px;
    }

    .modal-kit-socio .popup-content .code-area-wrapper .code-form .input-error-message {
        white-space: normal;
    }
    /* --------------- END MODAL KIT SOCIO --------------- */

    section header h4 {
        font-size: 22px;
        margin: 0;
    }

    section header h2 {
        font-size: 32px;
        margin: 0 0 10px 0;
    }

    #red-power-discounts {
        margin-top: 40px;
    }

        #red-power-discounts .discount {
            border: solid 1px rgb(221, 221, 221);
            border-top: 0;
        }

            #red-power-discounts .discount:nth-child(-n+3) {
                border-top: solid 1px rgb(221, 221, 221);
            }

            #red-power-discounts .discount:not(:nth-child(3n+1)) {
                border-left: 0;
            }

            #red-power-discounts .discount .description {
                padding-right: 8%;
                padding-left: 8%;
            }

                #red-power-discounts .discount .description p {
                    font-size: 14px;
                }

        #red-power-discounts > a {
            float: right;
            padding-top: 3%;
            cursor: default;
        }

            #red-power-discounts > a:hover {
                color: unset;
            }

            #red-power-discounts > a .button {
                float: right;
                width: 164px;
            }

        #red-power-discounts .discounts {
            padding: 0 10%;
        }

        #red-power-discounts > a {
            padding-right: 10%;
        }

    .premium-icons .premium-column h2 {
        margin: 0;
    }

    .premium-icons .premium-column .subtitle {
        min-height: 90px;
    }

    .slick-table-categories .category.th {
        margin-top: 66px;
    }

    .slick-table-categories.full-length .category.th {
        margin-top: 118px;
    }

    .slick-table-categories.full-length .category header {
        height: 118px;
    }

    .slick-table-categories.family .category .info .values .price span.third, .slick-table-categories.family .category span.third {
        width: 33%;
    }

    .slick-table-categories.family .category p span:not(.third),
    .slick-table-categories.index .category header p span:not(.third) {
        font-size: 32px;
    }

    .slick-table-categories.family .category header > div,
    .slick-table-categories.index .category header > div {
        display: flex;
        flex-direction: column;
        height: 100%;
        justify-content: center;
    }

    .slick-table-categories.family .col-xs-3.ancora {
        width: 18%;
    }

    .slick-table-categories.family .col-xs-7.slider {
        width: 65%;
    }
}

@media (min-width: 992px) {
    #members-categories {
        padding: 0 3.5%;
    }

        #members-categories .category .info {
            height: 181px;
        }

        #members-categories .category {
            padding: 0;
        }

            #members-categories .category header h2 {
                font-size: 21px;
            }

            #members-categories .category header h4 {
                font-size: 13px;
            }

            #members-categories .category.th {
                margin-top: 72px;
                display: block;
                width: 8%;
            }

                #members-categories .category.th .conditions {
                    text-align: left;
                }

                #members-categories .category.th .info p {
                    padding-left: 35%;
                }

            #members-categories .category .info .values p {
                line-height: 19px;
            }

            #members-categories .category .info .gifts {
                padding: 10px;
            }

            #members-categories .category .info p.gifts small {
                display: block;
            }

        #members-categories .categories .category .info .conditions {
            display: none;
        }

        #members-categories .category .info .conditions p {
            font-size: 14px;
        }

        #members-categories .category .info p {
            padding-right: 0;
        }

        #members-categories .category .info .values .price {
            font-size: 24px;
        }

        #members-categories .category footer {
            display: none;
            margin-top: 25px;
            text-align: center;
        }

            #members-categories .category footer .button {
                width: 164px;
            }

        #members-categories .category .info .values p:nth-child(2) {
            border-top: solid 1px #f2f2f2;
            border-bottom: solid 1px #f2f2f2;
        }

        #members-categories .category .conditions p:nth-child(2) {
            border-top: solid 1px #f2f2f2;
            border-bottom: solid 1px #f2f2f2;
            margin-top: -1px;
            padding-bottom: 24px;
        }

    #red-power-discounts .discounts {
        padding: 0 16.5%;
    }

    #red-power-discounts > a {
        padding-right: 16.5%;
    }

    .premium-icons .premium-column {
        width: 31%;
    }

    .slick-table-categories {
        padding: 0;
    }

        .slick-table-categories .category.th {
            margin-top: 118px;
        }

        .slick-table-categories .category header {
            height: 55px;
        }

        .slick-table-categories.full-length .category.th {
            margin-top: 118px;
        }

        .slick-table-categories.full-length .category header {
            height: 118px;
        }

    .premium-icons .premium-column .subtitle {
        min-height: 60px;
        padding: 0 7%;
    }
}

@media (min-width: 1200px) {
    .slick-table-categories .disclaimer {
        padding: 20px 0;
    }

    #members-categories .category header h2 {
        font-size: 34px;
    }

    #members-categories .category header h2 {
        font-size: 26px;
    }

    #members-categories .category header h4 {
        font-size: 14px;
    }

    #members-categories .category.th {
        margin-top: 78px;
    }

    .premium-icons .premium-column h2 {
        min-height: initial;
    }

    .premium-icons .premium-column .subtitle {
        padding: 0 10%;
    }
}

@media (min-width: 1366px) {
    #members-categories .category header h2 {
        font-size: 32px;
    }

    #members-categories .category header h4 {
        font-size: 14px;
    }

    #members-categories .category.th {
        margin-top: 85px;
    }
}
