/* @import url('https://fonts.googleapis.com/css2?family=Source+Sans+Pro:wght@400;700&display=swap'); */

.visually-hidden-focusable {
  position: absolute !important;
  overflow: hidden;
  clip: rect(1px, 1px, 1px, 1px);
  width: 1px;
  height: 1px;
  word-wrap: normal;
}
html {
  font-size: 16px;
  max-width: 100%;
  overflow-x: hidden;
}
body {
  font-size: 16px;
  font-family: 'Source Sans Pro', sans-serif;
  max-width: 100%;
  overflow-x: hidden;
  /* background: url("../../creas-page-M/jpg/Minitl-accueil-attente-06.jpg") center top no-repeat; */
}
body.header__fixed .header {
  position: fixed;
  width: 100%;
  top: 0;
  background: #fff;
  z-index: 10;
  box-shadow: 0 0px 6px rgb(0 0 0 / 30%);
  padding: 1rem;
}
body.header__fixed .header .header__nav {
  top: -10px;
}
.visually-hidden-focusable {
  display: none;
}
p {
  margin-bottom: 0;
}
a {
  color: #eb1f27;
  font-weight: 400;
  text-decoration: none;
  position: relative;
}
h1 {
  font-size: 4rem;
  line-height: 1.3;
  font-weight: 300;
}
h2 {
  font-size: 2.375rem;
  line-height: 1.8;
  font-style: normal;
  font-weight: 700;
  margin: 0;
}
h3 {
  font-size: 1.3125rem;
  font-style: normal;
  font-weight: 700;
  line-height: 1.3;
  text-transform: uppercase;
  margin: 0;
}
h4 {
  font-size: 1.25rem;
  font-weight: 300;
}
ul {
  margin: 0;
}
#block-minitl-local-tasks ul {
  display: block;
  width: 100%;
  text-align: center;
  list-style: none;
}
#block-minitl-local-tasks ul li {
  display: inline-block;
}
#block-minitl-local-tasks ul li a {
  font-size: 1rem;
  color: #000;
  padding: 0.5rem 1.25rem;
  display: inline-block;
  transition: all .1s;
  border-bottom: 1px solid transparent;
}
#block-minitl-local-tasks ul li a:hover {
  border-bottom: 1px solid #000;
  text-decoration: none;
}
.w1200 {
  max-width: 1200px;
  margin: 0 auto;
}
.w1300 {
  width: 100%;
  max-width: 1330px;
  margin: 0 auto;
  padding: 0 15px;
}
.w1400 {
  width: 100%;
  max-width: 1430px;
  margin: 0 auto;
  padding: 0 15px;
}
.dib {
  display: inline-block;
}
.dib--vam {
  display: inline-block;
  vertical-align: middle;
}
.dib--vat {
  display: inline-block;
  vertical-align: top;
}
.fadeIn {
  transition: all .3s;
}
.parallax {
  background: url('../img/parallax-bg.jpg') center no-repeat;
  background-attachment: fixed;
  background-size: cover;
}

.header {
  position: relative;
  border-top: 7px solid #eb1f27;
  padding-top: 3.625rem;
  transition: all .2s;
}
.header .w1400 {
  position: relative;
}
.header .header__logo img {
  width: 176px;
}
.maintenance-page {
  text-align: center;
}
.maintenance-page header img {
  height: 200px;
  margin: 50px auto;
}
body.header__fixed .header .header__logo img {
  width: 169px;
}
.header .header__slogan {
  max-width: calc(100% - 278px);
  margin-left: 98px;
  font-size: 3.75rem;
  line-height: 1;
  color: #eb1f27;
  font-weight: 400;
  margin-top: 18px;
}
.header .header__nav {
  position: absolute;
  right: 105px;
  top: -52px;
}
.header .header__nav__ul{
  list-style: none;
  margin: 0;
  padding: 0;
}
.header .header__nav li a {
  font-size: 1rem;
  font-weight: bold;
  color: #eb1f27;
  text-transform: uppercase;
  transition: all .1s;
}
.header .header__nav li a:hover {
  color: #000;
  text-decoration: none;
}
.header .header__nav li a:before {
  content: '/';
  display: inline-block;
  vertical-align: middle;
  margin: -6px 5px 0 0;
}

