* {
    box-sizing: border-box;
}

html {
    font-size: 1rem;
}

body {
    margin: 0;
    padding: 0;
}

@font-face {
    font-display:swap;
    font-family:Marianne;
    font-style:normal;
    font-weight:300;
    src:url(../fonts/Marianne-Light.woff2) format("woff2"),
    url(../fonts/Marianne-Light.woff) format("woff")
}
@font-face {
    font-display:swap;
    font-family:Marianne;
    font-style:italic;
    font-weight:300;
    src:url(../fonts/Marianne-Light_Italic.woff2) format("woff2"),
    url(../fonts/Marianne-Light_Italic.woff) format("woff")
}
@font-face {
    font-display:swap;
    font-family:Marianne;
    font-style:normal;
    font-weight:400;
    src:url(../fonts/Marianne-Regular.woff2) format("woff2"),
    url(../fonts/Marianne-Regular.woff) format("woff")
}
@font-face {
    font-display:swap;
    font-family:Marianne;
    font-style:italic;
    font-weight:400;
    src:url(../fonts/Marianne-Regular_Italic.woff2) format("woff2"),
    url(../fonts/Marianne-Regular_Italic.woff) format("woff")
}
@font-face {
    font-display:swap;
    font-family:Marianne;
    font-style:normal;
    font-weight:500;
    src:url(../fonts/Marianne-Medium.woff2) format("woff2"),
    url(../fonts/Marianne-Medium.woff) format("woff")
}
@font-face {
    font-display:swap;
    font-family:Marianne;
    font-style:italic;
    font-weight:500;
    src:url(../fonts/Marianne-Medium_Italic.woff2) format("woff2"),
    url(../fonts/Marianne-Medium_Italic..woff) format("woff")
}
@font-face {
    font-display:swap;
    font-family:Marianne;
    font-style:normal;
    font-weight:700;
    src:url(../fonts/Marianne-Bold.woff2) format("woff2"),
    url(../fonts/Marianne-Bold.woff) format("woff")
}
@font-face {
    font-display:swap;
    font-family:Marianne;
    font-style:italic;
    font-weight:700;
    src:url(../fonts/Marianne-Bold_Italic.woff2) format("woff2"),
    url(../fonts/Marianne-Bold_Italic.woff) format("woff")
}

body {
    font-size: 1rem;
    line-height: 1.7;
    font-family: Marianne,Arial,Helvetica,sans-serif;
    color: #000;
    font-style: normal;
    font-weight: 400;
}

a {
    color:#000;
}

.container {
    width: 1440px;
    max-width: 100%;
    margin: auto;
    padding: 0 100px;
}

header.header {
    padding: 20px 0;
    border-bottom: 1px solid #734495;
}

header.header .block--branding {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
}


header.header .block--branding .site-name a {
    color: #000;
    font-size: 2.625rem;
    text-decoration: none;
    font-family: Marianne,Arial,Helvetica,sans-serif;
    position: relative;
    font-style:normal;
    font-weight:700;
}

header.header .logo {
    display: block;
    width: 200px;
    margin-right: 80px;
    max-height: 130px;
    overflow: hidden;
}

header.header .logo img {
    max-width: 131px;
    max-height: 130px;
}

h1 {
    font-size:2.5rem;
    font-weight:700;
    line-height: 2.5rem;
}

.text-sm {
    font-size: .865rem;
}
p.text-lead {
    font-size:1rem
}

.section {
    margin-top: 2rem;
}

.flex {
    display:flex;
    resize: horizontal;
}

.section-left {
    flex:6;
    padding: 0 5rem;
}

.section-right {
    flex:4;
    padding: 0 5rem;
    text-align: center;
}

.section-right img {
    max-width:300px;
    margin: 5rem auto auto auto;
}

fieldset {
    border: 0;
    margin-top: 2rem;
}

fieldset legend {
    font-size: 1.4rem;
    font-weight: 700;
    padding: 0;
}

#form {
    width: 50%;
    margin: auto;
}

input, select, textarea {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background-color: transparent;
    margin: 0;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    -webkit-text-size-adjust: 100%;
    border: 0;
    border-radius: 0;
    font-family: Marianne,arial,sans-serif;
    text-rendering: optimizeLegibility;
}

