html {
    scroll-behavior: smooth;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    font-smooth: never;
}

/* mobile -- to be changed when mobile values available */
:root {
    /* text variables */
    /*600-3840-6.25-40-16*/
    --font-size-small: clamp(0.390625rem, 0.0000rem + 1.0417vw, 2.5rem);

    /*325-768-16.54-39.08-16*/
    --font-size-regular: clamp(1.03375rem, 0.0002rem + 5.0880vw, 2.4425rem);
    
    /*325-768-19.85-46.9-16*/
    --font-size-title: clamp(1.240625rem, 0.0003rem + 6.1061vw, 2.93125rem);

    /*325-768-14.4-34-16*/
    /*--font-size-grid2-title: clamp(0.9rem, 0.0013rem + 4.4244vw, 2.125rem);*/
    /*325-768-19.85-46.9-16*/
    --font-size-grid2-title: clamp(1.240625rem, 0.0003rem + 6.1061vw, 2.93125rem);



    /*325-768-16.54-39.08-16*/
    --font-size-medium: clamp(1.03375rem, 0.0002rem + 5.0880vw, 2.4425rem);

    /*325-768-29.77-70.35-16*/
    --font-size-large: clamp(1.860625rem, -0.0001rem + 9.1603vw, 4.396875rem);



    /*325-768-29.77-62.53-16*/
    --font-size-xlarge: clamp(1.860625rem, 0.3585rem + 7.3950vw, 3.908125rem);

    /*325-768-51-122-16*/
    --font-size-huge: clamp(3.1875rem, -0.0680rem + 16.0271vw, 7.625rem);

    /* letter-spacing variables */
    /*
    --letter-spacing-regular: -0.015em;
    --letter-spacing-medium: -0.01em;
    --letter-spacing-medium: -0.021em;
    --letter-spacing-large: -0.015em;
    --letter-spacing-xlarge: -0.0232142em;
    --letter-spacing-huge: -0.022em;
    */

    --letter-spacing-regular: -0.01em;
    --letter-spacing-medium: -0.01em;
    --letter-spacing-medium: -0.01em;
    --letter-spacing-large: -0.01em;
    --letter-spacing-xlarge: -0.01em;
    --letter-spacing-huge: -0.022em;


    /* line-height variables */
    --line-height-regular: 1.15;
    --line-height-title: 0.95;
    --line-height-grid2-title: 0.95;
    --line-height-medium: 0.95;
    --line-height-large: 0.95;
    --line-height-xlarge: 1;
    --line-height-huge: 0.95;
    --line-height-small: 1;

    /* color variables */
    --color-primary: #283583;
    --color-secondary: #1DE92A;
    --color-background: #ffffff;
    --color-button-hover: #ffffff;
    --border-menu-background: #ffffff;
    
    --color-education-pleinsud: #E63312;
    --color-education-milieu: #B98D33;
    --color-education-campartsoleil: #9F5147;
    
    /* background color variables */
    --color-background: #ffffff;

    --color-produit-background: #DFE0E2;
    /* header variables */
    /*--header-width: 17.36%;*/
    --header-width: 17.25%; /* should be 16.6667%  according to dessign grid, but doesn't fit ? */

    --bouton-border-radius: 0.42em;

    --bouton-border-radius-huge: 0.14em;

}
/* desktop */
@media screen and (min-width: 768px) {
    :root {
        /* text variables */
        
        /*600-3840-8.33-53.33-16*/
        --font-size-regular: clamp(0.520625rem, -0.0002rem + 1.3889vw, 3.333125rem);
        
        /*600-3840-10-64-16*/
        --font-size-title: clamp(0.625rem, 0.0000rem + 1.6667vw, 4rem);

        /*600-3840-11.25-72-16*/
        --font-size-grid2-title: clamp(0.703125rem, 0.0000rem + 1.8750vw, 4.5rem);


        /*600-3840-16.67-106.67-16*/
        --font-size-medium: clamp(1.041875rem, 0.0002rem + 2.7778vw, 6.666875rem);

        /*600-3840-21.25-136-16*/
        --font-size-large: clamp(1.328125rem, 0.0000rem + 3.5417vw, 8.5rem);

        /*600-3840-23.33-149.33-16*/
        --font-size-xlarge: clamp(1.458125rem, -0.0002rem + 3.8889vw, 9.333125rem);

        /*600-3840-83.33-533.33-16*/
        --font-size-huge: clamp(5.208125rem, -0.0002rem + 13.8889vw, 33.333125rem);

        --bouton-border-radius-huge: 0.04em;
    }
}

* {
    box-sizing:border-box
}

html {
    font-family: 'FTAktual', sans-serif;
    /* base font size defined for clamp rem values */
    font-size:16px;
    
}
body {
    
    font-size: var(--font-size-regular);
    line-height: var(--line-height-regular);
    letter-spacing: var(--letter-spacing-regular);
    color:var(--color-primary);
    background-color:var(--color-background);
    min-height:100vh;
    max-width:3840px;
    margin:0 auto;

    /* fit more closely figma generated font rendering */
    font-smoothing: antialiased;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    text-rendering: optimizeLegibility;
}
h1,h2,h3,h4,h5,h6 {
    font-weight:400;
}
h1 {
    font-size: var(--font-size-large);
    line-height: var(--line-height-large);
    letter-spacing: var(--letter-spacing-large);
    margin-top:0;
}
h2 {
    font-size: var(--font-size-medium);
    line-height: var(--line-height-medium);
    letter-spacing: var(--letter-spacing-medium);
    margin-top:0;
}
h3,h4 {
    font-size: var(--font-size-title);
    line-height: var(--line-height-title);
    margin-top:0;
}
h5 {
    font-size: var(--font-size-small);
    line-height: var(--line-height-small);
    margin-top:0;
}

p {
    padding-top:0;
    margin-top:0;
    padding-bottom:0;
    margin-bottom:1.15em;
}
a, a:hover {
    text-decoration-thickness: 2px!important;
    text-underline-offset: 0.12em!important;
}

th {
    font-weight:400;
}

/* custom bullet */
ul:not(.menu):not(.sub-menu) {
    list-style-type: none; /* Remove default bullets */
}

ul:not(.menu):not(.sub-menu):not(.products):not(.products-featured) li::marker {
    content: '•'; /* Customize the bullet */
    color:inherit; /* Set the color of the bullet */
    font-size:inherit; /* Adjust the size of the bullet */
}
nav ul li::marker {
    content: ''!important; /* no bullet on nav items */
}
ul {
    margin-left:0;
    padding-left:0.5em;
}
ul li {
    padding-left:0.1em;
}

img, iframe, embed {
    max-width: 100%;
}
img {
    display:block;
}
nav a, nav a:visited {
    color:var(--color-primary);
    text-decoration-thickness: 2px!important;
    text-underline-offset:0.12em;
    text-decoration:none;
}
nav a:hover {
    text-decoration:underline;
}

.width-100 {
    width:100%;
}
.hidden {
    display:none;
}
.hidden-mobile {
    display:none;
}
.hidden-desktop {
    display:block;
}
@media screen and (min-width: 768px) {
    .hidden-mobile {
        display:block;
    }
    .hidden-desktop {
        display:none;
    }
}

.nopadding {
    padding:0!important;
}
.nomargin {
    margin:0!important;
}

.edit-link {
    display:none;
}

/* display only height of the spacing (margin) */
.page p:empty() {
    height:0;
}

.home .post {
    margin: 0;
}
.page-content, .entry-content, .entry-summary {
    margin: 0.4em 0 0;
}
.page .entry-header {
    display: flex;
    flex-direction:column;
    justify-content: space-between;
    align-items: flex-start;
}
@media screen and (min-width: 768px) {
    .page .entry-header {
        flex-direction:row;
    }
}

:not(.home) .entry-content {
    /* margin-top:3.3em; */
    margin-top:2.14em;
}

.expositions .entry-content,
.evenements .entry-content {
    margin: 0.4em 0 0;
}
/* page à propos */
.page-id-76 .entry-content {
    margin-top:1.7em;
}
.page-education .entry-content {
    margin-top:2em;
}
/* page programmation */
.page-evenements-et-activites .entry-content,
/*.page-id-629 .entry-content,
.page-id-4248 .entry-content*/
.page-programmation .entry-content {
    margin-top:1.5em;
}


/* page entretiens d'artiste */
.page-entretiens-dartistes .entry-content,
.page-expositions-en-ligne .entry-content {
    margin-top:1.25em;
}


