/*
Theme Name: la perouse
Theme URI: 
Author: Winseo
Author URI: https://winseo.fr
Description: Thème agence pour le Full Site Editing
Requires at least: 6.5
Tested up to: 6.5
Requires PHP: 8.0
Version: 1.2
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: winseo_
*/

body {
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    text-rendering: optimizeLegibility;
    overflow-x: hidden;
}
html {
    scroll-behavior: smooth;
}

/* =========================
   Variables communes
   À PERSONNALISER : adapter ou supprimer selon les décors du projet.
   Garder le format de chemin racine-relatif (/wp-content/...) plutôt
   qu'une URL en dur, pour que ça survive à la migration de domaine.
========================= */


/********************************************
                    GENERAL 
**********************************************/
/*_______ BTN RETOUR EN HAUT_________*/
.back-to-top {
    position: fixed;
    bottom: var(--wp--preset--spacing--m);
    right: var(--wp--preset--spacing--s);
    width: 24px;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.3s, visibility 0.3s;
    cursor: pointer;
}
.back-to-top.is-visible {
    opacity: 1;
    visibility: visible;
    z-index: 9;
}
.back-to-top.is-anchored {
    position: absolute;
    bottom: auto;
}

/*________________ TARGET_____________*/
:target {
    scroll-margin-top: 100px;
}

/*_______ CLASSES UTILITAIRES_________*/
/*.max-20 { max-width: 20vw; }*/
.win-pos-relative{position: relative;}
.win-translateY-50 { transform: translateY(50%); }
.win-translateY-offsetmd { transform: translateY(calc(var(--wp--preset--spacing--l) * -1));}
.win-translateY-offset50 { transform: translateY(-50%); }
.win-zi-5 { z-index: 5; position: relative; }
.win-zi-100 { z-index: 100; position: relative; }
.win-balance{text-wrap: balance; max-width: 600px;margin: auto;}
.win-m-auto{margin: auto;}
.win-font2 {
    font-family: var(--wp--preset--font-family--secondary);
    font-weight: 400 !important;
}
.bande-teal {
    background-color: var(--wp--preset--color--primary);
    /* ton vert/teal */
    clip-path: polygon(0 40%, 100% 0%, 100% 100%, 0% 100%);
    height: 120px;
    margin-top: -60px;
}
.img-points{
    position: absolute;
    width: clamp(2.5rem, 0.5rem + 10vw, 12.5rem);
    height: clamp(2.75rem, 0.5625rem + 10.9375vw, 13.6875rem);
    object-fit: contain;
}
.win-bottom-right{
    bottom: 0;
    padding-bottom: var(--wp--preset--spacing--l);
    right:0;
    transform: translateX(50%);
}
.win-top-left{
    top:0;
    padding-top: var(--wp--preset--spacing--l);
    left:0;
    transform: translateX(-50%);
}

/*_______ CORE/DETAILS_________*/
.wp-block-details {
    padding-bottom: var(--wp--preset--spacing--xs);
    border-bottom: 1px solid var(--wp--preset--color--primary);
}
.wp-block-details summary{
    color: var(--wp--preset--color--primary);
    font-size:var(--wp--preset--font-size--s);
    font-weight: 700;
}


/*________________ CORE/BUTTON_____________*/
.is-style-alt-mint a:hover{
    background-color: var(--wp--preset--color--accent);
    color: var(--wp--preset--color--white);
}
.is-style-alt-lavand a:hover{
background-color: var(--wp--preset--color--primary);
}
.is-style-alt-light-lavand a:hover{
background-color: var(--wp--preset--color--white) !important;
border-color: 1px solid var(--wp--preset--color--contrast);
}
/*________________ CARROUSEL ____________*/
.win-slider-products .wp-block-cb-slide-v2 .wp-block-columns {
    /*box-shadow: inset 2px 2px 30px rgba(0, 0, 0, 0.05);*/
    border:1px solid var(--wp--preset--color--primary);
    gap:0;
}
.win-slider-products .wp-block-cb-slide-v2 .wp-block-columns>.wp-block-column:first-child{
    padding:var(--wp--preset--spacing--m);
}
/*________________ HTML PERSO PAGE CONTACT ____________*/
.is-style-social-cta {
    transition: background-color 0.2s ease;
}

