/*!
Theme Name: melimelodie v2
Theme URI: http://underscores.me/
Author: Underscores.me
Author URI: http://underscores.me/
Description: Description
Version: 1.0.0
Tested up to: 5.4
Requires PHP: 5.6
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: melimelodie
Tags: custom-background, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready

This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned.

melimelodie is based on Underscores https://underscores.me/, (C) 2012-2020 Automattic, Inc.
Underscores is distributed under the terms of the GNU GPL v2 or later.

Normalizing styles have been helped along thanks to the fine work of
Nicolas Gallagher and Jonathan Neal https://necolas.github.io/normalize.css/
*/

/*--------------------------------------------------------------
>>> TABLE OF CONTENTS:
----------------------------------------------------------------
# Generic
	- Normalize
	- Box sizing
# Base
	- Typography
	- Elements
	- Links
	- Forms
## Layouts
# Components
	- Navigation
	- Posts and pages
	- Comments
	- Widgets
	- Media
	- Captions
	- Galleries
# plugins
	- Jetpack infinite scroll
	- Woocommerce
# Utilities
	- Accessibility
	- Alignments

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

/*--------------------------------------------------------------
# Generic
--------------------------------------------------------------*/

/* Normalize
--------------------------------------------- */

/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */

/* Document
	 ========================================================================== */

/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */
html {
	line-height: 1.15;
	-webkit-text-size-adjust: 100%;
}

/* Sections
	 ========================================================================== */

/**
 * Remove the margin in all browsers.
 */
body {
	margin: 0;
}

/**
 * Render the `main` element consistently in IE.
 */
main {
	display: block;
}

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */
h1 {
    font-size: 30px;
	margin: 0.67em 0;
    text-transform: uppercase;
    color: #eb737c;
    letter-spacing: 4px;
    line-height: 1.3125em;
}

h2{
    text-transform: uppercase;
    font-weight: lighter;
    font-size: 25px;
    letter-spacing: 3px;
	color: #eb737c;
}

h3{
    text-transform: uppercase;
    font-weight: lighter;
    font-size: 16px;
    font-style: normal;
    letter-spacing: 3px;
	color: #eb737c;
}
#order_review_heading{
	margin-top: 20px;
}
/* Grouping content
	 ========================================================================== */

/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
	box-sizing: content-box;
	height: 0;
	overflow: visible;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
pre {
	font-family: monospace, monospace;
	font-size: 1em;
}

/* Text-level semantics
	 ========================================================================== */

/**
 * Remove the gray background on active links in IE 10.
 */
a {
	background-color: transparent;
}

/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */
abbr[title] {
	border-bottom: none;
	text-decoration: underline;
	text-decoration: underline dotted;
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */
b,
strong {
	font-weight: bolder;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
code,
kbd,
samp {
	font-family: monospace, monospace;
	font-size: 1em;
}

/**
 * Add the correct font size in all browsers.
 */
small {
	font-size: 80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */
sub,
sup {
	font-size: 75%;
	line-height: 0;
	position: relative;
	vertical-align: baseline;
}

sub {
	bottom: -0.25em;
}

sup {
	top: -0.5em;
}

/* Embedded content
	 ========================================================================== */

/**
 * Remove the border on images inside links in IE 10.
 */
img {
	border-style: none;
}

/* Forms
	 ========================================================================== */

/**
 * 1. Change the font styles in all browsers.
 * 2. Remove the margin in Firefox and Safari.
 */
button,
input,
optgroup,
select,
textarea {
	font-family: inherit;
	font-size: 100%;
	line-height: 1.15;
	margin: 0;
}

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */
button,
input {
	overflow: visible;
}

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */
button,
select {
	text-transform: none;
}

/**
 * Correct the inability to style clickable types in iOS and Safari.
 */
button,
[type="button"],
[type="reset"],
[type="submit"] {
	-webkit-appearance: button;
}

/**
 * Remove the inner border and padding in Firefox.
 */
button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
	border-style: none;
	padding: 0;
}

/**
 * Restore the focus styles unset by the previous rule.
 */
button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
	outline: 1px dotted ButtonText;
}

/**
 * Correct the padding in Firefox.
 */
fieldset {
	padding: 0.35em 0.75em 0.625em;
}

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *		`fieldset` elements in all browsers.
 */
legend {
	box-sizing: border-box;
	color: inherit;
	display: table;
	max-width: 100%;
	padding: 0;
	white-space: normal;
}

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress {
	vertical-align: baseline;
}

/**
 * Remove the default vertical scrollbar in IE 10+.
 */
textarea {
	overflow: auto;
}

/**
 * 1. Add the correct box sizing in IE 10.
 * 2. Remove the padding in IE 10.
 */
[type="checkbox"],
[type="radio"] {
	box-sizing: border-box;
	padding: 0;
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */
[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
	height: auto;
}

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */
[type="search"] {
	-webkit-appearance: textfield;
	outline-offset: -2px;
}

/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */
[type="search"]::-webkit-search-decoration {
	-webkit-appearance: none;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */
::-webkit-file-upload-button {
	-webkit-appearance: button;
	font: inherit;
}

/* Interactive
	 ========================================================================== */

/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */
details {
	display: block;
}

/*
 * Add the correct display in all browsers.
 */
summary {
	display: list-item;
}

/* Misc
	 ========================================================================== */

/**
 * Add the correct display in IE 10+.
 */
template {
	display: none;
}

/**
 * Add the correct display in IE 10.
 */
[hidden] {
	display: none;
}

/* Box sizing
--------------------------------------------- */

/* Inherit box-sizing to more easily change it's value on a component level.
@link http://css-tricks.com/inheriting-box-sizing-probably-slightly-better-best-practice/ */
*,
*::before,
*::after {
	box-sizing: inherit;
}

html {
	box-sizing: border-box;
}

/*--------------------------------------------------------------
# Base
--------------------------------------------------------------*/

/* Typography
--------------------------------------------- */
body,
button,
input,
select,
optgroup,
textarea {
    color: #8d8d8d;
    font-family: 'LatoWeb';
	font-size: 15px;
	line-height: 1.5;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	clear: both;
}

p {
	margin-bottom: 1.5em;
}

dfn,
cite,
em,
i {
	font-style: italic;
}

blockquote {
	margin: 0 1.5em;
}

address {
	margin: 0 0 1.5em;
}

pre {
	background: #eee;
	font-family: "Courier 10 Pitch", courier, monospace;
	line-height: 1.6;
	margin-bottom: 1.6em;
	max-width: 100%;
	overflow: auto;
	padding: 1.6em;
}

code,
kbd,
tt,
var {
	font-family: monaco, consolas, "Andale Mono", "DejaVu Sans Mono", monospace;
}

abbr,
acronym {
	border-bottom: 1px dotted #666;
	cursor: help;
}

mark,
ins {
	background: #fff9c0;
	text-decoration: none;
}

big {
	font-size: 125%;
}

/* Elements
--------------------------------------------- */
body {
	background: #fff;
}

hr {
	background-color: #ccc;
	border: 0;
	height: 1px;
	margin-bottom: 1.5em;
}



ul {
	list-style: disc;
}

ol {
	list-style: decimal;
}

li > ul,
li > ol {
	margin-bottom: 0;
	margin-left: 1.5em;
}

dt {
	font-weight: 700;
}

dd {
	margin: 0 1.5em 1.5em;
}

/* Make sure embeds and iframes fit their containers. */
embed,
iframe,
object {
	max-width: 100%;
}

img {
	height: auto;
	max-width: 100%;
}

figure {
	margin: 1em 0;
}

table {
	margin: 0 0 1.5em;
	width: 100%;
}

.footer{
	border-top: 2px solid #c2c2c2;
	padding-top: 20px;
	padding-bottom: 20px;
}

/* Links
--------------------------------------------- */
a {
	color: #8d8d8d;;
	text-decoration: none;
}
/*
a:visited {
	color: #800080;
}
*/
a:hover,
a:focus,
a:active {
	color: #404040;
}

a:focus {
	outline: thin dotted;
}

a:hover,
a:active {
	outline: 0;
}

/* Forms
--------------------------------------------- */
button,
input[type="button"],
input[type="reset"],
input[type="submit"] {
	border: 1px solid;
	border-color: #c9c9c9;
	border-radius: 0px;
	background: #c9c9c9;
	color: #393939;
	font-size: 11px;
	font-weight: 800;
	text-transform: uppercase;
	letter-spacing: 2px;
	padding: 0 22px;
	height: 37px;
	line-height: 37px;
}

button:hover,
input[type="button"]:hover,
input[type="reset"]:hover,
input[type="submit"]:hover {
	border-color: #c9c9c9;
	background: #fff;
}

button:active,
button:focus,
input[type="button"]:active,
input[type="button"]:focus,
input[type="reset"]:active,
input[type="reset"]:focus,
input[type="submit"]:active,
input[type="submit"]:focus {
	border-color: #aaa #bbb #bbb;
}

input[type="text"],
input[type="email"],
input[type="url"],
input[type="password"],
input[type="search"],
input[type="number"],
input[type="tel"],
input[type="range"],
input[type="date"],
input[type="month"],
input[type="week"],
input[type="time"],
input[type="datetime"],
input[type="datetime-local"],
input[type="color"],
textarea {
	color: #666;
	border: 1px solid #d7d7d7;
	border-radius: 3px;
	padding: 10px 5px;
	width: 100%;
	margin: 0 0 15px 0;
	line-height: 18px;
}

input[type="number"]{
	margin-bottom: 0;
}

input[type="text"]:focus,
input[type="email"]:focus,
input[type="url"]:focus,
input[type="password"]:focus,
input[type="search"]:focus,
input[type="number"]:focus,
input[type="tel"]:focus,
input[type="range"]:focus,
input[type="date"]:focus,
input[type="month"]:focus,
input[type="week"]:focus,
input[type="time"]:focus,
input[type="datetime"]:focus,
input[type="datetime-local"]:focus,
input[type="color"]:focus,
textarea:focus {
	color: #111;
}

select {
	border: 1px solid #ccc;
}

textarea {
	width: 100%;
}

/*--------------------------------------------------------------
# Layouts
--------------------------------------------------------------*/

.site-header{
    background: #fff;
    /*background: #fff9f6;*/
    border-bottom: 2px solid #e75059;
}

/*--------------------------------------------------------------
# Components
--------------------------------------------------------------*/

/* Navigation
--------------------------------------------- */
.main-navigation {
	display: block;
	width: 100%;
}

.main-navigation ul {
	display: none;
	list-style: none;
	margin: 0;
	padding-left: 0;
}

.main-navigation ul ul {
	box-shadow: 0 3px 3px rgba(0, 0, 0, 0.2);
	float: left;
	position: absolute;
	top: 100%;
	left: -999em;
	z-index: 99999;
}

.main-navigation ul ul ul {
	left: -999em;
	top: 0;
}

.main-navigation ul ul li:hover > ul,
.main-navigation ul ul li.focus > ul {
	display: block;
	left: auto;
}

.main-navigation ul ul a {
	width: 200px;
}

.main-navigation ul li:hover > ul,
.main-navigation ul li.focus > ul {
	left: auto;
}

.main-navigation li {
	position: relative;
}

.main-navigation a {
	display: block;
	text-decoration: none;
}

/* Small menu. */
.menu-toggle,
.main-navigation.toggled ul {
	display: block;
}

@media screen and (min-width: 37.5em) {

	.menu-toggle {
		display: none;
	}

	.main-navigation ul {
		display: flex;
	}
}

.site-main .comment-navigation,
.site-main
.posts-navigation,
.site-main
.post-navigation {
	margin: 0 0 1.5em;
}

.comment-navigation .nav-links,
.posts-navigation .nav-links,
.post-navigation .nav-links {
	display: flex;
}

.comment-navigation .nav-previous,
.posts-navigation .nav-previous,
.post-navigation .nav-previous {
	flex: 1 0 50%;
}

.comment-navigation .nav-next,
.posts-navigation .nav-next,
.post-navigation .nav-next {
	text-align: end;
	flex: 1 0 50%;
}

/* Menu Bootstrap Custom */
.navbar-light .navbar-nav .nav-link{
    font-family: 'LatoWebLight';
    text-transform: uppercase;
    color: #404040;
    letter-spacing: 3px;
    font-size: 16px;
}
.navbar-brand{
    margin-left: 4rem;
}
.navbar-light .navbar-nav .nav-link.active, .navbar-light .navbar-nav .show > .nav-link{
    color: #404040;
}
.dropdown-menu{
	border-radius: 0;
	border: none;
	border-top:1px solid #ffd0cf;
}

.dropdown-menu li{
	border-bottom: 1px solid #f3f3f3;
}
.dropdown-menu li:hover{
	background: #fff;
}
.dropdown-menu li a{
	font-size: 12px;
	line-height: 34px;
	font-weight: 500;
	text-transform: uppercase;
	text-align: left;
}
.dropdown-menu li a:hover{
	background: none;
	color: #404040;
}

/*menu footer
*/
.menu-menu-1-container .menu-item{

}
.menu-menu-1-container .menu-item a{
	color:#a2a2a2;
	text-decoration: none;
	display: block;
	padding: .5rem 1rem;
}

/* Posts and pages
--------------------------------------------- */
.sticky {
	display: block;
}

.post,
.page {
	margin: 0 0 1.5em;
}

.updated:not(.published) {
	display: none;
}

.page-content,
.entry-content,
.entry-summary {
	margin: 1.5em 0 0;
}

.page-links {
	clear: both;
	margin: 0 0 1.5em;
}

ul.boite_outil{
	background-color:#fbf8fb;
	padding:30px 20px;
	margin:0px;
}
ul.boite_outil li{
	list-style:none;
	border-bottom:1px solid #ffb5ba;
}
ul.boite_outil li p{
	margin: 5px 0;
}
ul.boite_outil li a{
	font-size:16px;
	text-transform:uppercase;
	color:#5a5a5a;
}

.fiche_technique{
	font-size:16px;
	margin-top:45px;
	text-transform:uppercase;
}
.bloc_contact{
	width: 65px;
	height: 65px;
	line-height: 2.5em;
	position: relative;
	background-color: #c9c9c9;
	font-size: 20px;
	border-radius: 5em;
	text-align: center;
	padding: 20px;
}
.adresse:before {
	font-family: 'Font Awesome 5 Free';
	font-weight: 900;
	content: "\f3c5" !important;
	font-size: 25px;
	color: #fff;
}
.telephone:before {
	font-family: 'Font Awesome 5 Free';
	font-weight: 900;
	content: "\f095" !important;
	font-size: 25px;
	color: #fff;
}
.eemail:before {
	font-family: 'Font Awesome 5 Free';
	font-weight: 900;
	content: "\f0e0" !important;
	font-size: 25px;
	color: #fff;
}

/* Comments
--------------------------------------------- */
.comment-content a {
	word-wrap: break-word;
}

.bypostauthor {
	display: block;
}

/* Widgets
--------------------------------------------- */
.widget {
	margin: 0 0 1.5em;
}

.widget select {
	max-width: 100%;
}

h2.widget-title {
	background-color: transparent;
	padding: 0px;
	color: #EB737C;
	font-size: 16px;
	text-transform: uppercase;
	font-weight: normal;
}
.sidebar h4 {
	background-color: transparent;
	padding: 0px;
	color: #EB737C;
	font-size: 16px;
	text-transform: uppercase;
	font-weight: normal;
}

/* Media
--------------------------------------------- */
.page-content .wp-smiley,
.entry-content .wp-smiley,
.comment-content .wp-smiley {
	border: none;
	margin-bottom: 0;
	margin-top: 0;
	padding: 0;
}

/* Make sure logo link wraps around logo image. */
.custom-logo-link {
	display: inline-block;
}

/* Captions
--------------------------------------------- */
.wp-caption {
	margin-bottom: 1.5em;
	max-width: 100%;
}

.wp-caption img[class*="wp-image-"] {
	display: block;
	margin-left: auto;
	margin-right: auto;
}

.wp-caption .wp-caption-text {
	margin: 0.8075em 0;
}

.wp-caption-text {
	text-align: center;
}

/* Galleries
--------------------------------------------- */
.gallery {
	margin-bottom: 1.5em;
	display: grid;
	grid-gap: 1.5em;
}

.gallery-item {
	display: inline-block;
	text-align: center;
	width: 100%;
}

.gallery-columns-2 {
	grid-template-columns: repeat(2, 1fr);
}

.gallery-columns-3 {
	grid-template-columns: repeat(3, 1fr);
}

.gallery-columns-4 {
	grid-template-columns: repeat(4, 1fr);
}

.gallery-columns-5 {
	grid-template-columns: repeat(5, 1fr);
}

.gallery-columns-6 {
	grid-template-columns: repeat(6, 1fr);
}

.gallery-columns-7 {
	grid-template-columns: repeat(7, 1fr);
}

.gallery-columns-8 {
	grid-template-columns: repeat(8, 1fr);
}

.gallery-columns-9 {
	grid-template-columns: repeat(9, 1fr);
}

.gallery-caption {
	display: block;
}



/*--------------------------------------------------------------
# Plugins
--------------------------------------------------------------*/

/* Jetpack infinite scroll
--------------------------------------------- */

/* Hide the Posts Navigation and the Footer when Infinite Scroll is in use. */
.infinite-scroll .posts-navigation,
.infinite-scroll.neverending .site-footer {
	display: none;
}

/* Re-display the Theme Footer when Infinite Scroll has reached its end. */
.infinity-end.neverending .site-footer {
	display: block;
}

/* Woocommerce
--------------------------------------------- */

.woocommerce #respond input#submit.alt, .woocommerce a.button.alt, .woocommerce button.button.alt, .woocommerce input.button.alt{background-color: #e75057;}
.woocommerce #respond input#submit.alt:hover,.woocommerce a.button.alt:hover,.woocommerce button.button.alt:hover,.woocommerce input.button.alt:hover{background-color:#db4850;color:#fff}
/* --- Notice WooCommerce "ajouté au panier" ----------------------- */
.woocommerce-notices-wrapper {
	max-width: 1320px;
	margin: 25px auto 0;
	padding: 0 var(--bs-gutter-x, 12px);
}
/*
 * WC 8.x : structure = <div class="woocommerce-message">
 *   <a class="button wc-forward">Voir le panier</a>   ← 1er dans le DOM
 *   «Produit» a été ajouté à votre panier.            ← texte (nœud anonyme)
 * </div>
 * Astuce : order CSS pour mettre le bouton à droite sans toucher le HTML.
 */
.woocommerce-message,
.woocommerce-info {
	border-top: 3px solid #c98d30 !important;
	border-left: none !important;
	border-right: none !important;
	border-bottom: none !important;
	outline: none !important;
	background-color: #faf4e6 !important;
	border-radius: 12px !important;
	padding: 14px 20px !important;
	margin: 0 0 24px !important;
	box-shadow: 0 4px 16px rgba(201, 141, 48, 0.07);
	/* Flex : texte (anonymous) à gauche, bouton à droite via order */
	display: flex !important;
	align-items: center !important;
	gap: 16px;
	font-family: 'Quicksand', sans-serif;
	font-weight: 600;
	font-size: 15px;
	color: #3a3a3a;
}

/* WooCommerce force position:absolute + display:inline-block sur ::before — on écrase tout */
.woocommerce-message::before,
.woocommerce-info::before {
	content: '' !important;
	display: block !important;
	position: static !important;
	float: none !important;
	top: auto !important;
	left: auto !important;
	font-family: inherit !important;
	font-size: 0 !important;
	flex-shrink: 0;
	align-self: center;
	width: 20px;
	height: 20px;
	min-width: 20px;
	margin: 0 !important;
	padding: 0;
	border-radius: 50%;
	background-color: #4caf50;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'%3E%3C/polyline%3E%3C/svg%3E");
	background-size: 12px;
	background-repeat: no-repeat;
	background-position: center;
}

/* Icône info (bleue) pour les notices .woocommerce-info */
.woocommerce-info::before {
	background-color: #1e85be;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='white'%3E%3Ccircle cx='12' cy='8' r='1.5'/%3E%3Crect x='10.75' y='11' width='2.5' height='7' rx='1.25'/%3E%3C/svg%3E");
}

/* Bouton "Voir le panier" : margin-left auto le colle à droite */
.woocommerce-message .button.wc-forward,
.woocommerce-message a.wc-forward,
.woocommerce-message .button {
	flex-shrink: 0;
	white-space: nowrap;
	float: none !important;
	margin-top: 0 !important;
	margin-bottom: 0 !important;
	margin-right: 0 !important;
	margin-left: auto !important;
}
.hentry .entry-content .woocommerce-MyAccount-navigation ul li {
	list-style: none;
	border-bottom: 1px solid rgba(0,0,0,.05);
	position: relative;
}
.hentry .entry-content .woocommerce-MyAccount-navigation ul li.woocommerce-MyAccount-navigation-link a {
	text-decoration: none;
	padding: .875em 0;
	display: block;
}
li.is-active a{
	color: #eb737c;
}
.woocommerce div.product p.price, .woocommerce div.product span.price {
	color: #eb737c;;
}
.woocommerce #respond input#submit, .woocommerce a.button, .woocommerce button.button, .woocommerce input.button {
	font-size: 13px;
	margin: 0;
	line-height: 1;
	cursor: pointer;
	position: relative;
	text-decoration: none;
	overflow: visible;
	padding: 10px 20px;
	font-weight: 700;
	font-family: 'Montserrat', sans-serif;
	letter-spacing: 0.08em;
	border-radius: 50px;
	left: auto;
	color: #c98d30;
	background-color: #fff;
	border: 1.5px solid #c98d30;
	display: inline-block;
	background-image: none;
	box-shadow: none;
	text-shadow: none;
	text-transform: uppercase;
	transition: all 0.3s ease;
}

.woocommerce #respond input#submit:hover, .woocommerce a.button:hover, .woocommerce button.button:hover, .woocommerce input.button:hover {
	color: #fff;
	background-color: #c98d30;
	border-color: #c98d30;
}

.woocommerce ul.products li.product .price{
	color: #eb737c;
}
.woocommerce a.added_to_cart {
	font-size: 13px;
	font-family: 'Montserrat', sans-serif;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	text-decoration: none;
	display: inline-block;
	padding: 10px 20px;
	border-radius: 50px;
	color: #fff;
	background-color: #c98d30;
	border: 1.5px solid #c98d30;
	box-shadow: none;
	text-shadow: none;
	background-image: none;
	cursor: pointer;
	transition: all 0.3s ease;
	margin: 0;
}

.woocommerce a.added_to_cart:hover {
	background-color: #b07a28;
	border-color: #b07a28;
	color: #fff;
}

.woocommerce .woocommerce-breadcrumb, .woocommerce-breadcrumb{
	margin-top: 1em;
}

.woocommerce-MyAccount-navigation ul{
	padding-left: 0;
	padding-right: 2rem;
}
.woocommerce div.product .woocommerce-tabs ul.tabs{
	display: none;
}

a.MyAccount_link:before {
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	display: inline-block;
	font-style: normal;
	font-variant: normal;
	font-weight: 400;
	line-height: 1;
	font-family: Font Awesome\ 5 Free;
	font-weight: 900;
	line-height: inherit;
	vertical-align: baseline;
	content: "\f007";
}

/* Panier header */
.cart-contents {
	position: relative;
	display: flex !important;
	flex-flow: column nowrap;
	justify-content: center;
	text-align: center;
}

.cart-contents:before {
	font-family: 'Font Awesome 5 Free';
	font-weight: 900;
	content: "\f290" !important;
	font-size: 25px;
	color: #9a9898;
}


.cart-contents:hover {
	text-decoration: none;
}

.cart-contents-count {
	position: absolute;
	top: 15px;
	/*right: 1px;*/
	right: 35%;
	transform: translateY(-105%) translateX(25%);
	font-family: Arial, Helvetica, sans-serif;
	font-weight: normal;
	font-size: 12px;
	line-height: 22px;
	height: 22px;
	width: 22px;
	vertical-align: middle;
	text-align: center;
	color: #fff;
	background: #fd7d8a;
	border-radius: 50%;
	padding: 1px;
}

/*--------------------------------------------------------------
# Utilities
--------------------------------------------------------------*/

/* Accessibility
--------------------------------------------- */

/* Text meant only for screen readers. */
.screen-reader-text {
	border: 0;
	clip: rect(1px, 1px, 1px, 1px);
	clip-path: inset(50%);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute !important;
	width: 1px;
	word-wrap: normal !important;
}

.screen-reader-text:focus {
	background-color: #f1f1f1;
	border-radius: 3px;
	box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
	clip: auto !important;
	clip-path: none;
	color: #21759b;
	display: block;
	font-size: 0.875rem;
	font-weight: 700;
	height: auto;
	left: 5px;
	line-height: normal;
	padding: 15px 23px 14px;
	text-decoration: none;
	top: 5px;
	width: auto;
	z-index: 100000;
}

/* Do not show the outline on the skip link target. */
#primary[tabindex="-1"]:focus {
	outline: 0;
}

