/* Init class reset */
body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,form,fieldset,input,textarea,p,blockquote,th,td{ margin:0; padding:0;}
fieldset,img{ border:0;}
address,caption,cite,code,dfn,var{ font-style:normal; font-weight:normal;}
ol,ul{ list-style:none;}
h1,h2,h3,h4,h5,h6{ font-size:100%; font-weight:normal;}
q:before,q:after{ content:'';}
abbr,acronym{ border:0;}
/* NEW */ *, *::before, *::after { box-sizing: border-box; }
body,button,input,select,textarea{font-family:Helvetica Neue,Arial,sans-serif; line-height:1.5;}
html {height: 100%; margin: 0; padding: 0;}
body {margin:0;  padding:0; width: 100%; height: 100%;
    background: white; display: flex; flex-direction: column;

}

.invoice tr:hover {
    background-color: #f4f2f5; /* Change this to the color you want */
    cursor: pointer;
}

.invoice {
    width: 100%; margin-top: 50px; font-size: 90%;
    letter-spacing: 1px;
    font-weight: 200;
    text-align: center;
    border-collapse: separate;
    border-spacing: 8px;
}

:root {
    --club-color: #542C5E;
}

:target, h1, h2, h3 { scroll-margin-top: 210px; }


@keyframes fadeIn {
    0% { opacity: 0; }
    100% { opacity: 1; }
}
/* NEW: reduced motion */
@media (prefers-reduced-motion: reduce) {
    *, *::before, *::after {
        animation-duration: 0.01ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: 0.01ms !important;
    }
}

a {text-decoration:none; color:var(--club-color); }
a:hover { text-decoration: underline; }
/* NEW: focus visible */
a:focus-visible, button:focus-visible, .btn:focus-visible {
    outline: 2px solid currentColor;
    outline-offset: 2px;
}

.very_small {font-size: 70%;}
.curseur {cursor: pointer;}
.alert {color: red; width: auto;}
.alert_on {display: inline-block;}
.alert_off {display: none;}

pre {background-color: var(--club-color); color: white;}

/*BANNIERE */
.dev {
    opacity: 0.25;
    background: #fff500;
    transform: skewY(344deg);
    width: 25%;
    padding-left: 100px;
    color: black;
    position: fixed;
    font-size: 20px;
}

.preprod {
    opacity: 0.65;
    background: #ff001d;
    transform: skewY(344deg);
    width: 25%;
    padding-left: 100px;
    color: black;
    position: fixed;
    font-size: 20px;
}

.prod {
    display: none;
}


/*Forumlaire contact, club, newsletter*/
fieldset { border:2px solid grey; padding: 10px; margin: 10px }
input[type=submit] { border: none;}
input[type=text],input[type=email],input[type=password], input[type=tel] { padding: 0; border: none; border-bottom: dotted 1px black; transition: border 0.3s; width: 80%;}
textarea { width: 80%; padding: 0; border: dotted 1px black; transition: border 0.3s; margin-bottom: 10px; }
input[type=radio] { margin-left:5px; margin-right:2px;}
input {margin-top:15px;}
select {margin-top: 5px; margin-bottom: 5px; display: inline-block;}
label {font-size: 100%; text-align: left; display: inline-block; width: 15%; text-transform: uppercase;}
label#textarea {vertical-align: top;}
label#radio {font-size: 60%; text-align: left; vertical-align: middle; width: 100px;}
/* NEW: neutraliser le letter-spacing global dans les champs */
button, input, select, textarea, label { letter-spacing: normal; }

input#search {margin: 0; width: 190px;}

/* Search form in header: icon inside input */
.search-form {
    position: relative;
    display: inline-block;
}

.search-form input[type="search"],
.search-form input#search {
    padding-right: 30px; /* espace à droite pour la loupe */
}

.search-form button {
    position: absolute;
    right: 8px;
    top: 60%;
    transform: translateY(-60%);
    border: none;
    background: transparent;
    cursor: pointer;
    padding: 0;
}
input[type="text"]#search_page {margin: 0; width: 100%; height: 20px;}

