/*
Theme Name: R.E.F

Author: Thomas Desnoyers
Author URI: www.thomasdesnoyers.com
*/



@font-face {
    font-family: 'saans';
    src: url('/wp-content/themes/ref/fonts/Saans-Regular.woff2') format('woff2'),
        url('/wp-content/themes/ref/fonts/Saans-Regular.woff') format('woff');
    font-weight: normal;
    font-style: normal;
	font-display: swap;
}

@font-face {
    font-family: 'saans';
    src: url('/wp-content/themes/ref/fonts/Saans-Medium.woff2') format('woff2'),
        url('/wp-content/themes/ref/fonts/Saans-Medium.woff') format('woff');
    font-weight: 800;
    font-style: normal;
	font-display: swap;
}


html {
	font-family: 'saans',Arial, Helvetica, sans-serif;
	line-height: 1.15;
	-ms-text-size-adjust: 100%;
	-webkit-text-size-adjust: 100%;
	-webkit-transition: all .2s ease-in-out;
	transition: all .2s ease, linear;
	color:#021733;
	-webkit-font-smoothing:antialiased;
	-webkit-transition: all .2s ease-in-out;
	-moz-transition: all .2s ease-in-out;
	font-size:18px;
	overflow-x:hidden;
	font-variant-ligatures: none;
}

body {
	margin: 0;
}

article,
aside,
footer,
header,
nav,
section {
	display: block;
}

h1, h2, h3{
	margin:0 0 35px 0;
	text-align: left;
}

h1 {
	font-size: 2em;
	font-family:"saans";
}

h2 {
    font-size: 12vw;
    line-height: 11vw;
    font-family: "saans";
    font-weight: bold;
	position: relative;
	text-align: center;
	margin-bottom: 3.5rem;
}

#pageref h1{
	font-size: 12vw;
}

h3 {
    font-size: 25px;
    font-family: "saans";
    font-weight: 100;
}

h4 {
    margin-top: 0;
    position: relative;
    font-size: 18px;
    font-weight: bold;
    letter-spacing: 2px;
    line-height: 21px;
}

ul{
	list-style: disc;
	padding-left: 16px;
	line-height: 24px;
}


.exp-1 ul{
	padding-left: 16px;
	line-height: 24px;
	list-style: none;
}

.exp-1 li::before {
	content: "\2022";  /* Add content: \2022 is the CSS Code/unicode for a bullet */
	color: red; /* Change the color */
	font-weight: bold; /* If you want it to be bold */
	display: inline-block; /* Needed to add space between the bullet and the text */
	width: 1em; /* Also needed for space (tweak if needed) */
	margin-left: -1em; /* Also needed for space (tweak if needed) */
  }

ol {
    padding-left: 16px;
}

figcaption,
figure,
main {
	display: block;
}

figure {
	margin: 1em 0;
}

hr {
	-webkit-box-sizing: content-box;
	-moz-box-sizing: content-box;
	box-sizing: content-box;
	height: 0;
	overflow: visible;
}

pre {
	font-family: monospace, monospace;
	font-size: 1em;
}

a {
	background-color: transparent;
	-webkit-text-decoration-skip: objects;
	text-decoration: none;
	
}



:focus{
	outline:none!important;
	outline:white;
}

a:active,
a:hover {
	outline-width: 0;
}

abbr[title] {
	border-bottom: 1px #767676 dotted;
	text-decoration: none;
}

b,
strong {
	font-weight: inherit;
}

b,
strong {
	font-weight: 700;
}

code,
kbd,
samp {
	font-family: monospace, monospace;
	font-size: 1em;
}

dfn {
	font-style: italic;
}

mark {
	background-color: #eee;
	color: #222;
}

small {
	font-size: 80%;
}

p{
	font-size: 16px;
	font-weight: 100;
}

sub,
sup {
	font-size: 75%;
	line-height: 0;
	position: relative;
	vertical-align: baseline;
}

sub {
	bottom: -0.25em;
}

sup {
	top: -0.5em;
}

audio,
video {
	display: inline-block;
}

audio:not([controls]) {
	display: none;
	height: 0;
}

img {
	border-style: none;
}

button,
input,
optgroup,
select,
textarea {
	font-family: sans-serif;
	font-size: 100%;
	line-height: 1.15;
	margin: 0;
}

button,
input {
	overflow: visible;
}

button,
select {
	text-transform: none;
}

button,
html [type="button"],
[type="reset"],
[type="submit"] {
	-webkit-appearance: button;
}

button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
	border-style: none;
	padding: 0;
}

button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
	outline: 1px dotted ButtonText;
}

fieldset {
	border: 1px solid #bbb;
	margin: 0 2px;
	padding: 0.35em 0.625em 0.75em;
}

legend {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	color: inherit;
	display: table;
	max-width: 100%;
	padding: 0;
	white-space: normal;
}

progress {
	display: inline-block;
	vertical-align: baseline;
}

textarea {
	overflow: auto;
}

[type="checkbox"],
[type="radio"] {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	padding: 0;
}

[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
	height: auto;
}

[type="search"] {
	-webkit-appearance: textfield;
	outline-offset: -2px;
}

[type="search"]::-webkit-search-cancel-button,
[type="search"]::-webkit-search-decoration {
	-webkit-appearance: none;
}

::-webkit-file-upload-button {
	-webkit-appearance: button;
	font: inherit;
}

details,
menu {
	display: block;
}

summary {
	display: list-item;
}

canvas {
	display: inline-block;
}

template {
	display: none;
}

[hidden] {
	display: none;
}


/* Text meant only for screen readers. */

.screen-reader-text {
	clip: rect(1px, 1px, 1px, 1px);
	height: 1px;
	overflow: hidden;
	position: absolute !important;
	width: 1px;
	word-wrap: normal !important; /* Many screen reader and browser combinations announce broken words as they would appear visually. */
}

.screen-reader-text:focus {
	background-color: #f1f1f1;
	-webkit-border-radius: 3px;
	border-radius: 3px;
	-webkit-box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
	box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
	clip: auto !important;
	color: #21759b;
	display: block;
	font-size: 14px;
	font-size: 0.875rem;
	font-weight: 700;
	height: auto;
	left: 5px;
	line-height: normal;
	padding: 15px 23px 14px;
	text-decoration: none;
	top: 5px;
	width: auto;
	z-index: 100000; /* Above WP toolbar. */
}