.is-style-social-cta .social-cta-link {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: var(--wp--preset--spacing--xs);
    text-decoration: none;
    width: 100%;
    cursor: pointer;
    color: #fff;
    font-weight: bold;
}

.is-style-social-cta:hover {
    background-color: var(--wp--preset--color--accent) !important;
}

/********************************************
                    MENU 
**********************************************/
/* menu desktop - logo centré */
.grid-menu-desktop {
    grid-template-columns: 1fr 1fr;
}
.nav-left {
    padding-right: 60px !important;
    justify-content: space-evenly;
}
.nav-right {
    padding-left: 60px !important;
    justify-content: space-evenly;
}
.justify-right {
    justify-content: flex-end;
}

.justify-left {
    justify-content: flex-start;
}

.justify-center {
    justify-content: center;
}
.logo-absolute {
    position: absolute;
    top: 40px;
    left: calc(50% - 70px);
    width: 140px;
    border-radius: 50%;
    z-index: 200;
}
.wp-block-navigation-item__content, .wp-block-navigation-item__label{font-weight: bold;}
.wp-block-navigation__submenu-container {
    min-width: 300px !important;
    top: calc(100% + 1*var(--wp--preset--spacing--s)) !important;
    border: none !important;
    box-shadow: none !important;
}
.wp-block-navigation .has-child .wp-block-navigation__submenu-container>.wp-block-navigation-item>.wp-block-navigation-item__content{
    padding: var(--wp--preset--spacing--xs) !important;
    font-size: 18px;
}
.wp-block-navigation__submenu-container li:not(.wp-block-navigation__submenu-container li:last-child){
    border-bottom: 1px solid var(--wp--preset--color--primary);
}
.wp-block-navigation-item.has-child > .wp-block-navigation__submenu-container {
    padding: 0 var(--wp--preset--spacing--xs);
    left: 0 !important;
    right: auto !important;
}
.wp-block-site-logo,
.wp-block-buttons {
    flex-shrink: 0 !important;
}

.wp-block-navigation .wp-block-navigation__container {
    row-gap: var(--wp--preset--spacing--s) !important;
}

/*________________ MENU MOBILE_____________*/
/* 1. Le sous-menu repasse dans le flux, pleine largeur, sans décalage latéral */
.wp-block-navigation__overlay-container .wp-block-navigation.is-vertical .wp-block-navigation__submenu-container {
    position: static;
    left: auto;
    top: auto;
    width: 100%;
    flex-basis: 100%;
    min-width: 0;
    box-shadow: none;
    background: transparent;
}
/* 2. On autorise le <li> à faire passer le sous-menu sous le bouton */
.wp-block-navigation__overlay-container .wp-block-navigation.is-vertical .wp-block-navigation-item.has-child {
    flex-wrap: wrap;
}

.wp-block-navigation__overlay-container ul.wp-block-navigation__container{z-index:100;}
.wp-block-navigation__overlay-container ul.wp-block-navigation__container> .wp-block-navigation-item{width: 90%;}
.wp-block-navigation__overlay-container ul.wp-block-navigation__container>li{
    border-bottom: 1px solid #fff;
    padding: var(--wp--preset--spacing--s) 0;
}
.wp-block-navigation__overlay-container ul.wp-block-navigation__container>li a[aria-current=page]{
    opacity: 0.7;
}



/*________________ TAILLE ICON HAMBURGER_____________*/
.wp-block-navigation__responsive-container-open svg {
    width: 40px;
    height: 40px;
}
.wp-block-navigation-overlay-close svg {
    width: 40px;
    height: 40px;
}

/*________________ CORE/LINK_____________*/
a[aria-current=page]:not(.wp-block-navigation__overlay-container ul.wp-block-navigation__container>li a) {
    color: var(--wp--preset--color--accent) !important;
    font-weight: 400 !important;
}

a[aria-current=page]:hover {
    font-weight: inherit;
}

/* BREVO */
p:has(+ .sib_signup_box_inside_1){
height:0;
margin:0;
padding: 0;
 }