/* Alignments
--------------------------------------------- */
.alignleft {

	/*rtl:ignore*/
	float: left;

	/*rtl:ignore*/
	margin-right: 1.5em;
	margin-bottom: 1.5em;
}

.alignright {

	/*rtl:ignore*/
	float: right;

	/*rtl:ignore*/
	margin-left: 1.5em;
	margin-bottom: 1.5em;
}

.aligncenter {
	clear: both;
	display: block;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 1.5em;
}
/*
#n2-ss-2item1{
	animation: fadeInAnimation ease 10s;
	animation-iteration-count: 1;
	animation-fill-mode: forwards;
}
@keyframes fadeInAnimation {
	0% {
		opacity: 0;
	}
	100% {
		opacity: 1;
	}
}
*/


/* Sliders
--------------------------------------------- */
.n2-ss-slide{cursor: pointer;}
/* Slider Chaque jour
--------------------------------------------- */

.n2-ss-slide-active .rotate-90-tr-cw{
	opacity: 0;
	animation: animationFrames linear 5s;
	animation-iteration-count: infinite;
	animation-delay: 3s;
	transform-origin: 50% 0%;
	-webkit-animation: animationFrames linear 5s;
	-webkit-animation-iteration-count: infinite;
	-webkit-animation-delay: 3s;
	-webkit-transform-origin: 50% 0%;
	-moz-animation: animationFrames linear 5s;
	-moz-animation-iteration-count: infinite;
	-moz-animation-delay: 3s;
	-moz-transform-origin: 50% 0%;
	-o-animation: animationFrames linear 5s;
	-o-animation-iteration-count: infinite;
	-o-animation-delay: 3s;
	-o-transform-origin: 50% 0%;
	-ms-animation: animationFrames linear 5s;
	-ms-animation-iteration-count: infinite;
	-ms-animation-delay: 3s;
	-ms-transform-origin: 50% 0%;
}

@keyframes animationFrames{
	0% {
		opacity: 1;
		transform:  rotate(0deg) ;
	}
	20% {
		transform:  rotate(10deg) ;
	}
	40% {
		transform:  rotate(-10deg) ;
	}
	60% {
		transform:  rotate(10deg) ;
	}
	80% {
		transform:  rotate(-10deg) ;
	}
	100% {
		opacity: 1;
		transform:  rotate(0deg) ;
	}
}

@-moz-keyframes animationFrames{
	0% {
		-moz-transform:  rotate(0deg) ;
	}
	20% {
		-moz-transform:  rotate(10deg) ;
	}
	40% {
		-moz-transform:  rotate(-10deg) ;
	}
	60% {
		-moz-transform:  rotate(10deg) ;
	}
	80% {
		-moz-transform:  rotate(-10deg) ;
	}
	100% {
		-moz-transform:  rotate(0deg) ;
	}
}

@-webkit-keyframes animationFrames {
	0% {
		-webkit-transform:  rotate(0deg) ;
	}
	20% {
		-webkit-transform:  rotate(10deg) ;
	}
	40% {
		-webkit-transform:  rotate(-10deg) ;
	}
	60% {
		-webkit-transform:  rotate(10deg) ;
	}
	80% {
		-webkit-transform:  rotate(-10deg) ;
	}
	100% {
		-webkit-transform:  rotate(0deg) ;
	}
}

@-o-keyframes animationFrames {
	0% {
		-o-transform:  rotate(0deg) ;
	}
	20% {
		-o-transform:  rotate(10deg) ;
	}
	40% {
		-o-transform:  rotate(-10deg) ;
	}
	60% {
		-o-transform:  rotate(10deg) ;
	}
	80% {
		-o-transform:  rotate(-10deg) ;
	}
	100% {
		-o-transform:  rotate(0deg) ;
	}
}

@-ms-keyframes animationFrames {
	0% {
		-ms-transform:  rotate(0deg) ;
	}
	20% {
		-ms-transform:  rotate(10deg) ;
	}
	40% {
		-ms-transform:  rotate(-10deg) ;
	}
	60% {
		-ms-transform:  rotate(10deg) ;
	}
	80% {
		-ms-transform:  rotate(-10deg) ;
	}
	100% {
		-ms-transform:  rotate(0deg) ;
	}
}
/*
#n2-ss-2item3{
	-webkit-transform: rotate(-15deg);
	transform: rotate(-15deg);
}
*/

.n2-ss-slide-active .rotate-90-tr-cw2, .n2-ss-slide-active #n2-ss-2item2, .n2-ss-slide-active #n2-ss-3item2 {
	-webkit-animation: rotate-90-tr-cw 3s linear infinite both;
	-webkit-animation-delay: 2s;
	animation: rotate-90-tr-cw 3s linear infinite both;
	animation-delay: 2s;
}


/* ----------------------------------------------
 * Generated by Animista on 2021-6-8 2:55:5
 * Licensed under FreeBSD License.
 * See http://animista.net/license for more info.
 * w: http://animista.net, t: @cssanimista
 * ---------------------------------------------- */

/**
 * ----------------------------------------
 * animation rotate-90-tr-cw
 * ----------------------------------------
 */
@-webkit-keyframes rotate-90-tr-cw {

	0% {
		-webkit-transform: rotate(0);
		transform: rotate(0);
		-webkit-transform-origin: 50% 0%;
		transform-origin: 50% 0%;
	}
	25% {
		-webkit-transform: rotate(10deg);
		transform: rotate(10deg);
		-webkit-transform-origin: 50% 0%;
		transform-origin: 50% 0%;
	}
	50% {
		-webkit-transform: rotate(0);
		transform: rotate(0);
		-webkit-transform-origin: 50% 0%;
		transform-origin: 50% 0%;
	}
	75% {
		-webkit-transform: rotate(-10deg);
		transform: rotate(-10deg);
		-webkit-transform-origin: 50% 0%;
		transform-origin: 50% 0%;
	}
	100% {
		-webkit-transform: rotate(0);
		transform: rotate(0);
		-webkit-transform-origin: 50% 0%;
		transform-origin: 50% 0%;
	}
}
@keyframes rotate-90-tr-cw {

	0% {
		-webkit-transform: rotate(0);
		transform: rotate(0);
		-webkit-transform-origin: 50% 0%;
		transform-origin: 50% 0%;
	}
	25% {
		-webkit-transform: rotate(10deg);
		transform: rotate(10deg);
		-webkit-transform-origin: 50% 0%;
		transform-origin: 50% 0%;
	}
	50% {
		-webkit-transform: rotate(0);
		transform: rotate(0);
		-webkit-transform-origin: 50% 0%;
		transform-origin: 50% 0%;
	}
	75% {
		-webkit-transform: rotate(-10deg);
		transform: rotate(-10deg);
		-webkit-transform-origin: 50% 0%;
		transform-origin: 50% 0%;
	}
	100% {
		-webkit-transform: rotate(0);
		transform: rotate(0);
		-webkit-transform-origin: 50% 0%;
		transform-origin: 50% 0%;
	}
}

.n2-ss-slide-active .montgolfiere{
	opacity:0;
	animation: fadeInAnimation ease 6s;
	animation-iteration-count: 1;
	animation-delay: 2s;
	transform-origin: 50% 50%;
	animation-fill-mode:forwards; /*when the spec is finished*/
	-webkit-animation: fadeInAnimation ease 6s;
	-webkit-animation-iteration-count: 1;
	-webkit-animation-delay: 2s;
	-webkit-transform-origin: 50% 50%;
	-webkit-animation-fill-mode:forwards; /*Chrome 16+, Safari 4+*/
	-moz-animation: fadeInAnimation ease 6s;
	-moz-animation-iteration-count: 1;
	-moz-animation-delay: 2s;
	-moz-transform-origin: 50% 50%;
	-moz-animation-fill-mode:forwards; /*FF 5+*/
	-o-animation: fadeInAnimation ease 6s;
	-o-animation-iteration-count: 1;
	-o-animation-delay: 2s;
	-o-transform-origin: 50% 50%;
	-o-animation-fill-mode:forwards; /*Not implemented yet*/
	-ms-animation: fadeInAnimation ease 6s;
	-ms-animation-iteration-count: 1;
	-ms-animation-delay: 2s;
	-ms-transform-origin: 50% 50%;
	-ms-animation-fill-mode:forwards; /*IE 10+*/
}

@keyframes fadeInAnimation{
	0% {
		opacity:0;
		transform: scale(0.5) translate(-200%, -100%)  ;
	}

	100% {
		opacity:1;
		transform: scale(1) translate(0%,0%)  ;
	}
}

@-moz-keyframes fadeInAnimation{
	0% {
		opacity:0;
		-moz-transform:  scale(0.5) translate(-200%, -100%)  ;
	}
	100% {
		opacity:1;
		-moz-transform:  scale(1) translate(0%,0%)  ;
	}
}

@-webkit-keyframes fadeInAnimation {
	0% {
		opacity:0;
		-webkit-transform:  scale(0.5) translate(-200%, -100%)  ;
	}
	100% {
		opacity:1;
		-webkit-transform:  scale(1) translate(0%,0%)  ;
	}
}

@-o-keyframes fadeInAnimation {
	0% {
		opacity:0;
		-o-transform:  scale(0.5) translate(-200%, -100%)  ;
	}
	100% {
		opacity:1;
		-o-transform:  scale(1) translate(0%,0%)  ;
	}
}

@-ms-keyframes fadeInAnimation {
	0% {
		opacity:0;
		-ms-transform:  scale(0.5) translate(-200%, -100%)  ;
	}
	100% {
		opacity:1;
		-ms-transform:  scale(1) translate(0%,0%)  ;
	}
}



.n2-ss-slide-active .branche{
	animation: animationbranche linear 3s;
	animation-iteration-count: 1;
	transform-origin: 50% 50%;
	-webkit-animation: animationbranche linear 3s;
	-webkit-animation-iteration-count: 1;
	-webkit-transform-origin: 50% 50%;
	-moz-animation: animationbranche linear 3s;
	-moz-animation-iteration-count: 1;
	-moz-transform-origin: 50% 50%;
	-o-animation: animationbranche linear 3s;
	-o-animation-iteration-count: 1;
	-o-transform-origin: 50% 50%;
	-ms-animation: animationbranche linear 3s;
	-ms-animation-iteration-count: 1;
	-ms-transform-origin: 50% 50%;
}

@keyframes animationbranche{
	0% {
		transform:  translate(0px,0px)  ;
	}
	15% {
		transform:  translate(0px,-35px)  ;
	}
	30% {
		transform:  translate(0px,0px)  ;
	}
	45% {
		transform:  translate(0px,-20px)  ;
	}
	60% {
		transform:  translate(0px,0px)  ;
	}
	75% {
		transform:  translate(0px,-5px)  ;
	}
	100% {
		transform:  translate(0px,0px)  ;
	}
}

@-moz-keyframes animationbranche{
	0% {
		-moz-transform:  translate(0px,0px)  ;
	}
	15% {
		-moz-transform:  translate(0px,-35px)  ;
	}
	30% {
		-moz-transform:  translate(0px,0px)  ;
	}
	45% {
		-moz-transform:  translate(0px,-20px)  ;
	}
	60% {
		-moz-transform:  translate(0px,0px)  ;
	}
	75% {
		-moz-transform:  translate(0px,-5px)  ;
	}
	100% {
		-moz-transform:  translate(0px,0px)  ;
	}
}

@-webkit-keyframes animationbranche {
	0% {
		-webkit-transform:  translate(0px,0px)  ;
	}
	15% {
		-webkit-transform:  translate(0px,-35px)  ;
	}
	30% {
		-webkit-transform:  translate(0px,0px)  ;
	}
	45% {
		-webkit-transform:  translate(0px,-20px)  ;
	}
	60% {
		-webkit-transform:  translate(0px,0px)  ;
	}
	75% {
		-webkit-transform:  translate(0px,-5px)  ;
	}
	100% {
		-webkit-transform:  translate(0px,0px)  ;
	}
}

@-o-keyframes animationbranche {
	0% {
		-o-transform:  translate(0px,0px)  ;
	}
	15% {
		-o-transform:  translate(0px,-35px)  ;
	}
	30% {
		-o-transform:  translate(0px,0px)  ;
	}
	45% {
		-o-transform:  translate(0px,-20px)  ;
	}
	60% {
		-o-transform:  translate(0px,0px)  ;
	}
	75% {
		-o-transform:  translate(0px,-5px)  ;
	}
	100% {
		-o-transform:  translate(0px,0px)  ;
	}
}

@-ms-keyframes animationbranche {
	0% {
		-ms-transform:  translate(0px,0px)  ;
	}
	15% {
		-ms-transform:  translate(0px,-35px)  ;
	}
	30% {
		-ms-transform:  translate(0px,0px)  ;
	}
	45% {
		-ms-transform:  translate(0px,-20px)  ;
	}
	60% {
		-ms-transform:  translate(0px,0px)  ;
	}
	75% {
		-ms-transform:  translate(0px,-5px)  ;
	}
	100% {
		-ms-transform:  translate(0px,0px)  ;
	}
}

.n2-ss-slide-active .elephant2{
	animation: animationelephant2 linear 3s;
	animation-iteration-count: 1;
	transform-origin: 50% 50%;
	-webkit-animation: animationelephant2 linear 3s;
	-webkit-animation-iteration-count: 1;
	-webkit-transform-origin: 50% 50%;
	-moz-animation: animationelephant2 linear 3s;
	-moz-animation-iteration-count: 1;
	-moz-transform-origin: 50% 50%;
	-o-animation: animationelephant2 linear 3s;
	-o-animation-iteration-count: 1;
	-o-transform-origin: 50% 50%;
	-ms-animation: animationelephant2 linear 3s;
	-ms-animation-iteration-count: 1;
	-ms-transform-origin: 50% 50%;
}

@keyframes animationelephant2{
	0% {
		transform:  translate(0px,0px)  ;
	}
	15% {
		transform:  translate(0px,-25px)  ;
	}
	30% {
		transform:  translate(0px,0px)  ;
	}
	45% {
		transform:  translate(0px,-15px)  ;
	}
	60% {
		transform:  translate(0px,0px)  ;
	}
	75% {
		transform:  translate(0px,-5px)  ;
	}
	100% {
		opacity: 0;
		transform:  translate(0px,0px)  ;
	}
}

@-moz-keyframes animationelephant2{
	0% {
		-moz-transform:  translate(0px,0px)  ;
	}
	15% {
		-moz-transform:  translate(0px,-25px)  ;
	}
	30% {
		-moz-transform:  translate(0px,0px)  ;
	}
	45% {
		-moz-transform:  translate(0px,-15px)  ;
	}
	60% {
		-moz-transform:  translate(0px,0px)  ;
	}
	75% {
		-moz-transform:  translate(0px,-5px)  ;
	}
	100% {
		-moz-transform:  translate(0px,0px)  ;
	}
}

@-webkit-keyframes animationelephant2 {
	0% {
		-webkit-transform:  translate(0px,0px)  ;
	}
	15% {
		-webkit-transform:  translate(0px,-25px)  ;
	}
	30% {
		-webkit-transform:  translate(0px,0px)  ;
	}
	45% {
		-webkit-transform:  translate(0px,-15px)  ;
	}
	60% {
		-webkit-transform:  translate(0px,0px)  ;
	}
	75% {
		-webkit-transform:  translate(0px,-5px)  ;
	}
	100% {
		-webkit-transform:  translate(0px,0px)  ;
	}
}

@-o-keyframes animationelephant2 {
	0% {
		-o-transform:  translate(0px,0px)  ;
	}
	15% {
		-o-transform:  translate(0px,-25px)  ;
	}
	30% {
		-o-transform:  translate(0px,0px)  ;
	}
	45% {
		-o-transform:  translate(0px,-15px)  ;
	}
	60% {
		-o-transform:  translate(0px,0px)  ;
	}
	75% {
		-o-transform:  translate(0px,-5px)  ;
	}
	100% {
		-o-transform:  translate(0px,0px)  ;
	}
}

@-ms-keyframes animationelephant2 {
	0% {
		-ms-transform:  translate(0px,0px)  ;
	}
	15% {
		-ms-transform:  translate(0px,-25px)  ;
	}
	30% {
		-ms-transform:  translate(0px,0px)  ;
	}
	45% {
		-ms-transform:  translate(0px,-15px)  ;
	}
	60% {
		-ms-transform:  translate(0px,0px)  ;
	}
	75% {
		-ms-transform:  translate(0px,-5px)  ;
	}
	100% {
		-ms-transform:  translate(0px,0px)  ;
	}
}

.n2-ss-slide-active #n2-ss-2item1,
.n2-ss-slide-active #n2-ss-3item1{
	transform: translatey(0px);
	animation: float 6s ease-in-out infinite;
	animation-delay: 3s;
}

@keyframes float {
	0% {
		transform: translatey(0px);
	}
	50% {
		transform: translatey(-25px);
	}
	100% {
		transform: translatey(0px);
	}
}

.n2-ss-slide-active .ombremontgolfiere{
	animation: ombremontgolfiere 6s ease-in-out infinite;
	animation-delay: 9.5s;
	opacity: 0;
}

@keyframes ombremontgolfiere {
	0% {
		opacity: 0.5;
		transform:  scale(1);
	}
	50% {
		transform:  scale(1.05);
		opacity: 0.1;
	}
	100% {
		transform:  scale(1);
		opacity: 0.5;
	}
}

.n2-ss-slide-active .bullejaune{
	-webkit-animation: bullejaune 6s ease-out infinite;
	animation: bullejaune 6s ease-out infinite;
	animation-delay: 9.5s;
	opacity: 0;
}
@-webkit-keyframes bullejaune {
	0% {transform: translateY(0) translateX(0) scale(0.25); opacity: 0.8;}
	100% {transform: translateY(-400px) translateX(-20px) scale(1.5); opacity: 0;}
}

@keyframes bullejaune {
	0% {transform: translateY(0) translateX(0) scale(0.25); opacity: 0.8;}
	100% {transform: translateY(-400px) translateX(-20px) scale(1.5); opacity: 0;}
}

.n2-ss-slide-active .bulleverte{
	-webkit-animation: bulleverte 4s ease-out 5s infinite;
	animation: bulleverte 4s ease-out 5s infinite;
	animation-delay: 9s;
	opacity: 0;
}

@-webkit-keyframes bulleverte {
	0% {transform: translateY(0) translateX(0) scale(0.25); opacity: 0.8;}
	100% {transform: translateY(-450px) translateX(20px) scale(1.5); opacity: 0;}
}

@keyframes bulleverte {
	0% {transform: translateY(0) translateX(0) scale(0.25); opacity: 0.8;}
	100% {transform: translateY(-450px) translateX(20px) scale(1.5); opacity: 0;}
}

.n2-ss-slide-active .bullerouge {
	-webkit-animation: bullejaune 4s ease-out 3.5s infinite;
	animation: bullejaune 4s ease-out 3.5s infinite;
	animation-delay: 9.8s;
	opacity: 0;
}


.n2-ss-slide-active .titrechaquejour{

	animation: titrechaquejour linear 1s;
	animation-iteration-count: 1;
	animation-delay: 8s;
	transform-origin: 50% 50%;
	-webkit-animation: titrechaquejour linear 1s;
	-webkit-animation-iteration-count: 1;
	-webkit-animation-delay: 8s;
	-webkit-transform-origin: 50% 50%;
	-moz-animation: titrechaquejour linear 1s;
	-moz-animation-iteration-count: 1;
	-moz-animation-delay: 8s;
	-moz-transform-origin: 50% 50%;
	-o-animation: titrechaquejour linear 1s;
	-o-animation-iteration-count: 1;
	-o-animation-delay: 8s;
	-o-transform-origin: 50% 50%;
	-ms-animation: titrechaquejour linear 1s;
	-ms-animation-iteration-count: 1;
	-ms-animation-delay: 8s;
	-ms-transform-origin: 50% 50%;
}

@keyframes titrechaquejour{
	0% {opacity: 1;
		transform:  rotate(0deg) scaleX(1.00) scaleY(1.00) ;
	}
	10% {
		transform:  rotate(-3deg) scaleX(0.80) scaleY(0.80) ;
	}
	20% {
		transform:  rotate(-3deg) scaleX(0.80) scaleY(0.80) ;
	}
	30% {
		transform:  rotate(3deg) scaleX(1.20) scaleY(1.20) ;
	}
	40% {
		transform:  rotate(-3deg) scaleX(1.20) scaleY(1.20) ;
	}
	50% {
		transform:  rotate(3deg) scaleX(1.20) scaleY(1.20) ;
	}
	60% {
		transform:  rotate(-3deg) scaleX(1.20) scaleY(1.20) ;
	}
	70% {
		transform:  rotate(3deg) scaleX(1.20) scaleY(1.20) ;
	}
	80% {
		transform:  rotate(-3deg) scaleX(1.20) scaleY(1.20) ;
	}
	90% {
		transform:  rotate(3deg) scaleX(1.20) scaleY(1.20) ;
	}
	100% {opacity: 1;
		transform:  rotate(0deg) scaleX(1.20) scaleY(1.20) ;
	}
}

@-moz-keyframes titrechaquejour{
	0% {opacity: 1;
		-moz-transform:  rotate(0deg) scaleX(1.00) scaleY(1.00) ;
	}
	10% {
		-moz-transform:  rotate(-3deg) scaleX(0.80) scaleY(0.80) ;
	}
	20% {
		-moz-transform:  rotate(-3deg) scaleX(0.80) scaleY(0.80) ;
	}
	30% {
		-moz-transform:  rotate(3deg) scaleX(1.20) scaleY(1.20) ;
	}
	40% {
		-moz-transform:  rotate(-3deg) scaleX(1.20) scaleY(1.20) ;
	}
	50% {
		-moz-transform:  rotate(3deg) scaleX(1.20) scaleY(1.20) ;
	}
	60% {
		-moz-transform:  rotate(-3deg) scaleX(1.20) scaleY(1.20) ;
	}
	70% {
		-moz-transform:  rotate(3deg) scaleX(1.20) scaleY(1.20) ;
	}
	80% {
		-moz-transform:  rotate(-3deg) scaleX(1.20) scaleY(1.20) ;
	}
	90% {
		-moz-transform:  rotate(3deg) scaleX(1.20) scaleY(1.20) ;
	}
	100% {opacity: 1;
		-moz-transform:  rotate(0deg) scaleX(1.20) scaleY(1.20) ;
	}
}

@-webkit-keyframes titrechaquejour {
	0% {opacity: 1;
		-webkit-transform:  rotate(0deg) scaleX(1.00) scaleY(1.00) ;
	}
	10% {
		-webkit-transform:  rotate(-3deg) scaleX(0.80) scaleY(0.80) ;
	}
	20% {
		-webkit-transform:  rotate(-3deg) scaleX(0.80) scaleY(0.80) ;
	}
	30% {
		-webkit-transform:  rotate(3deg) scaleX(1.20) scaleY(1.20) ;
	}
	40% {
		-webkit-transform:  rotate(-3deg) scaleX(1.20) scaleY(1.20) ;
	}
	50% {
		-webkit-transform:  rotate(3deg) scaleX(1.20) scaleY(1.20) ;
	}
	60% {
		-webkit-transform:  rotate(-3deg) scaleX(1.20) scaleY(1.20) ;
	}
	70% {
		-webkit-transform:  rotate(3deg) scaleX(1.20) scaleY(1.20) ;
	}
	80% {
		-webkit-transform:  rotate(-3deg) scaleX(1.20) scaleY(1.20) ;
	}
	90% {
		-webkit-transform:  rotate(3deg) scaleX(1.20) scaleY(1.20) ;
	}
	100% {opacity: 1;
		-webkit-transform:  rotate(0deg) scaleX(1.20) scaleY(1.20) ;
	}
}

