.btn {
    border-radius: 51px;
    align-items: center;
    text-decoration: none;
}

.btn__icon {
    display: inline-block;
    flex-shrink: 0;
    color: inherit;
}

.btn__label {
    text-overflow: ellipsis;
    font-size: 16px;
    font-style: normal;
    font-weight: 500;
    line-height: 20px;
    margin-left:18px;
}

.btn--no-icon {
    padding-right: 18px;
}

/* Primary button */
.primary {
    color: #FFF;
    background: #FE9A02;
    display: inline-flex;
    height: 53px;
    max-width: 280px;
    gap: 20px;
    border: 5px solid transparent;
    transition: all 0.3s ease-in-out;
}

.primary .btn_div_icon {
    color: #FFF;
    background: #FFF;
    border-radius: 50%;
    width: 43px;
    height: 43px;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.3s ease-in-out;
}

.primary .btn__icon {
    width: 1rem;
    height: 1rem;
    color: #FE9A02;
    transition: all 0.3s ease-in-out;
}

.primary:hover {
    color: #FE9A02;
    background: #FFF;
    border-color: #FE9A02;
}

.primary:focus {
    color: #FFF;
    background: #FE9A02;
}

.primary:focus .btn_div_icon {
    color: #FE9A02;
    background: #FE9A02;
}

.primary:focus .btn__icon {
    color: #FFF;
}


/*
 Primary White button
*/
.primary_white {
    color: #333B44;
    background: #FFF;
    display: inline-flex;
    height: 53px;
    max-width: 280px;
    gap: 20px;
    border: 5px solid transparent;
    transition: all 0.3s ease-in-out;
}

.primary_white .btn_div_icon {
    color: #FFF;
    background: #FE9A02;
    border-radius: 50%;
    width: 43px;
    height: 43px;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.3s ease-in-out;
}

.primary_white .btn__icon {
    width: 1rem;
    height: 1rem;
    color: #FFF;
    transition: all 0.3s ease-in-out;
}

.primary_white:hover {
    color: #FFF;
    background: #FE9A02;
    border-color: #FE9A02;
}

.primary_white:focus {
    color: #333B44;
    background: #FFF;
    border-color: #FFF;
}

.primary_white:focus .btn_div_icon {
    color: #FE9A02;
    background: #FFF;
}

.primary_white:focus .btn__icon {
    color: #FE9A02;
}


/*
 Secondary button
*/
.secondary {
    color: #FE9A02;
    background: #FFF;
    display: inline-flex;
    height: 53px;
    max-width: 280px;
    gap: 10px;
    padding: 5px 15px 5px 5px;
    border: 1px solid #FE9A02;
    transition: all 0.3s ease-in-out;
}

.secondary .btn__icon {
    width: 1rem;
    height: 1.25rem;
    color: #FE9A02;
    transition: all 0.3s ease-in-out;
}

.secondary:hover {
    color: #FFF;
    background: #FE9A02;
    border-color: #FE9A02;
}

.secondary:hover .btn__icon {
    color: #FFF;
}


/*
 En savoir plus button
*/
.en_savoir_plus {
    color: #133960;
    position: relative;
}

.en_savoir_plus .btn__label {
    font-size: 18px;
    font-weight: 300;
    line-height: 23px;
    text-overflow: unset;
    margin-left: 0;
    position: relative;
    display: inline-block;
}

.en_savoir_plus .btn__label::after {
    content: "";
    display: block;
    width: 43px;
    height: 1px;
    background: #133960;
    margin-top: 4px;
    transition: width 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.en_savoir_plus:hover .btn__label::after {
    width: 100%;
}
