.ct-section {
width:100%;
background-size:cover;
background-repeat:repeat;
}
.ct-section>.ct-section-inner-wrap {
display:flex;
flex-direction:column;
align-items:flex-start;
}
.ct-div-block {
display:flex;
flex-wrap:nowrap;
flex-direction:column;
align-items:flex-start;
}
.ct-new-columns {
display:flex;
width:100%;
flex-direction:row;
align-items:stretch;
justify-content:center;
flex-wrap:wrap;
}
.ct-link-text {
display:inline-block;
}
.ct-link {
display:flex;
flex-wrap:wrap;
text-align:center;
text-decoration:none;
flex-direction:column;
align-items:center;
justify-content:center;
}
.ct-link-button {
display:inline-block;
text-align:center;
text-decoration:none;
}
.ct-link-button {
background-color: #1e73be;
border: 1px solid #1e73be;
color: #ffffff;
padding: 10px 16px;
}
.ct-image {
max-width:100%;
}
.ct-fancy-icon>svg {
width:55px;height:55px;}
.ct-inner-content {
width:100%;
}
.ct-slide {
display:flex;
flex-wrap:wrap;
text-align:center;
flex-direction:column;
align-items:center;
justify-content:center;
}
.ct-nestable-shortcode {
display:flex;
flex-wrap:nowrap;
flex-direction:column;
align-items:flex-start;
}
.oxy-comments {
width:100%;
text-align:left;
}
.oxy-comment-form {
width:100%;
}
.oxy-login-form {
width:100%;
}
.oxy-search-form {
width:100%;
}
.oxy-tabs-contents {
display:flex;
width:100%;
flex-wrap:nowrap;
flex-direction:column;
align-items:flex-start;
}
.oxy-tab {
display:flex;
flex-wrap:nowrap;
flex-direction:column;
align-items:flex-start;
}
.oxy-tab-content {
display:flex;
width:100%;
flex-wrap:nowrap;
flex-direction:column;
align-items:flex-start;
}
.oxy-testimonial {
width:100%;
}
.oxy-icon-box {
width:100%;
}
.oxy-pricing-box {
width:100%;
}
.oxy-posts-grid {
width:100%;
}
.oxy-gallery {
width:100%;
}
.ct-slider {
width:100%;
}
.oxy-tabs {
display:flex;
flex-wrap:nowrap;
flex-direction:row;
align-items:stretch;
}
.ct-modal {
flex-direction:column;
align-items:flex-start;
}
.ct-span {
display:inline-block;
text-decoration:inherit;
}
.ct-widget {
width:100%;
}
.oxy-dynamic-list {
width:100%;
}
@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
			.ct-div-block,
			.oxy-post-content,
			.ct-text-block,
			.ct-headline,
			.oxy-rich-text,
			.ct-link-text { max-width: 100%; }
			img { flex-shrink: 0; }
			body * { min-height: 1px; }
		}            .oxy-testimonial {
                flex-direction: row;
                align-items: center;
            }
                        .oxy-testimonial .oxy-testimonial-photo-wrap {
                order: 1;
            }
            
                        .oxy-testimonial .oxy-testimonial-photo {
                width: 125px;                height: 125px;                margin-right: 20px;
            }
            
                        .oxy-testimonial .oxy-testimonial-photo-wrap, 
            .oxy-testimonial .oxy-testimonial-author-wrap, 
            .oxy-testimonial .oxy-testimonial-content-wrap {
                align-items: flex-start;                text-align: left;            }
            
                                                            .oxy-testimonial .oxy-testimonial-text {
                margin-bottom:8px;font-size: 21px;
line-height: 1.4;
-webkit-font-smoothing: subpixel-antialiased;
            }
            
                                    .oxy-testimonial .oxy-testimonial-author {
                font-size: 18px;
-webkit-font-smoothing: subpixel-antialiased;
            }
                            

                                                .oxy-testimonial .oxy-testimonial-author-info {
                font-size: 12px;
-webkit-font-smoothing: subpixel-antialiased;
            }
            
             
            
                        .oxy-icon-box {
                text-align: left;                flex-direction: column;            }
            
                        .oxy-icon-box .oxy-icon-box-icon {
                margin-bottom: 12px;
                align-self: flex-start;            }
            
                                                                        .oxy-icon-box .oxy-icon-box-heading {
                font-size: 21px;
margin-bottom: 12px;            }
            
                                                                                    .oxy-icon-box .oxy-icon-box-text {
                font-size: 16px;
margin-bottom: 12px;align-self: flex-start;            }
            
                        .oxy-icon-box .oxy-icon-box-link {
                margin-top: 20px;                            }
            
            
            /* GLOBALS */

                                                            .oxy-pricing-box .oxy-pricing-box-section {
                padding-top: 20px;
padding-left: 20px;
padding-right: 20px;
padding-bottom: 20px;
text-align: center;            }
                        
                        .oxy-pricing-box .oxy-pricing-box-section.oxy-pricing-box-price {
                justify-content: center;            }
            
            /* IMAGE */
                                                                                    .oxy-pricing-box .oxy-pricing-box-section.oxy-pricing-box-graphic {
                justify-content: center;            }
            
            /* TITLE */
                                                            
                                    .oxy-pricing-box .oxy-pricing-box-title-title {
                font-size: 48px;
            }
            
                                    .oxy-pricing-box .oxy-pricing-box-title-subtitle {
                font-size: 24px;
            }
            

            /* PRICE */
                                                .oxy-pricing-box .oxy-pricing-box-section.oxy-pricing-box-price {
                                                flex-direction: row;                                            }
            
                                    .oxy-pricing-box .oxy-pricing-box-currency {
                font-size: 28px;
            }
            
                                    .oxy-pricing-box .oxy-pricing-box-amount-main {
                font-size: 80px;
line-height: 0.7;
            }
            
                                    .oxy-pricing-box .oxy-pricing-box-amount-decimal {
                font-size: 13px;
            }
                        
                                    .oxy-pricing-box .oxy-pricing-box-term {
                font-size: 16px;
            }
            
                                    .oxy-pricing-box .oxy-pricing-box-sale-price {
                font-size: 12px;
color: rgba(0,0,0,0.5);
                margin-bottom: 20px;            }
            
            /* CONTENT */

                                                                        .oxy-pricing-box .oxy-pricing-box-section.oxy-pricing-box-content {
                font-size: 16px;
color: rgba(0,0,0,0.5);
            }
            
            /* CTA */

                                                                        .oxy-pricing-box .oxy-pricing-box-section.oxy-pricing-box-cta {
                justify-content: center;            }
            
        
                                .oxy-progress-bar .oxy-progress-bar-background {
            background-color: #000000;            background-image: linear-gradient(-45deg,rgba(255,255,255,.12) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.12) 50%,rgba(255,255,255,.12) 75%,transparent 75%,transparent);            animation: none 0s paused;        }
                
                .oxy-progress-bar .oxy-progress-bar-progress-wrap {
            width: 85%;        }
        
                                                        .oxy-progress-bar .oxy-progress-bar-progress {
            background-color: #66aaff;padding: 40px;animation: none 0s paused, none 0s paused;            background-image: linear-gradient(-45deg,rgba(255,255,255,.12) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.12) 50%,rgba(255,255,255,.12) 75%,transparent 75%,transparent);        
        }
                
                        .oxy-progress-bar .oxy-progress-bar-overlay-text {
            font-size: 30px;
font-weight: 900;
-webkit-font-smoothing: subpixel-antialiased;
        }
        
                        .oxy-progress-bar .oxy-progress-bar-overlay-percent {
            font-size: 12px;
        }
        
        .ct-slider .unslider-nav ol li {border-color: #ffffff; }.ct-slider .unslider-nav ol li.unslider-active {background-color: #ffffff; }.ct-slider .ct-slide {
				padding: 0px;			}
		
                        .oxy-superbox .oxy-superbox-secondary, 
            .oxy-superbox .oxy-superbox-primary {
                transition-duration: 0.5s;            }
            
            
            
            
            
        
        
        
        
            .oxy-shape-divider {
                width: 0px;
                height: 0px;
                
            }
            
            .oxy_shape_divider svg {
                width: 100%;
            }
            

/*---------Font Smoothing---------*/
.woocommerce {
  -webkit-font-smoothing: antialiased;
}

/*------Rating Stars--------*/
.woocommerce .star-rating::before,
.woocommerce .stars:not(.selected) span a,
.woocommerce .stars.selected span a.active ~ a {
  color: #d3d3d3;
}
.woocommerce .star-rating,
.woocommerce .stars.selected span a {
  color: #65bec2;
}

/*-----Product Images------*/
.woocommerce div.flex-viewport,
.woocommerce-product-gallery__wrapper,
.woocommerce div.product div.images .flex-control-thumbs li,
.woocommerce ul.products li.product a img,
.woocommerce-cart table.cart img {
  min-width: 64px;
  min-height: 64px;
  border: 1px solid #d3ced2;
  overflow: hidden;
}

.flex-viewport .woocommerce-product-gallery__wrapper {
  border: none; /* Remove duplicated borders */
  border-radius: 0 !important; /* Fix duplicated radius */
  margin: 0 !important; /* Fix duplicated margin */
}

/*----------Secondary Buttons-------------*/
.woocommerce button.button.alt,
.woocommerce a.button,
.woocommerce ul.products li.product .button,
.woocommerce #review_form #respond .form-submit input,
.woocommerce a.button.alt,
.woocommerce button.button {
  background: #666666;
  border: 1px solid #666666;
  font-size: 12px;
  border-radius: 0px;
  letter-spacing: 1px;
  text-transform: uppercase;
  color: #ffffff;
  line-height: 1.2;
  text-align: center;
  padding: 16px 24px;
  outline: none;
  font-family: inherit;
  border-radius: 4px;
  display: flex;
  flex-direction: row;
  justify-content: center;
}

/*----------Secondary Hovered-------------*/
.woocommerce button.button.alt:hover,
.woocommerce a.button:hover,
.woocommerce ul.products li.product .button:hover,
.woocommerce #review_form #respond .form-submit input:hover,
.woocommerce a.button.alt:hover,
.woocommerce button.button:hover {
  background: #999999;
  border: 1px solid #999999;
  color: #ffffff;
}
/*----------Tertiary Buttons-------------*/
.woocommerce button.button:disabled,
.woocommerce button.button:disabled[disabled],
.woocommerce .widget_shopping_cart .buttons a,
.woocommerce.widget_shopping_cart .buttons a,
.woocommerce .widget_price_filter .price_slider_amount .button,
.woocommerce a.added_to_cart,
.woocommerce .cart .button,
.woocommerce .cart input.button,
.woocommerce table.my_account_orders .button,
td a.woocommerce-MyAccount-downloads-file.button.alt {
  line-height: 1.2;
  text-align: center;
  text-transform: uppercase;
  letter-spacing: 1px;
  font-weight: 700;
  font-size: 12px;
  background: #ffffff;
  border: 1px solid #65bec2;
  color: #65bec2;
  padding: 16px 24px;
  outline: none;
  font-family: inherit;
  border-radius: 4px;
}

/*----------Tertiary Buttons Hovered-------------*/
.woocommerce button.button:disabled:hover,
.woocommerce button.button:disabled[disabled]:hover,
.woocommerce .widget_shopping_cart .buttons a:hover,
.woocommerce.widget_shopping_cart .buttons a:hover,
.woocommerce a.added_to_cart:hover,
.woocommerce .cart .button:hover,
.woocommerce .cart input.button:hover,
.woocommerce table.my_account_orders .button:hover,
td a.woocommerce-MyAccount-downloads-file.button.alt:hover {
  background: #ffffff;
  border: 1px solid #6799b2;
  color: #6799b2;
}

/*---Disabled Buttons---*/
.woocommerce #respond input#submit.disabled,
.woocommerce #respond input#submit:disabled,
.woocommerce #respond input#submit:disabled[disabled],
.woocommerce a.button.disabled, .woocommerce a.button:disabled,
.woocommerce a.button:disabled[disabled],
.woocommerce button.button.disabled,
.woocommerce button.button:disabled,
.woocommerce button.button:disabled[disabled],
.woocommerce input.button.disabled,
.woocommerce input.button:disabled,
.woocommerce input.button:disabled[disabled] {
  filter: grayscale(100%);
}

/*----------Links-------------*/
.woocommerce a.wcppec-checkout-buttons__button,
.woocommerce ul.product_list_widget li a,
.woocommerce ul.product-categories a,
.woocommerce .widget_layered_nav_filters ul li a,
.woocommerce .woocommerce-widget-layered-nav-list__item a,
.woocommerce .wc-layered-nav-rating a,
.woocommerce div.tagcloud a,
.woocommerce ul.products li.product .woocommerce-loop-category__title,
.woocommerce ul.products li.product .woocommerce-loop-product__title,
h2.woocommerce-loop-category__title,
.comment-form-rating a,
.woocommerce .download-product a,
a.woocommerce-remove-coupon,
.woocommerce a.shipping-calculator-button,
.woocommerce a.remove,
.woocommerce a.reset_variations,
.woocommerce .product-name a,
.woocommerce-info a,
.woocommerce-error a,
.woocommerce-message a,
.woocommerce-checkout-payment a,
.woocommerce-LostPassword a,
.woocommerce-Address-title a,
.woocommerce-MyAccount-navigation-link a,
.woocommerce-MyAccount-content a,
a.woocommerce-review-link,
.posted_in a,
.tagged_as a,
.woocommerce .woocommerce-breadcrumb a {
  color: #6799b2;
  font-weight: 400;
  font-family: inherit;
  text-decoration: none;
}

/*----------Links Hovered-------------*/
.woocommerce a.wcppec-checkout-buttons__button:hover,
.woocommerce ul.product_list_widget li a:hover,
.woocommerce ul.product-categories a:hover,
.woocommerce .widget_layered_nav_filters ul li a:hover,
.woocommerce .woocommerce-widget-layered-nav-list__item a:hover,
.woocommerce div.tagcloud a:hover,
.comment-form-rating a:hover,
.woocommerce .download-product a:hover,
a.woocommerce-remove-coupon:hover,
.woocommerce a.shipping-calculator-button:hover,
.woocommerce a.remove:hover,
a.reset_variations:hover .product-name a:hover,
.woocommerce .product-name a:hover,
.woocommerce-info a:hover,
.woocommerce-error a:hover,
.woocommerce-message a:hover,
.woocommerce-checkout-payment a:hover,
.woocommerce-LostPassword a:hover,
.woocommerce-Address-title a:hover,
.woocommerce-MyAccount-navigation-link a:hover,
.woocommerce-MyAccount-content a:hover,
a.woocommerce-review-link:hover,
.posted_in a:hover,
.tagged_as a:hover,
.woocommerce .woocommerce-breadcrumb a:hover {
  color: #65bec2;
  text-decoration: underline;
}

/*-----------Labels----------------*/
.woocommerce div.product form.cart .variations label,
.woocommerce form label {
  font-size: 12px;
  color: #666666;
  margin-top: 8px;
  font-weight: 400;
  font-style: normal;
}

/*---------------Placeholders----------------*/
.woocommerce input[type="search"]::placeholder,
.woocommerce-page table.cart td.actions .input-text::placeholder,
.woocommerce form .form-row .input-text::placeholder,
.woocommerce-page form .form-row .input-text::placeholder {
  color: #d3ced2;
  font-family: inherit;
}

/*---------------Dropdowns----------------*/
.select2-container--default .select2-selection--single,
.woocommerce div.product form.cart .variations select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  color: #000000;
  background: #ffffff;
  font-family: inherit;
  box-sizing: border-box;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  border-radius: 4px;
}