@-o-keyframes titrechaquejour {
	0% {opacity: 1;
		-o-transform:  rotate(0deg) scaleX(1.00) scaleY(1.00) ;
	}
	10% {
		-o-transform:  rotate(-3deg) scaleX(0.80) scaleY(0.80) ;
	}
	20% {
		-o-transform:  rotate(-3deg) scaleX(0.80) scaleY(0.80) ;
	}
	30% {
		-o-transform:  rotate(3deg) scaleX(1.20) scaleY(1.20) ;
	}
	40% {
		-o-transform:  rotate(-3deg) scaleX(1.20) scaleY(1.20) ;
	}
	50% {
		-o-transform:  rotate(3deg) scaleX(1.20) scaleY(1.20) ;
	}
	60% {
		-o-transform:  rotate(-3deg) scaleX(1.20) scaleY(1.20) ;
	}
	70% {
		-o-transform:  rotate(3deg) scaleX(1.20) scaleY(1.20) ;
	}
	80% {
		-o-transform:  rotate(-3deg) scaleX(1.20) scaleY(1.20) ;
	}
	90% {
		-o-transform:  rotate(3deg) scaleX(1.20) scaleY(1.20) ;
	}
	100% {opacity: 1;
		-o-transform:  rotate(0deg) scaleX(1.20) scaleY(1.20) ;
	}
}

@-ms-keyframes titrechaquejour {
	0% {opacity: 1;
		-ms-transform:  rotate(0deg) scaleX(1.00) scaleY(1.00) ;
	}
	10% {
		-ms-transform:  rotate(-3deg) scaleX(0.80) scaleY(0.80) ;
	}
	20% {
		-ms-transform:  rotate(-3deg) scaleX(0.80) scaleY(0.80) ;
	}
	30% {
		-ms-transform:  rotate(3deg) scaleX(1.20) scaleY(1.20) ;
	}
	40% {
		-ms-transform:  rotate(-3deg) scaleX(1.20) scaleY(1.20) ;
	}
	50% {
		-ms-transform:  rotate(3deg) scaleX(1.20) scaleY(1.20) ;
	}
	60% {
		-ms-transform:  rotate(-3deg) scaleX(1.20) scaleY(1.20) ;
	}
	70% {
		-ms-transform:  rotate(3deg) scaleX(1.20) scaleY(1.20) ;
	}
	80% {
		-ms-transform:  rotate(-3deg) scaleX(1.20) scaleY(1.20) ;
	}
	90% {
		-ms-transform:  rotate(3deg) scaleX(1.20) scaleY(1.20) ;
	}
	100% {opacity: 1;
		-ms-transform:  rotate(0deg) scaleX(1.20) scaleY(1.20) ;
	}
}


.n2-ss-slide-active .pigeon{
	opacity:0;
	animation: pigeon ease 2s;
	animation-iteration-count: 1;
	transform-origin: 50% 50%;
	animation-fill-mode:forwards; /*when the spec is finished*/
	-webkit-animation: pigeon ease 2s;
	-webkit-animation-iteration-count: 1;
	-webkit-transform-origin: 50% 50%;
	-webkit-animation-fill-mode:forwards; /*Chrome 16+, Safari 4+*/
	-moz-animation: pigeon ease 2s;
	-moz-animation-iteration-count: 1;
	-moz-transform-origin: 50% 50%;
	-moz-animation-fill-mode:forwards; /*FF 5+*/
	-o-animation: pigeon ease 2s;
	-o-animation-iteration-count: 1;
	-o-transform-origin: 50% 50%;
	-o-animation-fill-mode:forwards; /*Not implemented yet*/
	-ms-animation: pigeon ease 2s;
	-ms-animation-iteration-count: 1;
	-ms-transform-origin: 50% 50%;
	-ms-animation-fill-mode:forwards; /*IE 10+*/
}

@keyframes pigeon{
	0% {
		opacity:0;
		transform: translateY(0) translateX(-200px);
	}
	40% {
		transform: translateY(0) translateX(20px);
	}
	65% {
		transform: translateY(0) translateX(-20px);
	}
	100% {
		opacity:1;
		transform: translateY(0) translateX(0);
	}
}

/* Slider Des yeux
--------------------------------------------- */

.n2-ss-slide-active .botte{
	animation: botte linear 1.5s;
	animation-iteration-count: 1;
	animation-delay: 1s;
}
@keyframes botte{
	0% {
		transform:  rotate(0deg) translate(0%, 0%);
	}
	40% {
		transform:  rotate(-30deg) translate(20%, 35%);
	}
	65% {
		transform:  rotate(0deg) translate(0%, 0%);
	}
	80% {
		transform:  rotate(-10deg) translate(10%, 10%);
	}
	100% {
		transform:  rotate(0deg) translate(0%, 0%);
	}
}

.n2-ss-slide-active .oeil{
	animation: oeil linear 3s;
	animation-iteration-count: 1;
	animation-delay: 2s;
	animation-fill-mode: forwards;
}
@keyframes oeil{
	0% {transform: translate(0%, 0%) scale(1); }
	45% {transform: translate(-175%, -120%) rotate(180deg) scale(0.8);}
	100% {transform: translate(-185%, 190%) rotate(380deg) scale(1.4);}

}

/*.n2-ss-slide-active .oeil2{
	animation: oeil2 0.7s ease infinite;
	animation-iteration-count: 1;
	animation-fill-mode: forwards;
}*/
.n2-ss-slide-6 .oeil2{display: none;}
.n2-ss-slide-active .oeil2{
	display: block;
	animation: oeil2 ease 2s;
	animation-iteration-count: 1;
	transform-origin: 50% 50%;
	animation-fill-mode:forwards; /*when the spec is finished*/
	-webkit-animation: oeil2 ease 2s;
	-webkit-animation-iteration-count: 1;
	-webkit-transform-origin: 50% 50%;
	-webkit-animation-fill-mode:forwards; /*Chrome 16+, Safari 4+*/
	-moz-animation: oeil2 ease 2s;
	-moz-animation-iteration-count: 1;
	-moz-transform-origin: 50% 50%;
	-moz-animation-fill-mode:forwards; /*FF 5+*/
	-o-animation: oeil2 ease 2s;
	-o-animation-iteration-count: 1;
	-o-transform-origin: 50% 50%;
	-o-animation-fill-mode:forwards; /*Not implemented yet*/
	-ms-animation: oeil2 ease 2s;
	-ms-animation-iteration-count: 1;
	-ms-transform-origin: 50% 50%;
	-ms-animation-fill-mode:forwards; /*IE 10+*/
	animation-delay: 9.5s;
	opacity:0;
}

@keyframes oeil2{
	0% {
		opacity:0;
		transform:  translate(0px,-115px)  ;
	}
	100% {
		opacity:1;
		transform:  translate(0px,0px) rotate(25deg) ;
	}
}

@-moz-keyframes oeil2{
	0% {
		opacity:0;
		-moz-transform:  translate(0px,-115px)  ;
	}
	100% {
		opacity:1;
		-moz-transform:  translate(0px,0px)  ;
	}
}

@-webkit-keyframes oeil2 {
	0% {
		opacity:0;
		-webkit-transform:  translate(0px,-115px)  ;
	}
	100% {
		opacity:1;
		-webkit-transform:  translate(0px,0px)  ;
	}
}

@-o-keyframes oeil2 {
	0% {
		opacity:0;
		-o-transform:  translate(0px,-115px)  ;
	}
	100% {
		opacity:1;
		-o-transform:  translate(0px,0px)  ;
	}
}

@-ms-keyframes oeil2 {
	0% {
		opacity:0;
		-ms-transform:  translate(0px,-115px)  ;
	}
	100% {
		opacity:1;
		-ms-transform:  translate(0px,0px)  ;
	}
}

.n2-ss-slide-active #n2-ss-2item15,
.n2-ss-slide-active #n2-ss-3item15{
	animation: balancoirefin2 linear 5s;
	animation-iteration-count: infinite;
	animation-delay: 16s;
	transform-origin: 50% 0%;
	-webkit-animation: balancoirefin2 linear 5s;
	-webkit-animation-iteration-count: infinite;
	-webkit-animation-delay: 16s;
	-webkit-transform-origin: 50% 0%;
	-moz-animation: balancoirefin2 linear 5s;
	-moz-animation-iteration-count: infinite;
	-moz-animation-delay: 16s;
	-moz-transform-origin: 50% 0%;
	-o-animation: balancoirefin2 linear 5s;
	-o-animation-iteration-count: infinite;
	-o-animation-delay: 16s;
	-o-transform-origin: 50% 0%;
	-ms-animation: balancoirefin2 linear 5s;
	-ms-animation-iteration-count: infinite;
	-ms-animation-delay: 16s;
	-ms-transform-origin: 50% 0%;
}

@keyframes balancoirefin2{
	0% {
		opacity: 1;
		transform:  rotate(0deg) ;
	}
	20% {
		transform:  rotate(5deg) ;
	}
	40% {
		transform:  rotate(-1deg) ;
	}
	60% {
		transform:  rotate(5deg) ;
	}
	80% {
		transform:  rotate(-1deg) ;
	}
	100% {
		opacity: 1;
		transform:  rotate(0deg) ;
	}
}

@-moz-keyframes balancoirefin2{
	0% {
		-moz-transform:  rotate(0deg) ;
	}
	20% {
		-moz-transform:  rotate(5deg) ;
	}
	40% {
		-moz-transform:  rotate(-1deg) ;
	}
	60% {
		-moz-transform:  rotate(5deg) ;
	}
	80% {
		-moz-transform:  rotate(-1deg) ;
	}
	100% {
		-moz-transform:  rotate(0deg) ;
	}
}

@-webkit-keyframes balancoirefin2 {
	0% {
		-webkit-transform:  rotate(0deg) ;
	}
	20% {
		-webkit-transform:  rotate(5deg) ;
	}
	40% {
		-webkit-transform:  rotate(-1deg) ;
	}
	60% {
		-webkit-transform:  rotate(5deg) ;
	}
	80% {
		-webkit-transform:  rotate(-1deg) ;
	}
	100% {
		-webkit-transform:  rotate(0deg) ;
	}
}

@-o-keyframes balancoirefin2 {
	0% {
		-o-transform:  rotate(0deg) ;
	}
	20% {
		-o-transform:  rotate(5deg) ;
	}
	40% {
		-o-transform:  rotate(-1deg) ;
	}
	60% {
		-o-transform:  rotate(5deg) ;
	}
	80% {
		-o-transform:  rotate(-1deg) ;
	}
	100% {
		-o-transform:  rotate(0deg) ;
	}
}

@-ms-keyframes balancoirefin2 {
	0% {
		-ms-transform:  rotate(0deg) ;
	}
	20% {
		-ms-transform:  rotate(5deg) ;
	}
	40% {
		-ms-transform:  rotate(-1deg) ;
	}
	60% {
		-ms-transform:  rotate(5deg) ;
	}
	80% {
		-ms-transform:  rotate(-1deg) ;
	}
	100% {
		-ms-transform:  rotate(0deg) ;
	}
}

.n2-ss-slide-active .balancoire>div{
	animation: balancoirefin linear 3s;
	animation-iteration-count: 1;
	animation-delay: 13s;
	transform-origin: top left;
	-webkit-animation: balancoirefin linear 3s;
	-webkit-animation-iteration-count:1;
	-webkit-animation-delay: 13s;
	-webkit-transform-origin: top left;
	-moz-animation: balancoirefin linear 3s;
	-moz-animation-iteration-count: 1;
	-moz-animation-delay: 13s;
	-moz-transform-origin: top left;
	-o-animation: balancoirefin linear 3s;
	-o-animation-iteration-count: 1;
	-o-animation-delay: 13s;
	-o-transform-origin: top left;
	-ms-animation: balancoirefin linear 3s;
	-ms-animation-iteration-count: 1;
	-ms-animation-delay: 13s;
	-ms-transform-origin: top left;
	animation-fill-mode: forwards;
	transform:scale(1) rotate(0deg) ;
}

@keyframes balancoirefin{
	0% {
		opacity: 1;
		transform:scale(1) rotate(0deg) ;
	}

	75% {
		transform:scale(1.1) rotate(65deg) ;
	}
	850% {
		transform:scale(1.1) rotate(44deg) ;
	}
	92% {
		transform:scale(1.1) rotate(60deg) ;
	}

	100% {
		transform:scale(1.1) rotate(55deg) ;
	}
}

.n2-ss-slide-active .balancoire{
	animation: balancoire linear 5s;
	animation-iteration-count: 2;
	animation-delay: 3.4s;
	transform-origin: top left;
	-webkit-animation: balancoire linear 5s;
	-webkit-animation-iteration-count: 2;
	-webkit-animation-delay: 3.4s;
	-webkit-transform-origin: top left;
	-moz-animation: balancoire linear 5s;
	-moz-animation-iteration-count: 2;
	-moz-animation-delay: 3.4s;
	-moz-transform-origin: top left;
	-o-animation: balancoire linear 5s;
	-o-animation-iteration-count: 2;
	-o-animation-delay: 3.4s;
	-o-transform-origin: top left;
	-ms-animation: balancoire linear 5s;
	-ms-animation-iteration-count: 2;
	-ms-animation-delay: 3.4s;
	-ms-transform-origin: top left;
}

@keyframes balancoire{
	0% {
		opacity: 1;
		transform:scale(1) rotate(0deg) ;
	}
	20% {
		transform:scale(1.1) rotate(45deg);
	}
	40% {
		transform:scale(0.9) rotate(-25deg) ;
	}
	60% {
		transform:scale(1.1) rotate(45deg) ;
	}
	80% {
		transform:scale(0.9) rotate(-25deg) ;
	}
	100% {
		opacity: 1;
		transform: scale(1)  rotate(0deg) ;
	}
}

@-moz-keyframes balancoire{
	0% {
		-moz-transform:  rotate(0deg) ;
	}
	20% {
		-moz-transform:  rotate(45deg) ;
	}
	40% {
		-moz-transform:  rotate(-25deg) ;
	}
	60% {
		-moz-transform:  rotate(45deg) ;
	}
	80% {
		-moz-transform:  rotate(-25deg) ;
	}
	100% {
		-moz-transform:  rotate(0deg) ;
	}
}

@-webkit-keyframes balancoire {
	0% {
		-webkit-transform:  rotate(0deg) ;
	}
	20% {
		-webkit-transform:  rotate(45deg) ;
	}
	40% {
		-webkit-transform:  rotate(-25deg) ;
	}
	60% {
		-webkit-transform:  rotate(10deg) ;
	}
	80% {
		-webkit-transform:  rotate(-45deg) ;
	}
	100% {
		-webkit-transform:  rotate(0deg) ;
	}
}

@-o-keyframes balancoire {
	0% {
		-o-transform:  rotate(0deg) ;
	}
	20% {
		-o-transform:  rotate(45deg) ;
	}
	40% {
		-o-transform:  rotate(-25deg) ;
	}
	60% {
		-o-transform:  rotate(45deg) ;
	}
	80% {
		-o-transform:  rotate(-25deg) ;
	}
	100% {
		-o-transform:  rotate(0deg) ;
	}
}

@-ms-keyframes balancoire {
	0% {
		-ms-transform:  rotate(0deg) ;
	}
	20% {
		-ms-transform:  rotate(45deg) ;
	}
	40% {
		-ms-transform:  rotate(-25deg) ;
	}
	60% {
		-ms-transform:  rotate(45deg) ;
	}
	80% {
		-ms-transform:  rotate(-25deg) ;
	}
	100% {
		-ms-transform:  rotate(0deg) ;
	}
}

/* Nuage */
.n2-ss-slide-active .nuage {
	animation:animated_div 2s 1;
	-moz-animation:animated_div 2s 1;
	-webkit-animation:animated_div 2s 1;
	-o-animation:animated_div 2s 1;
	animation-delay: 4.5s;
	-moz-animation-delay: 4.5s;
	-webkit-animation-delay: 4.5s;
	-o-animation-delay: 4.5s;
	animation-iteration-count: 1;
	-moz-animation-iteration-count: 1;
	-webkit-animation-iteration-count: 1;
	-o-animation-iteration-count: 1;
	animation-fill-mode: forwards;
}
/*
@keyframes animated_div
{
	0% {transform: translate(0%, 0%); }
	55% {transform: translate(-80%, -20%);}
	100% {transform: translate(0%, 0%);}
}

@-webkit-keyframes animated_div
{
	0% {-webkit-transform: rotate(0deg);left:0px;}
	25% {-webkit-transform: rotate(20deg);left:0px;}
	50% {-webkit-transform: rotate(0deg);left:500px;}
	55% {-webkit-transform: rotate(0deg);left:500px;}
	70% {-webkit-transform: rotate(0deg);left:500px;}
	100% {-webkit-transform: rotate(-360deg);left:0px;}
}

@-moz-keyframes animated_div
{
	0%  {-moz-transform: rotate(0deg);left:0px;}
	25% {-moz-transform: rotate(20deg);left:0px;}
	50%  {-moz-transform: rotate(0deg);left:500px;}
	55%  {-moz-transform: rotate(0deg);left:500px;}
	70%  {-moz-transform: rotate(0deg);left:500px;}
	100% {-moz-transform: rotate(-360deg);left:0px;}
}

@-o-keyframes animated_div
{
	0% {transform: rotate(0deg);left:0px;}
	25% {transform: rotate(20deg);left:0px;}
	50%  {transform: rotate(0deg);left:500px;}
	55%  {transform: rotate(0deg);left:500px;}
	70%  {transform: rotate(0deg);left:500px;}
	100% {transform: rotate(-360deg);left:0px;}
}
*/



@keyframes animated_div{
	0% {
		opacity:1;
		transform:  translate(0px,0px)  ;
	}
	20% {
		opacity:1;
		transform:  translate(20px,0px)  ;
	}
	100% {
		opacity:0;
		transform:  translate(-1000px,0px)  ;
	}
}

@-moz-keyframes animated_div{
	0% {
		opacity:1;
		-moz-transform:  translate(0px,0px)  ;
	}
	20% {
		opacity:1;
		-moz-transform:  translate(20px,0px)  ;
	}
	100% {
		opacity:0;
		-moz-transform:  translate(-1000px,0px)  ;
	}
}

@-webkit-keyframes animated_div {
	0% {
		opacity:1;
		-webkit-transform:  translate(0px,0px)  ;
	}
	20% {
		opacity:1;
		-webkit-transform:  translate(20px,0px)  ;
	}
	100% {
		opacity:0;
		-webkit-transform:  translate(-1000px,0px)  ;
	}
}

@-o-keyframes animated_div {
	0% {
		opacity:1;
		-o-transform:  translate(0px,0px)  ;
	}
	20% {
		opacity:1;
		-o-transform:  translate(20px,0px)  ;
	}
	100% {
		opacity:0;
		-o-transform:  translate(-1000px,0px)  ;
	}
}

@-ms-keyframes animated_div {
	0% {
		opacity:1;
		-ms-transform:  translate(0px,0px)  ;
	}
	20% {
		opacity:1;
		-ms-transform:  translate(20px,0px)  ;
	}
	100% {
		opacity:0;
		-ms-transform:  translate(-1000px,0px)  ;
	}
}

.n2-ss-slide-active .toto{
	animation: nuage2 ease-out 2s;
	animation-iteration-count: 1;
	transform-origin: 50% 50%;
	animation-fill-mode:forwards; /*when the spec is finished*/
	-webkit-animation: nuage2 ease-out 2s;
	-webkit-animation-iteration-count: 1;
	-webkit-transform-origin: 50% 50%;
	-webkit-animation-fill-mode:forwards; /*Chrome 16+, Safari 4+*/
	-moz-animation: nuage2 ease-out 2s;
	-moz-animation-iteration-count: 1;
	-moz-transform-origin: 50% 50%;
	-moz-animation-fill-mode:forwards; /*FF 5+*/
	-o-animation: nuage2 ease-out 2s;
	-o-animation-iteration-count: 1;
	-o-transform-origin: 50% 50%;
	-o-animation-fill-mode:forwards; /*Not implemented yet*/
	-ms-animation: nuage2 ease-out 2s;
	-ms-animation-iteration-count: 1;
	-ms-transform-origin: 50% 50%;
	-ms-animation-fill-mode:forwards; /*IE 10+*/
	animation-delay: 6s;
	opacity:0;
}

@keyframes nuage2{
	0% {
		opacity:0;
		transform:  translate(300px,0px)  skewX(-30deg) ;
	}
	60% {
		opacity:1;
		transform:  translate(-40px,0px)  skewX(30deg) ;
	}
	80% {
		opacity:1;
		transform:  translate(0px,0px)  skewX(-15deg) ;
	}
	100% {
		opacity:1;
		transform:  translate(0px,0px)  skewX(0deg) ;
	}
}

@-moz-keyframes nuage2{
	0% {
		opacity:0;
		-moz-transform:  translate(300px,0px)  skewX(-30deg) ;
	}
	60% {
		opacity:1;
		-moz-transform:  translate(-40px,0px)  skewX(30deg) ;
	}
	80% {
		opacity:1;
		-moz-transform:  translate(0px,0px)  skewX(-15deg) ;
	}
	100% {
		opacity:1;
		-moz-transform:  translate(0px,0px)  skewX(0deg) ;
	}
}

@-webkit-keyframes nuage2 {
	0% {
		opacity:0;
		-webkit-transform:  translate(300px,0px)  skewX(-30deg) ;
	}
	60% {
		opacity:1;
		-webkit-transform:  translate(-40px,0px)  skewX(30deg) ;
	}
	80% {
		opacity:1;
		-webkit-transform:  translate(0px,0px)  skewX(-15deg) ;
	}
	100% {
		opacity:1;
		-webkit-transform:  translate(0px,0px)  skewX(0deg) ;
	}
}

@-o-keyframes nuage2 {
	0% {
		opacity:0;
		-o-transform:  translate(300px,0px)  skewX(-30deg) ;
	}
	60% {
		opacity:1;
		-o-transform:  translate(-40px,0px)  skewX(30deg) ;
	}
	80% {
		opacity:1;
		-o-transform:  translate(0px,0px)  skewX(-15deg) ;
	}
	100% {
		opacity:1;
		-o-transform:  translate(0px,0px)  skewX(0deg) ;
	}
}

@-ms-keyframes nuage2 {
	0% {
		opacity:0;
		-ms-transform:  translate(300px,0px)  skewX(-30deg) ;
	}
	60% {
		opacity:1;
		-ms-transform:  translate(-40px,0px)  skewX(30deg) ;
	}
	80% {
		opacity:1;
		-ms-transform:  translate(0px,0px)  skewX(-15deg) ;
	}
	100% {
		opacity:1;
		-ms-transform:  translate(0px,0px)  skewX(0deg) ;
	}
}

.n2-ss-slide-active .desyeux{
	-webkit-animation: rotate-scale-down 0.65s linear both;
	animation: rotate-scale-down 0.65s linear both;
	animation-delay: 5.5s;
	-moz-animation-delay: 5.5s;
	-webkit-animation-delay: 5.5s;
	-o-animation-delay: 5.5s;
	opacity: 0;
}
/* ----------------------------------------------
 * Generated by Animista on 2021-6-9 2:5:48
 * Licensed under FreeBSD License.
 * See http://animista.net/license for more info.
 * w: http://animista.net, t: @cssanimista
 * ---------------------------------------------- */

/**
 * ----------------------------------------
 * animation rotate-scale-down
 * ----------------------------------------
 */