.description {
  font-size: 1.5rem;
  line-height: 2.25rem;
  margin-bottom: 5rem;
}
.description .w1400 {
  padding-left: 294px;
}
.description__intro a {
  color: #eb1f27;
  text-underline-offset: 3px;
}
.description .description__intro {
  width: calc(100% - 405px);
  border-left: 1px solid #000;
  padding: 0.6875rem 1.375rem;
  min-height: 202px;
}
.description .description__list {
  border-left: 1px solid #000;
  list-style: none;
  text-transform: uppercase;
  max-width: 400px;
  padding: 0.6875rem 1.125rem;
  min-height: 202px;
}
.description .description__list li:not(:last-child) {
  margin-bottom: 2.25rem;
}

.section__title {
  font-size: 2.25rem;
  line-height: 1;
  font-weight: normal;
  text-transform: uppercase;
  color: #fff;
  background: #eb1f27;
  padding: 1.675rem 2rem;
  width: 260px;
  height: 180px;
  position: absolute;
  top: 0;
}
.section__title--right {
  right: 0;
  text-align: right;
  margin-right: -1.125rem;
}
.section__title--left {
  left: 0;
  text-align: left;
  margin-left: -1.125rem;
}

.clients {
  position: relative;
  margin-bottom: 5rem;
  padding-bottom: 7.5rem;
}
.clients .parallax {
  position: absolute;
  width: calc(50% + 700px);
  height: calc(100% - 8.75rem);
  right: 0;
  top: 8.75rem;
}
.clients .w1400 {
  position: relative;
  padding: 4.75rem 25px 0 0;
}
ul.clients__list {
  list-style: none;
  padding: 3.125rem 6.25rem;
  background: #fff;
  position: relative;
  z-index: 1;
}
ul.clients__list li a {
  display: block;
  height: 100%;
  overflow: hidden;
}
ul.clients__list li img {
  max-width: 100%;
  display: inline-block;
  filter: grayscale(100%);
}
ul.clients__list li a:before {
  content: '';
  width: 1px;
  height: 100%;
  margin-left: -5px;
  display: inline-block;
  vertical-align: middle;
}

.projects {
  position: relative;
  margin-bottom: 5rem;
  padding-top: 4.75rem;
}
.projects__project {
  margin-bottom: 1.875rem;
  cursor: pointer;
}
.projects__project__title {
  font-size: 1.5rem;
  line-height: 2rem;
  font-weight: normal;
  text-transform: uppercase;
  padding: 0.625rem 0 0;
}
.projects__project__title a {
  display: inline;
  color: #000;
  transition: all .1s;
  border-bottom: 1px solid transparent;
}
.projects__project__title a:hover,
.projects__project:hover .projects__project__title a {
  text-decoration: none;
  border-bottom: 1px solid #000;
}
.projects__project__visuel {
  background: #f5f5f5f5;
}

.contact {
  position: relative;
  padding-bottom: 8.5rem;
}
.contact__info {
  position: relative;
  height: 169px;
  width: 100%;
  max-width: 400px;
  padding: 20px 0 0 120px;
  display: inline-block;
  font-size: 1.125rem;
  background: #fff url("../img/contact-bg.jpg") left top no-repeat;
  z-index: 1;  
}
.contact__info a {
  color: #eb1f27;
  transition: all .1s;
}
.contact__info a:before {
  content: '/';
  display: inline-block;
  vertical-align: middle;
  margin: -6px 5px 0 0;
}
.contact__info a:hover {
  color: #000;
  text-decoration: none;
}
.contact .parallax {
  position: absolute;
  width: calc(50% + 700px);
  height: 100%;
  left: 0;
  top: 0;
}

.footer{
  padding: 1.25rem 0;
}
.footer__nav__ul {
  display: inline-block;
  list-style: none;
  font-size: 0.875rem;
}
.footer__nav__ul li.mention-modal{
  cursor: pointer;
}
.footer__nav__ul li:not(:last-child):after, 
.footer__nav__social li:not(:last-child):after {
  content: '';
  width: 1px;
  height: 0.875rem;
  background: #a9a9a9;
  display: inline-block;
  vertical-align: middle;
  margin: -2px 8px 0 12px;
}
.footer__nav__ul li a, 
.footer__nav__social a {
  color: #000;
  border-bottom: 1px solid transparent;
  transition: all .1s;
}
.footer__nav__ul li a:hover,
.footer__nav__social a:hover {
  text-decoration: none;
  border-bottom: 1px solid #000;
}

.footer__nav__social {
  text-transform: uppercase;
  font-weight: bold;
  float: right;
}

