html, body{
    overflow-x: hidden;
}

.wp-site-blocks{
    margin-block-start: 0 !important;
}

:where(.wp-site-blocks) > * , :root :where(.is-layout-constrained) > *{
    margin-block-start: 0 !important;
    margin-block-end: 0;
}


.hero-home{
    position: relative;
}

body.home .hero-home h1.wp-block-heading{
    position: relative;
    display: inline-block;
}

body.home .hero-home h1.wp-block-heading::after{
    content: "";
    position: absolute;
    top: -0.2em;
    right: -1.6em;
    width: 5em;
    height: calc(100% + 0.4em);
    background-image: url('../img/h1-trace.svg');
    background-repeat: no-repeat;
    background-position: top right;
    background-size: contain;
    pointer-events: none;
}

/* Bandeau décalé */

.stripe-home .stripe-col{
    gap: 0;
}

.stripe-home .stripe-col .stripe-arrow{
    width: 113px;
    height: 89px;
}

.stripe-home p{
    top: 1px;
    position: absolute;
    left: 112px;
    overflow: visible;
    padding-left: 10px;
    white-space: nowrap;
    border-top: 3px solid var(--wp--preset--color--violet);
    border-bottom: 3px solid var(--wp--preset--color--violet);
    border-right: 1px solid var(--wp--preset--color--violet);
    padding-right: 1000px;
}

.stripe-home p span{
    border: 2px solid #fff;
    padding: 10px;
    border-radius: 25px;
}
.stripe-home p span.rotated{
    display: inline-block;
    position: relative;
    transform: rotate(-5deg);
    transform-origin: center;
}

.stripe-shifted{
    position: relative;
}

.stripe-shifted .stripe-shifted-container{
    transform: translateX(541px) translateY(-115px);
}

.stripe-shifted .shifted-col .stripe-arrow{
    width: 113px;
    height: 89px;
}

.stripe-shifted .stripe-shifted-container .shifted-col .shifted-button-container{
    position: absolute;
    top: 1px;
    width: 100%;
    left: 112px;
    overflow: visible;
    padding-left: 10px;
    border-top: 18px solid var(--wp--preset--color--violet);
    border-bottom: 19px solid var(--wp--preset--color--violet);
    border-right: 1px solid var(--wp--preset--color--violet);
}

.shifted-button-container:after{
    content: "";
    position: absolute;
    left: 700px;
    top: -18px;
    background-color: var(--wp--preset--color--violet);
    height: 87px;
    width: 50%;
    display: inline-block;
}

.stripe-shifted .stripe-shifted-container .shifted-col .shifted-button-container .shifted-button .wp-block-button{
    transform: translateX(-200px)
}

/* fake masonry */

.row-fakemasonry{
    align-items: normal;
}

/* Conteneur masonry */
.masonry-grid {
    margin: 0 auto;
}

/* Chaque élément masonry */
.masonry-item {
    border-radius: 14px;
    overflow: hidden;
}

/* Optionnel : espacement */
.masonry-item {
    width: 30%; /* adaptatif avec Masonry */
    margin-bottom: 1.25rem;
}

.img-formation-first{
    margin-top: -8px;
}

.shifted-row{
    width: 60%;
}

.shifted-blocks {
    position: relative;
}

.shifted-blocks > .shifted-row ~ .shifted-row { 
    margin-top: 0vh;
}

.shifted-block.shifted-left{
    margin-top: -25%;
}

.shifted-block h5{
    margin-top: auto;
}
.shifted-block .wp-block-image img{
   margin-top: -130px; 
}

.subfooter{
    margin-top: 0;
}

/* Social links */

.wp-block-social-links .wp-block-social-link.wp-social-link.wp-social-link-linkedin, .wp-block-social-links .wp-block-social-link.wp-social-link.wp-social-link-facebook{
    background-color: transparent !important;
}

.wp-block-social-links .wp-block-social-link.wp-social-link.wp-social-link-linkedin a svg, .wp-block-social-links .wp-block-social-link.wp-social-link.wp-social-link-facebook a svg {
    display: none !important;
}

.wp-block-social-links .wp-block-social-link.wp-social-link.wp-social-link-linkedin a {
    background-image: url('../img/uil_linkedin.svg') !important;
    background-size: cover !important;
    background-repeat: no-repeat !important;
    background-position: center !important;
    height: 50px;
    width: 50px;
}

.wp-block-social-links .wp-block-social-link.wp-social-link.wp-social-link-facebook a {
    background-image: url('../img/fe_facebook.svg') !important;
    background-size: cover !important;
    background-repeat: no-repeat !important;
    background-position: center !important;
    height: 50px;
    width: 50px;
}

/* footer */

.footer-container ul.page-links{
    list-style-type: none;
    padding: 0;
}

.footer-container ul.page-links li{
    margin-top: 0.3rem;
}