@-webkit-keyframes rotate-scale-down {
	0% {
		opacity: 0;
		-webkit-transform: scale(1) rotateZ(0);
		transform: scale(1) rotateZ(0);
	}
	50% {
		-webkit-transform: scale(0.5) rotateZ(180deg);
		transform: scale(0.5) rotateZ(180deg);
	}
	100% {
		opacity: 1;
		-webkit-transform: scale(1) rotateZ(360deg);
		transform: scale(1) rotateZ(360deg);
	}
}
@keyframes rotate-scale-down {
	0% {
		opacity: 0;
		-webkit-transform: scale(1) rotateZ(0);
		transform: scale(1) rotateZ(0);
	}
	50% {
		-webkit-transform: scale(0.5) rotateZ(180deg);
		transform: scale(0.5) rotateZ(180deg);
	}
	100% {
		opacity: 1;
		-webkit-transform: scale(1) rotateZ(360deg);
		transform: scale(1) rotateZ(360deg);
	}
}




/* Fumée */




.n2-ss-slide-active .fumee {
	animation:fumee 4s 1;
	-moz-animation:fumee 4s 1;
	-webkit-animation:fumee 4s 1;
	-o-animation:fumee 4s 1;
	animation-delay: 11.2s;
	-moz-animation-delay: 11.2s;
	-webkit-animation-delay: 11.2s;
	-o-animation-delay: 11.2s;
	animation-iteration-count: 1;
	-moz-animation-iteration-count: 1;
	-webkit-animation-iteration-count: 1;
	-o-animation-iteration-count: 1;
	animation-fill-mode: forwards;
	opacity:0;
}

@keyframes fumee
{
	0% {
		transform:scale(1);
		 opacity:0;

	 }

	50% {
		transform:scale(1.1);
		opacity:0.8;
	}


	100% {
		transform:scale(1);
		opacity:1;
	}
}

@-webkit-keyframes fumee
{
	0% {-webkit-transform: rotate(0deg);left:0px;}
	25% {-webkit-transform: rotate(20deg);left:0px;}
	50% {-webkit-transform: rotate(0deg);left:500px;}
	55% {-webkit-transform: rotate(0deg);left:500px;}
	70% {-webkit-transform: rotate(0deg);left:500px;}
	100% {-webkit-transform: rotate(-360deg);left:0px;}
}

@-moz-keyframes fumee
{
	0%  {-moz-transform: rotate(0deg);left:0px;}
	25% {-moz-transform: rotate(20deg);left:0px;}
	50%  {-moz-transform: rotate(0deg);left:500px;}
	55%  {-moz-transform: rotate(0deg);left:500px;}
	70%  {-moz-transform: rotate(0deg);left:500px;}
	100% {-moz-transform: rotate(-360deg);left:0px;}
}

@-o-keyframes fumee
{
	0% {transform: rotate(0deg);left:0px;}
	25% {transform: rotate(20deg);left:0px;}
	50%  {transform: rotate(0deg);left:500px;}
	55%  {transform: rotate(0deg);left:500px;}
	70%  {transform: rotate(0deg);left:500px;}
	100% {transform: rotate(-360deg);left:0px;}
}


/* =============================================================
   TARTEAUCITRON — Surcharge charte Méli Mélodie
   ============================================================= */

/* --- Bandeau principal (très discret) ------------------------- */
#tarteaucitronAlertBig {
	background: rgba(255,253,251,0.98) !important;
	border-top: 1px solid rgba(201, 141, 48, 0.12) !important;
	border-bottom: none !important;
	box-shadow: 0 -1px 8px rgba(0,0,0,0.04) !important;
	padding: 7px 20px !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	gap: 8px !important;
	flex-wrap: wrap !important;
	min-height: 0 !important;
	text-align: center !important;
}

#tarteaucitronDisclaimerAlert,
#tarteaucitronDisclaimerAlert strong {
	font-family: 'Montserrat', sans-serif !important;
	font-size: 11px !important;
	font-weight: 400 !important;
	color: #aaa !important;
	line-height: 1.3 !important;
}

/* Boutons du bandeau */
/* Base commune aux 3 boutons — même taille garantie */
#tarteaucitronRoot #tarteaucitronAlertBig button#tarteaucitronAllAllowed,
#tarteaucitronRoot #tarteaucitronAlertBig button#tarteaucitronAllDenied,
#tarteaucitronRoot #tarteaucitronAlertBig button#tarteaucitronPersonalize,
#tarteaucitronRoot #tarteaucitronAlertBig button#tarteaucitronPersonalize2,
#tarteaucitronRoot #tarteaucitronAlertBig button#tarteaucitronCloseAlert,
#tarteaucitronRoot #tarteaucitronAlertBig #tarteaucitronAllAllowed,
#tarteaucitronRoot #tarteaucitronAlertBig #tarteaucitronAllDenied,
#tarteaucitronRoot #tarteaucitronAlertBig #tarteaucitronPersonalize,
#tarteaucitronRoot #tarteaucitronAlertBig #tarteaucitronPersonalize2,
#tarteaucitronRoot #tarteaucitronAlertBig #tarteaucitronCloseAlert,
#tarteaucitronRoot .tarteaucitronCTAButton {
	font-family: 'Montserrat', sans-serif !important;
	font-size: 9px !important;
	font-weight: 600 !important;
	letter-spacing: 0.06em !important;
	text-transform: uppercase !important;
	border-radius: 30px !important;
	padding: 4px 11px !important;
	margin: 2px !important;
	cursor: pointer !important;
	transition: all 0.2s ease !important;
	box-shadow: none !important;
	line-height: 1.4 !important;
	height: auto !important;
	min-height: 0 !important;
	max-height: none !important;
	display: inline-flex !important;
	align-items: center !important;
	vertical-align: middle !important;
	width: auto !important;
}

#tarteaucitronRoot #tarteaucitronAlertBig button#tarteaucitronAllAllowed,
#tarteaucitronRoot #tarteaucitronAlertBig #tarteaucitronAllAllowed {
	background: var(--primary) !important;
	color: #fff !important;
	border: 1px solid var(--primary) !important;
	font-size: 9px !important;
	padding: 4px 11px !important;
}
#tarteaucitronRoot #tarteaucitronAlertBig button#tarteaucitronAllAllowed:hover,
#tarteaucitronRoot #tarteaucitronAlertBig #tarteaucitronAllAllowed:hover {
	background: #a87428 !important;
	border-color: #a87428 !important;
}

#tarteaucitronRoot #tarteaucitronAlertBig button#tarteaucitronAllDenied,
#tarteaucitronRoot #tarteaucitronAlertBig #tarteaucitronAllDenied {
	background: transparent !important;
	color: #bbb !important;
	border: 1px solid #e0e0e0 !important;
	font-size: 9px !important;
	padding: 4px 11px !important;
}
#tarteaucitronRoot #tarteaucitronAlertBig button#tarteaucitronAllDenied:hover,
#tarteaucitronRoot #tarteaucitronAlertBig #tarteaucitronAllDenied:hover {
	color: #888 !important;
	border-color: #bbb !important;
}

#tarteaucitronRoot #tarteaucitronAlertBig button#tarteaucitronPersonalize,
#tarteaucitronRoot #tarteaucitronAlertBig button#tarteaucitronPersonalize2,
#tarteaucitronRoot #tarteaucitronAlertBig #tarteaucitronPersonalize,
#tarteaucitronRoot #tarteaucitronAlertBig #tarteaucitronPersonalize2 {
	background: transparent !important;
	color: #bbb !important;
	border: 1px solid #e0e0e0 !important;
	text-decoration: none !important;
}
#tarteaucitronRoot #tarteaucitronAlertBig button#tarteaucitronPersonalize:hover,
#tarteaucitronRoot #tarteaucitronAlertBig button#tarteaucitronPersonalize2:hover,
#tarteaucitronRoot #tarteaucitronAlertBig button#tarteaucitronCloseAlert:hover,
#tarteaucitronRoot #tarteaucitronAlertBig #tarteaucitronPersonalize:hover,
#tarteaucitronRoot #tarteaucitronAlertBig #tarteaucitronPersonalize2:hover,
#tarteaucitronRoot #tarteaucitronAlertBig #tarteaucitronCloseAlert:hover {
	color: #888 !important;
	border-color: #bbb !important;
}

/* Couleur sobre pour CloseAlert / Personalize */
#tarteaucitronRoot #tarteaucitronAlertBig button#tarteaucitronCloseAlert,
#tarteaucitronRoot #tarteaucitronAlertBig #tarteaucitronCloseAlert {
	background: transparent !important;
	color: #bbb !important;
	border: 1px solid #e0e0e0 !important;
}

#tarteaucitronRoot #tarteaucitronAlertBig #tarteaucitronPrivacyUrl,
#tarteaucitronRoot #tarteaucitronAlertBig #tarteaucitronPrivacyUrlDialog {
	font-family: 'Montserrat', sans-serif !important;
	font-size: 9px !important;
	color: #ddd !important;
	text-decoration: underline !important;
	background: none !important;
	border: none !important;
	padding: 2px 4px !important;
	border-radius: 0 !important;
	text-transform: none !important;
	letter-spacing: 0 !important;
	height: auto !important;
	line-height: 1.4 !important;
}

/* --- Bouton flottant (manager) -------------------------------- */
#tarteaucitronIcon {
	bottom: 16px !important;
	left: 16px !important;
	right: auto !important;
}

#tarteaucitronIcon #tarteaucitronManager {
	background: transparent !important;
	border: none !important;
	border-radius: 0 !important;
	color: #bbb !important;
	font-family: 'Montserrat', sans-serif !important;
	font-size: 9px !important;
	font-weight: 500 !important;
	letter-spacing: 0.06em !important;
	text-transform: uppercase !important;
	padding: 2px 4px !important;
	width: auto !important;
	height: auto !important;
	line-height: 1 !important;
	box-shadow: none !important;
	text-decoration: underline !important;
	opacity: 0.6 !important;
}
#tarteaucitronIcon #tarteaucitronManager:hover {
	color: var(--primary) !important;
	opacity: 1 !important;
}

#tarteaucitronIcon #tarteaucitronManager img { display: none !important; }
#tarteaucitronIcon #tarteaucitronManager::before { content: 'Cookies' !important; }

/* --- Modal panneau préférences (sobre) ------------------------ */
#tarteaucitron {
	font-family: 'Montserrat', sans-serif !important;
}

/* Header du modal (orange → blanc cassé) */
#tarteaucitron #tarteaucitronInfo,
#tarteaucitron .tarteaucitronH1,
#tarteaucitron #tarteaucitronServices .tarteaucitronMainLine {
	background: var(--secondary) !important;
	color: var(--text-dark) !important;
	border-bottom: 1px solid rgba(201, 141, 48, 0.15) !important;
}

#tarteaucitron .tarteaucitronH1,
#tarteaucitron #tarteaucitronInfo h1 {
	color: var(--primary) !important;
	font-size: 15px !important;
	font-weight: 700 !important;
}

/* Bouton politique de confidentialité dans le modal */
#tarteaucitron #tarteaucitronInfo #tarteaucitronPrivacyUrl,
#tarteaucitron #tarteaucitronInfo #tarteaucitronPrivacyUrlDialog {
	background: #fff !important;
	color: var(--primary) !important;
	border: 1px solid rgba(201, 141, 48, 0.3) !important;
	border-radius: 20px !important;
	font-size: 10px !important;
	padding: 8px 18px !important;
}

/* Boutons Tout accepter / Tout refuser dans le modal */
#tarteaucitron #tarteaucitronServices .tarteaucitronMainLine #tarteaucitronAllAllowed2 {
	background: var(--primary) !important;
	color: #fff !important;
	border-radius: 20px !important;
	border: none !important;
	font-size: 10px !important;
}
#tarteaucitron #tarteaucitronServices .tarteaucitronMainLine #tarteaucitronAllDenied2 {
	background: transparent !important;
	color: #999 !important;
	border: 1px solid #ddd !important;
	border-radius: 20px !important;
	font-size: 10px !important;
}

/* Bouton FERMER */
#tarteaucitronClosePanel {
	background: var(--secondary) !important;
	color: var(--primary) !important;
	font-family: 'Montserrat', sans-serif !important;
	font-size: 10px !important;
	font-weight: 700 !important;
	letter-spacing: 0.08em !important;
}

/* Catégories (tabs sombres → crème claire) */
#tarteaucitronRoot .tarteaucitronTitle,
#tarteaucitron #tarteaucitronServices .tarteaucitronDetails,
#tarteaucitron .tarteaucitronBorderRadius {
	background: #f5f0e8 !important;
	color: var(--primary) !important;
	border-radius: 8px !important;
}

#tarteaucitronRoot .tarteaucitronTitle button {
	color: var(--primary) !important;
	font-family: 'Montserrat', sans-serif !important;
	font-size: 11px !important;
	font-weight: 700 !important;
}

/* Boutons AUTORISER / INTERDIRE */
#tarteaucitronRoot .tarteaucitronAllow {
	background: rgba(201, 141, 48, 0.12) !important;
	color: var(--primary) !important;
	border-radius: 20px !important;
	font-family: 'Montserrat', sans-serif !important;
	font-size: 10px !important;
	border: 1px solid rgba(201, 141, 48, 0.3) !important;
}
#tarteaucitronRoot .tarteaucitronAllow:hover {
	background: var(--primary) !important;
	color: #fff !important;
}

#tarteaucitronRoot .tarteaucitronDeny {
	background: transparent !important;
	color: #bbb !important;
	border: 1px solid #e5e5e5 !important;
	border-radius: 20px !important;
	font-family: 'Montserrat', sans-serif !important;
	font-size: 10px !important;
}

/* --- Responsive ----------------------------------------- */
@media screen and (max-width: 600px) {
	#tarteaucitronAlertBig { padding: 10px 12px !important; }
	#tarteaucitronAllAllowed,
	#tarteaucitronAllDenied,
	#tarteaucitronPersonalize,
	#tarteaucitronPersonalize2 { font-size: 9px !important; padding: 6px 12px !important; }
}

/* =============================================================
   MÉLI MÉLODIE V2 — Design system
   Ajouté en bas du fichier pour surcharger les styles hérités.
   ============================================================= */

:root {
	--primary:         #c98d30;
	--secondary:       #faf4e6;
	--background:      #fffdfb;
	--text-dark:       #3a3a3a;
	--accent-blue:     #a4cbf3;
	--accent-yellow:   #fde047;
	--accent-orange:   #fca5a5;
	--pastille-violet: #d4bce4;
	--pastille-orange: #fbc6b0;
	--pastille-green:  #b9d8cb;
}

body {
	font-family: 'Quicksand', sans-serif;
	background-color: var(--background);
	color: var(--text-dark);
	overflow-x: hidden;
	font-weight: 500;
	padding-top: 230px;
	transition: padding-top 0.4s ease;
}

h1, h2, h3, h4, h5, h6, .font-title {
	font-family: 'Montserrat', sans-serif;
	font-weight: 700;
	letter-spacing: -0.02em;
	/* Override de l'ancien thème (uppercase rose) */
	text-transform: none;
	color: var(--text-dark);
}

/* --- Navigation morphing --- */
.navbar {
	background-color: rgba(255, 255, 255, 0.97);
	backdrop-filter: blur(8px);
	border-bottom: 1px solid rgba(0, 0, 0, 0.05);
	transition: all 0.4s cubic-bezier(0.25, 1, 0.5, 1);
	padding-top: 24px;
	padding-bottom: 24px;
}

.navbar-desktop-container {
	display: flex;
	flex-direction: column;
	align-items: center;
	width: 100%;
	transition: all 0.4s cubic-bezier(0.25, 1, 0.5, 1);
}

.navbar-logo-stacked {
	max-height: 125px;
	opacity: 1;
	margin-bottom: 24px;
	overflow: hidden;
	transition: max-height 0.4s cubic-bezier(0.25, 1, 0.5, 1),
	            opacity 0.3s ease,
	            margin-bottom 0.4s cubic-bezier(0.25, 1, 0.5, 1),
	            transform 0.4s ease;
	transform-origin: center;
}
.navbar-logo-stacked img { height: 125px; width: auto; }

.navbar-menu-row-grid {
	display: grid;
	grid-template-columns: 1fr auto 1fr;
	align-items: center;
	width: 100%;
	transition: all 0.4s cubic-bezier(0.25, 1, 0.5, 1);
}

.navbar-logo-inline {
	justify-self: start;
	opacity: 0;
	transform: translateX(-20px);
	pointer-events: none;
	transition: all 0.4s cubic-bezier(0.25, 1, 0.5, 1);
}
.navbar-logo-inline img { height: 55px; width: auto; }

.nav-links-wrapper {
	grid-column: 2;
	justify-self: center;
	display: flex;
	align-items: center;
	gap: 4px;
}

.nav-link {
	font-weight: 700;
	text-transform: uppercase;
	font-size: 13px;
	letter-spacing: 0.12em;
	color: #6c757d !important;
	padding: 0.5rem 1rem !important;
	transition: color 0.3s ease;
	position: relative;
	white-space: nowrap;
}
.nav-link:hover,
.nav-link.active { color: var(--primary) !important; }
.nav-link.active::after {
	content: '';
	position: absolute;
	bottom: 0;
	left: 1rem;
	right: 1rem;
	height: 2px;
	background-color: var(--primary);
}

/* Dropdowns CSS */
.nav-item-dropdown { position: relative; display: inline-block; }
.dropdown-submenu {
	position: absolute;
	top: 100%;
	left: 50%;
	transform: translateX(-50%) translateY(15px);
	background-color: #ffffff;
	border: 1px solid rgba(201, 141, 48, 0.12);
	border-radius: 16px;
	box-shadow: 0 15px 35px rgba(201, 141, 48, 0.08);
	padding: 10px 0;
	min-width: 255px;
	opacity: 0;
	visibility: hidden;
	transition: all 0.3s cubic-bezier(0.25, 1, 0.5, 1);
	z-index: 1000;
}
.nav-item-dropdown:hover .dropdown-submenu {
	opacity: 1;
	visibility: visible;
	transform: translateX(-50%) translateY(0);
}
.dropdown-submenu-link {
	display: block;
	padding: 10px 24px;
	font-size: 11px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.1em;
	color: #6c757d;
	text-decoration: none;
	transition: all 0.2s ease;
	text-align: center;
}
.dropdown-submenu-link:hover {
	color: var(--primary);
	background-color: var(--secondary);
}

.mobile-submenu-link {
	font-size: 11px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.08em;
	color: #8c8c8c !important;
	text-decoration: none;
	transition: color 0.2s ease;
	display: block;
	padding: 4px 0;
}
.mobile-submenu-link:hover { color: var(--primary) !important; }

/* Panier */
.navbar-cart-wrapper { grid-column: 3; justify-self: end; }
.btn-cart {
	color: #6c757d;
	background: none;
	border: none;
	padding: 8px;
	border-radius: 50%;
	transition: all 0.3s ease;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	position: relative;
	text-decoration: none;
}
.btn-cart:hover { color: var(--primary); background-color: var(--secondary); }
/* Neutralise le ::before Font Awesome de l'ancien thème sur le nouveau bouton */
.btn-cart::before { content: none !important; }
.cart-badge {
	position: absolute;
	top: -2px;
	right: -2px;
	background-color: var(--primary);
	color: white;
	font-size: 9px;
	font-family: sans-serif;
	width: 15px;
	height: 15px;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
}

/* État scrolled */
.navbar.scrolled { padding-top: 8px; padding-bottom: 8px; box-shadow: 0 4px 20px rgba(0, 0, 0, 0.04); }
.navbar.scrolled .navbar-logo-stacked { max-height: 0; opacity: 0; margin-bottom: 0; transform: scale(0.8); pointer-events: none; }
.navbar.scrolled .navbar-logo-inline { opacity: 1; transform: translateX(0); pointer-events: auto; }

/* Pastilles décoratives */
.logo-dots { display: inline-flex; align-items: center; justify-content: center; gap: 8px; height: 24px; }
.logo-dots span { display: inline-block; border-radius: 50%; box-shadow: 0 1px 2px rgba(0, 0, 0, 0.03); transition: transform 0.3s ease; }
.logo-dots span:hover { transform: scale(1.15) !important; }
.dot-1 { width: 8px; height: 8px; background-color: var(--pastille-violet); transform: translateY(-1px); }
.dot-2 { width: 5px; height: 5px; background-color: var(--pastille-orange); transform: translateY(4px); }
.dot-3 { width: 7px; height: 7px; background-color: var(--pastille-green); transform: translateY(-3px); }