/* Typography for Arabic Font */

html[lang="ar"] body,
html[lang="ar"] button,
html[lang="ar"] input,
html[lang="ar"] select,
html[lang="ar"] textarea,
html[lang="ary"] body,
html[lang="ary"] button,
html[lang="ary"] input,
html[lang="ary"] select,
html[lang="ary"] textarea,
html[lang="azb"] body,
html[lang="azb"] button,
html[lang="azb"] input,
html[lang="azb"] select,
html[lang="azb"] textarea,
html[lang="fa-IR"] body,
html[lang="fa-IR"] button,
html[lang="fa-IR"] input,
html[lang="fa-IR"] select,
html[lang="fa-IR"] textarea,
html[lang="haz"] body,
html[lang="haz"] button,
html[lang="haz"] input,
html[lang="haz"] select,
html[lang="haz"] textarea,
html[lang="ps"] body,
html[lang="ps"] button,
html[lang="ps"] input,
html[lang="ps"] select,
html[lang="ps"] textarea,
html[lang="ur"] body,
html[lang="ur"] button,
html[lang="ur"] input,
html[lang="ur"] select,
html[lang="ur"] textarea {
	font-family: Tahoma, Arial, sans-serif;
}

html[lang="ar"] h1,
html[lang="ar"] h2,
html[lang="ar"] h3,
html[lang="ar"] h4,
html[lang="ar"] h5,
html[lang="ar"] h6,
html[lang="ary"] h1,
html[lang="ary"] h2,
html[lang="ary"] h3,
html[lang="ary"] h4,
html[lang="ary"] h5,
html[lang="ary"] h6,
html[lang="azb"] h1,
html[lang="azb"] h2,
html[lang="azb"] h3,
html[lang="azb"] h4,
html[lang="azb"] h5,
html[lang="azb"] h6,
html[lang="fa-IR"] h1,
html[lang="fa-IR"] h2,
html[lang="fa-IR"] h3,
html[lang="fa-IR"] h4,
html[lang="fa-IR"] h5,
html[lang="fa-IR"] h6,
html[lang="haz"] h1,
html[lang="haz"] h2,
html[lang="haz"] h3,
html[lang="haz"] h4,
html[lang="haz"] h5,
html[lang="haz"] h6,
html[lang="ps"] h1,
html[lang="ps"] h2,
html[lang="ps"] h3,
html[lang="ps"] h4,
html[lang="ps"] h5,
html[lang="ps"] h6,
html[lang="ur"] h1,
html[lang="ur"] h2,
html[lang="ur"] h3,
html[lang="ur"] h4,
html[lang="ur"] h5,
html[lang="ur"] h6 {
	font-weight: 700;
}

/* Typography for Chinese Font */

html[lang^="zh-"] body,
html[lang^="zh-"] button,
html[lang^="zh-"] input,
html[lang^="zh-"] select,
html[lang^="zh-"] textarea {
	font-family: "PingFang TC", "Helvetica Neue", Helvetica, STHeitiTC-Light, Arial, sans-serif;
}

html[lang="zh-CN"] body,
html[lang="zh-CN"] button,
html[lang="zh-CN"] input,
html[lang="zh-CN"] select,
html[lang="zh-CN"] textarea {
	font-family: "PingFang SC", "Helvetica Neue", Helvetica, STHeitiSC-Light, Arial, sans-serif;
}

html[lang^="zh-"] h1,
html[lang^="zh-"] h2,
html[lang^="zh-"] h3,
html[lang^="zh-"] h4,
html[lang^="zh-"] h5,
html[lang^="zh-"] h6 {
	font-weight: 700;
}

/* Typography for Cyrillic Font */

html[lang="bg-BG"] body,
html[lang="bg-BG"] button,
html[lang="bg-BG"] input,
html[lang="bg-BG"] select,
html[lang="bg-BG"] textarea,
html[lang="ru-RU"] body,
html[lang="ru-RU"] button,
html[lang="ru-RU"] input,
html[lang="ru-RU"] select,
html[lang="ru-RU"] textarea,
html[lang="uk"] body,
html[lang="uk"] button,
html[lang="uk"] input,
html[lang="uk"] select,
html[lang="uk"] textarea {
	font-family: "Helvetica Neue", Helvetica, "Segoe UI", Arial, sans-serif;
}

html[lang="bg-BG"] h1,
html[lang="bg-BG"] h2,
html[lang="bg-BG"] h3,
html[lang="bg-BG"] h4,
html[lang="bg-BG"] h5,
html[lang="bg-BG"] h6,
html[lang="ru-RU"] h1,
html[lang="ru-RU"] h2,
html[lang="ru-RU"] h3,
html[lang="ru-RU"] h4,
html[lang="ru-RU"] h5,
html[lang="ru-RU"] h6,
html[lang="uk"] h1,
html[lang="uk"] h2,
html[lang="uk"] h3,
html[lang="uk"] h4,
html[lang="uk"] h5,
html[lang="uk"] h6 {
	font-weight: 700;
	line-height: 1.2;
}

/* Typography for Devanagari Font */

html[lang="bn-BD"] body,
html[lang="bn-BD"] button,
html[lang="bn-BD"] input,
html[lang="bn-BD"] select,
html[lang="bn-BD"] textarea,
html[lang="hi-IN"] body,
html[lang="hi-IN"] button,
html[lang="hi-IN"] input,
html[lang="hi-IN"] select,
html[lang="hi-IN"] textarea,
html[lang="mr-IN"] body,
html[lang="mr-IN"] button,
html[lang="mr-IN"] input,
html[lang="mr-IN"] select,
html[lang="mr-IN"] textarea {
	font-family: Arial, sans-serif;
}

html[lang="bn-BD"] h1,
html[lang="bn-BD"] h2,
html[lang="bn-BD"] h3,
html[lang="bn-BD"] h4,
html[lang="bn-BD"] h5,
html[lang="bn-BD"] h6,
html[lang="hi-IN"] h1,
html[lang="hi-IN"] h2,
html[lang="hi-IN"] h3,
html[lang="hi-IN"] h4,
html[lang="hi-IN"] h5,
html[lang="hi-IN"] h6,
html[lang="mr-IN"] h1,
html[lang="mr-IN"] h2,
html[lang="mr-IN"] h3,
html[lang="mr-IN"] h4,
html[lang="mr-IN"] h5,
html[lang="mr-IN"] h6 {
	font-weight: 700;
}