.footer-container .wp-block-social-links{
    text-align: right;
    display: block;
}
.footer-container .logo-footer{
    position: relative;
}
.footer-container .logo-footer:after{
    content: "";
    top: 0;
    left: 300px;
    position: absolute;
    background-color: var(--wp--preset--color--peach);
    height: 100%;
    width: 200%;
    display: inline-block;
}


/* Section étapes */
.blocs-etapes .bloc-etape{
    position: relative;
}

.blocs-etapes .bloc-etape p.number-steps{
    position: absolute;
    top:10px;
    left:-55px;
    display:block;
    background-color: var(--wp--preset--color--apple);
    padding: 10px;
    border-radius: 50%;
    width:30px;
    height:29px;
    text-align: center;
    border: 10px solid var(--wp--preset--color--eggshell);
}
.blocs-etapes .bloc-etape p.number-steps span{
    display: block;
    transform: translateY(-9px);
    font-size: 2rem;
    color: var(--wp--preset--color--myrtle);
    font-weight:600;
}

/* Section TODO */

.todo-container {
    position:relative;
    z-index:0;
  clip-path: polygon(
    0 20%,
    5% 10%,
    10% 20%,
    15% 10%,
    20% 20%,
    25% 10%,
    30% 20%,
    35% 10%,
    40% 20%,
    45% 10%,
    50% 20%,
    55% 10%,
    60% 20%,
    65% 10%,
    70% 20%,
    75% 10%,
    80% 20%,
    85% 10%,
    90% 20%,
    95% 10%,
    100% 20%,
    100% 100%,
    0 100%
  );
}

.todo-container .wp-block-button{
    position: absolute;
}

.todo-row p{
    position: relative;
    margin-left: 30px;
}
.todo-row p:before{
    content:"";
    position: absolute;
    width:20px;
    height: 20px;
    left:-30px;
    top:3px;
    background-repeat: no-repeat;
    background-size: contain;
    background-image: url(../img/puces.svg);
}
/* nav header */

.menu-container{
    background: rgba(229, 215, 255, 0.50);
    border-radius: 45px;
}

@media (min-width: 1424px) {
    .menu-container,
    .menu-container > .wp-block-group {
        max-width: 1424px !important;
    }
}

nav.nav-header ul li{
    font-size: 0.875rem;
    font-style: normal;
    font-weight: 700;
}

nav.nav-header ul li.link-espace a{
    border-radius: 30px;
    background-image: url(../img/peach-arrow.svg);
    background-repeat: no-repeat;
    background-position: calc(100% + 5px) center;
    background-size: auto 105%;
    padding-top: 15px;
    padding-bottom: 15px;
    padding-left: 15px;
    padding-right: 65px;
    border: 1px solid transparent;
    transition: border-color 0.3s ease, opacity 0.3s ease;
    background-color: var(--wp--preset--color--eggplant) !important;
    color: var(--wp--preset--color--snow) !important;
    border: 1px solid transparent;
    transition: border-color 0.3s ease, opacity 0.3s ease;
}

nav.nav-header ul li.link-espace a:hover{
    border: 1px solid var(--wp--preset--color--snow);
    opacity: 0.9;
}
.header-logo img{
    margin-left: 15px;
}

.link-inactive a{
    opacity: 0.4;
}

/* Section équipe */

.card-team span.red-circle{
    width: 5rem;
    height: 5rem;
    background-color: var(--wp--preset--color--peach);
    border-radius: 50%;
    position:absolute;
    z-index: 98;
    transition: right 0.3s ease, top 0.3s ease;
}

.team-first span.red-circle:first-of-type{
    right: -10px;
    top: 70px;
}
.team-first span.red-circle:last-of-type{
    right: 266px;
    top: 511px;
}

.team-two span.red-circle:first-of-type{
    right: 252px;
    top: 432px;
}
.team-two span.red-circle:last-of-type{
    right: 335px;
    top: 511px;
}

.team-three span.red-circle:first-of-type{
    right: 40px;
    top: 379px;
}
.team-three span.red-circle:last-of-type{
    right: -22px;
    top: 450px;
}

/* Animation sur hover du conteneur */
.team-first:hover span.red-circle:first-of-type{
    right: -15px;
    top: 65px;
}
.team-first:hover span.red-circle:last-of-type{
    right: 261px;
    top: 516px;
}

.team-three:hover span.red-circle:first-of-type{
    right: 35px;
    top: 374px;
}
.team-three:hover span.red-circle:last-of-type{
    right: -27px;
    top: 455px;
}

.team-two:hover span.red-circle:first-of-type{
    right: 247px;
    top: 427px;
}
.team-two:hover span.red-circle:last-of-type{
    right: 340px;
    top: 516px;
}

.card-team.card-right{
    height: 500px;
    transform: translateY(-175px);
    position: relative;
}

.card-team.card-right .team-img{
    text-align: right;
}

.card-team.card-right .team-img img{
    width: 80%;
}

.card-team.card-right .team-name-role{
    display: inline-flex;
    flex-direction: column; /* pour empiler h3 et p */
    align-items: flex-start; /* alignement à gauche */
    width: auto;
    transform: translateY(175px);
    z-index: 99;
}
.card-team.card-right .team-name-role.last{
    transform: translateY(219px);
}

