.parc-spirou span.wpcf7-not-valid-tip {
    color: #FDEB24;
}

.parc-spirou .color--bg--yellow span.wpcf7-not-valid-tip {
    color: #f00;
}

.parc-spirou .color--bg--yellow div.wpcf7-validation-errors, .parc-spirou .color--bg--yellow div.wpcf7-acceptance-missing {
    border-color: #f00;
}

.social-line {
    color: transparent;
    display: block;
}

.partner-item {
    display: inline-block;
    vertical-align: middle;
    margin: 0 .75em;
}

.partner-item:before {
    display: none !important;
}

.partner-item img {
    max-height: 35px;
}

@media (min-width: 768px) {
    .social-line {
        color: #c01d26;
        display: inline;
    }
}

.grid > .block-space:first-child {
    display: none;
}

.form__nsl .form__item br {
    display: none;
}

.form__nsl .form__item .ajax-loader {
    position: absolute;
}

/*Home block bellow slider*/
.ct-new-article {
    border: 3px solid #000;
    overflow: hidden;
    background: #fff;
}

.ct-new-article figure {
    padding: 0;
}

.ct-new-article figure img {
    display: block;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
}

.ct-new-article__content {
    color: #000;
    position: relative;
    display: -webkit-box !important;
    display: -ms-flexbox !important;
    display: flex !important;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    background: #ffffff;
    padding: 0;
}

.ct-new-article .btn-std, .ct-new-video .btn-std {
    margin-top: 0.5rem;
    color: #fff;
    background: #c01d26;
}

.ct-new-article .btn-std span {
    border-color: #c01d26;
    font-size: 20px;
    padding: 0 1rem;
}

.ct-new-video {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.ct-new-video .ct-content-inner {
    width: 100%;
}

.ct-new-video .btn-std span:hover {
    border-color: #c01d26;
}

.ct-new-video .icon--play {
    width: 65px;
    height: 65px;
    border-width: 3px;
    margin: 1.5rem auto 0;
}

.ct-new-article p {
    margin-bottom: 1rem;
}

.ct-new-video p {
    max-width: 640px;
    margin-left: auto;
    margin-right: auto;
}

.ct-content-inner {
    padding: 1.5rem 1rem;
}

.ct-content-inner > *:last-child {
    margin-bottom: 0;
}

.ct-content-title {
    font-size: 1.25rem;
    padding: 0.5rem 1rem 0.3rem;
    line-height: 1.6rem;
    border: 2px solid #000;
    margin-bottom: 1.5rem;
    color: #000;
    background: #ffffff;
}

.ct-new-video {
    border: 3px solid #000;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    min-height: 510px;
}

.ct-video-placeholder {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    overflow: hidden;
}

.ct-video-placeholder video {
    position: absolute;
    min-height: 100%;
    min-width: 100%;
    top: 50%;
    left: 50%;
    -webkit-transform: translateX(-50%) translateY(-50%);
    -ms-transform: translateX(-50%) translateY(-50%);
    transform: translateX(-50%) translateY(-50%);
}

@media (min-width: 62em) {
    .ct-new-article {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: end;
        -ms-flex-pack: end;
        justify-content: flex-end;
        overflow: visible;
    }

    .ct-content-inner {
        padding: 3rem 2rem;
    }

    .ct-content-title {
        margin-bottom: 3rem;
        width: calc(100% + 3rem);
    }

    .ct-new-video .ct-content-title {
        width: calc(100% + 6rem);
        margin-left: -3rem;
    }

    .ct-new-article .btn-std {
        margin-top: 2rem;
    }

    .ct-new-video .icon--play {
        margin-top: 2.5rem;
    }

    .ct-new-article .clip-path {
        position: absolute;
        width: 100%;
        height: 100%;
        top: 0;
        left: 0;
        -webkit-clip-path: polygon(100% 0, 0 0, -8% 100%, 100% 100%);
        clip-path: polygon(100% 0, 0 0, -8% 100%, 100% 100%);
    }

    .ct-new-article .clip-path:before {
        content: "";
        position: absolute;
        width: 108%;
        height: 100%;
        background: #ffffff;
        top: 0;
        right: 0;
    }
}

@media (min-width: 1300px) {
    .ct-content-title {
        width: calc(100% + 3.5rem);
    }

    .ct-new-video .ct-content-title {
        width: calc(100% + 7rem);
        margin-left: -3.5rem;
    }
}

/*Popup video*/
#ct-video-fade {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: black;
    z-index: 1001;
    -moz-opacity: 0.8;
    opacity: .80;
    filter: alpha(opacity=80);
}

