/*
*   Copyright (c) 2025 
*   All rights reserved.
*/
/******************* FONTS ****************************/

/* Fonts
:root {
--body-font: "Roboto", Verdana, serif;
--heading-font: "Skranji", Georgia, serif;
--secondary-font: "Gloria", Georgia, serif;
}
*/


/***************************** NORMALIZE CSS *****************************/


/*! 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; /* 1 */
}

/* 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: 2em;
margin: 0.67em 0;
}

/* Grouping content
========================================================================== */

/**
* 1. Add the correct box sizing in Firefox.
* 2. Show the overflow in Edge and IE.
*/

hr {
box-sizing: content-box; /* 1 */
height: 0; /* 1 */
overflow: visible; /* 2 */
}

/**
* 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; /* 1 */
font-size: 1em; /* 2 */
}

/* 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; /* 1 */
text-decoration: underline; /* 2 */
text-decoration: underline dotted; /* 2 */
}

/**
* 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; /* 1 */
font-size: 1em; /* 2 */
}

/**
* 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; /* 1 */
font-size: 100%; /* 1 */
line-height: 1.15; /* 1 */
margin: 0; /* 2 */
}

/**
* Show the overflow in IE.
* 1. Show the overflow in Edge.
*/

button,
input { /* 1 */
overflow: visible;
}

/**
* Remove the inheritance of text transform in Edge, Firefox, and IE.
* 1. Remove the inheritance of text transform in Firefox.
*/

button,
select { /* 1 */
text-transform: none;
}

/**
* Correct the inability to style clickable types in iOS and Safari.
*/

button,
[type="button"],
[type="reset"],
[type="submit"] {
-webkit-appearance: button;
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; /* 1 */
color: inherit; /* 2 */
display: table; /* 1 */
max-width: 100%; /* 1 */
padding: 0; /* 3 */
white-space: normal; /* 1 */
}

/**
* 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; /* 1 */
padding: 0; /* 2 */
}

/**
* 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; /* 1 */
appearance: textfield;
outline-offset: -2px; /* 2 */
}

/**
* 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; /* 1 */
font: inherit; /* 2 */
}

/* 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;
}


/*---------------------------------------------- FIN NORMALIZE CSS  ---------------------------------------*/




@font-face {
font-family: "Skranji";
font-style: normal;
src: url(/fonts/Skranji/Skranji-Regular.ttf) format("truetype");
}
@font-face {
font-family: "Skranji_bold";
font-style: normal;
font-weight: bold;
src: url(/fonts/Skranji/Skranji-Bold.ttf) format("truetype");
}

@font-face {
font-family: "Roboto";
font-style: normal;
src: url(/fonts/Roboto/Roboto-VariableFont_wdth,wght.ttf) format("truetype");
}
@font-face {
font-family: "Roboto Italic";
font-style: Italic;
src: url(/fonts/Roboto/Roboto-Italic-VariableFont_wdth,wght.ttf) format("truetype");
}

@font-face {
font-family: "PoetsenOne";
font-style: "Regular";
src: url(/fonts/PoetsenOne/PoetsenOne-Regular.ttf) format("truetype");
}


[type=button]:not(:disabled), [type=reset]:not(:disabled), [type=submit]:not(:disabled), button:not(:disabled) {
cursor: pointer;
border: none;
}

* {
box-sizing: border-box;
}
html {
height: 100%;
margin: 0;
padding: 0;
}
body {
font-family: "Roboto";
font-size: 16px;
line-height: 2;
background-color: white;
margin:0px;
padding:0px;
}

a {
color: #000;
transition: 0.3s color ease-out;
}

a:hover {
color: #111;
}


/***************************************** MON CODE****************************/
#suggestions-list{
position: absolute;
margin-top: -23px;
text-align: center;
list-style: none;
}

.main-logo{
width: 240px;
position: relative;
margin-top: 10px;
}
.main-logo img{
width: 100%;
}
#navbar{
position: absolute;
top: 10px;
width: 10%;
height: 71px;
right: 0px;
}
.main-menu{
position: absolute;
top: 0px;
right: 0px;
width: 100%;
height: 100%;
}

.hamburger-container {
display: flex;
align-items: center;
justify-content: center;
gap: 1px; /* Espace entre les éléments */
}
.hamburger-image {
width: 40px; /* Taille des images */
height: auto;
top:0px;
}
img#A{
position: relative;
left: 5%;
}
img#B{
position: relative;
left: -5%;
z-index: -10;
}
.hamburger-menu {
display: flex;
flex-direction: column;
justify-content: space-between;
width: 50px;
height: 48px;
position: relative;
top: -2px;
background: transparent;
border: none;
border-radius: 50%;
cursor: pointer;
padding: 6px;
background-color: #FDEB97;
z-index: 250;
}
.hamburger-menu span {
display: block;
width: 100%;
height: 8px;
background: gray;
border-radius: 5px;
transition: all 0.3s ease-in-out;
}

/* Animation quand le menu est ouvert */
.hamburger-menu.open span:nth-child(1) {
transform: translateY(15px) rotate(45deg);
}
.hamburger-menu.open span:nth-child(2) {
opacity: 0;
}
.hamburger-menu.open span:nth-child(3) {
transform: translateY(-15px) rotate(-45deg);
}

.text_end{
position: relative;
top: -15px;
margin-top: 0px;
padding-top: 0px;
}

.contact form{
margin-bottom: 0px;
}
.contact form input{
margin-bottom: 0px;
}
#contact_message{
margin-bottom: 0px;
}
.form-label{
margin-bottom: 0px;
}
.email.mb3{
margin-bottom: 0px;
}

/* Menu de navigation */
.menu {
position: absolute;
top: 70px;
right: 0;
background: white;
width: 200px;
max-width: 0;
overflow: hidden;
opacity: 0;
transform: translateX(-10px);
transition: max-height 1s ease, opacity 0.4s ease, transform 0.4s ease;
}
/* Affichage du menu quand le bouton est cliqué */
.menu.active {
display: block;
width: 70%;
min-height: 550px;
max-width: 800px;
top: 0px;
opacity: 1;
transform: translateY(0);
background-color: grey;
z-index: 200;
}
.menu ul {
list-style: none;
position: absolute;
width: 100%;
height: 15%;
right: 0px;
padding: 0;
margin: 0;
}
.menu ul li {
margin: 0px;
padding: 10px 0px 50px 10px;
border-bottom: 1px solid #ddd;
}
.menu ul li a {
text-decoration: none;
display: block;
color: white;
font-weight: bold;
}

a{
text-decoration: none;
}

.messageAccueil{
width: 54%;
position: absolute;
top: 19%;
font-size: 2rem;
z-index: 999;
}
.messageBook{
width: 54%;
position: absolute;
top: 19%;
font-size: 2rem;
z-index: 999;
}
.messagePanier{
width: 58%;
position: absolute;
top: 19%;
font-size: 2rem;
z-index: 999;
}
.messageCheckout{
width: 58%;
position: absolute;
top: 19%;
font-size: 2rem;
z-index: 999;
}
.messageContact{
width: 58%;
position: absolute;
top: 19%;
font-size: 2rem;
z-index: 999;
}
.alert-slide-out {
transition: opacity 1s ease, transform 1s ease;
opacity: 0;
transform: translateY(-115px);
}

.textIntroExt{
padding-bottom: 20px;
}
.row h1.text-intro {
display: none;
}
.row h1.text-introPc {
font-family: "Alfa Slab One", serif;
font-weight: 400;
font-style: normal;
font-size: 1.5rem;
color: #6a6565;
margin-top: 40px;
}

.jeneveuSpan{
color: rgb(209, 116, 131);
}

/** VIDEO **/
.compoVideo{
width: 100%;
position: relative;
top: -50px;
--bs-gutter-y: 3%;
justify-content: center;
padding-bottom: 5px;
}

.video-wrapper {
width: 100%;
height: 300px;
position: relative;
display: inline-block;
}
video {
width: 100%;
height: 300px;
object-fit: cover;
border-radius: 5px;
margin: 10px auto;
}
.videoExt{
width: 25%;
height: 300px;
}

h3.titreVideo{
width: 100%;
position: relative;
top: -57px;
font-family: 'Roboto Slab', serif;
font-size: 1.4rem;
z-index: 100;
}

/** CARROUSEL **/
.img-before-prev {
display: inline-block;
vertical-align: middle;
margin-right: 10px;
}

.img-after-next {
display: inline-block;
vertical-align: middle;
margin-left: 10px;
}

.slideDeux{
display: none;
}

.imagesExterieures_droite{
height: 480px;
}
.imagesExterieures_gauche{
height: 480px;
}
#bookCarousel .carousel-inner img {
width:50%;
height: 505px; /* Hauteur fixe */
}

#bookCarousel .carousel-inner {
width:757px;
height: 511px;
padding: 1px;
border: 1px solid #dddddd3c;
}

.custom-shadow {
box-shadow:4px 4px 10px rgba(0, 0, 0, 0.1); /* Ombre légère */
border-radius: 2px; /* Coins légèrement arrondis */
transition: box-shadow 0.3s ease-in-out;
}

.custom-shadow:hover {
box-shadow: 6px 6px 15px rgba(0, 0, 0, 0.2); /* Ombre plus forte au survol */
}

.boutonDroit{
position:absolute;
top:656px;
right: 654px;
width: 5%;
z-index: 100;
}
.boutonGauche{
position:absolute;
top:656px;
left:687px;
width: 5%;
z-index: 100;
}

.d-flex.deuxPages {
flex-direction: row-reverse;
}
.d-flex.deuxPages img{
width: 100%;
}

.info{
display: flex;
flex-direction: column;
flex-wrap: wrap;
}

.formulaire{
position: relative;
top: 72px;
font-family: 'Roboto Slab', serif;
--bs-gutter-x: 0px;
}
.formCol2 button.imgpanier{
padding: 0px;
}
.formCol2 button.imgpanier h5{
font-weight: bolder;
}

.instagramFoot{
display: none;
padding: 4px;
}
.instagramFoot img{
width:25%;
}

/*********** PANIER **********/
table.table{
border-bottom-width: 10%;
}

.sousTQ_TXT{
display: none;
}
.sousTF{
display: none;
}
.sousTQ_TP{
position: relative;
left: 76%;
}
.sousTQ_NB{
position: relative;
left: 53%;
}
.shippingCostNb{
position: relative;
left: 90%;
}
.prixTh_NB{
position: relative;
left: 84%;
}

#contentCartExt{
height: 100vh;
}

#shipping_zone{
position:relative;
left:-10px;
}
.panier .imgpanier{
width:60px;
}

.tableVide{
height: 310px;
}
.panierVide{
text-align: center;
margin-left: auto;
margin-right: auto;
}
p.panierVide{
width: 20%;
border-radius: 5px;
padding: 10px;
background-color: orange;
margin-bottom: 150px;
}
.carteExt{
width: 100%;
height: 100%;
}
p.textInt{
width: 118%;
position: relative;
top: -8px;
padding: 0px 5px 0px 15px;
background-color: #cacacac7;
}

.expeditions-row{
display: flex;
width: 100%;
justify-content: space-between;
position: relative;
left: 6%;
}
.expedition-text {
width: 100%;
position: absolute;
left: 0px;
}
td.expeditionInt{
width: 100%;
position: relative;
top: -9px;
border: none;
}
.expeditionInt img{
width: 100%;
margin-left: auto;
margin-right: auto;
}
.border.border-1.text-center.expedition-title{
width:50%;
background-color: #cacacac7;
}
.expedition-title{
cursor: pointer;
}
#titreFrance{
color: red;
}
#titreEurope{
color: red;
}
.expedition-title:hover {
background-color: #e2e6ea; /* Effet au survol */
}
.metroLign{
width: 40%;
border-bottom: 1px solid black;
}

.short-border {
border-right: 2px solid grey !important;
}
.sousNB{
position: relative;
left:3%;
}
.prixUnitaireMobile{
display: none;
}
.nombreUnitMobile{
display: none;
}
.sousTotalMobile{
display: none;
}
.sousTNombreMobile{
display: none;
}
/********* FIN PANIER **********/

.jeneveux{
position:relative;
margin-bottom: 0px;
font-family: "Alfa Slab One", serif;
font-weight: 400;
font-style: normal;
}
.jeneveux h1{
font-family: 'PoetsenOne';
font-weight: bold;
}

.legende{
position:relative;
margin-bottom: 20px;
font-family: "Alfa Slab One", serif;
font-weight: 400;
font-style: normal;
}
.legende h1{
font-family: 'PoetsenOne';
}

.ensembleSlide{
margin-top: 50px;
}

/** Empêcher les images des extrémités de bouger */
.fixed-image {
height: 400px;
width: auto;
position: absolute;
top: 50%;
transform: translateY(-50%);
z-index: 10;
}

/*osition des images*/
img.cover, img.back {
position: relative;
top: -20px;
}

#bookCarouselMobile{
display: none;
}

/** Ajustement du carrousel */
#bookCarouselMobile {
max-width: 400px; /* Largeur du carousel */
overflow: hidden;
}

.carousel-inner img#page2{
object-fit: cover;
height: 573px;
position: relative;
top: -54px;
}
.fleches{
display: flex;
flex-direction: row;
position: relative;
top: 10px;
width: 100%;
z-index: 100;
}
.flechesMobile {
display: none;
}

/* Boutons de navigation */
.boutonGaucheMobile, 
.boutonDroitMobile {
position: absolute;
top: 100%;
transform: translateY(-50%);
width:50%;
z-index: 100;
}
.boutonGaucheMobile {
left: 50px; /* Ajuster selon le design */
}

.boutonDroitMobile {
right: 50px; /* Ajuster selon le design */
}
.carousel-control-next, .carousel-control-prev {
position: inherit;
width: 30%;
}

textarea.form-control{
height: 180px;
}

.contactForm{
min-height: 520px;
}
.contactContaint{
display: flex;
height: 80vh;
align-items: center;
justify-content: center;
gap: 1px; /* Espace entre les éléments */
position: relative;
}
.contact-image {
width: 100px; /* Taille des images */
height: auto;
position: relative;
top: 167px;
}

.castor {
position: absolute;
top: 341px;
left: -40px;
transform: translateY(-50%);
}.castor::before{
content: "";
display: inline-block;
width: 250px;
height: 300px;
background-image: url('/images/Zoonova_img/figures/castor.png');
background-size: contain;
background-repeat: no-repeat;
background-position: center;
}

.flamant{
position: absolute;
top: 300px;
right: 1px;
transform: translateY(-50%);
}
.flamant::after {
content: "";
display: inline-block;
width: 250px;
height: 350px;
background-image: url('/images/Zoonova_img/figures/Flamant.png'); 
background-size: contain;
background-repeat: no-repeat;
background-position: center;
}

#buttonsContainer{
position: relative;
margin-bottom: 50px;
}

footer#footer {
width:100vw;
bottom:0px;
margin-top: 100px;
background-color: #FDEB97;
}
.footer{
border-top: 2px solid grey;
letter-spacing: 1.5px;
}
.footer-menu h5.nacreala{
font-size:1.1rem;
}

.logo.bas{
width: 100%;
position: relative;
top: 9px;
left:6px;
}.logo.bas img{
width: 37%;
}
.copyZoo {
font-size: 1.2rem;
position: relative;
left: 5px;
}

.footer h5{
width: 100%;
color: black;
font-size: 1.1rem;
z-index: 100;
}
.footer h5:hover{
color: rgba(21, 78, 213, 0.95);
}
.instaFooter{
width: 100%;
position: relative;
top: 16px;
}
.instaFooter h6:hover{
color: rgba(21, 78, 213, 0.95);
}
h6.col-8 {
width: 48%;
position: relative;
left: 22%;
text-align: left;
}
.instaFooter img{
width: 11%;
position: relative;
top: 11px;
padding: 0px;
}

a h5.conceptionContent{
position: relative;
margin-top: 27px;
font-size: 1.1rem;
left: -2px;
}
h5.conceptionContent:hover{
color: rgba(21, 78, 213, 0.95);
}

.troisImgExt {
width: auto;
position: relative;
top: 56px;
}

.troisImg {
width: 46%;
--bs-gutter-x: 1rem;
}
img.visa{
width: 100%;
position: relative;

}
img.master{
width: 100%;
position: relative;

}
img.amex{
width: 100%;
position: relative;
}

.div.col.text-center{
padding-right: 0px !important;
}
.troisImg img{
object-fit: cover;
}

.payContainer h1{
margin:0px auto 30px auto;
}

h1.mentionsLegales{
position: relative;
top: -20px;
}
.contentMention p{
text-align: justify;
}
h1.politique{
position: relative;
top: -20px;
}
.contentPolitique p{
text-align: justify;
}
#form_submit {
width: 100%;
}

.cadreNacrealeImage img{
width: 50%;
height: auto;
}
.textNacreale h5{
text-align: justify;
}

.payContainer{
  margin-top: 50px;
}
.totalShippingCheckout{
  color:red;
}

/********** LOGIN **************/
.col-md-3.formExt{
height: 570px;
}


/********** RESPONSIVE **************/


/******************************* 1400px ******************************/
/**************************************************************
****************************************************************/

@media screen and (max-width: 1400px) {
.alert-success{
position: absolute;
width: 95%;
left: 2%;
top: 40%;
text-align: center;
font-size: 1.5rem;
z-index: 999;
}

.main-logo{
width: 250px;
position: relative;
left: -10px;
z-index: 201;
}
.col-md-2{
width: inherit;
}

.main-logo.bas img{
width: 70%;
position: relative;
top: 8px;
margin-left: 9%;
}

.hamburger-container{
width: 113px;
position: absolute;
right: 19px;
z-index: 500;
}
.hamburger-menu{
position: relative;
left: 0px;
}

.hamburger-image{
width: 30px;
}

.menu ul {
width: auto;
position: relative;
top: 0px;
padding-left: 10px;
font-size: 20px;
}
.menu.active ul li a{
position: relative;
margin-top: 5%;
right: inherit;
padding: 2px;
border: none;
}

.menu.active{
width: 100%;
height: 564px;
z-index: 200;
}

.menu ul li a{
padding: 0px;
position: relative;
margin-top: 2px;
border: none;
}
.menu ul li{
padding: inherit;
}

.d-flex{
padding: 0px;
}
.videoExt {
flex: 0 0 auto;
width: 20.333333%;
}

.textIntro{
display: none;
}
.row.m-0.px-3.mt-4.mb-4.text-introExt{
padding: unset !important;
}
.row h1.text-intro {
width: 100%;
position: relative;
margin-top: 20px;
padding: unset;
margin-right: 0px;
font-size: 1.4rem;
}

.jeneveux, .legende{
position: relative;
font-size: 2rem;
}

.imagesExterieures_droite {
position:absolute;
top:199px;
width:220px;
height: 250px;
left:222px;
}
.imagesExterieures_gauche {
position:relative;
top:0px;
left:-20px;
width:220px;
height: 250px;
}

/************** IMAGE POPUP ******************/
#imagePopup {
position: fixed;
top: 0;
left: 0;
width: 100%;
height: 100%;
z-index: 1050;
}

.popup-overlay {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
background: rgba(0, 0, 0, 0.75);
}

.popup-content {
position: relative;
top: 43%;
left: 50%;
transform: translate(-50%, -50%);
max-width:102%;
max-height: 90%;
z-index: 1060;
}

.popup-content img {
width: 100%;
height: auto;
border-radius: 10px;
}

.close-popup {
position: absolute;
top: -10px;
right: 0px;
background: #fff;
color: #000;
font-size: 28px;
font-weight: bold;
padding: 0 22px;
border-radius: 50%;
cursor: pointer;
z-index: 1061;
box-shadow: 0 0 10px #000;
}
/*****************************************/

.slideRowUn{
display: none;
}
.slideDeux{
display: block;
}

.cadreCarousels{
height: 100%;
}

/** Ajustement du carrousel */
#bookCarouselMobile {
max-width: 500px; /* Largeur du carousel */
margin-top: 260px;
overflow: hidden;
}

/** Styles des images du carrousel */
.carousel-inner img {
width: 120%;
height: 500px;
object-fit: cover;
}

.single-slide-image {
display: block;
margin: 0 auto;
}

.carousel-control-next {
display: block;
}
.carousel-control-prev {
display: block;
}

img.cover, img.back {
top: 0px;
}
img.cover{
position: relative;
top: 0px;
left: 0px;
width: 300px;
height: 495px;
}
img.back{
  position: relative;
top: 0px;
left: 0px;
width: 300px;
height: 495px;
}

/* Slider image en mobile */

.single-slide-image {
width: 100%;
max-height: 4520px;
object-fit: contain;
padding: 10px;
}

.contentSlides{
position: relative;
top: 40px;
margin: auto 0px;
}

#bookCarousel {
margin: 0 auto;
width: 100%;
margin-top: 0px;
left: 0;
}

.carousel-innerMobile {
padding: 0;
}

.row.m-0.flechesMobile {
display: flex;
position: relative;
width: 100%;
top: -13px;
justify-content: space-around;
}

.flecheGaucheMobile,
.flecheDroiteMobile {
position: relative;
width: 40px;
}

.carousel-control-prevMobile,
.carousel-control-nextMobile {
top: 45%;
width: auto;
background-color: unset;
}

.formulaire h5{
font-size: 0.6rem;
}

.panier2, .instagramExt {
width: 40% !important;
text-align: center;
position: relative;
left: -90px;
column-gap: Opx;
}
.panier2{
left: 7%;
}
.instagram{
position: relative;
top: -20px;
}
/******************* VIDEOS *********************/
.textIntroExt {
padding-bottom: unset;
}
.compoVideo {
width: 100%;
--bs-gutter-y: 3%;
}
.col-lg-3 {
flex: 0 0 auto;
width: 25%;
}
.video-wrapper {
height: 100%;
position: relative;
display: inline-block;
}

.loupe_1 {
position: absolute;
left: 50px; /* décalé vers la gauche */
top: 82%;
transform: translateY(-50%);
}
.panier_1 {
position: absolute;
right: 50px; /* décalé vers la droite */
top: 82%;
transform: translateY(-50%);
}

.titreVideo{
font-size: 1.4rem;
}

.fixed-image {
height: 400px;
width: auto;
position: absolute;
top: 50%;
transform: translateY(-50%);
z-index: 10;
}

/* Position des images */
.imagesExterieures_gaucheMobile {
left: 0px;
top: 205px;
width: 50%;
height: 230px;
object-fit: cover;
}

.imagesExterieures_droiteMobile {
margin-right: 97px;
top: 205px;
left:49%;
width: 50%;
height: 230px;
object-fit: cover;
}

h6.col-8 {
width: 70%;
left: 8%;
}

/* Supprime border-end et ajoute border-bottom en mode colonne */
.short-border {
position: relative;
border-right: block !important;
padding-bottom: 15px;
}

/* Retirer la bordure du dernier élément pour éviter une ligne en trop */
.short-border:last-child {
border-bottom: none;
}

.shorts{
width: auto;
margin-right: 0px;
}
#footer{
bottom:0px; 
}

#footer .footer h5 {
padding-right: 0px;
}
.footerInt{
display: flex;
justify-content: center;
}
.footer .row {
flex-direction: row;
text-align: center;
}
.footer h5 {
font-size: 1rem;
}
.footer-menu h5 {
font-size: 1rem;
}

.copyZooExt{
position: relative;
top: 0px; 
width: 100%;
}
.logo.bas {
width: 100%;
position: relative;
top: 10px;
}

a h5.conceptionContent{
margin-top: 30px;
left: 0px;
font-size: 1rem;
}

.row.align-content-center.instaFooter{
flex-direction: unset;
position: relative;
top: 20px;
}
.row.align-content-center.instaFooter h6{
width: 75%;
text-align: left;
}
.row.align-content-center.instaFooter img{
width: 18%;
}

h1.mentionsLegales {
top: -12px;
}
h1.politique {
top: -12px;
}

.container.contactContaint {
display:unset
}

.castor::before {
width: 174px;
height: 300px;
}
.castor {
position: absolute;
top: 730px;
left:500px;
transform: translateY(-50%);
}
.flamant::after {
width: 174px;
height: 273px;
}
.flamant {
position: relative;
top: 96px;
margin-left: 737px;
transform: translateY(-50%);
}

.contactForm{
width: 60%;
height: auto;
justify-self: center;
padding: 15px;
margin-left: auto;
margin-right: auto;
}
#footer.footer{
bottom: 0px;
}

.contactForm .col-10{
width: 100%;
}
.contactForm button{
font-size: 1.3rem;
}

/****************** PANIER ****************/

/* ------------- display block mobile -----------*/
.prixUnitaireMobile{
display: block;
white-space: nowrap;         /* Empêche le retour à la ligne */
min-width: 70px;             /* Largeur minimale pour grands prix */
display: inline-block;       /* Nécessaire pour min-width */
text-align: right; 
}
.nombreUnitMobile{
display: block;
white-space: nowrap;         /* Empêche le retour à la ligne */
min-width: 70px;             /* Largeur minimale pour grands prix */
display: inline-block;       /* Nécessaire pour min-width */
text-align: right; 
}

.sousTotalMobile{
display: block;
}
.sousTNombreMobile{
display: block;
}

.cacheMobile{
display: none;
border: none;
}
/* ----------------------- -------------------------*/

p.panierVide {
width: 100%;
position: relative;
top: 150px;
color: white;
}

.choixZone{
font-size: 30px;
}
#shipping_zone {
font-size: 30px;
}
tr.titresTable th{
display: none;
}
.table thead  {
display: flex;
width: 100%;
}
.table tbody tr {
display: block;
width: 100%;
border: 1px solid #ccc;
border-radius: 8px;
padding: 1rem;
background-color: #f9f9f9;
}

.table tbody td {
display: flex;
justify-content: space-between;
align-items: center;
padding: 0.3rem 0;
font-size: 2rem;
}

.table tbody td::before {
content: attr(data-label);
font-weight: bold;
flex: 1;
}

.shipping-row {
display: flex;
justify-content: space-between;
width: 100%;
}

.bookTitle{
width: 100%;
}
.table tbody td img {
width: 11%;
}

.container.contentCartExt {
height: 30%;
padding: 1rem;
}

.sousTQ_TXT {
display: block;
font-size: 2rem;
}
.sousTF {
display: block;
font-size: 2rem;
}
.prixTh{
font-size: 2rem;
}
.prixTh_NB{
font-size: 2rem;
}
table.table {
width: 100%;
font-size: 12px;
margin: 0px;
padding: 0px;
display: block;
}

.prixUnitaireMobile{
position: relative;
left:0px;
}
.sousTotalMobile{
position: relative;
left:0px;
}

.sousTQ_TP{
position: relative;
left: 0%;
font-size: 2rem;
}
.sousTQ_NB {
position: relative;
left: 0px;
}
.shippingCostNb{
position: relative;
left: 0%;
}
.prixTh_NB{
position: relative;
left: 0%;
}

