/* =============================================================
   Sonia Orriger — Boutons
   ============================================================= */

.btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: var(--e-sm);
    min-height: 44px;
    padding: 0.7em 1.6em;
    font-family: var(--f-texte);
    font-size: var(--t-base);
    font-weight: var(--g-demi);
    line-height: 1.2;
    text-align: center;
    text-decoration: none;
    border: 2px solid transparent;
    border-radius: var(--r-rond);
    cursor: pointer;
    transition: background-color var(--t-base), color var(--t-base),
                border-color var(--t-base), transform var(--t-base);
}

.btn:hover,
.btn:focus-visible { transform: translateY(-2px); }

/* ── Prise de rendez-vous (en-tête, pied de page) ───────────── */
.btn--rdv {
    background-color: var(--c-bleu-fonce);
    border-color: var(--c-bleu-fonce);
    color: var(--c-blanc);
}

.btn--rdv:hover,
.btn--rdv:focus-visible {
    background-color: var(--c-encre);
    border-color: var(--c-encre);
    color: var(--c-blanc);
}

/* ── Bouton d'une carte pilier ──────────────────────────────── */
.btn--pilier {
    background-color: var(--u-bouton, var(--c-encre));
    border-color: var(--u-bouton, var(--c-encre));
    color: var(--c-blanc);
    padding: 0.75em 1.4em 0.75em 1.8em;
    gap: var(--e-lg);
    font-size: var(--t-grand);
}

.btn--pilier .svg-fleche {
    width: 42px;
    height: 16px;
    flex: none;
    transition: transform var(--t-base);
}

.btn--pilier:hover .svg-fleche,
.btn--pilier:focus-visible .svg-fleche { transform: translateX(4px); }

.btn--pilier:hover,
.btn--pilier:focus-visible {
    background-color: var(--c-encre);
    border-color: var(--c-encre);
}

/* ── Bouton discret ─────────────────────────────────────────── */
.btn--ligne {
    background: transparent;
    border-color: currentColor;
    color: var(--c-encre);
}

.btn--ligne:hover,
.btn--ligne:focus-visible {
    background: var(--c-encre);
    color: var(--c-blanc);
}
