
@font-face {
    font-family: "Inter";
    src: url("https://www.wmalbos.fr/wp-content/plugins/woocommerce/assets/fonts/Inter-VariableFont_slnt,wght.woff2") format("woff2");
    font-weight: 100 900;
    font-style: normal;
    font-display: swap;
}

:root {
    --color-white: #fff;
    --color-black: #0d0d0d;
    --color-red: #e62f2f;
    --color-grey: #808080;
    --color-orange: #FF3D00;
    --color-blue--dark: #002147;

    --color-background: rgb(249, 249, 249);
    --color-background-hover: rgb(223, 221, 221);
    --color-background--light: #f4f4f4;
    --color-background--dark: #252e38;
    --color-background--dark-hover: #20252a;

    --color-thumb-border: #d5e3ec;
    --color-thumb-shadow: rgba(69, 76, 85, 0.2);

    --color-text: rgb(37, 46, 56);
    --color-text--light: #f4f4f4;

    --color-navigation-border: #131c25;
    --color-navigation-shadow: #131c25;
    --color-navigation-separator: rgba(244, 244, 244, 0.5);
    --color-footer-text: #fffc;

    --color-primary: rgb(242, 187, 19);
    --color-secondary: #054fb9;

    --breakpoint-xs: 320px; /* Mobile */
    --breakpoint-sm: 576px; /* Mobile */
    --breakpoint-md: 768px; /* Tablette */
    --breakpoint-lg: 992px; /* Desktop */
    --breakpoint-xl: 1200px; /* Grand Desktop */
    --breakpoint-xxl: 1400px; /* Très grand Desktop */
    --breakpoint-xxxl: 1600px; /* Ultra grand Desktop */

    --modal-navigation-header-height: 70px;

    /* Durée de transition */
    --ease: cubic-bezier(.2, .6, .2, 1);
    --dur: .25s;
    --dur-quick: .15s;
}

* {
    position: relative;
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

*::selection {
    background: var(--color-primary);
    color: var(--color-white);
}

:focus-visible {
    outline: 2px solid var(--color-primary);
    outline-offset: 2px;
}

h1, h2, h3, h4, h5, h6 {
    font-family: "Inter", sans-serif;
    font-optical-sizing: auto;
    font-weight: 600;
    font-style: normal;

    line-height: 1.3;
    color: var(--color-text);
    text-wrap: balance;
}

h2 {
    font-size: clamp(1.375rem, 1.1rem + 0.9vw, 1.75rem); /* ~22 → 28px */
    margin: 0 0 16px 0;
}

h3 {
    font-size: clamp(18px, 2vw, 22px); /* ~18 → 22px */
}

p {
    font-size: 16px;
    color: var(--color-text);
    line-height: 1.7;
}

strong {
    font-weight: 650;
}

a {
    color: var(--color-secondary);
    text-decoration: underline;
}

a:hover {
    color: var(--color-text);
}

ul, ol {
    list-style: none;
    padding-left: 0;
}

li {
    font-size: 16px;
    color: var(--color-text);
}

button {
    background: none;
    box-shadow: none;
    border: none;
    cursor: pointer;

    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}

html svg {
    opacity: 1;
}

html, body {
    font-family: Inter, sans-serif;
    font-optical-sizing: auto;
    font-weight: 450;
    font-style: normal;

    line-height: 1.6;
}

/* Espace négative vers le scroll d'une ancre */
[id] {
    scroll-margin-top: 90px;
}


html {
    scroll-behavior: smooth;
}

body {
    overflow-x: hidden;
}

body.no-scroll {
    overflow: hidden;
    touch-action: none;
}

/* Remove reCAPTCHA badge */
.grecaptcha-badge {
    display: none !important;
}

@media all and (max-width: 576px) {
    p {
        font-size: 15px;
    }

    li {
        font-size: 15px;
    }
}

/* Accessibilité */
@media (prefers-reduced-motion: reduce) {
    * {
        animation-duration: .01ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: .01ms !important;
        scroll-behavior: auto !important;
    }

    html {
        scroll-behavior: auto;
    }

    svg {
        animation: none;
        opacity: 1;
    }
}