/* child pages de éducation */
.page-id-234 .entry-content,
.page-id-236 .entry-content,
.page-id-238 .entry-content {
    margin-top:2.14em;
}

/* grid 2 */
.pleinsud-grid-2 {
    font-size:var(--font-size-large);

    display:grid;
    grid-template-columns: 1fr;
    gap:0.21em;
}
@media screen and (min-width: 768px) {
    .pleinsud-grid-2 {
        grid-template-columns: 1fr 1fr;
    }
}

/* grid 4 */
.pleinsud-grid-4 {
    font-size:var(--font-size-large);
    display:grid;
    grid-template-columns: 1fr;
    gap:0.196em;
}
@media screen and (min-width: 768px) {
    .pleinsud-grid-4 {
        grid-template-columns: 1fr 1fr 1fr 1fr;
    }
}


img.logo {
    image-rendering:-moz-crisp-edges;          /* Firefox        */
    image-rendering:-o-crisp-edges;            /* Opera          */
    image-rendering:-webkit-optimize-contrast; /* Safari         */
    image-rendering:optimize-contrast;         /* CSS3 Proposed  */
}
a.logo {
    opacity:1;
    transition: opacity 0.3s ease-in-out;
}
a.logo:hover {
    opacity:0.7;
    transition: opacity 0.3s ease-in-out;
}

.text-regular {
    font-size: var(--font-size-regular);
    line-height: var(--line-height-regular);
}
.text-title {
    font-size: var(--font-size-title);
    line-height: var(--line-height-title);
}
.text-grid2-title {
    font-size: var(--font-size-grid2-title);
    line-height: var(--line-height-grid2-title);
}
.text-medium {
    font-size: var(--font-size-medium);
    line-height: var(--line-height-medium);
    letter-spacing: var(--letter-spacing-medium);
}
.text-large {
    font-size: var(--font-size-large);
    line-height: var(--line-height-large);
}
.text-xlarge {
    font-size: var(--font-size-xlarge);
    line-height: var(--line-height-xlarge);
    letter-spacing: var(--letter-spacing-xlarge);
}
.text-huge {
    font-size: var(--font-size-huge);
    line-height: var(--line-height-huge);
    font-weight:500;
}

#page {
    
}
header#masthead {

}
#site-navigation, .pleinsud-header-bottom {
    display:none;
}
#pleinsud-header-drawer .pleinsud-header-bottom {
    display:block;
    padding-bottom:0.3em;
}

@media screen and (min-width:812px) {
    .admin-bar header#masthead {
        top:32px;
    }
}
main#main, /* woocommerce pages */ 
main#primary { /* regular pages */
    margin: 0.35em 0.5em 0em 0.5em;
    background-color:var(--color-background);
}
.home main#primary {
    margin-top:0; /* appliqué à l'élément 'sticky' pour la page d'accueil */
}


/* readmore */
.pleinsud-readmore-link-text {
    cursor:pointer;
    display:inline-block;
    text-decoration:underline;
}

.readmore-link {
    display: inline-block;
    margin-left: 0.5em;
    color: var(--color-primary);
    cursor: pointer;
}
.pleinsud-readmore-link-text:hover {
    text-decoration:none;
}
.readless-link {
    display:block;
    margin-bottom:1.25em;
}


/* header */
/* menu nav */
.pleinsud-nav-controls {
    position: relative;
    border-bottom: 1px solid var(--color-primary);
    padding-bottom: 0.06em;
    margin-bottom: 0.2em;
    display: flex;
    flex-wrap: nowrap;
    justify-content: space-between;
    padding-top: 0.3em;
    /*margin-right: 0.35em;*/
    /*padding-left: 0.7em;*/
}


.pleinsud-nav-controls h1 {
    margin-bottom:0;
}
.pleinsud-nav-controls h1 a:hover {
    text-decoration:none;
}

.pleinsud-nav-controls-buttons {
    display:flex;
    flex-wrap:nowrap;
    gap:0.5em;
}
#pleinsud-menu-open {
    width:1.3em;
    cursor:pointer;
}
#pleinsud-menu-close {
    width:1.3em;
    cursor:pointer;
}
#pleinsud-menu-close img {
    width:1em;
    float:right;
}
#pleinsud-panier {
    width:1.1em;
    cursor:pointer;
    position:relative;
}
#pleinsud-panier .cart-contents-count.empty {
    display: none;
}
span.cart-contents-count {
    position: absolute;
    left: 1.5em;
    top: 0.9em;
    display: flex;
    justify-content: center;
    align-items: center;
    background: var(--color-primary);
    color: white;
    width: 1.35em;
    height: 1.35em;
    border-radius: 100%;
    font-size: 0.5em;
    padding: 0em;
	padding-top:0.1em;
}
.cart-contents-count {
    opacity: 0;
    transition: opacity 0.3s ease;
}

body.woocommerce-js .cart-contents-count {
    opacity: 1;
}
#pleinsud-search-open,
#pleinsud-drawer-search-open {
    width:0.9em;
    cursor:pointer;
}
ul#primary-menu ,
li#primary-menu,
ul#primary-menu ul,
ul#primary-menu li,
ul#primary-menu-drawer ,
li#primary-menu-drawer,
ul#primary-menu-drawer ul,
ul#primary-menu-drawer li {
    margin:0;
    padding:0;
    list-style:none;
}
ul#primary-menu a:hover,
ul#primary-menu-drawer a:hover,
.pleinsud-header-drawer-more-menu-item a:hover,
ul#primary-menu a:focus,
ul#primary-menu-drawer a:focus,
.pleinsud-header-drawer-more-menu-item a:focus {
    font-weight:500;
    text-decoration:none;
}
ul#primary-menu > li > a:hover,
ul#primary-menu-drawer > li > a:hover,
ul#primary-menu > li > a:focus,
ul#primary-menu-drawer > li > a:focus {
    font-weight:400;
}
ul#primary-menu > li > ul,
ul#primary-menu-drawer > li > ul {
    padding-left:1em;
}
@media screen and (min-width: 768px) {
    ul#primary-menu > li > ul,
    ul#primary-menu-drawer > li > ul {
        display:none;
    }
    ul#primary-menu > li:hover > ul,
    ul#primary-menu-drawer > li:hover > ul,
    ul#primary-menu > li:focus-within > ul,
    ul#primary-menu-drawer > li:focus-within > ul {
        display:block;
    }
}
header.site-header {
    z-index:20;
    position:relative;
}
.pleinsud-header-wrap {
    padding-left:0.5em;
    padding-right:0.5em;
}
/*
.pleinsud-header-info-complementaire {
    margin-bottom:0.35em;
}
*/
@media screen and (min-width:768px) {
    
    header#masthead {
        position:fixed;
        top:0;
        right:0;
        width:var(--header-width);
    }
    #site-navigation, .pleinsud-header-bottom {
        display:block;
    }

    .admin-bar header#masthead {
        top:46px;
    }

    .pleinsud-header-wrap {
        position:relative;
        display:flex;
        flex-wrap:nowrap;
        flex-direction:column;
        justify-content:space-between;
        min-height:100vh;
    }
    .admin-bar .pleinsud-header-wrap {
        min-height:calc(100vh - 32px);
    }
    main#main, /* woocommerce pages */
    main#primary {    /* single product elements */
        margin-right:var(--header-width);
        min-height:22vh;
    }
    body:not(.home) .pleinsud-header-wrap {
        min-height:60vh;
    }
    /*
    .pleinsud-header-info-complementaire {
        margin-bottom:6.7em;
    }
    */
}
@media screen and (min-width: 782px) {
    .admin-bar header#masthead {
        top:32px;
    }
}

/*
.pleinsud-header-info-complementaire .custom-logo-link {
    margin-right:0.2em;
}
*/
.pleinsud-header-ouverture {
    padding-bottom:0.1em;
    border-bottom:1px solid var(--color-primary);
    margin-bottom:0.3em;
}

#pleinsud-header-drawer {
    position:absolute;
    padding-left:0.5em;
    padding-right:0.5em;
    top:0;
    right:0;
    width:100%;
    height:100%;
    /*display:flex;*/
    flex-wrap:nowrap;
    flex-direction:column;
    justify-content:space-between;
    min-height:100vh;
    background-color:var(--color-secondary);
    z-index:1000;
    display:none;
}
.admin-bar #pleinsud-header-drawer {
    min-height:calc(100vh - 46px);
}

@media screen and (min-width:812px) {
    .admin-bar #pleinsud-header-drawer {
        min-height:calc(100vh - 32px);
    }
}


