/* Main CSS */
main{
    text-align: left;
    margin: 0 auto;
    width:90%;
    max-width: 1680px;
}
.wrap{
    overflow: clip
}
.small-width{
    width:80%;
    margin:0 auto;
}
@media screen and (min-width:1200px){
    .small-width{
        max-width:800px;
        margin:0 auto;
    }
}
@media screen and (min-width:1440px){
    .small-width{
        max-width:860px;
        margin:0 auto;
    }
}
@media screen and (min-width:1680px){
    .small-width{
        max-width:992px
    }
}

@media screen and (min-width:1920px){
    .small-width{
        max-width:1000px
    }
}

[data-ratio] {display: block; max-width: 100%; position: relative}
[data-ratio]:before {content: ''; display: block;}
[data-ratio] > * {display: block; height: 100%; left: 0; position: absolute; top: 0; width: 100%;}

[data-ratio='20:9']::before { padding-top: 47.5%; }
[data-ratio='16:9']::before { padding-top: 56.25%; }
[data-ratio='4:3']::before { padding-top: 75%; }
[data-ratio='3:4']::before { padding-top: 133.33%; }
[data-ratio='1:1']::before { padding-top: 100%; }

.has-blanc-background-color{
    background-color: var(--blanc);
}
.has-noir-background-color{
    background-color: var(--noir);
}
.has-jade-background-color{
    background-color: var(--jade);
}
.has-grislight-background-color{
    background-color: var(--grislight);
}
.has-transparent-background-color{
    background-color: var(--transparent);
}


.has-blanc-color{
    color: var(--blanc);
}
.has-noir-color{
    color: var(--noir);
}
.has-jade-color{
    color: var(--jade);
}
.has-grislight-color{
    color: var(--grislight);
}

.alignfull {
    margin: 0 calc(50% - 50vw);
    max-width: 100vw;
    width: 100vw;
}
.has-background{
    padding:1.5rem 1.5rem
}
.alignfull.has-background {
    padding: 3.5vw calc(-50% - -50vw);
}
.alignwide{
    margin-left: -10%;
    margin-right: -10%
}
.slider-produits.alignfull-right {
    margin-right: calc(50% - 50vw);
    max-width: 94vw;
    width: 94vw;
}

.relative{
    position: relative;
}
figure.wp-block-image{
    position:relative
}
figure.wp-block-image .wp-element-caption{
    position: absolute;
    right: 0; bottom:0;
    color: var(--blanc);
    padding:0.25rem 0.75rem;
    margin:0;
    background-color: rgba(255,255,255,.6);
    color: var(--noir);
    font-size:0.75rem;
}
figure.wp-block-image .wp-element-caption a{ color: var(--noir) }

.surtitre{
    font-size: 0.8rem;
     text-transform: uppercase;
     display: flex;
     flex-wrap: wrap;
     align-items: center;
     gap: 0 0.25rem;
     letter-spacing: 0.1rem;
}
.surtitre::before{
    content:"";
    display: block;
    width:0.9em; height:0.9em;
    border-radius: 50%;
    background-color: var(--jade);
}

.pagination-num ul{
    display:flex;
    list-style: none;
    align-items: center;
    margin:2rem 0; padding:0;
    gap:4px;
}
.pagination-num ul li{
    text-align:center;
    min-width:1.5rem;
    color: var(--noir);
    line-height:1;
    border: 1px solid;
}
.pagination-num ul li a{
    display:inline-block;
    padding:0.5rem 1rem;
    color: var(--noir);
    line-height:1.5;
}
.pagination-num ul li a:hover, .pagination-num ul li.active a{
    background-color: var(--jade);
    color: var(--blanc);
    border-color: var(--jade)
}
.pagination-num ul li.active a{
    font-weight: bold;
}
.ariane{
    border-top: 1px solid var(--jade);
    font-size: 0.85rem;
}
.ariane > span{
    display: flex;
    gap:0 0.75rem
}
article .date{
    font-weight: bold;
    color: var(--jade);
}
.post-navigation a{
    display: inline-block;
    padding:1rem;
    background-color: var(--grislight);
    width:300px;
    text-align:center
}
.post-navigation a:hover{
    background-color: var(--jade);
    color: var(--blanc)
}

.liste-child-pages a{
    background-color: var(--jade);
    color: var(--blanc);
    text-transform: uppercase;
}
.liste-child-pages a:hover{
    background-color: var(--noir);
    color: var(--blanc);
}
.liste-child-pages a .vs{
    width:100%;
    overflow: clip
}
.liste-child-pages a .vs img{
    object-fit: cover
}
.liste-child-pages a .ttl{
    padding:1rem
}
.lightweight-accordion .lightweight-accordion-title{
    background: var(--transparent) !important;
    border-top: 1px solid var(--noir);
    padding-left: 0 !important;
    position: relative;
}
.lightweight-accordion .lightweight-accordion-title span{
    font-weight: bold !important;
    font-size: 1rem !important;
    color: var(--jade);
}