.sousNB{
position: relative;
left: -2%;
}

.prixUnitaire-row{
display: flex;
width: 100%;
justify-content: space-between;
align-items: center;
gap: 1rem;
}
.sousTotal-row{
display: flex;
width: 100%;
align-items: center;
gap: 1rem;
justify-content: space-between;
}
.sousTotalQuantite-row{
display: flex;
width: 100%;
justify-content: space-between;
}
.prixTotal-row{
display: flex;
width: 100%;
justify-content: space-between;
}
.expeditions-row{
display: flex;
width: 100%;
justify-content: space-between;
left: 0px;
}

.shipTest{
justify-items: right;
text-align: right;
}

.shippingCostNb{
position: relative;
font-size: 29px;
left: 0px;
}
.totalShipping{
position: relative;
font-size: 29px;
left: 70%;
}
th.sousTQ_TP{
position: relative;
width: 14px;
}
th.sousTvide{
position: relative;
width: 14px;
}

.expeditionInt{  
height: auto;
left: 0px;
color: black;
background-color: #cacacac7;
}
.expedition-title h5 {
font-size: 31px;
}

p.textInt {
width: 368px;
}
.expedition-text td p {
width: 100%;
position: relative;
left: 0px;
font-size: 19px;
line-height: 1.4;
}

.France_metropolitaine,
.Lettre_internationale {
max-width: 100%;
height: auto;
}

#buttonsContainer {
flex-direction: column;
align-items: center;
row-gap: 20px;
}

#buttonsContainer a.btn {
width: 100%;
height: auto;
font-size: 35px;
}

.table th, .table td {
white-space: normal;
font-size: 1.6rem;
}

.btn-sm {
font-size: 1.5rem;
}

input[type="number"] {
width: 100% !important;
max-width: 80px;
font-size: 25px;
position: relative;
left: -188%;
}

form.d-inline {
display: flex;
gap: 5px;
align-items: center;
}

#buttonsContainer {
width: 90%;
margin-left: auto;
margin-right: auto;
margin-top: 50px;
}


/*  PAIEMMENT SECURISE */
.payContainer {
    width: 70%;
}
.paySecurForm {
display: block;
justify-content: center;
}

.paySecurForm form{
width: 212%;
}
.paySecurForm button{
width: 100%;
}

#form_numeroVoie{
  max-width: 100%;
    left: 0px;
    font-size: 1rem;
}

.contentPolitique p, .contentMention p{
margin-bottom: unset;
}
.contentPolitique,.contentMention{
margin-bottom: 50px;
}
}






/******************************* 1280px ******************************/

/**************************************************************
****************************************************************/

@media screen and (max-width: 1280px) {
.alert-success{
position: absolute;
width: 95%;
left: 2%;
top: 40%;
text-align: center;
font-size: 1.5rem;
z-index: 999;
}

.main-logo{
width: 250px;
position: relative;
left: -10px;
z-index: 201;
}
.col-md-2{
width: inherit;
}

.main-logo.bas img{
width: 70%;
position: relative;
top: 8px;
margin-left: 9%;
}

.hamburger-container{
width: 113px;
position: absolute;
right: 19px;
z-index: 500;
}
.hamburger-menu{
position: relative;
left: 0px;
}

.hamburger-image{
width: 30px;
}

.menu ul {
width: auto;
position: relative;
top: 0px;
padding-left: 10px;
font-size: 20px;
}
.menu.active ul li a{
position: relative;
margin-top: 10%;
right: inherit;
padding: 2px;
border: none;
}

.menu.active{
width: 100%;
height: 765px;
z-index: 200;
}

.menu ul li a{
padding: 0px;
position: relative;
margin-top: 2px;
border: none;
}

.jeneveux, .legende{
position: relative;
font-size: 2rem;
}

.imagesExterieures_droite {
position:absolute;
top:199px;
width:220px;
height: 250px;
left:222px;
}
.imagesExterieures_gauche {
position:relative;
top:0px;
left:-20px;
width:220px;
height: 250px;
}

/************** IMAGE POPUP ******************/
#imagePopup {
position: fixed;
top: 0;
left: 0;
width: 100%;
height: 100%;
z-index: 1050;
}

.popup-overlay {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
background: rgba(0, 0, 0, 0.75);
}

.popup-content {
position: relative;
top: 43%;
left: 50%;
transform: translate(-50%, -50%);
max-width:102%;
max-height: 90%;
z-index: 1060;
}

.popup-content img {
width: 100%;
height: auto;
border-radius: 10px;
}

.close-popup {
position: absolute;
top: -10px;
right: 0px;
background: #fff;
color: #000;
font-size: 28px;
font-weight: bold;
padding: 0 22px;
border-radius: 50%;
cursor: pointer;
z-index: 1061;
box-shadow: 0 0 10px #000;
}
/*****************************************/
.cadreCarousels {
    flex-wrap: wrap;
  }
.slideRowUn{
display: none;
}
.slideDeux{
display: block;
}

/** Ajustement du carrousel */
#bookCarouselMobile {
max-width: 500px; /* Largeur du carousel */
margin-top: 260px;
overflow: hidden;
}

/** Styles des images du carrousel */
.carousel-inner img {
width: 120%;
height: 500px;
object-fit: cover;
}

.single-slide-image {
display: block;
margin: 0 auto;
}

.carousel-control-next {
display: block;
}
.carousel-control-prev {
display: block;
}

img.cover{
position: absolute;
  top: 150px;
left: 820px;
width: auto;
height: 371px;
}
img.back{
position: absolute;
  top: 150px;
left: 101px;
width: auto;
height:371px;
}


/* Slider image en mobile */
.single-slide-image {
width: 100%;
max-height: 4520px;
object-fit: contain;
padding: 10px;
}

.contentSlides{
position: relative;
top: 40px;
margin: auto 0px;
}

#bookCarousel {
width: 100%;
margin-top: 400px;
left: 0;
}

.carousel-innerMobile {
padding: 0;
}

.row.m-0.flechesMobile {
display: flex;
position: relative;
width: 100%;
top: -13px;
justify-content: space-around;
}

.flecheGaucheMobile,
.flecheDroiteMobile {
position: relative;
width: 40px;
}

.carousel-control-prevMobile,
.carousel-control-nextMobile {
top: 45%;
width: auto;
background-color: unset;
}

.panier2, .instagramExt {
width: 40% !important;
text-align: center;
position: relative;
left: -90px;
column-gap: Opx;
}
.panier2{
left: 7%;
}
.instagram{
position: relative;
top: -20px;
}

/******************** VIDEOS ***********************/
.videoExt {
position: relative;
left: 0px;
width: 25%;
}

.fixed-image {
height: 400px;
width: auto;
position: absolute;
top: 50%;
transform: translateY(-50%);
z-index: 10;
}

/* Position des images */
.imagesExterieures_gaucheMobile {
left: 0px;
top: 205px;
width: 50%;
height: 230px;
object-fit: cover;
}

.imagesExterieures_droiteMobile {
margin-right: 97px;
top: 205px;
left:49%;
width: 50%;
height: 230px;
object-fit: cover;
}

h6.col-8 {
width: 70%;
left: 8%;
}

/* Supprime border-end et ajoute border-bottom en mode colonne */
.short-border {
position: relative;
border-right: block !important;
padding-bottom: 15px;
}

/* Retirer la bordure du dernier élément pour éviter une ligne en trop */
.short-border:last-child {
border-bottom: none;
}

.shorts{
width: auto;
margin-right: 0px;
}
#footer{
bottom:0px; 
}

#footer .footer h5 {
padding-right: 0px;
}
.footerInt{
display: flex;
justify-content: center;
}
.footer .row {
flex-direction: row;
text-align: center;
}
.footer h5 {
font-size: 1rem;
}
.footer-menu h5 {
font-size: 1rem;
}

.copyZooExt{
position: relative;
top: 0px; 
width: 100%;
}
.logo.bas {
width: 100%;
position: relative;
top: 10px;
}

a h5.conceptionContent{
margin-top: 30px;
left: 0px;
font-size: 1rem;
}

.row.align-content-center.instaFooter{
flex-direction: unset;
position: relative;
top: 20px;
}
.row.align-content-center.instaFooter h6{
width: 75%;
text-align: left;
}
.row.align-content-center.instaFooter img{
width: 18%;
}

.contentPolitique p, .contentMention p{
margin-bottom: unset;
}
.contentPolitique,.contentMention{
margin-bottom: 50px;
}
h1.mentionsLegales {
top: -12px;
}
h1.politique {
top: -12px;
}

.container.contactContaint {
display:unset
}

.castor::before {
width: 174px;
height: 300px;
}
.castor {
position: absolute;
top: 730px;
left:460px;
transform: translateY(-50%);
}
.flamant::after {
width: 174px;
height: 273px;
}
.flamant {
position: relative;
top: 174px;
margin-left: 657px;
transform: translateY(-50%);
}

.contactForm{
width: 60%;
justify-self: center;
padding: 15px;
}

.contactForm .col-10{
width: 100%;
}
.contactForm button{
font-size: 1.3rem;
}

#buttonsContainer button{
min-width: 100%;
}

/******************** PANIER *******************/

.prixUnitaireMobile{
position: relative;
left:0px;
}
.sousTotalMobile{
position: relative;
left:0px;
}

p.panierVide {
width: 100%;
position: relative;
top: 150px;
color: white;
}

.table th, .table td {
white-space: normal;
font-size: 2rem;
}
.table thead  {
display: flex;
width: 100%;
}

.table tbody td {
display: flex;
justify-content: space-between;
align-items: center;
padding: 0.3rem 0;
font-size: 2rem;
}

.table tbody td::before {
content: attr(data-label);
font-weight: bold;
flex: 1;
}

.border.border-1.text-center.expedition-title {
width: 50%;
}
.container.contentCartExt {
height: 30%;
padding: 1rem;
}

tfoot {
width: 50%;
}

input[type="number"] {
width: 100% !important;
max-width: 80px;
font-size: 26px;
position: relative;
left: -138%;
}

.btn-sm{
font-size: 1.5rem;
}

.choixZone{
position: relative;
width: 100%;
font-size: 25px;
}

.titresTable {
display: none;
justify-content: center;
position: relative;
left: -26px;
}
tr.titresTable th {
font-size: 18px;
}

#shipping_zone {
width: 100%;
position: relative;
left: -10px;
font-size: 20px;
}

.table th.sousTQ_TXT{
font-size: 2rem;
}
.table th.sousTQ_NB{
font-size: 29px;
}
.table th.sousTQ_TP{
font-size: 29px;
left: 0px;
}
.table th.sousTF{
font-size:  29px;
}
.table th.prixTh{
font-size:  29px;
}

.totalShipping{
position: relative;
left: 64%;
}

.expeditionInt{  
height: auto;
left: 0px;
color: black;
background-color: #cacacac7;
}
.expedition-title h5 {
font-size: 31px;
}

p.textInt {
width: 368px;
}
.expedition-text td p {
width: 101%;
position: relative;
left: -6px;
font-size: 18px;
line-height: 1.4;
}

.France_metropolitaine,
.Lettre_internationale {
max-width: 100%;
height: auto;
}

/****************** FIN PANIER ****************/

form.d-inline {
display: flex;
gap: 5px;
align-items: center;
}

/*  PAIEMMENT SECURISE */
.paySecurForm {
display: block;
justify-content: center;
}

.paySecurForm form{
width: 212%;
}
.paySecurForm button{
width: 100%;
}

}

/******************************* 1200px ******************************/

/**************************************************************
****************************************************************/

@media screen and (max-width: 1200px) {
.alert-success{
position: absolute;
width: 95%;
left: 2%;
top: 40%;
text-align: center;
font-size: 1.5rem;
z-index: 999;
}

.main-logo{
width: 250px;
position: relative;
left: -10px;
z-index: 201;
}
.col-md-2{
width: inherit;
}

.main-logo.bas img{
width: 70%;
position: relative;
top: 8px;
margin-left: 9%;
}

.hamburger-container{
width: 113px;
position: absolute;
right: 19px;
z-index: 500;
}
.hamburger-menu{
position: relative;
left: 0px;
}

.hamburger-image{
width: 30px;
}

.menu ul {
width: auto;
position: relative;
top: 50px;
padding-left: 10px;
}
.menu.active ul li a{
position: relative;
margin-top: 7%;
right: inherit;
padding: 2px;
border: none;
}

.menu.active{
width: 100%;
height: 765px;
z-index: 200;
}

.menu ul li a{
padding: 0px;
position: relative;
margin-top: 2px;
border: none;
}
/****************** VIDEOS *+*************************/

.textIntroMobile h1{
font-size: 1.32rem;
}

.jeneveux, .legende{
position: relative;
font-size: 2rem;
}

.imagesExterieures_droite {
position:absolute;
top:199px;
width:220px;
height: 250px;
left:222px;
}
.imagesExterieures_gauche {
position:relative;
top:0px;
left:-20px;
width:220px;
height: 250px;
}

/************** IMAGE POPUP ******************/
#imagePopup {
position: fixed;
top: 0;
left: 0;
width: 100%;
height: 100%;
z-index: 1050;
}

.popup-overlay {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
background: rgba(0, 0, 0, 0.75);
}

.popup-content {
position: relative;
top: 43%;
left: 50%;
transform: translate(-50%, -50%);
max-width:102%;
max-height: 90%;
z-index: 1060;
}

.popup-content img {
width: 100%;
height: auto;
border-radius: 10px;
}

.close-popup {
position: absolute;
top: -10px;
right: 0px;
background: #fff;
color: #000;
font-size: 28px;
font-weight: bold;
padding: 0 22px;
border-radius: 50%;
cursor: pointer;
z-index: 1061;
box-shadow: 0 0 10px #000;
}
/*****************************************/

/** Styles des images du carrousel */
.carousel-inner img {
width: 120%;
height: 500px;
object-fit: cover;
}

.single-slide-image {
display: block;
margin: 0 auto;
}

.carousel-control-next {
display: block;
}
.carousel-control-prev {
display: block;
}

img.cover, img.back {
top: 150px;
}
img.cover{
left: 680px;
}

/* Slider image en mobile */
.single-slide-image {
width: 100%;
max-height: 4520px;
object-fit: contain;
padding: 10px;
}

.contentSlides{
position: relative;
top: 40px;
margin: auto 0px;
}

#bookCarousel {
top: 30px;
}

.carousel-innerMobile {
padding: 0;
}

.row.m-0.flechesMobile {
display: flex;
position: relative;
width: 100%;
top: -13px;
justify-content: space-around;
}

.flecheGaucheMobile,
.flecheDroiteMobile {
position: relative;
width: 40px;
}

.carousel-control-prevMobile,
.carousel-control-nextMobile {
top: 45%;
width: auto;
background-color: unset;
}

.panier2, .instagramExt {
width: 40% !important;
text-align: center;
position: relative;
left: -90px;
}
.panier2{
left: 7%;
}
.instagram{
position: relative;
top: -20px;
}

.fixed-image {
height: 400px;
width: auto;
position: absolute;
top: 50%;
transform: translateY(-50%);
z-index: 10;
}

/* Position des images */
.imagesExterieures_gaucheMobile {
left: 0px;
top: 205px;
width: 50%;
height: 230px;
object-fit: cover;
}

.imagesExterieures_droiteMobile {
margin-right: 97px;
top: 205px;
left:49%;
width: 50%;
height: 230px;
object-fit: cover;
}

h6.col-8 {
width: 70%;
left: 8%;
}

/* Supprime border-end et ajoute border-bottom en mode colonne */
.short-border {
position: relative;
border-right: block !important;
padding-bottom: 15px;
}

/* Retirer la bordure du dernier élément pour éviter une ligne en trop */
.short-border:last-child {
border-bottom: none;
}

.shorts{
width: auto;
margin-right: 0px;
}
#footer{
bottom:0px; 
}

#footer .footer h5 {
padding-right: 0px;
}
.footerInt{
display: flex;
justify-content: center;
}
.footer .row {
flex-direction: row;
text-align: center;
}
.footer h5 {
font-size: 1rem;
}
.footer-menu h5 {
font-size: 1rem;
}

.copyZooExt{
position: relative;
top: 0px; 
width: 100%;
}
.logo.bas {
width: 100%;
position: relative;
top: 0px;
}

a h5.conceptionContent{
margin-top: 30px;
left: -5px;
font-size: 1rem;
}

.instaFooter {
width: 100%;
position: relative;
top: 0px;
}
.row.align-content-center.instaFooter{
flex-direction: unset;
position: relative;
top: 20px;
}
.row.align-content-center.instaFooter h6{
width: 75%;
text-align: left;
}
.row.align-content-center.instaFooter img{
width: 18%;
}

h1.mentionsLegales {
top: -12px;
}
h1.politique {
top: -12px;
}
.troisImgExt {
width: auto;
position: relative;
top: 37px;
}

.container.contactContaint {
display:unset
}

.castor::before {
width: 174px;
height: 300px;
}
.castor {
position: absolute;
top: 730px;
left:414px;
transform: translateY(-50%);
}
.flamant::after {
width: 174px;
height: 273px;
}
.flamant {
position: relative;
top: 174px;
margin-left: 603px;
transform: translateY(-50%);
}
.contactForm{
width: 60%;
justify-self: center;
padding: 15px;
}

.contactForm .col-10{
width: 100%;
}
.contactForm button{
font-size: 1.3rem;
}

#buttonsContainer button{
min-width: 100%;
}

/************************* PANIER ***********************/
.prixUnitaireMobile{
position: relative;
left:0px
}
.sousTotalMobile{
position: relative;
left:0px
}

p.panierVide {
width: 100%;
position: relative;
top: 150px;
color: white;
}
.table thead  {
display: flex;
width: 100%;
}

.table tbody td {
display: flex;
justify-content: space-between;
align-items: center;
padding: 0.3rem 0;
font-size: 2rem;
}

.table tbody td::before {
content: attr(data-label);
font-weight: bold;
flex: 1;
}

.border.border-1.text-center.expedition-title {
width: 50%;
}
.container.contentCartExt {
height: 30%;
padding: 1rem;
}

tfoot {
width: 50%;
}

.sousNB {
position: relative;
left: 13%;
}

.expeditionInt{  
height: auto;
left: 0px;
color: black;
background-color: #cacacac7;
}

p.textInt {
width: 368px;
}
.expedition-text td p {
width: 101%;
position: relative;
left: -6px;
font-size: 19px;
line-height: 1.4;
}

.France_metropolitaine,
.Lettre_internationale {
max-width: 100%;
height: auto;
}

.table th, .table td {
white-space: normal;
font-size: 1.2rem;
}

input[type="number"] {
width: 100% !important;
max-width: 80px;
font-size: 25px;
}

form.d-inline {
display: flex;
gap: 5px;
align-items: center;
}


/*  PAIEMMENT SECURISE */
.paySecurForm {
display: block;
justify-content: center;
}

.paySecurForm form{
width: 212%;
}
.paySecurForm button{
width: 100%;
}

.contentPolitique p, .contentMention p{
margin-bottom: unset;
}
.contentPolitique,.contentMention{
margin-bottom: 50px;
}

}







/******************************* 1024px ******************************/

/**************************************************************
****************************************************************/

@media screen and (max-width: 1024px) {
.alert-success{
position: absolute;
width: 95%;
left: 2%;
top: 40%;
text-align: center;
font-size: 1.5rem;
z-index: 999;
}

.main-logo{
width: 250px;
position: relative;
left: -10px;
z-index: 201;
}
.col-md-2{
width: inherit;
}

.main-logo.bas img{
width: 70%;
position: relative;
top: 8px;
margin-left: 9%;
}

.hamburger-container{
width: 113px;
position: absolute;
right: 19px;
z-index: 500;
}
.hamburger-menu{
position: relative;
left: 0px;
}

.hamburger-image{
width: 30px;
}

.menu ul {
width: auto;
position: relative;
top: 50px;
padding-left: 10px;
}
.menu.active ul li a{
position: relative;
margin-top: 4%;
right: inherit;
padding: 2px;
font-size: 30px;
}

.menu.active{
width: 100%;
height: 658px;
z-index: 200;
}

.menu ul li a{
padding: 0px;
position: relative;
margin-top: 2px;
border: none;
}
.menu ul li {
width: 98%;
position: relative;
left: -7px;
padding: inherit;
}

.textIntro{
display: none;
}
.row.m-0.px-3.mt-4.mb-4.text-introExt{
padding: unset !important;
}
.row h1.text-intro {
width: 100%;
position: relative;
margin-top: 20px;
padding: unset;
padding: 14px;
margin-right: 0px;
font-size: 28px;
}

/****************** VIDEOS **********************/



/*----------- FOOTER HEIGHT VH SET ----------------
#footer.footer{
height: 38vh;
}
*/
/*----------- FOOTER HEIGHT VH SET ----------------*/

.d-flex{
padding: 0px;
}
.videoExt {
flex: 0 0 auto;
width: 25.333333%;
}

.textIntroMobile h1{
font-size: 1.32rem;
}

.jeneveux, .legende{
position: relative;
font-size: 2rem;
}

.imagesExterieures_droite {
position:absolute;
top:199px;
width:220px;
height: 250px;
left:222px;
}
.imagesExterieures_gauche {
position:relative;
top:0px;
left:-20px;
width:220px;
height: 250px;
}

/************** IMAGE POPUP ******************/
#imagePopup {
position: fixed;
top: 0;
left: 0;
width: 100%;
height: 100%;
z-index: 1050;
}

.popup-overlay {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
background: rgba(0, 0, 0, 0.75);
}

.popup-content {
position: relative;
top: 43%;
left: 50%;
transform: translate(-50%, -50%);
max-width:102%;
max-height: 90%;
z-index: 1060;
}

.popup-content img {
width: 100%;
height: auto;
border-radius: 10px;
}

.close-popup {
position: absolute;
top: -10px;
right: 0px;
background: #fff;
color: #000;
font-size: 28px;
font-weight: bold;
padding: 0 22px;
border-radius: 50%;
cursor: pointer;
z-index: 1061;
box-shadow: 0 0 10px #000;
}
/*****************************************/

.slideRowUn{
display: none;
}
.slideDeux{
display: block;
}

/** Ajustement du carrousel */
#bookCarouselMobile {
max-width: 500px; /* Largeur du carousel */
margin-top: 260px;
overflow: hidden;
}

/** Styles des images du carrousel */
.carousel-inner img {
width: 120%;
height: 500px;
object-fit: cover;
}

.single-slide-image {
display: block;
margin: 0 auto;
}

.carousel-control-next {
display: block;
}
.carousel-control-prev {
display: block;
}

img.cover, img.back {
top: 130px;
}
img.cover{
left: 499px;
}

/* Slider image en mobile */
.single-slide-image {
width: 100%;
max-height: 4520px;
object-fit: contain;
padding: 10px;
}

.contentSlides{
position: relative;
top: 40px;
margin: auto 0px;
}

.carousel-innerMobile {
padding: 0;
}

.row.m-0.flechesMobile {
display: flex;
position: relative;
width: 100%;
top: -13px;
justify-content: space-around;
}

.flecheGaucheMobile,
.flecheDroiteMobile {
position: relative;
width: 40px;
}

.carousel-control-prevMobile,
.carousel-control-nextMobile {
top: 45%;
width: auto;
background-color: unset;
}

.panier2, .instagramExt {
width: 40% !important;
text-align: center;
position: relative;
left: -90px;
}
.panier2{
left: 7%;
}
.instagram{
position: relative;
top: -20px;
}

.fixed-image {
height: 400px;
width: auto;
position: absolute;
top: 50%;
transform: translateY(-50%);
z-index: 10;
}

/* Position des images */
.imagesExterieures_gaucheMobile {
left: 0px;
top: 205px;
width: 50%;
height: 230px;
object-fit: cover;
}

.imagesExterieures_droiteMobile {
margin-right: 97px;
top: 205px;
left:49%;
width: 50%;
height: 230px;
object-fit: cover;
}

h6.col-8 {
width: 70%;
left: 8%;
}

/* Supprime border-end et ajoute border-bottom en mode colonne */
.short-border {
position: relative;
border-right: block !important;
padding-bottom: 15px;
}

/* Retirer la bordure du dernier élément pour éviter une ligne en trop */
.short-border:last-child {
border-bottom: none;
}

.shorts{
width: auto;
margin-right: 0px;
}
#footer{
bottom:0px; 
}

#footer .footer h5 {
padding-right: 0px;
}
.footerInt{
display: flex;
justify-content: center;
}
.footer .row {
flex-direction: row;
text-align: center;
}
.footer-menu h5.nacreala {
top: 0px;
}
.footer h5 {
font-size: 1rem;
}
.footer-menu h5 {
font-size: 1rem;
}

.copyZooExt{
position: relative;
top: -8px; 
width: 100%;
}
.logo.bas {
width: 100%;
position: relative;
top: 10px;
}
.logo.bas img {
width: 50%;
}

a h5.conceptionContent{
margin-top: 30px;
left: 0px;
font-size: 14px;
}

.instaFooter{
width: 100%;
position: relative;
top: -3px;
}
.instaFooter img{
width: 15%;
}

h5.mentionsLegales {

top: -12px;
}
h5.politique {
top: -12px;
}
.troisImgExt {
width: auto;
position: relative;
top: 37px;
}

.container.contactContaint {
display:unset
}

.castor::before {
width: 174px;
height: 300px;
}
.castor {
position: absolute;
top: 730px;
left:301px;
transform: translateY(-50%);
}
.flamant::after {
width: 174px;
height: 273px;
}
.flamant {
position: relative;
top: 174px;
margin-left: 533px;
transform: translateY(-50%);
}

.contactForm .col-10{
width: 100%;
}
.contactForm button{
font-size: 1.3rem;
}

#buttonsContainer button{
min-width: 100%;
}

/* PANIER */
.prixUnitaireMobile{
position: relative;
left:0px
}
.sousTotalMobile{
position: relative;
left:0px
}

p.panierVide {
width: 100%;
position: relative;
top: 150px;
color: white;
}
.table thead  {
display: flex;
width: 100%;
}

.table tbody td {
display: flex;
justify-content: space-between;
align-items: center;
padding: 0.3rem 0;
font-size: 2rem;
}

.table tbody td::before {
content: attr(data-label);
font-weight: bold;
flex: 1;
}

.border.border-1.text-center.expedition-title {
width: 50%;
}
.container.contentCartExt {
height: 30%;
padding: 1rem;
}

tfoot {
width: 50%;
}

.sousNB {
font-size: 29px;
position: relative;
left: 20%;
}
.shippingCostNb {
font-size: 27px;
}
.totalShipping {
font-size: 27px;
position: relative;
left: 59%;
}

.expeditionInt{  
height: auto;
left: 0px;
color: black;
background-color: #cacacac7;
}
.expedition-title h5 {
font-size: 21px;
}

p.textInt {
width: 368px;
}