.card-team.card-right .team-name-role .team-role{
    margin-block-start: var(--wp--preset--spacing--xs);
}

.card-team.card-right .team-desc{
    transform: translateX(-175px) translateY(-225px);
    width:75%;
}
.card-team.card-right .team-desc.last{
    transform: translateX(-175px) translateY(-380px);
}

.card-team.card-left{
    height: 500px;
    transform: translateY(-150px); 
}

.card-team.card-left .team-img{
    text-align: right;
}

.card-team.card-left .team-img img{
    width: 80%;
}

.card-team.card-left .team-name-role{
    display: inline-flex;
    flex-direction: column;
    align-items: flex-end;
    width: auto;
    transform: translateX(450px) translateY(175px);
    z-index: 99;
}

.card-team.card-left .team-name-role .team-role{
    margin-block-start: var(--wp--preset--spacing--xs);
}

.card-team.card-left .team-desc{
    transform: translateX(300px) translateY(-380px);
    width:75%;
}

.team-footer{
    position:relative;
}

.team-footer-img img{
    margin-top: -50px;
}

.team-img-text{
    margin-block-start: var(--wp--preset--spacing--xs);
    display: inline-flex;
    flex-direction: column;
    width: auto;
    position: absolute;
    top: 170px;
}

/* Offres d'emploi */
.liste-offres .bloc-offre h3{
    padding-right: 160px;
    padding-bottom: 10px;
}

.liste-offres .bloc-offre{
    position: relative;
    transition: background-color 0.6s ease;
}
.liste-offres .bloc-offre:hover{
    background-color: #F3EDFD;
}

.liste-offres .bloc-offre .wp-block-buttons{
    position:absolute;
    right: -30px;
}

.liste-offres .bloc-offre .nom-offre{
    position:relative;
    display: inline-block;
    width: fit-content;
    padding:5px 15px 5px 40px;
    margin-bottom: 10px;
    background-color: var(--wp--preset--color--glycine);
    border-radius: 14px;
}
.liste-offres .bloc-offre .nom-offre::before{
    content:"";
    position:absolute;
    left:12px;
    width: 20px;
    height: 20px;
    background-image: url("../img/travail.svg");
    background-repeat: no-repeat;
    background-size: contain;
}

.liste-offres .bloc-offre .loc-offre{
    display: inline-block;
    width: fit-content;
    padding:5px 15px 5px 40px;
    margin-bottom: 10px;
    background-color: var(--wp--preset--color--apple-soft);
    border-radius: 14px;
}
.liste-offres .bloc-offre .loc-offre::before{
    content:"";
    position:absolute;
    left:39px;
    width: 20px;
    height: 20px;
    background-image: url("../img/localisation.svg");
    background-repeat: no-repeat;
    background-size: contain;
}
.liste-offres .bloc-offre .details-offre p{
    padding:15px;
}

/* Fil d'Ariane (Yoast SEO) */
.yoast-breadcrumbs {
    font-size: var(--wp--preset--font-size--xxs);
    color: var(--wp--preset--color--lavender);
    line-height: 1.6;
}

.yoast-breadcrumbs .breadcrumb_last {
    margin-left: 0.25em;
}

.yoast-breadcrumbs a {
    color: var(--wp--preset--color--lavender);
    text-decoration: none;
    transition: color 0.2s ease;
}

.yoast-breadcrumbs a:hover,
.yoast-breadcrumbs a:focus-visible {
    color: var(--wp--preset--color--glycine);
    text-decoration: underline;
}

/* Lien accueil (premier lien) : remplacé visuellement par une icône maison (texte conservé pour l'accessibilité) */
.yoast-breadcrumbs > span > span:first-child a {
    display: inline-block;
    width: 1.1em;
    height: 1.1em;
    overflow: hidden;
    text-indent: 100%;
    white-space: nowrap;
    vertical-align: -0.15em;
    background-color: currentColor;
    -webkit-mask: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'><path d='M3 10.5L12 3l9 7.5V20a1 1 0 0 1-1 1h-5v-7h-6v7H4a1 1 0 0 1-1-1v-9.5z'/></svg>") center/contain no-repeat;
            mask: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'><path d='M3 10.5L12 3l9 7.5V20a1 1 0 0 1-1 1h-5v-7h-6v7H4a1 1 0 0 1-1-1v-9.5z'/></svg>") center/contain no-repeat;
}

.yoast-breadcrumbs > span > span:first-child a:hover,
.yoast-breadcrumbs > span > span:first-child a:focus-visible {
    background-color: var(--wp--preset--color--glycine);
    text-decoration: none;
}

/* Item courant : pill */
.yoast-breadcrumbs .breadcrumb_last {
    background-color: var(--wp--preset--color--glycine);
    color: var(--wp--preset--color--ultra);
    border-radius: var(--wp--custom--radius--full);
    padding: 0.25em 0.75em;
    font-weight: var(--wp--custom--font-weight--semibold);
}