/* Bouton standard */
.btn-custom {
	font-size: 11px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.15em;
	color: var(--primary);
	border: 2px solid rgba(201, 141, 48, 0.3);
	background-color: transparent;
	padding: 11px 24px;
	border-radius: 50px;
	transition: all 0.3s ease;
	text-decoration: none;
	display: inline-block;
}
.btn-custom:hover { background-color: var(--primary); border-color: var(--primary); color: #ffffff; transform: scale(1.02); }

/* --- Footer --- */
.site-footer {
	border-top: 1px solid rgba(0, 0, 0, 0.08);
	padding-top: 40px;
	padding-bottom: 40px;
	background-color: var(--background);
}
.footer-social-link {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 32px;
	height: 32px;
	border-radius: 50%;
	color: white !important;
	margin-right: 8px;
	transition: transform 0.3s ease;
	text-decoration: none;
}
.footer-social-link:hover { transform: scale(1.1); }
.footer-social-fb  { background-color: #d08c23; }
.footer-social-ig  { background: radial-gradient(circle at 30% 107%, #fdf497 0%, #fdf497 5%, #fd5949 45%, #d6249f 60%, #285aeb 90%); }
.footer-copyright  { font-size: 13px; color: #8c8c8c; margin-top: 8px; }

.footer-links {
	display: flex;
	flex-wrap: wrap;
	gap: 24px;
	justify-content: flex-end;
	margin: 0;
	padding: 0;
	list-style: none;
}
.footer-links .menu-item a {
	font-size: 13px;
	color: #8c8c8c;
	text-decoration: none;
	transition: color 0.3s ease;
}
.footer-links .menu-item a:hover { color: var(--primary); }

/* --- Cartes Spectacles --- */
.spectacle-card {
	background-color: #ffffff;
	border: 1px solid rgba(201, 141, 48, 0.1);
	border-radius: 24px;
	overflow: hidden;
	box-shadow: 0 6px 18px rgba(0, 0, 0, 0.02);
	transition: all 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
	height: 100%;
	display: flex;
	flex-direction: column;
}
.spectacle-card:hover {
	transform: translateY(-6px);
	box-shadow: 0 16px 32px rgba(201, 141, 48, 0.06);
	border-color: rgba(201, 141, 48, 0.25);
}
.spectacle-img-container {
	position: relative;
	aspect-ratio: 16 / 11;
	overflow: hidden;
	background-color: #fef5f5;
}
.spectacle-img-container img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 0.6s cubic-bezier(0.165, 0.84, 0.44, 1);
}
.spectacle-card:hover .spectacle-img-container img { transform: scale(1.05); }
.spectacle-card-body {
	padding: 32px;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	flex-grow: 1;
}
.spectacle-card-subtitle {
	font-size: 10px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.08em;
	color: var(--primary);
}
.spectacle-card-body p {
	line-height: 1.6;
	font-size: 0.875rem;
	color: #6c757d;
	margin-bottom: 0;
}

/* --- Section Tournée --- */
.tournee-section {
	border-top: 1px solid rgba(0, 0, 0, 0.05);
	max-width: 960px;
	margin-left: auto;
	margin-right: auto;
}
.tour-dates-list { margin-top: 40px; }
.tour-date-full-row {
	display: flex;
	align-items: center;
	padding: 20px 24px;
	background-color: #ffffff;
	border: 1px solid rgba(201, 141, 48, 0.08);
	border-radius: 18px;
	margin-bottom: 16px;
	box-shadow: 0 4px 10px rgba(0, 0, 0, 0.01);
	transition: all 0.3s ease;
}
.tour-date-full-row:hover {
	border-color: rgba(201, 141, 48, 0.25);
	transform: translateX(4px);
	box-shadow: 0 6px 15px rgba(201, 141, 48, 0.03);
}
.tour-date-day {
	min-width: 110px;
	text-align: center;
	background-color: var(--secondary);
	color: var(--primary);
	border-radius: 12px;
	padding: 10px;
	font-weight: 700;
	line-height: 1.15;
	margin-right: 24px;
	display: flex;
	flex-direction: column;
	justify-content: center;
	flex-shrink: 0;
}
.tour-date-day span       { display: block; font-size: 16px; letter-spacing: -0.02em; }
.tour-date-day span.range { font-size: 15px; }
.tour-date-day small      { font-size: 10px; text-transform: uppercase; letter-spacing: 0.05em; margin-top: 2px; display: block; }
.tour-date-details        { flex: 1; min-width: 0; }
.tour-date-city           { font-weight: 700; color: var(--text-dark); font-size: 17px; margin-bottom: 2px; }
.tour-date-venue          { font-size: 14px; color: #8c8c8c; margin-bottom: 0; }
.tour-date-spectacle-tag  { font-size: 11px; font-weight: 700; text-transform: uppercase; letter-spacing: 0.05em; color: var(--primary); margin-top: 4px; display: block; }

/* --- Section Manifeste --- */
.manifesto-section { border-top: 1px solid rgba(0, 0, 0, 0.05); }
.manifesto-box {
	background-color: var(--secondary);
	border: 1px dashed rgba(201, 141, 48, 0.25);
	border-radius: 24px;
	padding: 50px 60px;
	position: relative;
	box-shadow: 0 10px 25px rgba(201, 141, 48, 0.02);
	max-width: 860px;
	margin: 0 auto;
}
.manifesto-quote-icon {
	font-family: "Georgia", serif;
	font-size: 80px;
	line-height: 0.1;
	color: var(--primary);
	opacity: 0.15;
	position: absolute;
	top: 45px;
	left: 20px;
	pointer-events: none;
}
.manifesto-quote-icon-end {
	font-family: "Georgia", serif;
	font-size: 80px;
	line-height: 0.1;
	color: var(--primary);
	opacity: 0.15;
	position: absolute;
	bottom: 15px;
	right: 20px;
	pointer-events: none;
}
.manifesto-text {
	font-size: 16px;
	font-weight: 500;
	color: var(--primary);
	line-height: 1.8;
	text-align: center;
	position: relative;
	z-index: 1;
}
.manifesto-text p { color: var(--primary); margin-bottom: 0.5em; }
.manifesto-text p:last-child { margin-bottom: 0; }

/* Admin bar : décale la navbar fixe pour éviter le chevauchement */
.admin-bar .navbar { top: 32px; }
@media screen and (max-width: 782px) {
	.admin-bar .navbar { top: 46px; }
}

/* --- Responsive --- */
@media (max-width: 991px) {
	body { padding-top: 110px; }
	.navbar { padding-top: 15px; padding-bottom: 15px; }
	.navbar-brand img { height: 85px; }
	.nav-link.active::after { display: none; }
}
@media (max-width: 767px) {
	.site-footer .footer-container { flex-direction: column; text-align: center; gap: 24px; }
	.footer-links { justify-content: center; gap: 16px; }
	.footer-socials-block { display: flex; flex-direction: column; align-items: center; }
}

/* ============================================================
   PAGE LA COMPAGNIE
   ============================================================ */

.straight-underline {
	width: 80px;
	height: 2px;
	background-color: var(--primary);
	margin-top: 16px;
}

.intro-section {
	padding-top: 40px;
	padding-bottom: 60px;
}

.storytelling-text {
	font-size: 16px;
	line-height: 1.85;
	color: var(--text-dark);
}

.storytelling-text h2 {
	font-family: 'Montserrat', sans-serif;
	font-size: 2rem;
	font-weight: 500;
	letter-spacing: -0.02em;
	line-height: 1.2;
	color: rgba(var(--bs-dark-rgb), var(--bs-text-opacity)) !important;
	margin-top: 0;
	margin-bottom: 1.5rem;
}
.storytelling-text p { margin-bottom: 1.25rem; }
.storytelling-text p:last-child { margin-bottom: 0; }

/* Premier paragraphe bio direction — style lead */
.direction-bio-lead {
	font-size: 1.2rem;
	font-weight: 400;
	line-height: 1.6;
	text-align: justify;
	color: #6c757d;
}

/* Variante de manifesto-box pour la colonne droite (sans max-width centré) */
.manifesto-box--col {
	max-width: none;
	margin: 0;
	padding: 40px;
	display: flex;
	flex-direction: column;
	justify-content: center;
}

/* --- Galerie scène --- */
.gallery-item {
	position: relative;
	background-color: #f8f9fa;
	border: 4px solid #ffffff;
	box-shadow: 0 4px 10px rgba(0, 0, 0, 0.05);
	border-radius: 4px;
	overflow: hidden;
	aspect-ratio: 3 / 4;
	cursor: pointer;
	transition: all 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
}
.gallery-item:hover {
	transform: scale(1.03);
	box-shadow: 0 12px 24px rgba(0, 0, 0, 0.12);
	z-index: 2;
}
.gallery-item img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	filter: grayscale(100%);
	transition: filter 0.5s ease;
}
.gallery-item:hover img { filter: grayscale(0%); }

/* --- Cadre Polaroid --- */
.polaroid-frame {
	background-color: #ffffff;
	padding: 20px 20px 24px;
	box-shadow: 0 15px 40px rgba(0, 0, 0, 0.03), 0 4px 12px rgba(0, 0, 0, 0.01);
	border: 1px solid rgba(201, 141, 48, 0.12);
	border-radius: 8px;
	max-width: 350px;
	margin: 0 auto;
	position: relative;
	transition: transform 0.4s ease, box-shadow 0.4s ease;
}
.polaroid-frame::before {
	content: '';
	position: absolute;
	inset: 10px;
	border: 1px solid rgba(201, 141, 48, 0.08);
	pointer-events: none;
	border-radius: 4px;
}
.polaroid-frame:hover {
	transform: translateY(-5px);
	box-shadow: 0 20px 45px rgba(201, 141, 48, 0.1);
}
.polaroid-frame .img-wrap {
	aspect-ratio: 1 / 1;
	overflow: hidden;
	background-color: var(--secondary);
	border-radius: 4px;
}
.polaroid-frame img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	filter: grayscale(100%);
	transition: filter 0.5s ease;
}
.polaroid-frame:hover img { filter: grayscale(0%); }

/* Scotch décoratif */
.tape-deco {
	position: absolute;
	top: -12px;
	left: 50%;
	transform: translateX(-50%);
	width: 75px;
	height: 24px;
	background-color: rgba(250, 244, 230, 0.85);
	backdrop-filter: blur(2px);
	border-top: 1px solid rgba(255, 255, 255, 0.9);
	border-bottom: 1px solid rgba(201, 141, 48, 0.12);
	box-shadow: 0 2px 4px rgba(0, 0, 0, 0.02);
	z-index: 5;
}

/* --- Direction artistique bloc --- */
.direction-block {
	background-color: var(--secondary);
	border: 1px solid rgba(201, 141, 48, 0.12);
	margin-top: 2.5rem;
}

/* --- Rôle tag --- */
.team-role-tag {
	font-size: 10px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.08em;
	color: var(--primary);
}

/* --- Carte équipe (trombinoscope) --- */
.team-card {
	border: 1px solid rgba(201, 141, 48, 0.15);
	border-radius: 20px;
	background-color: #ffffff;
	padding: 24px;
	height: 100%;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	box-shadow: 0 4px 12px rgba(0, 0, 0, 0.02);
	transition: all 0.3s ease;
}
.team-card:hover {
	transform: translateY(-5px);
	box-shadow: 0 10px 20px rgba(201, 141, 48, 0.05);
}
.portrait-box {
	aspect-ratio: 1 / 1;
	border-radius: 16px;
	overflow: hidden;
	background-color: var(--secondary);
	position: relative;
}
.team-card img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	filter: grayscale(100%);
	transition: filter 0.5s ease;
}
.team-card:hover img { filter: grayscale(0%); }

/* --- Silhouette fallback --- */
.silhouette-placeholder {
	width: 100%;
	height: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
	background-color: var(--secondary);
}
.generic-silhouette-svg {
	width: 48%;
	height: 48%;
	color: var(--primary);
	opacity: 0.3;
}

/* --- Carte bureau --- */
.bureau-card {
	background-color: var(--secondary);
	border: 1px dashed rgba(201, 141, 48, 0.25);
	border-radius: 16px;
	padding: 24px;
}

/* --- Modal biographie --- */
.modal-backdrop-custom {
	position: fixed;
	inset: 0;
	background-color: rgba(255, 255, 255, 0.97);
	z-index: 2000;
	display: none;
	overflow-y: auto;
	padding: 40px 15px;
}
.modal-content-custom {
	background-color: #ffffff;
	border: 1px solid rgba(0, 0, 0, 0.05);
	border-radius: 24px;
	box-shadow: 0 15px 45px rgba(0, 0, 0, 0.06);
	max-width: 760px;
	margin: 0 auto;
	position: relative;
}
.modal-close-icon {
	position: absolute;
	top: 24px;
	right: 24px;
	background: #f0f0f0;
	border: none;
	border-radius: 50%;
	width: 44px;
	height: 44px;
	display: flex;
	align-items: center;
	justify-content: center;
	color: #333;
	transition: all 0.3s ease;
	cursor: pointer;
	padding: 0;
	line-height: 1;
}
.modal-close-icon svg {
	display: block;
	width: 20px;
	height: 20px;
	stroke: #333;
	flex-shrink: 0;
}
.modal-close-icon:hover {
	background-color: var(--secondary);
	color: var(--primary);
}
.modal-close-icon:hover svg {
	stroke: var(--primary);
}
.modal-portrait {
	width: 140px;
	height: 140px;
	border-radius: 50%;
	object-fit: cover;
	border: 4px solid var(--secondary);
	box-shadow: 0 6px 15px rgba(0, 0, 0, 0.05);
}
.modal-portrait-fallback svg {
	width: 90px;
	height: 90px;
	color: var(--primary);
	opacity: 0.3;
}
.btn-close-custom {
	background: none;
	border: none;
	border-bottom: 2px dashed var(--primary);
	color: var(--primary);
	padding: 4px 16px;
	font-size: 16px;
	font-family: 'Montserrat', sans-serif;
	font-weight: 700;
	cursor: pointer;
	transition: transform 0.2s ease;
}
.btn-close-custom:hover { transform: scale(1.05); }

/* --- Lightbox galerie --- */
.lightbox-backdrop {
	position: fixed;
	inset: 0;
	background-color: rgba(0, 0, 0, 0.94);
	z-index: 3000;
	display: none;
	align-items: center;
	justify-content: center;
	backdrop-filter: blur(5px);
}
.lightbox-content {
	position: relative;
	max-width: 90vw;
	max-height: 85vh;
	display: flex;
	flex-direction: column;
	align-items: center;
}
.lightbox-content img {
	max-width: 100%;
	max-height: 75vh;
	object-fit: contain;
	border: 4px solid #ffffff;
	border-radius: 4px;
	box-shadow: 0 10px 30px rgba(0, 0, 0, 0.5);
}
.lightbox-close {
	position: absolute;
	top: -16px;
	right: -16px;
	background: #000;
	color: #fff;
	border: 2px solid #fff;
	border-radius: 50%;
	width: 32px;
	height: 32px;
	padding: 0;
	line-height: 1;
	cursor: pointer;
	z-index: 3010;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 18px;
	font-weight: bold;
	box-shadow: 0 2px 8px rgba(0,0,0,0.3);
	transition: all 0.2s ease;
}
.lightbox-prev,
.lightbox-next {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	background: #000;
	color: #fff;
	border: 2px solid #fff;
	border-radius: 50%;
	width: 38px;
	height: 38px;
	padding: 0;
	line-height: 1;
	cursor: pointer;
	z-index: 3010;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 14px;
	font-weight: bold;
	box-shadow: 0 2px 8px rgba(0,0,0,0.3);
	transition: all 0.2s ease;
}
.lightbox-prev { left: -19px; }
.lightbox-next { right: -19px; }
.lightbox-prev:hover,
.lightbox-next:hover { background: var(--primary); transform: translateY(-50%) scale(1.1); }
.lightbox-close:hover { background: var(--primary); transform: scale(1.1); }
.lightbox-caption {
	color: #ffffff;
	margin-top: 16px;
	font-family: 'Quicksand', sans-serif;
	font-size: 15px;
	font-weight: 600;
	text-align: center;
}

@media (max-width: 767px) {
	.lightbox-prev { left: 10px; }
	.lightbox-next { right: 10px; }
	.lightbox-close { top: 10px; right: 10px; position: fixed; }
	.manifesto-box--col { padding: 28px 24px; }
}

/* Conteneur Flexbox principal pour le H1 (Garantit la position relative) */
.home-h1-container {
    position: relative;
    align-items: center;
}
@media (max-width: 576px) {
    .home-h1-container {
        font-size: 1.8rem;
    }
    .title-separator-dot {
        margin: 0 12px;
        vertical-align: middle;
    }
}

/* Les deux blocs de texte forcent une largeur identique pour caler le point au milieu */
.title-side {
    flex: 1;
    max-width: 45%; 
    white-space: nowrap;
}

/* Le point séparateur de base */
.title-separator-dot {
    display: inline-block;
    width: 10px;
    height: 10px;
    background-color: var(--primary);
    border-radius: 50%;
    margin: 0 24px;
    flex-shrink: 0;
    border: 2px solid rgba(201, 141, 48, 0.3);
    position: relative;
    transform-origin: center bottom; /* Point d'ancrage en bas pour l'effet d'écrasement au sol */
}

/* Déclenchement de la pirouette élastique quand la souris survole le H1 */
.home-h1-container:hover .title-separator-dot {
    animation: bubble-fun 1.4s ease-out forwards;
}

/* Animation "Saut de puce / Bulle" avec effet de ressort jeune public */
@keyframes bubble-fun {
    0% {
        transform: translateY(0) scale(1);
    }
    20% {
        /* Le point s'élance vers le haut et s'étire en hauteur */
        transform: translateY(-14px) scaleY(1.25) scaleX(0.85); 
    }
    40% {
        /* Il retombe et s'écrase très légèrement au sol (effet rebond) */
        transform: translateY(2px) scaleY(0.85) scaleX(1.1);    
    }
    60% {
        /* Petit sursaut de fin avec une inclinaison ludique à droite */
        transform: translateY(-4px) rotate(15deg);             
    }
    80% {
        /* Balancement de stabilisation à gauche */
        transform: translateY(0) rotate(-5deg);
    }
    100% {
        /* Retour parfait à l'état initial */
        transform: translateY(0) rotate(0deg) scale(1);        
    }
}
/* ==========================================================================
   CONSTELLATION PIXAR REMASTERISÉE — EFFET PLUME EN APESANTEUR
   ========================================================================== */

.navbar-logo-constellation-wrapper {
    position: relative;
    display: block;
    width: 135px; 
    height: 135px;
    margin: 0 auto 10px auto;
    perspective: 1200px; /* Profondeur accrue pour des rotations 3D ultra-douces */
}

.logo-static-text-wrapper {
    position: relative;
    z-index: 10;
    display: block;
    width: 100%;
    height: 100%;
}

.logo-static-text-wrapper img {
    width: 100%;
    height: 100%;
    object-fit: contain !important; 
    display: block;
    background: transparent !important;
}

/* Base universelle des confettis (Mouvement continu sans à-coups) */
.logo-confetti {
    position: absolute;
    pointer-events: none;
    border-radius: 50%;
    transform-style: preserve-3d;
    box-shadow: 1px 1.5px 2px rgba(0, 0, 0, 0.18);
    /* Courbe de bézier adoucie au maximum pour éliminer toute sensation de choc */
    transition: box-shadow 0.5s ease-in-out;
}

/* Spécificité des capsules blanches (Effet 3D dégradé + Ombre lisse) */
.logo-confetti.b-capsule {
    background: linear-gradient(135deg, #ffffff 0%, #f4f4f4 40%, #e6e6e6 100%);
    box-shadow: 1px 2px 3px rgba(0, 0, 0, 0.15), inset -1px -1px 2px rgba(0, 0, 0, 0.05);
}

/* ==========================================================================
   DISTRIBUTION DES TRAJECTOIRES ET DES TIMINGS ASYNC
   ========================================================================== */

/* --- CONFETTIS COULEUR --- */
.logo-confetti.c-vert-left {
    width: 10px; height: 10px; background-color: #c9cc10;
    top: 21%; left: 12%; z-index: 12;
    animation: plume-courbe-A 9.4s infinite ease-in-out;
}
.logo-confetti.c-violet-left {
    width: 9px; height: 9px; background-color: #bf9bc3;
    top: 40%; left: 9%; z-index: 5;
    animation: plume-courbe-B 11.2s infinite ease-in-out;
}
.logo-confetti.c-rose-top {
    width: 8px; height: 8px; background-color: #f5b6b9;
    top: 16%; left: 29%; z-index: 6;
    animation: plume-courbe-C 7.8s infinite ease-in-out;
}
.logo-confetti.c-orange-top {
    width: 8px; height: 8px; background-color: #f17322;
    top: 3%; left: 58.7%; display: none;
}
.logo-confetti.c-jaune-right {
    width: 8px; height: 8px; background-color: #f6c214;
    top: 19.5%; left: 65%; z-index: 12;
    animation: plume-courbe-D 8.6s infinite ease-in-out;
}
.logo-confetti.c-rouge-right {
    width: 6px; height: 6px; background-color: #de131a;
    top: 49%; left: 92%; z-index: 4;
    animation: plume-courbe-A 6.4s infinite ease-in-out;
}
.logo-confetti.c-orange-right {
    width: 10px; height: 10px; background-color: #f17322;
    top: 73%; left: 92%; z-index: 14;
    animation: plume-courbe-C 13.5s infinite ease-in-out;
}
.logo-confetti.c-rose-bottom {
    width: 8px; height: 8px; background-color: #e4647a;
    top: 89%; left: 21.5%; z-index: 5;
    animation: plume-courbe-B 10.2s infinite ease-in-out;
}

/* --- CAPSULES BLANCHES --- */
.logo-confetti.b-top-left-1 {
    width: 6px; height: 6px; top: 17%; left: 14%; z-index: 4;
    animation: plume-courbe-D 7.2s infinite ease-in-out;
}
.logo-confetti.b-top-left-2 {
    width: 16px; height: 16px; top: 6.5%; left: 38%; z-index: 15;
    animation: plume-courbe-A 15.4s infinite ease-in-out; /* Très lent car volumineux */
}
.logo-confetti.b-top-center {
    width: 5px; height: 5px; top: 12%; left: 51.5%; z-index: 3;
    animation: plume-courbe-B 5.8s infinite ease-in-out;
}
.logo-confetti.b-center-right {
    width: 10px; height: 10px; top: 36.5%; left: 75.5%; z-index: 13;
    animation: plume-courbe-C 9.8s infinite ease-in-out;
}
.logo-confetti.b-bottom-right-1 {
    width: 7px; height: 7px; top: 54.5%; left: 81%; z-index: 4;
    animation: plume-courbe-D 8.1s infinite ease-in-out;
}
.logo-confetti.b-bottom-right-2 {
    width: 5px; height: 5px; top: 74.5%; left: 83%; z-index: 3;
    animation: plume-courbe-A 6.9s infinite ease-in-out;
}
.logo-confetti.b-bottom-center {
    width: 15px; height: 15px; top: 91.5%; left: 43%; z-index: 15;
    animation: plume-courbe-B 14.2s infinite ease-in-out;
}
.logo-confetti.b-bottom-left {
    width: 4px; height: 4px; top: 79.5%; left: 14%; z-index: 3;
    animation: plume-courbe-C 6.1s infinite ease-in-out;
}

/* ==========================================================================
   KEYFRAMES SINOÏDALES — COURBES DOUCES SANS LIGNES DROITES
   ========================================================================== */

/* Trajectoire A : Grand virement elliptique (Axe Nord-Ouest) */
@keyframes plume-courbe-A {
    0%, 100% { 
        transform: translate(-50%, -50%) translate3d(0, 0, 0) rotate(0deg); 
    }
    33% { 
        /* Dérive douce sur le côté */
        transform: translate(-50%, -50%) translate3d(-3.5px, 2px, 6px) rotate(4deg); 
    }
    66% { 
        /* Appel d'air fluide : il monte en courbe et s'incline face au vent */
        transform: translate(-50%, -50%) translate3d(2.5px, -5px, -4px) rotate(-6deg); 
    }
}

/* Trajectoire B : Orbite en "Huit" infini (Axe Sud-Est) */
@keyframes plume-courbe-B {
    0%, 100% { 
        transform: translate(-50%, -50%) translate3d(0, 0, 0) rotate(0deg); 
    }
    33% { 
        /* Se fait soulever par le bas, glisse en diagonale */
        transform: translate(-50%, -50%) translate3d(4px, -3.5px, -5px) rotate(-8deg); 
    }
    66% { 
        /* Redescente amortie en décrivant une cloche */
        transform: translate(-50%, -50%) translate3d(-2px, 4px, 8px) rotate(5deg); 
    }
}

/* Trajectoire C : Berceau pendulaire ample (Effet feuille morte) */
@keyframes plume-courbe-C {
    0%, 100% { 
        transform: translate(-50%, -50%) translate3d(0, 0, 0) rotate(0deg); 
        box-shadow: 1px 1.5px 2px rgba(0, 0, 0, 0.18);
    }
    50% { 
        /* Trajectoire courbe descendante puis remontée comme un parachute */
        transform: translate(-50%, -50%) translate3d(-5.5px, -2px, 12px) rotate(15deg); 
        box-shadow: 3px 4px 6px rgba(0, 0, 0, 0.1); /* L'ombre suit la hauteur */
    }
}

/* Trajectoire D : Micro-tourbillon orbital circulaire */
@keyframes plume-courbe-D {
    0%, 100% { transform: translate(-50%, -50%) translate3d(0, 0, 0); }
    25%      { transform: translate(-50%, -50%) translate3d(3px, -2.5px, 4px); }
    50%      { transform: translate(-50%, -50%) translate3d(4.5px, 1px, -2px); }
    75%      { transform: translate(-50%, -50%) translate3d(-1px, 3.5px, 5px); }
}

/* Sécurisation scroll (Sticky Navbar) */
.navbar.scrolled .navbar-logo-constellation-wrapper {
    display: none !important;
}

/* ============================================================
   PAGE CONTACT
   ============================================================ */

.contact-wrapper {
	margin-top: 40px;
	margin-bottom: 80px;
}

.contact-block-title {
	font-family: 'Montserrat', sans-serif;
	font-size: 1.5rem;
	font-weight: 700;
	color: var(--text-dark);
	margin-bottom: 0.75rem;
	letter-spacing: -0.02em;
}

/* Carte coordonnées */
.contact-info-card {
	background: #ffffff;
	border: 1px solid rgba(201, 141, 48, 0.12);
	border-radius: 24px;
	padding: 40px;
	box-shadow: 0 10px 30px rgba(201, 141, 48, 0.01);
	height: 100%;
}

.contact-item {
	display: flex;
	align-items: flex-start;
	gap: 20px;
	margin-bottom: 30px;
}
.contact-item:last-child { margin-bottom: 0; }

.contact-icon-wrapper {
	width: 48px;
	height: 48px;
	border-radius: 50%;
	background-color: var(--secondary);
	color: var(--primary);
	display: flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
}

.contact-item-title {
	font-family: 'Montserrat', sans-serif;
	font-weight: 700;
	font-size: 11px;
	text-transform: uppercase;
	letter-spacing: 0.05em;
	color: var(--primary);
	margin-bottom: 6px;
}

.contact-item-detail {
	font-size: 15px;
	color: var(--text-dark);
	line-height: 1.6;
	font-weight: 500;
	margin-bottom: 0;
}

.contact-item-detail a {
	color: var(--text-dark);
	text-decoration: none;
	transition: color 0.2s ease;
}
.contact-item-detail a:hover { color: var(--primary); }

/* Conteneur formulaire CF7 */
.wpcf7-form-wrapper {
	background: #ffffff;
	border: 1px solid rgba(201, 141, 48, 0.12);
	border-radius: 24px;
	padding: 40px;
	box-shadow: 0 10px 30px rgba(201, 141, 48, 0.01);
}

/* Labels CF7 */
.wpcf7-form-wrapper .wpcf7-form label,
.wpcf7-form-wrapper .wpcf7-form .wpcf7-label {
	display: block;
	font-size: 11px;
	font-weight: 700;
	color: var(--text-dark);
	margin-top: 0;
	margin-bottom: 8px;
	text-transform: uppercase;
	letter-spacing: 0.05em;
	font-family: 'Montserrat', sans-serif;
}

/* CF7 génère des <br> entre label et shortcode — on les masque */
.wpcf7-form-wrapper .wpcf7-form br { display: none; }

/* Wraps et espacement */
.wpcf7-form-wrapper .wpcf7-form p { margin-bottom: 0; }
.wpcf7-form-wrapper .wpcf7-form .wpcf7-form-control-wrap {
	display: block;
	margin-bottom: 24px;
}
/* Espacement entre les blocs de champs */
.wpcf7-form-wrapper .wpcf7-form .row {
	margin-bottom: 0;
}

/* Champs texte / email / tel */
.wpcf7-form-wrapper .wpcf7-form-control:not([type="submit"]):not([type="checkbox"]):not([type="radio"]) {
	width: 100%;
	padding: 14px 20px;
	border-radius: 12px;
	border: 1px solid rgba(0, 0, 0, 0.08);
	background-color: var(--background);
	font-family: 'Quicksand', sans-serif;
	font-size: 15px;
	color: var(--text-dark);
	transition: all 0.3s ease;
	outline: none;
	appearance: none;
}

.wpcf7-form-wrapper .wpcf7-form-control:not([type="submit"]):not([type="checkbox"]):not([type="radio"]):focus {
	border-color: var(--primary);
	background-color: #ffffff;
	box-shadow: 0 4px 15px rgba(201, 141, 48, 0.08);
}

/* Textarea */
.wpcf7-form-wrapper textarea.wpcf7-form-control {
	resize: none;
	height: 140px;
}

/* Select : chevron doré custom */
.wpcf7-form-wrapper select.wpcf7-form-control {
	appearance: none;
	-webkit-appearance: none;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23c98d30' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: right 20px center;
	background-size: 16px;
	padding-right: 45px;
	cursor: pointer;
}

/* Bouton submit CF7 */
.wpcf7-form-wrapper input[type="submit"],
.wpcf7-form-wrapper .wpcf7-submit {
	font-size: 11px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.15em;
	color: var(--primary);
	border: 2px solid rgba(201, 141, 48, 0.3);
	background-color: transparent;
	padding: 14px 40px;
	border-radius: 50px;
	transition: all 0.3s ease;
	cursor: pointer;
	font-family: 'Montserrat', sans-serif;
	display: block;
	width: 100%;
	line-height: 1;
}

.wpcf7-form-wrapper input[type="submit"]:hover,
.wpcf7-form-wrapper .wpcf7-submit:hover {
	background-color: var(--primary);
	border-color: var(--primary);
	color: #ffffff;
	transform: scale(1.02);
}

/* Messages de réponse CF7 */
.wpcf7-form-wrapper .wpcf7-response-output {
	border-radius: 12px;
	padding: 16px 20px;
	font-size: 14px;
	margin-top: 16px;
	border: none;
}
.wpcf7-form-wrapper .wpcf7-mail-sent-ok {
	background-color: var(--secondary);
	color: var(--primary);
}
.wpcf7-form-wrapper .wpcf7-validation-errors,
.wpcf7-form-wrapper .wpcf7-mail-sent-ng,
.wpcf7-form-wrapper .wpcf7-spam-blocked {
	background-color: #fff3cd;
	color: #856404;
}

/* Champ honeypot — rester invisible */
.wpcf7-form-wrapper .wpcf7-form p:has(input[name="honeypot-field"]) {
	display: none;
}

/* Badge reCAPTCHA — masqué (on utilise Honeypot, badge autorisé à masquer par Google) */
.grecaptcha-badge { visibility: hidden !important; }

/* =============================================================
   PAGE SPECTACLE (single-spectacle.php)
   ============================================================= */

/* --- Héro vidéo ------------------------------------------------- */
.spectacle-hero {
	position: relative;
	border-radius: 24px;
	overflow: hidden;
	box-shadow: 0 15px 40px rgba(0,0,0,0.04);
	margin-top: 50px;
	margin-bottom: 60px;
	aspect-ratio: 16 / 7;
	background-color: #000000;
}

.spectacle-hero video,
.spectacle-hero img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

/* Overlay play (centré) */
.hero-play-overlay {
	position: absolute;
	inset: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	background: rgba(0,0,0,0.18);
	transition: opacity 0.2s ease;
	cursor: pointer;
}

.hero-play-btn {
	width: 80px;
	height: 80px;
	border-radius: 50%;
	background: rgba(255,255,255,0.92);
	border: none;
	display: flex;
	align-items: center;
	justify-content: center;
	color: var(--primary);
	box-shadow: 0 8px 28px rgba(0,0,0,0.25);
	transition: transform 0.2s ease, background 0.2s ease;
	cursor: pointer;
	padding: 0;
	line-height: 1;
}

.hero-play-btn svg {
	width: 36px;
	height: 36px;
	margin-left: 4px; /* optique : centrer visuellement la flèche */
}

.hero-play-btn:hover {
	background: #ffffff;
	transform: scale(1.1);
}

/* --- Titre création year ---------------------------------------- */
.spectacle-creation-year {
	font-size: 13px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.08em;
	color: #8c8c8c;
	margin-top: 6px;
	margin-bottom: 4px;
}

/* --- Description principale ------------------------------------ */
.spectacle-description {
	font-size: 1.05rem;
	color: #6c757d;
}

.spectacle-description p { margin-bottom: 1.2rem; }

/* --- Sidebar commune ------------------------------------------- */
.sidebar-title {
	font-family: 'Montserrat', sans-serif;
	font-weight: 600;
	font-size: 12px;
	text-transform: uppercase;
	letter-spacing: 0.12em;
	color: var(--primary);
	border-bottom: 1px solid rgba(201, 141, 48, 0.15);
	padding-bottom: 10px;
	margin-bottom: 18px;
	margin-top: 0;
}

/* --- Fiche technique ------------------------------------------- */
.info-spectacle-card {
	background-color: var(--secondary);
	border: 1px solid rgba(201, 141, 48, 0.15);
	border-radius: 24px;
	padding: 28px;
	box-shadow: 0 8px 24px rgba(201, 141, 48, 0.02);
}

.info-spectacle-item {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 12px 0;
	border-bottom: 1px dashed rgba(201, 141, 48, 0.15);
}

.info-spectacle-item:first-child { padding-top: 0; }
.info-spectacle-item:last-child  { border-bottom: none; padding-bottom: 0; }

.info-spectacle-label {
	font-weight: 700;
	text-transform: uppercase;
	font-size: 11px;
	letter-spacing: 0.05em;
	color: #6c757d;
}

.info-spectacle-value {
	font-size: 14px;
	font-weight: 600;
	color: var(--text-dark);
	text-align: right;
}

/* --- Équipe (distribution) ------------------------------------- */
.distribution-sidebar-card {
	border: 1px solid rgba(201, 141, 48, 0.12);
	border-radius: 24px;
	background-color: #ffffff;
	padding: 24px;
	box-shadow: 0 8px 24px rgba(0,0,0,0.01);
}

.distribution-list dt {
	font-size: 11px;
	text-transform: uppercase;
	letter-spacing: 0.08em;
	color: var(--primary);
	font-weight: 600;
	margin-top: 16px;
}

.distribution-list dt:first-of-type { margin-top: 0; }

.distribution-list dd {
	font-weight: 500;
	color: #6c757d;
	margin-left: 0;
	margin-bottom: 0;
	font-size: 14px;
}

/* --- Production / Coproductions -------------------------------- */
.production-sidebar-card {
	border: 1px solid rgba(201, 141, 48, 0.12);
	border-radius: 24px;
	background-color: var(--secondary);
	padding: 24px;
	box-shadow: 0 8px 24px rgba(201, 141, 48, 0.01);
}

/* La carte production utilise distribution-list mais avec dd en text-dark (fond crème) */
.production-sidebar-card .distribution-list dd {
	color: var(--text-dark);
	font-size: 13px;
	line-height: 1.6;
	margin-bottom: 4px;
}

/* --- Espace Pro ------------------------------------------------ */
.pro-sidebar-card {
	background-color: #ffffff;
	border: 1px solid rgba(201, 141, 48, 0.12);
	border-radius: 24px;
	padding: 24px;
	box-shadow: 0 8px 24px rgba(0,0,0,0.01);
}

.espace-pro-band {
	background-color: var(--secondary);
	border: 1px solid rgba(201, 141, 48, 0.2);
	border-radius: 20px;
	padding: 24px 28px;
}

.pro-link-btn-sidebar {
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 12px 16px;
	background-color: var(--background);
	border: 1px solid rgba(201, 141, 48, 0.12);
	border-radius: 12px;
	color: var(--primary);
	font-size: 13px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.05em;
	text-decoration: none;
	cursor: pointer;
	transition: all 0.3s ease;
}

.pro-link-btn-sidebar:hover {
	background-color: var(--primary);
	color: #ffffff;
	border-color: var(--primary);
	transform: translateY(-2px);
	box-shadow: 0 6px 15px rgba(201, 141, 48, 0.15);
}

/* --- Galerie photos (carousel) --------------------------------- */
.spectacle-gallery {
	border-top: 1px solid rgba(0,0,0,0.05);
}

.spectacle-gallery-slider-container {
	position: relative;
	width: 100%;
	padding: 0 50px;
	margin-top: 20px;
}

.spectacle-gallery-slider-viewport {
	overflow: hidden;
	width: 100%;
	padding: 10px 0;
}

.spectacle-gallery-slider-track {
	display: flex;
	gap: 24px;
}

.slider-slide {
	flex: 0 0 calc(25% - 18px);
}

/* Override gallery-item pour l'aspect paysage des photos de scène */
.spectacle-gallery-item {
	aspect-ratio: 16 / 11 !important;
	filter: none;
}

.spectacle-gallery-item img {
	filter: grayscale(20%) !important;
}

.spectacle-gallery-item:hover img {
	filter: grayscale(0%) !important;
}

.slider-arrow {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	background: #ffffff;
	color: var(--primary);
	border: 2px solid var(--primary);
	border-radius: 50%;
	width: 44px;
	height: 44px;
	display: flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	z-index: 10;
	transition: all 0.3s ease;
	box-shadow: 0 4px 10px rgba(0,0,0,0.05);
	padding: 0;
	line-height: 1;
}

.slider-arrow:hover {
	background-color: var(--primary);
	color: #ffffff;
	box-shadow: 0 6px 15px rgba(201, 141, 48, 0.2);
}

.slider-arrow.prev-slide { left: 0; }
.slider-arrow.next-slide { right: 0; }

/* --- Dates passées (accordéon) --------------------------------- */
.past-dates-toggle-btn {
	background: none;
	border: none;
	color: var(--primary);
	font-size: 15px;
	font-weight: 700;
	letter-spacing: 0.05em;
	text-transform: uppercase;
	border-bottom: 2px dashed var(--primary);
	padding: 4px 12px;
	cursor: pointer;
	transition: transform 0.2s ease;
	outline: none;
	margin: 30px auto;
	display: inline-block;
}

.past-dates-toggle-btn:hover { transform: scale(1.03); }

.past-dates-box {
	background-color: #fafcfb;
	border: 1px solid rgba(0,0,0,0.03);
	border-radius: 20px;
	padding: 30px;
}

.past-dates-intro {
	font-size: 11px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.08em;
	color: #8c8c8c;
}

.past-date-tag-cloud {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	justify-content: center;
}

.past-date-pill {
	background-color: #ffffff;
	border: 1px solid rgba(0,0,0,0.05);
	color: #7c7c7c;
	padding: 8px 16px;
	border-radius: 50px;
	font-size: 13px;
	box-shadow: 0 2px 5px rgba(0,0,0,0.01);
	transition: all 0.2s ease;
}

.past-date-pill:hover {
	border-color: var(--primary);
	color: var(--primary);
	background-color: var(--secondary);
	transform: translateY(-1px);
}

/* --- La presse en parle ---------------------------------------- */
.press-review-section {
	border-top: 1px solid rgba(0,0,0,0.05);
	padding-top: 60px;
	margin-bottom: 40px;
}

.press-card {
	background: #ffffff;
	border: 1px solid rgba(201, 141, 48, 0.12);
	border-radius: 24px;
	padding: 40px;
	box-shadow: 0 10px 30px rgba(201, 141, 48, 0.02);
}

.press-card p { font-size: 16px; line-height: 1.85; color: var(--text-dark); }

/* --- Partenaires (pleine largeur) ------------------------------ */
.partners-section {
	border-top: 1px solid rgba(0,0,0,0.05);
	padding-top: 60px;
	margin-bottom: 80px;
}

.partners-label {
	display: block;
	font-size: 11px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.08em;
	color: #8c8c8c;
	margin-bottom: 24px;
}

.partners-logos-container {
	text-align: center;
	max-width: 800px;
	margin: 0 auto;
}

.partners-logos-container img {
	max-width: 100%;
	height: auto;
	opacity: 0.9;
	transition: opacity 0.3s ease;
}

.partners-logos-container img:hover { opacity: 1; }

/* --- Grille partenaires (CPT) ----------------------------------- */
.partners-grid {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	gap: 20px;
	max-width: 1100px;
	margin: 0 auto;
}

/* Exactement 5 par ligne : (100% - 4*20px gap) / 5 */
.partner-card {
	flex: 0 0 calc(20% - 16px);
	min-width: 150px;
	height: 100px;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 16px 12px;
	overflow: hidden;
	background: #ffffff;
	border: 1px solid rgba(201, 141, 48, 0.08);
	border-radius: 18px;
	box-shadow: 0 4px 10px rgba(0, 0, 0, 0.01);
	text-decoration: none;
	transition: transform 0.4s cubic-bezier(0.165, 0.84, 0.44, 1),
	            border-color 0.4s ease,
	            box-shadow 0.4s ease;
}

.partner-card:hover {
	transform: translateY(-4px);
	border-color: var(--primary, #c98d30);
	box-shadow: 0 10px 25px rgba(201, 141, 48, 0.10);
}

.partner-logo {
	display: block;
	max-width: 100%;
	max-height: 100%;
	width: auto;
	height: auto;
	object-fit: contain;
	object-position: center;
	transition: transform 0.4s ease;
}

.partner-card:hover .partner-logo {
	transform: scale(1.05);
}

.partner-name-fallback {
	font-family: 'Montserrat', sans-serif;
	font-size: 11px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.08em;
	color: var(--primary, #c98d30);
	text-align: center;
	line-height: 1.4;
}

@media (max-width: 991px) {
	.partner-card {
		flex: 0 0 calc(33.33% - 14px);
	}
}

@media (max-width: 575px) {
	.partner-card {
		flex: 0 0 calc(50% - 10px);
		height: 85px;
		padding: 12px 10px;
	}
}

/* --- PDF Lightbox ---------------------------------------------- */
.pdf-lightbox-backdrop {
	position: fixed;
	inset: 0;
	background-color: rgba(0,0,0,0.85);
	z-index: 4000;
	display: none;
	align-items: center;
	justify-content: center;
	backdrop-filter: blur(5px);
}

.pdf-lightbox-content {
	background: #ffffff;
	width: 90vw;
	height: 90vh;
	max-width: 1000px;
	border-radius: 20px;
	overflow: hidden;
	display: flex;
	flex-direction: column;
	box-shadow: 0 20px 50px rgba(0,0,0,0.3);
	position: relative;
}

.pdf-lightbox-header {
	padding: 15px 25px;
	background-color: var(--secondary);
	border-bottom: 1px solid rgba(0,0,0,0.05);
	display: flex;
	justify-content: space-between;
	align-items: center;
	flex-shrink: 0;
}

.pdf-lightbox-body { flex-grow: 1; background-color: #525659; }

.pdf-lightbox-iframe { width: 100%; height: 100%; border: none; display: block; }

/* --- Extraits audio -------------------------------------------- */
.extraits-audio-block { border-top: 1px solid rgba(0,0,0,0.05); padding-top: 40px; }

.extraits-audio-title {
	font-family: 'Montserrat', sans-serif;
	font-size: 1.1rem;
	font-weight: 700;
	letter-spacing: -0.01em;
	color: var(--text-dark);
	margin-bottom: 12px;
}

.custom-audio-player {
	background-color: #ffffff;
	border: 1px solid rgba(201, 141, 48, 0.15);
	border-radius: 18px;
	padding: 16px 20px;
	display: flex;
	align-items: center;
	gap: 16px;
	box-shadow: 0 4px 12px rgba(0,0,0,0.01);
	transition: all 0.3s ease;
}

.custom-audio-player:hover {
	box-shadow: 0 10px 22px rgba(201, 141, 48, 0.06);
	border-color: rgba(201, 141, 48, 0.3);
}

.play-btn {
	width: 44px;
	height: 44px;
	border-radius: 50%;
	background-color: var(--secondary);
	color: var(--primary);
	border: none;
	display: flex;
	align-items: center;
	justify-content: center;
	transition: all 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275);
	cursor: pointer;
	flex-shrink: 0;
	padding: 0;
	line-height: 1;
}

.play-btn:hover {
	background-color: var(--primary);
	color: #ffffff;
	transform: scale(1.08);
}

.audio-track-title {
	font-size: 13px;
	font-weight: 700;
	color: var(--text-dark);
	line-height: 1.2;
}

.time-display {
	font-size: 12px;
	color: #8c8c8c;
	white-space: nowrap;
	min-width: 70px;
	flex-shrink: 0;
}

.audio-progress-container {
	height: 6px;
	background-color: rgba(201, 141, 48, 0.12);
	border-radius: 30px;
	cursor: pointer;
	position: relative;
	flex-grow: 1;
	overflow: hidden;
}

.audio-buffered-bar {
	position: absolute;
	top: 0; left: 0;
	height: 100%;
	width: 0%;
	background-color: rgba(201, 141, 48, 0.35);
	border-radius: 30px;
	transition: width 0.3s ease;
}

.audio-progress-bar {
	position: absolute;
	top: 0; left: 0;
	height: 100%;
	width: 0%;
	background-color: var(--primary);
	border-radius: 30px;
	transition: width 0.1s linear;
	z-index: 1;
}

/* --- Responsive spectacle -------------------------------------- */
@media (max-width: 991px) {
	.slider-slide { flex: 0 0 calc(50% - 12px); }
	.spectacle-gallery-slider-container { padding: 0 40px; }
	.spectacle-hero { aspect-ratio: 16 / 9; margin-top: 30px; margin-bottom: 40px; }
}

@media (max-width: 575px) {
	.slider-slide { flex: 0 0 100%; }
	.spectacle-gallery-slider-container { padding: 0 35px; }
	.hero-play-btn { width: 60px; height: 60px; }
	.hero-play-btn svg { width: 26px; height: 26px; }
}

/* =============================================================
   MUSIQUE À L'HÔPITAL
   ============================================================= */

.flat-portrait-card {
	background-color: #ffffff;
	border: 1px solid rgba(201, 141, 48, 0.12);
	border-radius: 24px;
	padding: 24px;
	box-shadow: 0 8px 24px rgba(0,0,0,0.02);
	width: 100%;
}

.flat-portrait-card img {
	width: 100%;
	height: auto;
	border-radius: 16px;
}

.content-box {
	font-size: 16px;
	line-height: 1.8;
	color: var(--text-dark);
}

.hopital-texte-principal p {
	margin-bottom: 1rem;
}

.reflection-section {
	background-color: var(--secondary);
	border-radius: 32px;
	padding: 50px;
	margin-top: 60px;
	margin-bottom: 40px;
	border: 1px dashed rgba(201, 141, 48, 0.25);
}

.reflection-quote-icon {
	font-size: 64px;
	color: var(--primary);
	opacity: 0.15;
	line-height: 0.1;
	font-family: 'Georgia', serif;
}

.reflection-question {
	font-family: 'Montserrat', sans-serif;
	font-size: 15px;
	font-weight: 600;
	color: var(--primary);
	line-height: 1.5;
	margin-bottom: 0;
}

.reflection-text {
	font-size: 15px;
	line-height: 1.8;
}

.reflection-text p {
	margin-bottom: 1rem;
}

@media (max-width: 991px) {
	.reflection-section { padding: 30px; }
}

/* =============================================================
   MUSIQUE MAGIQUE
   ============================================================= */

/* Slider livres */
.book-slider-container {
	position: relative;
	width: 100%;
	height: 100%;
	overflow: hidden;
	border-radius: 24px;
}

.book-slider-viewport {
	overflow: hidden;
	width: 100%;
	height: 100%;
}

.book-slider-track {
	display: flex;
	transition: transform 0.6s cubic-bezier(0.25, 1, 0.5, 1);
	width: 200%;
	height: 100%;
}

.book-slide {
	height: 100%;
	flex-shrink: 0;
	padding: 10px;
}

.book-slider-arrow {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	background: rgba(255, 255, 255, 0.95);
	color: #1c2d42;
	border: 1px solid rgba(28, 45, 66, 0.2);
	border-radius: 50%;
	width: 44px;
	height: 44px;
	display: flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	z-index: 10;
	transition: all 0.3s ease;
	box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
	opacity: 0;
}

.book-slider-container:hover .book-slider-arrow {
	opacity: 1;
}

.book-slider-arrow:hover {
	background-color: #1c2d42;
	color: #ffffff;
	border-color: #1c2d42;
}

.book-slider-arrow.prev-book { left: 15px; }
.book-slider-arrow.next-book { right: 15px; }

/* Carte livre */
.book-card-premium {
	background-color: #ffffff;
	border-radius: 24px;
	padding: 35px;
	border: 1px solid rgba(28, 45, 66, 0.15);
	box-shadow: 0 10px 30px rgba(0, 0, 0, 0.02);
	transition: all 0.4s ease;
	text-align: center;
}

.book-card-premium:hover {
	transform: translateY(-5px);
	box-shadow: 0 20px 40px rgba(28, 45, 66, 0.06);
}

.book-card-premium h3 {
	color: #1c2d42;
}

.book-card-premium img {
	width: 100%;
	max-width: 280px;
	border-radius: 12px;
	box-shadow: 0 12px 35px rgba(0, 0, 0, 0.1);
	margin-bottom: 25px;
	cursor: pointer;
	transition: transform 0.4s ease;
}

.book-card-premium img:hover {
	transform: scale(1.03);
}

.btn-bayard {
	background-color: #1c2d42;
	color: #ffffff !important;
	padding: 14px 35px;
	border-radius: 50px;
	font-family: 'Montserrat', sans-serif;
	font-weight: 700;
	font-size: 13px;
	text-transform: uppercase;
	letter-spacing: 0.1em;
	text-decoration: none;
	display: inline-block;
	transition: all 0.3s ease;
	border: none;
	box-shadow: 0 6px 20px rgba(28, 45, 66, 0.2);
}

.btn-bayard:hover {
	transform: scale(1.05);
	background-color: #101b29;
	box-shadow: 0 8px 25px rgba(28, 45, 66, 0.3);
}

/* Encadré focus objet livre */
.focus-object-box {
	background-color: var(--secondary);
	border-radius: 24px;
	border: 1px dashed rgba(201, 141, 48, 0.25);
	padding: 40px;
}

.feature-badge {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	background: #ffffff;
	color: var(--primary);
	padding: 10px 18px;
	border-radius: 50px;
	font-family: 'Montserrat', sans-serif;
	font-weight: 700;
	font-size: 13px;
	border: 1px solid rgba(201, 141, 48, 0.15);
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.01);
}

.magique-collection-texte p,
.magique-focus-texte p {
	margin-bottom: 1rem;
}

/* Section illustratrice */
.illustrator-section {
	background-color: #fffcf7;
	border-radius: 40px;
	padding: 60px;
	margin-top: 80px;
	border: 1px solid rgba(201, 141, 48, 0.1);
	box-shadow: 0 10px 30px rgba(0, 0, 0, 0.01);
}

.illustratrice-bio p {
	margin-bottom: 1rem;
}

.illustrator-quote-box {
	background-color: #ffffff;
	border: 1px solid rgba(201, 141, 48, 0.15);
	border-radius: 24px;
	padding: 50px 40px;
	position: relative;
	box-shadow: 0 10px 25px rgba(201, 141, 48, 0.02);
	height: 100%;
	display: flex;
	flex-direction: column;
	justify-content: center;
}

.illustrator-quote-icon {
	font-family: 'Georgia', serif;
	font-size: 80px;
	line-height: 0.1;
	color: var(--primary);
	opacity: 0.15;
	position: absolute;
	top: 45px;
	left: 20px;
	pointer-events: none;
}

.illustrator-quote-icon-end {
	font-family: 'Georgia', serif;
	font-size: 80px;
	line-height: 0.1;
	color: var(--primary);
	opacity: 0.15;
	position: absolute;
	bottom: 15px;
	right: 20px;
	pointer-events: none;
}

.illustrator-quote-text {
	font-size: 16px;
	font-weight: 500;
	color: var(--primary);
	line-height: 1.8;
	text-align: center;
	position: relative;
	z-index: 1;
	font-style: italic;
}

/* Galerie illustrations */
.gallery-artwork-frame {
	background-color: #ffffff;
	box-shadow: 0 15px 40px rgba(0, 0, 0, 0.03), 0 4px 12px rgba(0, 0, 0, 0.01);
	border: 1px solid rgba(201, 141, 48, 0.12);
	border-radius: 8px;
	transition: all 0.5s cubic-bezier(0.165, 0.84, 0.44, 1);
	cursor: pointer;
	position: relative;
}

.gallery-artwork-frame::before {
	content: '';
	position: absolute;
	inset: 12px;
	border: 1px solid rgba(201, 141, 48, 0.08);
	pointer-events: none;
	border-radius: 4px;
}

.gallery-artwork-frame:hover {
	transform: translateY(-6px);
	box-shadow: 0 20px 40px rgba(201, 141, 48, 0.1);
}

.gallery-artwork-frame .overflow-hidden {
	aspect-ratio: 4/3;
	width: 100%;
}

.gallery-artwork-frame img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center center;
	border-radius: 3px;
	border: 1px solid rgba(0, 0, 0, 0.05);
}

.gallery-artwork-caption {
	font-family: 'Montserrat', sans-serif;
	font-size: 12px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.08em;
	color: var(--primary);
	text-align: center;
	margin-bottom: 0;
}

/* Section interview éditoriale */
.editorial-interview-card {
	background-color: #ffffff;
	border: 1px solid rgba(201, 141, 48, 0.15);
	border-radius: 32px;
	box-shadow: 0 20px 50px rgba(201, 141, 48, 0.04);
	overflow: hidden;
}

.editorial-badge {
	background-color: var(--secondary);
	color: var(--primary);
	font-family: 'Montserrat', sans-serif;
	font-size: 9px;
	font-weight: 800;
	text-transform: uppercase;
	letter-spacing: 0.18em;
	padding: 6px 16px;
	border-radius: 50px;
	display: inline-block;
}

.editorial-quote {
	font-family: 'Montserrat', sans-serif;
	font-weight: 600;
	font-size: 16px;
	line-height: 1.6;
	color: var(--primary);
	position: relative;
	padding-left: 20px;
}

.editorial-quote::before {
	content: '"';
	position: absolute;
	left: 0;
	top: -10px;
	font-family: 'Georgia', serif;
	font-size: 40px;
	color: var(--primary);
	opacity: 0.3;
}

.editorial-text {
	font-size: 15px;
	line-height: 1.8;
	color: #555555;
}

.editorial-text p {
	margin-bottom: 1rem;
}

/* Lightbox galerie */
.lightbox-backdrop {
	position: fixed;
	inset: 0;
	background-color: rgba(0, 0, 0, 0.94);
	z-index: 3000;
	display: none;
	align-items: center;
	justify-content: center;
	backdrop-filter: blur(5px);
}

.lightbox-content {
	position: relative;
	max-width: 90vw;
	max-height: 85vh;
	display: flex;
	flex-direction: column;
	align-items: center;
}

.lightbox-content img {
	max-width: 100%;
	max-height: 75vh;
	object-fit: contain;
	border: 4px solid #ffffff;
	border-radius: 4px;
	box-shadow: 0 10px 30px rgba(0, 0, 0, 0.5);
}

.lightbox-close {
	position: absolute;
	top: -16px;
	right: -16px;
	background: #000000;
	color: #ffffff;
	border: 2px solid #ffffff;
	border-radius: 50%;
	width: 32px;
	height: 32px;
	cursor: pointer;
	z-index: 3010;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 18px;
	font-weight: bold;
	transition: all 0.2s ease;
}

.lightbox-prev,
.lightbox-next {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	background: #000000;
	color: #ffffff;
	border: 2px solid #ffffff;
	border-radius: 50%;
	width: 38px;
	height: 38px;
	cursor: pointer;
	z-index: 3010;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 14px;
	font-weight: bold;
	transition: all 0.2s ease;
}

.lightbox-prev { left: -19px; }
.lightbox-next { right: -19px; }

.lightbox-prev:hover,
.lightbox-next:hover,
.lightbox-close:hover {
	background: var(--primary);
}

.lightbox-caption {
	color: #ffffff;
	margin-top: 16px;
	font-size: 15px;
	font-weight: 600;
	text-align: center;
}

@media (max-width: 991px) {
	.illustrator-section { padding: 30px; border-radius: 24px; }
	.focus-object-box { padding: 24px; }
	.lightbox-prev { left: 10px; transform: translateY(-50%); }
	.lightbox-next { right: 10px; transform: translateY(-50%); }
	.lightbox-close { top: 10px; right: 10px; }
}

/* =============================================================
   FICHE PRODUIT WOOCOMMERCE
   ============================================================= */

.product-single-container {
	padding-top: 40px;
	padding-bottom: 80px;
}

/* Image principale */
.product-showcase-image {
	background-color: transparent;
	padding: 10px;
	text-align: center;
	margin-bottom: 24px;
}

.product-showcase-image img {
	width: 100%;
	max-width: 480px;
	height: auto;
	border-radius: 16px;
	filter: drop-shadow(0 12px 28px rgba(0, 0, 0, 0.06));
	cursor: zoom-in;
	transition: all 0.4s ease;
}

/* Vignettes produit (style différent des gallery-artwork-frame de musique magique) */
.product-thumb-frame {
	background-color: #ffffff;
	padding: 6px;
	box-shadow: 0 4px 10px rgba(0, 0, 0, 0.04);
	border: 1px solid rgba(201, 141, 48, 0.12);
	border-radius: 8px;
	overflow: hidden;
	aspect-ratio: 1/1;
	cursor: pointer;
	transition: all 0.3s ease;
}

.product-thumb-frame:hover,
.product-thumb-frame.active {
	transform: scale(1.05);
	border-color: var(--primary);
	box-shadow: 0 6px 15px rgba(201, 141, 48, 0.12);
}

.product-thumb-frame img {
	width: 100%;
	height: 100%;
	object-fit: contain;
	display: block;
}

/* Description courte */
.product-short-desc p {
	margin-bottom: 0;
}

/* Box achat */
.product-buy-box {
	background: #ffffff;
	border: 1px solid rgba(201, 141, 48, 0.12);
	border-radius: 20px;
	padding: 20px 24px;
	box-shadow: 0 8px 24px rgba(0, 0, 0, 0.01);
}

.product-buy-label {
	font-family: 'Montserrat', sans-serif;
	font-size: 10px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.08em;
	color: #8c8c8c;
}

.product-price-large {
	font-family: 'Montserrat', sans-serif;
	font-size: 28px;
	font-weight: 700;
	color: var(--primary);
}

/* Formulaire achat custom */
.product-buy-inner {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	flex-wrap: wrap;
}

.product-buy-form {
	display: flex !important;
	flex-direction: row !important;
	align-items: center !important;
	flex-wrap: nowrap !important;
	gap: 12px;
	margin: 0;
	padding: 0;
}

.product-qty-input {
	width: 68px !important;
	min-width: 68px !important;
	max-width: 68px !important;
	height: 52px !important;
	flex: none !important;
	padding: 0 8px !important;
	border-radius: 14px !important;
	border: 1px solid rgba(0, 0, 0, 0.15) !important;
	text-align: center !important;
	font-weight: 600;
	font-size: 16px;
	font-family: 'Quicksand', sans-serif;
	background-color: #ffffff !important;
	color: var(--text-dark) !important;
	box-shadow: none !important;
	-moz-appearance: textfield;
}

.product-qty-input::-webkit-inner-spin-button,
.product-qty-input::-webkit-outer-spin-button {
	-webkit-appearance: none;
}

.product-buy-box .btn-boutique-add {
	height: 52px !important;
	padding: 0 28px !important;
	white-space: nowrap;
	flex-shrink: 0;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	line-height: 1 !important;
}

/* Zone extraits audio */
.audio-tracks-list {
	background: #ffffff;
	border-radius: 20px;
	border: 1px solid rgba(201, 141, 48, 0.12);
	padding: 20px 20px 8px;
}

.audio-tracks-list .custom-audio-player {
	border-bottom: 1px solid rgba(201, 141, 48, 0.08);
	padding: 12px 0;
	border-radius: 0;
	border: none;
	box-shadow: none;
	background: transparent;
}

.audio-tracks-list .custom-audio-player:last-child {
	border-bottom: none;
}

/* Crédits — première ligne de chaque <p> en majuscules moutarde */
.product-credits-section {
	font-size: 14px;
	line-height: 1.7;
	color: #555555;
}

.product-credits-section p {
	margin-bottom: 14px;
}

.product-credits-section p::first-line {
	color: var(--primary);
	text-transform: uppercase;
	font-weight: 700;
	font-family: 'Montserrat', sans-serif;
	font-size: 11px;
	letter-spacing: 0.08em;
}

/* Munki */
.munki-integration-box {
	background-color: var(--secondary);
	border-radius: 14px;
	padding: 16px;
	font-size: 13px;
	color: var(--text-dark);
	border: 1px dashed rgba(201, 141, 48, 0.25);
}

.munki-link {
	color: var(--primary);
	text-decoration: none;
	font-weight: 700;
	border-bottom: 1px dashed var(--primary);
	transition: opacity 0.2s ease;
}

.munki-link:hover {
	opacity: 0.8;
}

@media (max-width: 991px) {
	.product-single-container { padding-top: 20px; }
	.product-buy-form { flex-wrap: wrap; }
}

/* =============================================================
   BOUTIQUE WOOCOMMERCE
   ============================================================= */

.boutique-intro-wrap {
	max-width: 960px;
	margin: 0 auto;
}

.boutique-intro-wrap p {
	margin-bottom: 0;
}

/* Carte produit */
.product-card {
	background: #ffffff;
	border: 1px solid rgba(201, 141, 48, 0.12);
	border-radius: 24px;
	padding: 24px;
	box-shadow: 0 8px 24px rgba(201, 141, 48, 0.01);
	transition: all 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
	height: 100%;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	text-align: center;
}

.product-card:hover {
	transform: translateY(-8px);
	box-shadow: 0 16px 35px rgba(201, 141, 48, 0.08);
	border-color: rgba(201, 141, 48, 0.25);
}

.product-image-container {
	aspect-ratio: 1/1;
	border-radius: 16px;
	overflow: hidden;
	background-color: transparent;
	margin-bottom: 20px;
	position: relative;
}

.product-image-container img {
	width: 100%;
	height: 100%;
	object-fit: contain;
	transition: transform 0.6s cubic-bezier(0.165, 0.84, 0.44, 1);
}

.product-card:hover .product-image-container img {
	transform: scale(1.04);
}

.boutique-product-type {
	font-size: 10px;
	font-weight: 700;
	letter-spacing: 0.12em;
}

.product-meta-row {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-top: 15px;
	padding-top: 15px;
	border-top: 1px dashed rgba(201, 141, 48, 0.15);
}

/* WooCommerce price override dans le contexte boutique */
.product-meta-row .product-price,
.product-meta-row .price {
	font-family: 'Montserrat', sans-serif;
	font-weight: 700;
	color: var(--primary);
	font-size: 18px;
}

.product-meta-row .price ins {
	text-decoration: none;
}

/* Bouton Ajouter au panier */
.btn-boutique-add {
	font-family: 'Montserrat', sans-serif;
	font-size: 11px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.15em;
	color: var(--primary);
	border: 2px solid rgba(201, 141, 48, 0.3);
	background-color: transparent;
	padding: 10px 24px;
	border-radius: 50px;
	transition: all 0.3s ease;
	text-decoration: none;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	white-space: nowrap;
}

.btn-boutique-add:hover,
.btn-boutique-add.added {
	background-color: var(--primary);
	border-color: var(--primary);
	color: #ffffff;
}

/* Icône panier ajoutée par WooCommerce AJAX — on la masque */
.btn-boutique-add::after {
	display: none !important;
}

/* =============================================================
   MON COMPTE WOOCOMMERCE
   ============================================================= */

/* Conteneur principal */
.moncompte-container {
	max-width: 1100px;
}

/* Layout : sidebar nav + contenu */
.woocommerce-account .woocommerce {
	display: flex;
	gap: 40px;
	align-items: flex-start;
}

/* ---- Navigation latérale ---- */
.woocommerce-MyAccount-navigation {
	width: 220px;
	flex-shrink: 0;
	float: none !important;
	background: #ffffff;
	border: 1px solid rgba(201, 141, 48, 0.12);
	border-radius: 20px;
	padding: 8px 0;
	box-shadow: 0 8px 24px rgba(0, 0, 0, 0.03);
}

.woocommerce-MyAccount-navigation ul {
	list-style: none;
	margin: 0;
	padding: 0;
}

.woocommerce-MyAccount-navigation-link {
	position: relative;
}

.woocommerce-MyAccount-navigation-link a {
	display: block;
	padding: 12px 20px 12px 28px;
	font-family: 'Montserrat', sans-serif;
	font-size: 10px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.09em;
	color: #8c8c8c;
	text-decoration: none;
	transition: color 0.2s ease;
	border-left: 3px solid transparent;
}

.woocommerce-MyAccount-navigation-link a:hover {
	color: var(--primary);
}

.woocommerce-MyAccount-navigation-link.is-active a {
	color: var(--primary);
	border-left-color: var(--primary);
}

/* ---- Zone de contenu ---- */
.woocommerce-account .woocommerce-MyAccount-content {
	flex: 1;
	float: none !important;
	width: auto !important;
	min-width: 0;
}

/* Textes intro */
.woocommerce-MyAccount-content > p {
	font-size: 15px;
	color: var(--text-dark);
	line-height: 1.7;
	margin-bottom: 16px;
}

.woocommerce-MyAccount-content > p a {
	color: var(--primary);
	font-weight: 700;
	text-decoration: none;
}

/* Titres de section */
.woocommerce-MyAccount-content h2 {
	font-family: 'Montserrat', sans-serif;
	font-size: 16px;
	font-weight: 700;
	color: var(--text-dark);
	margin-bottom: 20px;
	padding-bottom: 12px;
	border-bottom: 1px solid rgba(201, 141, 48, 0.15);
}

/* ---- Tableau commandes ---- */
.woocommerce-orders-table {
	width: 100%;
	border-collapse: separate;
	border-spacing: 0;
	background: #ffffff;
	border: 1px solid rgba(201, 141, 48, 0.12);
	border-radius: 16px;
	overflow: hidden;
	box-shadow: 0 4px 16px rgba(0, 0, 0, 0.02);
}

.woocommerce-orders-table thead th {
	background: var(--secondary);
	font-family: 'Montserrat', sans-serif;
	font-size: 10px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.1em;
	color: #8c8c8c;
	padding: 14px 20px;
	text-align: left;
	border-bottom: 1px solid rgba(201, 141, 48, 0.12);
}

.woocommerce-orders-table tbody tr {
	border-bottom: 1px solid rgba(0, 0, 0, 0.04);
	transition: background 0.15s;
}

.woocommerce-orders-table tbody tr:last-child td {
	border-bottom: none;
}

.woocommerce-orders-table tbody tr:hover {
	background: rgba(201, 141, 48, 0.02);
}

.woocommerce-orders-table tbody td,
.woocommerce-orders-table tbody th[scope="row"] {
	padding: 16px 20px;
	font-size: 14px;
	color: var(--text-dark);
	vertical-align: middle;
	border-bottom: 1px solid rgba(0, 0, 0, 0.04);
}

.woocommerce-orders-table td a {
	color: var(--primary);
	font-weight: 700;
	text-decoration: none;
}

/* Boutons actions commandes */
.woocommerce-orders-table .woocommerce-button,
.woocommerce-orders-table .button {
	font-family: 'Montserrat', sans-serif !important;
	font-size: 10px !important;
	font-weight: 700 !important;
	text-transform: uppercase !important;
	letter-spacing: 0.1em !important;
	color: var(--primary) !important;
	border: 1.5px solid rgba(201, 141, 48, 0.35) !important;
	border-radius: 50px !important;
	padding: 6px 18px !important;
	background: transparent !important;
	text-decoration: none;
	display: inline-flex;
	align-items: center;
	transition: all 0.2s;
	box-shadow: none !important;
}

.woocommerce-orders-table .woocommerce-button:hover,
.woocommerce-orders-table .button:hover {
	background: var(--primary) !important;
	border-color: var(--primary) !important;
	color: #ffffff !important;
}

/* Pagination commandes */
.woocommerce-pagination {
	display: flex;
	gap: 8px;
	margin-top: 24px;
}

.woocommerce-pagination .woocommerce-button,
.woocommerce-pagination .button {
	font-family: 'Montserrat', sans-serif;
	font-size: 10px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.08em;
	color: var(--primary);
	border: 1.5px solid rgba(201, 141, 48, 0.35);
	border-radius: 50px;
	padding: 8px 20px;
	background: transparent;
	text-decoration: none;
	display: inline-flex;
	align-items: center;
	transition: all 0.2s;
}

.woocommerce-pagination .woocommerce-button:hover,
.woocommerce-pagination .button:hover {
	background: var(--primary);
	border-color: var(--primary);
	color: #ffffff;
}

/* ---- Formulaires mon compte (même style que page Contact) ---- */
.woocommerce-account .woocommerce-form-row,
.woocommerce-account .form-row {
	margin-bottom: 24px;
}

.woocommerce-account label {
	display: block;
	font-family: 'Montserrat', sans-serif;
	font-size: 11px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.05em;
	color: var(--text-dark);
	margin-bottom: 8px;
}

.woocommerce-account label .required {
	color: var(--primary);
}

.woocommerce-account .woocommerce-Input,
.woocommerce-account .input-text {
	width: 100% !important;
	padding: 14px 20px !important;
	border-radius: 12px !important;
	border: 1px solid rgba(0, 0, 0, 0.08) !important;
	background-color: var(--background) !important;
	font-family: 'Quicksand', sans-serif !important;
	font-size: 15px !important;
	font-weight: 500 !important;
	color: var(--text-dark) !important;
	transition: all 0.3s ease !important;
	outline: none;
	box-shadow: none !important;
	box-sizing: border-box;
	-webkit-appearance: none;
	appearance: none;
}

.woocommerce-account .woocommerce-Input:focus,
.woocommerce-account .input-text:focus {
	border-color: var(--primary) !important;
	background-color: #ffffff !important;
	box-shadow: 0 4px 15px rgba(201, 141, 48, 0.08) !important;
}

/* Champs côte à côte */
.woocommerce-account .woocommerce-form-row--first,
.woocommerce-account .form-row-first {
	float: left;
	width: 48%;
	margin-right: 4%;
}

.woocommerce-account .woocommerce-form-row--last,
.woocommerce-account .form-row-last {
	float: right;
	width: 48%;
}

/* Fieldset changement de mot de passe */
.woocommerce-account fieldset {
	border: 1px solid rgba(201, 141, 48, 0.15);
	border-radius: 16px;
	padding: 24px;
	margin: 28px 0 20px;
	background: var(--secondary);
}

.woocommerce-account fieldset legend {
	font-family: 'Montserrat', sans-serif;
	font-size: 11px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.05em;
	color: var(--primary);
	padding: 0 10px;
}

/* Note sous display name */
.woocommerce-account em {
	font-size: 12px;
	color: #aaa;
	font-style: normal;
	display: block;
	margin-top: 4px;
}

/* Bouton de sauvegarde (même style que bouton submit CF7) */
.woocommerce-account .woocommerce-form__submit,
.woocommerce-account button[type="submit"] {
	font-family: 'Montserrat', sans-serif !important;
	font-size: 11px !important;
	font-weight: 700 !important;
	text-transform: uppercase !important;
	letter-spacing: 0.15em !important;
	color: var(--primary) !important;
	border: 2px solid rgba(201, 141, 48, 0.3) !important;
	border-radius: 50px !important;
	padding: 14px 40px !important;
	background-color: transparent !important;
	background-image: none !important;
	box-shadow: none !important;
	cursor: pointer;
	transition: all 0.3s ease;
	display: inline-block;
	line-height: 1;
}

.woocommerce-account .woocommerce-form__submit:hover,
.woocommerce-account button[type="submit"]:hover {
	background-color: var(--primary) !important;
	border-color: var(--primary) !important;
	color: #ffffff !important;
	transform: scale(1.02);
}

/* ---- Page Adresses ---- */
.woocommerce-Addresses {
	display: flex;
	gap: 24px;
	flex-wrap: wrap;
}

.woocommerce-Address {
	flex: 1;
	min-width: 220px;
	background: #ffffff;
	border: 1px solid rgba(201, 141, 48, 0.12);
	border-radius: 16px;
	padding: 24px;
	box-shadow: 0 4px 16px rgba(0, 0, 0, 0.02);
}

.woocommerce-Address-title {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-bottom: 16px;
	padding-bottom: 12px;
	border-bottom: 1px solid rgba(201, 141, 48, 0.12);
}

.woocommerce-Address-title h2 {
	font-family: 'Montserrat', sans-serif;
	font-size: 12px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.07em;
	color: var(--text-dark);
	margin: 0;
	padding: 0;
	border: none;
}

.woocommerce-Address-title .edit {
	font-family: 'Montserrat', sans-serif;
	font-size: 10px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.08em;
	color: var(--primary);
	text-decoration: none;
	border: 1.5px solid rgba(201, 141, 48, 0.3);
	border-radius: 50px;
	padding: 5px 14px;
	transition: all 0.2s;
	display: inline-flex;
	align-items: center;
}

.woocommerce-Address-title .edit:hover {
	background: var(--primary);
	border-color: var(--primary);
	color: #ffffff;
}

.woocommerce-Address address {
	font-style: normal;
	font-size: 14px;
	color: var(--text-dark);
	line-height: 1.8;
}

/* ---- Téléchargements ---- */
.woocommerce-table--order-downloads {
	width: 100%;
	border-collapse: separate;
	border-spacing: 0;
	background: #ffffff;
	border: 1px solid rgba(201, 141, 48, 0.12);
	border-radius: 16px;
	overflow: hidden;
}

.woocommerce-table--order-downloads thead th {
	background: var(--secondary);
	font-family: 'Montserrat', sans-serif;
	font-size: 10px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.1em;
	color: #8c8c8c;
	padding: 14px 20px;
	border-bottom: 1px solid rgba(201, 141, 48, 0.12);
}

.woocommerce-table--order-downloads tbody td {
	padding: 14px 20px;
	font-size: 14px;
	color: var(--text-dark);
	border-bottom: 1px solid rgba(0, 0, 0, 0.04);
}

.woocommerce-table--order-downloads .woocommerce-MyAccount-downloads-file {
	color: var(--primary);
	font-weight: 700;
	text-decoration: none;
}

/* ---- Icônes WooCommerce dans la navigation — on masque ---- */
.woocommerce-MyAccount-navigation-link a::before,
.woocommerce-MyAccount-navigation-link a::after {
	display: none !important;
}

/* ---- Notices WooCommerce (info, message, erreur) ---- */
.woocommerce-MyAccount-content .woocommerce-info,
.woocommerce-MyAccount-content .woocommerce-message,
.woocommerce-MyAccount-content .woocommerce-error {
	border-top-color: var(--primary) !important;
	background-color: rgba(201, 141, 48, 0.05) !important;
	color: var(--text-dark) !important;
	border-radius: 0 0 12px 12px;
	padding: 16px 20px;
	font-size: 14px;
	display: flex;
	align-items: center;
	gap: 16px;
	flex-wrap: wrap;
}

.woocommerce-MyAccount-content .woocommerce-info::before,
.woocommerce-MyAccount-content .woocommerce-message::before {
	display: none !important;
}

/* Bouton "Parcourir les produits" et autres boutons wc-forward */
.woocommerce-MyAccount-content .wc-forward,
.woocommerce-MyAccount-content .woocommerce-info .button,
.woocommerce-MyAccount-content .woocommerce-message .button {
	font-family: 'Montserrat', sans-serif !important;
	font-size: 10px !important;
	font-weight: 700 !important;
	text-transform: uppercase !important;
	letter-spacing: 0.1em !important;
	color: var(--primary) !important;
	border: 1.5px solid rgba(201, 141, 48, 0.4) !important;
	border-radius: 50px !important;
	padding: 8px 20px !important;
	background: transparent !important;
	background-color: transparent !important;
	background-image: none !important;
	text-decoration: none;
	display: inline-flex;
	align-items: center;
	transition: all 0.2s;
	box-shadow: none !important;
	margin-left: auto;
}

.woocommerce-MyAccount-content .wc-forward:hover,
.woocommerce-MyAccount-content .woocommerce-info .button:hover,
.woocommerce-MyAccount-content .woocommerce-message .button:hover {
	background: var(--primary) !important;
	border-color: var(--primary) !important;
	color: #ffffff !important;
}

/* ---- Responsive ---- */
@media (max-width: 991px) {
	.woocommerce-account .woocommerce {
		flex-direction: column;
	}

	.woocommerce-MyAccount-navigation {
		width: 100%;
	}

	.woocommerce-MyAccount-navigation ul {
		display: flex;
		flex-wrap: wrap;
	}

	.woocommerce-MyAccount-navigation-link a {
		padding: 10px 16px;
		border-left: none;
		border-bottom: 2px solid transparent;
	}

	.woocommerce-MyAccount-navigation-link.is-active a {
		border-left-color: transparent;
		border-bottom-color: var(--primary);
	}
}

@media (max-width: 767px) {
	.woocommerce-Addresses {
		flex-direction: column;
	}

	.woocommerce-account .woocommerce-form-row--first,
	.woocommerce-account .form-row-first,
	.woocommerce-account .woocommerce-form-row--last,
	.woocommerce-account .form-row-last {
		float: none;
		width: 100%;
		margin-right: 0;
	}

	/* Tableau commandes responsive */
	.woocommerce-orders-table thead {
		display: none;
	}

	.woocommerce-orders-table tbody tr {
		display: block;
		padding: 16px;
		border: 1px solid rgba(201, 141, 48, 0.12);
		border-radius: 12px;
		margin-bottom: 12px;
	}

	.woocommerce-orders-table tbody td,
	.woocommerce-orders-table tbody th[scope="row"] {
		display: block;
		padding: 4px 0;
		border: none;
	}

	.woocommerce-orders-table tbody td::before {
		content: attr(data-title) ' : ';
		font-family: 'Montserrat', sans-serif;
		font-size: 9px;
		font-weight: 700;
		text-transform: uppercase;
		letter-spacing: 0.08em;
		color: #aaa;
	}
}

/* =============================================================
   PAGE PAIEMENT / CHECKOUT WOOCOMMERCE
   ============================================================= */

/* Layout deux colonnes billing + shipping */
.woocommerce-checkout .col2-set {
	display: flex;
	gap: 40px;
	margin-bottom: 40px;
}

.woocommerce-checkout .col2-set .col-1,
.woocommerce-checkout .col2-set .col-2 {
	flex: 1;
	float: none;
	width: auto;
}

/* Titres de section (Facturation, Livraison, Votre commande) */
.woocommerce-checkout h3,
.woocommerce-checkout #order_review_heading {
	font-family: 'Montserrat', sans-serif;
	font-size: 16px;
	font-weight: 700;
	color: var(--text-dark);
	margin-bottom: 24px;
	padding-bottom: 12px;
	border-bottom: 1px solid rgba(201, 141, 48, 0.15);
}

/* ---- Card wrapper sections (facturation, etc.) ---- */
.checkout-section-card {
	background: #ffffff;
	border: 1px solid rgba(201, 141, 48, 0.12);
	border-radius: 24px;
	padding: 40px;
	box-shadow: 0 10px 30px rgba(201, 141, 48, 0.01);
}

.checkout-section-card h3 {
	border-bottom: none;
	padding-bottom: 4px;
	margin-bottom: 12px;
}

/* ---- Champs de formulaire (même style que page Contact) ---- */
.woocommerce-checkout .form-row {
	margin-bottom: 20px;
	padding: 0;
}

/* Demi-champs */
.woocommerce-checkout .form-row-first {
	float: left;
	width: 48%;
	margin-right: 4%;
}

.woocommerce-checkout .form-row-last {
	float: right;
	width: 48%;
}

.woocommerce-checkout .form-row-wide {
	clear: both;
}

.woocommerce-checkout .form-row label {
	display: block;
	font-family: 'Montserrat', sans-serif;
	font-size: 11px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.05em;
	color: var(--text-dark);
	margin-bottom: 8px;
}

.woocommerce-checkout .form-row label .required {
	color: var(--primary);
	font-weight: 700;
}

.woocommerce-checkout .form-row label .optional {
	font-weight: 400;
	color: #aaa;
	text-transform: none;
	font-size: 10px;
}

.woocommerce-checkout .form-row .input-text,
.woocommerce-checkout .form-row input[type="text"],
.woocommerce-checkout .form-row input[type="email"],
.woocommerce-checkout .form-row input[type="tel"],
.woocommerce-checkout .form-row input[type="password"],
.woocommerce-checkout .form-row input[type="number"] {
	width: 100% !important;
	padding: 14px 20px !important;
	border-radius: 12px !important;
	border: 1px solid rgba(0, 0, 0, 0.08) !important;
	background-color: var(--background) !important;
	font-family: 'Quicksand', sans-serif !important;
	font-size: 15px !important;
	font-weight: 500 !important;
	color: var(--text-dark) !important;
	transition: all 0.3s ease !important;
	outline: none;
	box-shadow: none !important;
	box-sizing: border-box;
	appearance: none;
	-webkit-appearance: none;
}

.woocommerce-checkout .form-row .input-text:focus,
.woocommerce-checkout .form-row input[type="text"]:focus,
.woocommerce-checkout .form-row input[type="email"]:focus,
.woocommerce-checkout .form-row input[type="tel"]:focus,
.woocommerce-checkout .form-row input[type="password"]:focus {
	border-color: var(--primary) !important;
	background-color: #ffffff !important;
	box-shadow: 0 4px 15px rgba(201, 141, 48, 0.08) !important;
}

/* Select */
.woocommerce-checkout .form-row select {
	width: 100% !important;
	padding: 14px 44px 14px 20px !important;
	border-radius: 12px !important;
	border: 1px solid rgba(0, 0, 0, 0.08) !important;
	background-color: var(--background) !important;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23c98d30' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E") !important;
	background-repeat: no-repeat !important;
	background-position: right 16px center !important;
	background-size: 16px !important;
	font-family: 'Quicksand', sans-serif !important;
	font-size: 15px !important;
	font-weight: 500 !important;
	color: var(--text-dark) !important;
	appearance: none !important;
	-webkit-appearance: none !important;
	outline: none;
	cursor: pointer;
	box-shadow: none !important;
	box-sizing: border-box;
	transition: all 0.3s ease;
}

.woocommerce-checkout .form-row select:focus {
	border-color: var(--primary) !important;
	background-color: #ffffff !important;
	box-shadow: 0 4px 15px rgba(201, 141, 48, 0.08) !important;
}

/* Checkbox "Créer un compte" / "Adresse différente" */
.woocommerce-checkout .woocommerce-form__label-for-checkbox {
	display: flex;
	align-items: center;
	gap: 10px;
	font-family: 'Quicksand', sans-serif;
	font-size: 14px;
	font-weight: 500;
	color: var(--text-dark);
	text-transform: none;
	letter-spacing: 0;
	cursor: pointer;
}

.woocommerce-checkout .woocommerce-form__input-checkbox {
	width: 18px !important;
	height: 18px !important;
	accent-color: var(--primary);
	cursor: pointer;
}

/* Textarea notes commande */
.woocommerce-checkout .form-row textarea {
	width: 100% !important;
	padding: 14px 20px !important;
	border-radius: 12px !important;
	border: 1px solid rgba(0, 0, 0, 0.08) !important;
	background-color: var(--background) !important;
	font-family: 'Quicksand', sans-serif !important;
	font-size: 15px !important;
	font-weight: 500 !important;
	color: var(--text-dark) !important;
	resize: vertical;
	min-height: 100px;
	outline: none;
	box-shadow: none !important;
	transition: all 0.3s ease;
	box-sizing: border-box;
}

.woocommerce-checkout .form-row textarea:focus {
	border-color: var(--primary) !important;
	background-color: #ffffff !important;
	box-shadow: 0 4px 15px rgba(201, 141, 48, 0.08) !important;
}

/* Erreurs de validation */
.woocommerce-checkout .form-row.woocommerce-invalid .input-text,
.woocommerce-checkout .form-row.woocommerce-invalid select {
	border-color: #d44 !important;
}

.woocommerce-checkout .form-row .woocommerce-error {
	font-size: 12px;
	color: #d44;
	margin-top: 4px;
}

/* ---- Récapitulatif commande ---- */
.woocommerce-checkout-review-order {
	background: #ffffff;
	border: 1px solid rgba(201, 141, 48, 0.12);
	border-radius: 20px;
	overflow: hidden;
	box-shadow: 0 4px 20px rgba(0, 0, 0, 0.02);
}

.woocommerce-checkout-review-order-table {
	width: 100%;
	border-collapse: collapse;
}

.woocommerce-checkout-review-order-table thead th {
	background: var(--secondary);
	font-family: 'Montserrat', sans-serif;
	font-size: 10px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.1em;
	color: #8c8c8c;
	padding: 14px 24px;
	border-bottom: 1px solid rgba(201, 141, 48, 0.12);
	text-align: left;
}

.woocommerce-checkout-review-order-table tbody td {
	padding: 14px 24px;
	font-size: 14px;
	color: var(--text-dark);
	border-bottom: 1px solid rgba(0, 0, 0, 0.04);
}

.woocommerce-checkout-review-order-table tbody td .product-quantity {
	color: #8c8c8c;
	font-weight: 400;
}

.woocommerce-checkout-review-order-table tfoot th,
.woocommerce-checkout-review-order-table tfoot td {
	padding: 12px 24px;
	font-size: 13px;
	border-top: 1px solid rgba(0, 0, 0, 0.04);
}

.woocommerce-checkout-review-order-table tfoot th {
	font-family: 'Montserrat', sans-serif;
	font-size: 10px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	color: #8c8c8c;
}

.woocommerce-checkout-review-order-table tfoot td {
	font-family: 'Quicksand', sans-serif;
	font-weight: 600;
	color: var(--text-dark);
	text-align: right;
}

.woocommerce-checkout-review-order-table .order-total th {
	color: var(--text-dark);
	font-size: 11px;
}

.woocommerce-checkout-review-order-table .order-total td strong,
.woocommerce-checkout-review-order-table .order-total td .woocommerce-Price-amount {
	font-family: 'Montserrat', sans-serif;
	font-size: 20px;
	font-weight: 700;
	color: var(--primary);
}

/* ---- Modes de paiement ---- */
#payment {
	background: var(--secondary);
	border-top: 1px solid rgba(201, 141, 48, 0.12);
	border-radius: 0 0 20px 20px;
	padding: 24px;
}

#payment .wc_payment_methods {
	list-style: none;
	margin: 0 0 20px;
	padding: 0;
}