.France_metropolitaine,
.Lettre_internationale {
max-width: 100%;
height: auto;
}

.table th, .table td {
white-space: normal;
font-size: 1.2rem;
}

input[type="number"] {
width: 100% !important;
max-width: 80px;
font-size: 23px;
position: relative;
left: -147px;
}

form.d-inline {
display: flex;
gap: 5px;
align-items: center;
}


/*  PAIEMMENT SECURISE */
.paySecurForm {
display: block;
justify-content: center;
}

.paySecurForm form{
width: 212%;
}
.paySecurForm button{
width: 100%;
}

.contentPolitique p, .contentMention p{
margin-bottom: unset;
}
.contentPolitique,.contentMention{
margin-bottom: 50px;
}

}






/******************************* 992px ******************************/

/**************************************************************
****************************************************************/

@media screen and (max-width: 992px) {

.alert-success{
position: absolute;
width: 95%;
left: 2%;
top: 40%;
text-align: center;
font-size: 1.5rem;
z-index: 999;
}

.main-logo{
width: 250px;
position: relative;
left: -10px;
z-index: 201;
}
.col-md-2{
width: inherit;
}

.main-logo.bas img{
width: 70%;
position: relative;
top: 8px;
margin-left: 9%;
}

.hamburger-container{
width: 113px;
position: absolute;
right: 19px;
z-index: 500;
}
.hamburger-menu{
position: relative;
left: 0px;
}

.hamburger-image{
width: 30px;
}

.menu ul {
width: auto;
position: relative;
top: 50px;
padding-left: 10px;
}
.menu.active ul li a{
position: relative;
margin-top: 10%;
right: inherit;
padding: 2px;
border: none;
}

.menu.active{
width: 100%;
height: 770px;
z-index: 200;
}

.menu ul li a{
padding: 0px;
position: relative;
margin-top: 2px;
border: none;
}

.textIntro{
display: none;
}
.row.m-0.px-3.mt-4.mb-4.text-introExt{
padding: unset !important;
}
.row h1.text-intro {
width: 100%;
position: relative;
margin-top: 20px;
padding: unset;
margin-right: 0px;
font-size: 1rem;
}

.textIntroMobile h1{
font-size: 1.32rem;
}

.imagesExterieures_droite {
position:absolute;
top:199px;
width:220px;
height: 250px;
left:222px;
}
.imagesExterieures_gauche {
position:relative;
top:0px;
left:-20px;
width:220px;
height: 250px;
}

/************** IMAGE POPUP ******************/
#imagePopup {
position: fixed;
top: 0;
left: 0;
width: 100%;
height: 100%;
z-index: 1050;
}

.popup-overlay {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
background: rgba(0, 0, 0, 0.75);
}

.popup-content {
position: relative;
top: 43%;
left: 50%;
transform: translate(-50%, -50%);
max-width:102%;
max-height: 90%;
z-index: 1060;
}

.popup-content img {
width: 100%;
height: auto;
border-radius: 10px;
}

.close-popup {
position: absolute;
top: -10px;
right: 0px;
background: #fff;
color: #000;
font-size: 28px;
font-weight: bold;
padding: 0 22px;
border-radius: 50%;
cursor: pointer;
z-index: 1061;
box-shadow: 0 0 10px #000;
}
/*****************************************/

.slideRowUn{
display: none;
}
.slideDeux{
display: block;
}

/** Ajustement du carrousel */
#bookCarouselMobile {
max-width: 500px; /* Largeur du carousel */
margin-top: 260px;
overflow: hidden;
}

/** Styles des images du carrousel */
.carousel-inner img {
width: 120%;
height: 500px;
object-fit: cover;
}

.single-slide-image {
display: block;
margin: 0 auto;
}

.carousel-control-next {
display: block;
}
.carousel-control-prev {
display: block;
}
/* Slider image en mobile */

.single-slide-image {
width: 100%;
max-height: 4520px;
object-fit: contain;
padding: 10px;
}

.contentSlides{
position: relative;
top: 40px;
margin: auto 0px;
}

.carousel-innerMobile {
padding: 0;
}

.row.m-0.flechesMobile {
display: flex;
position: relative;
width: 100%;
top: -13px;
justify-content: space-around;
}

.flecheGaucheMobile,
.flecheDroiteMobile {
position: relative;
width: 40px;
}

.carousel-control-prevMobile,
.carousel-control-nextMobile {
top: 45%;
width: auto;
background-color: unset;
}

.panier2, .instagramExt {
width: 40% !important;
text-align: center;
position: relative;
left: -90px;
column-gap: Opx;
}
.panier2{
left: 7%;
}
.instagram{
position: relative;
top: -20px;
}

/****************** VIDEOS *+*************************/

/*----------- FOOTER HEIGHT VH UNSET ----------------*/
#footer.footer{
height: unset;
}
/*----------- FOOTER HEIGHT VH UNSET ----------------*/
.video-wrapper {
height: 75%;
position: relative;
display: inline-block;
}
.videoExt {
flex: 0 0 auto;
width: 24.333333%;
}
video {
width: 100%;
height: 261px;
}

.fixed-image {
height: 400px;
width: auto;
position: absolute;
top: 50%;
transform: translateY(-50%);
z-index: 10;
}

/* Position des images */
.imagesExterieures_gaucheMobile {
left: 0px;
top: 205px;
width: 50%;
height: 230px;
object-fit: cover;
}

.imagesExterieures_droiteMobile {
margin-right: 97px;
top: 205px;
left:49%;
width: 50%;
height: 230px;
object-fit: cover;
}

h6.col-8 {
width: 70%;
left: 8%;
}

/* Retirer la bordure du dernier élément pour éviter une ligne en trop */
.short-border:last-child {
border-bottom: none;
}

.shorts{
width: 70%;
margin-right: 0px;
}
#footer{
bottom:0px;    
}

#footer .footer h5 {
padding-right: 0px;
}
.footerInt{
display: flex;
justify-content: center;
}
.footer .row {
width: 100%;
flex-direction: row;
text-align: center;
}
.row.align-content-center.instaFooter{
position: relative;
top: 20px;
}
.row.align-content-center.instaFooter h6{
width: 75%;
text-align: left;
}
.instaFooter  {
position: relative;
top: 11px;
padding: 0px;
}
.instaFooter img {
position: relative;
top: 0px;
}

h1.mentionsLegales {
top: -12px;
}
h1.politique {
top: -12px;
}
.troisImgExt {
top: 40px;
left: 12px;
}
.troisImg {
width: 61%;
}

.container.contactContaint {
display:unset
}

.castor::before {
width: 174px;
height: 300px;
}
.castor {
position: absolute;
top: 730px;
left:301px;
transform: translateY(-50%);
}
.flamant::after {
width: 174px;
height: 273px;
}
.flamant {
position: relative;
top: 174px;
margin-left: 533px;
transform: translateY(-50%);
}

.contactForm .col-10{
width: 100%;
}
.contactForm button{
font-size: 1.3rem;
}

#buttonsContainer button{
min-width: 100%;
}

/*********************** PANIER *************************/
.prixUnitaireMobile{
font-size: 2rem;
}
.sousTotalMobile{
font-size: 2rem;
}
.sousTQ_NB {
left: 3%;
}
p.panierVide {
width: 100%;
position: relative;
top: 150px;
color: white;
}
.table thead  {
display: flex;
width: 100%;
}
.table tbody td {
display: flex;
justify-content: space-between;
align-items: center;
padding: 0.3rem 0;
font-size: 1.5rem;
}

.table tbody td::before {
content: attr(data-label);
font-weight: bold;
flex: 1;
}

.border.border-1.text-center.expedition-title {
width: 50%;
}
.container.contentCartExt {
height: 30%;
padding: 1rem;
}

tfoot {
width: 50%;
}
.sousTP {
font-size: 25px;
position: relative;
left: 30%;
}
.table th.sousTF {
font-size: 25px;
}
.table th.sousTQ_TXT {
font-size: 1.7rem;
}

.expeditionInt{  
height: auto;
left: 0px;
color: black;
background-color: #cacacac7;
}
.expedition-title h5 {
font-size: 22px;
}

p.textInt {
width: 368px;
}
.expedition-text td p {
width: 102%;
position: relative;
left: -7px;
font-size: 19px;
line-height: 1.4;
}

.France_metropolitaine,
.Lettre_internationale {
max-width: 100%;
height: auto;
}

#buttonsContainer {
flex-direction: column;
align-items: center;
row-gap: 20px;
}

.table th, .table td {
white-space: normal;
font-size: 1.2rem;
}

input[type="number"] {
width: 100% !important;
max-width: 80px;
}

form.d-inline {
display: flex;
gap: 5px;
align-items: center;
}


/*  PAIEMMENT SECURISE */
.paySecurForm {
display: block;
justify-content: center;
}

.paySecurForm form{
width: 212%;
}
.paySecurForm button{
width: 100%;
}

.contentPolitique p, .contentMention p{
margin-bottom: unset;
}
.contentPolitique,.contentMention{
margin-bottom: 50px;
}

}





/******************************* 915px ******************************/

/**************************************************************
****************************************************************/

@media screen and (max-width: 915px) {
.alert-success{
position: absolute;
width: 95%;
left: 2%;
top: 40%;
text-align: center;
font-size: 1.5rem;
z-index: 999;
}

.main-logo{
width: 250px;
position: relative;
left: -10px;
z-index: 201;
}
.col-md-2{
width: inherit;
}

.main-logo.bas img{
width: 70%;
position: relative;
top: 8px;
margin-left: 9%;
}

.hamburger-container{
width: 113px;
position: absolute;
right: 19px;
z-index: 500;
}
.hamburger-menu{
position: relative;
left: 0px;
}

.hamburger-image{
width: 30px;
}

.menu ul {
width: auto;
position: relative;
top: 50px;
padding-left: 10px;
}
.menu.active ul li a{
position: relative;
margin-top: 5%;
font-size: 32px;
right: inherit;
padding: 2px;
border: none;
}

.menu.active{
width: 100%;
height: 770px;
z-index: 200;
}

.menu ul li a{
padding: 0px;
position: relative;
margin-top: 2px;
border: none;
}

.textIntro{
display: none;
}
.row.m-0.px-3.mt-4.mb-4.text-introExt{
padding: unset !important;
}
.row h1.text-intro {
width: 100%;
position: relative;
margin-top: 20px;
padding: unset;
margin-right: 0px;
}

.textIntroMobile h1{
font-size: 1.32rem;
}

.imagesExterieures_droite {
position:absolute;
top:199px;
width:220px;
height: 250px;
left:222px;
}
.imagesExterieures_gauche {
position:relative;
top:0px;
left:-20px;
width:220px;
height: 250px;
}

/************** IMAGE POPUP ******************/
#imagePopup {
position: fixed;
top: 0;
left: 0;
width: 100%;
height: 100%;
z-index: 1050;
}

.popup-overlay {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
background: rgba(0, 0, 0, 0.75);
}

.popup-content {
position: relative;
top: 43%;
left: 50%;
transform: translate(-50%, -50%);
max-width:102%;
max-height: 90%;
z-index: 1060;
}

.popup-content img {
width: 100%;
height: auto;
border-radius: 10px;
}

.close-popup {
position: absolute;
top: -10px;
right: 0px;
background: #fff;
color: #000;
font-size: 28px;
font-weight: bold;
padding: 0 22px;
border-radius: 50%;
cursor: pointer;
z-index: 1061;
box-shadow: 0 0 10px #000;
}
/*****************************************/

.slideRowUn{
display: none;
}
.slideDeux{
display: block;
}
/** Ajustement du carrousel */
#bookCarouselMobile {
max-width: 500px; /* Largeur du carousel */
margin-top: 260px;
overflow: hidden;
}

/** Styles des images du carrousel */
.carousel-inner img {
width: 120%;
height: 500px;
object-fit: cover;
}

.single-slide-image {
display: block;
margin: 0 auto;
}

.carousel-control-next {
display: block;
}
.carousel-control-prev {
display: block;
}
img.cover{
left: 437px;
}
img.back{
left: 69px;
}


/* Slider image en mobile */
.single-slide-image {
width: 100%;
max-height: 4520px;
object-fit: contain;
padding: 10px;
}

.contentSlides{
position: relative;
top: 40px;
margin: auto 0px;
}

.carousel-innerMobile {
padding: 0;
}

.row.m-0.flechesMobile {
display: flex;
position: relative;
width: 100%;
top: -13px;
justify-content: space-around;
}

.flecheGaucheMobile,
.flecheDroiteMobile {
position: relative;
width: 40px;
}

.carousel-control-prevMobile,
.carousel-control-nextMobile {
top: 45%;
width: auto;
background-color: unset;
}

.panier2, .instagramExt {
width: 40% !important;
text-align: center;
position: relative;
left: -90px;
column-gap: Opx;
}
.panier2{
left: 7%;
}
.instagram{
position: relative;
top: -20px;
}

.compoVideo {
padding-bottom: 20px; 
}
.video-wrapper {
height: 86%;
position: relative;
display: inline-block;
}
.videoExt {
flex: 0 0 auto;
width: 32.333333%;
}
video {
width: 100%;
height: 100%;
}
h3.titreVideo{
top: -47px;
font-size: 1.1rem;
}

.fixed-image {
height: 400px;
width: auto;
position: absolute;
top: 50%;
transform: translateY(-50%);
z-index: 10;
}

/* Position des images */
.imagesExterieures_gaucheMobile {
left: 0px;
top: 205px;
width: 50%;
height: 230px;
object-fit: cover;
}

.imagesExterieures_droiteMobile {
margin-right: 97px;
top: 205px;
left:49%;
width: 50%;
height: 230px;
object-fit: cover;
}

h6.col-8 {
width: 70%;
left: 8%;
}

/* Retirer la bordure du dernier élément pour éviter une ligne en trop */
.short-border:last-child {
border-bottom: none;
}

.shorts{
width: 70%;
margin-right: 0px;
}
#footer{
bottom:0px;    
}

#footer .footer h5 {
padding-right: 0px;
}
.footer-menu h5.nacreala {
font-size: 1rem;
}
.footerInt{
display: flex;
justify-content: center;
}
.footer .row {
flex-direction: row;
text-align: center;
}
.instaFooter {
position: relative;
top: 13px;
}
.row.align-content-center.instaFooter{
flex-direction: unset;
position: relative;
top: 20px;
}
.row.align-content-center.instaFooter h6{
width: 75%;
text-align: left;
}
.row.align-content-center.instaFooter img{
width: 18%;
}

h1.mentionsLegales {
top: -12px;
}
h1.politique {
top: -12px;
}

.container.contactContaint {
display:unset
}

.castor::before {
width: 174px;
height: 300px;
}
.castor {
position: absolute;
top: 730px;
left:277px;
transform: translateY(-50%);
}
.flamant::after {
width: 174px;
height: 273px;
}
.flamant {
position: relative;
top: 174px;
margin-left: 448px;
transform: translateY(-50%);
}

.contactForm .col-10{
width: 100%;
}
.contactForm button{
font-size: 1.3rem;
}

#buttonsContainer button{
min-width: 100%;
}

/* PANIER */
.nombreUnitMobile{
width: 13%;
font-size: 2rem;
}
.sousTNombreMobile{
font-size: 2rem;
}

p.panierVide {
width: 100%;
position: relative;
top: 150px;
color: white;
}
.table thead  {
display: flex;
width: 100%;
}
.table tbody tr {
display: block;
border: 1px solid #ccc;
border-radius: 8px;
padding: 1rem;
background-color: #f9f9f9;
}

.table tbody td {
display: flex;
justify-content: space-between;
align-items: center;
padding: 0.3rem 0;
font-size: 1.5rem;
}

.table tbody td::before {
content: attr(data-label);
font-weight: bold;
flex: 1;
}

.border.border-1.text-center.expedition-title {
width: 50%;
}
.container.contentCartExt {
height: 30%;
padding: 1rem;
}

tfoot {
width: 50%;
}

.table th.sousTF{
font-size: 24px;
}
.table th.sousTQ_TXT {
font-size: 24px;
}
.table th.prixTh {
font-size: 24px;
}
.sousTQ_TP {
position: relative;
left: 0px
}
.sousTP {
font-size: 24px;
position: relative;
left: 11px;
}
.sousNB {
font-size: 24px;
position: relative;
left: 36px;
}
.shippingCostNb {
font-size: 2rem;
position: relative;
left: 0px;
}
.totalShipping {
font-size: 24px;
position: relative;
left: 49px;
}

.expeditionInt{  
height: auto;
left: 0px;
color: black;
background-color: #cacacac7;
}
.expedition-title h5 {
font-size: 20px;
}

p.textInt {
width: 368px;
}
.expedition-text td p {
position: relative;
left: -12px;
font-size: 20px;
line-height: 1.4;
}

.France_metropolitaine,
.Lettre_internationale {
max-width: 100%;
height: auto;
}

.table th, .table td {
white-space: normal;
font-size: 1.2rem;
}

input[type="number"] {
width: 100% !important;
max-width: 80px;
font-size: 1.3rem;;
left: -17%;
}

form.d-inline {
display: flex;
gap: 5px;
align-items: center;
}


/*  PAIEMMENT SECURISE */
.paySecurForm {
display: block;
justify-content: center;
}

.paySecurForm form{
width: 212%;
}
.paySecurForm button{
width: 100%;
}

.contentPolitique p, .contentMention p{
margin-bottom: unset;
}
.contentPolitique,.contentMention{
margin-bottom: 50px;
}
}




/******************************* 853px ******************************/

/**************************************************************
****************************************************************/

@media screen and (max-width: 853px) {
.alert-success{
position: absolute;
width: 95%;
left: 2%;
top: 40%;
text-align: center;
font-size: 1.5rem;
z-index: 999;
}

.main-logo{
width: 250px;
position: relative;
left: -10px;
z-index: 201;
}
.col-md-2{
width: inherit;
}

.main-logo.bas img{
width: 70%;
position: relative;
top: 8px;
margin-left: 9%;
}

.hamburger-container{
width: 113px;
position: absolute;
right: 19px;
z-index: 500;
}
.hamburger-menu{
position: relative;
left: 0px;
}

.hamburger-image{
width: 30px;
}

.menu ul {
width: auto;
position: relative;
top: 50px;
padding-left: 10px;
font-size: 26px;
}
.menu.active ul li a{
position: relative;
margin-top: 4%;
right: inherit;
padding: 2px;
border: none;
}

.menu.active{
width: 100%;
height: 695px;
z-index: 200;
}

.menu ul li a{
padding: 0px;
position: relative;
margin-top: 2px;
border: none;
}

.textIntro{
display: none;
}
.row.m-0.px-3.mt-4.mb-4.text-introExt{
padding: unset !important;
}
.row h1.text-intro {
width: 100%;
position: relative;
margin-top: 20px;
padding: unset;
padding: 7px 0px 7px 0px;
margin-right: 0px;
font-size: 1.5rem;
}

.textIntroMobile h1{
font-size: 1.32rem;
}

.jeneveux, .legende{
position: relative;
font-size: 2rem;
}

.imagesExterieures_droite {
position:absolute;
top:199px;
width:220px;
height: 250px;
left:222px;
}
.imagesExterieures_gauche {
position:relative;
top:0px;
left:-20px;
width:220px;
height: 250px;
}

/************** IMAGE POPUP ******************/
#imagePopup {
position: fixed;
top: 0;
left: 0;
width: 100%;
height: 100%;
z-index: 1050;
}

.popup-overlay {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
background: rgba(0, 0, 0, 0.75);
}

.popup-content {
position: relative;
top: 43%;
left: 50%;
transform: translate(-50%, -50%);
max-width:102%;
max-height: 90%;
z-index: 1060;
}

.popup-content img {
width: 100%;
height: auto;
border-radius: 10px;
}

.close-popup {
position: absolute;
top: -10px;
right: 0px;
background: #fff;
color: #000;
font-size: 28px;
font-weight: bold;
padding: 0 22px;
border-radius: 50%;
cursor: pointer;
z-index: 1061;
box-shadow: 0 0 10px #000;
}
/*****************************************/

.slideRowUn{
display: none;
}
.slideDeux{
display: block;
}

/** Ajustement du carrousel */
#bookCarouselMobile {
max-width: 500px; /* Largeur du carousel */
margin-top: 260px;
overflow: hidden;
}

/** Styles des images du carrousel */
.carousel-inner img {
width: 120%;
height: 500px;
object-fit: cover;
}

.single-slide-image {
display: block;
margin: 0 auto;
}

.carousel-control-next {
display: block;
}
.carousel-control-prev {
display: block;
}

/* Slider image en mobile */

.single-slide-image {
width: 100%;
max-height: 4520px;
object-fit: contain;
padding: 10px;
}

.contentSlides{
position: relative;
top: 40px;
margin: auto 0px;
}

.carousel-innerMobile {
padding: 0;
}

.row.m-0.flechesMobile {
display: flex;
position: relative;
width: 100%;
top: -13px;
justify-content: space-around;
}

.flecheGaucheMobile,
.flecheDroiteMobile {
position: relative;
width: 40px;
}

.carousel-control-prevMobile,
.carousel-control-nextMobile {
top: 45%;
width: auto;
background-color: unset;
}

.panier2, .instagramExt {
width: 40% !important;
text-align: center;
position: relative;
left: -90px;
column-gap: Opx;
}
.panier2{
left: 7%;
}
.instagram{
position: relative;
top: -20px;
}
.videoExt {
flex: 0 0 auto;
width: 32.333333%;
}
.loupe_1 {
position: absolute;
left: 34px;
top: 81%;
transform: translateY(-50%);
}
.panier_1 {
position: absolute;
right: 34px;
top: 81%;
transform: translateY(-50%);
}

.fixed-image {
height: 400px;
width: auto;
position: absolute;
top: 50%;
transform: translateY(-50%);
z-index: 10;
}

/* Position des images */
.imagesExterieures_gaucheMobile {
left: 0px;
top: 205px;
width: 50%;
height: 230px;
object-fit: cover;
}

.imagesExterieures_droiteMobile {
margin-right: 97px;
top: 205px;
left:49%;
width: 50%;
height: 230px;
object-fit: cover;
}

h6.col-8 {
width: 70%;
left: 8%;
}

/* Supprime border-end et ajoute border-bottom en mode colonne */
.short-border {
position: relative;
padding-bottom: 15px;
border: none;
}

.shorts{
width: auto;
margin-right: 0px;
}
#footer{
bottom:0px; 
}
.footer-menu h5.nacreala {
font-size: 0.7rem;
}
#footer .footer h5 {
padding-right: 0px;
}
.footerInt{
display: flex;
justify-content: center;
}
.footer .row {
flex-direction: row;
text-align: center;
}
.footer h5 {
font-size: 0.7rem;
}
.footer-menu h5 {
font-size: 0.7rem;
}

#footer .footer-menu:last-child {
width: 100%;
height: 100%;
position: relative;
left: 0px;
margin-right: 0;
padding: 0px;
margin: 0px;
}

.copyZooExt{
position: relative;
top: 0px; 
width: 100%;
}
.logo.bas {
width: 100%;
position: relative;
top: 10px;
left: 0px;
}
.logo.bas img {
width: 55%;
}

a h5.conceptionContent{
margin-top: 30px;
font-size: 0.7rem;;
}

.row.align-content-center.instaFooter{
flex-direction: unset;
position: relative;
top: 20px;
}
.row.align-content-center.instaFooter h6{
width: 75%;
text-align: left;
}
.row.align-content-center.instaFooter img{
width: 18%;
}

h1.mentionsLegales {
top: -12px;
}
h1.politique {
top: -12px;
}

.container.contactContaint {
display:unset
}

.castor::before {
width: 174px;
height: 300px;
}
.castor {
position: absolute;
top: 730px;
left:277px;
transform: translateY(-50%);
}
.flamant::after {
width: 174px;
height: 273px;
}
.flamant {
position: relative;
top: 174px;
margin-left: 448px;
transform: translateY(-50%);
}

.contactForm .col-10{
width: 100%;
}
.contactForm button{
font-size: 1.3rem;
}

#buttonsContainer button{
min-width: 100%;
}

/* PANIER */
p.panierVide {
width: 100%;
position: relative;
top: 150px;
color: white;
}
.table thead  {
display: flex;
width: 100%;
}

.table tbody td {
display: flex;
justify-content: space-between;
align-items: center;
padding: 0.3rem 0;
font-size: 2rem;
}

.table tbody td::before {
content: attr(data-label);
font-weight: bold;
flex: 1;
}

.border.border-1.text-center.expedition-title {
width: 50%;
}
.container.contentCartExt {
height: 30%;
padding: 1rem;
}

tfoot {
width: 50%;
}

.expeditionInt{  
height: auto;
left: 0px;
color: black;
background-color: #cacacac7;
}
.expedition-title h5 {
font-size: 20px;
}

p.textInt {
width: 368px;
}
.expedition-text td p {
width: 103%;
position: relative;
left: -11px;
font-size: 19px;
line-height: 1.4;
}

.France_metropolitaine,
.Lettre_internationale {
max-width: 100%;
height: auto;
}

.table th, .table td {
white-space: normal;
font-size: 1.2rem;
}

form.d-inline {
display: flex;
gap: 5px;
align-items: center;
}


/*  PAIEMMENT SECURISE */
.paySecurForm {
display: block;
justify-content: center;
}

.paySecurForm form{
width: 212%;
}
.paySecurForm button{
width: 100%;
}

.contentPolitique p, .contentMention p{
margin-bottom: unset;
}
.contentPolitique,.contentMention{
margin-bottom: 50px;
}
}





/******************************* 820px ******************************/

/**************************************************************
****************************************************************/

@media screen and (max-width: 820px) {
.alert-success{
position: absolute;
width: 95%;
left: 2%;
top: 40%;
text-align: center;
font-size: 1.5rem;
z-index: 999;
}
.messageBook {
width: 95%;
position: absolute;
top: 19%;
font-size: 1.5rem;
z-index: 999;
}
.messagePanier {
width: 95%;
position: absolute;
top: 19%;
font-size: 1.5rem;
z-index: 999;
}

.main-logo{
width: 250px;
position: relative;
left: -10px;
z-index: 201;
}
.col-md-2{
width: inherit;
}

.main-logo.bas img{
width: 70%;
position: relative;
top: 8px;
margin-left: 9%;
}

.hamburger-container{
width: 113px;
position: absolute;
right: 19px;
z-index: 500;
}
.hamburger-menu{
position: relative;
left: 0px;
}

.hamburger-image{
width: 30px;
}

.menu ul {
width: auto;
position: relative;
top: 50px;
padding-left: 10px;
font-size: 26px;
}
.menu.active ul li a{
position: relative;
margin-top: 6%;
right: inherit;
padding: 2px;
border: none;
}

.menu.active{
width: 100%;
height: 765px;
z-index: 200;
}

.menu ul li a{
padding: 0px;
position: relative;
margin-top: 2px;
border: none;
}

.textIntro{
display: none;
}
.row.m-0.px-3.mt-4.mb-4.text-introExt{
padding: unset !important;
}
.row h1.text-intro {
width: 100%;
position: relative;
margin-top: 20px;
padding: unset;
padding: 14px;
margin-right: 0px;
font-size: 1.1rem;
}

.textIntroMobile h1{
font-size: 1.32rem;
}

.jeneveux, .legende{
position: relative;
font-size: 2rem;
}

.imagesExterieures_droite {
position:absolute;
top:199px;
width:220px;
height: 250px;
left:222px;
}
.imagesExterieures_gauche {
position:relative;
top:0px;
left:-20px;
width:220px;
height: 250px;
}

#content{
height: 52vh;
}