.select2-container--default .select2-results__option--highlighted[aria-selected],
.select2-container--default .select2-results__option--highlighted[data-selected] {
  background: #6799b2;
  color: #ffffff;
  outline: none;
}

.select2-container--default .select2-results__option[data-selected=true] {
  background: #65bec2;
  color: #ffffff;
  outline: none;
}

.select2-results__option {
  padding: 8px 12px;
  font-size: 14px;
  -webkit-font-smoothing: antialiased;
}

.select2-dropdown {
  border-radius: 0;
}

.woocommerce .select2-container--default .select2-selection--single .select2-selection__rendered {
  line-height: 1.6;
  color: #000000;
  padding: 0;
  min-height: 20px;
  padding-left: 0;
  outline: none;
}
.select2-container--open .select2-dropdown--below {
  padding: 0;
}

.woocommerce .select2-container--default .select2-selection--single .select2-selection__arrow {
  background: url(https://lebobfest.fr/wp-content/plugins/oxygen-woocommerce/elements/assets/chevron-down.svg);
  background-size: 6px;
  background-repeat: no-repeat;
  background-position: 4px center;
  height: 100%;
}

.woocommerce .select2-container--default .select2-selection--single .select2-selection__clear {
    display: none;
    pointer-events: none;
}

.woocommerce .select2-container--default .select2-selection--single .select2-selection__arrow b {
  display: none;
}

/*---------------Headings----------------*/
.woocommerce .oxy-product-info h2,
.woocommerce .widget_recent_reviews h2,
.woocommerce .widget_top_rated_products h2,
.woocommerce .widget_shopping_cart h2,
.woocommerce .widget_products h2,
.woocommerce .widget_product_categories h2,
.woocommerce .widget_layered_nav_filters h2,
.woocommerce .woocommerce-widget-layered-nav h2,
.woocommerce .widget_rating_filter h2,
.woocommerce .widget_price_filter h2,
.woocommerce div.widget_product_tag_cloud h2,
.woocommerce h1.page-title,
.woocommerce h1.product_title,
.woocommerce section.related.products h2,
.oxy-product-upsells > :is(h1, h2, h3, h4, h5, h6),
.woocommerce h2.woocommerce-Reviews-title,
.woocommerce span.comment-reply-title,
.woocommerce-Tabs-panel h2,
h2.woocommerce-order-downloads__title,
.woocommerce-orders article header h1,
.woocommerce-account article header h1,
.woocommerce-downloads article header h1,
.woocommerce-edit-address article header h1,
.woocommerce-account h2,
.woocommerce-Address-title h3,
.woocommerce-MyAccount-content h3,
.woocommerce-EditAccountForm legend,
h1.oxy-woo-archive-title,
h2.woocommerce-column__title,
h2.woocommerce-order-downloads__title,
h2.woocommerce-order-details__title,
.woocommerce-billing-fields h3,
.woocommerce-checkout h3,
.woocommerce .cart_totals h2,
.woocommerce .cross-sells h2 {
  color: #000000;
  font-weight: 700;
  line-height: 1.2;
  margin-bottom: 8px;
}

/*--------Prices and Quantity------------*/
.woocommerce .price_label .from,
.woocommerce .price_label .to,
.woocommerce ul.products li.product .price,
.product-quantity,
.woocommerce .price ins,
.woocommerce-Price-amount,
.woocommerce-loop-category__title .count,
.woocommerce .price {
  color: #000000;
  font-weight: 700;
  font-size: 16px;
  background: transparent;
  text-decoration: none;
}

/*----Sale Price-----*/
.woocommerce .product_list_widget del span.woocommerce-Price-amount,
.woocommerce ul.products li.product .price del,
.woocommerce .price del,
.woocommerce .price del .woocommerce-Price-amount {
  font-size: 12px;
  font-weight: 200;
  color: #666666;
}

.woocommerce div.product p.price,
.woocommerce div.product span.price,
.woocommerce div.product span.price ins {
  color: #000000;
  font-weight: 700;
  font-size: inherit;
}

.woocommerce div.product p.price {
  font-size: 16px;
}

.woocommerce div.product p.price ins,
.woocommerce .oxy-woo-element .price ins {
  text-decoration: none;
}

.woocommerce div.product p.price del,
.woocommerce div.product span.price del,
.woocommerce p.price del,
.woocommerce ul.products li.product .price del {
  opacity: 1;
  display: block;
}

/*--------------Table Headings----------------*/
.woocommerce-cart table.cart th,
.woocommerce-cart .cart-collaterals .cart_totals table th,
.woocommerce table.shop_table th,
.woocommerce table.shop_table tfoot th {
  font-weight: 400;
  color: #666666;
  font-size: 10px;
  text-align: left;
  text-transform: uppercase;
  letter-spacing: 1px;
}

/*-------------------Texts---------------------*/
.woocommerce .woocommerce-mini-cart__total strong,
.woocommerce .woocommerce-mini-cart span.quantity,
.woocommerce .widget_product_categories span.count,
.woocommerce .woocommerce-widget-layered-nav-list__item span,
.woocommerce-product-attributes-item__value p,
.woocommerce-error,
.woocommerce-table--order-downloads,
.woocommerce-Address address,
.woocommerce-orders-table,
.woocommerce-table,
ul.woocommerce-shipping-methods,
p.woocommerce-shipping-destination,
.woocommerce-column--shipping-address address,
.woocommerce-column--billing-address address,
.woocommerce-order p,
.woocommerce .product-name,
.woocommerce .product-total,
.oxy-product-stock p,
.oxy-product-description p,
.woocommerce-Reviews .comment-text p,
.product .summary .product_meta,
.woocommerce-Tabs-panel,
.woocommerce-product-details__short-description p,
.woocommerce-form-track-order p,
.woocommerce-checkout-payment p,
.checkout_coupon p,
.woocommerce-ResetPassword p,
.woocommerce-info,
.woocommerce-error,
.woocommerce-message,
.woocommerce-MyAccount-content p,
.woocommerce-breadcrumb,
p.woocommerce-result-count {
  color: #666666;
  font-weight: 400;
  line-height: 1.6;
  font-size: 16px;
  font-style: normal;
}

/*------------Bold Texts---------------*/
.woocommerce-product-attributes-item__label,
.woocommerce-error strong,
.woocommerce-MyAccount-content strong,
.woocommerce-shipping-destination strong,
.woocommerce p.order-info mark,
.woocommerce-MyAccount-content mark.order-number,
.woocommerce-MyAccount-content mark.order-date,
.woocommerce-MyAccount-content mark.order-status,
.woocommerce-order-overview strong {
  color: #000000;
  font-weight: 700;
  font-family: inherit;
  background: transparent;
}

/*--------------------Badges---------------------*/
.woocommerce ul.products li.product .onsale,
.woocommerce span.onsale {
  background: #65bec2;
  font-size: 12px;
  padding: 6px 12px;
  line-height: 1.2;
  border-radius: 20px;
  min-width: 0;
  min-height: 0;
  margin: 0;
  top: 12px;
  left: 12px;
  right: auto;
  position: absolute;
}

/* ----------------- */


/*-------------Product Tabs(description, addtl info, reviews) - single product--------------*/

.woocommerce div.product .oxy-woo-element .woocommerce-tabs .panel,
.woocommerce .oxy-woo-element div.product .woocommerce-tabs .panel {
  margin-bottom: 0;
  padding: 20px 0;
}
.woocommerce div.product .oxy-woo-element .woocommerce-tabs ul.tabs,
.woocommerce .oxy-woo-element div.product .woocommerce-tabs ul.tabs {
  padding-left: 5px;
  display: flex;
  text-align: center;
  margin-bottom: 0;
  flex-shrink: 0;
}

.woocommerce div.product .oxy-woo-element .woocommerce-tabs ul.tabs li,
.woocommerce .oxy-woo-element div.product .woocommerce-tabs ul.tabs li {
  border-radius: 0;
  padding: 0;
  margin: 0 5px;
  display: flex;
  align-items: center;
}
.woocommerce .oxy-woo-element div.product .woocommerce-tabs ul.tabs li::before,
.woocommerce div.product .oxy-woo-element .woocommerce-tabs ul.tabs li::before {
  display: none;
}
.woocommerce .oxy-woo-element div.product .woocommerce-tabs ul.tabs li::after,
.woocommerce div.product .oxy-woo-element .woocommerce-tabs ul.tabs li::after {
  display: none;
}
.woocommerce .oxy-woo-element div.product .woocommerce-tabs ul.tabs li a,
.woocommerce div.product .oxy-woo-element .woocommerce-tabs ul.tabs li a {
  width: 100%;
  color: #999;
  font-size: 12px;
  text-transform: uppercase;
  letter-spacing: 1px;
  outline: none;
  padding: 16px 48px;
  z-index: 1000;
  font-weight: 400;
  border-radius: 0;
  word-break: break-word;
}
.woocommerce .oxy-woo-element div.product .woocommerce-tabs ul.tabs li a:hover,
.woocommerce div.product .oxy-woo-element .woocommerce-tabs ul.tabs li a:hover {
  color: #65bec2;
}
.woocommerce .oxy-woo-element div.product .woocommerce-tabs ul.tabs li.active,
.woocommerce div.product .oxy-woo-element .woocommerce-tabs ul.tabs li.active {
  background: white;
  border-bottom-color: white;
}
.woocommerce .oxy-woo-element div.product .woocommerce-tabs ul.tabs li.active a,
.woocommerce
  div.product
  .oxy-woo-element
  .woocommerce-tabs
  ul.tabs
  li.active
  a {
  color: #000000;
}

@media (max-width: 640px) {
  .woocommerce .oxy-woo-element div.product .woocommerce-tabs ul.tabs,
  .woocommerce div.product .oxy-woo-element .woocommerce-tabs ul.tabs {
    flex-direction: column;
    padding: 0;
    margin-bottom: 5px;
  }
  .woocommerce .oxy-woo-element div.product .woocommerce-tabs ul.tabs li,
  .woocommerce div.product .oxy-woo-element .woocommerce-tabs ul.tabs li {
    margin: 5px 0;
  }
  .woocommerce .oxy-woo-element div.product .woocommerce-tabs ul.tabs::before,
  .woocommerce div.product .oxy-woo-element .woocommerce-tabs ul.tabs::before {
    border-bottom: none;
  }
  .woocommerce .oxy-woo-element div.product .woocommerce-tabs ul.tabs li.active,
  .woocommerce
    div.product
    .oxy-woo-element
    .woocommerce-tabs
    ul.tabs
    li.active {
    border-bottom-color: #d3ced2;
  }
}

/* tabs panel content (single product, any tab content) */

.woocommerce .oxy-woo-element table.shop_attributes th,
.woocommerce .oxy-woo-element table.shop_attributes td {
  border-top: 1px solid #d3ced2;
  padding: 8px;
}

/* single product - add to cart */

.woocommerce .oxy-product-cart-button,
.woocommerce .oxy-woo-element div.product form.cart {
  width: 100%;
  max-width: 360px;
}

.woocommerce .oxy-woo-element div.product .single_add_to_cart_button,
.woocommerce .single_add_to_cart_button {
  align-self: stretch;
  flex-grow: 1;
  border-radius: 0;
}

.woocommerce .oxy-woo-element div.product form.cart,
.woocommerce .oxy-product-cart-button form.cart,
.woocommerce div.product form.cart {
  display: flex;
  flex-wrap: wrap;
}

.woocommerce .oxy-woo-element div.product form.variations_form.cart,
.woocommerce .oxy-product-cart-button form.variations_form.cart {
  display: flex;
  flex-direction: column;
  align-items: stretch;
}

.woocommerce .oxy-woo-element div.product form.cart td.value,
.woocommerce .oxy-product-cart-button td.value {
  padding: 0;
}

.woocommerce .oxy-woo-element div.product .woocommerce-variation-add-to-cart,
.woocommerce .woocommerce-variation-add-to-cart {
  display: flex;
  width: 100%;
}

/* Primary Buttons */
.woocommerce .widget_shopping_cart .buttons a.checkout.wc-forward,
.woocommerce button[type=submit],
.woocommerce button[name=woocommerce-form-login__submit],
.woocommerce button[name=save_account_details],
.woocommerce button[name=save_address],
.woocommerce .oxy-woo-element div.product form.cart button.button.alt,
.woocommerce .oxy-product-cart-button button.button.alt,
.woocommerce div.product form.cart .button {
  background-color: #65bec2;
  color: #ffffff;
  border-radius: 0;
  letter-spacing: 1px;
  text-transform: uppercase;
  padding: 16px 24px;
  font-size: 12px;
  text-align: center;
  border: 1px solid #65bec2;
  border-radius: 4px;
  line-height: 1.2;
  font-weight: 700;
  font-family: inherit;
  outline: none;
  cursor: pointer;
}
.woocommerce button[type=submit]:hover,
.woocommerce button[name=woocommerce-form-login__submit]:hover,
.woocommerce button[name=save_account_details]:hover,
.woocommerce button[name=save_address]:hover,
.woocommerce .oxy-woo-element div.product form.cart button.button.alt:hover,
.woocommerce .oxy-product-cart-button button.button.alt:hover,
.woocommerce div.product form.cart .button:hover {
  background-color: #6799b2;
  border: 1px solid #6799b2;
}

.woocommerce .oxy-woo-element div.product form.cart button.button.alt.disabled,
.woocommerce button.button.alt.disabled {
  background: #cccccc !important;
  border: 1px solid #cccccc !important;
  opacity: 1;
}

.woocommerce .quantity .qty {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  min-width: 56px;
  padding: 8px 9px;
  margin-right: 12px;
  background: url(https://lebobfest.fr/wp-content/plugins/oxygen-woocommerce/elements/assets/chevron-down.svg),
    url(https://lebobfest.fr/wp-content/plugins/oxygen-woocommerce/elements/assets/chevron-up.svg), #ffffff;
  background-size: 6px, 6px;
  background-repeat: no-repeat, no-repeat;
  background-position: right 0.8em bottom calc(50% - 5px), right 0.8em top calc(50% - 5px);
  height: 100%;
}

.woocommerce table.variations tr {
  border-top: none;
}

.woocommerce .oxy-woo-element div.product form.cart .variations,
.woocommerce div.product .oxy-product-cart-button form.cart .variations {
  margin-bottom: 0;
}

.woocommerce .oxy-woo-element div.product form.cart table.variations tr,
.woocommerce table.variations tr {
  display: flex;
  flex-direction: column;
}

.woocommerce
  .oxy-woo-element
  div.product
  form.cart
  table.variations
  tr
  td
  label,
.woocommerce .oxy-product-cart-button table.variations tr td label {
  font-size: 12px;
  margin-right: 12px;
}

.woocommerce .oxy-woo-element div.product form.cart table.variations tr td a,
.woocommerce .oxy-product-cart-button table.variations tr td a {
  font-size: 12px;
}

.woocommerce .oxy-woo-element div.product form.cart a.reset_variations:before,
.woocommerce .oxy-product-cart-button table.variations tr td a:before {
  content: "× ";
}

.woocommerce .oxy-woo-element div.product form.cart .variations,
.woocommerce .oxy-product-cart-button div.product form.cart .variations {
  margin-bottom: 0;
}

.woocommerce .woocommerce-ordering select,
.woocommerce .oxy-woo-element div.product form.cart .variations select,
.woocommerce div.product .oxy-product-cart-button form.cart .variations select,
.woocommerce div.product form.cart .variations select,
.woocommerce form.cart .variations select {
  appearance: none;
  -moz-appearance: none;
  -webkit-appearance: none;
  line-height: 1.2;
  cursor: pointer;
  width: 100%;
  position: relative;
  background: url(https://lebobfest.fr/wp-content/plugins/oxygen-woocommerce/elements/assets/chevron-down.svg), #ffffff;
  background-size: 6px;
  padding-right: 24px;
  background-repeat: no-repeat;
  background-position: right 0.8em center;
}

.woocommerce input[type="number"]::-webkit-inner-spin-button,
.woocommerce input[type="number"]::-webkit-outer-spin-button {
  margin-right: -9px;
  opacity: 0.01;
  width: 24px;
  height:48px;
  cursor: pointer;
}

/* single product - rating below title / rating element */

.woocommerce .oxy-woo-element div.product .woocommerce-product-rating,
.woocommerce .oxy-product-rating .woocommerce-product-rating,
.woocommerce div.product .oxy-product-rating .woocommerce-product-rating {
  display: flex;
  align-items: center;
  margin-bottom: 8px;
}

.woocommerce
  .oxy-woo-element
  div.product
  .woocommerce-product-rating
  .star-rating::before,
.woocommerce .oxy-product-rating .star-rating::before {
  position: relative;
  color: #d3d3d3;
}

.woocommerce
  .oxy-woo-element
  div.product
  .woocommerce-product-rating
  .star-rating,
.woocommerce .oxy-product-rating .woocommerce-product-rating .star-rating {
  width: auto;
  letter-spacing: 2px;
  margin: 0 0 0 0;
}

.woocommerce
  .oxy-woo-element
  div.product
  .woocommerce-product-rating
  a.woocommerce-review-link,
.woocommerce .oxy-product-rating a.woocommerce-review-link {
  font-size: 12px;
}
.woocommerce
  .oxy-woo-element
  div.product
  .woocommerce-product-rating
  .star-rating
  span,
.woocommerce .oxy-product-rating .woocommerce .star-rating span {
  color: #65bec2;
}

/* Transitions */
.woocommerce .flex-control-thumbs li,
.woocommerce .woocommerce-widget-layered-nav-list .woocommerce-widget-layered-nav-list__item,
.select2-search--dropdown .select2-search__field,
.woocommerce
  label.woocommerce-form__label.woocommerce-form__label-for-checkbox
  span::before,
.woocommerce ul.tabs li,
.woocommerce .woocommerce-product-gallery__trigger:after,
.woocommerce .woocommerce-product-gallery__trigger:before,
.woocommerce img:not(.zoomImg):not(.pswp__img),
.woocommerce textarea,
.woocommerce .checkbox,
.woocommerce .select2-selection,
.woocommerce input,
.woocommerce button,
.woocommerce select,
.woocommerce a {
  transition: all ease 0.2s;
}
/* End of Transitions */

/* Input Styles */
.woocommerce-cart table.cart td.actions .coupon .input-text,
.select2-container--default .select2-search--dropdown .select2-search__field,
.woocommerce textarea,
.select2-dropdown,
.woocommerce .select2-selection,
.woocommerce input[type="search"],
.woocommerce input[type="text"],
.woocommerce input[type="number"],
.woocommerce input[type="tel"],
.woocommerce input[type="email"],
.woocommerce input[type="password"],
.woocommerce select {
  height: auto;
  font-size: 14px;
  border: 1px solid #d3ced2;
  background: #ffffff;
  color: #000000;
  outline: none;
  font-family: inherit;
  padding: 8px 12px;
  border-radius: 4px;
  resize: none;
}
/* Focus State */
.woocommerce-cart table.cart td.actions .coupon .input-text:focus,
.select2-container--default .select2-search--dropdown .select2-search__field:focus,
.woocommerce form .form-row textarea:focus,
.woocommerce textarea:focus,
.select2-dropdown:focus,
.woocommerce .select2-selection:focus,
.woocommerce input[type="search"]:focus,
.woocommerce input[type="text"]:focus,
.woocommerce input[type="number"]:focus,
.woocommerce input[type="tel"]:focus,
.woocommerce input[type="email"]:focus,
.woocommerce input[type="password"]:focus,
.woocommerce select:focus {
  border: 1px solid #65bec2;
  box-shadow: 0 0 5px #65bec2;
}
/* End of Inputs */

/* Custom Checkbox */
.woocommerce-form-login input[type="checkbox"],
.oxy-woo-checkout input[type="checkbox"] {
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  opacity: 0.01;
  display: none !important;
}
.woocommerce-form-login
  label.woocommerce-form__label.woocommerce-form__label-for-checkbox.woocommerce-form-login__rememberme,
.oxy-woo-checkout
  label.woocommerce-form__label.woocommerce-form__label-for-checkbox {
  position: relative;
  cursor: pointer;
  padding-left: 16px;
  margin-top: 0;
}
.woocommerce-form-login
  label.woocommerce-form__label.woocommerce-form__label-for-checkbox.woocommerce-form-login__rememberme span,
.oxy-woo-checkout
  label.woocommerce-form__label.woocommerce-form__label-for-checkbox span{
    margin-left: 18px;
}
.woocommerce-form-login
  label.woocommerce-form__label.woocommerce-form__label-for-checkbox.woocommerce-form-login__rememberme
  span::before,
.oxy-woo-checkout
  label.woocommerce-form__label.woocommerce-form__label-for-checkbox
  span::before {
  width: 24px;
  height: 24px;
  border: 1px solid #d3ced2;
  background-color: #ffffff;
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  background-size: 50%;
  border-radius: 4px;
  background-repeat: no-repeat;
  background-position: center center;
}
input[type="checkbox"]:checked ~ span::before,
input[type="checkbox"]:checked ~ label span::before {
  background: url(https://lebobfest.fr/wp-content/plugins/oxygen-woocommerce/elements/assets/check-mark.svg), #ffffff;
}
.woocommerce-form-login
  label.woocommerce-form__label.woocommerce-form__label-for-checkbox.woocommerce-form-login__rememberme {
  margin-top: 34px;
}
.oxy-woo-checkout
  label.woocommerce-form__label.woocommerce-form__label-for-checkbox
  span::before {
  margin-top: -4px;
}
/* End of Custom Checkbox */

/* Product Column Fix */
.woocommerce-page.columns-1 ul.products li.product,
.woocommerce.columns-1 ul.products li.product {
  width: 100%;
}
.woocommerce-page.columns-2 ul.products li.product,
.woocommerce.columns-2 ul.products li.product {
  margin: 0;
  width: 50%;
}
.woocommerce-page.columns-3 ul.products li.product,
.woocommerce.columns-3 ul.products li.product {
  margin: 0;
  width: 33.33%;
}
.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product {
  width: 25%;
  display: flex;
  flex-direction: column;
  margin: 0;
  padding: 20px;
}
.woocommerce-page.columns-5 ul.products li.product,
.woocommerce.columns-5 ul.products li.product {
  margin: 0;
  width: 20%;
}
.woocommerce-page.columns-6 ul.products li.product,
.woocommerce.columns-6 ul.products li.product {
  margin: 0;
  width: 16.6%;
}
/* End of Product Column Fix */

/*--- Radio Buttons Style ---*/
.woocommerce input[type=radio] {
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  width: 24px;
  height: 24px;
  background: #ffffff;
  border: 1px solid #d3ced2;
  border-radius: 100%;
  outline: none;
  cursor: pointer;
}

/* WooCommerce Payments plugin compatibility */
.woocommerce input[type=radio].woocommerce-SavedPaymentMethods-tokenInput {
  width: 20px !important;
  height: 20px !important;
  margin: 6px 8px 0 0 !important;
}

.woocommerce input[type=radio]:hover {
  border: 1px solid #65bec2;
  box-shadow: 0 0 5px #65bec2;
}

.woocommerce input[type=radio]:checked {
  background: #000000;
  box-shadow: inset 0 0 0 8px #ffffff;
}

/* WooCommerce Payments plugin compatibility */
.woocommerce input[type=radio].woocommerce-SavedPaymentMethods-tokenInput:checked {
  box-shadow: inset 0 0 0 4px #ffffff;
}

.woocommerce input[type=radio]:checked:hover {
  box-shadow: inset 0 0 0 8px #ffffff, 0 0 5px #65bec2;
}

/*--------------------Tables and Forms Style-------------------------*/
.oxy-woo-order-tracking form,
.woocommerce form.woocommerce-ResetPassword.lost_reset_password,
.woocommerce .woocommerce-EditAccountForm,
.woocommerce .woocommerce-address-fields,
.woocommerce-cart .cart-collaterals .cart_totals table,
.woocommerce .col2-set,
.woocommerce-form-coupon,
.woocommerce #reviews #comments ol.commentlist li .comment-text,
ul.woocommerce-order-overview,
.woocommerce form.login,
.woocommerce form.register,
.woocommerce form.checkout_coupon,
.woocommerce table.shop_table {
  border: 1px solid #d3ced2;
  border-top: 3px solid #65bec2;
  border-radius: 0;
  background: #ffffff;
  padding: 20px;
  border-collapse: collapse;
  box-shadow: var(--box-shadow) 0 10px 20px;
}
fieldset {
  background: transparent;
}
.woocommerce table tr {
  border-top: 1px solid #d3ced2;
}
.woocommerce table.shop_table td,
.woocommerce table.shop_table tfoot td,
.woocommerce table.shop_table tfoot th,
.woocommerce table.shop_table th {
  border: none;
  padding: 12px 20px;
  font-weight: 400;
  color: #666666;
}
/* End of Tables and Forms Styles */



/* Notification Styles */
.woocommerce-info, .woocommerce-error, .woocommerce-message {
  padding-right: 20px;
  border-bottom: 1px solid #d3ced2;
  border-left: 1px solid #d3ced2;
  border-right: 1px solid #d3ced2;
  border-radius: 0;
  background: #ffffff;
  border-collapse: collapse;
  box-shadow: var(--box-shadow) 0 10px 20px;
}
/* Info */
.woocommerce-info::before {
  color: #00adef;
}
.woocommerce-info {
  border-top-color: #00adef;
}
/* Error */
.woocommerce-error::before {
  color: #e96199;
}
.woocommerce-error {
  border-top-color: #e96199;
}
/* Message */
.woocommerce-message::before {
  color: #65bec2;
}
.woocommerce-message {
  border-top-color: #65bec2;
}
/* End of Notification Sytles */


/* Shop, Uppsells, Related Product Shared Styles Styles */
.woocommerce ul.products {
  display: flex;
  flex-wrap: wrap;
  margin: -10px -20px 20px;
}
.woocommerce ul.products li.product .button {
  margin-top: auto;
}
.woocommerce a.added_to_cart {
  margin-top: 12px;
}
.woocommerce-loop-product__link {
  display: flex;
  flex-direction: column;
}

/* Product Info Shared Styles */

.woocommerce .oxy-product-info,
.woocommerce .oxy-product-tabs {
  width: 100%;
}

.woocommerce table.shop_attributes {
  border-top: 1px solid #d3ced2;
  border-collapse: collapse;
}

.woocommerce table.shop_attributes tr:nth-child(even) td,
.woocommerce table.shop_attributes tr:nth-child(even) th {
  background: transparent;
}

.woocommerce table.shop_attributes th,
.woocommerce table.shop_attributes td {
  border-bottom: 1px solid #d3ced2;
  text-align: left;
}


/* Widgets Headings */
.ct-widget .widget.woocommerce .widgettitle {
  font-size: px;
  font-weight: ;
  font-family: ;
}
/* End of Widgets Headings */


/* Search Products Widget */
.woocommerce form.woocommerce-product-search {
  width: 100%;
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
}
.woocommerce input.search-field {
  flex-grow: 1;
  margin-right: 8px;
  min-width: 120px;
}
/* End of Widget */



/* Product Tags Cloud Widget */
.woocommerce div.tagcloud {
  line-height: 1.2;
}
/* End of Widget */



/* Filter by Price Widget */
.woocommerce .widget_price_filter .ui-slider {
  margin: 20px 0;
}
.woocommerce .widget_price_filter .price_slider_wrapper .ui-widget-content {
  background-color: #d3ced2;
}
.woocommerce .widget_price_filter .ui-slider .ui-slider-handle {
  width: 24px;
  height: 24px;
  background-color: #65bec2;
  top: -8px;
}
.woocommerce .widget_price_filter .ui-slider .ui-slider-range {
  background-color: #65bec2;
}
.woocommerce .widget_price_filter .price_slider_amount {
  display: flex;
  flex-direction: row;
  align-items: center;
}
.woocommerce .widget_price_filter .price_slider_amount .button {
  margin-right: 12px;
}
.woocommerce .price_label {
  text-align: left;
  line-height: 1.6;
}
/* End of Widget */



/* Rating Filter Widget */
.woocommerce .widget_rating_filter ul li a {
  display: flex;
  float: left;
  align-items: center;
}
.woocommerce .widget_rating_filter ul li.chosen a::before {
  color: #d3ced2;
  position: relative;
  content: '×';
  margin-right: 4px;
  top: -1px;
}
.woocommerce .widget_rating_filter ul li.chosen:hover a::before {
  color: #65bec2;
}
/* End of Widget */



/* Attributes Filter Widget */
.woocommerce .woocommerce-widget-layered-nav-list .woocommerce-widget-layered-nav-list__item--chosen a::before {
  color: #d3ced2;
  position: relative;
  content: '×';
  margin-right: 4px;
  top: -1px;
}
.woocommerce .woocommerce-widget-layered-nav-list .woocommerce-widget-layered-nav-list__item--chosen:hover a::before {
  color: #65bec2;
}
/* End of Widget */



/* Active Filters Widget */
.woocommerce .widget_layered_nav_filters ul li a::before {
  color: #d3ced2;
  position: relative;
  content: '×';
  margin-right: 4px;
  top: -1px;
}
.woocommerce .widget_layered_nav_filters ul li:hover a::before {
  color: #65bec2;
}
.woocommerce .widget_layered_nav_filters ul li:hover span.woocommerce-Price-amount {
  color: #65bec2;
}
/* End of Widget */



/* Product Categories Widget */
.woocommerce .widget_product_categories ul {
  padding-left: 20px;
  list-style: none;
}
.woocommerce .widget_product_categories ul li::before {
  color: #d3ced2;
  content: '•';
  position: relative;
  margin-right: 8px;
  margin-left: -20px;
}
.woocommerce .widget_product_categories ul.product-categories {
  margin-top: 0;
}
.woocommerce .widget_product_categories .select2-container .select2-selection--single {
  height: auto;
  border-color: #d3ced2;
  background: url(https://lebobfest.fr/wp-content/plugins/oxygen-woocommerce/elements/assets/chevron-down.svg), #ffffff;
  background-size: 6px;
  background-repeat: no-repeat;
  background-position: right 0.8em center;
}
.woocommerce .widget_product_categories .select2-container .select2-selection--single:focus {
  border-color: #65bec2;
}
.woocommerce .widget_product_categories .select2-container--default .select2-selection--single .select2-selection__arrow {
  display: none;
}
.woocommerce .select2-container--open .select2-dropdown--below {
  border-color: #d3ced2
}
.woocommerce .select2-container--open .select2-dropdown--above {
  padding: 0;
  border-color: #d3ced2;
}
.woocommerce .select2-container--default .select2-search--dropdown .select2-search__field {
  border-color: #d3ced2;
}
.woocommerce .select2-container--default .select2-search--dropdown .select2-search__field:focus {
  border-color: #65bec2;
}
.woocommerce .select2-container--default .select2-selection--single .select2-selection__clear {
  font-weight: 300;
  color: #d3ced2;
  font-size: 24px;
  line-height: 1;
}
.woocommerce .select2-container--default .select2-selection--single:hover .select2-selection__clear {
  color: #65bec2;
}
/* End of Widget */



/* Products, Cart Widgets */
.woocommerce .product_list_widget ins {
  text-decoration: none;
}
.woocommerce .product_list_widget del {
  color: #666666;
}
.woocommerce ul.product_list_widget li img {
  border: 1px solid #d3ced2;
  width: 40px;
  float: left;
  margin-bottom: 16px;
  margin-right: 12px;
  margin-left: 0;
  margin-top: 4px;
}
.woocommerce ul.product_list_widget li {
  border-bottom: 1px solid #d3ced2;
  margin-bottom: 4px;
  padding-bottom: 8px;
}
.woocommerce .product_list_widget .reviewer {
  font-size: 12px;
  color: #666666;
}
.woocommerce .widget_shopping_cart .cart_list li a.remove, .woocommerce.widget_shopping_cart .cart_list li a.remove {
  right: 0;
  left: auto;
  color: #d3ced2 !important;
  font-weight: 300;
}
.woocommerce .widget_shopping_cart .cart_list li a.remove:hover, .woocommerce.widget_shopping_cart .cart_list li a.remove:hover {
  color: #65bec2 !important;
  background: none;
  text-decoration: none;
}
.woocommerce .widget_shopping_cart .cart_list li, .woocommerce.widget_shopping_cart .cart_list li {
  padding-left: 0;
}
.woocommerce .widget_shopping_cart .buttons a,
.woocommerce.widget_shopping_cart .buttons a {
  margin-right: 0;
}
/* End of Widget */

/*---Safari Row Hotfix---*/
.woocommerce .products ul::after,
.woocommerce .products ul::before,
.woocommerce ul.products::after,
.woocommerce ul.products::before {
  width: 100%;
}

/*---Product Title Hotfix (Must be in product-title.css)---*/
.woocommerce h1.product_title.oxy-product-title {
  margin: 0;
}

/*---Fix for shopping cart duplication issue on AJAX update---*/
.ct-modal .woocommerce-cart-form:not(:nth-child(2)) {
  display: none;
}

.ct-modal .cart-collaterals > .cart_totals:not(:nth-child(1)) {
  display: none;
}

/*---Fix for WooCommerce Payments credit card images on checkout---*/
.woocommerce label[for="payment_method_woocommerce_payments"],
.woocommerce label[for="payment_method_bacs"],
.woocommerce label[for="payment_method_cod"] {
  display: flex;
  flex-direction: row;
}

.woocommerce label[for="payment_method_woocommerce_payments"] img,
.woocommerce label[for="payment_method_bacs"] img,
.woocommerce label[for="payment_method_cod"] img {
  width: 32px;
}
.oxy-pro-menu .oxy-pro-menu-container:not(.oxy-pro-menu-open-container):not(.oxy-pro-menu-off-canvas-container) .sub-menu{
box-shadow:px px px px ;}

.oxy-pro-menu .oxy-pro-menu-show-dropdown .oxy-pro-menu-list .menu-item-has-children > a svg{
transition-duration:0.4s;
}

.oxy-pro-menu .oxy-pro-menu-show-dropdown .oxy-pro-menu-list .menu-item-has-children > a div{
margin-left:0px;
}

.oxy-pro-menu .oxy-pro-menu-mobile-open-icon svg{
width:30px;
height:30px;
}

.oxy-pro-menu .oxy-pro-menu-mobile-open-icon{
padding-top:15px;
padding-right:15px;
padding-bottom:15px;
padding-left:15px;
}

.oxy-pro-menu .oxy-pro-menu-mobile-open-icon, .oxy-pro-menu .oxy-pro-menu-mobile-open-icon svg{
transition-duration:0.4s;
}

.oxy-pro-menu .oxy-pro-menu-mobile-close-icon{
top:20px;
left:20px;
}

.oxy-pro-menu .oxy-pro-menu-mobile-close-icon svg{
width:24px;
height:24px;
}

.oxy-pro-menu .oxy-pro-menu-mobile-close-icon, .oxy-pro-menu .oxy-pro-menu-mobile-close-icon svg{
transition-duration:0.4s;
}

.oxy-pro-menu .oxy-pro-menu-container.oxy-pro-menu-off-canvas-container, .oxy-pro-menu .oxy-pro-menu-container.oxy-pro-menu-open-container{
background-color:#ffffff;
}

.oxy-pro-menu .oxy-pro-menu-off-canvas-container, .oxy-pro-menu .oxy-pro-menu-open-container{
background-image:url();
}

.oxy-pro-menu .oxy-pro-menu-off-canvas-container .oxy-pro-menu-list .menu-item-has-children > a svg, .oxy-pro-menu .oxy-pro-menu-open-container .oxy-pro-menu-list .menu-item-has-children > a svg{
font-size:24px;
}

.oxy-pro-menu .oxy-pro-menu-dropdown-links-toggle.oxy-pro-menu-open-container .menu-item-has-children ul, .oxy-pro-menu .oxy-pro-menu-dropdown-links-toggle.oxy-pro-menu-off-canvas-container .menu-item-has-children ul{
background-color:rgba(0,0,0,0.2);
border-top-style:solid;
}

.oxy-pro-menu .oxy-pro-menu-container:not(.oxy-pro-menu-open-container):not(.oxy-pro-menu-off-canvas-container) .oxy-pro-menu-list{
                    flex-direction: row;
               }
.oxy-pro-menu .oxy-pro-menu-container .menu-item a{
                    text-align: left;
                    justify-content: flex-start;
                }
.oxy-pro-menu .oxy-pro-menu-container.oxy-pro-menu-open-container .menu-item, .oxy-pro-menu .oxy-pro-menu-container.oxy-pro-menu-off-canvas-container .menu-item{
                    align-items: flex-start;
                }

            .oxy-pro-menu .oxy-pro-menu-off-canvas-container{
                    top: 0;
                    bottom: 0;
                    right: auto;
                    left: 0;
               }
.oxy-pro-menu .oxy-pro-menu-container.oxy-pro-menu-open-container .oxy-pro-menu-list .menu-item a, .oxy-pro-menu .oxy-pro-menu-container.oxy-pro-menu-off-canvas-container .oxy-pro-menu-list .menu-item a{
                    text-align: left;
                    justify-content: flex-start;
                }

            .oxy-site-navigation {
--oxynav-brand-color:#4831B0;
--oxynav-neutral-color:#FFFFFF;
--oxynav-activehover-color:#EFEDF4;
--oxynav-background-color:#4831B0;
--oxynav-border-radius:0px;
--oxynav-other-spacing:8px;
--oxynav-transition-duration:0.3s;
--oxynav-transition-timing-function:cubic-bezier(.84,.05,.31,.93);
}

.oxy-site-navigation .oxy-site-navigation__mobile-close-wrapper{
text-align:left;
}

.oxy-site-navigation > ul{ left: 0; }
.oxy-site-navigation {
                        --oxynav-animation-name: none; 
                    }

                .oxy-site-navigation > ul:not(.open) > li[data-cta='true']:nth-last-child(1){ 
                    background-color: var(--oxynav-brand-color);
                    transition: var(--oxynav-transition-duration);
                    margin-left: var(--oxynav-other-spacing);
                    border: none;
                }
.oxy-site-navigation > ul:not(.open) > li[data-cta='true']:nth-last-child(2){ 
                    background: transparent;
                    border: 1px solid currentColor;
                    transition: var(--oxynav-transition-duration);
                    margin-left: var(--oxynav-other-spacing);
                }
.oxy-site-navigation > ul:not(.open) > li[data-cta='true']:nth-last-child(2):not(:hover) > img{
                    filter: invert(0) !important;
                }
.oxy-site-navigation > ul:not(.open) > li[data-cta='true']:hover{
                    background-color: var(--oxynav-activehover-color);
                }
.oxy-site-navigation > ul:not(.open) > li[data-cta='true']:nth-last-child(1) > a{
                    color: var(--oxynav-neutral-color);
                }
.oxy-site-navigation > ul:not(.open) > li[data-cta='true']:nth-last-child(2) > a{
                    color: var(--oxynav-brand-color);
                }
.oxy-site-navigation > ul:not(.open) > li[data-cta='true']:hover > a{
                    color: var(--oxynav-brand-color);
                }
.oxy-site-navigation > ul:not(.open) > li[data-cta='true']:nth-last-child(1) > a::after{
                    color: var(--oxynav-neutral-color);   
                }
.oxy-site-navigation > ul:not(.open) > li[data-cta='true']:nth-last-child(2) > a::after{
                    color: var(--oxynav-brand-color);   
                }
.oxy-site-navigation > ul:not(.open) > li[data-cta='true']:hover > a::after{
                    color: var(--oxynav-brand-color);   
                }
.oxy-site-navigation > ul:not(.open) > li[data-cta='true'] > ul{
                    display: none;
                }
.oxy-site-navigation > ul:not(.open) > li[data-cta='true'] > button, .oxy-site-navigation > ul:not(.open) > li[data-cta='true'] > ul{
                    display: none;
                }

                .ct-section-inner-wrap, .oxy-header-container{
  max-width: 1120px;
}
body {font-family: 'Open Sans';}body {line-height: 1.6;font-size: 18px;font-weight: 400;color: #404040;}.oxy-nav-menu-hamburger-line {background-color: #404040;}h1, h2, h3, h4, h5, h6 {font-family: 'Source Sans 3';font-size: 36px;font-weight: 700;}h2, h3, h4, h5, h6{font-size: 30px;}h3, h4, h5, h6{font-size: 24px;}h4, h5, h6{font-size: 20px;}h5, h6{font-size: 18px;}h6{font-size: 16px;}a {color: #0074db;text-decoration: none;}a:hover {text-decoration: none;}.ct-link-text {text-decoration: ;}.ct-link {text-decoration: ;}.ct-link-button {border-radius: 3px;}.ct-section-inner-wrap {
padding-top: 75px;
padding-right: 20px;
padding-bottom: 75px;
padding-left: 20px;
}.ct-new-columns > .ct-div-block {
padding-top: 20px;
padding-right: 20px;
padding-bottom: 20px;
padding-left: 20px;
}.oxy-header-container {
padding-right: 20px;
padding-left: 20px;
}@media (max-width: 992px) {
				.ct-columns-inner-wrap {
					display: block !important;
				}
				.ct-columns-inner-wrap:after {
					display: table;
					clear: both;
					content: "";
				}
				.ct-column {
					width: 100% !important;
					margin: 0 !important;
				}
				.ct-columns-inner-wrap {
					margin: 0 !important;
				}
			}
.map-container {
}
.map-container:not(.ct-section):not(.oxy-easy-posts),
.map-container.oxy-easy-posts .oxy-posts,
.map-container.ct-section .ct-section-inner-wrap{
display:flex;
align-items:center;
justify-content:center;
}
.button-slipnight {
 font-size:0px;
 text-transform:uppercase;
}
@media (max-width: 479px) {
.button-slipnight {
padding: 15px 24px;
}.button-slipnight {
 padding-left:0px;
 padding-right:0px;
}
}

.card-parent-lineup {
 margin-top:20px;
}
.img-card-act-lineup {
}
.title-card-lineup {
}
.icon-lineup {
}
.icon-lineup:not(.ct-section):not(.oxy-easy-posts),
.icon-lineup.oxy-easy-posts .oxy-posts,
.icon-lineup.ct-section .ct-section-inner-wrap{
display:flex;
justify-content:center;
}
.icon {
}
.button-div {
 margin-top:20px;
}
.text-shop {
 font-size:17px;
}
.icon-shop {
}
.header-button {
}
.button-nav {
}
@media (max-width: 991px) {
.button-nav {
}
.button-nav:not(.ct-section):not(.oxy-easy-posts),
.button-nav.oxy-easy-posts .oxy-posts,
.button-nav.ct-section .ct-section-inner-wrap{
display:none;
}
}

.footer {
 width:100%;
}
.footer .ct-section-inner-wrap {
padding-bottom: 20px;
}
.reseaux-sociaux {
 width:100%;
}
.reseaux-sociaux:not(.ct-section):not(.oxy-easy-posts),
.reseaux-sociaux.oxy-easy-posts .oxy-posts,
.reseaux-sociaux.ct-section .ct-section-inner-wrap{
display:flex;
flex-direction:column;
}
.Footer-logo {
}
.footer-menu-text {
}
.sponsors-section {
 width:100%;
}
.slider {
}
.slide-track {
}
.slide {
}
.card-img-archive {
color: #ffffff;}.card-img-archive 
>svg {width: 55px;height: 55px;}.card-img-archive {
 width:100%;
 border-radius:10px;
}
.img-card-archive {
 width:100%;
 height:100%;
 object-fit:cover;
 color:#ffffff;
 font-size:47px;
}
.text-card-archive {
}
.card-stat-archive {
 border-radius:8px;
 padding-top:10px;
 padding-bottom:10px;
}
.card-stat-archive:not(.ct-section):not(.oxy-easy-posts),
.card-stat-archive.oxy-easy-posts .oxy-posts,
.card-stat-archive.ct-section .ct-section-inner-wrap{
display:flex;
flex-direction:column;
align-items:center;
align-content:center;
justify-content:center;
}
@media (max-width: 479px) {
.card-stat-archive {
 width:100%;
 margin-right:0px;
 margin-left:0px;
}
}

.icon-slipnight {
}
.header-desktop {
}
.transparent-header {
}
.popup-display-none {
}
.header {
 padding-top:40px;
}
.header .ct-section-inner-wrap {
padding-top: 0;
padding-bottom: 75px;
}
.H1-lineup {
}
@media (max-width: 479px) {
.H1-lineup {
 font-size:0px;
}
}

.text-lineup {
 font-family:'Poppins';
 color:#ffffff;
 font-size:20px;
 padding-bottom:12px;
}
.contenu-ligne-1 {
 padding-top:0px;
}
.div-date-prog {
 gap:12px;
 border-top-style:none;
 border-right-style:none;
 border-bottom-style:none;
 border-left-style:none;
 border-radius:10px;
 padding-left:12px;
 padding-right:12px;
 padding-top:18px;
 padding-bottom:18px;
 width:20%;
}
.div-date-prog:not(.ct-section):not(.oxy-easy-posts),
.div-date-prog.oxy-easy-posts .oxy-posts,
.div-date-prog.ct-section .ct-section-inner-wrap{
display:flex;
flex-direction:row;
align-items:center;
align-content:center;
justify-content:center;
gap:12px;
}
@media (max-width: 479px) {
.div-date-prog {
 width:50%;
}
}

.program-home-date {
}
.neon-spotlight-bottom-right-corner {
 background-color:#774949;
}
.oxy-footer-menu {
}
.hero-picture {
 bottom:100px;
}
.date-hero {
 bottom:170px;
 right:40px;
}
.codeblock-map {
}
.slider-track {
}
.picture-artiste {
 font-size:0px;
 font-weight:700;
}
.block-contenu {
}
.contenu-ligne-2 {
 padding-top:10px;
 padding-bottom:0px;
}
.card {
 width:100%;
}
.card-lineup {
}
.text-card {
}
.heading-lineup {
}
.Heading-lineup {
 align-self:center;
 padding-top:24px;
 padding-bottom:24px;
 font-size:90px;
}
.Heading-lineup:not(.ct-section):not(.oxy-easy-posts),
.Heading-lineup.oxy-easy-posts .oxy-posts,
.Heading-lineup.ct-section .ct-section-inner-wrap{
display:flex;
}
@media (max-width: 479px) {
.Heading-lineup {
 margin-top:111px;
}
}

.img-men-contact {
}
.contact-forms {
}
.div-parent-contact {
}
@media (max-width: 479px) {
.div-parent-contact {
}
.div-parent-contact:not(.ct-section):not(.oxy-easy-posts),
.div-parent-contact.oxy-easy-posts .oxy-posts,
.div-parent-contact.ct-section .ct-section-inner-wrap{
display:flex;
flex-direction:column;
}
}

.hero-slipnight {
}
.hero-slipnight:not(.ct-section):not(.oxy-easy-posts),
.hero-slipnight.oxy-easy-posts .oxy-posts,
.hero-slipnight.ct-section .ct-section-inner-wrap{
display:flex;
flex-direction:row;
align-items:center;
}
.div-parent-hero {
}
.picture-section {
}
.hero-archive {
background-image:url(https://lebobfest.fr/wp-content/uploads/2025/10/slipnight-festival-scaled.webp);}
.hero-archive .ct-section-inner-wrap {
padding-bottom: 87px;
}
.hero-archive:not(.ct-section):not(.oxy-easy-posts),
.hero-archive.oxy-easy-posts .oxy-posts,
.hero-archive.ct-section .ct-section-inner-wrap{
display:flex;
flex-direction:row;
align-items:center;
}
@media (max-width: 479px) {
.hero-archive {
}
.hero-archive .ct-section-inner-wrap {
padding-top: 75px;
}
}

.icon-archive {
}
.img-card-arch {
}
.div-parent-2-card {
}
.section-hero-arch {
}
.section-stat-archive {
}
.card-conteneur-card {
}
@media (max-width: 479px) {
.card-conteneur-card {
}
}

.menu-nav {
}
.section-hero {
background-image:url(https://lebobfest.fr/wp-content/uploads/2025/10/Vue-Concert-Slipfest-2560x1707-1.webp); text-align:center;
}
.section-hero .ct-section-inner-wrap {
padding-bottom: 0;
}
.section-hero:not(.ct-section):not(.oxy-easy-posts),
.section-hero.oxy-easy-posts .oxy-posts,
.section-hero.ct-section .ct-section-inner-wrap{
display:flex;
flex-direction:row;
align-items:center;
}
.link-wrapper-footer {
}
.test-section {
}
.hero-section {
background-image:url(https://lebobfest.fr/wp-content/uploads/2025/10/vue-concert-slipfest-scaled.webp);}
.header-logo {
}
.newsletters {
}
.div-newsletters {
}
.div-newsletters:not(.ct-section):not(.oxy-easy-posts),
.div-newsletters.oxy-easy-posts .oxy-posts,
.div-newsletters.ct-section .ct-section-inner-wrap{
display:flex;
flex-direction:row;
align-items:center;
}
.div-programme {
}
.image-product {
}
.image-product div.flex-viewport, .image-product div.images .flex-control-thumbs li, .image-product .woocommerce-product-gallery__wrapper{
border-radius:20px;
}

.button-cart {
}
.button-cart button.button.alt{
background-color:#191717;
font-family: 'Poppins';
}

.price-product {
}
.price-product .price, .price-product .woocommerce-Price-amount, .price-product .price del{
font-family: 'Poppins';
color: #ffffff;
font-size: 41px;
}

.desc-product {
}
.title-product {
 color:#efefef;
}
.div-parent-product {
}
@media (max-width: 479px) {
.div-parent-product {
}
.div-parent-product:not(.ct-section):not(.oxy-easy-posts),
.div-parent-product.oxy-easy-posts .oxy-posts,
.div-parent-product.ct-section .ct-section-inner-wrap{
display:flex;
flex-direction:column;
}
}

.img-boutique {
}
.div-product-shop {
}
.price-shop {
}
.div-billeterie {
}
.div-billeterie:not(.ct-section):not(.oxy-easy-posts),
.div-billeterie.oxy-easy-posts .oxy-posts,
.div-billeterie.ct-section .ct-section-inner-wrap{
display:flex;
align-items:center;
}
@media (max-width: 479px) {
.div-billeterie {
 width:100%;
}
}

.checkout {
}
.artist-day-badge {
}
.section-title {
}
html, body {
  overflow-x: hidden !important;
}

/* Import de la police Food Truck Signage */
@font-face {
  font-family: 'Food Truck Signage';
  src: url('/wp-content/uploads/2025/10/Food-Truck-Signage-Regular.ttf') format('truetype');
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}

/* Application globale sur tout le site */
body, p, h1, h2, h3, h4, h5, h6, a, span {
  font-family: 'Food Truck Signage', sans-serif;
}


/* ---- Fond global SlipFest ---- */
body {
  min-height: 100vh;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  font-family: "Poppins", Arial, sans-serif;
  color: white;
  text-align: center;

  /* Dégradé principal */
  background: linear-gradient(
    315deg,
    #FBC852 0%,
    #F0926D 25%,
    #E96473 45%,
    #E13177 60%,
    #FBC852 100%
  );

  /* Effet lumineux radial + superposition du dégradé */
  background-image:
    radial-gradient(circle at 40% 45%, rgba(255, 255, 255, 0.25) 0%, transparent 60%),
    linear-gradient(
      315deg,
      #FBC852 0%,
      #F0926D 25%,
      #E96473 45%,
      #E13177 60%,
      #FBC852 100%
    );

  background-blend-mode: screen;
  background-attachment: fixed;
  background-repeat: no-repeat;
  background-size: cover;
}

 .section-title {
    font-family: 'Food Truck Signage', cursive;
    font-size: 54px;
    text-align: center;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color: #fff;
    text-shadow:
      3px 3px 0 #ff2d78,
      6px 6px 0 rgba(0, 0, 0, 0.15);
    margin-bottom: 50px;
  }

  .section-title::after {
    content: '';
    display: block;
    width: 120px;
    height: 5px;
    background: #ffe14d;
    margin: 16px auto 0;
    border-radius: 10px;
  }/* ===========================
   HEADER - Apparition / Disparition au scroll
=========================== */
.header {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 10;
  color: #fff;
  text-align: center;
  font-size: 1rem;
  letter-spacing: 0.5px;
  transition: transform 0.4s ease, opacity 0.4s ease;
}
/* Quand on scroll vers le bas → header caché */
.header.hide {
  transform: translateY(-100%);
  opacity: 0;
}
/* Dégradé du header */
.header::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(
    to bottom,
    rgba(218, 60, 121, 0.75) 0%,
    rgba(218, 60, 121, 0.55) 30%,
    rgba(218, 60, 121, 0.35) 60%,
    rgba(218, 60, 121, 0.15) 85%,
    rgba(218, 60, 121, 0.0) 100%
  );
  z-index: -1;
}
/* --- Variante sombre pour la page SlipNight --- */
.header.slipnight-header::before {
  background: linear-gradient(
    to bottom,
    rgba(50, 0, 80, 0.85) 0%,    /* violet très sombre */
    rgba(90, 0, 140, 0.65) 30%,  /* violet profond */
    rgba(130, 0, 190, 0.45) 60%, /* violet clair lumineux */
    rgba(180, 0, 255, 0.25) 85%, /* lueur subtile */
    rgba(180, 0, 255, 0.0) 100%
  );
}
/* Logo */
@media (min-width: 1120px) {
  .header-logo {
    position: absolute;
    top: 30%;
    transform: translateY(10%) scale(1.4); /* descendu + agrandi */
    transform-origin: center center;
    transition: transform 0.4s ease-in-out;
    width: 20%;
    display: inline-block;
    z-index: 10;
  }

  /* En version "small" (au scroll) */
  .header-logo.small {
    transform: translateY(-40%) scale(0.5); /* remonte + réduit */
  }
}

/* ===========================
   FOOTER
=========================== */

.footer {
  background: linear-gradient(
    to top,
    rgba(218, 60, 121, 0.75) 0%,
    rgba(218, 60, 121, 0.55) 40%,
    rgba(218, 60, 121, 0.25) 75%,
    rgba(218, 60, 121, 0.0) 100%
  );
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  text-align: center;
  font-size: 1rem;
  letter-spacing: 0.5px;
  color: #fff;
}

/* Animation logo du footer */
.Footer-logo {
  display: inline-block;
  transform-origin: 50% 0%;
  animation: swing 1s ease-in-out infinite;
}

@keyframes swing {
  0% { transform: rotate(5deg); }
  50% { transform: rotate(-5deg); }
  100% { transform: rotate(5deg); }
}

.reseaux-sociaux .ct-section-inner-wrap {
  max-width: 100% !important;
  width: 100% !important;
  padding-left: 0;
  padding-right: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
}

.reseaux-sociaux {
  position: relative;
  left: 50%;
  width: 100vw;
  margin-left: -50vw;
  border-top: 2px solid rgba(255, 255, 255, 0.3);
  border-bottom: 2px solid rgba(255, 255, 255, 0.3);
  padding: 2rem 0;
  box-sizing: border-box;
}

.footer-menu-text {
  color: #fff !important;
}

.footer-menu-text a {
  color: #fff !important;
  text-decoration: none;
  font-size: 24px;
}

.footer-menu-text a:hover {
  opacity: 0.85;
}

/* ===========================
   LINK WRAPPER FOOTER - texte en blanc
=========================== */

.link-wrapper-footer,
.link-wrapper-footer * {
  color: #ffffff !important;
  text-decoration: none;
}

.link-wrapper-footer a:hover {
  opacity: 0.85;
}



/* ===========================
   MENU NAV — Effet hover sur les liens (surlignement blanc + mouvement doux)
=========================== */

.menu-nav a {
  position: relative;
  display: inline-block;
  color: #fff;
  text-decoration: none;
  font-weight: 500;
  transition: transform 0.4s cubic-bezier(0.25, 0.8, 0.25, 1), color 0.4s ease;
}

/* Ligne de surlignement animée (blanche) */
.menu-nav a::after {
  content: "";
  position: absolute;
  bottom: -4px;
  left: 0;
  width: 0%;
  height: 2px;
  background-color: #ffffff; /* surlignement blanc */
  transition: width 0.4s cubic-bezier(0.25, 0.8, 0.25, 1);
}

/* Effet au survol */
.menu-nav a:hover {
  transform: translateY(-1.5px); /* soulèvement plus délicat */
  color: #fff;
}

.menu-nav a:hover::after {
  width: 100%;
}



/* ===========================
   BOUTON BILLETTERIE (.button-nav)
=========================== */

/* Style desktop */
.button-nav {
  background-color: rgba(218, 60, 121, 0.85);
  color: #fff;
  border: none;
  padding: 0.75rem 1.5rem;
  font-weight: bold;
  letter-spacing: 0.5px;
  border-radius: 30px;
  cursor: pointer;
  transition: all 0.3s ease;
}

.button-nav:hover {
  background-color: rgba(218, 60, 121, 1);
  transform: scale(1.05);
}



/* ===========================
   RESPONSIVE - Mobile
=========================== */

@media (max-width: 768px) {
  /* Cache le bouton dans le header */
  .header .button-nav {
    display: none !important;
  }

  /* Bouton dans le menu mobile */
  .menu-nav .button-nav {
    display: block !important;
    text-align: center;
    margin: 2rem auto;
    background-color: rgba(218, 60, 121, 0.9);
    color: #fff;
    border: none;
    border-radius: 30px;
    font-weight: bold;
    padding: 1rem 2rem;
    max-width: 220px;
    transition: all 0.3s ease;
  }

  .menu-nav .button-nav:hover {
    background-color: rgba(218, 60, 121, 1);
    transform: scale(1.05);
  }
}
/* ===== STYLE UNIFIÉ POUR TOUS LES CHAMPS (SANS CONTOUR) ===== */

.contact-forms input[type="text"],
.contact-forms input[type="email"],
.contact-forms input[type="tel"],
.contact-forms input[type="number"],
.contact-forms input[type="url"],
.contact-forms input[type="password"],
.contact-forms input[type="date"],
.contact-forms input[type="datetime-local"],
.contact-forms select,
.contact-forms textarea,
.contact-forms input[type="file"] {
  width: 100% !important;
  max-width: 100% !important;
  border: none !important;
  border-radius: 10px !important;
  background-color: rgba(255, 255, 255, 0.95) !important;
  color: #333 !important;
  padding: 14px 18px !important;
  font-size: 16px !important;
  transition: all 0.25s ease !important;
  box-sizing: border-box !important;
  font-family: "Inter", "Poppins", sans-serif !important;
  box-shadow: none !important;
}

/* Focus cohérent avec effet de halo bleu */
.contact-forms input:focus,
.contact-forms select:focus,
.contact-forms textarea:focus {
  outline: none !important;
  border: none !important;
  background-color: #fff !important;
  box-shadow: 0 0 0 3px rgba(0,115,230,0.25) !important;
}

/* ===== WPForms - Champ Prénom / Nom (classe .Name) ===== */
.contact-forms .wpforms-field.Name .wpforms-field-row {
  display: flex !important;
  flex-direction: row !important;
  justify-content: space-between !important;
  align-items: center !important;
  flex-wrap: nowrap !important;
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
}

.contact-forms .wpforms-field.Name .wpforms-field-row-block {
  flex: 1 1 50% !important;
  width: 50% !important;
  max-width: 50% !important;
  box-sizing: border-box !important;
  margin: 0 !important;
  padding: 0 !important;
}

.contact-forms .wpforms-field.Name .wpforms-field-row-block:first-child {
  margin-right: 1.5rem !important;
}

@media (max-width: 768px) {
  .contact-forms .wpforms-field.Name .wpforms-field-row {
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    justify-content: space-between !important;
    gap: 1.5rem !important;
  }

  .contact-forms .wpforms-field.Name .wpforms-field-row-block {
    flex: 1 1 50% !important;
    width: 50% !important;
    max-width: 50% !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  .contact-forms .wpforms-field.Name .wpforms-field-row-block:first-child {
    margin-right: 1.5rem !important;
  }
}

/* ===== TEXTAREA ===== */
.contact-forms textarea {
  min-height: 140px !important;
  resize: vertical !important;
}

/* ===== SELECT ===== */
.contact-forms select {
  appearance: none !important;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8'%3E%3Cpath fill='%23333' d='M0 0l6 8 6-8z'/%3E%3C/svg%3E") !important;
  background-repeat: no-repeat !important;
  background-position: right 18px center !important;
  background-size: 12px 8px !important;
  cursor: pointer !important;
}

.contact-forms select:hover {
  background-color: #fff !important;
}

/* ===== INPUT FILE ===== */
.contact-forms input[type="file"] {
  border: none !important;
  background-color: rgba(255, 255, 255, 0.95) !important;
  color: #333 !important;
  padding: 14px 18px !important;
  cursor: pointer !important;
  transition: all 0.25s ease !important;
  box-shadow: none !important;
}

.contact-forms input[type="file"]:hover {
  background-color: #fff !important;
}

/* ===== CHECKBOX ET RADIO ===== */
.contact-forms input[type="checkbox"],
.contact-forms input[type="radio"] {
  accent-color: #0073e6 !important;
  width: 18px !important;
  height: 18px !important;
  cursor: pointer !important;
  margin-right: 8px !important;
}

.contact-forms .wpforms-field-checkbox label,
.contact-forms .wpforms-field-radio label {
  color: #fff !important;
  font-size: 15px !important;
  cursor: pointer !important;
}

/* ===== PLACEHOLDERS ===== */
.contact-forms input::placeholder,
.contact-forms textarea::placeholder {
  color: #aaa !important;
  font-style: italic !important;
}

/* ===== LABELS ===== */
.contact-forms label.wpforms-field-label,
.contact-forms legend.wpforms-field-label {
  display: block !important;
  font-weight: 600 !important;
  color: #fff !important;
  margin-bottom: 8px !important;
  font-size: 15px !important;
}

/* ===== ASTÉRISQUES ===== */
.contact-forms .wpforms-required-label,
.contact-forms .required {
  color: #e63946 !important;
  margin-left: 3px !important;
}



/* ===== BOUTON TRANSPARENT CENTRÉ ===== */
.contact-forms button,
.contact-forms input[type="submit"],
#wpforms-submit-85 {
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  margin: 0 auto !important;
  background: rgba(255, 255, 255, 0.12) !important;
  color: #fff !important;
  font-weight: 600 !important;
  padding: 14px 36px !important;
  border-radius: 10px !important;
  border: 1.5px solid rgba(255, 255, 255, 0.6) !important;
  cursor: pointer !important;
  font-size: 16px !important;
  transition: all 0.35s ease !important;
  backdrop-filter: blur(10px) !important;
  -webkit-backdrop-filter: blur(10px) !important;
  letter-spacing: 0.5px !important;
  box-shadow: 0 4px 25px rgba(0, 0, 0, 0.15) !important;
  text-align: center !important;
}

.contact-forms button:hover,
.contact-forms input[type="submit"]:hover,
#wpforms-submit-85:hover {
  background: rgba(0, 115, 230, 0.3) !important;
  border-color: rgba(0, 115, 230, 0.8) !important;
  box-shadow: 0 8px 30px rgba(0, 115, 230, 0.3) !important;
  transform: translateY(-2px) !important;
}

#wpforms-submit-85:active {
  transform: translateY(0) !important;
  box-shadow: 0 4px 15px rgba(0, 115, 230, 0.25) !important;
}

/* ===== Champ téléphone - bouton pays séparé à gauche ===== */
.contact-forms .iti {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  width: 100% !important;
  gap: 1rem !important; /* espace entre le bouton et l'input */
  box-sizing: border-box !important;
  background: transparent !important;
}

/* Bouton du pays (gauche) */
.contact-forms .iti__country-container {
  position: relative !important;
  flex: 0 0 auto !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  height: 52px !important;
  width: 100px !important; /* largeur fixe, ajustable */
  background-color: rgba(255, 255, 255, 0.95) !important;
  border: 1.5px solid rgba(255, 255, 255, 0.6) !important;
  border-radius: 10px !important;
  box-shadow: 0 4px 25px rgba(0, 0, 0, 0.05) !important;
  cursor: pointer !important;
  transition: all 0.25s ease !important;
}

/* Bouton pays : flag + flèche centrés */
.contact-forms .iti__selected-country {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  border: none !important;
  background: transparent !important;
  width: 100% !important;
  height: 100% !important;
}

/* Effet hover du bouton pays */
.contact-forms .iti__country-container:hover {
  background-color: #fff !important;
  border-color: rgba(0, 115, 230, 0.8) !important;
  box-shadow: 0 0 0 3px rgba(0,115,230,0.25) !important;
}

/* Champ téléphone (droite) */
.contact-forms .iti__tel-input {
  flex: 1 1 auto !important;
  width: 100% !important;
  height: 52px !important;
  border: 1.5px solid rgba(255, 255, 255, 0.6) !important;
  border-radius: 10px !important;
  background-color: rgba(255, 255, 255, 0.95) !important;
  color: #333 !important;
  font-size: 16px !important;
  padding: 14px 18px !important;
  box-sizing: border-box !important;
  transition: all 0.25s ease !important;
}

/* Focus effet harmonisé */
.contact-forms .iti__tel-input:focus {
  background-color: #fff !important;
  box-shadow: 0 0 0 3px rgba(0,115,230,0.25) !important;
  border-color: rgba(0, 115, 230, 0.8) !important;
  outline: none !important;
}

/* Placeholder */
.contact-forms .iti__tel-input::placeholder {
  color: #aaa !important;
  font-style: italic !important;
}

/* Flag un peu agrandi */
.contact-forms .iti__flag {
  transform: scale(1.1) !important;
  margin-right: 6px !important;
}

/* Overlay sombre coloré */
/*.section-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(
      315deg,
      rgba(251, 200, 82, 0.25) 0%,
      rgba(240, 146, 109, 0.25) 25%,
      rgba(233, 100, 115, 0.25) 45%,
      rgba(225, 49, 119, 0.3) 65%,
      rgba(251, 200, 82, 0.25) 100%
    ),
    rgba(0, 0, 0, 0.55);
  background-blend-mode: multiply;
  backdrop-filter: blur(2px);
  -webkit-backdrop-filter: blur(2px);
  z-index: 1;
  pointer-events: none;
}*/

/* ===== FONDU FRAMBOISE (#DF4678) EN BAS ===== */
/*.section-hero::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  height: 45%;
  background: linear-gradient(
    to bottom,
    rgba(223, 70, 120, 0) 0%,
    rgba(223, 70, 120, 0.35) 25%,
    rgba(223, 70, 120, 0.6) 55%,
    rgba(223, 70, 120, 0.85) 80%,
    rgba(223, 70, 120, 1) 100%
  );

  z-index: 1;
  pointer-events: none;
  mix-blend-mode: normal;
}*/

.section-hero {
  animation: heroBackground 15s infinite ease-in-out;
  /* Gradient en bas d'image */
  -webkit-mask-image: linear-gradient(to bottom, black 75%, transparent 100%);
  mask-image: linear-gradient(to bottom, black 75%, transparent 100%);
}

/* --- Animation fluide des 3 backgrounds --- */
@keyframes heroBackground {
  0% {
    background-image: url('https://lebobfest.fr/wp-content/uploads/2026/02/Les-Nantais-Point-detape-24-mai-2024-scaled.webp');
  }
  33% {
    background-image: url('https://preprod-slipfest.passedevant.com/wp-content/uploads/2025/10/Les-Nantais-250525-2.webp');
  }
  66% {
    background-image: url('https://lebobfest.fr/wp-content/uploads/2026/02/Les-Nantais-Point-detape-24-mai-2024-scaled.webp');
  }
  100% {
    background-image: url('https://preprod-slipfest.passedevant.com/wp-content/uploads/2025/10/Vue-Concert-Slipfest-2560x1707-1.webp');
  }
}


/* ===== CONTENU AU-DESSUS ===== */
.section-hero > * {
  position: relative;
  z-index: 2; /* au-dessus du ::after */
}

/* ===== BOUTON SLIPNIGHT LARGE ===== */
.button-slipnight {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  padding: 18px 56px; /* 🔹 plus grand : plus haut et plus large */
  border-radius: 16px; /* bords plus doux */
  background: rgba(255, 255, 255, 0.12); /* effet verre transparent */
  border: 2px solid rgba(255, 255, 255, 0.45);
  color: #fff;
  font-size: 18px; /* 🔹 texte plus grand */
  font-weight: 600;
  text-decoration: none;
  cursor: pointer;
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  transition: all 0.35s ease;
  letter-spacing: 0.6px;
  position: relative;
  overflow: hidden;
  box-shadow: 0 6px 25px rgba(0, 0, 0, 0.25);
}


/* ===== SOULIGNEMENT ANIMÉ ===== */
.button-slipnight::after {
  content: "";
  position: absolute;
  left: 50%;
  bottom: 10px; /* distance sous le texte */
  transform: translateX(-50%) scaleX(0);
  transform-origin: center;
  width: 60%;
  height: 2px;
  background: rgba(255, 255, 255, 0.8);
  transition: transform 0.4s ease;
  border-radius: 2px;
}

/* ===== EFFET HOVER ===== */
.button-slipnight:hover {
  transform: translateY(-3px); /* le texte se soulève */
  background: rgba(255, 255, 255, 0.18); /* un peu plus lumineux */
  border-color: rgba(255, 255, 255, 0.6);
  box-shadow: 0 6px 20px rgba(255, 255, 255, 0.1);
}

/* Apparition du soulignement */
.button-slipnight:hover::after {
  transform: translateX(-50%) scaleX(1);
}

/* ===== NEWSLETTER ===== */
/*
.ct-div-block.div-newsletters {
  width: 100vw !important;
  max-width: 100% !important;
  margin: 0 auto !important;
  padding: 0 !important;
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  flex-direction: column !important;
  box-sizing: border-box !important;
}

.ct-div-block.div-newsletters .ct-shortcode,
.ct-div-block.div-newsletters .newsletters,
.ct-div-block.div-newsletters .wpforms-container {
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 auto !important;
  padding: 0 !important;
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  flex-direction: column !important;
  box-sizing: border-box !important;
}

.div-newsletters,
.div-newsletters .wpforms-container,
.div-newsletters .wpforms-container-full,
.div-newsletters form.wpforms-form,
.div-newsletters #wpforms-205 {
  width: 100% !important;
  margin: 0 auto !important;
  padding: 0 !important;
  box-sizing: border-box !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
}

.div-newsletters .wpforms-field-container {
  width: 100% !important;
  max-width: 800px !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 1.2rem !important;
  box-sizing: border-box !important;
}

.div-newsletters .wpforms-field.name .wpforms-field-row {
  display: flex !important;
  flex-direction: row !important;
  justify-content: space-between !important;
  align-items: stretch !important;
  gap: 1rem !important;
  width: 100% !important;
  box-sizing: border-box !important;
}

.div-newsletters .wpforms-field.name .wpforms-field-row-block {
  flex: 1 1 50% !important;
  width: 50% !important;
  box-sizing: border-box !important;
}

.div-newsletters .wpforms-field.name input[type="text"] {
  width: 100% !important;
  border-radius: 10px !important;
  border: none !important;
  background-color: rgba(255, 255, 255, 0.95) !important;
  color: #333 !important;
  padding: 14px 18px !important;
  font-size: 16px !important;
  box-sizing: border-box !important;
  transition: all 0.25s ease !important;
  font-family: "Inter", "Poppins", sans-serif !important;
}

.div-newsletters .wpforms-field.name input[type="text"]:focus {
  background-color: #fff !important;
  box-shadow: 0 0 0 3px rgba(0,115,230,0.25) !important;
  outline: none !important;
}

.div-newsletters .wpforms-field.wpforms-field-email {
  width: 100% !important;
}

.div-newsletters input[type="text"],
.div-newsletters input[type="email"] {
  width: 100% !important;
  border: none !important;
  border-radius: 10px !important;
  background-color: rgba(255, 255, 255, 0.95) !important;
  color: #333 !important;
  padding: 14px 18px !important;
  font-size: 16px !important;
  transition: all 0.25s ease !important;
  font-family: "Inter", "Poppins", sans-serif !important;
  box-sizing: border-box !important;
}

.div-newsletters input:focus {
  background-color: #fff !important;
  box-shadow: 0 0 0 3px rgba(0,115,230,0.25) !important;
  outline: none !important;
}

.div-newsletters .wpforms-submit-container {
  width: 100% !important;
  max-width: 800px !important;
  display: flex !important;
  justify-content: center !important;
}

.div-newsletters button.wpforms-submit {
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  width: 100% !important;
  background: rgba(255, 255, 255, 0.12) !important;
  color: #fff !important;
  font-weight: 600 !important;
  padding: 14px 36px !important;
  border-radius: 10px !important;
  border: 1.5px solid rgba(255, 255, 255, 0.6) !important;
  cursor: pointer !important;
  font-size: 16px !important;
  transition: all 0.35s ease !important;
  backdrop-filter: blur(10px) !important;
  -webkit-backdrop-filter: blur(10px) !important;
  letter-spacing: 0.5px !important;
  box-shadow: 0 4px 25px rgba(0, 0, 0, 0.15) !important;
}

.div-newsletters button.wpforms-submit:hover {
  background: rgba(0, 115, 230, 0.3) !important;
  border-color: rgba(0, 115, 230, 0.8) !important;
  box-shadow: 0 8px 30px rgba(0, 115, 230, 0.3) !important;
  transform: translateY(-2px) !important;
}

@media (max-width: 768px) {
  .div-newsletters .wpforms-field.name .wpforms-field-row {
    flex-direction: column !important;
  }

  .div-newsletters .wpforms-field.name .wpforms-field-row-block {
    width: 100% !important;
  }

  .div-newsletters .wpforms-field-container,
  .div-newsletters .wpforms-submit-container {
    max-width: 90% !important;
  }
}

*/.artiste-card-parent {
  display: inline-block; /* La carte s’adapte à la taille de son contenu */
  max-width: 350px;      /* Tu peux ajuster selon le format que tu veux */
  border-radius: 20px;
  padding: 1rem;
  background: rgba(255, 255, 255, 0.12);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  border: 1px solid rgba(255, 255, 255, 0.25);
  transition: all 0.3s ease;
  color: white;
  overflow: hidden;
}

/* Centrer la carte si nécessaire */
.artiste-card-container {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap; /* utile si tu en as plusieurs */
  gap: 1.5rem;
}

/* Effet hover */
.artiste-card-parent:hover {
  background: rgba(255, 255, 255, 0.2);
  transform: translateY(-5px);
}

.artiste-card-parent img {
  display: block;
  width: 100%;             /* prend toute la largeur du conteneur */
  aspect-ratio: 16 / 9;    /* ratio rectangulaire — tu peux ajuster à 4/3 si besoin */
  object-fit: cover;       /* garde la proportion sans étirer l’image */
  border-radius: 16px;     /* bords arrondis */
  overflow: hidden;  
  object-position: top;     /* <-- clé pour remonter l’image *//* empêche le débordement */
}

.H1-lineup {
  position: relative;
  display: inline-block;
  font-size: 3rem; /* adapte à ton design */
  font-weight: 800;
  color: white;
  transition: all 0.3s ease;
  cursor: pointer;
}

/* Effet de surlignement (créé avec un pseudo-élément) */
.H1-lineup::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 0%;
  height: 4px; /* épaisseur du surlignement */
  background: linear-gradient(90deg, #ff6ec7, #ff9a44); /* dégradé stylé */
  transition: width 0.3s ease;
  border-radius: 2px;
}

/* Hover → surlignement + surélévation */
.H1-lineup:hover {
  transform: translateY(-6px); /* effet de levée */
  text-shadow: 0 4px 10px rgba(0, 0, 0, 0.3);
}

.H1-lineup:hover::after {
  width: 100%;
}

.icon-lineup {
  display: inline-block;
  cursor: pointer;
}

.icon-lineup .icon {
  display: inline-block;
  transition: transform 0.4s ease-in-out;
}

/* Animation au survol */
.icon-lineup:hover .icon {
  transform: translateX(8px); /* déplacement vers la droite */
  animation: moveLeftRight 0.6s ease-in-out;
}

/* Animation aller-retour fluide */
@keyframes moveLeftRight {
  0%   { transform: translateX(0); }
  50%  { transform: translateX(8px); }
  100% { transform: translateX(8px); }
}


.card-parent-lineup {
  background: rgba(255, 255, 255, 0.12); /* fond semi-transparent */
  backdrop-filter: blur(10px);            /* flou d’arrière-plan */
  -webkit-backdrop-filter: blur(10px);    /* compatibilité Safari */
  
  border: 1px solid rgba(255, 255, 255, 0.25);
  border-radius: 20px;
  
  padding: 1.5rem;
  color: white;
  transition: all 0.3s ease;
  overflow: hidden;
}

/* Effet au survol : légère surélévation et éclaircissement */
.card-parent-lineup:hover {
  transform: translateY(-6px);
  background: rgba(255, 255, 255, 0.2);
  box-shadow: 0 12px 40px rgba(0, 0, 0, 0.3);
}

/* Optionnel : texte centré et bien espacé */
.card-parent-lineup h3,
.card-parent-lineup p {
  text-align: center;
  margin: 0.5rem 0;
}

.title-card-lineup {
  position: relative;
  display: inline-block;
  color: #fff;
  font-weight: 800;
  text-align: center;
  letter-spacing: 1px;
  opacity: 0;
  transform: translateY(15px);
  animation: appearTitle 0.8s ease-out forwards;
  transition: transform 0.3s ease, text-shadow 0.3s ease;
  cursor: pointer;
}

/* Animation d’apparition au chargement */
@keyframes appearTitle {
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

/* Barre de surlignement (invisible au départ) */
.title-card-lineup::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 0%;
  height: 4px;
  background: #ffffff;
  border-radius: 2px;
  transition: width 0.4s ease;
}

/* Au survol → surlignement + effet de surélévation */
.title-card-lineup:hover {
  transform: translateY(-6px);
  text-shadow: 0 4px 12px rgba(255, 255, 255, 0.4);
}

.title-card-lineup:hover::after {
  width: 100%;
}

.Heading-lineup {
  opacity: 0;
  transform: translateX(-30px);      /* déplacement initial vers la gauche */
  animation: fadeInLeft 0.8s ease-out forwards;
  animation-delay: 0.2s;             /* petit délai pour la fluidité */
}

/* Animation d’apparition gauche → droite */
@keyframes fadeInLeft {
  to {
    opacity: 1;
    transform: translateX(0);
  }
}







.hero-archive {
  position: relative;
  overflow: hidden;
  min-height: 70% vw; /* section = 70% de la hauteur de la fenêtre */
}

/* Overlay sombre coloré */
.hero-archive::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(
      315deg,
      rgba(251, 200, 82, 0.25) 0%,
      rgba(240, 146, 109, 0.25) 25%,
      rgba(233, 100, 115, 0.25) 45%,
      rgba(225, 49, 119, 0.3) 65%,
      rgba(251, 200, 82, 0.25) 100%
    ),
    rgba(0, 0, 0, 0.55);
  background-blend-mode: multiply;
  backdrop-filter: blur(2px);
  -webkit-backdrop-filter: blur(2px);
  z-index: 1; /* sous le contenu, mais au-dessus de l’image */
  pointer-events: none;
}

/* ===== FONDU FRAMBOISE (#DF4678) EN BAS ===== */
.hero-archive::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  height: 45%; /* ajuste selon la hauteur du fondu désiré */

  /* Dégradé framboise progressif */
  background: linear-gradient(
    to bottom,
    rgba(223, 70, 120, 0) 0%,      /* transparent (haut) */
    rgba(223, 70, 120, 0.35) 25%,  /* léger ton framboise */
    rgba(223, 70, 120, 0.6) 55%,   /* rose soutenu */
    rgba(223, 70, 120, 0.85) 80%,  /* presque opaque */
    rgba(223, 70, 120, 1) 100%     /* framboise plein, écrase l’image */
  );

  z-index: 1; /* sous le contenu, au-dessus du fond */
  pointer-events: none;
  mix-blend-mode: normal;
}

/* ===== CONTENU AU-DESSUS ===== */
.hero-archive > * {
  position: relative;
  z-index: 2; /* au-dessus du ::after */
}

/* ===== ICÔNE SLIPNIGHT ===== */
.icon-archive {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  font-size: 32px; /* taille de l’icône */
  color: #fff;
  cursor: pointer;
  text-decoration: none;
  transition: transform 0.4s ease, color 0.4s ease;
  animation: floatIcon 2.5s ease-in-out infinite; /* animation légère au repos */
  position: relative;
  z-index: 3;
}

/* ===== ANIMATION LÉGÈRE AU REPOS ===== */
@keyframes floatIcon {
  0%, 100% {
    transform: translateY(0);
  }
  50% {
    transform: translateY(6px);
  }
}

.card-stat-archive {
  position: relative;
  background: rgba(255, 255, 255, 0.1); /* blanc transparent */
  border-radius: 20px;
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  border: 1px solid rgba(255, 255, 255, 0.25);
  color: #fff;
  transition: all 0.3s ease;
  width: auto;
  flex: 1 1 auto; /* s’adapte naturellement dans un flex parent */
}

/* Survol */
.card-stat-archive:hover {
  background: rgba(255, 255, 255, 0.2);
}

/* ===== RESPONSIVE : 100% DE LARGEUR SUR MOBILE ===== */
@media (max-width: 768px) {
  .card-stat-archive {
    width: 100%;
    flex: 0 0 100%; /* force 100% même dans un conteneur flex */
    max-width: 100%;
    margin: 0 auto 20px auto; /* espace entre les cartes */
  }

  /* si les cartes sont dans un parent flex, on le corrige aussi */
  .div-parent-2-card {
    display: flex;
    flex-direction: column;
    align-items: stretch; /* cartes prennent toute la largeur */
    gap: 20px; /* espace vertical entre elles */
    padding: 0;
  }
}

/* ==== CONTAINER ==== */
.card-img-archive {
  position: relative;
  overflow: hidden;
  border-radius: 20px;
  cursor: pointer;
  display: inline-block;
  padding: 0;
  width: 100%;
  max-width: 100%;
}

/* ==== IMAGE ==== */
.img-card-archive {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform 0.6s ease, filter 0.6s ease;
  padding: 0;
}

/* ==== OVERLAY SOMBRE ==== */
/*.card-img-archive::before {
  content: "";
  position: absolute;
  inset: 0;
  transition: background 0.5s ease;
  z-index: 1;
}*/

/* ==== TEXTE ==== */
.text-card-archive {
  position: absolute;
  bottom: 20px;
  left: 20px;
  color: #fff;
  font-weight: 500;
  font-size: 1.2rem;
  opacity: 0;
  transform: translateY(10px);
  transition: all 0.4s ease;
  z-index: 2;
}

/* ==== LIGNE SOULIGNÉE ANIMÉE ==== */
/*.text-card-archive::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: -4px;
  height: 2px;
  width: 0%;
  background: #fff;
  transition: width 0.4s ease;
}*/

/* ==== HOVER ==== */
.card-img-archive:hover .img-card-archive {
  transform: scale(1.08);
  /*filter: brightness(0.9);*/
}

/*.card-img-archive:hover::before {
  background: rgba(0, 0, 0, 0.45);
}

.card-img-archive:hover .text-card-archive {
  opacity: 1;
  transform: translateY(0);
}

.card-img-archive:hover .text-card-archive::after {
  width: 100%;
}*/


/* ===================================================== */
/* ==================   RESPONSIVE   ==================== */
/* ===================================================== */

@media (max-width: 768px) {
  /* Le conteneur prend toute la largeur */
  .card-img-archive {
    width: 100% !important;
    max-width: 100% !important;
    display: block; /* pour forcer la pleine largeur */
    margin: 0;
    padding: 0;
    border-radius: 16px;
  }

  /* L’image remplit complètement la div */
  .img-card-archive {
    width: 100% !important;
    height: auto;
    object-fit: cover;
    display: block;
    min-height: 350px; /* augmente la hauteur visible sur mobile */
  }

  /* Le texte reste visible avec animations */
  .text-card-archive {
    bottom: 20px;
    left: 20px;
    font-size: 1.2rem;
    opacity: 0;
    transform: translateY(15px);
    transition: all 0.5s ease;
  }

  .card-img-archive:hover .text-card-archive {
    opacity: 1;
    transform: translateY(0);
  }

  .text-card-archive::after {
    height: 2px;
    width: 0%;
    background: #fff;
    transition: width 0.4s ease;
  }

  .card-img-archive:hover .text-card-archive::after {
    width: 100%;
  }

  /* Le zoom reste fluide */
  .card-img-archive:hover .img-card-archive {
    transform: scale(1.05);
    filter: brightness(0.85);
  }

  /* ===== SUPPRESSION DE L’OVERLAY DANS LE CONTENEUR ===== */
  .card-conteneur-card .card-img-archive::before {
    content: none !important; /* supprime complètement le pseudo-élément overlay */
    background: none !important; /* par sécurité */
  }

  .card-conteneur-card .card-img-archive:hover::before {
    background: none !important; /* empêche le fondu sombre */
  }

  /* Garde les animations de texte */
  .card-conteneur-card .card-img-archive:hover .text-card-archive {
    opacity: 1;
    transform: translateY(0);
  }

  .card-conteneur-card .card-img-archive:hover .text-card-archive::after {
    width: 100%;
  }
}

@media (max-width: 480px) {
  .img-card-archive {
    min-height: 300px;
  }
}

/* ===================================================== */
/* ========   CONTENEUR DES CARTES MULTIPLES   ========= */
/* ===================================================== */

.card-conteneur-card {
  display: flex;
  justify-content: center;
  align-items: stretch;
  gap: 20px;
  width: 100%;
  margin: 0;
  padding: 0;
  background: none;
  box-shadow: none;
}

/* Les cartes à l'intérieur du conteneur */
.card-conteneur-card .card-img-archive {
  flex: 1;
  width: 100%;
  border-radius: 20px;
  overflow: hidden;
  background: none;
  box-shadow: none;
  transition: transform 0.4s ease;
}

/* Responsive : empile les cartes sur mobile */
@media (max-width: 768px) {
  .card-conteneur-card {
    flex-direction: column;
    align-items: center;
    gap: 20px;
    width: 100%;
    padding: 0;
    margin: 0;
  }

  .card-conteneur-card .card-img-archive {
    width: 100% !important;
    max-width: 100% !important;
    border-radius: 16px;
    box-shadow: none;
    padding: 0;
    margin: 0;
  }

  .card-conteneur-card .img-card-archive {
    width: 100%;
    height: auto;
    object-fit: cover;
    min-height: 350px;
    display: block;
  }
}

@media (max-width: 480px) {
  .card-conteneur-card .img-card-archive {
    min-height: 300px;
  }
}


/* === Div parent - effet verre liquide (sans hover) === */
.div-parent-product {
  background: rgba(255, 255, 255, 0.15);
  border-radius: 20px;
  border: 1px solid rgba(255, 255, 255, 0.3);
  padding: 2rem;
  display: flex;
  flex-direction: column;
  align-items: center;
  position: relative;
  overflow: hidden;
  box-shadow: 0 8px 32px rgba(0, 0, 0, 0.2);
}

/* Effet lumineux interne */
.div-parent-product::before {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: 20px;
  background: radial-gradient(circle at top left, rgba(255,255,255,0.25), transparent 60%);
  z-index: 0;
}

/* Tous les enfants au-dessus du fond */
.div-parent-product > * {
  position: relative;
  z-index: 2;
}

/* === Effet de soulignement animé sur le titre === */
.title-product {
  font-size: 1.4rem;
  font-weight: 700;
  color: #ffffff;
  text-align: center;
  margin-bottom: 0.3rem;
  position: relative;
  display: inline-block;
}

.title-product::after {
  content: "";
  position: absolute;
  left: 50%;
  bottom: -4px;
  width: 0;
  height: 2px;
  background: rgba(255, 255, 255, 0.8);
  transition: all 0.3s ease;
  transform: translateX(-50%);
  border-radius: 2px;
}

.title-product:hover::after {
  width: 60%;
}

/* === Image === */
.image-product {
  width: 100%;
  height: auto;
  border-radius: 15px;
  display: block;
  object-fit: cover;
  margin-bottom: 1rem;
  position: relative;
  z-index: 2;
}

/* Forcer l’affichage de toutes les images du bloc produit */
.div-parent-product img,
.div-parent-product .image-product {
  opacity: 1 !important;
  visibility: visible !important;
  transition: none !important;
}

/* === Description === */
.desc-product {
  font-size: 1rem;
  color: rgba(255, 255, 255, 0.85);
  text-align: center;
  margin-bottom: 1rem;
}

/* === Bouton WooCommerce "Ajouter au panier" === */
.single_add_to_cart_button.button.alt {
  background: rgba(255, 255, 255, 0.25);
  border: none;
  padding: 0.75rem 1.5rem;
  color: #ffffff;
  font-weight: 600;
  backdrop-filter: blur(10px);
  cursor: pointer;
  transition: background 0.3s ease, transform 0.3s ease;
  border-radius: 10px;
  position: relative;
  z-index: 2;
}

/* Zoom uniquement sur le bouton au survol */
.single_add_to_cart_button.button.alt:hover {
  background: rgba(255, 255, 255, 0.4);
  transform: scale(1.08);
}

/* Corrige le bug d'opacité WooCommerce sur la galerie produit */
.woocommerce-product-gallery {
  opacity: 1 !important;
  visibility: visible !important;
}
.div-product-shop {
  background: rgba(255, 255, 255, 0.1); /* translucide */
  backdrop-filter: blur(10px); /* effet de flou derrière */
  border: 1px solid rgba(255, 255, 255, 0.2); /* légère bordure */
  border-radius: 20px; /* coins arrondis */
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.3); /* ombre douce */
  padding: 20px;
  transition: transform 0.3s ease, box-shadow 0.3s ease;
  color: #fff; /* texte blanc pour contraste */
}

/* Effet au survol */
.div-product-shop:hover {
  transform: translateY(-5px);
  box-shadow: 0 6px 25px rgba(0, 0, 0, 0.4);
}


.button-div {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px; /* espace entre le texte et l’icône */
  background: rgba(255, 255, 255, 0.1);
  backdrop-filter: blur(10px);
  border: 1px solid rgba(255, 255, 255, 0.2);
  border-radius: 12px;
  padding: 12px 24px;
  color: #fff;
  font-weight: 600;
  text-transform: uppercase;
  cursor: pointer;
  transition: background 0.3s ease, transform 0.3s ease;
  overflow: hidden;
}

/* Effet au survol */
.button-div:hover {
  background: rgba(255, 255, 255, 0.2);
  transform: translateY(-2px);
}

/* Texte */
.text-shop {
  transition: color 0.3s ease;
}

/* Icône : position et animation */
.icon-shop {
  display: inline-block;
  transition: transform 0.4s ease;
}

/* Quand on survole le parent, l’icône glisse */
.button-div:hover .icon-shop {
  transform: translateX(6px);
}

.price-shop {
  font-size: 1.5rem;
  font-weight: bold;
  color: #fff;
  transition: transform 0.3s ease, text-shadow 0.3s ease;
}

.price-shop:hover {
  transform: scale(1.15);
  text-shadow: 0 0 10px #ffffff, 0 0 20px #ffffff;
}

.div-billeterie {
  position: relative;
  background: rgba(255, 255, 255, 0.08); /* transparence légère */
  backdrop-filter: blur(12px) saturate(150%);
  -webkit-backdrop-filter: blur(12px) saturate(150%);
  border: 1px solid rgba(255, 255, 255, 0.2);
  border-radius: 24px;
  padding: 30px;
  color: #fff;
  box-shadow: 0 8px 30px rgba(0, 0, 0, 0.4);
  overflow: hidden;
  transition: transform 0.4s ease, box-shadow 0.4s ease;
}

/* Effet au survol */
.div-billeterie:hover {
  transform: translateY(-5px);
  box-shadow: 0 10px 40px rgba(0, 0, 0, 0.5);
}

/* 💦 Effet liquide animé */
.div-billeterie::before {
  content: "";
  position: absolute;
  top: -50%;
  left: -50%;
  width: 200%;
  height: 200%;
  background: radial-gradient(
    circle at 30% 30%,
    rgba(255, 255, 255, 0.2) 0%,
    transparent 70%
  );
  animation: liquidMove 6s infinite linear;
  transform: rotate(0deg);
}

/* Animation subtile du “mouvement liquide” */
@keyframes liquidMove {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}

/* ==CART PAGE== */







.wpforms-container input.wpforms-field-medium, .wpforms-container select.wpforms-field-medium, .wpforms-container .wpforms-field-row.wpforms-field-medium, .wp-core-ui div.wpforms-container input.wpforms-field-medium, .wp-core-ui div.wpforms-container select.wpforms-field-medium, .wp-core-ui div.wpforms-container .wpforms-field-row.wpforms-field-medium {
    max-width: 100% !important;
}

div.wpforms-container-full input[type=submit]:not(:hover):not(:active), div.wpforms-container-full button[type=submit]:not(:hover):not(:active), div.wpforms-container-full .wpforms-page-button:not(:hover):not(:active), .wp-core-ui div.wpforms-container-full input[type=submit]:not(:hover):not(:active), .wp-core-ui div.wpforms-container-full button[type=submit]:not(:hover):not(:active), .wp-core-ui div.wpforms-container-full .wpforms-page-button:not(:hover):not(:active) {
    background-color: rgba(255, 255, 255, 0.3) !important;
    color: #fff !important;
    border-radius: 50px !important;
    border: 1px solid rgba(255, 255, 255, 0.5) !important;
    font-family:"Garet",sans-serif;
}

div.wpforms-container-full input[type=submit]:hover, div.wpforms-container-full input[type=submit]:active, div.wpforms-container-full button[type=submit]:hover, div.wpforms-container-full button[type=submit]:active, div.wpforms-container-full .wpforms-page-button:hover, div.wpforms-container-full .wpforms-page-button:active, .wp-core-ui div.wpforms-container-full input[type=submit]:hover, .wp-core-ui div.wpforms-container-full input[type=submit]:active, .wp-core-ui div.wpforms-container-full button[type=submit]:hover, .wp-core-ui div.wpforms-container-full button[type=submit]:active, .wp-core-ui div.wpforms-container-full .wpforms-page-button:hover, .wp-core-ui div.wpforms-container-full .wpforms-page-button:active {
    background: rgba(255, 255, 255, 0.3) !important;
    border-radius: 33px !important;
}

.wpforms-submit-container {
    display: flex !important;
    justify-content: center !important;
    font-family:"Garet",sans-serif;
}

div.wpforms-container-full input[type=date], div.wpforms-container-full input[type=datetime], div.wpforms-container-full input[type=datetime-local], div.wpforms-container-full input[type=email], div.wpforms-container-full input[type=month], div.wpforms-container-full input[type=number], div.wpforms-container-full input[type=password], div.wpforms-container-full input[type=range], div.wpforms-container-full input[type=search], div.wpforms-container-full input[type=tel], div.wpforms-container-full input[type=text], div.wpforms-container-full input[type=time], div.wpforms-container-full input[type=url], div.wpforms-container-full input[type=week], div.wpforms-container-full select, div.wpforms-container-full textarea, .wp-core-ui div.wpforms-container-full input[type=date], .wp-core-ui div.wpforms-container-full input[type=datetime], .wp-core-ui div.wpforms-container-full input[type=datetime-local], .wp-core-ui div.wpforms-container-full input[type=email], .wp-core-ui div.wpforms-container-full input[type=month], .wp-core-ui div.wpforms-container-full input[type=number], .wp-core-ui div.wpforms-container-full input[type=password], .wp-core-ui div.wpforms-container-full input[type=range], .wp-core-ui div.wpforms-container-full input[type=search], .wp-core-ui div.wpforms-container-full input[type=tel], .wp-core-ui div.wpforms-container-full input[type=text], .wp-core-ui div.wpforms-container-full input[type=time], .wp-core-ui div.wpforms-container-full input[type=url], .wp-core-ui div.wpforms-container-full input[type=week], .wp-core-ui div.wpforms-container-full select, .wp-core-ui div.wpforms-container-full textarea {
    font-family:"Garet",sans-serif;
}

div.wpforms-container-full input[type=date]:focus:invalid, div.wpforms-container-full input[type=datetime]:focus:invalid, div.wpforms-container-full input[type=datetime-local]:focus:invalid, div.wpforms-container-full input[type=email]:focus:invalid, div.wpforms-container-full input[type=month]:focus:invalid, div.wpforms-container-full input[type=number]:focus:invalid, div.wpforms-container-full input[type=password]:focus:invalid, div.wpforms-container-full input[type=range]:focus:invalid, div.wpforms-container-full input[type=search]:focus:invalid, div.wpforms-container-full input[type=tel]:focus:invalid, div.wpforms-container-full input[type=text]:focus:invalid, div.wpforms-container-full input[type=time]:focus:invalid, div.wpforms-container-full input[type=url]:focus:invalid, div.wpforms-container-full input[type=week]:focus:invalid, div.wpforms-container-full select:focus:invalid, div.wpforms-container-full textarea:focus:invalid, .wp-core-ui div.wpforms-container-full input[type=date]:focus:invalid, .wp-core-ui div.wpforms-container-full input[type=datetime]:focus:invalid, .wp-core-ui div.wpforms-container-full input[type=datetime-local]:focus:invalid, .wp-core-ui div.wpforms-container-full input[type=email]:focus:invalid, .wp-core-ui div.wpforms-container-full input[type=month]:focus:invalid, .wp-core-ui div.wpforms-container-full input[type=number]:focus:invalid, .wp-core-ui div.wpforms-container-full input[type=password]:focus:invalid, .wp-core-ui div.wpforms-container-full input[type=range]:focus:invalid, .wp-core-ui div.wpforms-container-full input[type=search]:focus:invalid, .wp-core-ui div.wpforms-container-full input[type=tel]:focus:invalid, .wp-core-ui div.wpforms-container-full input[type=text]:focus:invalid, .wp-core-ui div.wpforms-container-full input[type=time]:focus:invalid, .wp-core-ui div.wpforms-container-full input[type=url]:focus:invalid, .wp-core-ui div.wpforms-container-full input[type=week]:focus:invalid, .wp-core-ui div.wpforms-container-full select:focus:invalid, .wp-core-ui div.wpforms-container-full textarea:focus:invalid {
    border-width: var(--wpforms-field-border-size);
    border-style: solid;
    border-color: rgba(255, 255, 255, 0.5) !important;
    box-shadow: none !important;
    outline: none;
    color: var(--wpforms-field-text-color);
}

#form-waiting-list .wpforms-submit-container button{
  width:100%;
}

.wpforms-submit-container{
  justify-content:right !important;
}

#wpforms-form-205 input[type="text"], 
#wpforms-form-205 input[type="email"], 
#wpforms-form-205 textarea {
    background-color: transparent !important;
    border-radius: 0px !important;
    border: none !important;
    border-bottom: 2px solid #fff !important;
    color: white; /* Assurez-vous que le texte est lisible */
    padding: 10px;
}


#wpforms-205-field_1::placeholder,
#wpforms-205-field_1-last::placeholder,
#wpforms-205-field_2::placeholder,
#wpforms-205-field_3::placeholder,
#wpforms-205-field_3-last::placeholder {
  color: #fff !important;
}

#newsletter input[type="text"],
#newsletter input[type="email"],
#newsletter textarea {
   background-color: transparent !important;
    border-radius: 0px !important;
    border: none !important;
    border-bottom: 2px solid #fff !important;
    color: black !important; /* Assurez-vous que le texte est lisible */
    padding: 10px;
}

#newsletter input::placeholder {
    color: #fff !important;  /* Couleur grise par défaut */
  opacity: 1 !important;
}

/*     page volante place offerte annonceur         */
.form-annonceur .wpforms-container .wpforms-field {
  padding: 7px 0;
}

.form-annonceur .wpforms-submit-container button {
  width:100%;
}