.goUp{
  position: fixed;
  right: 50px;
  bottom: 50px;
  background: #000;
  width: 54px;
  height: 54px;
  text-align: center;
  color: #fff;
  font-size: 2rem;
  line-height: 54px;
  transition: all .1s;
  border-radius: 0;
  transition-timing-function: cubic-bezier(0.1, 0.7, 1.0, 0.1);
  cursor: pointer;
  z-index: 1;
  display: none;
}
.goUp:hover{
  border-radius: 10px;
}

.loader {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #eb1f27;
  z-index: 15;
}
.loader svg {
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  margin: auto;
  height: 200px;
}
.loader path {
  fill: none;
  stroke: #fff;
  stroke-width: 3px;
  stroke-dashoffset: 0;
}

.mention{
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  margin: auto;
  width: 90%;
  max-height: 84vh;
  max-width: 1100px;
  padding: 3rem 1rem 3rem 3rem;
  z-index: 12;
  background: #fff;
  display: none;
}
.mention .btn--close {
  position: absolute;
  top: 10px;
  right: 10px;
  width: 30px;
  height: 30px;
  padding: 0;
  border: none;
  background: none;
}
.mention__container {
  height: 100%;
}
.mention h5,
.mention h6 {
  margin-bottom: 1rem;
  text-transform: uppercase;
  font-weight: bold;
}
.mention p {
  margin-bottom: 1rem;
}
.modal-fade {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgb(0 0 0 / 40%);
  z-index: 11;
  display: none;
}

.webform-submission-contact-form, .webform-submission-rgpd-form {
  margin: 3rem auto 6rem;
  max-width: 600px;
  padding: 0 15px;
}
.webform-submission-contact-form label, .webform-submission-rgpd-form label {
  display: block;
  margin: 20px 0 5px;
  font-size: 1.25rem;
  text-transform: uppercase;
}
.webform-submission-contact-form input,
.webform-submission-contact-form textarea,
.webform-submission-rgpd-form input,
.webform-submission-rgpd-form textarea {
  width: 100%;
  display: block;
  border: 1px solid #000;
  padding: 7px 12px;
}
.webform-submission-contact-form [type="submit"],
.webform-submission-rgpd-form [type="submit"] {
  width: auto;
  display: inline-block;
  background: #fff;
  text-transform: uppercase;
  font-size: 1.25rem;
  margin-top: 2rem;
  transition: all .1s;
}
.webform-submission-contact-form [type="submit"]:hover,
.webform-submission-rgpd-form [type="submit"]:hover {
  border: 1px solid #eb1f27;
  color: #eb1f27;
}
.webform-submission-contact-form .captcha,
.webform-submission-rgpd-form .captcha {
  margin-top: 2rem;
}
.webform-submission-contact-form .js-form-type-checkbox,
.webform-submission-rgpd-form .js-form-type-checkbox{
  display: flex;
}
.webform-submission-contact-form .js-form-type-checkbox [type="checkbox"], 
.webform-submission-rgpd-form .js-form-type-checkbox [type="checkbox"]{
  width: auto;
  margin-right: 15px;
}
.webform-submission-contact-form .js-form-type-checkbox label, 
.webform-submission-rgpd-form .js-form-type-checkbox label{
  text-transform: none;
  font-size: 0.9rem;
}

#user-login-form, 
#user-pass {
  max-width: 600px;
  margin: 40px auto 100px;
}
#user-login-form label {
  display: block;
  margin: 20px 0 5px;
  font-size: 1.25rem;
  text-transform: uppercase;
}
#user-login-form input {
  width: 100%;
  display: block;
  border: 1px solid #000;
  padding: 7px 12px;
}
#user-login-form [type="submit"], 
#user-pass [type="submit"] {
  width: auto;
  display: inline-block;
  background: #fff;
  text-transform: uppercase;
  font-size: 1.25rem;
  margin-top: 2rem;
  transition: all .1s;
}
#user-login-form [type="submit"]:hover, 
#user-pass [type="submit"]:hover {
  border: 1px solid #eb1f27;
  color: #eb1f27;
}
#user-login-form .description, 
#user-pass .description {
  font-size: 0.875rem;
  line-height: 1rem;
  margin-bottom: 0;
}