#ct-video-light {
    display: none;
    position: fixed;
    top: 50%;
    left: 50%;
    max-width: 600px;
    max-height: 360px;
    width: calc(100% - 30px);
    -webkit-transform: translateX(-50%) translateY(-50%);
    -ms-transform: translateX(-50%) translateY(-50%);
    transform: translateX(-50%) translateY(-50%);
    border: 2px solid #FFF;
    background: #FFF;
    z-index: 1002;
    overflow: visible;
}

#ct-video-light video {
    width: 100%;
}

#ct-video-box-close {
    float: right;
    cursor: pointer;
    color: #fff;
    border: 1px solid #AEAEAE;
    border-radius: 3px;
    background: #222222;
    font-size: 20px;
    font-weight: bold;
    display: inline-block;
    line-height: 0;
    padding: 11px 3px;
    position: absolute;
    right: 2px;
    top: 2px;
    z-index: 1002;
    opacity: 0.9;
}

.ct-video-box-close:before {
    content: "\2716";
}

#ct-video-fade:hover ~ #ct-video-box-close {
    display:none;
}

/*animation*/
.ct-new-article.js-reveal, .ct-new-video.js-reveal {
    opacity: 0;
    -webkit-transform: translate3d(0, 5rem, 0);
    transform: translate3d(0, 5rem, 0);
    -webkit-transition: all 1.2s cubic-bezier(0.075, 0.82, 0.165, 1);
    -o-transition: all 1.2s cubic-bezier(0.075, 0.82, 0.165, 1);
    transition: all 1.2s cubic-bezier(0.075, 0.82, 0.165, 1);
}

.ct-new-article.is-visible, .ct-new-video.is-visible {
    opacity: 1;
    -webkit-transition-delay: 0.2s;
    -o-transition-delay: 0.2s;
    transition-delay: 0.2s;
    -webkit-transform: none;
    -ms-transform: none;
    transform: none;
}

/*Update CSS 20200916*/
.carousel-circular__item--title {
    font-size: 1.175em;
    -o-text-overflow: unset;
    text-overflow: unset;
    white-space: normal;
    overflow: visible;
}

/*Form*/
#sib_embed_signup .message_area button {
    padding: 0 5px;
}

/*Products*/
.product {
    margin-bottom: 15px;
}
.product:nth-child(3n+1) {
    clear: left;
}
@media (min-width: 48em) {
    .product {
        margin-bottom: 30px;
    }
}

.product__link {
    display: block;
    padding: 20px 10px 10px;
    background: #fff;
}
@media (min-width: 48em) {
    .product__link {
        padding: 30px 15px 15px;
    }
}
@media (min-width: 62em) {
    .product__link {
        padding: 40px 25px 25px;
    }
}

.product__img {
    margin-bottom: 10px;
}
@media (min-width: 48em) {
    .product__img {
        margin-bottom: 15px;
    }
}
@media (min-width: 62em) {
    .product__img {
        margin-bottom: 25px;
    }
}

.product__category {
    font-size: 16px;
    line-height: 22px;
    letter-spacing: 0;
    color: #7E7E7E;
    margin-bottom: 0;
}

.product__title {
    font-size: 18px;
    line-height: 22px;
    letter-spacing: 0;
    color: #358338;
    text-transform: uppercase;
    margin: 5px 0 10px;
}
@media (min-width: 48em) {
    .product__title {
        margin: 10px 0 15px;
    }
}
@media (min-width: 62em) {
    .product__title {
        margin: 10px 0 25px;
    }
}

.product__price {
    text-align: right;
    font-family: "burban";
    font-size: 18px;
    line-height: 22px;
    font-weight: 700;
    letter-spacing: 0;
    color: #7E7E7E;
    margin: 0;
}

.product-block__bg {
    position: absolute;
    left: 50%;
    top: 45px;
    height: 100%;
    width: auto;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
}

.product-block__decor-01, .product-block__decor-02 {
    position: absolute;
    top: 0;
}

.product-block__decor-01 {
    left: 0;
    -webkit-transform: translateY(-30%);
    -ms-transform: translateY(-30%);
    transform: translateY(-30%);
}

.product-block__decor-02 {
    right: -15px;
    -webkit-transform: translateY(300%);
    -ms-transform: translateY(300%);
    transform: translateY(300%);
}

