/* /Components/Layout/Footer.razor.rz.scp.css */
.pied[b-vcoahlw9i9] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 24px;
    padding: 64px 24px 40px;
    border-top: 1px solid rgb(232 190 139 / 0.25);
    text-align: center;
}

img[b-vcoahlw9i9] {
    width: min(280px, 72vw);
}

.pied-coordonnees[b-vcoahlw9i9] {
    font-size: 0.9375rem;
}

.pied-legal[b-vcoahlw9i9] {
    font-size: 0.8125rem;
}

a[b-vcoahlw9i9] {
    text-decoration: none;
    transition: color 0.2s ease;
}

a:hover[b-vcoahlw9i9] {
    color: var(--encre-accent);
}

.pied a[b-vcoahlw9i9] {
    display: inline-block;
    padding: 12px 0;
}

.pied-legal a[b-vcoahlw9i9] {
    text-decoration: underline;
    text-underline-offset: 4px;
}

@media (prefers-reduced-motion: reduce) {
    a[b-vcoahlw9i9] {
        transition: none;
    }
}
/* /Components/Layout/MainLayout.razor.rz.scp.css */
main[b-mvtdbc0zgx] {
    min-height: 70vh;
}
/* /Components/Layout/Nav.razor.rz.scp.css */
.nav[b-vmhpa0sdk2] {
    position: fixed;
    inset: 0 0 auto 0;
    z-index: 10;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    padding: 12px clamp(16px, 4vw, 48px);
    border-bottom: 1px solid transparent;
    transition: background-color 0.3s ease, border-color 0.3s ease;
}

.nav.defile[b-vmhpa0sdk2],
.nav.ouvert[b-vmhpa0sdk2] {
    background: var(--surface-profonde);
    border-bottom-color: rgb(232 190 139 / 0.25);
}

.nav-logo[b-vmhpa0sdk2] {
    display: flex;
    align-items: center;
    min-height: 44px;
}

.nav-logo img[b-vmhpa0sdk2] {
    width: auto;
    height: clamp(34px, 4vw, 46px);
}

.nav-liens[b-vmhpa0sdk2] {
    display: flex;
    align-items: center;
    gap: clamp(16px, 3vw, 40px);
    margin: 0;
    padding: 0;
    list-style: none;
}

.nav-liens a[b-vmhpa0sdk2] {
    display: flex;
    align-items: center;
    min-height: 44px;
    font-size: 0.8125rem;
    font-weight: 500;
    letter-spacing: 0.1em;
    text-decoration: none;
    text-transform: uppercase;
    transition: color 0.2s ease;
}

.nav-liens a:hover[b-vmhpa0sdk2] {
    color: var(--encre-accent);
}

.nav-liens .nav-cta[b-vmhpa0sdk2] {
    padding: 0 22px;
    border: 1px solid var(--bois-chene-dore);
    color: var(--bois-chene-dore);
    transition: background-color 0.2s ease, color 0.2s ease;
}

.nav-liens .nav-cta:hover[b-vmhpa0sdk2] {
    background: var(--bois-chene-dore);
    color: var(--anthracite);
}

.nav-bascule[b-vmhpa0sdk2] {
    display: none;
    min-height: 44px;
    padding: 10px 16px;
    border: 1px solid var(--bois-chene-dore);
    background: transparent;
    color: var(--bois-chene-dore);
    font: inherit;
    font-size: 0.8125rem;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    cursor: pointer;
}

@media (max-width: 820px) {
    .nav-bascule[b-vmhpa0sdk2] {
        display: block;
    }

    .nav-liens[b-vmhpa0sdk2] {
        display: none;
        position: absolute;
        inset: 100% 0 auto 0;
        flex-direction: column;
        gap: 8px;
        padding: 24px;
        background: var(--surface-profonde);
        border-bottom: 1px solid rgb(232 190 139 / 0.25);
    }

    .nav.ouvert .nav-liens[b-vmhpa0sdk2] {
        display: flex;
    }
}

@media (prefers-reduced-motion: reduce) {
    .nav[b-vmhpa0sdk2],
    .nav-liens a[b-vmhpa0sdk2],
    .nav-liens .nav-cta[b-vmhpa0sdk2] {
        transition: none;
    }
}

/* Menu mobile : liens d'au moins 44 px de haut */
@media (max-width: 820px) {
    .nav-liens a[b-vmhpa0sdk2] {
        display: flex;
        align-items: center;
        min-height: 44px;
    }
}
/* /Components/Pages/Error.razor.rz.scp.css */
.erreur-page[b-l021ic30kq] {
    min-height: 100vh;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 24px;
    padding: 48px 24px;
    text-align: center;
}