.pleinsud-header-drawer-ouverture {
    padding-top:0.1em;
    border-top:1px solid var(--color-primary);
    margin-top:0.3em;
}
.pleinsud-header-drawer-more-menu-item {
    border-top:1px solid var(--color-primary);
    padding-top:0.2em;
}
.pleinsud-header-drawer-more-menu-item:last-child {
    border-bottom:1px solid var(--color-primary);
    padding-bottom:0.2em;
}
body.pleinsud-menu-open #pleinsud-header-drawer {
    display:flex;
}

body.pleinsud-menu-open .pleinsud-header-wrap .pleinsud-header-top {
    display:none;
}


@media screen and (max-width: 767px) {
    #pleinsud-header-drawer {
        position:relative;
    }
    body.pleinsud-menu-open {
        max-height: 100vh;
        overflow: hidden;
    }
    body.pleinsud-menu-open #pleinsud-header-drawer {
        overflow: auto;
        -webkit-overflow-scrolling: touch;
    }
}


/* wpml language switcher */
.wpml-ls-legacy-list-horizontal {
    border: none;
    padding: 0;
    clear: both;
}
.wpml-ls-legacy-list-horizontal a {
    padding: 0;
    font-size:var(--font-size-regular);
    line-height:var(--line-height-regular);
}
.wpml-ls-legacy-list-horizontal a, .wpml-ls-legacy-list-horizontal li {
    display: inline;
    margin: 0;
    padding: 0;
}
.wpml-ls-legacy-list-horizontal li:not(:first-of-type) a span::before {
    content: " / ";
    display:inline-block;
    white-space:nowrap;
    white-space: pre;
    font-weight:400!important;
    margin:0;
    padding:0;
}



/* footer */
footer.pleinsud-site-footer {
    position:relative;
    background-color:var(--color-background);
    z-index:15;
}
#pleinsud-footer {
    display:flex;
    flex-wrap:nowrap;
    flex-direction:row;
    justify-content:flex-end;
    row-gap:0.01%;
}
#pleinsud-footer-main {
    width:82.64%;
    width:calc(100% - var(--header-width));
    margin-top:10em; /* 200px @ 1440 */
    /*margin:10em 0.7em 0.2em 0.5em;*/
    margin:11em 0em 0.2em 0.35em;
    padding-top:0.12em;
    border-top:1px solid var(--color-primary);
}
.pleinsud-footer-main-content {
    padding-bottom:12.5em;
}
#pleinsud-footer-sidebar {
    width:var(--header-width);
    display:flex;
    flex-direction:column;
    justify-content:flex-end;
}
#pleinsud-footer-logo svg {
    display:block;
}
.home #pleinsud-footer-logo {
    display:none;
}
#footer-columns {
    display:flex;
    flex-direction:column;
    flex-wrap:nowrap;
    justify-content:space-between;
}
#footer-columns .footer-column-item.contact,
#footer-columns .footer-column-item.ouverture,
#footer-columns .footer-column-item.social,
#footer-columns .footer-column-item.liens {
    width:100%;
}
#footer-columns .footer-column-item-content a:hover,
#footer-columns .footer-column-item-title a:hover {
    text-decoration: underline;
}
#footer-columns .footer-column-item-content h3 {
    font-size:var(--font-size-regular);
    margin-bottom:0;
    padding-bottom:0;
}
@media screen and (min-width: 768px) {
    #footer-columns {
        display:flex;
        flex-direction:row;
        flex-wrap:nowrap;
        justify-content:space-between;
    }
    #footer-columns .footer-column-item.contact {
        width:28%;
    }
    #footer-columns .footer-column-item.ouverture {
        width:26%;
    }
    #footer-columns .footer-column-item.social {
        width:18%;
    }
    #footer-columns .footer-column-item.liens {
        text-align:right;
        width:21%;
        margin-right:0.25em;
    }
}
#footer-columns .footer-column-item-title {
    margin-top:0;
}
#footer-columns .footer-column-item-content a {
    display:block;
}
#pleinsud-footer-bottom {
    position:relative;
}
#pleinsud-footer-logo-grid {
    position:relative;
}
#pleinsud-footer-logo-grid-absolute {
    top:0;
    left:0;
    /*position:absolute;*/
    width:72%;
}

#pleinsud-footer-logo-grid {
    display:flex;
    justify-items:center;
    align-items:end;
    gap:2%;
}
#pleinsud-footer-logo-grid .pleinsud-footer-logo-item {
    overflow:hidden;
    width:calc(100% / 9);
}






/* specialties */

/* search modal */
/* pleinsud site search */
#pleinsud-search,
#pleinsud-search-results {
    position:absolute;
    top:0;
    left:0;
    color:var(--color-primary);
    background-color:var(--color-secondary);
    min-height:100vh;
    width:100%;
    height: 100vh;
    overflow: auto;
    z-index: 25;
    display:none;
    /*transform: translateX(-100%);*/
    /*transition: transform 0.1s ease;*/
}
#pleinsud-search-results {
    background-color:var(--color-background);
    z-index: 50; /* appears above the search modal */
}
.pleinsud-search-wrapper-flex-left {
    padding-left: 0.35em;
    padding-right:0.35em;
}

body.pleinsud-search-opened #pleinsud-search {
    display:block;
    /*
    transform: translateX(0);
    transition: transform 0.1s ease;
    */
}
body.pleinsud-search-results-opened #pleinsud-search-results {
    display:block;
    /*
    transform: translateX(0);
    transition: transform 0.1s ease;
    */
}
#pleinsud-search-close,
#pleinsud-search-results-close {
    position: absolute;
    font-size: var(--font-size-large);
    line-height: var(--line-height-large);
    top: 0.25em;
    right: 0.35em;
    cursor: pointer;
    z-index: 30;
}
.pleinsud-search-close-x {
    width: 1.5em;
    height: 1.5em;
}
#pleinsud-search input[type="submit"] { 
    display: none;
}
#pleinsud-search input:focus {
    outline: none;
}


#pleinsud-search-form input,
#pleinsud-search-form input::placeholder,
:-webkit-autofill,
:-webkit-autofill:hover, 
:-webkit-autofill:focus
:-webkit-autofill::first-line {
    font-family: 'FTAktual', sans-serif;
    font-size: var(--font-size-large);
    line-height:var(--line-height-large);
    color:var(--color-primary);
    background-color:var(--color-secondary);
    -webkit-text-fill-color: var(--color-primary);
    transition: background-color 100000s ease-in-out 0s;
}

.pleinsud-search-field-submit-icon {
    cursor:pointer;
    color: var(--color-primary);
    width: 1.3em;
    margin-left: -2.2em;
    position: relative;
    top: -0.15em;
}
#pleinsud-search-form {
    width:100%;
}

/*
.pleinsud-search-wrapper {
    height:100%;
}
*/
.pleinsud-search-wrapper-flex {
    font-size:var(--font-size-large);
    display:flex;
    flex-wrap:nowrap;
    flex-direction:column;
    justify-content:space-between;
    align-items:center;
    margin-top:2.5em;
}
#pleinsud-search-message {
    font-size:var(--font-size-regular);
    padding-left:0em;
}
@media screen and (min-width: 768px) {
    #pleinsud-search-message {
        padding-left:0.65em;
    }
    .pleinsud-search-field-submit-icon {
        color: var(--color-primary);
        width: 1.5em;
        margin-left: -2.2em;
        top:0.1em;
    }
    #pleinsud-search-close,
    #pleinsud-search-results-close {
        top: calc(0.4em - 3px);
        right: 0.8em;
    }
    .pleinsud-search-close-x {
        width: 2em;
        height: 2em;
    }
    
    .pleinsud-search-wrapper {
        height:auto;
    }
    .pleinsud-search-wrapper-flex {
        margin-top:0;
        flex-direction:column;
        height:auto;
    }
}
.pleinsud-search-wrapper-flex-left {
    width:100%;

}
.pleinsud-search-wrapper-flex-right {
    width:100%;
}
@media screen and (min-width: 768px) {
    .pleinsud-search-wrapper-flex {
        flex-direction:row;
    }
    .pleinsud-search-wrapper-flex-left {
        width:85%;
    }
    .pleinsud-search-wrapper-flex-right {
        width:15%;
    }
}
#pleinsud-search-form {
    position:relative;
}
#pleinsud-search-form #pleinsud-main-search {
    width: 100%;
    padding: 0.4em 0.25em;
    margin: 0;
    border: 2px solid var(--color-primary);
    background-color: var(--color-secondary);
    /*letter-spacing: -1.75px;*/

}
@media screen and (min-width: 768px) {
    #pleinsud-search-form #pleinsud-main-search {
        margin: 0.3em;
    }
}
.pleinsud-search-submit-label {
/*
    vertical-align:middle;
    vertical-align:-moz-middle-with-baseline;
*/
    position: absolute;
    top: 0.5em;
    right: -0.6em;
}