.h-100 {
    height: 100%;
}

/*calendar__legend*/
.calendar__legend {
    margin-bottom: 1rem;
}

.calendar__legend ul {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

.calendar__legend ul li {
    margin-bottom: 1rem;
}

/*subscription-block*/
.subscription-block {
    position: relative;
    width: 100vw;
    left: 50%;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
}

.subscription-img {
    width: calc(100% - 30px);
    max-width: 470px;
    height: auto;
    border: 2px solid #000;
}

.has-subscription .subscription-block:first-child {
    padding-top: 0;
}

.has-subscription .hero + section {
    padding-bottom: 0;
}

/*tickets-202107*/
.tickets-202107 .ticket-row {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.tickets-202107 .ticket-col {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

.tickets-202107 .ticket-subtitle {
    position: relative;
    max-width: 310px;
    margin-top: -5px;
    margin-left: auto;
    margin-right: auto;
}

.tickets-202107 .ticket-subtitle img {
    position: absolute;
}

.tickets-202107 .ticket-subtitle img.alignleft {
    top: -40px;
    left: -40px;
}

.tickets-202107 .ticket-subtitle img.alignright {
    bottom: -40px;
    right: -40px;
}

.tickets-202107 .ticket-detail {
    padding-top: 25px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    position: relative;
}

.tickets-202107 .ticket-detail:before {
    content: "";
    width: 2px;
    height: calc(100% + 25px);
    background: #000;
    position: absolute;
    top: 0;
    left: 50%;
    margin-left: -1px;
}

.tickets-202107 .ticket-detail .price__info {
    width: calc(100% / 2 - 10px);
    text-align: center;
}

.tickets-202107 .price {
    padding: 25px 20px;
    margin-top: 20px;
}

.tickets-202107 .price__title {
    font-size: 26px;
}

.tickets-202107 .price__price {
    position: static;
    font-size: 40px;
    width: 100%;
    margin: 0 0 10px;
}

.tickets-202107 .price__subtitle {
    font-size: 12px;
    color: #000;
    margin-bottom: 20px;
}

.tickets-202107 .price__link {
    max-width: 150px;
}

.tickets-202107 .price__link:after {
    margin-right: 0;
}

@media (max-width: 767px) {
    .tickets-promo-202107 .price__price {
        position: static;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        color: #c01d26;
    }

    .tickets-promo-202107 .price__price del {
        margin-right: 15px;
    }

    .tickets-promo-202107 .price__price label {
        display: none;
    }

    .tickets-promo-202107 .price__info {
        width: 100%;
    }
}

@media (max-width: 480px) {
    .tickets-promo-202107 .price__title {
        font-size: 26px;
    }
}

@media (max-width: 400px) {
    .tickets-202107 .price__title {
        font-size: 20px;
    }

    .tickets-202107 .price__price {
        font-size: 30px;
    }

    .tickets-202107 .price__link {
        font-size: 12px;
    }
}

@media (max-width: 340px) {
    .tickets-promo-202107 .price__title {
        font-size: 24px;
    }
}

/*Update calendar height */
.calendar .fc-scroller {
    height: -webkit-fit-content!important;
    height: -moz-fit-content!important;
    height: fit-content!important;
}

/*add wrap-img-ratio */
.wrap-img-ratio {
    position: relative;
}
.wrap-img-ratio:before {
    content: "";
    display: block;
}
.wrap-img-ratio .inner-ratio {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
}
.wrap-img-ratio img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.wrap-img-ratio.s-62-29:before {
    padding-top: calc(29/62*100%);
}

@media (min-width: 48em) {
    .item__img.wrap-img-ratio .inner-ratio {
        width: 104%;
    }

    .item:nth-child(even) .item__img.wrap-img-ratio .inner-ratio {
        right: 0;
        left: auto;
    }
}

/* hide Recaptcha badge */
.grecaptcha-badge { visibility: hidden; }

/* wp-caption */
.wp-caption {
    max-width: 100%;
}

/* img mobile */
@media (max-width: 767px) {
    .wysiwyg img[class*="wp-image"] {
        display: block;
        margin: 15px auto 0;
        width: 100%;
    }
}

/* footer-copyright */
.footer-copyright {
    color: #000;
    padding-top: 0!important;
}

.main-footer > .social {
    padding-bottom: 1.5rem!important;
}

/* Hide promo price */
.price__info.hide-price {
    width: 100%;
}