h1[b-l021ic30kq] {
    font-size: clamp(1.75rem, 5vw, 3.5rem);
}

p[b-l021ic30kq] {
    max-width: 34em;
}

a[b-l021ic30kq] {
    color: var(--encre-accent);
}
/* /Components/Pages/Merci.razor.rz.scp.css */
.merci[b-sdcptxcosd] {
    min-height: 100vh;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 28px;
    padding: 48px 24px;
    text-align: center;
}

img[b-sdcptxcosd] {
    width: min(260px, 60vw);
}

h1[b-sdcptxcosd] {
    font-size: clamp(1.75rem, 5vw, 3.5rem);
}

hr[b-sdcptxcosd] {
    width: min(200px, 33%);
    margin: 0;
    border: 0;
    border-top: 1px solid var(--filet);
}

p[b-sdcptxcosd] {
    max-width: 34em;
}

.retour[b-sdcptxcosd] {
    color: var(--encre-accent);
    text-underline-offset: 4px;
}
/* /Components/Pages/QrCode.razor.rz.scp.css */
.liens[b-1dyokugd7l] {
    position: relative;
    min-height: 100vh;
    min-height: 100svh;
    display: flex;
    justify-content: center;
    padding: 48px 24px 40px;
    overflow: hidden;
}

/* Motifs en débord dans les coins, jamais derrière le contenu (charte) */
.motif[b-1dyokugd7l] {
    position: absolute;
    opacity: 0.45;
    pointer-events: none;
}

.motif-haut[b-1dyokugd7l] {
    top: -190px;
    right: -210px;
    width: 380px;
}

.motif-bas[b-1dyokugd7l] {
    bottom: -210px;
    left: -300px;
    width: 480px;
}

.liens-contenu[b-1dyokugd7l] {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 28px;
    width: 100%;
    max-width: 420px;
}

h1 img[b-1dyokugd7l] {
    width: min(320px, 80vw);
}

ul[b-1dyokugd7l] {
    display: flex;
    flex-direction: column;
    gap: 14px;
    width: 100%;
    margin: 0;
    padding: 0;
    list-style: none;
}

.lien[b-1dyokugd7l] {
    display: flex;
    align-items: center;
    gap: 16px;
    min-height: 56px;
    padding: 14px 22px;
    border: 1px solid var(--bois-chene-dore);
    background: var(--surface);
    color: var(--encre);
    font-size: 0.9375rem;
    font-weight: 500;
    letter-spacing: 0.08em;
    text-decoration: none;
    text-transform: uppercase;
    transition: background-color 0.2s ease, color 0.2s ease;
}

.lien svg[b-1dyokugd7l] {
    flex: none;
    color: var(--bois-chene-dore);
    transition: color 0.2s ease;
}

.lien:hover[b-1dyokugd7l],
.lien-principal[b-1dyokugd7l] {
    background: var(--bois-chene-dore);
    color: var(--anthracite);
}

.lien:hover svg[b-1dyokugd7l],
.lien-principal svg[b-1dyokugd7l] {
    color: var(--anthracite);
}

.lien-principal[b-1dyokugd7l] {
    font-weight: 600;
}

.lien-principal:hover[b-1dyokugd7l] {
    background: var(--bois-bouleau);
}

.liens-pied[b-1dyokugd7l] {
    margin-top: auto;
    padding-top: 16px;
    font-family: var(--font-titre);
    font-size: 1.125rem;
}

.liens-pied a[b-1dyokugd7l] {
    display: inline-block;
    padding: 10px 16px;
    color: var(--encre-accent);
    text-decoration: none;
}

@media (prefers-reduced-motion: reduce) {
    .lien[b-1dyokugd7l],
    .lien svg[b-1dyokugd7l] {
        transition: none;
    }
}
/* /Components/Sections/Apropos.razor.rz.scp.css */
.duo[b-zm0swb8ls9] {
    display: grid;
    grid-template-columns: 1.1fr 0.9fr;
    align-items: center;
    gap: clamp(32px, 6vw, 88px);
}

/* Variante de la charte : bloc aligné à gauche avec une barre verticale fine */
.texte[b-zm0swb8ls9] {
    display: flex;
    flex-direction: column;
    gap: 24px;
    padding-left: clamp(20px, 3vw, 40px);
    border-left: 1px solid var(--filet);
}

h2[b-zm0swb8ls9] {
    font-size: clamp(1.75rem, 4vw, 3rem);
}