/* Typography for Greek Font */

html[lang="el"] body,
html[lang="el"] button,
html[lang="el"] input,
html[lang="el"] select,
html[lang="el"] textarea {
	font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
}

html[lang="el"] h1,
html[lang="el"] h2,
html[lang="el"] h3,
html[lang="el"] h4,
html[lang="el"] h5,
html[lang="el"] h6 {
	font-weight: 700;
	line-height: 1.3;
}

/* Typography for Gujarati Font */

html[lang="gu-IN"] body,
html[lang="gu-IN"] button,
html[lang="gu-IN"] input,
html[lang="gu-IN"] select,
html[lang="gu-IN"] textarea {
	font-family: Arial, sans-serif;
}

html[lang="gu-IN"] h1,
html[lang="gu-IN"] h2,
html[lang="gu-IN"] h3,
html[lang="gu-IN"] h4,
html[lang="gu-IN"] h5,
html[lang="gu-IN"] h6 {
	font-weight: 700;
}

/* Typography for Hebrew Font */

html[lang="he-IL"] body,
html[lang="he-IL"] button,
html[lang="he-IL"] input,
html[lang="he-IL"] select,
html[lang="he-IL"] textarea {
	font-family: "Arial Hebrew", Arial, sans-serif;
}

html[lang="he-IL"] h1,
html[lang="he-IL"] h2,
html[lang="he-IL"] h3,
html[lang="he-IL"] h4,
html[lang="he-IL"] h5,
html[lang="he-IL"] h6 {
	font-weight: 700;
}

/* Typography for Japanese Font */

html[lang="ja"] body,
html[lang="ja"] button,
html[lang="ja"] input,
html[lang="ja"] select,
html[lang="ja"] textarea {
	font-family: "Hiragino Kaku Gothic Pro", Meiryo, sans-serif;
}

html[lang="ja"] h1,
html[lang="ja"] h2,
html[lang="ja"] h3,
html[lang="ja"] h4,
html[lang="ja"] h5,
html[lang="ja"] h6 {
	font-weight: 700;
}

/* Typography for Korean font */

html[lang="ko-KR"] body,
html[lang="ko-KR"] button,
html[lang="ko-KR"] input,
html[lang="ko-KR"] select,
html[lang="ko-KR"] textarea {
	font-family: "Apple SD Gothic Neo", "Malgun Gothic", "Nanum Gothic", Dotum, sans-serif;
}

html[lang="ko-KR"] h1,
html[lang="ko-KR"] h2,
html[lang="ko-KR"] h3,
html[lang="ko-KR"] h4,
html[lang="ko-KR"] h5,
html[lang="ko-KR"] h6 {
	font-weight: 600;
}

/* Typography for Thai Font */

html[lang="th"] h1,
html[lang="th"] h2,
html[lang="th"] h3,
html[lang="th"] h4,
html[lang="th"] h5,
html[lang="th"] h6 {
	line-height: 1.65;
	font-family: "Sukhumvit Set", "Helvetica Neue", Helvetica, Arial, sans-serif;
}

html[lang="th"] body,
html[lang="th"] button,
html[lang="th"] input,
html[lang="th"] select,
html[lang="th"] textarea {
	line-height: 1.8;
	font-family: "Sukhumvit Set", "Helvetica Neue", Helvetica, Arial, sans-serif;
}

/* Remove letter-spacing for all non-latin alphabets */

html[lang="ar"] *,
html[lang="ary"] *,
html[lang="azb"] *,
html[lang="haz"] *,
html[lang="ps"] *,
html[lang^="zh-"] *,
html[lang="bg-BG"] *,
html[lang="ru-RU"] *,
html[lang="uk"] *,
html[lang="bn-BD"] *,
html[lang="hi-IN"] *,
html[lang="mr-IN"] *,
html[lang="el"] *,
html[lang="gu-IN"] *,
html[lang="he-IL"] *,
html[lang="ja"] *,
html[lang="ko-KR"] *,
html[lang="th"] * {
	letter-spacing: 0 !important;
}

.red-stroke {
    width: 1px;
    height: 80px;
    background-color: #FF502C;
    display: block;
    position: absolute;
    left: 50%;
    top: -100px;
}

#equipe {
	height: inherit;
    margin-bottom: 0;
}

.article-title {
    font-size: 24px;
    display: block;
}

.number {
    font-size: 12px;
    font-weight: bold;
    margin-bottom: 15px;
}

#cabinet {
	padding-bottom: 100px;
	position: relative;
}

.background-cabinet{
	background-color: #F6F6F6;
	position: absolute;
	height: 30%;
	left:0;
	bottom: 0;
	width: 100%;
	z-index: -1;
}

.typo-accueil {
    height: 100vh;
}

lottie-player {
    width: 80%;
    height: 361px;
    position: absolute;
    bottom: -60px;
    right: inherit;
	left:0;
}


.slogan-2 {
    
    color: #FF502C;
    font-size: 16px;
    line-height: 21px;
	text-align: center;
	display: inline-block;
	margin-top:1rem!important;
}

.slogan {
    font-size:9vw;
    font-weight: bold;
    
    line-height: 9vw;
    color: #021733;
	text-align: center;
}

.text-stroke {
    -webkit-text-stroke: 1px #021733;
    color: transparent;
	text-align: center;
    font-size: 9vw;
    font-weight: bold;
    
	line-height: 9vw;
	display:inline-block;
}

.red-stroke-hori {
    height: 1px;
    background-color: #fd4f2c;
    width: 120px;
    margin: 1rem 0;
}

#accueil{
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center;
	background-position: center 50%;
  will-change: background-position;
  overflow: hidden;
}

#accueil p{
	margin:0;
}

.home{
	overflow-x:hidden;
}

.intro-title{
	font-size:20px;
	
}
.menu{
	padding: 130px 6vw;
    text-align: left;
}
.menu a{
	color:#021733;
	font-size: 1rem;
	font-weight: bold;
}