/************** IMAGE POPUP ******************/
#imagePopup {
position: fixed;
top: 0;
left: 0;
width: 100%;
height: 100%;
z-index: 1050;
}
.popup-overlay {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
background: rgba(0, 0, 0, 0.75);
}
.popup-content {
position: relative;
top: 43%;
left: 50%;
transform: translate(-50%, -50%);
max-width:102%;
max-height: 90%;
z-index: 1060;
}
.popup-content img {
width: 100%;
height: auto;
border-radius: 10px;
}
.close-popup {
position: absolute;
top: -10px;
right: 0px;
background: #fff;
color: #000;
font-size: 28px;
font-weight: bold;
padding: 0 22px;
border-radius: 50%;
cursor: pointer;
z-index: 1061;
box-shadow: 0 0 10px #000;
}
/*****************************************/

.slideRowUn{
display: none;
}
.slideDeux{
display: block;
}

/** Ajustement du carrousel */
#bookCarouselMobile {
max-width: 500px; /* Largeur du carousel */
margin-top: 260px;
overflow: hidden;
}

/** Styles des images du carrousel */
.carousel-inner img {
width: 120%;
height: 500px;
object-fit: cover;
}

.single-slide-image {
display: block;
margin: 0 auto;
}

.carousel-control-next {
display: block;
}
.carousel-control-prev {
display: block;
}

/* Slider image en mobile */
.single-slide-image {
width: 100%;
max-height: 4520px;
object-fit: contain;
padding: 10px;
}

.contentSlides{
position: relative;
top: 40px;
margin: auto 0px;
}

.carousel-innerMobile {
padding: 0;
}

.row.m-0.flechesMobile {
display: flex;
position: relative;
width: 100%;
top: -13px;
justify-content: space-around;
}

.flecheGaucheMobile,
.flecheDroiteMobile {
position: relative;
width: 40px;
}

.carousel-control-prevMobile,
.carousel-control-nextMobile {
top: 45%;
width: auto;
background-color: unset;
}
.panier2, .instagramExt {
width: 40% !important;
text-align: center;
position: relative;
left: -90px;
column-gap: Opx;
}
.panier2{
left: 7%;
}
.instagram{
position: relative;
top: -20px;
}

.container#content {
height: unset;
}

.titreVideo{
top: -31px;
font-size: 1rem;
}

.fixed-image {
height: 400px;
width: auto;
position: absolute;
top: 50%;
transform: translateY(-50%);
z-index: 10;
}

/* Position des images */
.imagesExterieures_gaucheMobile {
left: 0px;
top: 205px;
width: 50%;
height: 230px;
object-fit: cover;
}

.imagesExterieures_droiteMobile {
margin-right: 97px;
top: 205px;
left:49%;
width: 50%;
height: 230px;
object-fit: cover;
}

h6.col-8 {
width: 70%;
left: 8%;
}

/* Supprime border-end et ajoute border-bottom en mode colonne */
.short-border {
position: relative;
padding-bottom: 15px;
border-right: none;
}

.shorts{
width: auto;
margin-right: 0px;
}
#footer{
bottom:0px; 
}

#footer .footer h5 {
padding-right: 0px;
}
.footerInt{
display: flex;
justify-content: center;
}
.footer h5 {
font-size: 0.8rem;
}
.footer-menu h5 {
font-size: 0.8rem;
}

.footer-menu h5.nacreala {
font-size: 0.8rem;
}
a h5.conceptionContent{
margin-top: 30px;
font-size: 0.8rem;
}

#footer .footer-menu:last-child {
width: 100%;
height: 100%;
position: relative;
left: 0px;
padding: 0px;
margin: 0px;
font-size: 0.8rem;
}

.copyZooExt{
position: relative;
top: 0px; 
width: 100%;
}
.logo.bas img {
width: 55%;
}

.row.align-content-center.instaFooter{
flex-direction: unset;
position: relative;
top: 20px;
}
.row.align-content-center.instaFooter h6{
width: 75%;
text-align: left;
}
.row.align-content-center.instaFooter img{
width: 18%;
}

h1.mentionsLegales {
top: -12px;
}
h1.politique {
top: -12px;
}

.container.contactContaint {
display:unset
}

.castor::before {
width: 174px;
height: 300px;
}
.castor {
position: absolute;
top: 730px;
left:210px;
transform: translateY(-50%);
}
.flamant::after {
width: 174px;
height: 273px;
}
.flamant {
position: relative;
top: 174px;
margin-left: 448px;
transform: translateY(-50%);
}

.contactForm .col-10{
width: 100%;
}
.contactForm button{
font-size: 1.3rem;
}

#buttonsContainer button{
min-width: 100%;
}

/* PANIER */
.prixUnitaireMobile{
position: relative;
left:0px
}
.sousTotalMobile{
position: relative;
left:0px
}

p.panierVide {
width: 100%;
position: relative;
top: 150px;
color: white;
}
.table thead  {
display: flex;
width: 100%;
}

.table tbody td {
display: flex;
justify-content: space-between;
align-items: center;
padding: 0.3rem 0;
font-size: 2rem;
}

.table tbody td::before {
content: attr(data-label);
font-weight: bold;
flex: 1;
}

.border.border-1.text-center.expedition-title {
width: 50%;
}
.container.contentCartExt {
height: 30%;
padding: 1rem;
}

tfoot {
width: 50%;
}

.expedition-text td p {
width: 102%;
position: relative;
left: -7px;
font-size: 19px;
line-height: 1.4;
top: -18px;
}
.expeditionInt{  
height: auto;
left: 0px;
color: black;
background-color: #cacacac7;
}
.expedition-title h5 {
font-size: 20px;
}

p.textInt {
width: 368px;
}

.France_metropolitaine,
.Lettre_internationale {
max-width: 100%;
height: auto;
}

.table th, .table td {
white-space: normal;
font-size: 1.2rem;
}

form.d-inline {
display: flex;
gap: 5px;
align-items: center;
}


/*  PAIEMMENT SECURISE */
.paySecurForm {
display: block;
justify-content: center;
}
.paySecurForm form{
width: 212%;
}
.paySecurForm button{
width: 100%;
}

.contentPolitique p, .contentMention p{
margin-bottom: unset;
}
.contentPolitique,.contentMention{
margin-bottom: 50px;
}
}





/******************************* 768px ******************************/

/**************************************************************
****************************************************************/

@media screen and (max-width: 768px) {
.alert-success{
position: absolute;
width: 95%;
left: 2%;
top: 40%;
text-align: center;
font-size: 1.5rem;
z-index: 999;
}
.messageBook {
width: 95%;
position: absolute;
top: 19%;
font-size: 1.5rem;
z-index: 999;
}
.messagePanier {
width: 95%;
position: absolute;
top: 19%;
font-size: 1.5rem;
z-index: 999;
}

.main-logo{
width: 250px;
position: relative;
left: -10px;
z-index: 201;
}
.col-md-2{
width: inherit;
}

.main-logo.bas img{
width: 70%;
position: relative;
top: 8px;
margin-left: 9%;
}

.hamburger-container{
width: 113px;
position: absolute;
right: 19px;
z-index: 500;
}
.hamburger-menu{
position: relative;
left: 0px;
}
.hamburger-image{
width: 30px;
}

.menu ul {
width: auto;
position: relative;
top: 50px;
padding-left: 10px;
}
.menu.active ul li a{
position: relative;
right: inherit;
margin-top: 39px;
border: none;
}
.menu.active{
width: 100%;
height: 751px;
z-index: 200;
}
.menu ul li a{
padding: 0px;
position: relative;
margin-top: 2px;
border: none;
}

.row h1.text-introPc {
font-size: 1rem;
}
.videoExt {
width: 32.33%;
}
.video-wrapper {
height: 62%;
}

.textIntroMobile h1{
font-size: 1.32rem;
}

.jeneveux, .legende{
position: relative;
font-size: 1.6rem;
}

.imagesExterieures_droite {
position:absolute;
top:199px;
width:220px;
height: 250px;
left:222px;
}
.imagesExterieures_gauche {
position:relative;
top:0px;
left:-20px;
width:220px;
height: 250px;
}

/************** IMAGE POPUP ******************/
#imagePopup {
position: fixed;
top: 0;
left: 0;
width: 100%;
height: 100%;
z-index: 1050;
}

.popup-overlay {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
background: rgba(0, 0, 0, 0.75);
}

.popup-content {
position: relative;
top: 43%;
left: 50%;
transform: translate(-50%, -50%);
max-width:102%;
max-height: 90%;
z-index: 1060;
}

.popup-content img {
width: 100%;
height: auto;
border-radius: 10px;
}

.close-popup {
position: absolute;
top: -10px;
right: 0px;
background: #fff;
color: #000;
font-size: 28px;
font-weight: bold;
padding: 0 22px;
border-radius: 50%;
cursor: pointer;
z-index: 1061;
box-shadow: 0 0 10px #000;
}
/*****************************************/
.cadreCarousels{
padding: 0px;
width: 100%;
left: -3px;
position: relative;
}
.slideRowUn{
display: none;
}
.slideDeux{
display: block;
}

/** Ajustement du carrousel */
#bookCarouselMobile {
max-width: 500px; /* Largeur du carousel */
margin-top: 260px;
overflow: hidden;
}

/** Styles des images du carrousel */
.carousel-inner img {
width: 120%;
height: 500px;
object-fit: cover;
}

.single-slide-image {
display: block;
margin: 0 auto;
}

.carousel-control-next {
display: block;
}
.carousel-control-prev {
display: block;
}

img.cover, img.back {
top: 19px;
}
img.back{
left: 27px;
}

/* Slider image en mobile */
.single-slide-image {
width: 100%;
max-height: 4520px;
object-fit: contain;
padding: 10px;
}

.contentSlides{
position: relative;
top: 40px;
margin: auto 0px;
}

.carousel-innerMobile {
padding: 0;
}

.row.m-0.flechesMobile {
display: flex;
position: relative;
width: 100%;
top: -13px;
justify-content: space-around;
}

.flecheGaucheMobile,
.flecheDroiteMobile {
position: relative;
width: 40px;
}

.carousel-control-prevMobile,
.carousel-control-nextMobile {
top: 45%;
width: auto;
background-color: unset;
}
.formulaire {
  padding-bottom: 100px;
}

.panier2, .instagramExt {
width: 40% !important;
text-align: center;
position: relative;
left: -90px;
column-gap: Opx;
}
.panier2{
left: 7%;
}
.instagram{
position: relative;
top: -20px;
}

#content {
height: unset;
}

.loupePanier{
column-gap: 13%;
}
.loupePanier img {
width: 25%;
}

.fixed-image {
height: 400px;
width: auto;
position: absolute;
top: 50%;
transform: translateY(-50%);
z-index: 10;
}

/* Position des images */
.imagesExterieures_gaucheMobile {
left: 0px;
top: 205px;
width: 50%;
height: 230px;
object-fit: cover;
}

.imagesExterieures_droiteMobile {
margin-right: 97px;
top: 205px;
left:49%;
width: 50%;
height: 230px;
object-fit: cover;
}

h6.col-8 {
width: 70%;
left: 8%;
}


/* Retirer la bordure du dernier élément pour éviter une ligne en trop */
#footer .footer-menu:last-child {
border-right: none;
}

.shorts{
width: 70%;
margin-right: 0px;
border: none;
}
#footer.footer {
margin-top: 0px;
}

#footer .footer h5 {
padding-right: 0px;
}
.footerInt{
display: flex;
justify-content: center;
}
.footer .row {
flex-direction: row;
text-align: center;
}
.footer h5 {
font-size: 0.8rem;;
}
.footer-menu h5 {
font-size: 0.8rem;;
}

.instaFooter{
position: relative;
top: 16px;
}
.row.align-content-center.instaFooter{
flex-direction: unset;
position: relative;
top: 16px;
}
.row.align-content-center.instaFooter h6{
width: 75%;
text-align: left;
}
.row.align-content-center.instaFooter img{
width: 18%;
}

h1.mentionsLegales {
top: -12px;
}
h1.politique {
top: -12px;
}

.container.contactContaint {
display:unset
}

.castor::before {
width: 174px;
height: 300px;
}
.castor {
position: absolute;
top: 730px;
left:210px;
transform: translateY(-50%);
}
.flamant::after {
width: 174px;
height: 273px;
}
.flamant {
position: relative;
top: 174px;
margin-left: 403px;
transform: translateY(-50%);
}

.contactForm .col-10{
width: 100%;
}
.contactForm button{
font-size: 1.3rem;
}

#buttonsContainer button{
min-width: 100%;
}

/* PANIER */
.table th.sousTQ_TP {
font-size: 29px;
left: 0px;
}
.prixUnitaireMobile{
position: relative;
left:0px
}
.sousTotalMobile{
position: relative;
left:0px
}

p.panierVide {
width: 100%;
position: relative;
top: 150px;
color: white;
}
.table thead  {
display: flex;
width: 100%;
}

.table tbody td {
display: flex;
justify-content: space-between;
align-items: center;
padding: 0.3rem 0;
font-size: 1.80rem;
}

.table tbody td::before {
content: attr(data-label);
font-weight: bold;
flex: 1;
}

.container.contentCartExt {
height: 30%;
padding: 1rem;
}

tfoot {
width: 50%;
}

.sousTP {
font-size: 19px;
}
.sousNB {
font-size: 19px;
}
.totalShipping {
font-size: 19px;
}
.expeditionInt{  
height: auto;
left: 0px;
color: black;
background-color: #cacacac7;
}
.expedition-title h5 {
font-size: 20px;
}

p.textInt {
width: 368px;
}
.expedition-text td p {
width: 102%;
}

.France_metropolitaine,
.Lettre_internationale {
max-width: 100%;
height: auto;
}

.table th, .table td {
white-space: normal;
font-size: 1.2rem;
}

form.d-inline {
display: flex;
gap: 5px;
align-items: center;
}


/*  PAIEMMENT SECURISE */
.paySecurForm {
display: block;
justify-content: center;
}

.paySecurForm form{
width: 212%;
}
.paySecurForm button{
width: 100%;
}

.contentPolitique p, .contentMention p{
margin-bottom: unset;
}
.contentPolitique,.contentMention{
margin-bottom: 50px;
}
}



/******************************* 667px ******************************/

/**************************************************************
****************************************************************/

@media screen and (max-width: 667px) {
#bookCarousel .carousel-inner {
  width: 654px;
}
img.back {
    left: -10px;
  } 
img.cover {
    left: 314px;
  }

    .footer-menu h5.nacreala {
    font-size: 0.7rem;
  }
.footer-menu h5{
  font-size: 0.7rem;
}
  a h5.conceptionContent {
    font-size: 0.7rem;
  }
}






/******************************* 619px ******************************/

/**************************************************************
****************************************************************/

@media screen and (max-width: 619px) {
.alert-success{
position: absolute;
width: 82%;
left: 2%;
top: 19%;
text-align: center;
font-size: 1rem;
z-index: 999;
}
.messageBook {
width: 82%;
position: absolute;
top: 19%;
font-size: 1rem;
z-index: 999;
}
.messagePanier {
width: 82%;
position: absolute;
top: 19%;
font-size: 1rem;
z-index: 999;
}

.main-logo{
width: 250px;
position: relative;
left: -10px;
z-index: 201;
}
.col-md-2{
width: inherit;
}

.main-logo.bas img{
width: 70%;
position: relative;
top: 8px;
margin-left: 9%;
}

.hamburger-container{
width: 113px;
position: absolute;
right: 19px;
z-index: 500;
}
.hamburger-menu{
position: relative;
left: 0px;
}

.hamburger-image{
width: 30px;
}

.menu ul {
width: auto;
position: relative;
top: 50px;
padding-left: 10px;
}
.menu.active ul li a{
position: relative;
right: inherit;
margin-top: 39px;
border: none;
}

.menu.active{
width: 100%;
height: 751px;
z-index: 200;
}

.menu ul li a{
padding: 0px;
position: relative;
margin-top: 2px;
border: none;
}

.textIntro{
display: none;
}
.row.m-0.px-3.mt-4.mb-4.text-introExt{
padding: unset !important;
}
.row h1.text-introPc {
display: none;
}
.row h1.text-intro {
display: block;
font-family: "Alfa Slab One", serif;
font-weight: 400;
font-style: normal;
font-size: 1rem;
color: #6a6565;
margin-top: 40px;
}

h3.titreVideo {
top: -55px;
font-size: 1.6rem;
}

.jeneveux, .legende{
position: relative;
font-size: 1.6rem;
}

.imagesExterieures_droite {
position:absolute;
top:199px;
width:220px;
height: 250px;
left:222px;
}
.imagesExterieures_gauche {
position:relative;
top:0px;
left:-20px;
width:220px;
height: 250px;
}

/************** IMAGE POPUP ******************/
#imagePopup {
position: fixed;
top: 0;
left: 0;
width: 100%;
height: 100%;
z-index: 1050;
}

.popup-overlay {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
background: rgba(0, 0, 0, 0.75);
}

.popup-content {
position: relative;
top: 43%;
left: 50%;
transform: translate(-50%, -50%);
max-width:102%;
max-height: 90%;
z-index: 1060;
}

.popup-content img {
width: 100%;
height: auto;
border-radius: 10px;
}

.close-popup {
position: absolute;
top: -10px;
right: 0px;
background: #fff;
color: #000;
font-size: 28px;
font-weight: bold;
padding: 0 22px;
border-radius: 50%;
cursor: pointer;
z-index: 1061;
box-shadow: 0 0 10px #000;
}
/*****************************************/

#bookCarousel {
display: none;
}
#bookCarouselMobile {
display: block;
}
/** Ajustement du carrousel */
#bookCarouselMobile {
max-width: 500px; /* Largeur du carousel */
margin-top: 357px;
overflow: hidden;
}

/** Styles des images du carrousel */
.carousel-inner img {
width: 120%;
height: 500px;
object-fit: cover;
}

.single-slide-image {
display: block;
margin: 0 auto;
}

#bookCarousel .carousel-inner {
width: 100%;
height: 435px;
padding: 1px;
border: 1px solid #dddddd3c;
}
#bookCarousel .carousel-inner img {
height: 426px;
}
.carousel-inner img#page2 {
object-fit: cover;
width: 60%;
height: 483px;
position: relative;
top: -26px;
left: -3%;
}

.carousel-control-next {
display: block;
}
.carousel-control-prev {
display: block;
}

img.cover, img.back {
top: 19px;
height: 43%;
margin-left: 2%;
}

img.cover{
left: 274px;
height: 39%;
}
img.back{
left: -20px;
height: 39%;
}


/* Slider image en mobile */

.single-slide-image {
width: 100%;
max-height: 4520px;
object-fit: contain;
padding: 10px;
}

.contentSlides{
position: relative;
top: 40px;
margin: auto 0px;
}

.carousel-innerMobile {
padding: 0;
}

.row.m-0.flechesMobile {
display: flex;
position: relative;
width: 100%;
top: 0px;
justify-content: space-around;
}

.flecheGaucheMobile,
.flecheDroiteMobile {
position: relative;
width: 40px;
}

.carousel-control-prevMobile,
.carousel-control-nextMobile {
top: 45%;
width: auto;
background-color: unset;
}

.formulaire {
padding-bottom: 85px;
top: 157px;
}
.formulaire img{
width: 50%;
}
img.formBasket{
width: 72%;
position: relative;
margin-top: -7px;
}
.formPrix{
position: relative;
top: -5px;
}

.panier2, .instagramExt {
width: 40% !important;
text-align: center;
position: relative;
left: -90px;
}
.panier2{
left: 7%;
}
.instagram{
position: relative;
top: -20px;
}

.videoExt {
flex: 0 0 auto;
width: 49.333333%;
}
.video-wrapper {
height: 100%;
}

.titreVideo {
top: -31px;
font-size: unset;
}

.fixed-image {
height: 400px;
width: auto;
position: absolute;
top: 50%;
transform: translateY(-50%);
z-index: 10;
}

/* Position des images */
.imagesExterieures_gaucheMobile {
left: 0px;
top: 205px;
width: 50%;
height: 230px;
object-fit: cover;
}

.imagesExterieures_droiteMobile {
margin-right: 97px;
top: 205px;
left:49%;
width: 50%;
height: 230px;
object-fit: cover;
}

h6.col-8 {
width: 70%;
left: 8%;
}

.copyZooExt {
position: relative;
top: 0px;
width: 96%;
}
.logo.bas img {
width: 21%;
}

/* Retirer la bordure du dernier élément pour éviter une ligne en trop */
#footer.footer {
margin-top: 100px;
}

.short-border {
border-right: unset !important;
}

.shorts{
width: 70%;
margin-right: 0px;
border: none;
}

.footer-menu h5.nacreala {
font-size: 1.5rem;
}

.myBorder{
justify-self: center;
width: 70%;
margin-bottom: 12px;
margin-left: auto;
margin-right: auto;
border-bottom: 2px solid rgba(128, 128, 128, 0.33);
}

#footer .footer h5 {
padding-right: 0px;
}
.footerInt{
display: flex;
justify-content: center;
}
.footer .row {
margin: 0px;
flex-direction: column;
}
.footer h5 {
font-size: 1.5rem;
}
.footer-menu h5 {
font-size: 1.5rem;
}
a h5.conceptionContent {
margin-top: 30px;
font-size: 1.5rem;
}

.instaFooter{
position: relative;
top: 16px;
width: 40%;
}
.row.align-content-center.instaFooter{
flex-direction: unset;
position: relative;
top: 16px;
}
.row.align-content-center.instaFooter h6{
width: 75%;
text-align: left;
}
.row.align-content-center.instaFooter img{
width: 18%;
}

h1.mentionsLegales {
top: -12px;
}
h1.politique {
top: -12px;
}
.cadreNacrealeImage img {
width: 100%;
}

.troisImgExt {
top: 20px;
}
.troisImg {
width: 32%;
position: relative;
left: 31%;
flex-direction: row;
column-gap: 0px;
}

.container.contactContaint {
display:unset
}

.castor::before {
width: 174px;
height: 300px;
}
.castor {
position: absolute;
top: 730px;
left:130px;
transform: translateY(-50%);
}
.flamant::after {
width: 174px;
height: 273px;
}
.flamant {
position: relative;
top: 174px;
margin-left: 298px;
transform: translateY(-50%);
}

.contactForm .col-10{
width: 100%;
}
.contactForm button{
font-size: 1.3rem;
}

#buttonsContainer button{
min-width: 100%;
}

/* PANIER */
table.table {
width: 100%;
display: block;
}

.titresTable th {
font-size: 12px;
padding: 5px;
}

td img {
width: 80px;
height: auto;
}

.bookTitle {
font-size: 1.5rem;
word-break: break-word;
}

.updateQuantity input[type="number"] {
left: -17px;
}

.updateQuantity {
font-size: 12px;
padding: 3px 6px;
}

.prixUnit_Mobile,
.sousTotal_Mobile {
display: flex;
flex-direction: row;
font-size: 14px;
}

.prixUnitaireMobile {
position: relative;
}
.prixUnitaireMobile,
.sousTotalMobile {
margin-bottom: 3px;
font-size: 1rem;
}

.sousTotalMobile {
position: relative;
width: 90%;
}
.sousTQ_TP{
font-size: 1rem;
}
.sousTQ_TXT {
display: block;
font-size: 1rem;
}
.sousTF {
display: block;
font-size: 1rem;
}
.prixTh_NB {
font-size: 1rem;
}
.nombreUnitMobile {
width: 13%;
font-size: 1rem;
}
.sousTNombreMobile {
width: 14%;
font-size: 1rem;
}

.contentExped th,
.contentExped td {
font-size: 13px;
word-break: break-word;
}

.expeditionInt {
padding: 10px;
}

.expeditionInt p {
font-size: 12px;
line-height: 1.4;
}

.expeditionInt img {
max-width: 100%;
height: auto;
}

.titreExped {
font-size: 14px;
cursor: pointer;
text-decoration: underline;
}

.sousTP,
.totalShipping {
text-align: right;
font-weight: bold;
}

.prixTh {
text-align: left;
font-size: 15px;
}

.container.contentCartExt {
height: 30%;
padding: 1rem;
}

tfoot {
width: 50%;
}

input[type="number"] {
width: 100% !important;
max-width: 80px;
font-size: 19px;
position: relative;
left: 0px;
}

.table th.sousTQ_TXT {
font-size: 19px;
}
.table th.sousTF {
font-size: 19px;
}
.table th.prixTh {
font-size: 19px;
position: relative;
left: 0;
}
.sousTP {
font-size: 17px;
position: relative;
left: 0;
}
.sousNB {
font-size: 1rem;
z-index: 100;
}
.shippingCostNb {
font-size: 1rem;
position: relative;
left: 0;
}
.totalShipping {
font-size: 1rem;
position: relative;
left: 0;
}
.expeditionInt{  
height: auto;
left: 0px;
color: black;
background-color: #cacacac7;
}
.expedition-text td p {
width: 102%;
position: relative;
font-size: 19px;
}
.expedition-title h5 {
font-size: 20px;
text-decoration: none;
}

p.textInt {
width: 368px;
}

.France_metropolitaine,
.Lettre_internationale {
max-width: 100%;
height: auto;
}

.table th, .table td {
white-space: normal;
font-size: 1.2rem;
}

form.d-inline {
display: flex;
gap: 5px;
align-items: center;
}


/*  PAIEMMENT SECURISE */
.paySecurForm {
display: block;
justify-content: center;
}

.paySecurForm form{
width: 212%;
}
.paySecurForm button{
width: 100%;
}
.contentNacreale{
position: relative;
top: 50px;
margin-bottom: 50px;
}
.contentPolitique p, .contentMention p{
margin-bottom: unset;
}
.contentPolitique,.contentMention{
position: relative;
top: 50px;
margin-bottom: 80px;
}

}




/******************************* 576px ******************************/

/**************************************************************
****************************************************************/