#payment .wc_payment_methods .wc_payment_method {
	background: #ffffff;
	border: 1px solid rgba(201, 141, 48, 0.15);
	border-radius: 12px;
	padding: 14px 20px;
	margin-bottom: 10px;
}

#payment .wc_payment_methods label {
	display: flex;
	align-items: center;
	gap: 10px;
	font-family: 'Quicksand', sans-serif;
	font-size: 14px;
	font-weight: 600;
	color: var(--text-dark);
	cursor: pointer;
	text-transform: none;
	letter-spacing: 0;
	margin: 0;
}

#payment .wc_payment_methods input[type="radio"] {
	width: 16px;
	height: 16px;
	accent-color: var(--primary);
	flex-shrink: 0;
}

#payment .payment_box {
	background: rgba(201, 141, 48, 0.04);
	border-radius: 8px;
	padding: 14px 16px;
	margin-top: 12px;
	font-size: 13px;
	color: #8c8c8c;
}

/* Conditions générales */
.woocommerce-terms-and-conditions-wrapper {
	margin-bottom: 20px;
	font-size: 13px;
	color: #8c8c8c;
}

.woocommerce-terms-and-conditions-wrapper a {
	color: var(--primary);
	text-decoration: none;
	font-weight: 600;
}

/* Bouton "Passer la commande" */
#place_order {
	display: block;
	width: 100%;
	padding: 16px 32px !important;
	font-family: 'Montserrat', sans-serif !important;
	font-size: 11px !important;
	font-weight: 700 !important;
	text-transform: uppercase !important;
	letter-spacing: 0.15em !important;
	color: #ffffff !important;
	background: var(--primary) !important;
	background-image: none !important;
	border: 2px solid var(--primary) !important;
	border-radius: 50px !important;
	cursor: pointer;
	transition: all 0.3s ease;
	box-shadow: 0 4px 16px rgba(201, 141, 48, 0.3);
	line-height: 1;
}

