/* ════════════════════════════════════════════════════════════════════
   STYLES DE BASE DU THÈME WORDPRESS (Techly + réglages Elementor)
   Recopiés de la feuille du thème (techly/assets/css/style.css) et des
   valeurs calculées du kit Elementor. Les blocs HTML d'origine s'appuient
   dessus. Sélecteurs d'élément simples, comme dans le thème, pour que les
   règles propres à chaque bloc gardent la priorité — y compris leur
   « * { margin: 0 } » : aucune marge n'est donc imposée ici aux listes.
   ════════════════════════════════════════════════════════════════════ */

/* Corps de page : Mona Sans gris sur blanc. Les pages dont le bloc déclare
   son propre « body » (prix, pages légales) le remplacent, comme en ligne :
   même spécificité, déclaré plus loin dans la page. */
body {
    margin: 0;
    font-family: "Mona Sans", sans-serif;
    font-size: 16px;
    line-height: 26px;
    font-weight: 400;
    color: #484848;
    background-color: #fff;
    -webkit-font-smoothing: antialiased;
}

* { overflow-wrap: break-word; }

h1, h2, h3, h4, h5, h6 {
    margin: 0 0 15px;
    font-family: "Mona Sans", sans-serif;
    font-weight: 700;
    color: #000;
}

h1, .h1 { font-size: 60px; line-height: 72px; }
h2, .h2 { font-size: 50px; line-height: 62px; }
h3, .h3 { font-size: 40px; line-height: 52px; }
h4, .h4 { font-size: 30px; line-height: 42px; }
h5, .h5 { font-size: 20px; line-height: 32px; }
h6, .h6 { font-size: 10px; line-height: 22px; }

p, figure { margin: 0 0 20px; }

a { color: #000; background-color: transparent; transition: 520ms; }
a, a:hover, a:focus { text-decoration: none; outline: 0; }
a:hover { color: #0F53F3; }

ul, ol { padding-left: 20px; }
/* sélecteurs à deux éléments du thème : ils l'emportent sur les « li {…} » et
   « td {…} » des blocs, et cèdent devant leurs règles de classe */
ul ul, ol ul { list-style: disc; }
ul li { margin-bottom: 0; }
li > ul, li > ol { margin-bottom: 0; padding-left: 20px; }
img { height: auto; max-width: 100%; }
hr { height: 1px; margin-bottom: 1.5em; border: 0; background-color: #EAEAEA; }
small { font-size: 80%; }
table { width: 100%; margin: 15px 0; border-collapse: collapse; border-spacing: 0; }
td, th { padding: 0; }
table th, table td { border: 1px solid #E7E7E7; padding: 8px; text-align: center; }

button, input, optgroup, select, textarea { font-family: inherit; font-size: 100%; line-height: 1.15; margin: 0; }
button, input { overflow: visible; }
button, select { text-transform: none; }
textarea { overflow: auto; width: 100%; }

/* Champs de formulaire du thème (bordure grise, anneau bleu au focus) */
input[type="button"], input[type="reset"], input[type="submit"] {
    padding: 5px 20px;
    border: none;
    border-radius: 3px;
    background-color: #0F53F3;
    color: #fff;
}

input[type="text"], input[type="email"], input[type="url"], input[type="password"], input[type="search"],
input[type="number"], input[type="tel"], input[type="range"], input[type="date"], input[type="month"],
input[type="week"], input[type="time"], input[type="datetime"], input[type="datetime-local"], input[type="color"], textarea {
    border: 1px solid #D9D9D9;
    color: #484848;
    transition: 520ms;
}

input[type="text"]:hover, input[type="email"]:hover, input[type="url"]:hover, input[type="password"]:hover,
input[type="search"]:hover, input[type="number"]:hover, input[type="tel"]:hover, input[type="date"]:hover, textarea:hover,
input[type="text"]:focus, input[type="email"]:focus, input[type="url"]:focus, input[type="password"]:focus,
input[type="search"]:focus, input[type="number"]:focus, input[type="tel"]:focus, input[type="date"]:focus, textarea:focus {
    outline: none;
    border-color: rgba(15, 83, 243, .5);
}

input[type="text"]:focus, input[type="email"]:focus, input[type="url"]:focus, input[type="password"]:focus,
input[type="search"]:focus, input[type="number"]:focus, input[type="tel"]:focus, input[type="date"]:focus, textarea:focus {
    box-shadow: 0 0 0 .2rem rgba(15, 83, 243, .25);
    color: #111;
}

select { border: 1px solid #D9D9D9; }

button {
    padding: 5px 20px;
    border: 0;
    border-radius: 3px;
    background-color: #0F53F3;
    color: #fff;
    cursor: pointer;
    transition: all .52s;
}
