/*
Theme Name: lbba26
Theme URI: https://example.com/
Description: Child theme of Twenty Twenty-Five.
Author: LBBA
Template: twentytwentyfive
Version: 1.0.0
Text Domain: lbba26
*/

/* Import parent theme styles if needed - we enqueue in functions.php */

/*
 * @font-face setup
 * Place legally obtained font files in the `fonts/` folder (woff2, woff).
 * Examples below reference `fonts/HelveticaNeue.woff2` and `fonts/HelveticaNeue.woff`.
 * Do NOT include proprietary font files without proper license.
 */


/* Apply as site default; theme.json also sets this, but CSS ensures front-end fallback */
:root {
    font-size: 0.91em;
    --wp--preset--font-size--small: 0.875rem;
    --wp--preset--font-size--medium: 0.91rem!important;

    --wp--preset--font-size--large: clamp(1.125rem, 1.125rem + ((1vw - 0.2rem) * 0.392), 1.375rem);
    --wp--preset--font-size--x-large: clamp(1.75rem, 1.75rem + ((1vw - 0.2rem) * 0.392), 2rem);
    --wp--preset--font-size--xx-large: clamp(2.15rem, 2.15rem + ((1vw - 0.2rem) * 1.333), 3rem);
    --wp--preset--font-family--helvetica-neue: "Helvetica Neue";
    --wp--preset--font-size--normal: 0.91rem!important;
    --wp--preset--font-size--huge: 42px;
}


.wp-block-social-links .wp-social-link svg {

    display: none;
}
.wp-block-social-link:hover {
    transform: none!important;
        filter: brightness(1.05);
         color: #918181!important;
}
:root :where(a:where(:not(.wp-element-button)):hover) {
    text-decoration: none;
    filter: brightness(1.05);
    color: #918181;
}
:root :where(.wp-block-navigation a:where(:not(.wp-element-button)):hover), .wp-block-navigation .wp-block-navigation-item__content.wp-block-navigation-item__content:hover {
    text-decoration: none!important;
     color: #918181;
}
:root :where(.wp-block-post-title a:where(:not(.wp-element-button))) {
    text-decoration: none !important;
}

:root :where(.wp-block-post-title a:where(:not(.wp-element-button)):hover) {
    filter: contrast(0.5);
    color: #918181;
}


html .wp-block-social-links .wp-social-link span:not(.screen-reader-text) {font-size: var(--wp--preset--font-size--large);display: block;line-height: 0.6em;}
ul.wp-block-social-links {
    /* row-gap: var(--wp--preset--spacing--70); */
    line-height: 1.4;
    margin-block-start: var(--wp--preset--spacing--40);
    margin-block-end: 0;
    text-transform: uppercase;

}
.wp-block-social-links .wp-block-social-link.wp-social-link {
    color:black;
    background: none;
    line-height: 0.6em;
}

html .wp-block-social-links .wp-social-link span:not(.screen-reader-text) {
    font-size: var(--wp--preset--font-size--small);

}
.wp-block-navigation .wp-block-navigation-item__label, li.wp-block-navigation-item.wp-block-navigation-link {
    /* line-height: 0.6em; */
}
.home header.wp-block-template-part, .single-portfolio header.wp-block-template-part, header.wp-block-template-part {
    position: fixed;
    top: 0;
    z-index: 1;
    width: 100%;
}
.home.logged-in header.wp-block-template-part,
.single-portfolio.logged-in  header.wp-block-template-part, 
body.logged-in header.wp-block-template-part {
    top: 32px;
}
html main {
--wp--preset--spacing--60: 0;
--wp--style--global--content-size: 650px;
--wp--preset--spacing--80: clamp(100px, 15vw, 350px);
--wp--preset--spacing--70: clamp(70px, 10vw, 140px);
}

h6 {
    font-size: var(--wp--preset--font-size--small);
    font-weight: 700;
    letter-spacing: 1.4px;
    text-transform: uppercase;
}

h4{
font-size: 55px !important;
line-height: 1 !important;
letter-spacing: -0.02em !important;}