.small + menu a{
	color:#021733!important;
}

a{
	color:#FF502C;
	padding-bottom:1px;
	transition: all ease-in-out .2s;
}

.menu-item {
    display: inline-block;
    padding: 0.6rem 1rem;
    border-radius: 0.3rem;
	transition: all ease-in-out .2s;
	cursor: pointer;
}

.menu-item:hover {
    display: inline-block;
    padding: 0.6rem 1rem;
    background: #021734;
    border-radius: 0.3rem;
	color: white;
}
.menu-item:hover a {
    color: white;
}

#masthead{
	display:none;
}
.hamburger{
	display:block;
}
.number{
	color:#FF502C;
	
}
.number-bloc{
	margin-top: 50px;
    position: absolute;
	bottom: 50px;
	width:calc(100% - 6vw);
}
.number-title {
	margin-bottom: 20px;
	margin-top:0;
}

.post-infos .number{
	color:#97B0CC;
}

.cta-outline {
    background-color: transparent;
    font-size: 12px;
    letter-spacing: 1px;
    color: white;
    padding: 12px 28px;
    border: 2px solid white;
    
    font-family: "saans";
    -moz-transition: all .2s ease-in-out;
	transition: all .2s ease-in-out;
	cursor:pointer;
}

#cabinet .para-dist{
	font-size: 16px;
    line-height: 1.5rem;
}
.cta-outline-red {
    background-color: transparent;
    font-size: 12px;
    letter-spacing: 1px;
    color: #FF502C;
    padding: 1rem;
    border: 2px solid #FF502C;
    
    font-family: "saans";
    -moz-transition: all .2s ease-in-out;
	transition: all .2s ease-in-out;
	cursor:pointer;
	margin: auto!important;
	display: block;
	font-weight: bold;
	border-radius: 0.5rem;
}
#cf7md-form .mdc-button--primary.mdc-button--raised{
	background-color: #021733!important;
	font-family:'Circular';
	-webkit-transition: all .2s ease-in-out;
	-moz-transition: all .2s ease-in-out;
	transition: all .2s ease-in-out;
}
#cf7md-form .mdc-button--primary.mdc-button--raised:hover{
	background-color: transparent!important;
	color:#021733;
	
}
.cf7md-item.cf7md-submit.mdc-layout-grid__cell.mdc-layout-grid__cell--span-12{
	text-align: center;
}
.cta-outline:hover{
	background-color: white;
	color:#021733;
}
.cta-outline-red:hover{
	background-color: #FF502C;
	color:white;
}
.img_pres {
	width: calc(100% + 12vw);
    margin-left: -6vw;
	height: 430px;
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
}
.title-bloc{
	height: 100vh;
}

.bloc-home {
    text-align: center;
    height: 100vh;
    display: flex;
    align-items: center;
    flex-direction: column;
    justify-content: center;
}

.text-pres{
	margin-top: 50px;
    margin-bottom: 50px;
}
.para{
	padding-right:40px;
	width:100%;
	text-align: justify;
}
.bloc-para{
	display:block;
	color:#7A7A7A;
}
#presentation{
	overflow-x: hidden;
}
.w3-bar-item.w3-button.tablink {
	font-size: 20px;
	margin-left: 30px;
	width:calc(100% - 60px);
    font-family: 'circular';
    color: #FF502C;
    display: block;
    text-align: left;
    background-color: transparent;
    border: none;
	margin-bottom: 13px;
	position: relative;
	-webkit-transition: all .2s ease-in-out;
	-moz-transition: all .2s ease-in-out;
	transition: all .2s ease-in-out;
}
.w3-bar-item.w3-button.tablink:hover{
	color:white!important;
}
#competences{
	background-color: #F1F3F3;
	overflow: hidden;
}
.w3-red{
	color:white!important;
}
.w3-red:after{
	display:none;
}
.w3-red{
	background-color: #021733;
	padding-top: 50px;
	padding-bottom: 50px;
	position: relative;
}
.tab1:before{
	content:"01";
	position: absolute;
    left: -30px;
    top: 10px;
    font-size: 14px;
}
.tab2:before{
	content:"02";
	position: absolute;
    left: -30px;
    top: 10px;
    font-size: 14px;
}
.tab3:before{
	content:"03";
	position: absolute;
    left: -30px;
    top: 10px;
    font-size: 14px;
}
.tab4:before{
	content:"04";
	position: absolute;
    left: -30px;
    top: 10px;
    font-size: 14px;
}
section#pageref .adresse {
    text-align: center;
	margin: auto;
}
#competences ul{
	list-style: disc;
	line-height: 27px;
	padding-left:20px;
}
#competences h2{
	color:white;
	z-index: 1;
    position: relative;
}
.green-bloc {
    position: absolute;
    width: 120%;
    background-color: #021733;
	left: -6vw;
	top:0;
	height: 100%;
}
.thumb-bloc {
    width: 100%;
	height: 51vw;
    background-size: cover;
    background-repeat: no-repeat;
	background-position: center;
	-webkit-transition: all .5s ease-in-out;
	-moz-transition: all .5s ease-in-out;
	transition: all .5s ease-in-out;
	border-radius: 1rem;
}

p.read-more {
    position: absolute;
    bottom: 0.5rem;
    left: 1.5rem;
    font-size: 0.8rem;
}
.post-card {
    background-color: white;
	overflow: hidden;
	margin-bottom: 40px;
	height: 100%;
    box-sizing: border-box;
    border-radius: 1rem;
	box-shadow: 4px 4px 190px -40px rgba(0, 0, 0, 0.20);
}
.post-infos {
    padding: 1.5rem;
}
.post-date {
    font-size: 10px;
    
    color: #000000;
    margin-top: 9px;
    margin-bottom: 6px;
}
#actualites h3, .title-actu {
    margin-bottom: 10px;
    color: #021733;
    font-weight: normal;
    font-size: 16px;
    text-transform: none;
    letter-spacing: 0;
	line-height: 1.5rem;
    text-align: left;
}
#actualites {
    z-index: 1;
    position: relative;
	background-color: white;
	padding-bottom:120px;
}
.readmore{
	font-weight: bold;
	font-size:14px;
	display:none;
}
.site-header.small{
	padding-top: 10px;
	padding-bottom: 10px;
	background-color:white!important;
}
.site-header.big{
	padding-top: 30px;
	padding-bottom: 30px;
}
footer p{
	font-size: 1rem;
    line-height: 2rem;
}
.thumb-bloc-single {
    width: 100%;
    height: 180px;
    background-position: center;
    background-repeat: no-repeat;
	background-size: cover;
	margin-bottom: 38px;
}
article{
	margin-top:0;
	min-height: 500px;
	margin-bottom:120px;
}
.logo-link:hover, .hamburger:hover{
	border-bottom:none;
}
.thumb-bloc:hover {
    transform: scale(1.05);
}
.hover-bloc {
	overflow: hidden;
}