.pleinsud-search-header-titre {
    border-bottom:1px solid var(--color-primary);
    padding-top:0.35em;
    padding-bottom:0.2em;
    margin-bottom:0.35em;
}

#pleinsud-search-results-title {
    display:none;
    width:100%;
    border-bottom:1px solid var(--color-primary);
    padding:0;
    margin:0;
}
#pleinsud-search-results-title.active {
    display:inline-block;
}
.search-results-empty {   /* comme .page-template-default h2
    /*300-640-24-51-16*/ /* text-large */
    font-size: var(--font-size-large);
    line-height:var(--line-height-large);
    padding-top: 1em;
    padding-bottom: 1em;
    margin:0;
}
/* search results */
.pleinsud-search-result-item {
    border-bottom:1px solid var(--color-primary);
    margin-bottom:0.35em;
    padding-bottom:0.35em;
}
.pleinsud-search-result-item:hover .pleinsud-search-header-bottom-plus {
    font-weight:500;
}
.pleinsud-search-result-item-wrapper {
    display:flex;
    flex-wrap:nowrap;
    flex-direction:row;
    justify-content:space-between;
    height:100%;
}
.pleinsud-search-result-link {
    display:flex;
    flex:1;
    width:100%;
}
.pleinsud-search-header {
    flex: 1 1 auto;
    display:flex;
    flex-wrap:nowrap;
    flex-direction:column;
    justify-content:space-between;
    margin-right:1em;
    height:100%;
}

.pleinsud-search-header-top h1,
.pleinsud-search-header-top h2 {
    margin:0;
    padding:0;
}
.pleinsud-search-header-top .entry-meta {
    font-size:var(--font-size-medium);
    line-height:var(--line-height-medium);
}
.pleinsud-search-result-item-image {
    width:32vw;
}
@media screen and (min-width: 768px) {
    .pleinsud-search-result-item-image {
        width:15vw;
    }
}
.pleinsud-search-result-item-image img {
    display: block;
    width: 100%;
    height: auto;
    object-fit:cover;
    aspect-ratio:290/235;

}
.pleinsud-search-result-item-image .no-thumbnail {
    font-size:var(--font-size-large);
    display:block;
    min-height:3.25em;
    /* border:1px solid var(--color-primary); */
}
.pleinsud-search-header-bottom-plus {
    display: block;
    margin-bottom:-0.15em;
}
ul#pleinsud-search-results-items {
    padding:0;
    margin:0;
    list-style:none;
}


/* pages */
/* home */
#pleinsud-homepage-exposition-en-cours {
/*    position:sticky;
    top:0;*/
    /*position:fixed;
    top:0;
    left:0;
    width:calc(100% - var(--header-width));*/
    width:100%;
    /*min-height:100vh;*/
    padding-bottom:2em;
    /*padding-top:0.35em; /* pour le sticky, la marge du haut doit être ajoutée et retirée de la section 'main' */
/*
    margin-left:0.35em;
    padding-right:0.35em;*/
    z-index:0;
}

.admin-bar #pleinsud-homepage-exposition-en-cours {
    top:46px;
}
@media screen and (min-width:812px) {
    .admin-bar #pleinsud-homepage-exposition-en-cours {
        top:32px;
    }
}

#pleinsud-homepage-exposition-en-cours-wrap {
    margin-top:0.35em;
    display:flex;
    flex-wrap:nowrap;
    flex-direction:column-reverse;
}
.pleinsud-exposition-description h3 {
    margin-top:1em;
}
.pleinsud-exposition-titre,
.pleinsud-exposition-artistes,
.pleinsud-exposition-dates,
.pleinsud-exposition-statut {
    padding:0!important;
    margin:0;
    margin-right:1em;
}
/*
.pleinsud-exposition-artistes {
    letter-spacing:-1.3px;
}
    */
.pleinsud-exposition-image {
    width:100%;
    margin-bottom:0.35em;
}
.pleinsud-exposition-image img {
    display: block;
    width: 100%;
    /*max-height: calc(100vh - 6em);*/
    font-size: var(--font-size-xlarge);
    object-fit:cover;
    aspect-ratio:1182/632;
    object-position:center;
}

#pleinsud-homepage-exposition-a-venir,
#pleinsud-homepage-edition,
#pleinsud-homepage-evenements  {
    /*position:sticky;
    top:0;*/
    position:relative;
    background-color:var(--color-background);
    z-index:1;
}
#pleinsud-homepage-exposition-a-venir {
    /*margin-top:100vh;*/
}

#pleinsud-homepage-exposition-a-venir-wrap,
#pleinsud-homepage-edition-wrap,
#pleinsud-homepage-evenements-wrap {

}

@media screen and (max-width: 767px) {
    #pleinsud-homepage-edition-wrap a.pleinsud-homepage-archive-exposition-item-link .pleinsud-exposition-titre {
        font-size:var(--font-size-large);
        line-height:var(--line-height-large);
    }
}


#pleinsud-homepage-exposition-a-venir-header,
#pleinsud-homepage-edition-header,
#pleinsud-homepage-evenements-header {
    position:sticky;
    top:0;
    background-color:var(--color-background);
    z-index:2;
}
.pleinsud-exposition-header-titre,
.pleinsud-programmation-header-titre,
.pleinsud-evenement-header-titre,
.pleinsud-editions-header-titre {
    border-bottom:1px solid var(--color-primary);
    padding-top:0.35em;
    margin-bottom:0;
}
#pleinsud-archive-expositions-filter {
    font-size:var(--font-size-large);
    line-height:var(--line-height-large);
    letter-spacing:var(--letter-spacing-large);
    padding-bottom:1.2em;
    padding-top:0.66em;
    width:fit-content;
    /* prevent selection */
    user-select:none;
}
.pleinsud-archive-expositions-item-label:hover,
.pleinsud-archive-expositions-item-label.active {
    text-decoration:underline;
    cursor:pointer;
}
@media screen and (min-width: 768px) {
    #pleinsud-archive-expositions-filter {
        font-size:var(--font-size-medium);
        line-height:var(--line-height-medium);
        letter-spacing:var(--letter-spacing-medium);
    }
}
#pleinsud-archive-expositions-filter .pleinsud-archive-expositions-filter-arrow {
    display: inline-block;
    margin-left: 0.25em;
    width: 0.55em;
}
/*
body #pleinsud-archive-expositions-filter .pleinsud-archive-expositions-filter-arrow {
    transform:rotate(0deg);
}
*/
body.pleinsud-archive-filter-active .pleinsud-archive-expositions-filter-arrow {
    transform:rotate(180deg);
}
.pleinsud-archive-expositions-filter-label {
    cursor:pointer;
}
.pleinsud-archive-expositions-season-filter {
    position:relative;
}

.pleinsud-archive-expositions-seasons {
    display:none;
    position:absolute;
    width:7.2em;
    top:1.55em;
    left:0;
    background-color:var(--color-background);
    z-index:20;
}
body.pleinsud-archive-filter-active .pleinsud-archive-expositions-seasons {
    display:block;
}

.pleinsud-archive-container .pleinsud-exposition-image-principale {
    margin-bottom:0.15em;
}
.pleinsud-archive-expositions-saison {
    font-size:var(--font-size-large);
    margin-bottom:0.85em;
}
.pleinsud-homepage-archive-exposition-item {
    font-size:var(--font-size-large);
    padding-top:0.196em;
}
.pleinsud-homepage-archive-exposition-item:last-of-type {
    padding-bottom:0.5em;
}
a.pleinsud-homepage-archive-exposition-item-link:hover,
a.pleinsud-archive-item-link:hover {
    text-decoration:none;
    cursor:pointer;
}
.pleinsud-archive-item-grid-container {
    /*padding-top:0.196em;*/
}
.pleinsud-homepage-archive-exposition-item-content .pleinsud-grid-right {
   order: -1;
}
@media screen and (min-width: 768px) {
    .pleinsud-homepage-archive-exposition-item-content .pleinsud-grid-right {
        order: 1;
    }
}