.valeurs[b-zm0swb8ls9] {
    display: flex;
    flex-wrap: wrap;
    gap: 12px 32px;
    margin: 8px 0 0;
    padding: 0;
    list-style: none;
    font-size: 0.8125rem;
    font-weight: 600;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: var(--encre-accent);
}

.signatures[b-zm0swb8ls9] {
    font-family: var(--font-titre);
    font-size: 1.375rem;
    font-style: italic;
}

.signatures span[b-zm0swb8ls9] {
    margin: 0 10px;
    font-style: normal;
}

img[b-zm0swb8ls9] {
    width: 100%;
    aspect-ratio: 3 / 4;
    object-fit: cover;
}

@media (max-width: 900px) {
    .duo[b-zm0swb8ls9] {
        grid-template-columns: 1fr;
    }

    img[b-zm0swb8ls9] {
        max-width: 520px;
        margin: 0 auto;
        aspect-ratio: 4 / 3;
    }
}
/* /Components/Sections/Contact.razor.rz.scp.css */
/* Motif en débord dans un coin, jamais derrière un texte (charte) */
.motif[b-woip9gf03g] {
    position: absolute;
    bottom: -200px;
    left: -280px;
    width: 520px;
    opacity: 0.5;
    pointer-events: none;
}

.contact[b-woip9gf03g] {
    max-width: 760px;
}

.coordonnees[b-woip9gf03g] {
    font-size: 0.9375rem;
}

.coordonnees a[b-woip9gf03g] {
    display: inline-block;
    padding: 12px 0;
    color: var(--encre-accent);
    text-decoration: none;
}

.erreur[b-woip9gf03g] {
    margin-bottom: 32px;
    padding: 16px 20px;
    border: 1px solid var(--encre-accent);
    color: var(--encre-accent);
}

form[b-woip9gf03g] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 28px 24px;
}

.large[b-woip9gf03g] {
    grid-column: 1 / -1;
}

.champ[b-woip9gf03g] {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

label[b-woip9gf03g] {
    font-size: 0.8125rem;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--encre-accent);
}

label span[b-woip9gf03g] {
    letter-spacing: 0;
    text-transform: none;
    color: var(--encre);
}

input[type="text"][b-woip9gf03g],
input[type="email"][b-woip9gf03g],
input[type="tel"][b-woip9gf03g],
select[b-woip9gf03g],
textarea[b-woip9gf03g] {
    width: 100%;
    padding: 12px 14px;
    border: 1px solid var(--bois-chene-dore);
    border-radius: 0;
    background: var(--surface-profonde);
    color: var(--encre);
    font: inherit;
}

textarea[b-woip9gf03g] {
    resize: vertical;
}

.pot[b-woip9gf03g] {
    position: absolute;
    left: -10000px;
    width: 1px;
    height: 1px;
    overflow: hidden;
}

.consentement[b-woip9gf03g] {
    display: flex;
    align-items: center;
    min-height: 44px;
    gap: 14px;
    font-size: 0.9375rem;
    letter-spacing: 0;
    text-transform: none;
    color: var(--encre);
}

.consentement input[b-woip9gf03g] {
    width: 24px;
    height: 24px;
    margin: 0;
    flex: none;
    accent-color: var(--bois-chene-dore);
}

.consentement a[b-woip9gf03g] {
    color: var(--encre-accent);
}

button[b-woip9gf03g] {
    justify-self: center;
}

@media (max-width: 900px) {
    .motif[b-woip9gf03g] {
        display: none;
    }
}

@media (max-width: 640px) {
    form[b-woip9gf03g] {
        grid-template-columns: 1fr;
    }
}
/* /Components/Sections/Expertise.razor.rz.scp.css */
.cartes[b-jxm1uvledf] {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 32px;
}

.carte[b-jxm1uvledf] {
    display: flex;
    flex-direction: column;
    background: var(--surface-profonde);
}

.carte img[b-jxm1uvledf] {
    width: 100%;
    aspect-ratio: 4 / 3;
    object-fit: cover;
}

.carte-texte[b-jxm1uvledf] {
    display: flex;
    flex-direction: column;
    gap: 16px;
    padding: 32px 28px 36px;
}

h3[b-jxm1uvledf] {
    font-size: 1.75rem;
    font-weight: 700;
    text-transform: uppercase;
    color: var(--encre-accent);
}

p[b-jxm1uvledf] {
    font-size: 1rem;
}