@media screen and (max-width: 576px) {

.alert-success{
position: absolute;
width: 95%;
left: 2%;
top: 40%;
text-align: center;
font-size: 1.5rem;
z-index: 999;
}
.messageBook {
width: 95%;
position: absolute;
top: 19%;
font-size: 1.5rem;
z-index: 999;
}
.messagePanier {
width: 95%;
position: absolute;
top: 19%;
font-size: 1.5rem;
z-index: 999;
}

.main-logo{
width: 200px;
}
.col-md-2{
width: inherit;
}

.main-logo.bas img{
width: 70%;
position: relative;
top: 8px;
margin-left: 9%;
}

.hamburger-container{
width: 113px;
position: absolute;
right: 19px;
z-index: 500;
}
.hamburger-menu{
position: relative;
left: 0px;
}

.hamburger-image{
width: 30px;
}

.menu ul {
width: auto;
position: relative;
top: 50px;
padding-left: 10px;
}
.menu.active ul li a{
position: relative;
margin-top: 4%;
right: inherit;
padding: 2px;
font-size: 20px;
}

.menu.active{
width: 100%;
height: auto;
z-index: 200;
}

.menu ul li a{
padding: 0px;
position: relative;
margin-top: 2px;
}

.menu ul li {
border-bottom: 1px solid #ddd;
padding: 0px;
}

.textIntro{
display: none;
}
.row h1.text-intro {
font-size: 1.6rem;
margin-bottom: 0%;
}

.jeneveux, .legende{
position: relative;
font-size: 1.6rem;
}

.imagesExterieures_droite {
position:absolute;
top:199px;
width:220px;
height: 250px;
left:222px;
}
.imagesExterieures_gauche {
position:relative;
top:0px;
left:-20px;
width:220px;
height: 250px;
}

/************** IMAGE POPUP ******************/
#imagePopup {
position: fixed;
top: 0;
left: 0;
width: 100%;
height: 100%;
z-index: 1050;
}

.popup-overlay {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
background: rgba(0, 0, 0, 0.75);
}

.popup-content {
position: relative;
top: 43%;
left: 50%;
transform: translate(-50%, -50%);
max-width:102%;
max-height: 90%;
z-index: 1060;
}

.popup-content img {
width: 100%;
height: auto;
border-radius: 10px;
}

.close-popup {
position: absolute;
top: -10px;
right: 0px;
background: #fff;
color: #000;
font-size: 28px;
font-weight: bold;
padding: 0 22px;
border-radius: 50%;
cursor: pointer;
z-index: 1061;
box-shadow: 0 0 10px #000;
}

/*****************************************/
img.cover, img.back {
top: 0px;
}

img.cover{
left: 253px;
height: 38%;
}
img.back{
left: -26px;
height: 38%;
}


/* Slider image en mobile */
img.single-slide-image {
width: 100%;
max-height: 4520px;
object-fit: contain;
padding: 10px;
}

.contentSlides{
position: relative;
top: 40px;
margin: auto 0px;
}

.row.m-0.flechesMobile {
display: flex;
position: relative;
width: 100%;
top: 0px;
justify-content: space-around;
}

.flecheGaucheMobile,
.flecheDroiteMobile {
position: relative;
width: 40px;
}

.carousel-control-prevMobile,
.carousel-control-nextMobile {
top: 45%;
width: auto;
background-color: unset;
}

.panier2, .instagramExt {
width: 40% !important;
text-align: center;
position: relative;
left: -90px;
column-gap: Opx;
}
.panier2{
left: 7%;
}
.instagram{
position: relative;
top: -20px;
}

.fixed-image {
height: 400px;
width: auto;
position: absolute;
top: 50%;
transform: translateY(-50%);
z-index: 10;
}

/* Position des images */
.imagesExterieures_gaucheMobile {
left: 0px;
top: 205px;
width: 50%;
height: 230px;
object-fit: cover;
}

.imagesExterieures_droiteMobile {
margin-right: 97px;
top: 205px;
left:49%;
width: 50%;
height: 230px;
object-fit: cover;
}

h6.col-8 {
width: 70%;
left: 8%;
}

#footer{
bottom:0px;    
}
#footer .footer h5 {
padding-right: 0px;
}
.footerInt{
display: flex;
justify-content: center;
}
.footer .row {
flex-direction: column;
text-align: center;
}
.footer h5 {
font-size: 1.4rem;
}
.footer-menu h5 {
font-size: 1.4rem;
display: inline-block;
width: 102%;
}
.logo.bas {
width: 78%;
position: relative;
left: 64px;
}
.logo.bas img {
width: 33%;
}
.copyZooExt {
left: -7px;
}
.copyZoo {
font-size: 1.4rem;
}
.footer-menu h5.nacreala {
font-size: 1.4rem;
}
a h5.conceptionContent{
margin-top: 30px;
left: -15px;
font-size: 1.4rem;
}

.troisImgExt {
position: relative;
top: 20px;
}
.instaFooter img {
position: relative;
top: 0px;
width: 23%;
}
.row.align-content-center.instaFooter{
flex-direction: unset;
position: relative;
top: 20px;
}
.row.align-content-center.instaFooter h6{
width: 75%;
text-align: left;
}
.row.align-content-center.instaFooter img{
width: 18%;
}

h1.mentionsLegales {
top: 0px;
}
h1.politique {
top: 0px;
}
h1.nacreale {
position: relative;
top: 20px;
}

.container.contactContaint {
display:unset
}

.castor::before {
width: 174px;
height: 300px;
}
.castor {
position: absolute;
top: 730px;
left:130px;
transform: translateY(-50%);
}
.flamant::after {
width: 174px;
height: 273px;
margin-top: -179px;
}
.flamant {
position: relative;
top: 174px;
margin-left: 298px;
transform: translateY(-50%);
}

.contactForm .col-10{
width: 100%;
}
.contactForm button{
font-size: 1.3rem;
}

#buttonsContainer button{
min-width: 100%;
}

/* PANIER */
.prixUnitaireMobile{
position: relative;
left:0px
}
.sousTotalMobile{
position: relative;
left:0px
}

p.panierVide {
width: 100%;
position: relative;
top: 150px;
color: white;
}

.container.contentCartExt {
height: 30%;
padding: 1rem;
}

tfoot {
width: 50%;
}

.sousTQ_NB{
font-size: 1rem;
}
.sousTP {
font-size: 17px;
position: relative;
left: 0px;
}
.sousNB {
font-size: 17px;
}
.shippingCostNb {
font-size: 17px;
position: relative;
left: 0px;
}
.totalShipping {
font-size: 17px;
position: relative;
left: 0px;
}
.expeditionInt{  
height: auto;
left: 0px;
color: black;
background-color: #cacacac7;
}
.expedition-text td p {
top: -8px;
}
.expedition-title h5 {
font-size: 14px;
}

.expeditionInt{  
height: auto;
left: 0px;
color: black;
background-color: #cacacac7;
}
.expedition-title h5 {
font-size: 17px;
}

p.textInt {
width: 368px;
}

.France_metropolitaine,
.Lettre_internationale {
max-width: 100%;
height: auto;
}

#buttonsContainer a.btn {
font-size: 1.4rem;
}

.table th, .table td {
white-space: normal;
}
.table th{
font-size:1rem;
}

form.d-inline {
display: flex;
gap: 5px;
align-items: center;
}


/*  PAIEMMENT SECURISE */
.paySecurForm {
display: block;
justify-content: center;
}

.paySecurForm form{
width: 212%;
}
.paySecurForm button{
width: 100%;
}

}


/******************************* 540px ******************************/

/**************************************************************
****************************************************************/

@media screen and (max-width: 540px) {
.alert-success{
position: absolute;
width: 95%;
left: 2%;
top: 40%;
text-align: center;
font-size: 1.5rem;
z-index: 999;
}
.messageBook {
width: 95%;
position: absolute;
top: 19%;
font-size: 1.5rem;
z-index: 999;
}
.messagePanier {
width: 95%;
position: absolute;
top: 19%;
font-size: 1.5rem;    z-index: 999;
}

.main-logo{
width: 250px;
position: relative;
left: -10px;
z-index: 201;
}
.col-md-2{
width: inherit;
}

.main-logo.bas img{
width: 70%;
position: relative;
top: 8px;
margin-left: 9%;
}

.hamburger-container{
width: 113px;
position: absolute;
right: 10px;
z-index: 500;
}
.hamburger-menu{
position: relative;
left: 0px;
}

.hamburger-image{
width: 30px;
}

.menu ul {
width: auto;
position: relative;
top: 50px;
padding-left: 10px;
}
.menu.active ul li a{
position: relative;
right: inherit;
padding: 2px;
border: none;
}

.menu.active{
height: auto;
}

.menu ul li a{
padding: 0px;
position: relative;
margin-top: 2px;
border: none;
}

.textIntro{
display: none;
}
.row.m-0.px-3.mt-4.mb-4.text-introExt{
padding: unset !important;
}
.row h1.text-intro {
width: 100%;
font-size: 1.5rem;
}

.video-wrapper {
height: 96%;
}

.jeneveux, .legende{
position: relative;
font-size: 1.4rem;
}

.imagesExterieures_droite {
position:absolute;
top:199px;
width:220px;
height: 250px;
left:222px;
}
.imagesExterieures_gauche {
position:relative;
top:0px;
left:-20px;
width:220px;
height: 250px;
}

/************** IMAGE POPUP ******************/
#imagePopup {
position: fixed;
top: 0;
left: 0;
width: 100%;
height: 100%;
z-index: 1050;
}

.popup-overlay {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
background: rgba(0, 0, 0, 0.75);
}

.popup-content {
position: relative;
top: 43%;
left: 50%;
transform: translate(-50%, -50%);
max-width:102%;
max-height: 90%;
z-index: 1060;
}

.popup-content img {
width: 100%;
height: auto;
border-radius: 10px;
}

.close-popup {
position: absolute;
top: -10px;
right: 0px;
background: #fff;
color: #000;
font-size: 28px;
font-weight: bold;
padding: 0 22px;
border-radius: 50%;
cursor: pointer;
z-index: 1061;
box-shadow: 0 0 10px #000;
}
/*****************************************/
img.cover, img.back {
top: 30px;
}
img.cover{
left: 237px;
height: 34%;
}
img.back{
height: 34%;
}

.panier2, .instagramExt {
width: 40% !important;
text-align: center;
position: relative;
left: -90px;
}
.panier2{
left: 7%;
}
.instagram{
position: relative;
top: -20px;
}

.fixed-image {
height: 400px;
width: auto;
position: absolute;
top: 50%;
transform: translateY(-50%);
z-index: 10;
}

/* Position des images */
.imagesExterieures_gaucheMobile {
left: 0px;
top: 205px;
width: 50%;
height: 230px;
object-fit: cover;
}

.imagesExterieures_droiteMobile {
margin-right: 97px;
top: 205px;
left:49%;
width: 50%;
height: 230px;
object-fit: cover;
}

h6.col-8 {
width: 70%;
left: 8%;
}

.shorts{
width: 70%;
margin-right: 0px;
}
#footer{
bottom:0px;    
}

#footer .footer h5 {
padding-right: 0px;
}
.footerInt{
display: flex;
justify-content: center;
}
.footer .row {
flex-direction: column;
text-align: center;
}

.logo.bas {
width: 78%;
position: relative;
left:59px;
}
.logo.bas img {
width: 34%;
}

a h5.conceptionContent{
margin-top: 30px;
left: -5px;
font-size: 1.4rem;
}

.instaFooter {
padding-bottom: 20px;
}

.row.align-content-center.instaFooter{
flex-direction: unset;
position: relative;
top: 20px;
}
.row.align-content-center.instaFooter h6{
width: 75%;
text-align: left;
}
.row.align-content-center.instaFooter img{
width: 18%;
}

h1.mentionsLegales {
top: -12px;
}
h1.politique {
top: -12px;
}

.troisImgExt {
position: relative;
top: 25px;
}
.container.contactContaint {
display:unset
}

.castor::before {
width: 174px;
height: 300px;
}
.castor {
position: absolute;
top: 730px;
left:91px;
transform: translateY(-50%);
}
.flamant::after {
width: 174px;
height: 273px;
}
.flamant {
position: relative;
top: 174px;
margin-left: 270px;
transform: translateY(-50%);
}

.contactForm .col-10{
width: 100%;
}
.contactForm button{
font-size: 1.3rem;
}

#buttonsContainer button{
min-width: 100%;
}

/* PANIER */
.prixUnitaireMobile{
position: relative;
left:0px
}
.sousTotalMobile{
position: relative;
left:0px
}

p.panierVide {
width: 100%;
position: relative;
top: 150px;
color: white;
}
.table thead  {
display: flex;
width: 100%;
}

.table tbody td {
display: flex;
justify-content: space-between;
align-items: center;
padding: 0.3rem 0;
font-size: 1rem;
}

.table tbody td::before {
content: attr(data-label);
font-weight: bold;
flex: 1;
}

.container.contentCartExt {
height: 30%;
padding: 1rem;
}
.btn-sm {
font-size: 1.2rem;
}

tfoot {
width: 50%;
}

.table th.sousTQ_TXT {
font-size: 1rem;
}
.table th.sousTF {
font-size: 1rem;
}

.table th.prixTh {
font-size: 16px;
}

.sousTP {
font-size: 16px;
}
.sousNB {
font-size: 16px;
position: relative;
left: 31%;
}
.shippingCostNb {
font-size: 16px;
}
.totalShipping {
font-size: 16px;
}
.expeditionInt{  
height: auto;
left: 0px;
color: black;
background-color: #cacacac7;
}
.expedition-title h5 {
font-size: 14px;
}

.expeditionInt{  
height: auto;
left: 0px;
color: black;
background-color: #cacacac7;
}
.expedition-title h5 {
font-size: 18px;
}
.nombreUnitMobile{
width: 16%;
font-size: 1rem;
}
.sousTNombreMobile{
width: 16%;
font-size: 1rem;
}
p.textInt {
width: 368px;
}

.France_metropolitaine,
.Lettre_internationale {
max-width: 100%;
height: auto;
}

.table th, .table td {
white-space: normal;
}
.table th{
font-size:1rem;
}

input[type="number"] {
width: 100% !important;
max-width: 80px;
font-size: 16px;
}

form.d-inline {
display: flex;
gap: 5px;
align-items: center;
}


/*  PAIEMMENT SECURISE */
.paySecurForm {
display: block;
justify-content: center;
}

.paySecurForm form{
width: 212%;
}
.paySecurForm button{
width: 100%;
}
}




/******************************* 504px ******************************/

/**************************************************************
****************************************************************/

@media screen and (max-width: 504px) {
.alert-success{
position: absolute;
width: 95%;
left: 2%;
top: 40%;
text-align: center;
font-size: 1.5rem;
z-index: 999;
}
.messageBook {
width: 95%;
position: absolute;
top: 19%;
font-size: 1.5rem;
z-index: 999;
}
.messagePanier {
width: 95%;
position: absolute;
top: 19%;
font-size: 1.5rem;    z-index: 999;
}

.main-logo{
width: 250px;
position: relative;
left: -10px;
z-index: 201;
}
.col-md-2{
width: inherit;
}

.main-logo.bas img{
width: 70%;
position: relative;
top: 8px;
margin-left: 9%;
}

.hamburger-container{
width: 113px;
position: absolute;
right: 10px;
z-index: 500;
}
.hamburger-menu{
position: relative;
left: 0px;
}

.hamburger-image{
width: 30px;
}

.menu ul {
width: auto;
position: relative;
top: 50px;
padding-left: 10px;
}
.menu.active ul li a{
position: relative;
right: inherit;
padding: 2px;
border: none;
}

.menu.active{
height: auto;
}

.menu ul li a{
padding: 0px;
position: relative;
margin-top: 2px;
border: none;
}

.textIntro{
display: none;
}
.row.m-0.px-3.mt-4.mb-4.text-introExt{
padding: unset !important;
}
.row h1.text-intro {
width: 100%;
font-size: 1.37rem;
}

.compoVideo {
width: 109%;
position: relative;
left: -20px;
--bs-gutter-y: 0px;
}

.jeneveux, .legende{
position: relative;
font-size: 1.4rem;
}

.imagesExterieures_droite {
position:absolute;
top:199px;
width:220px;
height: 250px;
left:222px;
}
.imagesExterieures_gauche {
position:relative;
top:0px;
left:-20px;
width:220px;
height: 250px;
}

/************** IMAGE POPUP ******************/
#imagePopup {
position: fixed;
top: 0;
left: 0;
width: 100%;
height: 100%;
z-index: 1050;
}

.popup-overlay {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
background: rgba(0, 0, 0, 0.75);
}

.popup-content {
position: relative;
top: 43%;
left: 50%;
transform: translate(-50%, -50%);
max-width:102%;
max-height: 90%;
z-index: 1060;
}

.popup-content img {
width: 100%;
height: auto;
border-radius: 10px;
}

.close-popup {
position: absolute;
top: -10px;
right: 0px;
background: #fff;
color: #000;
font-size: 28px;
font-weight: bold;
padding: 0 22px;
border-radius: 50%;
cursor: pointer;
z-index: 1061;
box-shadow: 0 0 10px #000;
}
/*****************************************/
 img.cover {
    left: 218px;
    height: 32%;
  }
 img.back {
  left: -22px;
    height: 32%;
  }

.panier2, .instagramExt {
width: 40% !important;
text-align: center;
position: relative;
left: -90px;
column-gap: Opx;
}
.panier2{
left: 7%;
}
.instagram{
position: relative;
top: -20px;
}

.fixed-image {
height: 400px;
width: auto;
position: absolute;
top: 50%;
transform: translateY(-50%);
z-index: 10;
}

/* Position des images */
.imagesExterieures_gaucheMobile {
left: 0px;
top: 205px;
width: 50%;
height: 230px;
object-fit: cover;
}

.imagesExterieures_droiteMobile {
margin-right: 97px;
top: 205px;
left:49%;
width: 50%;
height: 230px;
object-fit: cover;
}

h6.col-8 {
width: 70%;
left: 8%;
}

.shorts{
width: 70%;
margin-right: 0px;
}
#footer{
bottom:0px;    
}

#footer .footer h5 {
padding-right: 0px;
}
.footerInt{
display: flex;
justify-content: center;
}
.footer .row {
flex-direction: column;
text-align: center;
}

.logo.bas {
width: 78%;
position: relative;
left:59px;
}
.logo.bas img {
width: 34%;
}

a h5.conceptionContent{
margin-top: 30px;
left: -5px;
font-size: 1rem;
}

.instaFooter {
padding-bottom: 20px;
}

.row.align-content-center.instaFooter{
flex-direction: unset;
position: relative;
top: 20px;
}
.row.align-content-center.instaFooter h6{
width: 75%;
text-align: left;
}
.row.align-content-center.instaFooter img{
width: 18%;
}

h1.mentionsLegales {
top: -12px;
}
h1.politique {
top: -12px;
}

.troisImgExt {
position: relative;
top: 20px;
}

.container.contactContaint {
display:unset
}
.contactForm {
width: 100%;
justify-self: center;
padding: 0px;
}

.castor::before {
width: 174px;
height: 300px;
}
.castor {
position: absolute;
top: 730px;
left:91px;
transform: translateY(-50%);
}
.flamant::after {
width: 174px;
height: 273px;
}
.flamant {
position: relative;
top: 174px;
margin-left: 270px;
transform: translateY(-50%);
}

.contactForm .col-10{
width: 100%;
}
.contactForm button{
font-size: 1.3rem;
}

#buttonsContainer button{
min-width: 100%;
}

/* PANIER */
.prixUnitaireMobile{
position: relative;
left:0px
}
.sousTotalMobile{
position: relative;
left:0px
}

.nombreUnitMobile{
width: 17%;
}
.sousTNombreMobile{
width: 17%;
}

p.panierVide {
width: 100%;
position: relative;
top: 150px;
color: white;
}
.table thead  {
display: flex;
width: 100%;
}

.table tbody td {
display: flex;
justify-content: space-between;
align-items: center;
padding: 0.3rem 0;
font-size: 1.2rem;
}

.table tbody td::before {
content: attr(data-label);
font-weight: bold;
flex: 1;
}

.container.contentCartExt {
height: 30%;
padding: 1rem;
}
.btn-sm {
font-size: 1.2rem;
}

tfoot {
width: 50%;
}

.sousTQ_NB {
left: 0px;
font-size:1rem;
}
.table th, .table td {
white-space: normal;
}
.table th{
font-size:1rem;
}

input[type="number"] {
width: 100% !important;
max-width: 80px;
font-size: 16px;
left: -44%;
}

form.d-inline {
display: flex;
gap: 5px;
align-items: center;
}


/*  PAIEMMENT SECURISE */
.paySecurForm {
display: block;
justify-content: center;
}

.paySecurForm form{
width: 212%;
}
.paySecurForm button{
width: 100%;
}

/******************* FIN PAIEMENT *******************/

h1.nacreale{
position: relative;
top:24px
}

}


/*************** 475px **************************/

@media screen and (max-width: 475px) {
.container-fluid.mx-0{
margin-bottom: -80px;
}

.alert-success{
position: absolute;
width: 95%;
left: 2%;
top: 40%;
text-align: center;
font-size: 1rem;
z-index: 999;
}
.messageBook {
width: 95%;
position: absolute;
top: 19%;
font-size: 1rem;
z-index: 999;
}
.messagePanier {
width: 95%;
position: absolute;
top: 19%;
font-size: 1rem;
z-index: 999;
}

.main-logo{
width: 250px;
position: relative;
left: -10px;
z-index: 201;
}
.col-md-2{
width: inherit;
}

.main-logo.bas img{
width: 70%;
position: relative;
top: 8px;
margin-left: 9%;
}

.hamburger-container{
width: 110px;
position: absolute;
right: 19px;
z-index: 500;
}
.hamburger-menu{
position: relative;
left: 0px;
}

.hamburger-image{
width: 30px;
}

.menu ul {
width: auto;
position: relative;
top: 50px;
padding-left: 10px;
}
.menu.active ul li a{
position: relative;
margin-top: 10%;
right: inherit;
padding: 2px;
border: none;
}

.menu.active{
width: 100%;
height: 618px;
z-index: 200;
}

.menu ul li a{
padding: 0px;
position: relative;
margin-top: 2px;
border: none;
}

.textIntro{
display: none;
}
.row h1.text-intro {
font-size: 1.29rem;
}

.compoVideo {
top: -20px;
}
.videoExt {
flex: 0 0 auto;
width: 49.333333%;
padding: 1px;
}
h3.titreVideo {
top: -55px;
font-size: 1.3rem;
}

.jeneveux, .legende{
position: relative;
font-size: 1.1rem;
}

.imagesExterieures_droite {
position:absolute;
top:199px;
width:220px;
height: 250px;
left:222px;
}
.imagesExterieures_gauche {
position:relative;
top:0px;
left:-20px;
width:220px;
height: 250px;
}

/************** IMAGE POPUP ******************/
#imagePopup {
position: fixed;
top: 0;
left: 0;
width: 100%;
height: 100%;
z-index: 1050;
}

.popup-overlay {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
background: rgba(0, 0, 0, 0.75);
}

.popup-content {
position: relative;
top: 43%;
left: 50%;
transform: translate(-50%, -50%);
max-width:102%;
max-height: 90%;
z-index: 1060;
}

.popup-content img {
width: 100%;
height: auto;
border-radius: 10px;
}

.close-popup {
position: absolute;
top: -10px;
right: 0px;
background: #fff;
color: #000;
font-size: 28px;
font-weight: bold;
padding: 0 22px;
border-radius: 50%;
cursor: pointer;
z-index: 1061;
box-shadow: 0 0 10px #000;
}

#bookCarouselMobile {
margin-top: 284px;
}
img.cover{
left: 205px;
height: 33%;
}
img.back{
height: 33%;
}

.panier2, .instagramExt {
width: 40% !important;
text-align: center;
position: relative;
left: -90px;
column-gap: Opx;
}
.panier2{
left: 7%;
}
.instagram{
position: relative;
top: -20px;
}

.titreVideo{
top: -25px;
font-size: 14px;
}

.fixed-image {
height: 400px;
width: auto;
position: absolute;
top: 50%;
transform: translateY(-50%);
z-index: 10;
}

/* Position des images */
.imagesExterieures_gaucheMobile {
left: 0px;
top: 205px;
width: 50%;
height: 230px;
object-fit: cover;
}

.imagesExterieures_droiteMobile {
margin-right: 97px;
top: 205px;
left:49%;
width: 50%;
height: 230px;
object-fit: cover;
}

h6.col-8 {
width: 70%;
left: 8%;
}

.shorts{
width: 70%;
margin-right: 0px;
}
.formulaire {
  padding-bottom: 115px;
  top: 147px;
  left: -8px;
}
.formulaire img {
width: 77%;
}

.formCol2 button.imgpanier {
left: 8px;
position: relative;
}
img.formBasket {
width: 104%;
position: relative;
margin-top: -4px;
left:0px
}
.formCol2 button.imgpanier h5 {
top: -5px;
left: 2px;
font-size: 0.8rem;
}

#footer.footer {
margin-top: 70px;
}
.footerInt{
display: flex;
justify-content: center;
}
.footer .row {
flex-direction: column;
text-align: center;
}

.logo.bas{
font-size: 21px;
top:4px;
}
a h5.conceptionContent{
margin-top: 30px;
left: -6px;
font-size: 1.2rem;
}

.instaFooter{
width: 100%;
position: relative;
top: 30px;
}
.instaFooter img {
width: 10%;
}
.row.align-content-center.instaFooter{
flex-direction: unset;
position: relative;
top: 20px;
}
.row.align-content-center.instaFooter h6{
width: 75%;
text-align: left;
}
.row.align-content-center.instaFooter img{
width: 18%;
}

.decouvrir {
width: 130%;
position:relative;
margin-left: -40px;
}
h1.mentionsLegales {
top: 0px;
}
h1.politique {
top: 0px;
}
.troisImg {
width: 43%;
left: 25%;
}

.container.contactContaint {
display:unset
}
.contactForm {
width: 100%;
justify-self: center;
padding: 0px;
}

.castor::before {
width: 174px;
height: 133px;
}
.castor {
position: absolute;
top: 689px;
left:78px;
transform: translateY(-50%);
}
.flamant::after {
width: 137px;
height: 229px;
margin-top: -174px;
}
.flamant {
position: relative;
top: 140px;
margin-left: 237px;
transform: translateY(-50%);
}

.contactForm .col-10{
width: 100%;
}
.contactForm button{
font-size: 1.3rem;
}

#buttonsContainer button{
min-width: 100%;
}

/* PANIER */
table.table {
width: 104%;
position: relative;
left: -10px;
}
.bookTitle {
font-size: 1.3rem;
}

.updateQuantity input[type="number"] {
left: -11px;
}
.prixUnitaireMobile{
position: relative;
left:0px
}
.sousTotalMobile{
position: relative;
left:0px
}

.sousTNombreMobile{
width: 18%;
}

p.panierVide {
width: 100%;
position: relative;
top: 150px;
color: white;
}
.titresTable th{
position: relative;
left: 10px;
}
.table thead  {
display: flex;
width: 100%;
}