#mobile-menu {
	background-color: white;
    padding: 0 6vw;
    position: fixed;
    top: 0;
	left: 0;
	width:100%;
	height: 52px;
	z-index: 999;
}
#mobile-menu img{
	width: 100px;
    height: auto;
    margin-top: 10px;
}

.container-fluid{
	margin-right:auto;
	margin-left:auto;
	padding-right:6vw;
	padding-left:6vw;
}
.w3-border{
	padding-left:6vw;
	padding-right:6vw;
	padding-top: 50px;
    padding-bottom: 50px;
}
.w3-border li{
	margin-bottom:15px;
	text-align: justify;
}
.menu-post {
    color: #021733;
    float: right;
}
a.menu-post-mobile {
    color: white;
    position: absolute;
    left: 20px;
	top: 130px;
	font-size:2em;
}

.small .menu a{
	color:#021733!important;
}

.img-accueil {
    width: 100%;
	height: auto;
	margin-top: -23vw;
	z-index: 1;
    position: relative;
}

.img-cabinet {
    margin-left: -8vw;
    width: calc(100% + 6vw);
	height: auto;
	margin-top: 95px;
}

.logo-ref{
	float:left;
	width: 11rem;
    height: auto;
}

.logo-ref-light-blue{
	width: 11rem;
    height: auto;
}


.page-template-a-propos #cabinet{
	background-color:transparent;
}

.texte-cabinet{
	margin-top:0;
}

.section-title {
	background-color: #FAF8F1;
	margin-bottom: 200px;
}

#cabinet, #expertises, #equipe, #actualites, #pageref{
	padding-top:60px;
	position: relative;
}
#pageref{
	margin-bottom: 140px;
}

#expertises a {
    color:#021733;
	-webkit-transition: all .2s ease-in-out;
	-moz-transition: all .2s ease-in-out;
	transition: all .2s ease-in-out; 
}

#expertises a:hover {
    color:#FF502C;
}

.img-expertises {
    margin-top: 80px;
    margin-bottom: -90px;
    width: 100%;
    height: auto;
}

section#expertises {
	padding-bottom: 8rem;
	background-color: #F6F6F6;
}

article h1 {
    font-size: 3rem;
    text-align: left;
}

.para-exp {
    margin-bottom: 40px;
}

.exp-1 {
    margin-bottom: 0;
}

.row.exp-2{
	flex-direction:column-reverse;
}

.post-type-archive-avocats #equipe{
	background-color: transparent;
}

p#breadcrumbs {
    font-size: 0.8rem;
    line-height: 1rem;
	text-align: center;
}

.post-card-single p#breadcrumbs {
    text-align: left;
}


.single-expertises p#breadcrumbs {
    text-align: left;
}

.photo-avocat{
	width:100%;
	height: auto;
}

.avocat-table{
	border-collapse: collapse;
	margin-top: 45px;
	width: 100%;
	
}

.avocat-table p{
	font-size:12px;
	margin: 5px 0;
}

.avocat-table tr{
	border-top:1px solid #FF502C;
}

.avocat-table td{
	vertical-align: text-top;
    padding: 20px 0 20px 18px;
    position: relative;
}

.titre-table {
    font-size: 11px;
    
	letter-spacing: 0.5px;
	padding: 20px 0 20px 0!important;
	width:140px;
	color:#FF502C;
}

img.logo-distinctions.logo-legal-500 {
    height: 80px;
}

/*.titre-table:before {
    content: url(/wp-content/themes/oplus/img/plus.svg);
    position: absolute;
	left: 0;
	zoom: 0.8;
}*/

.oval {
    position: absolute;
    left: -15vw;
    top: 15vh;
    width: 120vw;
    z-index: -1;
}

.oval-2 {
    position: absolute;
    width: 80vw;
    right: -36vw;
    z-index: -1;
    top: -110px;
}

.polygon {
    position: absolute;
    width: 53vw;
    right: -9vw;
    top: 15vh;
	mix-blend-mode: color-burn;
	z-index: -1;
}

.polygon-2 {
    position: absolute;
    z-index: -1;
    left: -6vw;
	width: 56vw;
    top: 6px;
    height: auto;
}

.audace, .courage, .rigueur {
    font-size: 15vw;
    font-weight: bold;
    
    margin-bottom: 9vw;
    margin-top: 0;
}

.single-post .flex-footer{
	display:none;
}

.courage {
    margin-left: -12vw;
}

.rigueur {
    margin-left: -17vw;
}

.addui-Accordion .addui-Accordion-header{
	text-align:left;
	background-color: transparent;
	padding: 8px 0 8px 0;
}

.addui-Accordion .addui-Accordion-header h4{
	margin-bottom:0;
	font-size:14px;
	line-height: 14px;
	
}

.addui-Accordion{
	box-shadow:none;
}

.addui-Accordion .addui-Accordion-content{
	padding: 20px 0 20px 0;
	background:transparent;
}

.addui-Accordion .addui-Accordion-content.addui-Accordion-last{
	border-top: 1px solid #FF502C;
}

.addui-Accordion .addui-Accordion-header.addui-Accordion-open::after, .addui-Accordion .addui-Accordion-header::after{
	display:none;
}

.title-case {
    font-size: 12px;
	text-align:left;
    font-weight: bold;
    letter-spacing: 1px;
    color: #FF502C;
    margin-bottom: 0;
}

.expertises-title, .equipe-title{
	margin-bottom:62px;
}

.thumb-avocat img {
    width: 100%;
    height: auto;
}