h1 {
    font-family: 'Helvetica Neue', Arial, sans-serif;
    font-weight: 400;
    font-size: 90px!important;
    line-height: 0.9;
  
    text-transform: uppercase;
      
}
.has-parallax h1 {  color: #ffffff;
    filter: drop-shadow(2px 4px 6px #000000cc);
    background: linear-gradient(359deg, #0000003b, transparent, transparent);
   padding: 100px var(--wp--preset--spacing--20) 11px;
 
}

h1.wp-elements-f1d40ceffd75256d86cde076aae83c4b{
       padding: 100px var(--wp--preset--spacing--20) 11px;
}
nav.is-responsive.items-justified-right.wp-block-navigation-is-layout-flex {
    position: fixed;
    top: 0;
    margin-top: 45px !important;
    right: var(--wp--preset--spacing--40);
    z-index: 10;
    
}
.wp-block-navigation-overlay-close {

    margin-top: 32px !important;
    margin-right: 5px !important;
}
.has-modal-open header{
    position: fixed !important;
    top: 0;
    z-index: 1;
    width: 100%;
}
.aligncenter.wp-block-site-logo {
    z-index: 1;
    position: relative;
}

footer nav.wp-block-navigation.is-horizontal.is-layout-flex.wp-block-navigation-is-layout-flex a:after {
    content: ' →';
}
.wp-block-cover.is-light.has-parallax, .home .wp-block-cover.is-light {
    display: flex;
    align-items: flex-end;
    padding: 0;
}

.logged-in .wp-block-cover.is-light.has-parallax {

    min-height: calc(100vh - 32px) !important;
}
button.wp-block-navigation__responsive-container-open.always-shown, .wp-block-navigation-overlay-close {
    margin: 23px 0;
}
p.is-style-fiche-technique.wp-block-paragraph, .is-style-lbba-card {
    position: absolute;
    top: 0;
    filter: invert(1);
    right: 0;
    width: 28%;
    /* font-size: 0.8em; */
    background: black;
    color: white;
    padding: 2em 0.5em 2em 2em;
    margin-block-start: -1.2em;
}
li.labclimat:not(:hover) .wp-block-group.hide, li:not(:hover) .wp-block-group.publication {
    opacity: 0;
}
li.labclimat .wp-block-group.hide, li .wp-block-group.publication {
   z-index: 100;
    position: absolute;
    top: 0;
    background: #ffffff;
    width: 100%;
    height: 100%;
    display: flex;
    /* aspect-ratio: 1; */
    justify-content: center;
    padding: var(--wp--preset--spacing--20);
    transition: opacity 0.5s ease;
    align-items: center;
}
li.labclimat, li:has(.wp-block-group.publication){
    position:relative
}


li.labclimat figure.wp-block-post-featured-image, li:has(.wp-block-group.publication) figure.wp-block-post-featured-image {
    margin:0;
}
:root :where(.is-layout-flex) {
    gap: var(--wp--preset--spacing--40);
    row-gap: var(--wp--preset--spacing--40);
    column-gap: var(--wp--preset--spacing--40);
}
:root :where(.is-layout-flow) > * {
    margin-block-start: var(--wp--preset--spacing--40);
    margin-block-end: 0;
}

.wp-block-navigation__responsive-container.is-menu-open.is-menu-open {
    background-color: #f4f1e8 !important;
    color: inherit !important;
}
.lbba26-plan-map {
   filter: grayscale(1) contrast(1.1);
    width: 100%;
    mix-blend-mode: darken;
    float: right;
}
.lbba26-plan-map.alignfull {
    
    padding: 0;
    width: calc(120% + var(--wp--style--root--padding-right) * 1);
    border-top: 7px solid #d8d8d8;
    border-bottom: 7px solid #d8d8d8;
  }


/* Slide-in-from-left animation for h4 */
@keyframes lbba26-slide-in-left {
    from {
        opacity: 0;
        transform: translateY(36px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* Only elements with class .lbba26-animate will be observed */
h4.lbba26-animate {
    opacity: 0;
    transform: translateY(36px);
}

/* When in view, add class lbba26-inview to trigger animation */
h4.lbba26-animate.lbba26-inview {
    animation: lbba26-slide-in-left 0.6s ease forwards;
}
.single-portfolio .is-layout-constrained:not(.is-style-fiche-technique) > p:not(.is-style-fiche-technique) {
    width: calc(85vw - 28%);
}

.lbba26-projets-same-category  h4 {
    margin: 0;
}
.single-labclimat figure.alignfull.wp-block-post-featured-image {
    background: #3f764769;
    height: 15vh;
    align-items: flex-end;
    display: flex;
    justify-content: flex-end;
}

.single-labclimat figure.alignfull.wp-block-post-featured-image img{
        width: auto !important;
  
    max-height: 50vh;
    align-items: flex-end;}

    .wp-block-group.en_ce_moment h2 {
    margin: 0;
}
    .wp-block-group.en_ce_moment .taxonomy-category a {
    text-decoration:none
}
.wp-block-group.en_ce_moment h2:after {
content:' →';
}

  html  .wp-block-navigation__responsive-container-close svg, 
  .wp-block-navigation__responsive-container-open svg, 
  .wp-block-navigation-overlay-close svg {
        width: 50px;
        height: 50px;
            display: none;
    }
   html .wp-block-navigation-overlay-close:focus, :where(.wp-site-blocks :focus) {
        outline: none;
        outline-offset: 2px;
    }

  html  button.always-shown svg,  button.wp-block-navigation-overlay-closer svg {
   display: none !important;
}

html  button.always-shown:after {
        content: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M4 6h35v1.5H4z'/%3E%3Cpath d='M4 16h35v1.5H4z'/%3E%3C/svg%3E");
  width: 39px;
    height: 24px;}
    
html button.wp-block-navigation-overlay-close:after {
      content: url("data:image/svg+xml,%3Csvg id='Calque_1' data-name='Calque 1' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 25.81 25.81'%3E%3Cpath d='M0,24.75L24.75,0l1.06,1.06L1.06,25.81,0,24.75Z'/%3E%3Cpath d='M24.75,25.81L0,1.06,1.06,0l24.75,24.75-1.06,1.06Z'/%3E%3C/svg%3E");
 width: 28px;
    height: 24px;
}

iframe {
    display: block;
}
@media screen and (max-width: 728px) {
  
   html p.is-style-fiche-technique.wp-block-paragraph, html .is-style-lbba-card {
    position: inherit;
        top: 0;
        width: 100%;
        margin: var(--wp--preset--spacing--50) calc(-1 * var(--wp--preset--spacing--50)) !important;
        padding: var(--wp--preset--spacing--50);
        filter: invert(1);

  
}
html .is-layout-constrained:not(.is-style-fiche-technique) > p:not(.is-style-fiche-technique), .single-portfolio h4 {
    width: calc(100vw - var(--wp--style--root--padding-right) * 2);
}
}
/* Respect user's reduced motion preference */
@media (prefers-reduced-motion: reduce) {
    h4.lbba26-animate {
        animation: none;
        transform: none;
        opacity: 1;
    }
}

/* Reveal animation for figure.apparition */
@keyframes lbba26-fade-up {
    from { opacity: 0; transform: translateY(200px); }
    to { opacity: 1; transform: translateY(0); }
}
@keyframes lbba26-fade {
    from { opacity: 0; }
    to { opacity: 1; }
}
figure.apparition.lbba26-animate {
    opacity: 0;
    transform: translateY(20px);
}
.wp-block-post-featured-image.lbba26-animate {
    opacity: 0;
}
a .wp-block-post-featured-image.lbba26-animate {
    transform: scale(1.02);
}
figure.apparition.lbba26-animate.lbba26-inview{
    animation: lbba26-fade-up 1.8s cubic-bezier(.2,.8,.2,1) forwards;
}
.wp-block-post-featured-image.lbba26-animate.lbba26-inview {
    animation: lbba26-fade 1.8s cubic-bezier(.2,.8,.2,1) forwards;
}
@media (prefers-reduced-motion: reduce) {
    figure.apparition.lbba26-animate, .wp-block-post-featured-image.lbba26-animate {
        animation: none;
        transform: none;
        opacity: 1;
    }
}

/* Slide left-to-right reveal for .apparitiontop with slower opacity ramp */
@keyframes lbba26-slide-in-lr {
    0% {
        opacity: 0;
        transform: translateY(20px);
    }
    
    100% {
        opacity: 1;
        transform: translateY(0);
    }
}

.apparitiontop.lbba26-animate {
    opacity: 0;
    transform: translateY(30px);
}
.titre_ref {
    margin: 1.2rem -3px;
}
.apparitiontop.lbba26-animate.lbba26-inview {
    animation: lbba26-slide-in-lr 1.4s cubic-bezier(0, 0, 1, -0.1) forwards;}

@media (prefers-reduced-motion: reduce) {
    .apparitiontop.lbba26-animate {
        animation: none;
        transform: none;
        opacity: 1;
    }
}

/* Opacity effect for images inside apparition figures */
figure.apparition img, .wp-block-post-featured-image img {
    opacity: 0.92;
    transition: opacity 0.6s ease, transform 0.6s ease;
    will-change: opacity, transform;
    transform-origin: center center;
        transform: scale(1.02);
}

figure.apparition.lbba26-inview img, .wp-block-post-featured-image.lbba26-inview img {
    opacity: 1;
    transform: translateY(0);
  
}
div.labclimat .wp-block-post-featured-image img {
    mix-blend-mode: hard-light;
    filter: contrast(0.8) invert(1) grayscale(1) brightness(1.8);
  
    border: solid 1px white;
}
.labclimat-template-default .wp-block-post-featured-image img {
    mix-blend-mode: hard-light;
    filter: contrast(0.8) invert(1) grayscale(1) brightness(1.8);
  
}
div.labclimat .wp-block-post-featured-image, .labclimat-template-default .wp-block-post-featured-image {
  mix-blend-mode: hard-light;}
figure.apparition:hover img,
figure.apparition:focus-within img {
    opacity: 0.98;

}
.lbba26-projets-same-category {
    max-width: 100%!important;
}
figure.alignfull.wp-block-post-featured-image.lbba26-animate.lbba26-inview:before{
    background: #86867e;
    display: block;
    width:100vw;
    height: 100vh;
    position: absolute;
    
}
.wp-block-post-title {
    margin: 0;
}
.wp-block-post-excerpt {
    margin: 0;
}
.equipe figure.wp-block-post-featured-image.lbba26-animate.lbba26-inview {
    overflow: hidden;
    border-radius: 2%;
    filter: drop-shadow(2px 4px 6px #0000001F);
}

.equipe figure.wp-block-post-featured-image.lbba26-animate.lbba26-inview img{
    object-fit: cover;
    transform: scale(1.02);}
details.lbba26-accordion {
 
}
details[open].lbba26-accordion {
    position: absolute;
    background: #f6f5ea;
    z-index: 1;
}

details[open].lbba26-accordion > *{
   
    
}
summary {
     position: absolute;
     right: 0;
     top: -55px;
}
summary::marker {
     content: "+";
}
details[open] summary::marker {
     content: "-";
}
a {
    text-decoration:none;
}
summary {
    float: right;
    /* position: absolute; */
}

.entry-content.wp-block-post-content.is-layout-flow.wp-block-post-content-is-layout-flow {
    /* position: relative; */
}

li.wp-block-post.post-12659.membre.type-membre.status-publish.has-post-thumbnail.hentry {
    position: relative;
}
.lbba26-projets-same-category ul.lbba26-projets-list {
    display: flex;
    list-style: none;
    padding: 0;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: flex-start;
    
    column-gap:var(--wp--preset--spacing--30);
    row-gap:var(--wp--preset--spacing--30);
}
.lbba26-projets-same-category ul.lbba26-projets-list li {
    width: calc(20% - var(--wp--preset--spacing--30));
    overflow:hidden;
}

.lbba26-projets-same-category ul.lbba26-projets-list li span.lbba26-projet-thumb{
    display: inline-block;
    width:100%;
    aspect-ratio:3/4;
    overflow:hidden;
}
.lbba26-projets-same-category ul.lbba26-projets-list li img {
        aspect-ratio:3/4;
    width: 100%;
    height: auto;
    object-fit: cover;
    transform-origin: center center;

    object-position:center;
}
.lbba26-projets-same-category ul.lbba26-projets-list li h2 {
     margin: 0;
    font-size: var(--wp--preset--font-size--normal);
    font-weight: 400;
}
.wp-container-core-group-is-layout-96a974e9 > * + * {

    overflow: hidden;
}
figure.wp-block-image.alignfull.size-full.apparition.lbba26-animate.lbba26-inview {
    mix-blend-mode: multiply;
}
.wp-block-group.wp-container-core-group-is-layout-53155fbc.wp-block-group-is-layout-constrained {
    display: flex;
    align-items: center;
    flex-direction: column;
    height: 100vh;
    justify-content: center;
}
:root :where(.is-layout-constrained) > *.lbba26-post-taxonomies {
    margin-block-start:0;
}
.lbba26-post-taxonomy {
    font-size: var(--wp--preset--font-size--normal);

}
.en_ce_moment .lbba26-post-taxonomy {
        text-transform: uppercase;
}
@media (prefers-reduced-motion: reduce) {
    figure.apparition img {
        transition: none;
        transform: none;
    }
}