.table tbody td {
display: flex;
justify-content: space-between;
align-items: center;
padding: 0.3rem 0;
font-size: 20px;
}

.table tbody td::before {
content: attr(data-label);
font-weight: bold;
flex: 1;
}

.container.contentCartExt {
height: 30%;
padding: 1rem;
}

.table tbody td img {
width: 15%;
}

tfoot {
width: 50%;
}
th.sousTQ_NB{
position:relative;
left: -6%;
}

.sousTP {
font-size: 16px;
position: relative;
}
.sousNB {
font-size: 16px;
position: relative;

}
.shippingCostNb {
font-size: 16px;
position: relative;
left: 0px;
}
.totalShipping {
font-size: 16px;
position: relative;
left: 0px;
}

.btn-sm {
font-size: 18px;
}

.expeditionInt{  
height: auto;
left: 0px;
color: black;
background-color: #cacacac7;
}
.expedition-text td p {
width: 113%;
left: -25px;
}
.expedition-title h5 {
font-size: 14px;
}

p.textInt {
width: 368px;
}

.France_metropolitaine,
.Lettre_internationale {
max-width: 100%;
height: auto;
}

.table th, .table td {
white-space: normal;
font-size:inherit;
}

input[type="number"] {
width: 100% !important;
max-width: 80px;
font-size: 16px;
}

form.d-inline {
display: flex;
gap: 5px;
align-items: center;
}


/*  PAIEMMENT SECURISE */
.payContainer {
    display: unset;
    }
.paySecurForm {
display: block;
justify-content: center;
}

.paySecurForm form{
width: 212%;
}
.paySecurForm button{
width: 100%;
}
}









/*************** 440px **************************/

@media screen and (max-width: 445px) {
.row h1.text-intro {
font-size: 1.13rem;
}

.video-wrapper {
height: 88%;
}
 h3.titreVideo {
    top: -55px;
    font-size: 1.2rem;
  }

a h5.conceptionContent {
font-size: 1.4rem;
}

img.cover {
    left: 198px;
    height: 30%;
  }
  img.back {
    left: -19px;
    height: 30%;
  }
}




/*************** 430px **************************/

@media screen and (max-width: 430px) {
.container-fluid.mx-0{
margin-bottom: -80px;
}


.alert-success{
position: absolute;
width: 95%;
left: 2%;
top: 40%;
text-align: center;
font-size: 1rem;
z-index: 999;
}
.messageBook {
width: 95%;
position: absolute;
top: 19%;
font-size: 1rem;
z-index: 999;
}
.messagePanier {
width: 95%;
position: absolute;
top: 19%;
font-size: 1rem;
z-index: 999;
}

.main-logo{
width: 250px;
position: relative;
left: -10px;
z-index: 201;
}
.col-md-2{
width: inherit;
}

.main-logo.bas img{
width: 70%;
position: relative;
top: 8px;
margin-left: 9%;
}

.hamburger-container{
width: 110px;
position: absolute;
right: 19px;
z-index: 500;
}
.hamburger-menu{
position: relative;
left: 0px;
}

.hamburger-image{
width: 30px;
}

.menu ul {
width: auto;
position: relative;
top: 50px;
padding-left: 10px;
}
.menu.active ul li a{
position: relative;
margin-top: 10%;
right: inherit;
padding: 2px;
border: none;
}

.menu.active{
width: 100%;
height: 611px;
z-index: 200;
}

.menu ul li a{
padding: 0px;
position: relative;
margin-top: 2px;
border: none;
}

.textIntro{
display: none;
}
.row.m-0.px-3.mt-4.mb-4.text-introExt{
padding: unset !important;
}
.row h1.text-intro {
font-size: 1.1rem;
}

.compoVideo {
width: 111%;
}
.video-wrapper {
height: 88%;
}

.jeneveux, .legende{
position: relative;
font-size: 1.1rem;
}

.imagesExterieures_droite {
position:absolute;
top:199px;
width:220px;
height: 250px;
left:222px;
}
.imagesExterieures_gauche {
position:relative;
top:0px;
left:-20px;
width:220px;
height: 250px;
}

/************** IMAGE POPUP ******************/
#imagePopup {
position: fixed;
top: 0;
left: 0;
width: 100%;
height: 100%;
z-index: 1050;
}

.popup-overlay {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
background: rgba(0, 0, 0, 0.75);
}

.popup-content {
position: relative;
top: 43%;
left: 50%;
transform: translate(-50%, -50%);
max-width:102%;
max-height: 90%;
z-index: 1060;
}

.popup-content img {
width: 100%;
height: auto;
border-radius: 10px;
}

.close-popup {
position: absolute;
top: -10px;
right: 0px;
background: #fff;
color: #000;
font-size: 28px;
font-weight: bold;
padding: 0 22px;
border-radius: 50%;
cursor: pointer;
z-index: 1061;
box-shadow: 0 0 10px #000;
}
/*****************************************/
 img.cover {
    left: 188px;
    height: 29%;
  }
    img.back {
    left: -19px;
    height: 29%;
  }

.col-2 {
flex: 0 0 auto;
width: 18.667%;
}

.panier2, .instagramExt {
width: 40% !important;
text-align: center;
position: relative;
left: -90px;
}
.panier2{
left: 7%;
}
.instagram{
position: relative;
top: -20px;
}

.loupe_1 {
position: absolute;
left: 3px;
top: 85%;
transform: translateY(-50%);
}
.panier_1 {
position: absolute;
right: 3px;
top: 85%;
transform: translateY(-50%);
}
h3.titreVideo {
font-size: 1.1rem;
}

.fixed-image {
height: 400px;
width: auto;
position: absolute;
top: 50%;
transform: translateY(-50%);
z-index: 10;
}

/* Position des images */
.imagesExterieures_gaucheMobile {
left: 0px;
top: 205px;
width: 50%;
height: 230px;
object-fit: cover;
}

.imagesExterieures_droiteMobile {
margin-right: 97px;
top: 205px;
left:49%;
width: 50%;
height: 230px;
object-fit: cover;
}

h6.col-8 {
width: 70%;
left: 8%;
}

.shorts{
width: 70%;
margin-right: 0px;
}
.footerInt{
display: flex;
justify-content: center;
}
.footer .row {
flex-direction: column;
text-align: center;
}

.logo.bas{
font-size: 21px;
top:4px;
}
.logo.bas img {
width: 50%;
position: relative;
left: 0px;
}
.copyZoo {
font-size: 1rem;
left: 0px;
}

a h5.conceptionContent{
font-size: 1rem;
}

.instaFooter{
width: 100%;
position: relative;
top: 11px;
padding-bottom: 0px;
}
.instaFooter img {
width: 9%;
position: relative;
top: 0px;
}
.row.align-content-center.instaFooter{
flex-direction: unset;
position: relative;
top: 20px;
}
.row.align-content-center.instaFooter h6{
width: 75%;
text-align: left;
}
.row.align-content-center.instaFooter img{
width: 18%;
}

.decouvrir {
width: 130%;
position:relative;
margin-left: -40px;
}
h1.mentionsLegales {
top: 0px;
}
h1.politique {
top: 0px;
}
h1.nacreale {
font-size: 1.7rem;
}

.castor::before {
width: 174px;
height: 300px;
}
.castor {
position: absolute;
top: 710px;
left:45px;
transform: translateY(-50%);
}
.flamant::after {
width: 174px;
height: 273px;
}
.flamant {
position: relative;
top: 158px;
margin-left: 237px;
transform: translateY(-50%);
}

/* PANIER */
table.table {
width: 100%;
position: relative;
left: 0px;
}
.bookTitle {
font-size: 1.1rem;
}

.prixUnitaireMobile{
position: relative;
left:0px
}
.sousTotalMobile{
position: relative;
left:0px
}
.nombreUnitMobile{
width: 20%;
font-size: 1rem;
}
.sousTNombreMobile{
width: 21%;
font-size: 1rem;
}

p.panierVide {
width: 100%;
position: relative;
top: 150px;
color: white;
}
.titresTable th{
position: relative;
left: 10px;
}
.table thead  {
display: flex;
width: 100%;
}

.table tbody td {
display: flex;
justify-content: space-between;
align-items: center;
padding: 0.3rem 0;
font-size: 16px;
}

.table tbody td::before {
content: attr(data-label);
font-weight: bold;
flex: 1;
}

.container.contentCartExt {
height: 30%;
padding: 1rem;
}

.table tbody td img {
width: 22%;
}

.sousTQ_NB{
font-size: 1rem;
left: -5%;
}
.table th.sousTF {
font-size: 1rem;
}

.sousNB{
width: 100%;
font-size: 1rem;
}
.expeditionInt{  
height: auto;
left: 0px;
color: black;
background-color: #cacacac7;
}
.expedition-text td p {
width: 120%;
left: -35px;
}
.expedition-title h5 {
font-size: 14px;
}

p.textInt {
width: 368px;
}
.France_metropolitaine,
.Lettre_internationale {
max-width: 100%;
height: auto;
}

#buttonsContainer  a.btn{
font-size: 24px;
}
.table th, .table td {
white-space: normal;
font-size:inherit;
}
form.d-inline {
height:45px;
}


/*  PAIEMMENT SECURISE */
.paySecurForm {
display: block;
justify-content: center;
}
.paySecurForm form{
width: 212%;
}
.paySecurForm button{
width: 100%;
}
}





/*************** 414px **************************/

@media screen and (max-width: 414px) {
.container-fluid.mx-0{
margin-bottom: -80px;
}

.alert-success{
position: absolute;
width: 95%;
left: 2%;
top: 40%;
text-align: center;
font-size: 1rem;
z-index: 999;
}
.messageBook {
width: 95%;
position: absolute;
top: 19%;
font-size: 1rem;
z-index: 999;
}
.messagePanier {
width: 95%;
position: absolute;
top: 19%;
font-size: 1rem;;
z-index: 999;
}

.main-logo{
width: 210px;
position: relative;
left: -10px;
z-index: 201;
}
.col-md-2{
width: inherit;
}

.main-logo.bas img{
width: 70%;
position: relative;
top: 8px;
margin-left: 9%;
}

.hamburger-container{
width: 110px;
position: absolute;
right: 9px;
z-index: 500;
}
.hamburger-menu{
position: relative;
left: 0px;
}

.hamburger-image{
width: 30px;
}

.menu ul {
width: auto;
position: relative;
top: 50px;
padding-left: 10px;
}
.menu.active ul li a{
position: relative;
margin-top: 10%;
right: inherit;
padding: 2px;
border: none;
}

.menu.active{
width: 100%;
height: 600px;
z-index: 200;
}

.menu ul li a{
padding: 0px;
position: relative;
margin-top: 2px;
border: none;
}

.textIntro{
display: none;
}
.row.m-0.px-3.mt-4.mb-4.text-introExt{
padding: unset !important;
}
.row h1.text-introMobile {
font-size: 1.1rem;
}

.video-wrapper {
height: 82%;
}

.jeneveux, .legende{
position: relative;
font-size: 1.1rem;
}

.imagesExterieures_droite {
position:absolute;
top:199px;
width:220px;
height: 250px;
left:222px;
}
.imagesExterieures_gauche {
position:relative;
top:0px;
left:-20px;
width:220px;
height: 250px;
}

/************** IMAGE POPUP ******************/
#imagePopup {
position: fixed;
top: 0;
left: 0;
width: 100%;
height: 100%;
z-index: 1050;
}

.popup-overlay {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
background: rgba(0, 0, 0, 0.75);
}

.popup-content {
position: relative;
top: 43%;
left: 50%;
transform: translate(-50%, -50%);
max-width:102%;
max-height: 90%;
z-index: 1060;
}

.popup-content img {
width: 100%;
height: auto;
border-radius: 10px;
}

.close-popup {
position: absolute;
top: -10px;
right: 0px;
background: #fff;
color: #000;
font-size: 28px;
font-weight: bold;
padding: 0 22px;
border-radius: 50%;
cursor: pointer;
z-index: 1061;
box-shadow: 0 0 10px #000;
}

/*****************************************/
  #bookCarouselMobile {
    margin-top: 248px;
  }
 img.cover {
    left: 181px;
    height: 29%;
  }
  img.back {
    left: -17px;
    height: 29%;
  }

.panier2, .instagramExt {
width: 40% !important;
text-align: center;
position: relative;
left: -90px;
column-gap: 0px;
}
.panier2{
left: 7%;
}
.instagram{
position: relative;
top: -20px;
}

.fixed-image {
height: 400px;
width: auto;
position: absolute;
top: 50%;
transform: translateY(-50%);
z-index: 10;
}

/* Position des images */
.imagesExterieures_gaucheMobile {
left: 0px;
top: 205px;
width: 50%;
height: 230px;
object-fit: cover;
}

.imagesExterieures_droiteMobile {
margin-right: 97px;
top: 205px;
left:49%;
width: 50%;
height: 230px;
object-fit: cover;
}

.formulaire {
top: 80px;
left: -8px;
}

h6.col-8 {
width: 70%;
left: 8%;
}

#footer.footer {
margin-top: 0px;
}
.shorts{
width: 70%;
margin-right: 0px;
}

.footerInt{
display: flex;
justify-content: center;
}
.footer .row {
flex-direction: column;
text-align: center;
}

.logo.bas{
font-size: 18px;
top:4px;
left:33px;
}
.copyZoo {
left: 23px;
}

.instaFooter{
width: 100%;
position: relative;
top: 11px;
}
.row.align-content-center.instaFooter{
flex-direction: unset;
position: relative;
top: 20px;
}
.row.align-content-center.instaFooter h6{
width: 75%;
text-align: left;
}
.row.align-content-center.instaFooter img{
width: 18%;
}

.decouvrir {
width: 130%;
position:relative;
margin-left: -40px;
}
h1.mentionsLegales {
top: -12px;
}

.troisImg{
flex-direction: row;
top: 0px;
left: 30%;
}

.container.contactContaint {
display:unset
}

.castor::before {
width: 174px;
height: 300px;
}
.castor {
position: absolute;
top: 711px;
left:33px;
transform: translateY(-50%);
}
.flamant::after {
width: 174px;
height: 279px;
margin-top: -101px;
}
.flamant {
position: relative;
top: 123px;
margin-left: 237px;
transform: translateY(-50%);
}

.contactForm .col-10{
width: 100%;
}
.contactForm button{
font-size: 1.3rem;
}

#buttonsContainer button{
min-width: 100%;
}

/* PANIER */   
.prixUnit_Mobile{
position: relative;
}
.prixUnit_NB{
position: absolute;
right: 6%;
}
.sousTotal_Mobile{
position: relative;
}
.sousTQ_TP1{
position: absolute;
right: 9%;
}

p.panierVide {
width: 100%;
position: relative;
top: 150px;
color: white;
}
.titresTable th{
position: relative;
left: 10px;
}
.table thead  {
display: flex;
width: 100%;
}
.table tbody td {
display: flex;
justify-content: space-between;
align-items: center;
padding: 0.3rem 0;
font-size: 0.86rem;
}

.table tbody td::before {
content: attr(data-label);
font-weight: bold;
flex: 1;
}
.prixUnitaireMobile {
font-size: 0.9rem;
}
.sousTNombreMobile {
width: 20%;
font-size: 0.9rem;
}
.sousTP {
font-size: 0.9rem;
}
.sousNB {
font-size: 0.9rem;
}
.shippingCostNb {
font-size:  0.9rem;
}
.table th.prixTh {
font-size: 0.9rem;
}
.totalShipping {
font-size: 0.9rem;
}
.nombreUnitMobile {
font-size: 0.9rem;
}

.container.contentCartExt {
height: 30%;
padding: 1rem;
}

tfoot {
width: 50%;
}

.expeditionInt{  
height: auto;
left: 0px;
color: black;
background-color: #cacacac7;
}
.expedition-title h5 {
font-size: 14px;
}

p.textInt {
width: 368px;
}
.France_metropolitaine,
.Lettre_internationale {
max-width: 100%;
height: auto;
}

#buttonsContainer {
flex-direction: column;
align-items: center;
row-gap: 20px;
left: -4px;
}

#buttonsContainer a.btn {
width: 100%;
height: 50px;
position: relative;
}

.table th, .table td {
white-space: normal;
font-size:inherit;
}

input[type="number"] {
width: 100% !important;
max-width: 67px;
font-size: 16px;
}

/*  PAIEMMENT SECURISE */
.payContainer{
  margin-bottom: 70px;
}
.paySecurForm {
display: block;
justify-content: center;
}
.paySecurForm form{
width: 212%;
}
.paySecurForm button{
width: 100%;
}
}




/*************** 402px **************************/

@media screen and (max-width: 402px) {
.row h1.text-intro {
font-size: 1rem;
}

.formulaire {
padding-bottom: 120px;
}

.troisImg {
left: 26%;
}

.choixZone{
  font-size: 1.4rem;
}
}





/************************ 392 *******************************/

@media screen and (max-width: 392px) {

.container-fluid.mx-0{
margin-bottom: -80px;
}

.alert-success{
position: absolute;
width: 95%;
left: 2%;
top: 40%;
text-align: center;
font-size: 1rem;
z-index: 999;
}
.messageBook {
width: 95%;
position: absolute;
top: 19%;
font-size: 1rem;
z-index: 999;
}
.messagePanier {
width: 95%;
position: absolute;
top: 19%;
font-size: 1rem;;
z-index: 999;
}

.main-logo{
width: 180px;
position: relative;
left: -10px;
z-index: 201;
}
.col-md-2{
width: inherit;
}

.main-logo.bas img{
width: 70%;
position: relative;
top: 8px;
margin-left: 9%;
}

.hamburger-container{
width: 100px;
position: absolute;
right: 9px;
z-index: 500;
}
.hamburger-menu{
position: relative;
left: 0px;
height:40px
}

.hamburger-image{
width: 30px;
}
.hamburger-menu.open span:nth-child(1) {
transform: translateY(10px) rotate(45deg);
}
.hamburger-menu.open span:nth-child(3) {
transform: translateY(-10px) rotate(-45deg);
}

.menu ul {
width: auto;
position: relative;
top: 50px;
padding-left: 10px;
}
.menu.active ul li a{
position: relative;
margin-top: 10%;
right: inherit;
padding: 2px;
border: none;
}

.menu.active{
width: 100%;
height: 611px;
z-index: 200;
}

.menu ul li a{
padding: 0px;
position: relative;
margin-top: 2px;
border: none;
}

.d-flex{
padding: 0px;
}

.textIntro{
display: none;
}
.row h1.text-intro {
font-size: 1rem;
}
.row h1.text-introMobile {
font-size: 1rem;
}

.video-wrapper {
height: 80%;
}
.compoVideo {
width: 112%;
padding-bottom: 20px;
position: relative;
left: -20px;
}
.videoExt {
flex: 0 0 auto;
width: 49%;
}
h3.titreVideo {
font-size: 1.1rem;
top: -50px;
}

.jeneveux, .legende{
position: relative;
font-size: 0.97rem;
}

.imagesExterieures_droite {
position:absolute;
top:199px;
width:220px;
height: 250px;
left:222px;
}
.imagesExterieures_gauche {
position:relative;
top:0px;
left:-20px;
width:220px;
height: 250px;
}

/************** IMAGE POPUP ******************/
#imagePopup {
position: fixed;
top: 0;
left: 0;
width: 100%;
height: 100%;
z-index: 1050;
}

.popup-overlay {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
background: rgba(0, 0, 0, 0.75);
}

.popup-content {
position: relative;
top: 43%;
left: 50%;
transform: translate(-50%, -50%);
max-width:102%;
max-height: 90%;
z-index: 1060;
}

.popup-content img {
width: 100%;
height: auto;
border-radius: 10px;
/*box-shadow: 0 0 20px #000;*/
}

.close-popup {
position: absolute;
top: -10px;
right: 0px;
background: #fff;
color: #000;
font-size: 28px;
font-weight: bold;
padding: 0 22px;
border-radius: 50%;
cursor: pointer;
z-index: 1061;
box-shadow: 0 0 10px #000;
}
/*****************************************/
 img.back {
    left: -17px;
    height: 27%;
  }
 img.cover {
    left: 174px;
    height: 27%;
  }

/* Position des images */
.imagesExterieures_gaucheMobile {
left: 0px;
top: 205px;
width: 50%;
height: 230px;
object-fit: cover;
}

.imagesExterieures_droiteMobile {
margin-right: 97px;
top: 205px;
left:49%;
width: 50%;
height: 230px;
object-fit: cover;
}

h6.col-8 {
width: 70%;
left: 8%;
}

.shorts{
width: 70%;
margin-right: 0px;
}
.copyZooExt {
position: relative;
top: 0px;
width: 100%;
left: 0px;
}
.copyZoo {
font-size: 1rem;
position: relative;
left: 0px;
}

.footerInt{
display: flex;
justify-content: center;
}
.footer .row {
flex-direction: column;
text-align: center;
}

.instaFooter {
width: 100%;
position: relative;
top: 20px;
}
.instaFooter img {
width: 10%;
position: relative;
top: 0px;
}
.row.align-content-center.instaFooter{
flex-direction: unset;
position: relative;
top: 20px;
}
.row.align-content-center.instaFooter h6{
width: 75%;
text-align: left;
}
.row.align-content-center.instaFooter img{
width: 18%;
}

.decouvrir {
width: 130%;
position:relative;
margin-left: -40px;
}
h1.mentionsLegales {
top: -12px;
}
h1.politique {
top: -12px;
}
.troisImg {
left: 25%;
}

.container.contactContaint {
display:unset
}


.castor::before {
width: 174px;
height: 300px;
}
.castor {
position: absolute;
top: 707px;
left:45px;
transform: translateY(-50%);
}
.flamant::after {
width: 174px;
height: 273px;
}
.flamant {
position: relative;
top: 127px;
margin-left: 192px;
transform: translateY(-50%);
}

.contactForm .col-10{
width: 100%;
}
.contactForm button{
font-size: 1.3rem;
}

#buttonsContainer button{
min-width: 100%;
}

a h5.conceptionContent {
margin-top: 30px;
font-size: 1.4rem;
left: 0px;
}

/* PANIER */
.prixUnitaireMobile{
position: relative;
left:0px
}
.sousTotalMobile{
position: relative;
left:0px
}

.sousNB {
position: absolute;
top: 8px;
width: 26px;
font-size: 0.76rem;
}
.sousTNombreMobile {
width: 20%;
font-size: 0.76rem;
}
.nombreUnitMobile {
width: 20%;
font-size: 0.76rem;
left: -9%;
}
.table th.sousTQ_TXT {
font-size: 0.76rem;
}
.table th.prixTh {
font-size: 0.76rem;
}
.table th.sousTF {
font-size: 0.76rem;
}

p.panierVide {
width: 100%;
position: relative;
top: 150px;
color: white;
}

.choixZone {
position: relative;
width: 100%;
font-size: 0.8rem;
}
#shipping_zone {
font-size: 0.9rem;
}
.table thead  {
display: flex;
width: 100%;
}

.titresTable{
position: relative;
left: 7px;
}

.btn-sm {
font-size: 14px;
}

.table tbody td {
display: flex;
justify-content: space-between;
align-items: center;
padding: 0.3rem 0;
font-size: 0.95rem;
}

.table tbody td::before {
content: attr(data-label);
font-weight: bold;
flex: 1;
}

.container.contentCartExt {
height: 30%;
padding: 1rem;
}

input[type="number"] {
width: 100% !important;
max-width: 57px;
font-size: 16px;
position: relative;
left: -22px;
}

tfoot {
width: 50%;
}

.sousTP {
width: 100%;
margin-left: 0px;
font-size: 0.8rem;
}

.expeditionInt{  
height: auto;
left: 0px;
color: black;
background-color: #cacacac7;
}
.expedition-title h5 {
font-size: 0.75rem;
}

p.textInt {
width: 368px;
}

.France_metropolitaine,
.Lettre_internationale {
max-width: 100%;
height: auto;
}

#buttonsContainer {
flex-direction: column;
align-items: center;
row-gap: 20px;
left: -5px;
}

#buttonsContainer a.btn {
width: 100%;
height: 50px;
position: relative;
}
.table th, .table td {
white-space: normal;
}

.shippingCostNb {
font-size: 0.76rem;
}
.totalShipping {
font-size: 0.76rem;
}
form.d-inline {
display: flex;
gap: 5px;
align-items: center;
}


/*  PAIEMMENT SECURISE */
.paySecurForm {
display: block;
justify-content: center;
}
.paySecurForm form{
width: 212%;
}
.paySecurForm button{
width: 100%;
}
.cadrePaiement .row{
  display: unset;
}
 .row.cadrePaiement{
  display: unset;
width: 100%;
font-size: 0.8rem;
}

.paySecurForm.form-control{
  font-size: 0.8rem;
}
}




/************************ 375 *******************************/

@media screen and (max-width: 375px) {
.container-fluid.mx-0{
margin-bottom: -80px;
}

.alert-success{
position: absolute;
width: 95%;
left: 2%;
top: 40%;
text-align: center;
font-size: 1rem;
z-index: 999;
}
.messageBook {
width: 95%;
position: absolute;
top: 19%;
font-size: 1rem;
z-index: 999;
}
.messagePanier {
width: 95%;
position: absolute;
top: 19%;
font-size: 1rem;
z-index: 999;
}

.main-logo{
width: 180px;
position: relative;
left: -10px;
z-index: 201;
}
.col-md-2{
width: inherit;
}

.main-logo.bas img{
width: 70%;
position: relative;
top: 8px;
margin-left: 9%;
}

.hamburger-container{
width: 100px;
position: absolute;
right: 9px;
z-index: 500;
}
.hamburger-menu{
position: relative;
left: 0px;
height:40px
}
.hamburger-image{
width: 30px;
}
.hamburger-menu.open span:nth-child(1) {
transform: translateY(10px) rotate(45deg);
}
.hamburger-menu.open span:nth-child(3) {
transform: translateY(-10px) rotate(-45deg);
}

.menu ul {
width: auto;
position: relative;
top: 50px;
padding-left: 10px;
}
.menu.active ul li a{
position: relative;
margin-top: 10%;
right: inherit;
padding: 2px;
border: none;
}
.menu.active{
width: 100%;
height: 611px;
z-index: 200;
}
.menu ul li a{
padding: 0px;
position: relative;
margin-top: 2px;
border: none;
}

.d-flex{
padding: 0px;
}

.textIntro{
display: none;
}
.row.m-0.px-3.mt-4.mb-4.text-introExt{
padding: unset !important;
}

.video-wrapper {
height: 73%;
}
h3.titreVideo {
font-size: 1rem;
top: -49px;
}

.jeneveux, .legende{
position: relative;
font-size: 0.97rem;
}

.imagesExterieures_droite {
position:absolute;
top:199px;
width:220px;
height: 250px;
left:222px;
}
.imagesExterieures_gauche {
position:relative;
top:0px;
left:-20px;
width:220px;
height: 250px;
}

/************** IMAGE POPUP ******************/
#imagePopup {
position: fixed;
top: 0;
left: 0;
width: 100%;
height: 100%;
z-index: 1050;
}