.pleinsud-homepage-edition-image-wrap {
    display:flex;
    flex-wrap:nowrap;
    flex-direction:column;
    justify-content:center;
    align-items:center;
    width:100%;
    height:auto;
    /*background-color:var(--color-produit-background);*/
    aspect-ratio:1.436;
}
.pleinsud-homepage-edition-image-wrap  img {
    height:85%;
    width:auto;
}


/* single expositions */

.single-expositions h1.entry-title {
    margin:0;
    padding:0;
}

@media screen and (min-width: 768px) {
    .single-expositions .pleinsud-exposition-artiste,
    .single-expositions h1.entry-title {
        max-width: 54vw;
    }
}


.pleinsud-exposition-date-retour {
    display:flex;
    justify-content:space-between;
    flex-direction:column;
    width:100%;
}

.pleinsud-exposition-retour a {
    display:block;
    text-decoration:underline;
    margin:0.5em 0 1em 0;
}
.pleinsud-exposition-date-retour a {
    text-decoration:underline;
    text-decoration-thickness: 2px;
    text-underline-offset: 0.12em;
    text-decoration-skip-ink: none;
    text-decoration-color: var(--color-primary);
}
.pleinsud-exposition-date-retour a:hover {
    text-decoration:none;
}
@media screen and (min-width: 768px) {
    .pleinsud-exposition-date-retour {
        flex-direction:row;
        width:84.3%;
    }
    .pleinsud-exposition-retour a {
        margin:0;
    }
}


.pleinsud-exposition-biographie-title {
    margin-top:1em;
    margin-bottom:1em;
}
.pleinsud-exposition-information-title {
    margin-top:1em;
    margin-bottom:0;
}
.pleinsud-exposition-information-title:first-of-type {
    margin-top:0;
}
.pleinsud-exposition-image-principale {
    position:relative;
    margin-top:0.2em;
}
.pleinsud-exposition-img,
.pleinsud-exposition-image-principale img {
    display: block;
    width: 100%;
    height: auto;
}
/* image principale - credit */
.single-expositions .pleinsud-exposition-image-principale .pleinsud-exposition-image-credit {
    position:absolute;
    bottom:0.25em;
    right:1em;
    margin-top:0.25em;
    margin-bottom:0.5em;
    font-size: var(--font-size-small);
    line-height: var(--line-height-small);
}
.single-expositions .pleinsud-exposition-image-principale .pleinsud-exposition-image-credit {
    color:white;
}
.single-expositions .pleinsud-exposition-image-principale .pleinsud-exposition-image-credit.bleu {
    color:var(--color-primary);
}


.single-expositions .pleinsud-exposition-image-principale img {
    aspect-ratio: 1.46;
    object-fit: cover;
}
.pleinsud-exposition-image-principale.entretien img {
    object-fit:cover;
    aspect-ratio:586/388;
    object-position:center;
}

.pleinsud-exposition-lien-externe {
    margin-top:1em;
}
.pleinsud-exposition-boutons {
    margin-top:1em;
    margin-bottom:0.5em;
}
.pleinsud-exposition-lien-artiste {
    margin-top:1em;
}
.pleinsud-exposition-lien-artiste a {
    text-decoration:underline;
}
.pleinsud-exposition-lien-artiste a:hover {
    text-decoration:none;
}
.pleinsud-exposition-bouton {
    text-align:center;
    margin-top:0.3em;
    padding:0.64em 0.3em 0.64em 0.3em;
    border:1px solid var(--color-primary);
    border-radius:0.7em;
    margin-right:0;
    text-decoration:none;
}
.pleinsud-exposition-bouton:hover {
    background-color:var(--color-primary);
}
.pleinsud-exposition-bouton:hover a {
    color:var(--color-background);
    text-decoration:none;
}
@media screen and (min-width: 768px) {
    .pleinsud-exposition-bouton {
        margin-right:5em;
    }
}
.pleinsud-exposition-commissaires {
    margin-bottom:0.5em;
}
.pleinsud-exposition-photos {
    margin-top: 6em;
}

@media screen and (min-width: 768px) {
    .pleinsud-exposition-photos {
        max-width: calc(50% - 0.21em); 
    }
}
.pleinsud-exposition-photos img:not(:first-of-type) {
    width:100%;
    height:auto;
    margin-top:0.5em;
}
.pleinsud-exposition-photos img.with-credit {
    margin-bottom: 0.25em;
}

/* single evenements */
.single-evenements h1.entry-title {
    margin:0;
    padding:0;
    /*letter-spacing: -0.022em;*/
}
@media screen and (min-width: 768px) {
    .single-evenements h1.entry-title,
    .single-evenements .pleinsud-evenement-type {
        max-width:54vw;
    }
}

.pleinsud-evenement-date-retour {
    display:flex;
    justify-content:space-between;
    flex-direction:column;
    width:100%;
}
.pleinsud-evenement-retour a {
    display:block;
    text-decoration:underline;
    margin: 0.5em 0 1em 0;
    /*margin-top:-0.2em;*/
}
.pleinsud-evenement-date-retour a {
    text-decoration:underline;
    text-decoration-thickness: 2px;
    text-underline-offset: 0.12em;
    text-decoration-skip-ink: none;
    text-decoration-color: var(--color-primary);
}
.pleinsud-evenement-date-retour a:hover {
    text-decoration:none;
}
@media screen and (min-width: 768px) {
    .pleinsud-evenement-date-retour {
        flex-direction:row;
        width:84.3%;
    }
    .pleinsud-evenement-retour a {
        margin:0;
    }
}

.pleinsud-tirage-element {
    margin:0.25em 0;
}
.pleinsud-tirage-element .pleinsud-bouton {
	margin-top:0.25em;
}
.pleinsud-evenement-tirage-image {
    margin-top:0.25em;
    margin-bottom:0.25em;
    max-width:12em;
}
.pleinsud-evenement-tirage-image.portrait {
    max-width:7em;
}
.pleinsud-evenement-biographie-title {
    margin-top:1em;
    margin-bottom:1em;
}
.pleinsud-evenement-information-title {
    margin-top:1em;
    margin-bottom:0;
}
.pleinsud-exposition-champ-libre-gauche {
    margin-top:1em;
    margin-bottom:1em;
}
.pleinsud-evenement-information-title:first-of-type {
    margin-top:0;
}
.pleinsud-evenement-image-principale {
    position:relative;
    margin-top:0.2em;
}
.pleinsud-evenement-img,
.pleinsud-evenement-image-principale img {
    display:block;
    width:100%;
    height:auto;
}
.single-evenements .pleinsud-evenement-image-principale img { 
    aspect-ratio: 1.46;
    object-fit: cover;
}
/* image principale - credit */
.single-evenements .pleinsud-evenement-image-principale .pleinsud-evenement-image-credit {
    position:absolute;
    bottom:0.25em;
    right:1em;
    margin-top:0.25em;
    margin-bottom:0.5em;
    font-size: var(--font-size-small);
    line-height: var(--line-height-small);
}
.single-evenements .pleinsud-evenement-image-principale .pleinsud-evenement-image-credit {
    color:white;
}
.single-evenements .pleinsud-evenement-image-principale .pleinsud-evenement-image-credit.bleu {
    color:var(--color-primary);
}

a.pleinsud-evenement-lien-externe {
    margin-top:1em;
    text-decoration:underline;
    text-underline-offset: 0.12em;
}
a.pleinsud-evenement-lien-externe:hover {
    text-decoration:none;
}

.pleinsud-evenement-boutons {
    margin-top:1em;
    margin-bottom:0.5em;
}
.pleinsud-evenement-lien-artiste {
    margin-top:1em;
}
.pleinsud-evenement-lien-artiste a {
    text-decoration:underline;
}
.pleinsud-evenement-lien-artiste a:hover {
    text-decoration:none;
}
.pleinsud-evenement-bouton-reservez {
    text-align:center;
    margin-top:1.3em;
    padding:0.5em 0.1em 0.5em 0.3em;
    border:1px solid var(--color-primary);
    border-radius:0.4em;
    margin-right:5em;
    text-decoration:none;
}
.pleinsud-evenement-bouton-reservez:hover {
    background-color:var(--color-primary);
}
.pleinsud-evenement-bouton-reservez:hover a {
    color:var(--color-background);
    text-decoration:none;
}
.pleinsud-evenement-photos {
    margin-top: 6em;
}

@media screen and (min-width: 768px) {
    .pleinsud-evenement-photos {
        max-width: calc(50% - 0.21em); 
    }
}

