.row{
    --bs-gutter-x:70px!important;
    --bs-gutter-y:35px!important;
}
.mb-5{
    margin-bottom:35px!important;
}
.mt-5{
    margin-top:35px!important;
}

@font-face {
    font-family: 'Dax-extra';
    src: url('Dax-ExtraBold.woff2') format('woff2'),
        url('Dax-ExtraBold.woff') format('woff');
    font-weight: bold;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Dax-italic';
    src: url('Dax-Italic.woff2') format('woff2'),
        url('Dax-Italic.woff') format('woff');
    font-weight: normal;
    font-style: italic;
    font-display: swap;
}

@font-face {
    font-family: 'Dax-medium-italic';
    src: url('Dax-MediumItalic.woff2') format('woff2'),
        url('Dax-MediumItalic.woff') format('woff');
    font-weight: 500;
    font-style: italic;
    font-display: swap;
}

@font-face {
    font-family: 'Dax-light';
    src: url('Dax-Light.woff2') format('woff2'),
        url('Dax-Light.woff') format('woff');
    font-weight: 300;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Dax';
    src: url('Dax-Regular.woff2') format('woff2'),
        url('Dax-Regular.woff') format('woff');
    font-weight: 100;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Dax-medium';
    src: url('Dax-Medium.woff2') format('woff2'),
        url('Dax-Medium.woff') format('woff');
    font-weight: 500;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Dax-bold';
    src: url('Dax-Bold.woff2') format('woff2'),
        url('Dax-Bold.woff') format('woff');
    font-weight: bold;
    font-style: normal;
    font-display: swap;
}

html,body{
    font-size:16px;
    font-family:'Dax', Arial, Helvetica, sans-serif;
    color:#3F4659;
}

header{
    background: rgb(63,70,89);
    background: url(/theme/filigrane.png) no-repeat top center, linear-gradient(180deg, rgba(63,70,89,1) 0%, rgba(63,70,89,1) 50%, rgba(63,70,89,90) 100%);
    height:100vh;
}
header .logo{
    max-width:340px;
}
header h2{
    font-size:1.625em;
    font-family:'Dax', Arial, Helvetica, sans-serif;
    color:white;
    text-align: center;
    letter-spacing: 0px;
    color: #FFFFFF;
    text-shadow: 0px 3px 6px #0000008D;
}
header h2 strong{
    font-family:'Dax-bold', Arial, Helvetica, sans-serif;
}

main{
    background: linear-gradient(180deg, rgba(63,70,89,0) 0%, rgba(63,70,89,0) 15%, #EFEEEA 15%, #EFEEEA 45%, rgba(255,255,255,100) 45%, rgba(255,255,255,100) 100%);
}
.offset-inverse{
    margin-top:-45vh;
}

/* Keep header visually above the pulled-up content to avoid overlap issues */

/* Reduce the negative offset on short viewports (Windows zoom / small screens) */
@media (max-height:900px){
    .offset-inverse{margin-top:-35vh}
}
@media (max-height:700px){
    .offset-inverse{margin-top:-25vh}
}
@media (max-height:560px){
    .offset-inverse{margin-top:-15vh}
}
.block-image-1{
    padding-top:150px;
}

.block-white{
    background:#fff;
    padding:35px;
}
.block-contact{
    background:#EFEEEA;
    padding:35px;
}

h3{
    color:#3F4659;
    font-family:'Dax-bold', Arial, Helvetica, sans-serif;
    font-size:2em;
}
p em{
    font-size:1.125em;
    font-family:'Dax-italic', Arial, Helvetica, sans-serif;
}

input[type=text]{
    border:none;
    background:transparent;
    padding:3px;
    color:#3F4659;
    border-bottom:1px solid #3F4659;
    width:100%;
    margin-top:25px;
}
textarea{
    margin-top:25px;
    padding:15px;
    background:transparent;
    color:#3F4659;
    border-bottom:1px solid #3F4659;
    width:100%;
    min-height:125px;
}

::placeholder {
    color:#B1B1B1;
    font-family:'Dax-italic', Arial, Helvetica, sans-serif;
}

input[type=submit]{
    margin-top:35px;
    padding:5px 50px;
    background:#3F4659;
    border:none;
    color:white;
    font-family:'Dax-bold', Arial, Helvetica, sans-serif;
}
input[type=submit]:hover{
    padding:5px 50px;
    color:#3F4659;
    border:1px solid #3F4659;
    background:white;
    align-self:flex-end;
    font-family:'Dax-bold', Arial, Helvetica, sans-serif;
}
.box-quote{
    background: rgb(63,70,89);
    background: url(/theme/bulle.png) repeat-y top right, rgb(63,70,89);
    background-size: 100%;
    border-radius:25px;
    padding:25px;
    position:relative;
    color:white;
    display:flex;
    flex-direction: column;
    justify-content: space-between;
    align-items:center;
    font-family:'Dax-medium-italic', Arial, Helvetica, sans-serif;
    min-height:165px;
}
.box-quote::before{
    content:' ';
    display:block;
    position:absolute;
    bottom:-2px;
    left:-10px;
    width:21px;
    height:25px;
    background:url(/theme/coche_bulle.png) no-repeat;
    background-size:100% 100%!important;
}
.box-quote p:last-child{
    font-family:'Dax', Arial, Helvetica, sans-serif;
    align-self: flex-end!important;
    margin-top:auto!important;
    margin-bottom:0!important;
}
.container-contact{
    width:100%;
    background: rgb(63,70,89);
    background: linear-gradient(180deg, rgba(255,255,255,1) 0%, rgba(255,255,255,1) 35%, rgba(63,70,89,100) 35%, rgba(63,70,89,100) 100%);
}
.container-contact hr{
    display:block;
    height:1px;
    width:100%;
    background: #3F4659;
    padding:0;
    margin:25px 0;
}
footer{
    background: rgb(63,70,89);
    min-height:25vh;
    color:white;
    font-size:1.125em;
    padding:75px 0;
}
footer img{
    max-width:160px!important;
}

@media (max-width:768px){
    .img-fluid-responsive{
        width:100%;
    }
    .offset-inverse{
        margin-top:0;
    }
    header > .container, .block-intro{
        justify-content: space-between!important;
        flex-direction: column!important;
        height:100%!important;
    }
    footer .col-12{
        justify-content:center;
    }
}