#place_order:hover {
	background: transparent !important;
	color: var(--primary) !important;
	box-shadow: none;
}

/* Responsive checkout */
@media (max-width: 767px) {
	.woocommerce-checkout .col2-set {
		flex-direction: column;
		gap: 0;
	}

	.woocommerce-checkout .form-row-first,
	.woocommerce-checkout .form-row-last {
		float: none;
		width: 100%;
		margin-right: 0;
	}
}

/* =============================================================
   PANIER WOOCOMMERCE
   ============================================================= */

/* Titre de page panier */
.woocommerce-cart .entry-title {
	font-family: 'Montserrat', sans-serif;
	font-size: clamp(28px, 4vw, 42px);
	font-weight: 700;
	color: var(--text-dark);
	text-align: center;
	margin-bottom: 8px;
}

/* Tableau produits panier */
.woocommerce-cart table.shop_table {
	width: 100%;
	border-collapse: separate;
	border-spacing: 0;
	background: #ffffff;
	border: 1px solid rgba(201, 141, 48, 0.12);
	border-radius: 20px;
	overflow: hidden;
	box-shadow: 0 4px 20px rgba(0, 0, 0, 0.02);
	margin-bottom: 32px;
}

.woocommerce-cart table.shop_table thead th {
	background: var(--secondary);
	font-family: 'Montserrat', sans-serif;
	font-size: 10px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.1em;
	color: #8c8c8c;
	padding: 14px 20px;
	border-bottom: 1px solid rgba(201, 141, 48, 0.12);
	text-align: left;
}