.avocat-bloc{
	margin-bottom:60px;
}

.polygon-equipe {
    position: absolute;
    z-index: -1;
    top: -20px;
    left: -26vw;
    width: 62vw;
    height: auto;
}

#equipe h3 {
	font-size:1.225rem;
	margin:0;
	padding-left: 0;
	color:#021733;
	font-weight: 600;
}

.red-sep{
	color:#FF502C!important;
}

#equipe h3:before{
	display:none;
}

#equipe p {
    
    font-size: 0.875rem;
    color: black;
	margin: 0;
}

#recrutement{
	text-align:center;
	padding-top:120px;
	padding-bottom:125px;
	background-color: #021733;
	color:white;
}

#recrutement p{
	margin-bottom:35px;
	text-align:center!important;
}

.recrutement-title{
	font-weight: bold;
	margin-bottom:20px;
	font-size:8vw;
	line-height: 7vw;;
}

.flex-footer{
	display:-webkit-flex;
	display:-moz-flex;
	display:flex;
	flex-direction:column;
}

.left-footer{
	display: -webkit-flex;
    display: -moz-flex;
    display: flex;
    flex-direction: column;
    justify-content: center;
	padding-left: 6vw;
	padding-right: 6vw;
	padding-top: 90px;
	padding-bottom: 90px;
	color:#021733;
	background-color:#d1dae3;
}

.right-footer {
    display: -webkit-flex;
    display: -moz-flex;
    display: flex;
    flex-direction: column;
    justify-content: center;
	padding-left: 6vw;
	padding-top: 90px;
	padding-bottom: 90px;
	color:#021733;
	background-color:#C1CCD7;
	width: 100%;
}

.maillink {
    color: #FF502C;
    margin-top: 30px;
    display: inline-block;
    border-bottom: 1px solid;
}

.contact a, .adresse a{
	color:#FF502C;
}

.post-infos h4{
	color:#1f1e1e;
}

.flex-footer h3{
	font-size:34px;
	line-height:7vw;
	margin-bottom:15px;
}

.legal-mention-link{
	display: none;
}

.home .legal-mention-link{
	display: inline-block;
}

.addresse{
	
}

.contact{
	margin-bottom:0;
}

.col-footer{
	margin-bottom:1rem;
}

.bottom-bar {
	padding: 68px 6vw 68px 6vw;;
	
}

.bottom-bar p{
	font-size:14px;
	letter-spacing: 1px;
	margin:0;
}

.bottom-bar a{
	color:#021733;
}

.bb-link{
	color:white;
}

.actu-title{
	margin-bottom:50px;
	text-align:center;
}

.texte-cabinet span {
    color: #FF502C;
    margin-bottom: -20px;
    display: block;
}

.post-card-single{
	position: -webkit-sticky;
	position:sticky;
	top:66px;
}

.link-gg{
	color:white;
}

.link-gg:hover{
	border-bottom:none;
}

.avocat-single-title{
	font-size: 49px;
    line-height: 47px;
    font-family: "saans";
    margin: 0;
    
    margin-top: 40px;
}

.fonction-avocat-single{
	font-size:14px;
	
	color:grey;
	margin-bottom:60px;
}

.image-single{
	width:100%;
	height: auto;
}

.actu-archive{
	margin-top:30px;
}

.red-spacer{
	width:100%;
	margin-bottom: 80px;
	border-bottom:1px solid #FF502C;
}

.nav-bottom{
    border-top: 1px solid #FF502C;
	padding: 20px 0;
	margin-top:55px;
}

.nav-bottom a{
	color:#FF502C;
}

.next-link{
	text-align:right;
	font-size: 10px;
    
}

.prev-link{
	text-align:left;
	font-size: 10px;
    
}

.all-link{
	text-align:center;
	font-size: 10px;
    
}

.prev-link a, .next-link a, .all-link a{
	color:#FF502C;
	letter-spacing: 0.5px;
}


.post-card-single img {
    width: 100%;
    height: auto;
}

.post{
	min-height: calc(100vh - 298px);
}

p.adresse {
    max-width: 430px;
}

.single .menu a {
    color: #021733;
}

.logo-distinctions{
	height: 50px;
	width: auto;
	margin-top:2rem;
}

#distinctions p{
	text-align: center;
}

#distinctions{
	padding-top:120px;
	padding-bottom:80px;
	background-color: #C1CCD7;
}

.bloc-dist {
    margin-bottom: 40px;
}

section#infographies {
    background-color: #021733;
	padding-top: 3.3rem;
    padding-bottom: 5rem;
	display: none;
}

section#infographies h2{
	color:white;
	margin-bottom: 2rem;
}

#infographies button.cta-outline-red {
    display: inline-block;
    text-align: center;
    margin: 0.5rem!important;
}

#infographies a:hover {
    border-bottom: 0;
}

.infographie-img{
	max-width: 100%;
	height: auto;
	margin:auto;
}

.single-expertises h3.title-case {
    margin-top: 3rem;
    padding-top: 3rem;
    margin-bottom: 2.5rem;
    border-top: 1px solid;
}

.expertises .avocat-single-title {
    margin-top: 1rem;
}

.icon-expertise{
	width: 60px;
    height: 60px;
    display: -webkit-flex;
    display: -moz-flex;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 100%;
    padding: 1rem;
    border: 2px solid #ff502c;
	margin-bottom: 1rem;
}

.icon-expertise img{
	width: 100%;
	height: auto;
}

p.link-exp {
    font-size: 0.5rem;
	color:#ff5a3a;
}

h2.actu-title-exp {
    font-size: 2rem;
    text-align: left;
    margin-top: 2rem;
    margin-bottom: 3rem;
    border-top: 1px solid #ff0100;
    padding-top: 3rem;
}

.thumb-avocat img {
    width: 100%;
    height: auto;
	box-sizing:border-box;
}

.bloc-home{
	text-align:center;
}

span.and {
    font-weight: 100;
}

.text-inter {
     margin: 0.5rem 0;
    line-height: 24px;
    font-size: 16px;
    text-transform: unset;
    letter-spacing: normal;
    text-align: left;
}

.inter-exp {
    margin-bottom: 4rem;
}

