html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed, 
figure, figcaption, footer, header, hgroup, 
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
	vertical-align: baseline;
}

:root {
    --surface-blanc: #fff; 
    --surface-creme: #d7ccc9;
    --bordure-arrondie: 8px;
    --ligne-claire: #c5c5d1;
    --ligne-foncee:#1d1b1b;
    --texte-titre: #27273a;
    --texte-paragraphe: #333344;
    --texte-rouge: #b80047;
    --texte-vert:#02694c;
    --primaire: #edb200;
}

body, input, button, textarea {
    font-family: 'Lunasima-Regular', 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
    font-size: medium;
    color: var(--texte-paragraphe);
}

* {
    box-sizing: border-box;
}

input, button, textarea {
    border: 2px solid var(--ligne-claire);
    border-radius: var(--bordure-arrondie);
    display: block;
    margin: 0 0 8px;
    padding: 15px;
    width: 100%;
}

button {
    background-color: var(--primaire);
    color: var(--texte-titre);
    border: 2px solid var(--ligne-foncee);
    border-radius:  var(--bordure-arrondie);
    margin-left: auto;
    margin-right: auto;
    cursor: pointer;
    padding: 9px 22px;
    width: auto;
    border-bottom: 5px solid var(--ligne-foncee);
    transition: 0.3s;
    
}

button:hover {
    background-color: var(--primaire);
    color: var(--texte-titre);
    border: 2px solid var(--ligne-foncee);
    border-radius:  var(--bordure-arrondie);
    padding: 9px 22px;
    border-bottom: 2px solid var(--ligne-foncee);
    margin-bottom: 11px;
}

 /* partie région */
.conteneur {
    max-width: 1200px;
    width: 100%;
    display: block;
    margin: 0 auto;
}

.banniere {
    background-color: var(--surface-creme);
    padding: 48px 24px 80px 16px;
}

.resultat {
    min-width: 380px;
    background-color: var(--surface-blanc);
    padding: 24px;
    border-radius: var(--bordure-arrondie);
}

.bloc-analyse {
    display: block;
    margin-top: -48px;
}

.bloc-texte {
    background-color: var(--surface-blanc);
    padding: 24px;
    border-radius: var(--bordure-arrondie);
    width: 100%;
}

img.loupe {
    max-width: 200px;
    margin: 0 auto;
    display: block;
}

/* partie formulaire */
form {
    max-width: 1200px;
    width: 100%;
    display: flex;
    flex-direction: row;
    gap: 12px;
    
}

textarea {
    width: 100%;
    max-width: 1200px;
    line-height: 1.5;
}

input:focus-visible, textarea:focus-visible, button:focus-visible, a:focus-visible {
    border-radius: var(--bordure-arrondie);
    outline: var(--ligne-foncee) 2px solid !important;
    outline-offset: 2.5px;
}

/* Partie texte */
h1 {
    font-size: 32px;
    color: var(--texte-titre);
    font-family: "Epilogue-Bold";
}

h2 {
    font-family: "Epilogue-Bold";   
    color: var(--texte-titre);
    font-size: 24px;
}

h3 {
    font-family: "Epilogue-Bold";
    color: var(--texte-titre);
    font-size: 18px;
}

p {
    max-width: 700px;
    line-height: 150%;
    margin-bottom: 24px;
}

a{
    text-decoration: none;
}

p.codesource {
    font-size: 14px;
    margin: 0 auto;
    color: var(--texte-paragraphe);
    padding: 0px 8px 72px 8px;
}

.codesource a{
    color: var(--texte-paragraphe);
    border-bottom: var(--ligne-foncee) 1px solid;
}

.rouge {
    color: var(--texte-rouge);
}
.vert {
    color: #02694c;
}

@font-face {
    font-family: "Lunasima-Regular";
    src: url("Lunasima-Regular.woff2") format('woff2');
  }
  @font-face {
    font-family: "Epilogue-Bold";
    src: url("Epilogue-Bold.woff2") format('woff2');
  }



/* Partie responsive */
@media screen and (max-width: 900px) {
    form {
        display: flex;
        flex-direction: row;
        gap: 12px; 
        flex-wrap: wrap-reverse;
    }
    .resultat {
        min-width: 300px;
        width: 100%;
        background-color: var(--surface-blanc);
        padding: 24px;
        border-radius: var(--bordure-arrondie);
    }
    button {
        width: 88%;
        position: fixed;
        bottom: 8px;
        left: 8px;
        right: 8px;
    }
    img.loupe {
        display: none;
    }
   
}