#sliding-popup{
  border-top: 1px solid #000;
  padding-top: 1rem;
}
.eu-cookie-compliance-content h2{
  font-weight: normal;
  font-size: 1rem;
  text-transform: uppercase;
}
.eu-cookie-compliance-content p{
  font-weight: normal;
  font-size: 0.875rem;
  display: block;
}
.eu-cookie-compliance-content .find-more-button {
  font-size: 0.875rem;
}
.eu-cookie-compliance-content .eu-cookie-compliance-buttons button {
  width: auto;
  display: inline-block;
  background: #fff;
  text-transform: uppercase;
  font-size: 0.875rem;
  transition: all .1s;
  font-weight: normal;
  border: 1px solid #000;
  border-radius: 0;
  line-height: 1rem;
  padding: 6px 15px;
}
.eu-cookie-compliance-content .eu-cookie-compliance-buttons button:hover {
  border: 1px solid #eb1f27;
  color: #eb1f27;
}
.captcha__description.description{
  font-size: .8rem;
  line-height: 1.3;
  margin-top: 10px
}
.acces__block {
  position: absolute;
  top: -55px;
  right: 0;
  display: flex;
  align-items: center;
  transition: all 0.6s;
}
#accessconfig button {
  appearance: none;
  background: #ffffff;
  border: 2px solid #ffffff;
  padding: 2px;
  font-weight: bold;
  background: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="30" height="25" viewBox="0 0 30 25" fill="none"><g clip-path="url(%23clip0_532_2)"><path d="M0.479959 0.950045C0.239959 1.22004 0.0899589 1.61004 0.209959 1.88004C0.359959 2.33004 27.21 23.51 28.44 24.17C28.92 24.44 29.16 24.41 29.52 24.02C30.21 23.36 29.82 22.82 27.03 20.63C25.68 19.58 24.6 18.65 24.6 18.59C24.6 18.53 25.14 17.84 25.77 17.06C26.43 16.28 27.3 14.96 27.75 14.09L28.53 12.53L27.6 10.7C26.31 8.12004 22.98 4.70004 20.64 3.56004C16.44 1.49004 11.79 1.79004 7.94996 4.37004L7.01996 4.97005L4.61996 3.08004C1.43996 0.560043 1.04996 0.380043 0.479959 0.950045ZM18.57 6.71004C19.38 7.22005 20.31 8.15005 20.85 9.02005C21.63 10.28 21.75 10.79 21.75 12.47C21.75 13.55 21.57 14.75 21.36 15.14L20.97 15.83L20.1 15.2C19.32 14.66 19.26 14.45 19.29 12.83C19.32 11.45 19.2 10.85 18.72 10.22C17.94 9.17004 16.86 8.42004 15.84 8.18004C15.03 8.00004 15 8.03004 15 9.29004C15 10.01 14.91 10.67 14.82 10.79C14.61 10.97 10.5 7.79004 10.5 7.43004C10.5 7.16004 12.15 6.20004 13.14 5.87004C14.58 5.42004 17.07 5.81005 18.57 6.71004Z" fill="%23D93934"/><path d="M3.29989 9.10993L2.63989 9.94993L3.50989 10.6099C3.95989 10.9999 7.55989 13.8199 11.4599 16.8799L18.5699 22.4299L19.6799 21.9499C20.2799 21.7099 20.7299 21.4399 20.6699 21.3799C20.5799 21.3199 8.21989 11.6299 4.31989 8.53993C4.07989 8.35993 3.74989 8.56993 3.29989 9.10993Z" fill="%23D93934"/><path d="M2.42986 14.3301C3.68986 16.8501 7.31986 20.5101 9.62986 21.5901C11.0399 22.2501 14.6399 23.1201 14.9399 22.8801C15.0299 22.7601 2.15986 12.6801 1.76986 12.5301C1.58986 12.4701 1.88986 13.2801 2.42986 14.3301Z" fill="%23D93934"/></g><defs><clipPath id="clip0_532_2"><rect width="30" height="24" fill="white" transform="translate(0 0.5)"/></clipPath></defs></svg>') #ffffff;
  background-size: contain !important;
  background-position: center !important;
  background-repeat: no-repeat !important;
  height: 30px;
  width: 25px;
  text-indent: -9999px;
}

