body{

    background:var(--color-background);

    color:var(--color-text);

    font-family:var(--font-text);

    font-size:16px;

    line-height:1.7;

}

.container{

    width:min(var(--container-width),calc(100% - (var(--container-padding) * 2)));

    margin:auto;

}

section{

    padding:var(--space-xxl) 0;

}

h1,
h2{

    font-family:var(--font-title);

    line-height:1.15;

    font-weight:700;

    text-transform:uppercase;

    letter-spacing:.01em;

}

h3,
h4{

    font-family:var(--font-text);

    line-height:1.3;

    font-weight:700;

}

h3{

    font-size:1.4rem;

}

h4{

    font-size:1.15rem;

}

h1{

    font-size:clamp(3rem,6vw,5rem);

}

h2{

    font-size:clamp(2.2rem,5vw,3.8rem);

}

p{

    color:var(--color-text-light);

}

/* ==================================================
   EN-TÊTE DE SECTION — source unique
   (ne plus redéfinir .section-tag / .section-header
   ailleurs : ça déclenche des batailles de cascade
   silencieuses selon l'ordre de chargement des CSS)
================================================== */

.section-header{

    max-width:950px;

    margin:0 auto 70px;

    text-align:center;

}

.section-header h2{

    margin-bottom:20px;

}

.section-header p{

    max-width:700px;

    margin:auto;

    color:var(--color-text-light);

    line-height:1.8;

}

.section-tag{

    display:inline-block;

    padding:7px 16px;

    border-radius:4px;

    border:1px dashed var(--color-primary);

    background:transparent;

    color:var(--color-primary);

    font-size:.8rem;

    font-weight:700;

    letter-spacing:.16em;

    text-transform:uppercase;

    margin-bottom:18px;

}

.btn{

    display:inline-flex;

    align-items:center;

    justify-content:center;

    padding:16px 34px;

    border-radius:var(--radius-round);

    transition:var(--transition);

    font-weight:600;

}

.btn-primary{

    background:var(--color-primary);

    color:#fff;

}

.btn-primary:hover{

    transform:translateY(-2px);

    background:var(--color-primary-dark);

}

.btn-secondary{

    border:2px solid var(--color-primary);

    color:var(--color-primary);

}

.btn-secondary:hover{

    background:var(--color-primary);

    color:white;

}

.section-title{

    margin-bottom:20px;

}

.section-subtitle{

    max-width:700px;

    margin-bottom:60px;

}

.highlight{

    position:relative;

    color:var(--color-primary);

}

.highlight::after{

    content:"";

    position:absolute;

    left:0;

    bottom:-6px;

    width:100%;

    height:10px;

    background:var(--color-primary);

    opacity:.15;

    border-radius:20px;

}