.popup-overlay {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
background: rgba(0, 0, 0, 0.75);
}

.popup-content {
position: relative;
top: 43%;
left: 50%;
transform: translate(-50%, -50%);
max-width:102%;
max-height: 90%;
z-index: 1060;
}

.popup-content img {
width: 100%;
height: auto;
border-radius: 10px;
}

.close-popup {
position: absolute;
top: -10px;
right: 0px;
background: #fff;
color: #000;
font-size: 28px;
font-weight: bold;
padding: 0 22px;
border-radius: 50%;
cursor: pointer;
z-index: 1061;
box-shadow: 0 0 10px #000;
}
/*****************************************/
 #bookCarouselMobile {
    margin-top: 210px;
  }
  img.cover {
    left: 165px;
    height: 27%;
  }
 img.back {
    left: -14px;
    height: 27%;
  }

.formulaire {
left: -4px;
}
.col-2 {
flex: 0 0 auto;
width: 19.667%;
}

.panier2, .instagramExt {
width: 40% !important;
text-align: center;
position: relative;
left: -90px;
column-gap: Opx;
}
.panier2{
left: 7%;
}
.instagram{
position: relative;
top: -20px;
}

.titreVideo {
top: -22px;
font-size: 10px;
}

.fixed-image {
height: 400px;
width: auto;
position: absolute;
top: 50%;
transform: translateY(-50%);
z-index: 10;
}

/* Position des images */
.imagesExterieures_gaucheMobile {
left: 0px;
top: 205px;
width: 50%;
height: 230px;
object-fit: cover;
}

.imagesExterieures_droiteMobile {
margin-right: 97px;
top: 205px;
left:49%;
width: 50%;
height: 230px;
object-fit: cover;
}

h6.col-8 {
width: 70%;
left: 8%;
}

.shorts{
width: 70%;
margin-right: 0px;
}

.footerInt{
display: flex;
justify-content: center;
}
.footer .row {
flex-direction: column;
text-align: center;
}

a h5.conceptionContent {
margin-top: 30px;
font-size: 17px;
left: 0px;
}

.row.align-content-center.instaFooter{
flex-direction: unset;
position: relative;
top: 20px;
}
.row.align-content-center.instaFooter h6{
width: 75%;
text-align: left;
}
.row.align-content-center.instaFooter img{
width: 18%;
}

.decouvrir {
width: 130%;
position:relative;
margin-left: -40px;
}
h1.mentionsLegales {
top: -12px;
}
h1.politique {
top: -12px;
}

.row .troisImg{
flex-direction: row;
top: 0px;
}

.container.contactContaint {
display:unset
}


.castor::before {
width: 174px;
height: 300px;
}
.castor {
position: absolute;
left:16px;
transform: translateY(-50%);
}
.flamant::after {
width: 174px;
height: 273px;
}
.flamant {
position: relative;
margin-left: 192px;
transform: translateY(-50%);
}
.contactForm .col-10{
width: 100%;
}
.contactForm button{
font-size: 1.3rem;
}

#buttonsContainer button{
min-width: 100%;
}

/* PANIER */
.prixUnit_Mobile{
position: relative;
}
.prixUnit_NB{
position: absolute;
right: 6%;
}
.sousTotal_Mobile{
position: relative;
}
.sousTQ_TP1{
position: absolute;
right: 9%;
}


p.panierVide {
width: 100%;
position: relative;
top: 150px;
color: white;
}
.table thead  {
display: flex;
width: 100%;
left: -5px;
}

.titresTable{
position: relative;
left: 7px;
}

.table tbody td {
display: flex;
justify-content: space-between;
align-items: center;
padding: 0.3rem 0;
font-size: 15px;
}

.table tbody td::before {
content: attr(data-label);
font-weight: bold;
flex: 1;
}

.container.contentCartExt {
height: 30%;
padding: 1rem;
}

.nombreUnitMobile {
font-size: 15px;
}
.sousTNombreMobile {
width: 25%;
font-size: 15px;
}

tfoot {
width: 50%;
}

.table th.sousTQ_TXT {
font-size: 11px;
}

.sousTP {
font-size: 13px;
position: relative;
left: -17%;
width: 79%;
}
.shippingCostNb {
font-size: 13px;
}
.totalShipping {
font-size: 13px;
}

.expeditionInt{  
height: auto;
left: 0px;
color: black;
background-color: #cacacac7;
}
.expedition-title h5 {
font-size: 0.75rem;
}

p.textInt {
width: 368px;
}
.expedition-text td p {
width: 104%;
}

.France_metropolitaine,
.Lettre_internationale {
max-width: 100%;
height: auto;
}

#buttonsContainer {
flex-direction: column;
align-items: center;
row-gap: 20px;
left: -5px;
}

#buttonsContainer a.btn {
width: 100%;
height: 50px;
position: relative;
}

.table th, .table td {
white-space: normal;
}

form.d-inline {
display: flex;
gap: 5px;
align-items: center;
}


/*  PAIEMMENT SECURISE */
.paySecurForm {
display: block;
justify-content: center;
}

.paySecurForm form{
width: 212%;
}
.paySecurForm button{
width: 100%;
}
}





/************************ 360 *******************************/

@media screen and (max-width: 360px) {

.container-fluid.mx-0{
margin-bottom: -80px;
}

.alert-success{
position: absolute;
width: 95%;
top: 40%;
text-align: center;
font-size: 1rem;
z-index: 999;
}
.messageBook {
width: 95%;
position: absolute;
top: 19%;
font-size: 1rem;
z-index: 999;
}
.messagePanier {
width: 95%;
position: absolute;
top: 19%;
font-size: 1rem;
z-index: 999;
}
.main-logo{
width: 180px;
position: relative;
left: -10px;
z-index: 201;
}
.col-md-2{
width: inherit;
}

.main-logo.bas img{
width: 70%;
position: relative;
top: 8px;
margin-left: 9%;
}

.hamburger-container{
width: 100px;
position: absolute;
right: 9px;
z-index: 500;
}
.hamburger-menu{
position: relative;
left: 0px;
height:40px
}

.hamburger-image{
width: 30px;
}
.hamburger-menu.open span:nth-child(1) {
transform: translateY(10px) rotate(45deg);
}
.hamburger-menu.open span:nth-child(3) {
transform: translateY(-10px) rotate(-45deg);
}

.menu ul {
width: auto;
position: relative;
top: 50px;
padding-left: 10px;
}
.menu.active ul li a{
position: relative;
margin-top: 10%;
right: inherit;
padding: 2px;
border: none;
}

.menu.active{
width: 100%;
height: 550px;
z-index: 200;
}

.menu ul li a{
padding: 0px;
position: relative;
margin-top: 2px;
border: none;
}

.d-flex{
padding: 0px;
}

.textIntro{
display: none;
}
.row.m-0.px-3.mt-4.mb-4.text-introExt{
width:103%;
padding: unset !important;
}
.row h1.text-intro {
padding: unset;
font-size: 0.98rem;
}
.row h1.text-introMobile {
padding: unset;
font-size: 0.98rem;
}

.compoVideo {
padding-bottom: 0px;
}
h3.titreVideo {
font-size: 0.9rem;
top: -49px;
}

.jeneveux, .legende{
position: relative;
font-size: 0.97rem;
}

.imagesExterieures_droite {
position:absolute;
top:199px;
width:220px;
height: 250px;
left:222px;
}
.imagesExterieures_gauche {
position:relative;
top:0px;
left:-20px;
width:220px;
height: 250px;
}

/************** IMAGE POPUP ******************/
#imagePopup {
position: fixed;
top: 0;
left: 0;
width: 100%;
height: 100%;
z-index: 1050;
}

.popup-overlay {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
background: rgba(0, 0, 0, 0.75);
}

.popup-content {
position: relative;
top: 43%;
left: 50%;
transform: translate(-50%, -50%);
max-width:102%;
max-height: 90%;
z-index: 1060;
}

.popup-content img {
width: 100%;
height: auto;
border-radius: 10px;
}

.close-popup {
position: absolute;
top: -10px;
right: 0px;
background: #fff;
color: #000;
font-size: 28px;
font-weight: bold;
padding: 0 22px;
border-radius: 50%;
cursor: pointer;
z-index: 1061;
box-shadow: 0 0 10px #000;
}
/*****************************************/
img.back {
    left: -14px;
    height: 24%;
  }
 img.cover {
    left: 165px;
    height: 24%;
  }

.formulaire {
left: -7px;
}
.formulaire h5 {
font-size: 0.5rem;
}
.formCol2 button.imgpanier h5 {
font-size: 0.7rem;
}

.panier2, .instagramExt {
width: 40% !important;
text-align: center;
position: relative;
left: -90px;
column-gap: Opx;
}
.panier2{
left: 7%;
}
.instagram{
position: relative;
top: -20px;
}

.fixed-image {
height: 400px;
width: auto;
position: absolute;
top: 50%;
transform: translateY(-50%);
z-index: 10;
}

/* Position des images */
.imagesExterieures_gaucheMobile {
left: 0px;
top: 205px;
width: 50%;
height: 230px;
object-fit: cover;
}

.imagesExterieures_droiteMobile {
margin-right: 97px;
top: 205px;
left:49%;
width: 50%;
height: 230px;
object-fit: cover;
}

h6.col-8 {
width: 70%;
left: 8%;
}

.shorts{
width: 70%;
margin-right: 0px;
}
.footer-menu h5.nacreala {
font-size: 1rem;
}
#footer .footer h5 {
padding-right: 0px;
}
.footerInt{
display: flex;
justify-content: center;
}
.footer .row {
flex-direction: column;
text-align: center;
}
.footer h5 {
font-size: 1rem;
}
.footer-menu h5 {
font-size: 1rem;
}

a h5.conceptionContent {
margin-top: 30px;
font-size: 1rem;
left: 0px;
}

.instaFooter {
width: 100%;
position: relative;
top: 11px;
}
.row.align-content-center.instaFooter{
flex-direction: unset;
position: relative;
top: 20px;
}
.row.align-content-center.instaFooter h6{
width: 75%;
text-align: left;
}
.row.align-content-center.instaFooter img{
width: 18%;
}

.decouvrir {
width: 130%;
position:relative;
margin-left: -40px;
}
h1.mentionsLegales {
top: -12px;
}
h1.politique {
top: -12px;
}

.row .troisImg{
width: 48%;
flex-direction: row;
top: 0px;
left: 75px;
}

.container.contactContaint {
display:unset
}

.castor::before {
width: 174px;
height: 300px;
}
.castor {
position: absolute;
left:6px;
transform: translateY(-50%);
}
.flamant::after {
width: 174px;
height: 273px;
}
.flamant {
position: relative;
margin-left: 192px;
transform: translateY(-50%);
}

.contactForm .col-10{
width: 100%;
}
.contactForm button{
font-size: 1.3rem;
}

#buttonsContainer button{
min-width: 100%;
}

/* PANIER */
.prixUnitaireMobile{
position: relative;
left:0px
}
.sousTotalMobile{
position: relative;
left:0px
}

.nombreUnitMobile{
font-size: 0.8rem;
}
.sousTNombreMobile{
font-size: 0.8rem;
}

p.panierVide {
width: 100%;
position: relative;
top: 150px;
color: white;
}
.table thead  {
display: flex;
width: 100%;
}

.titresTable{
position: relative;
left: 7px;
}

.table tbody td {
display: flex;
justify-content: space-between;
align-items: center;
padding: 0.3rem 0;
font-size: 0.95rem;
}

.table tbody td::before {
content: attr(data-label);
font-weight: bold;
flex: 1;
}

.container.contentCartExt {
height: 30%;
padding: 1rem;
}

.updateQuantity input[type="number"] {
  font-size: 0.8rem;
}

tfoot {
width: 50%;
}
.table th.sousTQ_TXT {
font-size: 0.8rem;
}
.prixUnitaireMobile {
font-size: 0.8rem;
}
.sousTotalMobile {
font-size: 0.8rem;
}
.sousTQ_TP {
font-size: 0.8rem;
}
.sousTQ_NB {
font-size: 0.8rem;
}
.sousTF {
font-size: 0.8rem;
}
.prixTh {
font-size: 0.8rem;
}
.prixTh_NB {
font-size: 0.8rem;
}
.shippingCostNb {
font-size: 0.8rem;
}
.totalShipping {
font-size: 0.8rem;
}

.sousTQ_TXT {
font-size: 0.8rem;
}
.sousTP {
font-size: 0.8rem;
}
.sousNB {
font-size: 0.8rem;
}
.table th.prixTh {
font-size: 0.8rem;
left: 0%;
}
.table th.sousTF {
font-size: 0.8rem;
}

.expeditionInt{  
height: auto;
left: 0px;
color: black;
background-color: #cacacac7;
}
.expedition-title h5 {
font-size: 0.75rem;
}

p.textInt {
width: 368px;
}
.expedition-text td p {
width: 125%;
}

.France_metropolitaine,
.Lettre_internationale {
max-width: 100%;
height: auto;
}

#buttonsContainer {
flex-direction: column;
align-items: center;
row-gap: 20px;
left: -5px;
}

#buttonsContainer a.btn {
width: 100%;
height: 50px;
position: relative;
}

.table th, .table td {
white-space: normal;
}

form.d-inline {
display: flex;
gap: 5px;
align-items: center;
}


/*  PAIEMMENT SECURISE */
.paySecurForm {
justify-content: center;
}
.paySecurForm button{
width: 100%;
}
}




/************************ 344 *******************************/

@media screen and (max-width: 344px) {

.container-fluid.mx-0{
margin-bottom: -80px;
}

.alert-success{
position: absolute;
width: 95%;
top: 40%;
text-align: center;
font-size: 1rem;
z-index: 999;
}
.messageBook {
width: 95%;
position: absolute;
top: 19%;
font-size: 1rem;
z-index: 999;
}
.messagePanier {
width: 95%;
position: absolute;
top: 19%;
font-size: 1rem;
z-index: 999;
}

.main-logo{
width: 180px;
position: relative;
left: -10px;
z-index: 201;
}
.col-md-2{
width: inherit;
}

.main-logo.bas img{
width: 70%;
position: relative;
top: 8px;
margin-left: 9%;
}

.hamburger-container{
width: 100px;
position: absolute;
right: 9px;
z-index: 500;
}
.hamburger-menu{
position: relative;
left: 0px;
height:40px
}

.hamburger-image{
width: 30px;
}
.hamburger-menu.open span:nth-child(1) {
transform: translateY(10px) rotate(45deg);
}
.hamburger-menu.open span:nth-child(3) {
transform: translateY(-10px) rotate(-45deg);
}

.menu ul {
width: auto;
position: relative;
top: 50px;
padding-left: 10px;
}
.menu.active ul li a{
position: relative;
margin-top: 10%;
right: inherit;
padding: 2px;
border: none;
}

.menu.active{
width: 100%;
height: 550px;
z-index: 200;
}

.menu ul li a{
padding: 0px;
position: relative;
margin-top: 2px;
border: none;
}

.d-flex{
padding: 0px;
}

.textIntro{
display: none;
}
.row.m-0.px-3.mt-4.mb-4.text-introExt{
width:100%;
padding: unset !important;
}
.row h1.text-intro {
padding-bottom: 20px;
}
.video-wrapper {
height: 67%;
}
h3.titreVideo {
font-size: 0.8rem;
top: -49px;
}

.jeneveux, .legende{
position: relative;
font-size: 0.91rem;
}

.imagesExterieures_droite {
position:absolute;
top:199px;
width:220px;
height: 250px;
left:222px;
}
.imagesExterieures_gauche {
position:relative;
top:0px;
left:-20px;
width:220px;
height: 250px;
}

/************** IMAGE POPUP ******************/
#imagePopup {
position: fixed;
top: 0;
left: 0;
width: 100%;
height: 100%;
z-index: 1050;
}

.popup-overlay {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
background: rgba(0, 0, 0, 0.75);
}

.popup-content {
position: relative;
top: 43%;
left: 50%;
transform: translate(-50%, -50%);
max-width:102%;
max-height: 90%;
z-index: 1060;
}

.popup-content img {
width: 100%;
height: auto;
border-radius: 10px;
}

.close-popup {
position: absolute;
top: -10px;
right: 0px;
background: #fff;
color: #000;
font-size: 28px;
font-weight: bold;
padding: 0 22px;
border-radius: 50%;
cursor: pointer;
z-index: 1061;
box-shadow: 0 0 10px #000;
}
/*****************************************/
img.cover {
    left: 156px;
    height: 23%;
  }
 img.back {
    left: -14px;
    height: 23%;
  }

.panier2, .instagramExt {
width: 40% !important;
text-align: center;
position: relative;
left: -90px;
column-gap: Opx;
}
.panier2{
left: 7%;
}
.instagram{
position: relative;
top: -20px;
}

.compoVideo {
padding-bottom: 40px;
top: -50px;
}
.videoExt {
flex: 0 0 auto;
width: 49%;
--bs-gutter-y: -85px;
top: 125px;
}
.titreVideo {
top: -22px;
font-size: 11px;
}

.fixed-image {
height: 400px;
width: auto;
position: absolute;
top: 50%;
transform: translateY(-50%);
z-index: 10;
}

/* Position des images */
.imagesExterieures_gaucheMobile {
left: 0px;
top: 205px;
width: 50%;
height: 230px;
object-fit: cover;
}

.imagesExterieures_droiteMobile {
margin-right: 97px;
top: 205px;
left:49%;
width: 50%;
height: 230px;
object-fit: cover;
}

h6.col-8 {
width: 70%;
left: 8%;
}

img.formBasket {
position: relative;
top: 2px;
}

.shorts{
width: 70%;
margin-right: 0px;
}
.footer-menu h5.nacreala {
font-size: 1rem;
}
#footer .footer h5 {
padding-right: 0px;
}
.footerInt{
display: flex;
justify-content: center;
}
.footer .row {
flex-direction: column;
text-align: center;
}
.footer h5 {
font-size: 1rem;
}
.footer-menu h5 {
font-size: 1rem;
}
a h5.conceptionContent{
font-size: 1rem;
}

.instaFooter {
width: 100%;
position: relative;
top: 20px;
}
.row.align-content-center.instaFooter{
flex-direction: unset;
position: relative;
top: 20px;
}
.row.align-content-center.instaFooter h6{
width: 75%;
text-align: left;
}
.row.align-content-center.instaFooter img{
width: 18%;
}

.decouvrir {
width: 130%;
position:relative;
margin-left: -40px;
}
h1.mentionsLegales {
top: -12px;
}
h1.politique {
top: -12px;
}

.row .troisImg {
width: 46%;
flex-direction: row;
top: 0px;
left: 75px;
}

.container.contactContaint {
display:unset
}

.castor::before {
width: 174px;
height: 300px;
}
.castor {
position: absolute;
left:6px;
transform: translateY(-50%);
}
.flamant::after {
width: 174px;
height: 273px;
}
.flamant {
position: relative;
margin-left: 159px;
transform: translateY(-50%);
}

.contactForm .col-10{
width: 100%;
}
.contactForm button{
font-size: 1.3rem;
}

#buttonsContainer button{
min-width: 100%;
}

/* PANIER */
.prixUnitaireMobile{
position: relative;
left:0px
}
.sousTotalMobile{
position: relative;
left:0px
}
.nombreUnitMobile{
font-size: 12px;
}
.sousTNombreMobile{
font-size: 12px;
}

p.panierVide {
width: 100%;
position: relative;
top: 150px;
color: white;
}
.table thead  {
display: flex;
width: 100%;
}

.titresTable{
position: relative;
left: 7px;
}

.table tbody td {
display: flex;
justify-content: space-between;
align-items: center;
padding: 0.3rem 0;
font-size: 0.95rem;
}

.table tbody td::before {
content: attr(data-label);
font-weight: bold;
flex: 1;
}
.table tbody td img {
width: 30%;
}
.container.contentCartExt {
height: 30%;
padding: 1rem;
}

table.table {
width: 100%;
font-size: 12px;
position: relative;
left: 0px;
display: block;
}

tfoot {
width: 50%;
}

.table th.sousTQ_TXT {
font-size: 10px;
left: 0px;
}
.table th.sousTF {
font-size: 10px;
left: 0px;
}
.table th.prixTh {
font-size: 10px;
left: 0px;
}

.sousTP {
font-size: 11px;
}
.shippingCostNb {
font-size: 11px;
}
.sousNB {
font-size: 12px;
}
.table th.prixTh {
font-size: 12px;
}
.totalShipping {
font-size: 12px;
}

.expeditionInt{  
height: auto;
left: 0px;
color: black;
background-color: #cacacac7;
}
.expedition-title h5 {
font-size: 0.75rem;
}

p.textInt {
width: 368px;
}
.expedition-text td p {
width: 108%;
position: relative;
left: -12px;
font-size: 17px;
line-height: 1.4;
}

.France_metropolitaine,
.Lettre_internationale {
max-width: 100%;
height: auto;
}

#buttonsContainer {
flex-direction: column;
align-items: center;
row-gap: 20px;
left: -5px;
}

#buttonsContainer a.btn {
width: 100%;
height: 50px;
position: relative;
font-size: 20px;
}

.table th, .table td {
white-space: normal;
}

.btn-sm {
font-size: 13px;
}
input[type="number"] {
width: 100% !important;
max-width: 62px;
font-size: 14px;
}

form.d-inline {
display: flex;
gap: 5px;
align-items: center;
}


/*  PAIEMMENT SECURISE */
.paySecurForm {
display: block;
justify-content: center;
}

.paySecurForm form{
width: 212%;
}
.paySecurForm button{
width: 100%;
}
}



/************************ 325 *******************************/

@media screen and (max-width: 325px) {
.container-fluid.mx-0{
margin-bottom: -80px;
}

.alert-success{
position: absolute;
width: 95%;
top: 40%;
text-align: center;
font-size: 1rem;
z-index: 999;
}
.messageBook {
width: 95%;
position: absolute;
top: 19%;
font-size: 1rem;
z-index: 999;
}
.messagePanier {
width: 95%;
position: absolute;
top: 19%;
font-size: 1rem;
z-index: 999;
}

.main-logo{
width: 166px;
position: relative;
z-index: 201;
}
.col-md-2{
width: inherit;
}

.main-logo.bas img{
width: 70%;
position: relative;
top: 8px;
margin-left: 9%;
}

.hamburger-container{
width: 92px;
position: absolute;
right: 9px;
z-index: 500;
}
.hamburger-menu{
position: relative;
left: 0px;
height:40px
}

.hamburger-image{
width: 25px;
}
.hamburger-menu.open span:nth-child(1) {
transform: translateY(10px) rotate(45deg);
}
.hamburger-menu.open span:nth-child(3) {
transform: translateY(-10px) rotate(-45deg);
}

.menu ul {
width: auto;
position: relative;
top: 50px;
padding-left: 10px;
}
.menu.active ul li a{
position: relative;
margin-top: 9%;
right: inherit;
padding: 2px;
border: none;
}

.menu.active{
width: 100%;
height: 550px;
z-index: 200;
}

.menu ul li a{
padding: 0px;
position: relative;
margin-top: 2px;
border: none;
}

.row h1.text-intro {
font-size: 0.9rem;
}

.textIntro{
display: none;
}

.compoVideo {
width: 115%;
}
.video-wrapper {
height: 63%;
}
h3.titreVideo {
font-size: 0.8rem;
top: -42px;
}

.formCol2 button.imgpanier h5 {
top: 0px;
}

.jeneveux, .legende{
position: relative;
font-size: 0.75rem;
}

.imagesExterieures_droite {
position:absolute;
top:199px;
width:220px;
height: 250px;
left:222px;
}
.imagesExterieures_gauche {
position:relative;
top:0px;
left:-20px;
width:220px;
height: 250px;
}

/************** IMAGE POPUP ******************/
#imagePopup {
position: fixed;
top: 0;
left: 0;
width: 100%;
height: 100%;
z-index: 1050;
}

.popup-overlay {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
background: rgba(0, 0, 0, 0.75);
}

.popup-content {
position: relative;
top: 43%;
left: 50%;
transform: translate(-50%, -50%);
max-width:102%;
max-height: 90%;
z-index: 1060;
}

.popup-content img {
width: 100%;
height: auto;
border-radius: 10px;
}

.close-popup {
position: absolute;
top: -10px;
right: 0px;
background: #fff;
color: #000;
font-size: 28px;
font-weight: bold;
padding: 0 22px;
border-radius: 50%;
cursor: pointer;
z-index: 1061;
box-shadow: 0 0 10px #000;
}
/*****************************************/
 #bookCarouselMobile {
    margin-top: 154px;
  }
 img.back {
    left: -14px;
    height: 25%;
  }
 img.cover {
    left: 146px;
    height: 25%;
  }

.formulaire {
width: 100%;
left: 0px;
}

.formCol2 button.imgpanier {
left: 2px;
}
.formCol2 button.imgpanier h5 {
top: -3px;
}
.col-2 {
flex: 0 0 auto;
width: 17.667%;
}

.panier2, .instagramExt {
width: 40% !important;
text-align: center;
position: relative;
left: -90px;
}
.panier2{
left: 7%;
}
.instagram{
position: relative;
top: -20px;
}

.fixed-image {
height: 400px;
width: auto;
position: absolute;
top: 50%;
transform: translateY(-50%);
z-index: 10;
}

/* Position des images */
.imagesExterieures_gaucheMobile {
left: 0px;
top: 205px;
width: 50%;
height: 230px;
object-fit: cover;
}

.imagesExterieures_droiteMobile {
margin-right: 97px;
top: 205px;
left:49%;
width: 50%;
height: 230px;
object-fit: cover;
}

h6.col-8 {
width: 70%;
left: 8%;
}

.shorts{
width: 70%;
margin-right: 0px;
}
.logo.bas {
position: relative;
top:3px;
left:34px;
}
.copyZooExt {
position: relative;
top: 0px;
width: 100%;
left: 0px;
}
.footer-menu h5.nacreala {
font-size: 1rem;
}
#footer .footer h5 {
padding-right: 0px;
}
.footerInt{
display: flex;
justify-content: center;
}
.footer .row {
flex-direction: column;
text-align: center;
}
.footer h5 {
font-size: 1rem;
}
.footer-menu h5 {
font-size: 1rem;
}

.row.align-content-center.instaFooter{
flex-direction: unset;
position: relative;
top: 20px;
}
.row.align-content-center.instaFooter h6{
width: 75%;
text-align: left;
}
.row.align-content-center.instaFooter img{
width: 18%;
}

.decouvrir {
width: 130%;
position:relative;
margin-left: -28px;
}
a h5.conceptionContent {
font-size: 1rem;
}
h1.mentionsLegales {
top: 0px;
font-size: 1.2rem;
}
h1.politique {
top: 0px;
font-size: 1.2rem;
}
h1.nacreale {
font-size: 1.2rem;
}
.textNacreale h5{
font-size: 1rem;
}