.header__language{
	display: inline-block;
	vertical-align: middle;
}
.header__language {
	text-align: center;
	position: relative;
}
.header__language ul{
  display: flex;
}
.header__language ul a {
	font-family: "Source Sans Pro";
	font-size: 1rem;
  font-weight: 400;
	color: #D93934;
	text-transform: uppercase;
	padding: 0 .5rem;
	line-height: 1;
	display: inline-block;
	transition: all .3s;
}
.header__language ul li:nth-child(1){
  border-right: 1px solid #D93934;
}
.header__language a.is-active{
  font-weight: 700;
}
.header .header__language nav .nav-link::before{
  display: none;
}
.header .header__language nav .nav-link::after{
  display: none;
}
/*
8px = 0.5rem
9px = 0.5625rem
10px = 0.625rem
11px = 0.6875rem
12px = 0.75rem
13px = 0.8125rem
14px = 0.875rem
15px = 0.9375rem
16px = 1rem (base)
18px = 1.125rem
20px = 1.25rem
21px = 1.3125rem
22px = 1.375rem
24px = 1.5rem
26px = 1.625rem
28px = 1.75rem
30px = 1.875rem
32px = 2rem
34px = 2.125rem
36px = 2.25rem
38px = 2.375rem
40px = 2.5rem */


/*Page Simple*/
.pageSimple {
  position: relative;
  padding-bottom: 100px;
}
.pageSimple .w1200 {
  background-color: #fff;
  padding: 50px;
  position: relative;
}
.deco {
  width: 100%;
  height: 405px;
  background-image: url("../img/fond-page.png");
  background-repeat: no-repeat;
  background-size: cover;
  position: absolute;
  top: -100px;
  left: 0;
  margin: auto;
}
.pageSimple h4 {
  color: #eb1f27;
}
.pageSimple p.chapo {
  font-weight: 300;
  font-size: 2rem;
  line-height: 1.3;
  margin-bottom: 2rem;
}
.pageSimple p a::after {
  background-color: #000;
}
.pageSimple p a:hover {
  color: #000;
}
.pageSimple p a:hover::after {
  height: 3px;
}
.pageSimple p a.bouton:hover {
  color: #fff;
}
.pageSimple p a.bouton::after {
  background-color: #eb1f27;
  display: inline-block;
}
.pageSimple p a.bouton:hover::after {
  height: 5px;
}
/*END Page*/


.field--type-image img, 
.field--name-field-user-picture img {
  height: auto;
}
.realisations {
  max-width: 1200px;
  margin: 4rem auto;
  padding: 0 1rem;
}
.realisations h3 {
  margin-bottom: 1rem;
  text-align: center;
}
.realisations ul {
  margin: 0;
  padding: 0;
  list-style: none;
  display: flex;
  flex-wrap: wrap;
  align-content: center;
  gap: 40px 20px;
}
.realisations li {
  flex: 0 0 calc(33% - 11px);
  cursor: pointer;
}
.realisations li h4 {
  font-size: 1.125rem;
  margin: .675rem 0 0;
}
.realisations li p {
  font-size: 0.875rem;
  margin: 0;
}
.realisations li a::after {
  display: none;
}
.realisations .hover {
  position: relative;
}
.realisations .hover img {
  width: 100%;
  height: auto;
}

.imageText {
  display: flex;
  align-items: center;
  margin: 1.75rem 0;
  color: #000;
}
.imageText--reverse {
  flex-direction: row-reverse;
}
.imageText--vert_fonce {
  background-color: var(--vert, #eb1f27);
  color: #FFF;
}
.imageText--vert_clair {
  background-color: #FDF7F1;
}
.imageText > img {
  width: 50%;
  object-fit: cover;
}
.imageText__text {
  font-size: 1rem;
  font-style: normal;
  font-weight: 400;
  line-height: 150%;
  padding: 3rem;
  width: 50%;
}
.imageText__text * {
  color: inherit;
}
.imageText__text h3,
.imageText__text h4 {
  margin-bottom: .625rem;
}
.imageText--vert_clair h3,
.imageText--vert_clair h4 {
  color: var(--vert, #eb1f27);
}
blockquote {
  color: var(--vert, #eb1f27);
}
blockquote p {
  display: inline-block;
  vertical-align: middle;
  width: calc(100% - 120px);
  font-size: 1.3125rem;
  font-style: normal;
  font-weight: 300;
  line-height: 160%;
  margin: 0;
}
blockquote::before {
  content: '';
  display: inline-block;
  vertical-align: middle;
  margin-right: 20px;
  width: 100px;
  height: 100px;
  background-image: url('../img/pepicons-print_megaphone.svg');
  background-size: contain;
}