textarea {
    height: 200px;
}

.input {
    background-color: #eee;
    border-radius: .25rem .25rem 0 0;
    box-shadow: inset 0 -2px 0 0 #3a3a3a;
    color: #3a3a3a;
    display: block;
    font-size: 1rem;
    line-height: 1.5rem;
    padding: .5rem 1rem;
    width: 100%;
}

.input:focus {
    outline-color: #0a76f6;
    outline-offset: 2px;
    outline-style: solid;
    outline-width: 2px;
}

.securite {
    width: 4rem;
}

label {
    color: #161616;
    color: var(--text-label-grey);
    display: block;
    font-size: 1rem;
    line-height: 1.5rem;
}

.btn {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background-color: transparent;
    border: none;
    margin: 0;
    align-items: center;
    background-color: #000091;
    color: #f5f5fe;
    display: inline-flex;
    flex-direction: row;
    font-size: 1rem;
    font-weight: 500;
    line-height: 1.5rem;
    min-height: 2.5rem;
    padding: .5rem 1rem;
    width: -moz-fit-content;
    width: fit-content;
}

.alert {
    padding: 1rem;
    border: 1px solid #ce0500;
    background: #ffeded;
    position: relative;
    background-image: linear-gradient(0deg, rgb(206, 5, 0), rgb(206, 5, 0)), linear-gradient(0deg, rgb(206, 5, 0), rgb(206, 5, 0)), linear-gradient(0deg, rgb(206, 5, 0), rgb(206, 5, 0)), linear-gradient(0deg, rgb(206, 5, 0), rgb(206, 5, 0)), linear-gradient(0deg, rgb(206, 5, 0), rgb(206, 5, 0));
    background-position: 0 0,100% 0,0 100%,0 0,100% 100%;
    background-repeat: no-repeat,no-repeat,no-repeat;
    background-size: 100% 1px,1px 100%,100% 1px,2.5rem 100%;
    padding: 1rem 2.25rem .75rem 3.5rem;
    position: relative;
}

.alert:before {
    content:"";
    --icon-size: 1.5rem;
    background-color: currentColor;
    color: #fff;
    display: inline-block;
    flex: 0 0 auto;
    height: 1.5rem;
    left: 0;
    margin: 1rem .5rem;
    -webkit-mask-size: 100% 100%;
    mask-size: 100% 100%;
    position: absolute;
    top: 0;
    vertical-align: calc(.375em - .75rem);
    width: 1.5rem;
    -webkit-mask-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCI+PHBhdGggZD0iTTE3LjUgMi41aC0xMUwxIDEybDUuNSA5LjVoMTFMMjMgMTJsLTUuNS05LjV6bS0xLjMgMTIuMy0xLjQgMS40LTIuOC0yLjgtMi44IDIuOC0xLjQtMS40IDIuOC0yLjgtMi44LTIuOCAxLjQtMS40IDIuOCAyLjggMi44LTIuOCAxLjQgMS40LTIuOCAyLjggMi44IDIuOHoiLz48L3N2Zz4=);
    mask-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCI+PHBhdGggZD0iTTE3LjUgMi41aC0xMUwxIDEybDUuNSA5LjVoMTFMMjMgMTJsLTUuNS05LjV6bS0xLjMgMTIuMy0xLjQgMS40LTIuOC0yLjgtMi44IDIuOC0xLjQtMS40IDIuOC0yLjgtMi44LTIuOCAxLjQtMS40IDIuOCAyLjggMi44LTIuOCAxLjQgMS40LTIuOCAyLjggMi44IDIuOHoiLz48L3N2Zz4=);
}

@media(max-width: 1000px) {

    .container {
        width: 100%;
        padding: 1rem;
    }
    .section-left {
        flex:none;
        width:100%;
        margin-top: 0;
        padding: 0;
    }

    .section-right {
        display: none;
    }

    #form {
        width: 100%;
    }

    header.header .logo {
        width: 100px;
    }

    header.header .logo img {
        max-width: 100px;
        max-height: 100px;
    }

    header.header {
        padding: 0;
    }

    fieldset {
        padding: 0;
    }
}