.row .troisImg {
width: 42%;
}

.container.contactContaint {
display:unset
}

.castor::before {
width: 135px;
height: 300px;
}
.castor {
position: absolute;
top: 765px;
left:27px;
transform: translateY(-50%);
}
.flamant::after {
width: 95px;
height: 310px;
}
.flamant {
position: relative;
top: 178px;
margin-left: 192px;
transform: translateY(-50%);
}

.contactForm {
width: 100%;
padding: 0px;
}
.row.contactRow {
display: block;
}

.contactForm .col-10{
width: 100%;
}
.contactForm button{
font-size: 1.3rem;
}

#buttonsContainer button{
min-width: 100%;
}

/* PANIER */
.prixUnitaireMobile{
position: relative;
left:0px
}
.sousTotalMobile{
position: relative;
left:0px
}
.nombreUnitMobile{
width: 24%;
}
.sousTNombreMobile{
width: 24%;
}

p.panierVide {
width: 100%;
position: relative;
top: 150px;
color: white;
}

/************ TABLE *****************/
.sousTQ_TXT {
font-size: 0.8rem;
}
.sousTQ_NB{
font-size: 0.8rem;
left: 0px;
}
.sousTQ_TP{
font-size: 0.8rem;
left: 0px;
}
.sousTF{
font-size: 0.8rem;
}
.sousNB{
font-size: 0.8rem;
left: -10px;
}
.prixTh {
font-size: 0.8rem;
}
.prixTh_NB {
font-size: 0.8rem;
}
.sousTP{
font-size: 0.8rem;
}
.shippingCostNb{
position: relative;
font-size: 0.8rem;
}
.totalShipping{
position: relative;
font-size: 0.8rem;
}

table {
table-layout: fixed;
width: 100%;
}
.table thead  {
display: flex;
width: 100%;
}

.table tbody td {
display: flex;
justify-content: space-between;
align-items: center;
padding: 0.3rem 0;
position: relative;
left: 0px;
}

.table tbody td::before {
content: attr(data-label);
font-weight: bold;
flex: 1;
}

tfoot {
width: 50%;
}

/*  PAIEMMENT SECURISE */
.paySecurForm {
display: block;
justify-content: center;
}

.paySecurForm form{
width: 212%;
}
.paySecurForm button{
width: 100%;
}

.contentPolitique p, .contentMention p{
margin-bottom: unset;
}
.contentPolitique,.contentMention{
margin-bottom: 50px;
top: 15px;
position: relative;
}
}




/************************ 305px *******************************
*************************************************************
**************************************************************************/

@media screen and (max-width: 305px) {

.textCode{
    position: relative;
    left: -5px;
}
}





/************************ 283px *******************************
*************************************************************
**************************************************************************/

@media screen and (max-width: 283px) {

.main-logo img {
width: 80%;
left: -5px;
position: relative;
}

.hamburger-container {
width: 87px;
position: absolute;
right: 9px;
z-index: 500;
}
.hamburger-menu {
position: relative;
left: 0px;
height: 34px;
}
.hamburger-menu span {
display: block;
width: 100%;
height: 5px;
background: gray;
border-radius: 5px;
transition: all 0.3s ease-in-out;
}

.container-fluid.mx-0{
margin-bottom: -80px;
}


.alert-success{
position: absolute;
width: 95%;
top: 40%;
text-align: center;
font-size: 1rem;
z-index: 999;
}
.messageBook {
width: 95%;
position: absolute;
top: 19%;
font-size: 1rem;
z-index: 999;
}
.messagePanier {
width: 95%;
position: absolute;
top: 19%;
font-size: 1rem;
z-index: 999;
}

.main-logo{
width: 166px;
position: relative;
z-index: 201;
}
.col-md-2{
width: inherit;
}

.main-logo.bas img{
width: 70%;
position: relative;
top: 8px;
margin-left: 9%;
}

.hamburger-container{
width: 80px;
position: absolute;
top: 2px;
right: 9px;
z-index: 500;
}
.hamburger-menu{
position: relative;
left: 0px;
height:29px;
width: 29px;
}

.hamburger-image{
width: 20px;
}
.hamburger-menu.open span:nth-child(1) {
transform: translateY(7px) rotate(45deg);
}
.hamburger-menu.open span:nth-child(3) {
transform: translateY(-5px) rotate(-45deg);
}

.menu ul {
width: auto;
position: relative;
top: 50px;
padding-left: 10px;
}
.menu.active ul li a{
position: relative;
margin-top: 9%;
right: inherit;
padding: 2px;
border: none;
}

.menu.active{
width: 100%;
height: 550px;
z-index: 200;
}

.menu ul li a{
padding: 0px;
position: relative;
margin-top: 2px;
border: none;
}

.textIntro{
display: none;
}
.row h1.text-intro {
font-size: 0.75rem;
}

.compoVideo {
width: 122%;
top: -13px;
left: -28px;
}
.videoExt {
flex: 0 0 auto;
width: 46%;
--bs-gutter-y: -100px;
top: 100px;
}
.video-wrapper {
height: 53%;
}

h3.titreVideo {
font-size: 0.8rem;
}

.jeneveux, .legende{
position: relative;
font-size: 0.6rem;
}

.imagesExterieures_droite {
position:absolute;
top:199px;
width:220px;
height: 250px;
left:222px;
}
.imagesExterieures_gauche {
position:relative;
top:0px;
left:-20px;
width:220px;
height: 250px;
}

/************** IMAGE POPUP ******************/
#imagePopup {
position: fixed;
top: 0;
left: 0;
width: 100%;
height: 100%;
z-index: 1050;
}

.popup-overlay {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
background: rgba(0, 0, 0, 0.75);
}

.popup-content {
position: relative;
top: 43%;
left: 50%;
transform: translate(-50%, -50%);
max-width:102%;
max-height: 90%;
z-index: 1060;
}

.popup-content img {
width: 100%;
height: auto;
border-radius: 10px;
/*box-shadow: 0 0 20px #000;*/
}

.close-popup {
position: absolute;
top: -10px;
right: 0px;
background: #fff;
color: #000;
font-size: 28px;
font-weight: bold;
padding: 0 22px;
border-radius: 50%;
cursor: pointer;
z-index: 1061;
box-shadow: 0 0 10px #000;
}
/*****************************************/
 #bookCarouselMobile {
    margin-top: 89px;
  }
 img.cover {
    left: 121px;
    height: 25%;
  }
 img.back {
    left: -14px;
    height: 25%;
  }

.formulaire {
    top: 63px;
  }
    .col-2 {
        flex: 0 0 auto;
        width: 19.667%;
    }
.textCode{
    position: relative;
    left: -5px;
}

.panier2, .instagramExt {
width: 40% !important;
text-align: center;
position: relative;
left: -90px;
column-gap: Opx;
}
.panier2{
left: 7%;
}
.instagram{
position: relative;
top: -20px;
}

.fixed-image {
height: 400px;
width: auto;
position: absolute;
top: 50%;
transform: translateY(-50%);
z-index: 10;
}

/* Position des images */
.imagesExterieures_gaucheMobile {
left: 0px;
top: 205px;
width: 50%;
height: 230px;
object-fit: cover;
}

.imagesExterieures_droiteMobile {
margin-right: 97px;
top: 205px;
left:49%;
width: 50%;
height: 230px;
object-fit: cover;
}

h6.col-8 {
width: 70%;
left: 8%;
}

.shorts{
width: 100%;

margin-right: 0px;
}
.short-border {
text-align: center;
border-right:none !important;
}
.footer-menu{
text-align: center;
}
.myBorder{
width: 80%;
position: relative;
margin-top: 10px;
margin-bottom: 10px;
margin-left: auto;
margin-right:auto ;
border-bottom: 2px solid grey;
}
.logo.bas {
position: relative;
top:3px;
}
.logo.bas img{
width: 50%;
} 
.copyZooExt {
width: 97%;
}
.footer-menu h5.nacreala {
font-size: 1rem;
}
#footer .footer h5 {
padding-right: 0px;
}
.footerInt{
display: flex;
justify-content: center;
}
.footer .row {
flex-direction: column;
text-align: center;
}

.footer h5 {
font-size: 1rem;
}
.footer-menu h5 {
font-size: 0.94rem;
}

.row.align-content-center.instaFooter{
flex-direction: unset;
position: relative;
top: 20px;
}
.row.align-content-center.instaFooter h6{
width: 75%;
text-align: left;
}
.row.align-content-center.instaFooter img{
width: 18%;
}

.decouvrir {
width: 130%;
position:relative;
margin-left: -28px;
}
h1.mentionsLegales {
top: -12px;
font-size: 1.2rem;
}
h1.politique {
top: -12px;
font-size: 1.2rem;
}
h1.nacreale {
position: relative;
top: 14px;
font-size: 18px;
}
.textNacreale h5{
font-size: 1rem;
}
a h5.conceptionContent {
font-size: 0.92rem;
}

.row .troisImg {
left: 61px;
}

.container.contactContaint {
display:unset
}

.castor::before {
width: 100px;
height: 300px;
}
.castor {
position: absolute;
top: 750px;
left:27px;
transform: translateY(-50%);
}
.flamant::after {
width: 74px;
height: 273px;
}
.flamant {
position: relative;
top: 170px;
margin-left: 163px;
transform: translateY(-50%);
}

.contactForm .col-10{
width: 100%;
}
.contactForm button{
font-size: 1.3rem;
}

#buttonsContainer button{
min-width: 100%;
}

/* PANIER */
.cartExt h1{
font-size: 1rem;
}

.prixUnitaireMobile{
position: relative;
left:0px;
font-size: 9px;
}
.sousTotalMobile{
position: relative;
left:0px;
font-size: 9px;
}
.nombreUnitMobile{
width: 25%;
font-size: 10px;
}
.sousTNombreMobile{
width: 25%;
font-size: 10px;
}
.expedition-title h5 {
font-size: 0.64rem;
}

p.panierVide {
width: 100%;
position: relative;
top: 150px;
color: white;
}

.choixZone {
font-size: 13px;
}
#shipping_zone {
width: 100%;
position: relative;
left: -10px;
font-size: 13px;
}
/************ TABLE *****************/


table.table {
table-layout: fixed;
width: 100%;
font-size: 0.5rem;
}

.table th.sousTQ_TXT {
font-size: 8px;
}
.sousNB {
font-size: 8px;
left: 0px;
}
.sousTP {
font-size: 8px;
width: 100%;
left: -16px;
}

.totalShipping {
position: relative;
font-size: 8px;
width: 116%;
}
tfoot {
display: inline-block;
width: 100%;
position: relative;
left: 0px;
}

#buttonsContainer a.btn {
width: 100%;
height: 35px;
position: relative;
font-size: 14px;
}

}





/************************ 272px *******************************
*************************************************************
**************************************************************************/

@media screen and (max-width: 272px) {
  h3.titreVideo {
    font-size: 0.6rem;
  }
}






/************************ 260px *******************************
*************************************************************
**************************************************************************/

@media screen and (max-width: 260px) {
.main-logo img {
width: 80%;
left: -5px;
position: relative;
}

.hamburger-container {
width: 87px;
position: absolute;
right: 9px;
z-index: 500;
}
.hamburger-menu {
position: relative;
left: 0px;
height: 34px;
}
.hamburger-menu span {
display: block;
width: 100%;
height: 5px;
background: gray;
border-radius: 5px;
transition: all 0.3s ease-in-out;
}

.container-fluid.mx-0{
margin-bottom: -80px;
}

.alert-success{
position: absolute;
width: 95%;
top: 40%;
text-align: center;
font-size: 1rem;
z-index: 999;
}
.messageBook {
width: 95%;
position: absolute;
top: 19%;
font-size: 1rem;
z-index: 999;
}
.messagePanier {
width: 95%;
position: absolute;
top: 19%;
font-size: 1rem;
z-index: 999;
}

.main-logo{
width: 166px;
position: relative;
z-index: 201;
}
.col-md-2{
width: inherit;
}

.main-logo.bas img{
width: 70%;
position: relative;
top: 8px;
margin-left: 9%;
}

.hamburger-container{
width: 80px;
position: absolute;
top: 2px;
right: 9px;
z-index: 500;
}
.hamburger-menu{
position: relative;
left: 0px;
height:29px;
width: 29px;
}

.hamburger-image{
width: 20px;
}
.hamburger-menu.open span:nth-child(1) {
transform: translateY(7px) rotate(45deg);
}
.hamburger-menu.open span:nth-child(3) {
transform: translateY(-5px) rotate(-45deg);
}

.menu ul {
width: auto;
position: relative;
top: 50px;
padding-left: 10px;
}
.menu.active ul li a{
position: relative;
margin-top: 9%;
right: inherit;
padding: 2px;
border: none;
}

.menu.active{
width: 100%;
height: 550px;
z-index: 200;
}

.menu ul li a{
padding: 0px;
position: relative;
margin-top: 2px;
border: none;
}

.textIntro{
display: none;
}
.row h1.text-intro {
font-size: 0.68rem;
}

.videoExt {
width: 49%;
--bs-gutter-y: -137px;
top: 150px;
}

h3.titreVideo {
font-size: 0.8rem;
top: -38px;
}
.video-wrapper {
height: 45%;
}

.jeneveux, .legende{
position: relative;
font-size: 0.6rem;
}

.imagesExterieures_droite {
position:absolute;
top:199px;
width:220px;
height: 250px;
left:222px;
}
.imagesExterieures_gauche {
position:relative;
top:0px;
left:-20px;
width:220px;
height: 250px;
}

/************** IMAGE POPUP ******************/
#imagePopup {
position: fixed;
top: 0;
left: 0;
width: 100%;
height: 100%;
z-index: 1050;
}

.popup-overlay {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
background: rgba(0, 0, 0, 0.75);
}

.popup-content {
position: relative;
top: 43%;
left: 50%;
transform: translate(-50%, -50%);
max-width:102%;
max-height: 90%;
z-index: 1060;
}

.popup-content img {
width: 100%;
height: auto;
border-radius: 10px;
}

.close-popup {
position: absolute;
top: -10px;
right: 0px;
background: #fff;
color: #000;
font-size: 28px;
font-weight: bold;
padding: 0 22px;
border-radius: 50%;
cursor: pointer;
z-index: 1061;
box-shadow: 0 0 10px #000;
}
/*****************************************/
 img.cover {
    left: 113px;
    height: 22%;
  }
 img.back {
    left: -14px;
    height: 22%;
  }

.panier2, .instagramExt {
width: 40% !important;
text-align: center;
position: relative;
left: -90px;
column-gap: Opx;
}
.panier2{
left: 7%;
}
.instagram{
position: relative;
top: -20px;
}

.fixed-image {
height: 400px;
width: auto;
position: absolute;
top: 50%;
transform: translateY(-50%);
z-index: 10;
}

/* Position des images */
.imagesExterieures_gaucheMobile {
left: 0px;
top: 205px;
width: 50%;
height: 230px;
object-fit: cover;
}

.imagesExterieures_droiteMobile {
margin-right: 97px;
top: 205px;
left:49%;
width: 50%;
height: 230px;
object-fit: cover;
}

h6.col-8 {
width: 70%;
left: 8%;
}

.formulaire {
left: -2px;
}
.formulaire img {
width: 60%;
}
img.formBasket {
width: 100%;
}
.formCol2 button.imgpanier h5 {
font-size: 0.6rem;
top: -1px;
}

.shorts{
width: 100%;

margin-right: 0px;
}
.short-border {
text-align: center;
border-right:none !important;
}
.footer-menu{
text-align: center;
}
.myBorder{
width: 80%;
position: relative;
margin-top: 10px;
margin-bottom: 10px;
margin-left: auto;
margin-right:auto ;
border-bottom: 2px solid grey;
}
.logo.bas {
position: relative;
top:3px;
}
.logo.bas img{
width: 111px;
}
.footer-menu h5.nacreala {
font-size: 1rem;
}
#footer .footer h5 {
padding-right: 0px;
}
.footerInt{
display: flex;
justify-content: center;
}
.footer .row {
flex-direction: column;
text-align: center;
}
.instaFooter img {
width: 15%;
position: relative;
top: 0px;
}
.footer h5 {
font-size: 1rem;
}
.footer-menu h5 {
font-size: 0.94rem;
}

.row.align-content-center.instaFooter{
flex-direction: unset;
position: relative;
top: 20px;
}
.row.align-content-center.instaFooter h6{
width: 75%;
text-align: left;
}
.row.align-content-center.instaFooter img{
width: 18%;
}

.decouvrir {
width: 130%;
position:relative;
margin-left: -28px;
}
h1.mentionsLegales {
top: -12px;
font-size: 1.2rem;
}
h1.politique {
top: -12px;
font-size: 1.2rem;
}
h1.nacreale {
position: relative;
top: 14px;
font-size: 18px;
}
.textNacreale h5{
font-size: 1rem;
}
a h5.conceptionContent {
font-size: 0.92rem;
}
.row .troisImg {
left: 42px;
width: 54%;
}

.copyZoo {
font-size: 1.2rem;
}   
.container.contactContaint {
display:unset
}

.castor::before {
width: 100px;
height: 300px;
}
.castor {
position: absolute;
left:27px;
transform: translateY(-50%);
}
.flamant::after {
width: 74px;
height: 273px;
}
.flamant {
position: relative;
margin-left: 163px;
transform: translateY(-50%);
}

.contactForm .col-10{
width: 100%;
}
.contactForm button{
font-size: 1.3rem;
}

#buttonsContainer button{
min-width: 100%;
}

/* PANIER */
.cartExt h1{
font-size: 1rem;
}

.prixUnitaireMobile{
position: relative;
left:0px;
font-size: 9px;
}
.sousTotalMobile{
position: relative;
left:0px;
font-size: 9px;
}
.nombreUnitMobile{
width: 25%;
font-size: 10px;
}
.sousTNombreMobile{
width: 25%;
font-size: 10px;
}
.expedition-title h5 {
font-size: 0.64rem;
}

p.panierVide {
width: 100%;
position: relative;
top: 150px;
color: white;
}

.choixZone {
font-size: 13px;
}
#shipping_zone {
width: 100%;
position: relative;
left: -10px;
font-size: 13px;
}
/************ TABLE *****************/
.table th.sousTQ_TXT {
font-size: 8px;
}
.sousNB {
font-size: 8px;
left: 0px;
}
.sousTP {
font-size: 8px;
width: 100%;
left: -16px;
}

.totalShipping {
position: relative;
font-size: 8px;
width: 116%;
}

#buttonsContainer a.btn {
width: 100%;
height: 35px;
position: relative;
font-size: 14px;
}
}




/************************ 240px *******************************
*************************************************************
**************************************************************************/

@media screen and (max-width: 240px) {

.main-logo img {
width: 80%;
left: -5px;
position: relative;
}

.hamburger-container {
width: 87px;
position: absolute;
right: 9px;
z-index: 500;
}
.hamburger-menu {
position: relative;
left: 0px;
height: 34px;
}
.hamburger-menu span {
display: block;
width: 100%;
height: 5px;
background: gray;
border-radius: 5px;
transition: all 0.3s ease-in-out;
}

.container-fluid.mx-0{
margin-bottom: -80px;
}

.alert-success{
position: absolute;
width: 95%;
top: 40%;
text-align: center;
font-size: 1rem;
z-index: 999;
}
.messageBook {
width: 95%;
position: absolute;
top: 19%;
font-size: 1rem;
z-index: 999;
}
.messagePanier {
width: 95%;
position: absolute;
top: 19%;
font-size: 1rem;
z-index: 999;
}

.main-logo{
width: 166px;
position: relative;
z-index: 201;
}
.col-md-2{
width: inherit;
}

.main-logo.bas img{
width: 70%;
position: relative;
top: 8px;
margin-left: 9%;
}

.hamburger-container{
width: 80px;
position: absolute;
top: 2px;
right: 9px;
z-index: 500;
}
.hamburger-menu{
position: relative;
left: 0px;
height:29px;
width: 29px;
}

.hamburger-image{
width: 20px;
}
.hamburger-menu.open span:nth-child(1) {
transform: translateY(7px) rotate(45deg);
}
.hamburger-menu.open span:nth-child(3) {
transform: translateY(-5px) rotate(-45deg);
}

.menu ul {
width: auto;
position: relative;
top: 50px;
padding-left: 10px;
}
.menu.active ul li a{
position: relative;
margin-top: 9%;
right: inherit;
padding: 2px;
border: none;
font-size: 1.1rem;
}

.menu.active{
width: 100%;
height: 550px;
z-index: 200;
}

.menu ul li a{
padding: 0px;
position: relative;
margin-top: 2px;
border: none;
}

.d-flex{
width: 118%;
padding: 0px;
}

.textIntro{
display: none;
}
.row h1.text-intro {
font-size: 0.65rem;
left: 0px;
}
.row h1.text-introMobile {
font-size: 0.65rem;
left: 0px;
}

.compoVideo {
width: 122%;
}
.col-6 {
flex: 0 0 auto;
width: 49%;
}

h3.titreVideo {
font-size: 0.54rem;
top: -34px;
left: 0px;
}

.jeneveux, .legende{
position: relative;
font-size: 0.56rem;
}

.imagesExterieures_droite {
position:absolute;
top:199px;
width:220px;
height: 250px;
left:222px;
}
.imagesExterieures_gauche {
position:relative;
top:0px;
left:-20px;
width:220px;
height: 250px;
}

/************** IMAGE POPUP ******************/
#imagePopup {
position: fixed;
top: 0;
left: 0;
width: 100%;
height: 100%;
z-index: 1050;
}

.popup-overlay {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
background: rgba(0, 0, 0, 0.75);
}

.popup-content {
position: relative;
top: 43%;
left: 50%;
transform: translate(-50%, -50%);
max-width:102%;
max-height: 90%;
z-index: 1060;
}

.popup-content img {
width: 100%;
height: auto;
border-radius: 10px;
}

.close-popup {
position: absolute;
top: -10px;
right: 0px;
background: #fff;
color: #000;
font-size: 28px;
font-weight: bold;
padding: 0 22px;
border-radius: 50%;
cursor: pointer;
z-index: 1061;
box-shadow: 0 0 10px #000;
}
/*****************************************/
 img.cover {
    left: 107px;
    height: 16%;
  }
 img.back {
    left: -14px;
    height: 16%;
  }

.panier2, .instagramExt {
width: 40% !important;
text-align: center;
position: relative;
left: -90px;
column-gap: Opx;
}
.panier2{
left: 7%;
}
.instagram{
position: relative;
top: -20px;
}

.fixed-image {
height: 400px;
width: auto;
position: absolute;
top: 50%;
transform: translateY(-50%);
z-index: 10;
}

/* Position des images */
.imagesExterieures_gaucheMobile {
left: 0px;
top: 205px;
width: 50%;
height: 230px;
object-fit: cover;
}

.imagesExterieures_droiteMobile {
margin-right: 97px;
top: 205px;
left:49%;
width: 50%;
height: 230px;
object-fit: cover;
}

h6.col-8 {
width: 70%;
left: 8%;
}

.shorts{
width: 100%;

margin-right: 0px;
}
.short-border {
text-align: center;
border-right:none !important;
}
.footer-menu{
text-align: center;
}
.myBorder{
width: 80%;
position: relative;
margin-top: 10px;
margin-bottom: 10px;
margin-left: auto;
margin-right:auto ;
border-bottom: 2px solid grey;
}
.logo.bas {
position: relative;
top:3px;
}
.logo.bas img{
width: 111px;
}
.footer-menu h5.nacreala {
font-size: 1rem;
}
#footer .footer h5 {
padding-right: 0px;
}
.footerInt{
display: flex;
justify-content: center;
}
.footer .row {
flex-direction: column;
text-align: center;
}
.instaFooter img {
width: 15%;
position: relative;
top: 0px;
}
.footer h5 {
font-size: 1rem;
}
.footer-menu h5 {
font-size: 0.94rem;
}

.row.align-content-center.instaFooter{
flex-direction: unset;
position: relative;
top: 20px;
}
.row.align-content-center.instaFooter h6{
width: 75%;
text-align: left;
}
.row.align-content-center.instaFooter img{
width: 18%;
}

.decouvrir {
width: 130%;
position:relative;
margin-left: -28px;
}
h1.mentionsLegales {
top: -12px;
font-size: 1.2rem;
}
h1.politique {
top: -12px;
font-size: 1.2rem;
}
h1.nacreale {
position: relative;
top: 14px;
font-size: 18px;
}
.textNacreale h5{
font-size: 1rem;
}
a h5.conceptionContent {
font-size: 0.92rem;
}

.row .troisImg{
width: 70%;
flex-direction: row;
top: 0px;
left: 18%;
}
.copyZoo {
font-size: 1.2rem;
}   
.container.contactContaint {
display:unset
}

.castor::before {
width: 100px;
height: 300px;
}
.castor {
position: absolute;
top: 752px;
left:27px;
transform: translateY(-50%);
}
.flamant::after {
width: 74px;
height: 273px;
}
.flamant {
position: relative;
top: 167px;
left: -25px;
margin-left: 163px;
transform: translateY(-50%);
}

.contactForm .col-10{
width: 100%;
}
.contactForm button{
font-size: 1.3rem;
}

#buttonsContainer button{
min-width: 100%;
}

/* PANIER */
.cartExt h1{
font-size: 1rem;
}

.prixUnitaireMobile{
position: relative;
left:0px;
font-size: 9px;
}
.sousTotalMobile{
position: relative;
left:0px;
font-size: 9px;
}
.nombreUnitMobile{
width: 25%;
font-size: 10px;
}
.sousTNombreMobile{
width: 25%;
font-size: 10px;
}
.expedition-title h5 {
font-size: 0.64rem;
}

p.panierVide {
width: 100%;
position: relative;
top: 150px;
color: white;
}

.choixZone {
font-size: 0.8rem;
}
#shipping_zone {
width: 100%;
position: relative;
left: -10px;
font-size: 13px;
}
/************ TABLE *****************/
.titresTable{
width: 30%;
font-size: 0.3rem;
}

table.table {
table-layout: fixed;
width: 100%;
font-size: 0.5rem;
}
.table tbody tr {
left: -30px;
position: relative;
width: 130%;

}
.table th.sousTQ_TXT {
font-size: 8px;
}
.sousNB {
font-size: 8px;
left: 0px;
}
.sousTP {
font-size: 8px;
width: 100%;
left: -16px;
}
.shippingCostNb {
position: relative;
font-size: 8px;
left: 20%;
}
.totalShipping {
position: relative;
font-size: 8px;
width: 116%;
}
tfoot {
display: inline-block;
width: 118%;
position: relative;
left: -11%;
}

#buttonsContainer a.btn {
width: 100%;
height: 35px;
position: relative;
font-size: 14px;
}
}