@media (max-width: 900px) {
    .cartes[b-jxm1uvledf] {
        grid-template-columns: 1fr;
        max-width: 520px;
        margin: 0 auto;
    }
}
/* /Components/Sections/Hero.razor.rz.scp.css */
/* Photo assombrie là où se pose le texte (charte) */
.hero[b-j1o1frx3q2] {
    min-height: 100vh;
    min-height: 100svh;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 140px 24px 96px;
    background:
        linear-gradient(rgb(38 38 38 / 0.72), rgb(38 38 38 / 0.86)),
        var(--hero-photo, url("images/hero.jpg")) center / cover no-repeat,
        var(--surface-profonde);
    text-align: center;
}

.hero-contenu[b-j1o1frx3q2] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 28px;
    max-width: 980px;
}

h1[b-j1o1frx3q2] {
    font-size: clamp(2.25rem, 6.5vw, 4.5rem);
}

.chapeau[b-j1o1frx3q2] {
    max-width: 32em;
}

.hero-actions[b-j1o1frx3q2] {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 16px;
    margin-top: 8px;
}

.hero-metiers[b-j1o1frx3q2] {
    margin-top: 24px;
    font-family: var(--font-titre);
    font-size: 1.125rem;
}
/* /Components/Sections/Methode.razor.rz.scp.css */
/* Motif en débord dans un coin, jamais derrière un texte (charte) */
.motif[b-i4j4r8ern6] {
    position: absolute;
    top: -180px;
    right: -220px;
    width: 460px;
    opacity: 0.5;
    pointer-events: none;
}

.etapes[b-i4j4r8ern6] {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 48px;
    margin: 0;
    padding: 0;
    list-style: none;
}

li[b-i4j4r8ern6] {
    display: flex;
    flex-direction: column;
    gap: 16px;
    padding-left: 24px;
    border-left: 1px solid var(--filet);
}

.numero[b-i4j4r8ern6] {
    font-family: var(--font-titre);
    font-size: 3.5rem;
    font-weight: 700;
    line-height: 1;
    color: var(--encre-accent);
}

h3[b-i4j4r8ern6] {
    font-size: 1.5rem;
}

p[b-i4j4r8ern6] {
    font-size: 1rem;
}

@media (max-width: 900px) {
    .etapes[b-i4j4r8ern6] {
        grid-template-columns: 1fr;
        max-width: 520px;
        margin: 0 auto;
    }

    .motif[b-i4j4r8ern6] {
        width: 300px;
        top: -140px;
        right: -170px;
    }
}
/* /Components/Sections/Realisations.razor.rz.scp.css */
.galerie[b-1g4hxzjj6x] {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    grid-auto-rows: clamp(160px, 20vw, 260px);
    grid-auto-flow: dense;
    gap: 16px;
}

figure[b-1g4hxzjj6x] {
    position: relative;
    margin: 0;
    overflow: hidden;
}

.grand[b-1g4hxzjj6x] {
    grid-column: span 2;
    grid-row: span 2;
}

.haut[b-1g4hxzjj6x] {
    grid-row: span 2;
}

.large[b-1g4hxzjj6x] {
    grid-column: span 2;
}

img[b-1g4hxzjj6x] {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.6s ease;
}

figure:hover img[b-1g4hxzjj6x] {
    transform: scale(1.03);
}

/* Photo assombrie sous la légende (charte) */
figcaption[b-1g4hxzjj6x] {
    position: absolute;
    inset: auto 0 0 0;
    padding: 40px 20px 16px;
    background: linear-gradient(transparent, rgb(38 38 38 / 0.85));
    font-family: var(--font-titre);
    font-size: 1.125rem;
}

@media (max-width: 760px) {
    .galerie[b-1g4hxzjj6x] {
        grid-template-columns: repeat(2, 1fr);
        grid-auto-rows: 42vw;
    }
}

@media (prefers-reduced-motion: reduce) {
    img[b-1g4hxzjj6x] {
        transition: none;
    }

    figure:hover img[b-1g4hxzjj6x] {
        transform: none;
    }
}

.galerie-lien[b-1g4hxzjj6x] {
    display: block;
    height: 100%;
    color: inherit;
    text-decoration: none;
}

.galerie-plus[b-1g4hxzjj6x] {
    display: block;
    margin-top: 4px;
    font-family: var(--font-texte);
    font-size: 0.75rem;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--encre-accent);
    opacity: 0;
    transition: opacity 0.3s ease;
}

.galerie-lien:hover .galerie-plus[b-1g4hxzjj6x],
.galerie-lien:focus-visible .galerie-plus[b-1g4hxzjj6x] {
    opacity: 1;
}

/* Écrans tactiles : pas de survol, l'invitation reste visible */
@media (hover: none) {
    .galerie-plus[b-1g4hxzjj6x] {
        opacity: 1;
    }
}