#sib_signup_form_1{margin-top: 0;}
:where(.sib-form-message-panel) {
    display: none;
}
:where(.sib-form-message-panel .sib-notification__icon) {
    width: 20px;
    height: 20px;
}
.sib-form .entry__field {
    font-family: var(--wp--preset--font-family--primary) !important;
    font-size: var(--wp--preset--font-size--xs) !important;
    text-align: left;
    color: var(--wp--preset--font-family--primary) !important;
}
#sib-container a {
    text-decoration: underline;
    color: var(--wp--preset--font-family--primary);
}
#sib-container {
    padding: 0px;
}
.grecaptcha-badge{opacity:0;}
.sib-form .entry__field {
    border: 1px solid var(--wp--preset--color--primary) !important;
    border-radius: 0px !important;
}
.sib-form .entry__field input::placeholder{
    color:var(--wp--preset--color--primary) !important;
}
.sib-form-block__button{
    font-family: var(--wp--preset--font-family--primary) !important;
    background-color: var(--wp--preset--color--primary);
    border-radius: var(--wp--custom--radius--m);
    border-width: 0;
    color: var(--wp--preset--color--white);
    font-size: var(--wp--preset--font-size--xs);
    font-weight: 700;
    letter-spacing: inherit;
    line-height: inherit;
    padding: 12px 28px;
    text-decoration: none;
}
.sib-form-block__button:hover{
        background-color: var(--wp--preset--color--accent);
}

/********************************************
                   RESPONSIVE 
**********************************************/
@media (width < 1320px) {
    .is-layout-constrained > .alignwide { width: 88vw; }
}
@media (width < 1281px) {
    .responsive-grid { 
        grid-template-columns: repeat(2, 1fr); 
        column-gap: var(--wp--preset--spacing--l);
        row-gap: var(--wp--preset--spacing--m);
    }
    #win-agenda.responsive-grid{
        row-gap: 0 !important;
    }
}
@media (width > 1024px) {
    .hide-on-desktop { display: none !important; }
}
@media (width < 1025px) {
    .hide-on-tablet { display: none !important; }
    .win-margin-mobile {
        padding-left: 6vw !important;
        padding-right: 6vw !important;
    }
    .win-center-mobile {
        text-align: center;
        margin: auto !important;
    }

    .win-reverse {
        -webkit-flex-direction: column-reverse;
        -ms-flex-direction: column-reverse;
        flex-direction: column-reverse;
    }
        /*_______ HERO COVER________ */
        .is-style-hero .wp-block-cover{
            min-height: calc(100vh - 86px);
            padding-bottom: 25vh !important;
        }
                          /*_______ MENU MOBILE_______ */
.wp-block-navigation__responsive-container.is-menu-open .has-child:not(.winseo-ouvert)>.wp-block-navigation__submenu-container {
    display: none !important;
}

.wp-block-navigation__responsive-container.is-menu-open .has-child>.wp-block-navigation__submenu-icon svg {
    transform: none !important;
}

.wp-block-navigation__responsive-container.is-menu-open .has-child.winseo-ouvert>.wp-block-navigation__submenu-icon svg {
    transform: rotate(180deg) !important;
}
}
@media (width > 781px) {
.wp-block-cb-carousel-v2[data-cb-pagination=true] .swiper-horizontal{margin-bottom: 0 !important;}
.wp-block-cb-carousel-v2 .cb-pagination.swiper-pagination-horizontal{display:none !important;}
}
@media (width < 782px) {
        .win-center-flex {
                flex-direction: column;
                gap: var(--wp--preset--spacing--s);
            }
        .win-maxw-small { max-width: 15vw !important; }
        .win-maxw-medium { max-width: 30vw !important; }
        .hide-translate,.win-translateY-offsetmd{transform:inherit;}
        .win-slider-products .wp-block-cb-slide-v2 .wp-block-columns>.wp-block-column:first-child {
            padding: var(--wp--preset--spacing--l);
            /*min-height: 252px;*/
        }
        .win-slider-products .wp-block-cb-slide-v2 .wp-block-columns>.wp-block-column:nth-child(2) img {
            width:100%;
        }
        .cb-button-next,.cb-button-prev{display: none;}
}
@media (width < 600px) {
    .responsive-grid { grid-template-columns: repeat(1, 1fr); }
    .responsive-mobile-grid{grid-template-columns: repeat(2, 1fr);}
    .hide-on-mobile,
    .img-points { display: none !important; }
}