.pleinsud-evenement-photos img:not(:first-of-type) {
    width:100%;
    height:auto;
    margin-top:0.5em;
}
.pleinsud-evenement-photos img.with-credit {
    margin-bottom: 0.25em;
}

.pleinsud-evenement-photos img {
    width:100%;
    height:auto;
    margin-bottom:0.5em;
}


/* homepage */
.pleinsud-header-evenement-special {
    background-color: var(--color-secondary);
    padding:0.65em;
    margin:0.65em 0;
    border-radius:0.65em;
}
.pleinsud-header-evenement-special p:last-of-type {
    margin-bottom:0;
    padding-bottom:0;
}
.pleinsud-header-evenement-special a:hover {
    text-decoration:underline;
    text-decoration-thickness: 2px;
    text-underline-offset: 0.12em;
    text-decoration-skip-ink: none;
    text-decoration-color: var(--color-primary);
}
/* First section - No sticky positioning */
@media screen and (min-width:768px) {
    #pleinsud-homepage-exposition-en-cours {
        position: relative; 
        width: 100%;
        min-height: 100vh;
        background-color: var(--color-background);
        z-index: 10;
    }
}
  
#pleinsud-homepage-exposition-en-cours-wrap {
    display: flex;
    flex-wrap: nowrap;
    flex-direction: column-reverse;
}
  
  /* Second section - Will overlay the first */
#pleinsud-homepage-exposition-a-venir {
    position: relative;
    background-color: var(--color-background);
    z-index: 20;
    /* Remove any margin-top that might push it down */
}
  
  /* The sticky header */
#pleinsud-homepage-exposition-a-venir-header {
    position: sticky;
    top: 0;
    background-color: var(--color-background);
    z-index: 21;
    width: 100%;
}
  
  /* Add observer marker at the end of first section */
.section-observer-marker {
    position: relative;
    width: 100%;
    height: 1px;
    opacity: 0;
    pointer-events: none;
}
  
  /* Third section */
#pleinsud-homepage-edition {
    position: relative;
    background-color: var(--color-background);
    z-index: 30;
}
  
#pleinsud-homepage-edition-header {
    position: sticky;
    top: 0;
    background-color: var(--color-background);
    z-index: 31;
    width: 100%;
}
  
/* Fourth section */
#pleinsud-homepage-evenements {
    position: relative;
    background-color: var(--color-background);
    z-index: 40;
}
  
#pleinsud-homepage-evenements-header {
    position: sticky;
    top: 0;
    background-color: var(--color-background);
    z-index: 41;
    width: 100%;
}




  /* pages elementor override */
  /* accordeon */
/* padding for the title element */
.elementor-widget-n-accordion {
    --n-accordion-padding: 0.5em 0;
}
/* remove the border on the accordion content */
.pleinsud-accordeon :where(.elementor-widget-n-accordion .e-n-accordion-item>.e-con) {
    border: none;
}
.pleinsud-accordeon .e-con {
    margin-bottom:0!important;
}
/* set a border bottom on the title */
.pleinsud-accordeon summary.e-n-accordion-item-title {
    border-bottom: 1px solid var(--color-primary)!important;
}
#pleinsud-education-a-plein-sud .pleinsud-accordeon summary.e-n-accordion-item-title:hover {
    background-color: var(--color-education-pleinsud);
}
#pleinsud-education-camp-art-soleil .pleinsud-accordeon summary.e-n-accordion-item-title:hover {
    background-color: var(--color-education-campartsoleil);
}
#pleinsud-education-milieu .pleinsud-accordeon summary.e-n-accordion-item-title:hover {
    background-color: var(--color-education-milieu);
}

/* Override hover effect for open summary */
.pleinsud-accordeon summary[aria-expanded="true"].e-n-accordion-item-title:hover {
    background-color: inherit!important;
    transition:0.3s;
}
.pleinsud-accordeon ul {
    margin-left:0;
    padding-left:0.5em;
}
.pleinsud-accordeon ol {
    margin-left:0;
    padding-left:0.75em;
}
.pleinsud-accordeon ul li {
    padding-left:0.5em;
}
.pleinsud-accordeon ol li {
   padding-left:0.25em;
   margin-left:0.35em;
}
/* push icon to the right */
.elementor-widget-n-accordion .e-n-accordion-item-title {
    /*
    align-items: center;
    border-color: var(--n-accordion-border-color);
    border-radius: var(--n-accordion-border-radius);
    border-style: var(--n-accordion-border-style);
    border-width: var(--n-accordion-border-width);
    color: var(--n-accordion-title-normal-color);
    cursor: pointer;
    display: flex
;
    flex-direction: row;
    flex-grow: var(--n-menu-title-flex-grow);
    gap: var(--n-accordion-icon-gap);
    justify-content: var(--n-accordion-title-justify-content);
    list-style: none;
    padding: var(--n-accordion-padding);
    */
    padding: 0.38em 0;
    --n-accordion-title-justify-content: space-between;
}
.elementor-widget-n-accordion .e-n-accordion-item-title-text {
    font-size: var(--font-size-title);
    line-height: var(--line-height-title);
}
.e-n-accordion-item .e-n-accordion-item-title::after {
    content: "+";
    width:0.55em;
    text-align:center;
    font-size: var(--font-size-title);
    line-height: var(--line-height-title);

}
@media screen and (min-width: 768px) {
    .elementor-widget-n-accordion .e-n-accordion-item-title-text {
        font-size: var(--font-size-medium);
        line-height: var(--line-height-medium);
    }
    .e-n-accordion-item .e-n-accordion-item-title::after {
        font-size: var(--font-size-medium);
        line-height: var(--line-height-medium);
    }
}

.e-n-accordion-item[open] .e-n-accordion-item-title::after {
    content: "−" ;
}
.e-n-accordion-item p {
    padding-top:0;
    margin-top:0;
    padding-bottom:0;
    margin-bottom:1.15em;
}
.e-n-accordion-item h3 {
    padding-bottom:0;
    margin-bottom:0;
}
.e-n-accordion-item h4 {
    padding-bottom:0;
    margin-bottom:1.05em;
}
.e-n-accordion-item img,
.e-n-accordion-item figure {
    width:100%!important;
}


/* liens dans les accordéons sont soulignés */
.pleinsud-accordeon a:not(.pleinsud-bouton) {
    text-decoration:underline;
}
.pleinsud-accordeon a:not(.pleinsud-bouton):hover {
    /*font-weight:500;*/
    text-decoration:none;
}
.pleinsud-accordeon-bottom-spacer {
    /*margin-bottom:3.5em;*/
    margin-bottom:0;
}


/* version pour la page des bourses */
.elementor-widget-n-accordion .e-n-accordion-item-title {
    /* le + s'aligne en haut */
    align-items:flex-start;

}
.pleinsud-bourses-titre-accordeon h2 {
    font-size: var(--font-size-regular);
    line-height: var(--line-height-regular);

}


/* page À propos */
.pleinsud-img-institution-museale-agreee {
    font-size:var(--font-size-large);
    width:2em;
}
.pleinsud-bouton-spacer {
    margin-bottom:1em;
}
.pleinsud-button,
.pleinsud-bouton {
    display:inline-block;
    width:100%;
    text-align:center;
    font-size:var(--font-size-regular);
    line-height:var(--line-height-regular);
    letter-spacing:var(--letter-spacing-regular);
    padding:0.5em 0.65em;
    margin-bottom:0.25em;
    border:1px solid var(--color-primary);
    border-radius:var(--bouton-border-radius);
    text-decoration:none;
}


.pleinsud-button:hover,
.pleinsud-bouton:hover {
    background-color:var(--color-primary);
    color:var(--color-background);
    text-decoration:none;
}

.pleinsud-education-en-savoir-plus {
    display: none;
}
@media screen and (min-width: 768px) {
    .pleinsud-button,
    .pleinsud-bouton {
        width:fit-content;
        font-size:var(--font-size-regular);
        line-height:var(--line-height-regular);
        letter-spacing:var(--letter-spacing-regular);
    }
    .pleinsud-bouton-education {
        display:inline-block;
        width:fit-content;
        text-align:center;
        font-size:var(--font-size-regular);
        line-height:var(--line-height-regular);
        letter-spacing:var(--letter-spacing-regular);
        padding:0.1em 0.27em;
        margin-bottom:0;
        border:1px solid var(--color-primary);
        border-radius:var(--bouton-border-radius);
        text-decoration:none;
        font-weight:400;
    }
}
 