input[type="text"]#search_page, #search {
    padding: 4px;
    border: solid 1px #dcdcdc;
    transition: box-shadow 0.3s, border 0.3s;
}
input[type="text"]#search_page:focus,
input[type="text"]#search_page.focus,
input[type="text"]#search:focus,
input[type="text"]#search.focus {
    border: solid 1px #707070;
    box-shadow: 0 0 5px 1px #969696;
}

::-webkit-input-placeholder {
    font-size: 70%;
    letter-spacing:  1px;
}

:-moz-placeholder { /* Firefox 18- */
    font-size: 70%;
    letter-spacing:  1px;
}

::-moz-placeholder {  /* Firefox 19+ */
    font-size: 70%;
    letter-spacing:  1px;
}

/* Balises block */
p,  h5, span {font-size:100%; letter-spacing: 1px; font-weight: 200;}
h1 {
    text-align: center;
    margin: 50px 0 17px 10px;
    font-weight: 300;
    font-size: 170%;
    text-transform: uppercase;
    color: var(--club-color);
}
h2 {font-size:130%; text-align: center; margin-bottom: 40px; margin-top: 40px; font-weight: 300;}
h3 {font-size:130%; text-align: center; margin-bottom: 15px; margin-top: 15px; text-transform: uppercase;}
h4 {font-size:110%; margin-top: 5px; margin-bottom: 5px;}
h5 {margin-top: 5px; margin-bottom: 5px; text-align: center;}
h6 {margin-top: 0; margin-bottom: 0; text-align: center;}
p, span { line-height: 1.4em;}
p a { text-decoration: none; font-weight: bold; }
hr {border: 0; height: 1px; background: #CCC; display: block; margin-bottom: 2px; margin-top: 10px;width: 60%;}
/* REPLACED: variantes minimalistes */
hr.club  { width: 100%; margin: 30px 0 20px; }

/* Classes des images */
.alignleft{ display:inline; float:left;}
.aligncenter{ clear:both; display:block; margin: 20px auto 20px auto;}
.alignright{ display:inline; float:right;}
.size-auto{height: auto; width: auto; }
.size-tiny{width: 15%;}
.size-small{width: 25%;}
.size-medium{width: 50%;}
.size-large{width: 75%;}
.size-full{width: 100%;height: auto;}

/* classe des textes */
.texte_center{text-align: center !important;}
.texte_left{text-align: left !important;}
.texte_right{text-align: right !important;}
.bold {font-weight: bold !important;}
.uppercase {text-transform: uppercase !important;}
.lightweight {font-weight: 200 !important;}
.large {font-size: 110%;}

img, object, video, embed {max-width: 100%;}
.image_article {max-width: 80%; margin-right: 10%; margin-left: 10%;}



header {width:100%; position: fixed; top: 0; left: 0; right: 0;
    z-index: 4; color: white; margin-bottom: 10px;
    padding-bottom: 20px;
    background-color: var(--club-color);}

/* Barre d'information au dessus menu dans le header */
.header-info {
    background-color: black;
    text-align: center;
    font-size: 100%;
    letter-spacing: 1px;
    margin-bottom: 10px;
    text-transform: uppercase;
}

header a{ text-decoration:none; color:white;  }

footer {font-size: 70%; text-align: center; width: 100%; letter-spacing: 1pt; margin-top: auto; padding: 20px 0;}
footer a{text-decoration:none; color:white; font-weight: 300;}
footer a:hover {text-decoration: underline;}

.container {
    width:100%; background-color: white; padding: 100px 0 0 0 ;
}

.page-ophl {margin-left: 10px; margin-right: 10px; margin-bottom: 20px;}
.logolafont {
    display: inline-block;
    width: 100%;
    background-color: var(--club-color);
    text-align: center;
}

.btn {color: #ffffff; padding: 8px 15px 6px 15px; letter-spacing: 1pt; margin: 10px;
    background: var(--club-color); text-decoration: none; border: none; cursor: pointer;}

.btn a {color : #ffffff; width: 100%; height: 100%; display: block;}
.btn:hover {text-decoration: underline;}

.mon_panier {float: right !important; vertical-align: middle; padding-top: 4px; padding-right: 10px;}
.trie {color: var(--club-color); padding-top: 4px;font-weight: 700; font-size: 70%; text-transform: uppercase; margin-top: 10px; text-align: right;}
.retour {font-weight: 700; font-size: 70%; text-transform: uppercase; float: right !important; border: 1px ridge var(--club-color); padding: 5px;}
.retour_article {font-weight: 700; font-size: 70%; text-transform: uppercase;
    float: left !important; position: absolute; top: 140px; left: 10px;
    border: 1px ridge var(--club-color); padding: 5px;}
.thumb {max-width: 100%;  }


/*PAGE ACCUEIL*/

/* COLLECTION CARDS AS BACKGROUNDS */
.collections-grid { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 30px 50px; justify-items: stretch; width: 60%; margin: 30px auto; }
.collections-grid > a { display: block;}

/* Ensure the card has a box to paint the background */
.collection { position: relative; display: block;  aspect-ratio: 1/1; overflow: hidden;
    background-size: cover; background-position: center center; background-repeat: no-repeat;  }


/* Title bottom-left */
.titre-collection { position: absolute; left: 0; bottom: 0; width: 100%; padding: 4px;  }
.titre-collection h2 { color: #ffffff; text-align: center; padding: 0; margin: 0; font-size: 100%; font-weight: 400; text-transform: uppercase;  letter-spacing: 1pt; }
.titre-collection h2:hover { text-decoration: underline; }


.image-col-1 img {
    width: 100%;
    height: auto;
    display: block;
}

.vert { background-color: #056762;}
.beige {  background-color: #c9b38d;}


/*PANIER */
.valid_panier {padding-top: 4px; font-weight: 500; font-size: 80%; text-transform: uppercase;}
.valid_panier a{text-decoration:none; color: white;}
input[type="text"].qte {width: 15px;}
.terminer { float: right !important; }
.continuer { float: left !important; }
.panier {font-size: 100%; border-spacing:10px; border-collapse: separate;}
p.panier {text-align: left;}
.head_panier {color: black; background:#f7f6f2; text-transform: uppercase; padding: 5px; font-size: 80%;}
td.commentaire {margin-top:1px; vertical-align: top;}
td.commentaire  input[type="text"] {width: 100%;}
.panier_img {width: 95%; height: auto;}
.panier_td {width: 20%; padding: 0;}
td.del {padding: 0; margin: 0;}
.del { padding-bottom:  0; width: 20px; height:20px; display:inline-block;}

.adresses {display: inline-block; width: 25%; font-size: 100%;}

/*MES ACTIVITE*/
.order {  width: 100%;  text-align: center; }

/*MON COMPTE*/
.coords {display: inline-block; width: 48.8%;}
.coords label {width: auto; font-size: 70%; font-weight: bold; text-transform: uppercase; letter-spacing: 0.5px;}
.coords input {width: 100%; font-size: 70%; font-weight: lighter; color: #593663;}
.separate {display: inline-block; width: 1%;}
.access {width: 100%;}
.access label{width: 15%;}
.access input {width: 84%;}
.access input[type="submit"] {width: auto;}

.newsletter {width: 100%;}

.mag label {width: auto; font-size: 70%; font-weight: 700; text-transform: uppercase; margin-bottom: 10px;}
.mag input {width: 100%; font-size: 90%; font-weight: lighter; color: #593663;}


.info_session { line-height: 15pt; padding-left:10px; padding-bottom:2px; font-weight: 100; font-size: 90%;}



.social {
    display: flex;
    justify-content: space-evenly;
    align-items: center;
    margin: 4%;
    flex-wrap: nowrap;
    gap: 10px;
}
.social img {width: 30px;}
/* Nav horizontale — version unique et propre */
nav.nav--horizontal{
    width: 100%;
    margin: 0 auto;
    padding: 2px 0 3px 0;
    justify-content: space-evenly;
    display: flex;
    align-items: flex-end;
    font-size: 95%;
}


/* Bloc infos à gauche (optionnel) */
nav.nav--horizontal .info_session {
    line-height: 1.2;
    padding: 0 8px 0 0;
    font-size: 90%;
    white-space: nowrap;
}


/* Menus en ligne */
nav.nav--horizontal ul {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    align-items: flex-end;
}

nav.nav--horizontal ul.menu {
    flex-wrap: wrap;        /* passe à la ligne si pas la place */
    gap: 10px 14px;
}

/* Items et liens */
nav.nav--horizontal ul li {
    padding: 0;
    line-height: normal;
}

nav.nav--horizontal ul li a {
    padding: 4px ;
    color: #fff;            /* tes liens étaient déjà blancs */
    text-decoration: none;
    font-weight: 300;
    letter-spacing: 1pt;
}

nav.nav--horizontal .current-menu-item a { font-weight: 700; }

/* Mobile: resserrer et autoriser le wrap */
@media (max-width: 800px) {
    nav.nav--horizontal { padding: 6px 8px; gap: 8px; }
    nav.nav--horizontal ul.menu { gap: 8px 10px; }
    nav.nav--horizontal .info_session { display:none; } /* si trop serré */
}

/*MENU AFFINER*/
.menu_affiner {display: none; color: var(--club-color); width: 100%; background: white; border-width:  1px; border-style: none; margin-top: 10px;
    font-size: 13px; letter-spacing: 1pt; padding-top: 20px; text-transform: uppercase; text-align: center;
}

.affiner_on_plus {display: inline-block; color: #ffffff;  background: var(--club-color); text-decoration: none; border: none;
    font-size: 140%; vertical-align: middle; padding-left: 5px; padding-right: 5px; padding-top: 5px;}
.affiner_on_moins {display: inline-block; color: #ffffff; background: var(--club-color); text-decoration: none; vertical-align: middle; border-style: solid; border-width: thin;
    padding-left: 5px; padding-right: 5px; font-size: 140%;}
.affiner_off {display: none;}
.affiner_on {display: inline-block;}

.menu_affiner.show  {display: inline-block;}
.click-affiner {display: inline-block; cursor: pointer; margin-top: 30px; margin-left: 50px;}

.reset {font-size: 100%; font-weight: 700; text-transform: uppercase;}
.affiner_hr {margin-bottom: 20px;}
.search_hint {text-transform: uppercase; line-height: 1.4em;font-size: 70%; font-weight: 200; margin-bottom: 5px;}
.critere {display: inline-block; text-align: left; width: 25%;}
.critere_label {text-decoration:none;text-transform:uppercase;color:black; font-size: 100%; font-weight:700; line-height: 7pt;}
/*OUTILS MEDIA*/

ul.menu_media {text-align: center; width: 100%;}
.menu_media li {display: inline; }
.menu_media li a{ text-decoration:none; font-weight: 200;}
.menu_media li a:hover {font-weight: 200; color:white; background-color:var(--club-color);}
.menu_media li a.selected {font-weight: 200; color:white; background-color:var(--club-color); }
.media_titre {font-size: 70%; text-transform: uppercase; border: 1px ridge var(--club-color); padding: 5px;}

/*MOSAIQUE */

.mosaic {display: flex; flex-wrap: wrap; justify-content: center; align-items: center; gap: 30px 15px;}

.mosaique_on {margin-top: 10px;}
.mosaique_off {margin-top: 10px;}

.product-label {
    display: flex;
    gap: 10px;
    align-items: center;
    justify-content: center;
    text-align: center;
    width: 100%;
    margin: 0 ;
    line-height: normal;
}

.icon-left,
.icon-right {
    width: 45px; /* réserve toujours de l'espace même si vide */
    height: 30px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.product-name {
    flex-grow: 1;
    font-weight: bold;
}
.debug {z-index: 9999; position: relative; top: 10px;}

/*PAGE ARTICLE*/

.logo_ofg {

    float: left;
    font-size: 45%;
    font-weight: 400;
    position: absolute;
    top: 200px;
    left: 10px;
}


.article_flex{display: flex; justify-content: center; align-items: center; margin-top: 10px; flex-wrap: wrap;}
.article_flex_col1 {flex-basis: 60%}
.article_flex_col2 {flex-basis: 40%;}
.article_collection {text-transform: uppercase; line-height: 1.4em;font-size: 70%; font-weight: 400;}
.article {text-align: center; margin: 37px 2% 0 2%; }
#currentArticle {background-color: var(--club-color); color: #ffffff; padding: 2px; font-weight: normal;}
.where a{height:8em;text-decoration:none;text-transform:uppercase;color:black; font-size: 70%;}
.where {margin-top: 5px; margin-bottom: 5px; text-align: center; }
.article h1 {text-align: left; margin: 20px 0 0 0;  font-size: 150%; font-weight: 500; color: black;}
.article hr {width: 100%; margin-top: 2px;}
.accroche {text-align: left; line-height: 1.4em; margin-bottom: 5px; margin-top: 2px; }
.accroche p {text-align: left; }
.madeinfrance {text-align: right; text-transform: uppercase; line-height: 1.4em;font-size: 70%; font-weight: 400; margin-bottom: 10px; margin-top: 10px;}
.info_stock  {text-align: left; text-transform: uppercase; line-height: 1.4em;font-size: 70%; font-weight: 400; margin: 10px 0 4px 0; }
.other-size {text-align: right; line-height: 1.8em;font-size: 70%; font-weight: 400; margin-bottom: 10px; margin-top: 10px;}
.share {text-align: center; text-transform: uppercase; line-height: 1.4em;font-size: 70%; font-weight: 400; margin-bottom:1px; margin-top: 20px;}
.SocialArticle {margin-top: 5px; margin-bottom: 11px; width: 100%; text-align: center; padding-left: 5px;}
.noactive { background: url(/img/GRIS_carre1.png)no-repeat; height: 11px; width: 11px; display: inline-block;}
.noactive.active { background: url(/img/GRIS_carre2.png)no-repeat; height: 11px; width: 11px; display: inline-block;}
.fleche {padding-bottom: 1px;}
.change {vertical-align: baseline;}
.ajout_panier {float: left !important; margin: 0;}


.red {color: red !important;}
.en_fab {color: red;}
.info_technique {text-transform: uppercase; text-align: center; margin-bottom: 10px; margin-top: 10px;}
.info_technique a {color: black;}
.info_tech {margin-top: 20px; margin-bottom: 20px; text-transform: none;}
.edi {display: inline-block; text-align: left; width: 30%; line-height: 15pt; margin-left: 10%; font-size: 80%; font-weight: 500; letter-spacing: 1px;}
.image_edi{ margin-top: 1px;}
.info_tech {display: none;}
.info_tech.show  {display: block;}
.other-article {display: inline-block; color:black; font-size: 90%; line-height: 9px; margin-top:5px; margin-bottom: 25px; text-align: center;}
.other-article a {text-decoration:none; text-transform: uppercase; color:black; line-height: 5px; letter-spacing: 0.7px;}
.other-article a:hover {font-weight: bold;}
.other-article a.selected {font-weight: bold;}
.other-article a:active  {font-weight: bold;}
.other-article hr {border: 0; height: 1px; background: #CCC; display: block; margin-bottom: 2px; margin-top: 9px;width: 60%;}
.double_size {display: inline-block; color:black; font-size: 80%; font-weight:500; line-height: 10px; padding-top: 25px; padding-left: 10px; }

.match-article {display: inline-block; color:black; font-size: 100%; line-height: 9px; margin-top:5px; margin-bottom: 25px; text-align: center;}

.article_verre img {  width: 40px; height: 40px; margin: 20px 5px 5px 5px;}
.article_verre p {text-align: center; font-weight: 200; }
.article_verre { padding-bottom: 20px;}
.article_verre_icone {
    display: inline-block; width:30%; vertical-align: top;
    line-height: 15pt; font-size: 80%; font-weight: 400; letter-spacing: 1px; padding:5px;}

.article_verre_icone span { font-weight: 500; }

.icone_verre {
    position: relative;
    top: 120px;
    left: 0;
    z-index: 1000;
    width: 40px;
    height: 40px;
    display: none;
}

#open-popup {padding:20px}
.white-popup {
    position: relative;
    background: #FFF;
    padding: 50px;
    width: auto;
    max-width: 600px;
    margin: 20px 40% 30% 25%;
    /*text-align: center;*/
}

.mfp-close {
    right: 40%;
}
.popup{
    align-items: center;
    display: none;
    position: fixed;
    z-index: 1000;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    overflow: auto;
    background-color: rgb(0,0,0);
    background-color: rgba(0,0,0,0.4);
    justify-content: center;
}
.popup p{
    color: #003f69; letter-spacing: 5px; font-weight: bold;
    line-height: 1.5em; padding: 10%; font-size: 110%; text-align: center; float: left;
}

.popup img{max-width: 45%;}
.popup-buttons {
    width: 100%; /* Prend toute la largeur disponible dans la popup */
    display: flex; /* Pour aligner les boutons côte à côte */
    justify-content: center; /* Centre les boutons horizontalement */
    gap: 15px; /* Espace entre les boutons */
    margin-top: 20px; /* Espace au-dessus des boutons */
}

.popup-buttons button {
    background-color: #F7F6F2; /* Couleur de fond des boutons */
    color: #e64892; /* Couleur du texte des boutons */
    border: none;
    padding: 10px 20px;
    cursor: pointer;
    font-weight: bold;
    border-radius: 5px; /* Bords légèrement arrondis */
    transition: background-color 0.3s ease; /* Transition douce au survol */
}

.popup-buttons button:hover {
    background-color: #d1d1d1; /* Changement de couleur au survol */
}

.popup-content {
    background: #F7F6F2;
    background-size: cover;
    margin: 10% auto;
    padding: 0;
    border: 1px solid #888;
    width: 600px;
    height: 350px;
    text-align: center;
}


/* The Modal (background) */
.modal { display: none; position: fixed; z-index: 555; left: 0; top: 0; right:0; bottom: 0; background-color: rgba(0, 0, 0, 0.6);}

/* Modal Content */
.modal-content {  position: relative; margin: auto; padding: 10%; top: 20%; background-color: white; width: 30%; }
.modal-content img {animation: none; max-width: 100%;  margin: 0;}

.modal-article {
    position: relative;
    margin: 0% 0% 0 10%;
    padding: 5%;
    top: 20%;
    background-color: white;
    width: 50%;
}

/*PAGE INSPIRATION*/
.thomas {display: flex; align-content: space-between; align-items: center; flex-wrap: nowrap; margin-top: 2rem; margin-bottom: 2rem;}
.thomas p {text-align: justify;}
.thomas a {color: #883069;}
.thomas a:hover { text-decoration: underline;}
.thomas-texte { flex-basis: 88%; letter-spacing: 1pt; line-height: 20pt; padding: 1% 1% 1% 1%; font-size: 100%;}
.thomas-texte h1 { padding: 0; margin: 0;}
.thomas-photo { margin: 1% 0 0 6% }
.colorinspi { display: flex; align-content: center; justify-content: space-around; margin:2% 0 2% 0; flex-wrap: wrap;}
.colorinspi img { max-width: 23%; margin: 2%; border-radius: 50%; }

/* BTOP*/
.menu_btop {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    letter-spacing: 1px;
    width: 80%;
    margin: 10% 0 2% 10%;
    gap: 20px;
}

.btn_btop { border: #542C5E solid thin; color: white;
    background-color: #542C5E; padding: 10px;}
.btn_btop:hover, .btn_btop_select { color: #542C5E; background-color: white;}

.menu_activity {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    letter-spacing: 1px;
    width: 80%;
    margin: 2% 0 2% 10%;
    gap: 20px;
}


.head_btop
{
    color: #ffffff; background: var(--club-color); padding: 5px;
}

.head_btop a { color: white; text-transform: none;}

.arrow {
    border: solid white;
    border-width: 0 2px 2px 0;
    display: inline-block;
    padding: 3px;
}
.right {transform: rotate(-45deg);}
.left {transform: rotate(135deg);}
.up {transform: rotate(-135deg);}
.down {transform: rotate(45deg);}

.contenu-lpp p {text-align: left; padding: 5%;}
.contenu-lpp a {font-weight: bold; color: white;}


.lpp h1 {margin: 0;}
.lpp {background-color: #4d2654; color:whitesmoke;}



/*MEDIA QUERIES */
@media screen and (max-width: 999px)
{
    .menuon {display: block;}
    .container {width:100%; padding-top: 100px;}
    header {
        padding:  5px 5px;
    }
    header input#search {
        width: 50%;
    }
    footer {width: 100%; background-color: var(--club-color); padding: 10px 0 10px 0;}
    .search_hint {margin-top: 5px;}
    .page-ophl {margin-left: 10px; margin-right: 10px;}
    h1, .sousmenu  {margin-left: 10px}
    h1 {
        margin-top: 60px;
    }

    .valid_panier {margin-top : 10px;}
    .menu_affiner {
        margin-top: 100px;
        padding-left: 5px;
        padding-right: 5px;
    }
    #menu_affiner .critere {
        display: block;
        width: 100%;
    }
    #menu_affiner .critere .critere_label {
        display: inline-block;
    }
    .popup p{

        font-size: 80%;
    }

    .filter#un {margin-right: 3%;}
    .filter#deux {margin-right: 3%;}
    .article_flex_col1 {flex-basis: 100%;}
    .article_flex_col2 {flex-basis: 100%;}
    .collection {width: 100%;}
    .collections-grid { width: 80%;  grid-template-columns: repeat(2, minmax(0,1fr)); gap: 30px 50px;  justify-content: center; }
}


@media screen and (min-width: 1000px)
{
    .page-ophl {margin-left: 10px; margin-right: 10px;}
    h1, .sousmenu  {margin-left: 10px}
    .collection {width: 100%;}
    .collections-grid {  grid-template-columns: repeat(3, minmax(0,1fr)); gap: 30px 50px; width: 80%; justify-content: center; }
    .article_flex_col1 {flex-basis: 50%;}
    .article_flex_col2 {flex-basis: 50%;}
}


@media screen and (max-width: 679px) {
    .article {  margin-top: 75px;  }
    .logo_ofg {    top: 40px;    width: 60px;    height: 60px;
    }
}


@media screen and (max-width: 1150px)
{
    .portrait {display: block; width: 100%; }
    .popup p{

        font-size: 90%;
    }
}

@media screen and (min-width: 1500px)
{
    .article_flex_col1 {flex-basis: 60%;}
    .article_flex_col2 {flex-basis: 40%;}
}

@media screen and (min-width: 1800px)
{
    .page-ophl {margin-left: 10px; margin-right: 10px;}
    h1, .sousmenu {margin-left: 10px}
    p,  h5 { font-size:100%; }
    .collections-grid {  grid-template-columns: repeat(3, minmax(0,1fr)); gap: 30px 50px; width: 60%; justify-content: center; }
    .article_flex {width: 80%; margin: 0 auto;}
}

@media print {

    table { break-after:auto }
    tr    { break-inside:avoid-page; break-after:auto }
    td    { break-inside:avoid-page; break-after:auto }
    div   { break-inside:avoid; } /* This is the key */
    thead { display:table-header-group }
    tfoot { display:table-footer-group }
    td {
        height: 18px;
    }
    .head_btop, .head_btop a {color: black; background-color: white; vertical-align: baseline;}

    .no-print, .no-print * {
        display: none !important;
    }

    @page {
        @bottom-right {
            content: counter(page) " of " counter(pages);
        }
        size: landscape;
        margin: 10px 1px 10px 1px;
        counter-increment: page;
    }

    .onlyPrint {
        display: block;
    }

    .container {width:90%; padding-left:5%; padding-right: 5%; margin-top: 5px;}
}