.single-post h2 {
	margin-top: 0;
    font-size: 1.5rem;
    line-height: 2rem;
    margin-bottom: 1rem;
    font-weight: 600;
    letter-spacing: 2px;
    text-align: left;
}

.single-post h3{
    margin-top: 0;
	margin-bottom:1rem;
    position: relative;
    font-size: 18px;
    font-weight: bold;
    
    letter-spacing: 2px;
    line-height: 21px;
}

.single-post h4 {
	margin-top: 0;
    font-size: 1rem;
    letter-spacing: inherit;
    text-transform: inherit;
    margin-bottom: 1rem;
}

td {
    padding: 0.8rem 0.5rem 0.8rem 0;
}

tr {
    border-top: 1px solid gray;
}

legend.wpforms-field-label {
    font-size: 2rem!important;
    line-height: 2rem!important;
}

span.wpforms-page-indicator-page-title {
    text-align: left;
}

fieldset {
    margin-bottom: 2rem!important;
}

.page-id-1921 h2.actu-title {
    margin-bottom: 1rem;
}

p.text-quest {
	background: aliceblue;
	border-radius: 1rem;
	padding: 2rem;
}

span.title-01 {
    margin-top: 23vh;
    display: block;
	position: relative;
	z-index: 1;
}

span.title-02 {
    position: absolute;
    display: block;
    right: 6vw;
    bottom: 6vw;
}
svg { overflow: visible; }

svg#home_mark1 {
    position: absolute;
    top: 36vh;
    left: 4rem;
}

svg#home_mark2 {
    position: absolute;
    top: 33vh;
    right: -15rem;
    transform: rotate(45deg);
}

h2::before {
    content: url(/wp-content/themes/ref/img/bullet.svg);
    position: absolute;
    left: -3.5rem;
}

.chapo {
    font-size: 1.625rem;
    margin: 0;
    line-height: 2rem;
    margin-bottom: 2rem;
}

.card-ref {
    background: white;
    border-radius: 1rem;
    padding: 2rem;
    height: 100%;
    box-sizing: border-box;
	text-align: left;
	position: relative;
	box-shadow: 4px 4px 190px -55px rgba(0, 0, 0, 0.20);
}

.logo-legal-500{
	height: 4rem;
	width: auto;
}

.logo-le-point, .logo-decideurs{
	height: 2rem;
	width: auto;
}

.card-ref img {
    position: absolute;
    top: 2rem;
    left: 2rem;
}

p.number-card {
    position: absolute;
    right: 2rem;
    top: 2rem;
    margin: 0;
    color: #ff512c;
    font-weight: bold;
    font-size: 0.8rem;
}

p.titre-distinction {
    margin-top: 7rem;
	font-weight: bold;
}

.card-ref p {
    margin-bottom: 0;
}

.row.distinctions {
    margin-top: 3rem;
}

.bloc-exp {
    position: relative;
    border-bottom: 1px solid #ff5533;
	padding: 2rem 0 2rem 4rem;
}

img.arrow {
    position: absolute;
    right: 0;
    top: 3rem;
}

p.number {
    position: absolute;
    left: 0;
    top: 1.8rem;
}

.bloc-exp h3 {
    margin: 0;
	width: 90%;
}

.hscroll{
  position: relative;
  overflow: hidden;         
  width: 100%;
}

.hscroll__track{
  display: flex;
  gap: 24px;
  will-change: transform;
  padding-left: 6vw;
}

.card {
    flex: 0 0 auto;
    width: min(20vw);
    background: white;
    overflow: hidden;
    border-radius: 1rem;
    text-align: left;
	box-shadow: 4px 4px 190px -40px rgba(0, 0, 0, 0.20);
	position: relative;
	border: 2px solid #ffffff;
	transition:all .3s ease-in-out;
}

.card:hover {
	border: 2px solid #ff7b62;
}

.info-avocat {
    padding: 1.5rem;
}

img.arrow-card {
    position: absolute;
    right: 1.5rem;
    bottom: 1.5rem;
}

ul#menu-menu-ref {
    background: white;
    width: max-content;
    border-radius: 1rem;
    border: 1px solid rgb(255, 255, 255, 0.5);
    padding: 0.5rem 0.4rem;
    border-radius: 0.5rem;
    background-color: rgb(255, 255, 255, 0.6);
    backdrop-filter: blur(5px);
    color: white;
}

.menu-menu-ref-container {
    position: fixed;
    left: 0;
    right: 0;
    margin: auto;
    text-align: center;
    display: flex;
    align-items: center;
    justify-content: center;
	top:2rem;
}

.card.card-join {
    padding: 1.5rem;
	border: 2px solid #fc7b62;
}

.card.card-join h3 {
    font-size: 3vw !important;
	padding-top: 7rem;
}

.contact-banner{
	background: linear-gradient(105deg, #000 12.43%, #021229 37.63%, #113972 65.66%);
	border-radius: 1rem;
	padding: 4rem;
	color: white;
	overflow: hidden;
    position: relative;
}

button.cta-red {
    background: #ff512c;
    padding: 1rem;
    border-radius: 0.5rem;
    border: none;
    color: white;
}

.contact-banner p {
    font-size: 1.625rem;
    line-height: 2rem;
	max-width: 60%;
}

img.graphic {
    position: absolute;
    top: -4rem;
    right: 0;
}

section#contact {
    margin-bottom: 3rem;
}