.pleinsud-bouton.fixedwidth9 {
    min-width: 9em;
}
.pleinsud-image-accordeon-top {
    display:inline-block;
    font-size: var(--font-size-regular);
    width:100%;
    margin-bottom:0.25em;
}
.pleinsud-image-accordeon-caption {
    display:inline-block;
    font-size: var(--font-size-regular);
    width:100%;
    margin-bottom:0;
}
.wp-caption .wp-caption-text {
    font-size: var(--font-size-small);
    line-height: var(--line-height-small);
    margin-top:0.25em;
    margin-bottom:2em;
}
.e-n-accordion-item .wp-caption .wp-caption-text {
    font-size: var(--font-size-small);
    line-height: var(--line-height-small);
    margin-top: 0.25em;
    margin-bottom: 0.5em;
}
.pleinsud-education-camp-art-soleil-inscription {
    position:relative;
    height:100%;
}
.pleinsud-absolute-bottom {
    position:absolute;
    bottom:0;
    width:100%;
}



.pleinsud-table-adhesion {
    width: 100%;
    border-collapse: collapse;
}
.pleinsud-table-adhesion th,
.pleinsud-table-adhesion td {
    border: 1px solid var(--color-primary);
    padding: 0.5em;
    text-align: left;
}
.pleinsud-table-adhesion td {
    background-color: var(--color-background);
    color: var(--color-primary);
}


/* page Éducation */


#pleinsud-education-nav {
    padding-bottom:5em;
    width:100%;
}

#pleinsud-education-information-header {
    position:sticky;
    top:0;
    background-color:var(--color-background);
    z-index:2;
}
.pleinsud-education-header-titre {
    border-bottom:1px solid var(--color-primary);
    padding-top:0.35em;
    margin-bottom:0;
}
#pleinsud-education-information p:last-of-type {
    margin-bottom:0;
}

/* boutons */

/*
            echo '<nav class="education-menu">';
            echo '<ul class="education-menu-items">';
            foreach ($menu_items as $menu_item) {
                echo '<li class="<?php echo $menu_item->classes[0]; ?>">';
                echo '<a href="' . $menu_item->url . '">' . $menu_item->title . '</a>';
                echo '</li>';
            }
            echo '</ul>';
            echo '</nav>';
*/


/*
.pleinsud-education-bouton {
    font-size:var(--font-size-regular);
    border:1px solid var(--color-primary);
    border-radius:var(--bouton-border-radius);

}
.pleinsud-education-bouton:hover {
    border:1px solid var(--color-background);
}
.pleinsud-education-bouton.pleinsud:hover {
    background-color: var(--color-education-pleinsud);
}
.pleinsud-education-bouton.milieu:hover {
    background-color: var(--color-education-milieu);
}
.pleinsud-education-bouton.campartsoleil:hover {
    background-color: var(--color-education-campartsoleil);
}
.pleinsud-education-bouton.reserver {
    background-color: var(--color-secondary);
    color: var(--color-background);
}
*/


/* pages enfant education */

/*

<div class="menu-education-container"><ul id="menu-education" class="menu"><li id="menu-item-242" class="pleinsud menu-item menu-item-type-post_type menu-item-object-page current-menu-item page_item page-item-234 current_page_item menu-item-242"><a href="https://plein-sud-art-actuel-imports.local//education/a-plein-sud/" aria-current="page">À Plein sud</a></li>
</ul></div>
*/

#pleinsud-education-information-wrap {
    padding-top:0.196em;
    display:grid;
    grid-template-columns: 1fr;
    gap:0.196em;
}
@media screen and (min-width: 768px) {
    #pleinsud-education-information-wrap {
        grid-template-columns: 1fr 1fr;
    }
}

.menu-education-container {
    /*margin-right:0.3em;*/
}
.menu-education-container ul,
.menu-education-anglais-container ul {
    display:flex;
    flex-wrap:nowrap;
    gap:0.2em;
    margin:0;
    padding:0;
    padding-top:0.1em;
    /*margin-bottom:1.7em; /* match main h1 title margin-bottom value to align everything */ 
}
.menu-education-container ul,
.menu-education-container ul li,
.menu-education-anglais-container ul,
.menu-education-anglais-container ul li {
    font-size:var(--font-size-medium);
    line-height: var(--line-height-medium);
    list-style:none;
    letter-spacing: var(--letter-spacing-medium);
}
.menu-education-container ul li a,
.menu-education-anglais-container ul li a {
    display:inline-block;
    text-decoration:none;
    border:1px solid var(--color-primary);
    border-radius:0.2em;
    padding:0.085em 0.2em 0.085em 0.2em;
    text-align:center;
}

.menu-education-container ul li.pleinsud a:hover,
.menu-education-container ul li.pleinsud.current-menu-item a,
.menu-education-anglais-container ul li.pleinsud a:hover,
.menu-education-anglais-container ul li.pleinsud.current-menu-item a {
    border: 1px solid var(--color-education-pleinsud);
    background-color: var(--color-education-pleinsud);
}
.menu-education-container ul li.milieu a:hover,
.menu-education-container ul li.milieu.current-menu-item a,
.menu-education-anglais-container ul li.milieu a:hover,
.menu-education-anglais-container ul li.milieu.current-menu-item a {
    border:1px solid var(--color-education-milieu);
    background-color: var(--color-education-milieu);
}
.menu-education-container ul li.campartsoleil a:hover,
.menu-education-container ul li.campartsoleil.current-menu-item a,
.menu-education-anglais-container ul li.campartsoleil a:hover,
.menu-education-anglais-container ul li.campartsoleil.current-menu-item a {
    border:1px solid var(--color-education-campartsoleil);
    background-color: var(--color-education-campartsoleil);
}
.menu-education-container ul li.reserver a:hover,
.menu-education-container ul li.reserver.current-menu-item a,
.menu-education-anglais-container ul li.reserver a:hover,
.menu-education-anglais-container ul li.reserver.current-menu-item a {
    border:1px solid var(--color-secondary);
    background-color: var(--color-secondary);
}

/*<nav class="menu-education-container"><ul class="education-menu-items"><li class="pleinsud"><a class="pleinsud-education-bouton" href="https://plein-sud-art-actuel-imports.local//education/a-plein-sud/">À Plein sud</a></li><li class="milieu"><a class="pleinsud-education-bouton" href="https://plein-sud-art-actuel-imports.local//education/dans-votre-milieu/">Dans votre milieu</a></li><li class="campartsoleil"><a class="pleinsud-education-bouton" href="https://plein-sud-art-actuel-imports.local//education/camp-art-soleil/">Camp Art Soleil</a></li></ul></nav>*/

/* page education */
.menu-education-container ul.pleinsud-page-education {
    flex-direction:column;
}
.menu-education-container ul.pleinsud-page-education a.pleinsud-education-bouton {
    position:relative;
    display:block;
    width:100%;
    margin-right:0.1em;
    text-align:center;
    font-size: var(--font-size-huge);
    line-height: var(--line-height-huge);
    letter-spacing: var(--letter-spacing-huge);
    font-weight:500;
}

@media screen and (min-width: 768px) {
    .menu-education-container a.pleinsud-education-bouton .pleinsud-education-en-savoir-plus {
        position:relative;
        display:block;
        margin:1em auto;
    }
}


.menu-education-container ul.pleinsud-page-education  li a {
    border-radius:var(--bouton-border-radius-huge);
}


/*
.menu-education-container ul.pleinsud-page-education li.pleinsud a.pleinsud-education-bouton,
.menu-education-container ul.pleinsud-page-education li.milieu a.pleinsud-education-bouton,
.menu-education-container ul.pleinsud-page-education li.campartsoleil a.pleinsud-education-bouton,
.menu-education-container ul.pleinsud-page-education li.reserver a.pleinsud-education-bouton {
    padding: 0.1em 0;
}
*/
.menu-education-container ul.pleinsud-page-education li.pleinsud a.pleinsud-education-bouton {
    padding-top: 0.5em;
    padding-bottom: 0.5em;
}
.menu-education-container ul.pleinsud-page-education li.milieu a.pleinsud-education-bouton,
.menu-education-container ul.pleinsud-page-education li.campartsoleil a.pleinsud-education-bouton,
.menu-education-container ul.pleinsud-page-education li.reserver a.pleinsud-education-bouton {
    padding: 0;
}


@media screen and (min-width: 768px) {
    .menu-education-container a.pleinsud-education-bouton .pleinsud-education-en-savoir-plus {
        position:absolute;
        left:0.75em;
        bottom:1em;
        margin:0;
    }

}