.woocommerce-cart table.shop_table thead .product-remove,
.woocommerce-cart table.shop_table thead .product-thumbnail {
	width: 40px;
}

.woocommerce-cart table.shop_table tbody tr {
	border-bottom: 1px solid rgba(0, 0, 0, 0.04);
	transition: background 0.15s;
}

.woocommerce-cart table.shop_table tbody tr:hover {
	background: rgba(201, 141, 48, 0.02);
}

.woocommerce-cart table.shop_table tbody td {
	padding: 20px;
	vertical-align: middle;
	border-bottom: 1px solid rgba(0, 0, 0, 0.04);
	font-size: 14px;
	color: var(--text-dark);
}

/* Bouton supprimer un article */
.woocommerce-cart .product-remove .remove {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 28px;
	height: 28px;
	border-radius: 50%;
	border: 1.5px solid rgba(0, 0, 0, 0.12);
	color: #aaa !important;
	font-size: 16px;
	line-height: 1;
	text-decoration: none;
	transition: all 0.2s;
	background: transparent;
}

.woocommerce-cart .product-remove .remove:hover {
	border-color: #d44;
	color: #d44 !important;
	background: #fff0f0;
}

/* Miniature produit */
.woocommerce-cart .product-thumbnail img {
	width: 72px;
	height: 72px;
	object-fit: cover;
	border-radius: 10px;
	display: block;
	border: 1px solid rgba(201, 141, 48, 0.1);
}

/* Nom du produit */
.woocommerce-cart .product-name a {
	font-family: 'Montserrat', sans-serif;
	font-size: 14px;
	font-weight: 700;
	color: var(--text-dark);
	text-decoration: none;
	transition: color 0.2s;
}

.woocommerce-cart .product-name a:hover {
	color: var(--primary);
}

/* Prix unitaire & sous-total */
.woocommerce-cart .product-price,
.woocommerce-cart .product-subtotal {
	font-family: 'Montserrat', sans-serif;
	font-weight: 700;
	color: var(--primary);
}

/* Input quantité dans le panier */
.woocommerce-cart .product-quantity .qty {
	width: 64px !important;
	height: 44px !important;
	padding: 0 8px !important;
	border-radius: 12px !important;
	border: 1px solid rgba(0, 0, 0, 0.12) !important;
	text-align: center;
	font-family: 'Quicksand', sans-serif;
	font-size: 15px;
	font-weight: 600;
	color: var(--text-dark);
	background: var(--background) !important;
	box-shadow: none !important;
	-moz-appearance: textfield;
}

.woocommerce-cart .product-quantity .qty::-webkit-inner-spin-button,
.woocommerce-cart .product-quantity .qty::-webkit-outer-spin-button {
	-webkit-appearance: none;
}

.woocommerce-cart .product-quantity .qty:focus {
	border-color: var(--primary) !important;
	outline: none;
}

/* Ligne actions : coupon + mettre à jour */
.woocommerce-cart table.shop_table td.actions {
	background: var(--secondary);
	border-top: 1px solid rgba(201, 141, 48, 0.12);
	padding: 20px;
}

.woocommerce-cart .coupon {
	display: flex;
	align-items: center;
	gap: 10px;
	float: left;
}

.woocommerce-cart .coupon .input-text {
	height: 44px;
	padding: 0 16px;
	border-radius: 50px;
	border: 1px solid rgba(0, 0, 0, 0.1);
	font-family: 'Quicksand', sans-serif;
	font-size: 14px;
	color: var(--text-dark);
	background: #ffffff;
	outline: none;
	transition: border-color 0.2s;
	width: 180px;
}

.woocommerce-cart .coupon .input-text:focus {
	border-color: var(--primary);
}

/* Boutons "Appliquer le coupon" et "Mettre à jour le panier" */
.woocommerce-cart td.actions .button,
.woocommerce-cart .coupon .button {
	font-family: 'Montserrat', sans-serif !important;
	font-size: 10px !important;
	font-weight: 700 !important;
	text-transform: uppercase !important;
	letter-spacing: 0.1em !important;
	color: var(--primary) !important;
	border: 1.5px solid rgba(201, 141, 48, 0.35) !important;
	border-radius: 50px !important;
	padding: 0 20px !important;
	height: 44px;
	background: transparent !important;
	background-color: transparent !important;
	background-image: none !important;
	box-shadow: none !important;
	cursor: pointer;
	transition: all 0.2s;
	display: inline-flex;
	align-items: center;
}

.woocommerce-cart td.actions .button:hover,
.woocommerce-cart .coupon .button:hover {
	background: var(--primary) !important;
	border-color: var(--primary) !important;
	color: #ffffff !important;
}

/* ---- Totaux panier ---- */
.woocommerce-cart .cart_totals {
	background: #ffffff;
	border: 1px solid rgba(201, 141, 48, 0.12);
	border-radius: 20px;
	padding: 32px;
	box-shadow: 0 4px 20px rgba(0, 0, 0, 0.02);
}

.woocommerce-cart .cart_totals h2 {
	font-family: 'Montserrat', sans-serif;
	font-size: 16px;
	font-weight: 700;
	color: var(--text-dark);
	margin-bottom: 20px;
	padding-bottom: 12px;
	border-bottom: 1px solid rgba(201, 141, 48, 0.15);
}

.woocommerce-cart .cart_totals table.shop_table {
	border: none;
	border-radius: 0;
	box-shadow: none;
	margin-bottom: 20px;
}

.woocommerce-cart .cart_totals table.shop_table th,
.woocommerce-cart .cart_totals table.shop_table td {
	padding: 10px 0;
	border-bottom: 1px solid rgba(0, 0, 0, 0.04);
	font-size: 14px;
	background: transparent !important;
}

.woocommerce-cart .cart_totals table.shop_table th {
	font-family: 'Montserrat', sans-serif;
	font-size: 11px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.05em;
	color: #8c8c8c;
	width: 40%;
}

.woocommerce-cart .cart_totals table.shop_table td {
	font-family: 'Quicksand', sans-serif;
	font-weight: 600;
	color: var(--text-dark);
	text-align: right;
}

/* Ligne total final */
.woocommerce-cart .cart_totals .order-total th,
.woocommerce-cart .cart_totals .order-total td {
	border-bottom: none;
	padding-top: 16px;
}

.woocommerce-cart .cart_totals .order-total th {
	font-size: 12px;
	color: var(--text-dark);
}

.woocommerce-cart .cart_totals .order-total td strong,
.woocommerce-cart .cart_totals .order-total td .woocommerce-Price-amount {
	font-family: 'Montserrat', sans-serif;
	font-size: 22px;
	font-weight: 700;
	color: var(--primary);
}

/* Bouton "Passer la commande" */
.woocommerce-cart .wc-proceed-to-checkout .checkout-button {
	display: block;
	width: 100%;
	padding: 15px 32px !important;
	font-family: 'Montserrat', sans-serif !important;
	font-size: 11px !important;
	font-weight: 700 !important;
	text-transform: uppercase !important;
	letter-spacing: 0.15em !important;
	color: #ffffff !important;
	background: var(--primary) !important;
	background-image: none !important;
	border: 2px solid var(--primary) !important;
	border-radius: 50px !important;
	text-align: center;
	text-decoration: none;
	cursor: pointer;
	transition: all 0.3s ease;
	box-shadow: 0 4px 16px rgba(201, 141, 48, 0.25);
}

.woocommerce-cart .wc-proceed-to-checkout .checkout-button:hover {
	background: transparent !important;
	color: var(--primary) !important;
	box-shadow: none;
}

/* Panier vide */
.woocommerce-cart .woocommerce-cart-form ~ * .return-to-shop .button,
.woocommerce-cart .cart-empty + .return-to-shop .button {
	font-family: 'Montserrat', sans-serif;
	font-size: 11px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.12em;
	color: var(--primary);
	border: 2px solid rgba(201, 141, 48, 0.35);
	border-radius: 50px;
	padding: 12px 32px;
	background: transparent;
	text-decoration: none;
	display: inline-flex;
	align-items: center;
	transition: all 0.3s;
}

.woocommerce-cart .return-to-shop .button:hover {
	background: var(--primary);
	border-color: var(--primary);
	color: #ffffff;
}

/* Responsive panier */
@media (max-width: 767px) {
	.woocommerce-cart table.shop_table thead {
		display: none;
	}

	.woocommerce-cart table.shop_table tbody tr {
		display: grid;
		grid-template-columns: 40px 80px 1fr;
		grid-template-rows: auto auto;
		gap: 8px 12px;
		padding: 16px;
		border: 1px solid rgba(201, 141, 48, 0.1);
		border-radius: 14px;
		margin-bottom: 12px;
	}

	.woocommerce-cart table.shop_table tbody td {
		display: block;
		border: none;
		padding: 0;
	}

	.woocommerce-cart table.shop_table tbody td::before {
		content: attr(data-title) ' ';
		font-family: 'Montserrat', sans-serif;
		font-size: 9px;
		font-weight: 700;
		text-transform: uppercase;
		color: #aaa;
		letter-spacing: 0.06em;
		display: block;
	}

	.woocommerce-cart .product-remove,
	.woocommerce-cart .product-thumbnail {
		grid-row: 1;
	}

	.woocommerce-cart .coupon {
		float: none;
		margin-bottom: 12px;
		flex-wrap: wrap;
	}

	.woocommerce-cart .coupon .input-text {
		width: 100%;
	}
}