.title-contact {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.right-header {
    position: fixed;
    right: 6vw;
    display: flex;
    align-items: center;
	top:2.3rem
}

.right-header .cta-red {
    margin-right: 1rem;
}

header svg path{
	transition: all .3s ease-in-out;
}

.is-scrolled svg path {
    fill: #021733;
}


@media screen and (min-width: 1128px ){
	.slogan {
		font-size: 98px;
		font-weight: bold;
		
		line-height: 96px;
	}
	.slogan-2 {
		
		color: #FF502C;
		font-size:27px;
		line-height: 28px;
		margin-top: 2rem!important;
	}
	.text-stroke{
		-webkit-text-stroke: 2px#021733;
		color: transparent;
		font-size: 98px;
		font-weight: bold;
		
		line-height: 96px;
	}
}

@media screen and (min-width: 768px ) and (max-width: 1127px){
	.slogan {
		font-size: 68px;
		font-weight: bold;
		
		line-height: 64px;
	}
	.slogan-2 {
		
		color: #FF502C;
		font-size: 18px;
		line-height: 24px;
	}
	.text-stroke{
		-webkit-text-stroke: 2px #021733;
		color: transparent;
		font-size: 68px;
		font-weight: bold;
		
		line-height: 64px;
	}
}

@media screen and (min-width: 768px ) and (max-width: 1600px){
	lottie-player {
		width: 385px;
		height: 221px;
		position: absolute;
		bottom: -60px;
		right: 4vw;
		left: auto;
	}
}

@media screen and (min-width: 1600px ){
	lottie-player {
		width: 600px;
		height: 361px;
		position: absolute;
		bottom: -60px;
		right: 6vw;
		left:auto;
	}
}


@media screen and (min-width: 768px ){
	
	.col-footer{
		margin-bottom:0;
	}
	h1{
		font-size: 10rem;
		line-height: 9rem;
	}
	h2.actu-title-exp {
		font-size: 4rem;
		text-align: left;
		margin-bottom: 4rem;
		border-top: 1px solid #ff0100;
		padding-top: 8rem;
	}
	p.link-exp {
		font-size: 1rem;
		color: #ff5a3a;
	}
	.para-exp {
		margin-bottom: 70px;
	}
	section#infographies h2{
		margin-bottom: 4rem;
	}
	section#infographies {
		background-color: #021733;
		padding-top: 8rem;
		padding-bottom: 8rem;
	}
	#equipe {
		padding-bottom: 120px;
	}
	.red-stroke {
		height: 120px;
		top: -182px;
	}
	.article-title {
		font-size: 50px;
	}
	.polygon-2 {
		width: 42vw;
		top: 126px;
	}
	.avocat-single-title{
		font-size: 60px;
		line-height: 55px;
		font-family: "saans";
		margin: 0;
	}
	.polygon-equipe {
		top: -10px;
		left: -20vw;
		width: 52vw;
	}
	.oval-2 {
		top: -350px;
	}
	.post-date {
		font-size: 14px;
		margin-top: 20px;
		margin-bottom: 13px;
	}
	.exp-1 {
		margin-bottom: 90px;
	}
	.row.exp-2{
		flex-direction:row;
	}
	.actu-title{
		margin-bottom:120px;
	}
	.addui-Accordion .addui-Accordion-header h4{
		margin-bottom:0;
		font-size:inherit;
		line-height: inherit;
	}
	.expertises-title, .equipe-title{
		margin-bottom:120px;
	}
	.audace, .courage, .rigueur {
		font-size: 7.5vw;
		margin-bottom:6vw;
	}
	#cabinet, #expertises, #equipe, #actualites {
		padding-top:120px;
	}
	#pageref{
		padding-top:200px;
		margin-bottom: 140px;
	}
	h3 {
		font-size: 40px;
	}
	h2, #pageref h1 {
		font-size: 4rem;
		font-weight: bold;
		line-height: 63px;
		text-align: left;
		margin-left: 3.5rem;
	}
	.flex-footer h3{
		font-size:50px;
		line-height: 5vw;
	}
	.left-footer{
		width:50%;
		height: 31vw;
	}
	.right-footer{
		padding-top:0;
		padding-bottom:0;
		padding-left:12vw;
		width:50%;
	}
	.flex-footer{
		flex-direction:row;
	}
	.intro-title{
		font-size: 4vw;
		
		line-height: 97px;
		margin-top: -58px;
	}
	.w3-bar-item.w3-button.tablink{
		font-size:30px;
	}
	html, p{
		font-size:16px;
	}
	p{
		line-height: 24px;
		text-align:left;
	}
	.thumb-bloc{
		height: 17vw;
	}
	.img_pres {
		height: 100%;
		width: calc(100% + 17%);
		margin-left:0;
	}
	#actualites h3, .title-actu{
		font-size:23px;
		line-height: 2rem;
    	text-align: left;
	}
	.readmore{
		font-size:16px;
	}
	.thumb-bloc-single {
		height: 520px;
	}
	.number-bloc{
		bottom:70px;
	}
	.recrutement-title{
		font-size:5vw;
		line-height: 5vw;;
	}
	form#wpforms-form-1917 {
		margin-top: 3rem;
	}
	
}
@media screen and (min-width: 1332px ){
	.expertises .avocat-single-title{
		position: sticky;
		top: 10rem;
	}
	.polygon-2 {
		top: 36px;
	}
	.post{
		min-height: calc(100vh - 403px);
	}
	.nav-bottom{
		border-top: 1px solid #FF502C;
		margin-top:123px;
	}
	#masthead{
		display:block;
		background-color:transparent;
		color:#021733;
		position: fixed;
		width: 100%;
		top: 0;
		-webkit-transition: all .2s ease-in-out;
		-moz-transition: all .2s ease-in-out;
		transition: all .2s ease-in-out; 
		z-index:2;
	}
	.w3-bar-item.w3-button.tablink {
		margin-bottom:30px;
	}
	.hamburger{
		display:none
	}
	#mobile-menu{
		display:none;
	}
	.text-pres, #actualites, .w3-#021733{
		padding-top: 135px;
		padding-bottom: 90px;
	}
	article{
		margin-top:50px;
	}
	.menu{
		padding:0;
		margin:0;
		text-align: right;
	}
}
@media screen and (min-width: 992px ){
	.w3-red:after{
		display:block;
		content:url("/wp-content/themes/ref/img/carret.svg");
		position: absolute;
		left: calc(100% + 45px);
	}
	.green-bloc{
		width: 100%;
		left:-150px;
	}
	.w3-border{
		padding-top: 0;
		padding-bottom: 0;
	}
}
@media screen and (min-width: 1150px ){
	.bloc-para{
		display:-webkit-flex;
		display:-moz-flex;
		display:flex;
	}
	.para{
		width:50%;
	}
}

@media screen and (min-width: 728px ) and (max-width: 1825px) {
	.img-accueil {
		margin-top: -13vw;
	}
}

@media screen and (min-width: 1826px ){
	.img-accueil {
		margin-top: -17vw;
	}
}

.wpml-ls-item {
    display: none;
}