/* page camp art soleil */
.pleinsud-jour-de-camp table tr {
    border-bottom: 1px solid var(--color-primary);
}
.pleinsud-jour-de-camp table tr:first-child {
    border-top: 1px solid var(--color-primary);
}


/* infinite scroll */
#pleinsud-scroll-status,
#pleinsud-search-scroll-status {
    position: relative;
}
#pleinsud-scroll-status .pleinsud-loader,
#pleinsud-search-scroll-status .pleinsud-loader {
    display:none;
}
#pleinsud-scroll-status.loading .pleinsud-loader,
#pleinsud-search-scroll-status.loading .pleinsud-loader {
    display:block;
}
.pleinsud-search-infinite-scroll-beacon {
    position: absolute;
    height: 220px; 
    /* the threshold that indicate at which position will trigger function */
    top: -20px; 
    width: 100%;
    background-color: transparent;
    z-index:-1;
}
/* spin animation */
@keyframes spin {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}
.pleinsud-loader {
    width:100px;
    height:100px;
    background-image:url("../images/balls.svg");
    background-repeat:no-repeat;
    background-position:center;
    position: relative;
    margin: 0 auto;
    transform: rotate(0deg);
    /*animation: spin 1s infinite linear;*/
}

/* page evenements */
.pleinsud-evenement-elements {
    margin-top:0.21em;
    margin-bottom: 0.65em;
}
.pleinsud-evenement-en-cours {
    font-size:var(--font-size-large);
    margin-bottom:0.85em;
}

.pleinsud-evenement-elements.pleinsud-grid-2 {
    gap: 1.6em 0.21em;
}

.pleinsud-evenement-elements img {
    display:block;
    width:100%;
    height:auto;
    margin-bottom:0.2em;
    object-fit:cover;
    aspect-ratio:586/388;
}
.pleinsud-evenement-artiste {
    margin-top: 0.1em;
}
.pleinsud-evenement-title {
    margin-bottom:0;
}

.pleinsud-evenement-lien-archives-wrap {
    font-size:var(--font-size-regular);
    display:flex;
    flex-wrap:nowrap;
    flex-direction:column;
    justify-content:center;
    align-items:center;
    width:100%;
    height:12.4em;
}
.pleinsud-evenement-lien-archives.pleinsud-bouton {
    /*width:min-content;*/
    padding:0.5em 2em;
}
/* page evenements - le footer est moins espacé */
.page-evenements #pleinsud-footer-main {
    margin-top:1.9em;
}

ul.pleinsud-archive-expositions-seasons-list,
li.pleinsud-archive-expositions-seasons-item {
    /* remove bullets */
    list-style-type: none;
    padding: 0;
    margin:0;
}
ul.pleinsud-archive-expositions-seasons-list {
    padding-bottom:0.5em;
    padding-left:0.1em;
}
li.pleinsud-archive-expositions-seasons-item {
    width:fit-content;
}
li.pleinsud-archive-expositions-seasons-item::marker {
    content:''!important;
}


/* page programmation (certains styles définis avec les archives expositions) */

/* espacement de la grille au titre */
.pleinsud-programmation-elements {
    margin-top:0.21em;
    margin-bottom: 0.65em;
}
.pleinsud-programmation-en-cours {
    font-size:var(--font-size-large);
    margin-bottom:0.85em;
}

.pleinsud-programmation-elements.pleinsud-grid-2 {
    gap: 1.6em 0.21em;
}

.pleinsud-programmation-elements img {
    display:block;
    width:100%;
    height:auto;
    margin-bottom:0.2em;
    object-fit:cover;
    aspect-ratio:586/388;
}
.pleinsud-programmation-artiste {
    margin-top: 0.1em;
}
.pleinsud-programmation-title {
    margin-bottom:0;
}
@media screen and (min-width: 768px) {
    .pleinsud-programmation-artiste, 
    .pleinsud-programmation-title, 
    .pleinsud-programmation-dates {
        padding-right:0.5em;
    }
}

.pleinsud-programmation-lien-archives-wrap {
    font-size:var(--font-size-regular);
    display:flex;
    flex-wrap:nowrap;
    flex-direction:column;
    justify-content:center;
    align-items:center;
    width:100%;
    height:12.4em;
}
.pleinsud-programmation-lien-archives.pleinsud-bouton {
    /*width:min-content;*/
    padding:0.5em 2em;
}
/* page programmation - le footer est moins espacé */
.page-id-629 #pleinsud-footer-main,
.page-id-4248 #pleinsud-footer-main,
.page-programmation #pleinsud-footer-main {
    margin-top:1.9em;
}

/* page entretiens d'artistes */
.pleinsud-exposition-image-principale.entretien {
    margin-bottom:0.15em;
}
.pleinsud-entretiens-container.pleinsud-grid-2 {
    gap: 0.825em 0.21em;
}
.pleinsud-entretien-item {
    position:relative;
}
.pleinsud-bouton.pleinsud-entretien-bouton {
    position:absolute;
    top:1.2em;
    left:0.6em;
    width:fit-content;
    background-color:var(--color-background);
    padding:0.1em 0.3em;
/*    padding:0.5em 0.5em 0.5em 0.5em;
    border-radius:var(--bouton-border-radius);
    text-decoration:none;
    
    color:var(--color-primary);*/
} 
.pleinsud-bouton.pleinsud-entretien-bouton:hover {
    background-color:var(--color-background);
    color:var(--color-primary);
    text-decoration:none;
}


/* formulaires */
/* retirer le branding le temps d'acquérir une licence */
#brand-div {
    display: none !important;
    opacity: 0;
    height: 0;
}
.arf_form {
    max-width: 100%!important;
    margin: 0!important;
}
@media screen and (min-width: 768px) {
    .arf_form {
        max-width: 50%!important;
        margin: 0!important;
    }
}

.arf_main_label {
    font-size:var(--font-size-regular)!important;
    line-height:var(--line-height-regular)!important;
    letter-spacing:var(--letter-spacing-regular)!important;
}
.arf_submit_btn {
    font-size:var(--font-size-regular)!important;
    background-color: var(--color-background)!important;
    color: var(--color-primary)!important;
    border-radius: var(--bouton-border-radius)!important;
    border:1px solid var(--color-primary)!important;
    padding: 0.1em 0.8em!important;
    font-size: var(--font-size-regular)!important;
    line-height: var(--line-height-regular)!important;
    letter-spacing: var(--letter-spacing-regular)!important;
    transition:none!important;
}
.arf_submit_btn:hover {
    background-color: var(--color-primary)!important;
    color: var(--color-button-hover)!important;
    transition:none!important;
}
.arf_standard_form,
.arf_form .arf_fieldset {
    padding:0!important;
}
.arf_form .formtitle_style {
    color: var(--color-primary)!important;
    font-size: var(--font-size-regular)!important;
}
.arf_form .arftitlecontainer {
    margin: 0px 0px 1.15em 0px!important;
}
.arf_form .arfformfield {
    margin-bottom: 0.7em!important;
}
.arf_form .top_container .arf_radiobutton:not(.arf_enable_radio_image_editor):not(.arf_enable_radio_image) {
    margin: 0 2% 0.25em 0!important;
}
.setting_radio.arf_custom_radio .arf_radio_input_wrapper input[type='radio'] + span {
    vertical-align:baseline!important;
}

/* Style the radio button border (outer circle) */
.setting_radio.arf_custom_radio .arf_radio_input_wrapper input[type="radio"] + span {
    border: 1px solid var(--color-primary) !important;
    top:1px!important;
}
#arffrm_100_container .setting_radio.arf_custom_radio .arf_radio_input_wrapper input[type="radio"] + span i {
    font-size:12px!important;
}
.arf_form .arfformfield .controls {
    padding-top: 0.15em!important;
}
/* forcer la taille de police des formulaires
* NOTE - les labels des radiobuttons sont configurés en JS (pleinsud.js) étant donné l'impossibilité de les cibler avec CSS à cause de l'ID #arffrm_100_container utilisé selon le formulaire
 */
html body .arf_form * {
    font-size: var(--font-size-regular) !important;
    line-height: var(--line-height-regular) !important;
    letter-spacing: var(--letter-spacing-regular) !important;
}

/* forms placeholder text */
input::placeholder {
    color: #999!important;
    opacity: 1!important;
}
/* Vendor prefixes */
input::-webkit-input-placeholder { color: #999!important; }
input::-moz-placeholder { color: #999!important; }
input:-ms-input-placeholder { color: #999!important; }
input::-ms-input-placeholder { color: #999!important; }
