@charset "utf-8";
/* CSS Document */

* { margin: 0; padding: 0;}
a, a:active, a:focus{outline: none;}

body {font-family: 'Montserrat', sans-serif !important; color: #353535;}

#block-idterritoire2019-account-menu { display: none;}

.div-inner, .views-element-container, #block-calltoactiondelapagedaccueil .text-formatted, .region-content { width: 1290px; margin: 0 auto; position: relative;}

#header { height: 180px; background-color: #fff !important; background-image: none !important;}

#header .layout-container {max-width: 90%;}

.region-header { padding: 0;}
.region-header .field--name-body { position: absolute; text-align: center; z-index: 99; left: 0; top: 170px; width: 100%;}
.site-branding__logo { margin: 0;}
.region-primary-menu { position: relative; z-index: 99;}
.region-primary-menu .block-menu .menu { padding: 0;}

.region-header { width: 420px; float: left; padding-bottom: 20px;}
.site-branding__logo img { width: 400px; margin: 40px 0 0 40px;}
.site-branding__logo:hover img { opacity: 0.7;}


/* MENU PRINCIPAL */

#toggle, .toggle { display: none; }
.toggle{ z-index: 2;}

.region-primary-menu { float: right; width: 1050px; clear: none;}
.menu {list-style: none; margin: 100px 0 0 70px !important; height: 40px;}
.menu li { float: left; margin-left: 20px;}
.menu li a, .menu li .nolink { text-decoration: none; color: #333; font-size: 15px; display: block; font-weight: 500; text-transform:uppercase; position: relative; bottom: 0; letter-spacing: 1px; padding: 10px 15px !important; border: 1px solid #fff; border-radius: 0 !important; font-family: 'Montserrat', sans-serif !important; margin-top: 0 !important;}
.menu li .is-active { cursor: default; border-width: 0; border-bottom-width: 1px;}
.menu li a:hover, .menu li .nolink:hover {border-color: #3eb049; cursor: pointer;}
.menu li a:hover, ul.menu a.is-active, .menu li .nolink:hover {color: #3eb049;}
.region-primary-menu .menu-item, body:not(:target) .region-primary-menu .menu-item { margin: 0 15px 0 0; padding: 0;}

.region-primary-menu .menu a {
  padding: 10px 15px !important;
  float: none;
}

.region-primary-menu .menu ul {
  background-color: white;
  white-space: nowrap;
  width: auto !important;
}

.sf-menu > li {margin-right: 20px !important;}
.sf-menu li.menuparent:after {position: absolute; content: "+"; color: #3eb049; font-size: 20px; right:10px; top: 9px;}
.sf-menu li.menuparent a, .sf-menu li.menuparent .nolink {padding-right: 30px !important;}





#block-idterritoire2019-page-title { height: 340px; position: relative; text-align: center; border-top: 1px solid #E4E4E4; border-bottom: 1px solid #E4E4E4; overflow: hidden;}
.expand { padding-top: 200px;}

.highlighted { height: 340px; position: relative; text-align: center; border-top: 1px solid #E4E4E4; border-bottom: 1px solid #E4E4E4; overflow: hidden; margin-bottom: 60px;}
#bandeau h1, .highlighted h1, .region-header .field--name-body h1 { text-align: center; font-weight: bold; margin: 0;}
#bandeau p { color: #fff; margin: 0; padding: 0;}
#bandeau p, .highlighted p, .region-header .field--name-body p { font-size: 20px; font-weight: 500; text-transform: uppercase; letter-spacing: 1px; text-align: center;}
#bandeau-dessin-gauche, #bandeau-dessin-droit, #bandeau-dessin-accueil { position: absolute;}
#bandeau-dessin-gauche { left: 0; bottom: 0;}
#bandeau-dessin-droit { right: 0; bottom: 0;}

#contenu { padding: 80px 0; overflow: hidden;}
.layout-main { margin-top: 0;}

#main-wrapper { max-width: 100%;}
#block-idterritoire2019-content { width: 1290px; margin: 0 auto;}
.section { padding: 0 !important;}


.col { width: 50%; float: left; margin-bottom: 60px;}
.col-inner { padding: 0 70px;}

p { font-size: 20px; color: #515151; padding-bottom: 30px; line-height: 1.4; font-family: 'Montserrat', sans-serif !important; margin: 0;}
p.vert { color: #3eb049;}
p a { color: #3eb049; text-decoration: none;}
p a:hover { color: #fff; background-color: #3eb049;}

#contenu ul, .text-formatted ul { font-size: 20px; color: #515151; padding-bottom: 30px; line-height: 1.4; padding-left: 20px; margin: 0;}
#contenu ul > li { margin-bottom: 15px;}

ol { padding-left: 30px; counter-reset: item; list-style-type: none; position: relative; z-index: 1; margin-bottom: 30px; font-size: 20px; line-height: 1.4;}
ol > li { display: block; position: relative; margin-bottom: 15px; padding-left: 70px;}
ol > li:before { content: counter(item) "  "; counter-increment: item; margin-right: 10px; position: absolute; left: 0; top:0; text-align: center; width: 45px; height: 40px; color: #3eb049; font-weight: bold; font-size: 25px; border-radius: 25px; padding-top: 5px; border: 1px solid #3eb049;}

h1 { font-size: 50px; color: #3eb049; text-transform: uppercase; letter-spacing: 2px; padding: 100px 0 20px 0; font-family: 'Montserrat', sans-serif !important;}
h2 { display: inline-block; text-align: center; width: 100%; position: relative; margin-bottom: 50px !important;}
h2:after { content: ""; position: absolute; top: 50%; left: 0; z-index: 0; border-bottom: 1px solid #3eb049; width: 100%;}
h2 span {font-size: 30px; display: inline-block; padding: 0 40px; background-color: #fff; position: relative; z-index: 1; font-weight: 500; text-transform: uppercase; letter-spacing: 5px; color: #3eb049;}
h3 { font-size: 28px; font-weight: 500; letter-spacing: 2px; text-transform: uppercase; color: #000; margin-bottom: 10px;}
.node--type-projet .field--name-field-secteur, h4 { font-size: 16px; font-weight: bold; color: #3eb049; padding-left: 30px; position: relative; letter-spacing: 1px; text-transform: uppercase; margin-bottom: 20px; margin-top:0;}
.node--type-projet .field--name-field-secteur:before, h4:before { width: 15px; height: 14px; content: ""; position:absolute; background:url(../images/fleche1.png) no-repeat; top: 3px; left: 0;}

.site-footer { background:url(../images/bg-footer.jpg) top center no-repeat #333333 !important; overflow: hidden; padding: 100px 0 200px 0; font-weight: 200; font-family: 'Montserrat', sans-serif !important; color: #353535;}
.site-footer__top .region { width: 32%;}
.site-footer .menu {margin: 0 !important; height: auto; width: 300px;}
.site-footer .menu li { margin: 0 20px 0 0; float: none;}
.site-footer .menu li a { text-decoration: none; font-size: 12px; text-transform: uppercase; padding: 4px 8px; display: inline-block; margin-bottom: 5px; letter-spacing: 2px; border: 1px solid #666; color: #ccc; font-weight: 200;}
.site-footer .menu .menu-item--expanded {list-style-type: none; list-style-image: none;}
.site-footer__top .content li a { text-indent: 0;}
.site-footer .menu li a:hover { color: #3eb049; border: 1px solid #3eb049;}


.site-footer #block-idterritoire2019-mailchimp-inscription {border: 0; margin: 0; padding: 0 20px 0 0;}
.site-footer #block-idterritoire2019-mailchimp-inscription h2 {text-align: left; font-weight: bold; margin-bottom: 10px !important;}
.site-footer #block-idterritoire2019-mailchimp-inscription h2:after {display: none;}
.site-footer #block-idterritoire2019-mailchimp-inscription #edit-mergevars-email {width: 100%;}
.site-footer #block-idterritoire2019-mailchimp-inscription .button {background-color: #3eb049; color: #fff; background-image: none; border: 0; font-weight: bold; font-size: 20px;}


#block-adresse {margin-left: 10%; border:0; padding: 0; margin: 0;}
#block-adresse p { font-size: 18px; letter-spacing: 1px; line-height: 30px; color: #fff; margin: 0;}

#block-signature { position: relative; border:0; padding: 0; margin: 0;}
#block-signature p:first-child { margin-bottom: 100px;}
#block-signature p { font-size: 12px; letter-spacing: 1px; line-height: 18px; text-align: right; color: #fff;}
#block-signature a:first-child { width: 40px; height: 40px; border-radius: 25px; border: 1px solid #fff; position: absolute; display: block; background:url(../images/linkedin.png) center center no-repeat; top: 0; right: 0; opacity: 0.7; text-indent: 100%;
white-space: nowrap;
overflow: hidden;}
#block-signature a:first-child:hover { opacity: 1; border-color: #3eb049; background-color: #3eb049;}

#retour-page { position: fixed; z-index: 999; bottom: 60px; left: 0;}
#retour-page a { background-color: #282828; color: #fff; font-size: 20px; letter-spacing: 4px; text-transform: uppercase; padding: 20px 30px 20px 100px; text-decoration: none; position: relative; box-shadow: -20px 6px 0 rgba(0,0,0,0.3); border-bottom: 0px;}
#retour-page a:before { content: ""; background: url(../images/fleche-retour.png) center center no-repeat; width: 38px; height: 26px; position: absolute; left: 30px; top: 50%; margin-top: -13px;}
#retour-page a:hover { background-color: #000; color: #3eb049; padding-left: 120px;}

.clear { clear: both;}



/* ACCUEIL */

.path-frontpage .layout-main { margin-bottom: 0;}
.path-frontpage .region-content { width: 100%;}
.path-frontpage .highlighted { display: none;}

.path-frontpage #contenu { padding-bottom: 0;}
.path-frontpage #bandeau { background:url(../images/bandeaux/accueil.jpg) top center no-repeat; border-bottom: 0; position: relative;}
.path-frontpage #bandeau { height: 550px;}
.path-frontpage #bandeau h1, #section-accueil #bandeau #phrase-section { color: #fff; text-shadow: 0 0 15px rgba(0,0,0,0.6);}
.path-frontpage #bandeau h1 { padding: 120px 0 5px 0;}
.path-frontpage #bandeau p { font-size: 25px;}
#bandeau img { position: absolute; bottom: 0; left: 50%; margin-left: -476px;}

#block-calltoactiondelapagedaccueil, .section-expertise .featured-bottom { background:url(../images/accueil/bg-texte.png) top center no-repeat #3eb049; display: inline-block; text-align: center; width: 100%; padding: 90px 0;}
#block-calltoactiondelapagedaccueil p, .section-expertise .featured-bottom p { font-size: 30px; color: #fff; padding: 0 200px; margin-bottom: 0;}
#block-calltoactiondelapagedaccueil a, .section-expertise .featured-bottom a { color: #fff; font-size: 18px; display: inline-block; padding: 15px 25px; text-decoration: none; border: 1px solid #fff; border-radius: 20px; text-transform: uppercase; letter-spacing: 4px; margin-top: 40px;}
#block-calltoactiondelapagedaccueil a:hover, .section-expertise .featured-bottom a:hover { background-color:#333333; border-color: #333333;}


/* À PROPOS */

.section-a-propos .highlighted { background:url(../images/bandeaux/apropos.jpg) top center no-repeat; position:relative; z-index: 0;}
.section-a-propos .highlighted:before { content:""; width: 535px; height: 340px; position: absolute; left: 0; bottom: 0; background:url(../images/bandeaux/dessins/apropos1.png) bottom left no-repeat; z-index: 1;}
.section-a-propos .highlighted:after { content:""; width: 535px; height: 340px; position: absolute; right: 0; bottom: 0; background:url(../images/bandeaux/dessins/apropos2.png) bottom right no-repeat; z-index: 1;}
.section-a-propos #block-idterritoire2019-page-title { display: none;}
#section-apropos .accordion-image img {opacity: 1; margin-bottom: 40px;}

/* #section-apropos #contenu img { float: left; margin: 0 100px 50px 0;}
#section-apropos #contenu p { padding-top: 230px;} */

#partenaires { display: inline-block; text-align: center; list-style: none; padding-left: 0 !important;}
#partenaires li { width: 23%; display: inline-block;}
#partenaires li a { display: block; padding: 10px; opacity: 1; border: 0;}
#partenaires li a:hover { opacity: 0.5;}
#partenaires li img { max-height: 83px; max-width: 180px; vertical-align: middle; width: auto !important;}

.section-a-propos .ckeditor-accordion-container tr td:first-child { width: 30%;}

.colonne-gauche .ckeditor-accordion-container {margin-left: 0; margin-right: 0;}


/* PROJETS */

.section-projets .highlighted { background:url(../images/bandeaux/projets.jpg) top center no-repeat; position:relative; z-index: 0;}

.section-projets .highlighted:before { content:""; width: 535px; height: 340px; position: absolute; left: 0; bottom: 0; background:url(../images/bandeaux/dessins/projets1.png) bottom left no-repeat; z-index: 1;}
.section-projets .highlighted:after { content:""; width: 535px; height: 340px; position: absolute; right: 0; bottom: 0; background:url(../images/bandeaux/dessins/projets2.png) bottom right no-repeat; z-index: 1;}

.view-projets { margin-bottom: 40px; display: inline-block; text-align: center;}
.view-projets .views-row { width: 29%; margin: 0 2% 40px 2%; display: inline-block; vertical-align: top; border-radius: 20px; overflow: hidden; background-color: #333333; text-align: left;}
.view-projets .views-row a { display: block;}
.view-projets .views-row .views-field-field-image { height: 360px; overflow: hidden; position: relative; border-bottom: 7px solid #3eb049; background: #3eb049;}
.view-projets .views-row .views-field-field-image:before { content: ""; position: absolute; width: 100%; height: 100%; background:url(../images/projets/logo-projets.png) bottom center no-repeat; z-index: 1; bottom: 0; opacity: 0; background-size: 400px 112px;}
.view-projets .views-row .views-field-field-image img { width: 100%; opacity: 1;}
.view-projets .views-row a { border: 0;}
.view-projets .views-row .views-field-title a:first-child { display: none;}
.view-projets .views-row .views-field-title a { color: #fff; font-size: 19px; padding: 20px 20px 0 20px; margin-bottom: 4px; line-height: 22px;}
.view-projets .views-row .views-field-field-secteur { color: #3eb049; font-weight: bold; font-size: 12px; letter-spacing: 1px; text-transform: uppercase; padding: 0 20px 20px 20px; }

.view-projets .views-row:hover {background-color: #3eb049;}
.view-projets .views-row:hover .views-field-field-image { background: #333;}
.view-projets .views-row:hover .views-field-field-image img { opacity: 0.3;}
.view-projets .views-row:hover .views-field-title { color: #fff;}
.view-projets .views-row:hover .views-field-field-secteur { color: #000;}
.view-projets .views-row:hover .views-field-field-image:before { opacity: 1;}

.node--type-projet {}

#contenu-projet { overflow: hidden;}
#contenu-projet .col:first-child { width: 40%;}
#contenu-projet .col:last-child { width: 60%;}
#contenu-projet .col:first-child img { border-radius: 30px; overflow: hidden; width: 100%;}

.node--type-projet .field--name-field-secteur { padding-bottom: 100px;}
.node--type-projet .field--name-field-secteur:after { content: ""; position: absolute; width: 200px; height: 4px; background-color: #3eb049; top: 75px; left: 0;}

.node--type-projet .colonne-droite .field--label-above { padding: 20px 0 20px 60px; border-bottom: 1px solid #F3F3F3;}
.node--type-projet .colonne-droite .field--label-above-child { border: 0;}
.node--type-projet .colonne-droite .field--label-above .field__item p { padding-bottom: 0; font-size: 18px;}
.node--type-projet .colonne-droite .field--label-above .field__label {  color: #3eb049; letter-spacing: 2px; text-transform: uppercase; display: block; margin-bottom: 5px; font-size: 17px;}

.node--type-projet .colonne-droite .field--name-body { background:url(../images/icons/2.png) top 15px left no-repeat;}
.node--type-projet .colonne-droite .field--name-field-duree { background:url(../images/icons/3.png) top 15px left no-repeat;}
.node--type-projet .colonne-droite .field--name-field-clients-et-financeurs { background:url(../images/icons/4.png) top 15px left no-repeat;}
.node--type-projet .colonne-droite .field--name-field-partenaires-de-realisation { background:url(../images/icons/5.png) top 15px left no-repeat;}

article.node--type-projet > div.node__content { display: flex }
.node--type-projet .colonne-gauche { width: 40%;}
.node--type-projet .colonne-gauche .field--name-field-image { margin-right: 60px;}
.node--type-projet .colonne-gauche .field--name-field-image img { border-radius: 30px; overflow: hidden;}
.node--type-projet .colonne-droite { width: 60%; position: relative;}

article.node--type-page > div.node__content { display: flex }
.node--type-page .colonne-gauche { width: 46%; padding-right: 4%;}
.node--type-page .colonne-gauche .field--name-field-image { margin-right: 60px;}
.node--type-page .colonne-gauche .field--name-field-image img { border-radius: 30px; overflow: hidden;}
.node--type-page .colonne-droite { width: 46%; position: relative; padding-left: 4%;}

article.node--type-page-publications div.node__content { display: flex; flex-direction: row;}
.node--type-page-publications .colonne-gauche { width: 40%; padding-right: 4%;}
.node--type-page-publications .colonne-gauche .field--name-field-image {}
.node--type-page-publications .colonne-gauche .field--name-field-image img { overflow: hidden; margin-bottom: 0;}
.node--type-page-publications .colonne-droite { width: 40%; position: relative; padding-left: 4%;}

.node--type-projet .field--name-field-secteur {}

.node--type-projet .colonne-droite h1 {font-size: 28px; font-weight: 500; letter-spacing: 2px; text-transform: uppercase; color: #000; margin: 0 0 10px 0; padding: 0;}




/* OUTILS */


.section-boite-a-outils .highlighted { background:url(../images/bandeaux/haca.jpg) top center no-repeat; position:relative; z-index: 0;}
.section-boite-a-outils .highlighted:before { content:""; width: 535px; height: 340px; position: absolute; left: 0; bottom: 0; background:url(../images/bandeaux/dessins/apropos1.png) bottom left no-repeat; z-index: 1;}
.section-boite-a-outils .highlighted:after { content:""; width: 535px; height: 340px; position: absolute; right: 0; bottom: 0; background:url(../images/bandeaux/dessins/apropos2.png) bottom right no-repeat; z-index: 1;}

.section-boite-a-outils #protected-pages-enter-password legend {display: none;}
.section-boite-a-outils #protected-pages-enter-password fieldset {border: 0; margin: 0;}
.section-boite-a-outils #protected-pages-enter-password .button {background-image: none; background-color: #3eb049; color: #fff; font-weight: bold; font-size: 20px; margin: 0; border: 0;}

.path-boite-a-outils .region-content, .path-boite-a-outils #block-idterritoire2019-content, .path-boite-a-outils .views-element-container {width: 100% !important; padding: 0 !important; margin: 0 !important;}
.path-boite-a-outils .block .content {margin-top: 0 !important;}
.path-boite-a-outils .highlighted {margin-bottom: 0 !important;}
.path-boite-a-outils .layout-main {margin-bottom: 0 !important;}


#section-outils fieldset legend {
  font-size: 28px;
  font-weight: 500;
  letter-spacing: 2px;
  text-transform: uppercase;
  color: #000;
  margin-bottom: 10px;
}

#section-outils fieldset label {
  font-size: 20px;
  color: #515151;
  padding-bottom: 30px;
  line-height: 1.4;
  font-family: 'Montserrat', sans-serif !important;
  margin: 0;
}

#section-outils {display: flex; flex-direction: row; flex-wrap: wrap;}
#section-outils-tri {width: 20%; background-color: #EBEBEB;}
#section-outils-tri-inner {padding: 60px;}

#section-outils-liste {width: 80%;}
#section-outils-liste-inner {padding: 60px;}
#liste-outils {display: flex; flex-direction: row; flex-wrap: wrap;}

.bloc-outil {width: 31%; margin: 1%; border-radius: 30px; overflow: hidden; display: block; aspect-ratio: 1 / 1; position: relative;}
.bloc-outil:before {width: 100%; height: 100%; position: absolute; background-image: linear-gradient(rgba(0,0,0,0), rgba(0,0,0,0.1), rgba(0,0,0,1)); content: "";}
.outil-element-format {position: absolute; display: inline-block; top: 20px; left: 20px; margin-right: 20px; padding: 10px; background-color: #fff; color: #000; border-radius: 10px; z-index: 2;}
.outil-element-photo, .outil-element-photo .field--type-image {width: 100%; height: 100%;}
.outil-element-photo img {object-fit: cover; width: 100%; height: 100%; display: block;}
.outil-element-titre { position: absolute; bottom: 0; padding: 40px; color: #fff; font-weight: bold; font-size: 22px; width: calc(100% - 80px); z-index: 1;}
.outil-element-titre:before {width: 100%; height: 100%; content: ""; position: absolute; top: 0; left:0; transform: translateY(-100%); background: url("../images/projets/logo-projets.png") no-repeat; background-size: cover; opacity: 0;}
.outil-element-titre span {color: #3eb049; display: block; font-size: 16px; font-weight: normal;}

.bloc-outil:hover .outil-element-titre {background-color: #3eb049;}
.bloc-outil:hover .outil-element-titre:before {opacity: 1;}
.bloc-outil:hover .outil-element-titre span { color: #fff;}
.bloc-outil:hover .outil-element-format {background-color: #000; color: #fff;}





/* SERVICES */

.section-services #block-idterritoire2019-page-title { display: none;}

.section-services .highlighted { background:url(../images/bandeaux/services.jpg) top center no-repeat; position:relative; z-index: 0;}

.section-services .highlighted:before { content:""; width: 535px; height: 340px; position: absolute; left: 0; bottom: 0; background:url(../images/bandeaux/dessins/services1.png) bottom left no-repeat; z-index: 1;}
.section-services .highlighted:after { content:""; width: 535px; height: 340px; position: absolute; right: 0; bottom: 0; background:url(../images/bandeaux/dessins/services2.png) bottom right no-repeat; z-index: 1;}

.ckeditor-accordion-container { margin: 0 0 80px 0;}
#accordion p.note { font-size: 16px;}
.ckeditor-accordion-toggler { font-size: 23px; font-weight: normal; letter-spacing: 1px; padding: 20px 20px 20px 0; margin-bottom: 0; border-top: 1px solid #F3F3F3; border-bottom: 0 !important; background-color: transparent !important; color: #000 !important;}
.ckeditor-accordion-container > dl dt > .ckeditor-accordion-toggle::before, .ckeditor-accordion-container > dl dt > .ckeditor-accordion-toggle::after { background: #3eb049 !important;}
.ckeditor-accordion-container > dl { border: 0 !important;}
.ckeditor-accordion-container tr { background: none !important; background-color: transparent !important;}
.ckeditor-accordion-container table { font-family: 'Montserrat', sans-serif !important; font-size: 18px; color: #666;}
.ckeditor-accordion-container td { padding: 0 30px;}
.ckeditor-accordion-container p { padding: 0 50px;}
.ckeditor-accordion-container p.vert { padding: 0; margin-bottom: 0;}
.ckeditor-accordion-container > dl dd { overflow: hidden;}

.section-services .ckeditor-accordion-container #service-un { background:url(../images/services/1.png) 60px top no-repeat;}
.section-services .ckeditor-accordion-container #service-deux { background:url(../images/services/2.png) 60px top no-repeat;}
.section-services .ckeditor-accordion-container #service-trois { background:url(../images/services/3.png) 60px top no-repeat;}


.accordion-toggle:hover {cursor: pointer; color: #3eb049;}
.accordion-content {display: none; padding: 20px; overflow: hidden;}
.accordion-content ol, .accordion-content p, #contenu .accordion-content ul { font-size: 18px;}
.accordion-content ul { margin-top: 10px;}
.accordion-content.default {display: block;}
.accordion-image { width: 35%; float: left;}
.accordion-image img { width: 100%; opacity: 0.6;}
.accordion-droit { width: 55%; float: right;}



/* ÉQUIPE */

.section-equipe #block-idterritoire2019-page-title {display: none;}
.section-equipe .highlighted { background:url(../images/bandeaux/equipe.jpg) top center no-repeat; position:relative; z-index: 0;}

.section-equipe .highlighted:before { content:""; width: 535px; height: 340px; position: absolute; left: 0; bottom: 0; background:url(../images/bandeaux/dessins/equipe1.png) bottom left no-repeat; z-index: 1;}
.section-equipe .highlighted:after { content:""; width: 535px; height: 340px; position: absolute; right: 0; bottom: 0; background:url(../images/bandeaux/dessins/equipe2.png) bottom right no-repeat; z-index: 1;}

/* TODO-EQUIPE .view-equipe { overflow: hidden; display: inline-block; text-align: center;}*/
.view-equipe .views-row { width: 29%; margin: 40px 2%; display: inline-block; position: relative;}
.view-equipe .views-field-field-image { padding: 0 20px; position: relative; z-index: 1;}
.view-equipe .views-field-field-image .field-content {overflow: hidden; border-radius: 50%;}
.view-equipe .views-field-field-image img { width: 100%;}
.equipe-element-contenu {}
.view-equipe .views-field-field-image:before, .view-equipe .views-field-field-image:after { content: ""; position: absolute; background:url(../images/equipe/ruban-arriere.png) no-repeat; width: 213px; height: 72px; z-index: -1; bottom: 89px;}
.view-equipe .views-field-field-image:before { left: 5%;}
.view-equipe .views-field-field-image:after { right: 5%;}
.view-equipe .views-row .views-field-title { z-index: 1;}
.view-equipe .views-row .views-field-title a { color: #fff; font-weight: 500; font-size: 24px; position: absolute; background-color: #333333; width: 90%; bottom: 0; left: 5%; padding: 10px 0 43px 0; text-align: center; z-index: 2; border: 0;}
.view-equipe .views-row .views-field-field-profession { color: #3eb049; font-size: 13px; text-transform: uppercase; letter-spacing: 2px; font-weight: 500; z-index: 99; position: absolute; bottom: 13px; width: 90%; margin-left: 5%; text-align: center;}

.view-equipe .views-row:hover .views-field-title a  { background-color: #3eb049;}
.view-equipe .views-row:hover .views-field-field-profession { color: #000;}

.node--type-membre .field--name-field-image { width: 40%;}
.node--type-membre .field--name-field-image img { border-radius: 30px; overflow: hidden; width: 100%;}
.node--type-membre .node__content { padding-left: 5%; width: 50%; float: right;}
.node--type-membre .node__content .field--name-title {font-size: 28px; font-weight: 500; letter-spacing: 2px; text-transform: uppercase; color: #000;}

.section-equipe #content h1 { margin: 0; padding: 0;}


/* DEVENIR MEMBRE */

.section-equipe .ckeditor-accordion-container {margin: 0 0 80px 0;}
.section-equipe .ckeditor-accordion-container > dl dt > a, .section-equipe .ckeditor-accordion-container > dl dt > a:not(.button) {padding: 10px 50px 10px 0;}
.section-equipe .ckeditor-accordion-container p {padding: 0;}
.section-equipe .ckeditor-accordion-container h4 {margin-top: 30px;}

#edit-actions-submit,
a.bouton {border: 0; color: #fff; background-image: none; background-color: #3eb049; font-size: 20px; font-weight: bold; padding: 20px 30px;}

.ckeditor-accordion-container > dl dt > a > .ckeditor-accordion-toggle {left: auto; right: 10px;}
.ckeditor-accordion-container > dl dt > a > .ckeditor-accordion-toggle::before, .ckeditor-accordion-container > dl dt > a > .ckeditor-accordion-toggle::after {background: #3eb049;}

.button {margin-left: 0 !important; margin-right: 0 !important;}
#formulaire {margin-top: 50px;}

/* galerie photo */

.gallery {gap: 20px;}
.gallery img {display: block; width: 100%; height: 100%; object-fit: cover; object-position: center center; border-radius: 20px;}

.gallery-trois {display: grid;
  grid-template-areas:
    'photo1 photo2'
    'photo3 photo2';}
.gallery-trois-1 {grid-area: photo1;}
.gallery-trois-2 {grid-area: photo2;}
.gallery-trois-3 {grid-area: photo3;}

.gallery > div {position: relative;}


/* INTERNATIONAL */

.section-international #block-idterritoire2019-page-title { display: none;}
.section-international .highlighted { background:url(../images/bandeaux/international.jpg) top center no-repeat; position:relative; z-index: 0;}

.section-international .highlighted:before { content:""; width: 535px; height: 340px; position: absolute; left: 0; bottom: 0; background:url(../images/bandeaux/dessins/services1.png) bottom left no-repeat; z-index: 1;}
.section-international .highlighted:after { content:""; width: 535px; height: 340px; position: absolute; right: 0; bottom: 0; background:url(../images/bandeaux/dessins/services2.png) bottom right no-repeat; z-index: 1;}


#inter-intro { display: flex; flex-direction: row; flex-wrap: wrap; align-items: center; margin-bottom: 40px;}
#inter-img, #inter-texte {width: 48%;}
#inter-img {padding-right: 2%;}
#inter-img img {width: 100%; height: auto; border-radius: 20px 20px 0 0; overflow: hidden; display: block;}
#inter-img-legende {background-color: #3eb049; color: #fff; text-align: center; padding: 10px 20px; border-radius: 0 0 20px 20px;}
#inter-texte {padding-left: 2%; font-size: 22px;}

#inter-actions { display: flex; flex-direction: row; flex-wrap: wrap; justify-content: center;}
.inter-action {width: calc(33% - 20px); margin: 10px; background-color: #333333; border-radius: 20px;}
.inter-action-inner {padding: 20px 30px;}
.inter-action-titre {font-size: 25px; border-bottom: 1px solid #3eb049; margin-bottom: 10px; padding-bottom: 10px; color: #fff;}
.inter-action p {font-size: 19px; color:#ABABAB;}
.inter-action p:last-child {padding-bottom: 0;}


.field--name-field-photos h3 {display: none;}
.field--name-field-photos .field__items {overflow: hidden; text-align: center; width: 100%; margin-bottom: 60px;}
.field--name-field-photos .field__item {background-color: #3eb049; margin: 5px;}
.field--name-field-photos .field__item a {display: block;}
.field--name-field-photos .field__item img {display: block; width: 150px; height: 150px; object-fit: cover; margin: 0;}
.field--name-field-photos .field__item:hover img {opacity: 0.5;}



/* PUBLICATIONS */

.section-publications #block-idterritoire2019-page-title {display: none;}
.section-publications .highlighted { background:url(../images/bandeaux/publications.jpg) top center no-repeat; position:relative; z-index: 0;}

.section-publications .highlighted:before { content:""; width: 535px; height: 340px; position: absolute; left: 0; bottom: 0; background:url(../images/bandeaux/dessins/equipe1.png) bottom left no-repeat; z-index: 1;}
.section-publications .highlighted:after { content:""; width: 535px; height: 340px; position: absolute; right: 0; bottom: 0; background:url(../images/bandeaux/dessins/equipe2.png) bottom right no-repeat; z-index: 1;}

.liste-fichiers {margin-bottom: 4vw; margin-bottom: 40px;}
.liste-fichiers-element { border-bottom: 1px solid rgba(0,0,0,0.2); text-decoration: none; color: #222; display: block; font-size: 20px; padding: 20px 80px 20px 0; position: relative;}
.liste-fichiers-element:after { position: absolute; content: ""; width: 18px; height: 4px; right: 18px; top: calc(50% + 10px); background-color: #000;}
.liste-fichiers-element:before { position: absolute; content:""; height: 0; bottom: 0; width: 100%; background-color: #3eb049;}
.liste-fichiers-element i { position: absolute; right: 20px; top: 50%; transform: translateY(-50%); color: #000;}
.liste-fichiers-element:hover {color: #3eb049 !important;}
.liste-fichiers-element:hover:before { height: 6px;}
.liste-fichiers-element:hover:after {background-color: #3eb049; height: 4px !important;}
.liste-fichiers-element:hover i {color: #3eb049;}

.liste-fichiers-2025 {margin-bottom: 40px;}
.liste-fichiers-2025-element {display: flex; border-radius: 20px; overflow: hidden; background-color: #F1F1F1; align-items: center; text-decoration: none; margin-bottom: 10px; border: 0;}
.liste-fichiers-2025-element:hover {background-color: #3eb049;}
.liste-fichiers-2025-element:hover .liste-fichiers-2025-contenu, .liste-fichiers-2025-element:hover .liste-fichiers-2025-contenu span {color: #fff;}
.liste-fichiers-2025-photo {width: 200px;}
.liste-fichiers-2025-photo img {width: 100%; height: auto; aspect-ratio: 1 / 1; display: block; margin-bottom: 0;}
.liste-fichiers-2025-contenu { padding-left: 20px; color: #000; font-weight: bold; font-size: 24px;}
.liste-fichiers-2025-contenu span { font-weight: normal; color: #3eb049; font-size: 16px;}

/* Empêche un glitch qui fait que les accordéons n'ont pas toujours la largeur complète de la page  */
.field--type-text-with-summary {
  width: 100%;
}

.colonne-droite > div > p:first-of-type {
  font-weight: bold;
}

.colonne-droite > div > p {
  color: #3eb049;
}

/* CONTACT */

.section-contact .highlighted { background:url(../images/bandeaux/contact.jpg) top center no-repeat; position:relative; z-index: 0;}

.section-contact .highlighted:before { content:""; width: 535px; height: 340px; position: absolute; left: 0; bottom: 0; background:url(../images/bandeaux/dessins/contact1.png) bottom left no-repeat; z-index: 1;}
.section-contact .highlighted:after { content:""; width: 535px; height: 340px; position: absolute; right: 0; bottom: 0; background:url(../images/bandeaux/dessins/contact2.png) bottom right no-repeat; z-index: 1;}

#rp {padding: 40px; background-color: #ECECEC; font-size: 16px;}
#rp span {font-weight: bold; font-size: 20px;}

.section-contact .col:first-child {width: 60%;}
.section-contact .col:last-child {width: 40%;}



/* SECTION EXPERTISE */

.section-expertise .highlighted { background:url(../images/bandeaux/expertise.jpg) top center no-repeat; position:relative; 
z-index: 0; margin-bottom: 0;}
.section-expertise .highlighted:before { content:""; width: 535px; height: 340px; position: absolute; left: 0; bottom: 0; 
background:url(../images/bandeaux/dessins/apropos1.png) bottom left no-repeat; z-index: 1;}
.section-expertise .highlighted:after { content:""; width: 535px; height: 340px; position: absolute; right: 0; bottom: 0; 
background:url(../images/bandeaux/dessins/apropos2.png) bottom right no-repeat; z-index: 1;}

.section-expertise #block-idterritoire2019-page-title { display: none; }

.section-expertise .ckeditor-accordion-container dd * {border: 0 !important;}
.section-expertise .ckeditor-accordion-container dt a {padding-left: 0 !important; padding-right: 40px !important;}
.section-expertise .ckeditor-accordion-container .table td {width: 50% !important; padding: 0 !important;}
.section-expertise .ckeditor-accordion-container .table td img {border-radius: 20px; overflow: hidden; display: block;}
.section-expertise .ckeditor-accordion-container .table td p {padding-left: 50px;}
.section-expertise .ckeditor-accordion-container .table td ul {padding-left: 80px;}

.section-expertise .featured-bottom .region {width: 100%; padding: 0; float: none;}

.section-expertise .region-content, .section-expertise .region-content #block-idterritoire2019-content {width: 100%; padding: 0 !important; margin: 0 !important;}

@media all and (min-width : 801px) {
.section-expertise #main-wrapper {background: linear-gradient(to right, #daf9dd 50%, #fff 50%);}
.section-expertise #main-wrapper .col:first-of-type h2 span {background-color: #daf9dd;}
.section-expertise #main-wrapper .col:first-of-type .ckeditor-accordion-toggler {border-top-color: #8ed995;}
}


/* TRANSITIONS */

a, .region-header img, .menu li a, #footer-menu ul a, p a, #footer-copy-social #linkedin, .view-projets .views-row, .view-projets .views-row .views-field-field-image img, .view-projets .views-row .views-field-title, #accueil-texte a, .view-projets .views-row .views-field-field-image:before, .view-projets .views-row .views-field-field-secteur, .view-projets .views-row .views-field-field-image, #retour-page a, #logo, .shrink, #nav, #logo-small, .equipe-element-contenu, .equipe-element-fonction, #accordion h3, #partenaires li a, #block-calltoactiondelapagedaccueil a, .section-expertise .featured-bottom a, .views-field-title a, .views-field-field-profession, .liste-fichiers-element:before, .liste-fichiers-element:after, .liste-fichiers-element i, .field--name-field-photos .field__item img, .outil-element-titre:before, .bloc-outil:hover .outil-element-format {
-webkit-transition: 0.3s;
-moz-transition: 0.3s;
-o-transition: 0.3s;
-ms-transition: 0.3s;
transition: 0.3s;}



.sf-accordion-toggle a {height: 40px; width: 100%; background: url("../images/menu-ferme.svg") center center no-repeat; background-size: 25px 25px; display: block;}
.sf-accordion-toggle span {display: none;}

.field--name-field-photos .field__item {
  display: inline-block;
}

.view-boite-a-outils .view-filters {
  width: 25%;
  float: left;
}

.view-boite-a-outils .view-content {
  width: 75%;
  float: right;
}

/* RESPONSIVE */


@media all and (max-width : 1800px) {
    .region-primary-menu { width: 850px;}
    .site-branding__logo img { width: 350px; margin-left: 0;}
    .region-header {width: 350px;}
    .menu {margin-left: 0 !important;}
	.menu li a, .menu li .nolink { font-size: 13px; letter-spacing: 0;}

    #section-outils-tri-inner, #section-outils-liste-inner, .outil-element-titre {padding: 20px;}
    .outil-element-titre {width: calc(100% - 40px);}
    #section-outils fieldset legend {font-size: 22px;}
    #section-outils fieldset label {font-size: 16px;}
    
    .section-expertise .ckeditor-accordion-container .table td {width: 100% !important; display: block !important;}
    .section-expertise .ckeditor-accordion-container .table td img {margin-bottom: 40px;}
    .section-expertise .ckeditor-accordion-container .table td p {padding-left: 0;}
    .section-expertise .ckeditor-accordion-container .table td ul {padding-left: 30px;}
    .section-expertise .ckeditor-accordion-container > dl dd {padding: 0;}
}


@media all and (max-width : 1450px) {
	.menu li a, .menu li .nolink { font-size: 12px; }
    .menu li:last-child {margin-right: 0;}
    .region-primary-menu { width: 700px; }
    .liste-fichiers-element { font-size: 17px;}
	.liste-fichiers-element:after { right: 18px;}

    .path-frontpage #bandeau {background-position: top left; height: 650px; background-size: cover;}
}

@media all and (max-width : 1290px) {
    #block-idterritoire2019-content {width: 96%; margin: 0 2%;}

	.region-content { width: 90%; padding: 0 5%;}
	.div-inner, .views-element-container, #block-calltoactiondelapagedaccueil .text-formatted, .path-frontpage .region-content { width: 100%; padding: 0;}


	#header { display: inline-block; width: 100%; text-align: center;}

	.region-header { width: 100%; float: none; border-right: 0; padding-bottom: 20px;}
	.site-branding__logo img { width: 300px; position: relative; margin: 20px 0 0 0;}
	.region-header .site-branding { float: none;}

	.region-primary-menu { float: none; width: 100%; display: inline-block;}
	.menu {margin: 0 !important; display: inline-block;}
	.menu li a, .menu li .nolink { letter-spacing: 0px;}
    .sf-menu li.menuparent:after {font-size: 16px; right:10px; top: 9px;}


	.highlighted:before { margin-left: -100px;}
	.highlighted:after { margin-right: -100px;}

	.view-projets .views-row { height: 500px;}
	.projets-element-titre { height: auto; margin-bottom: 5px;}

	#section-apropos #contenu img { width: 300px;}
	#section-apropos #contenu p { padding-top: 30px;}
	.ckeditor-accordion-container { margin: 0 0 60px 0;}
	.equipe-element-nom { font-size: 20px;}
	.equipe-element-fonction { font-size: 12px; letter-spacing: 1px;}
	.equipe-element-inner:before, .equipe-element-inner:after { bottom: 74px;}
	.col-inner { padding: 0 30px;}

    #contenu {width: 96%; padding-right: 2%; padding-left: 2%;}

    #inter-texte {font-size: 20px; margin-top: 20px; text-align: center;}
    .inter-action {width: calc(33% - 12px); margin: 6px;}
    .inter-action-inner {padding: 15px 20px;}
    .inter-action-titre {font-size: 22px;}
    .inter-action p {font-size: 18px;}


    #section-outils fieldset legend {font-size: 20px; letter-spacing: 0;}

    article.node--type-page-publications div.node__content { flex-direction: column;}
    .node--type-page-publications .colonne-gauche { width: 100%; padding-right: 0;}
.node--type-page-publications .colonne-droite { width: 100%; padding-left: 0;}

}

@media all and (max-width : 1000px) {

	.site-footer { padding: 40px 0 100px 0;}
	#footer-menu, #footer-adresse, #footer-copy-social { float: left;}
	#footer-menu { overflow: hidden; width: 30%}
	#footer-menu ul {float: none; width: 100%;}
	#footer-adresse { width: 50%; margin-left: 0;}
	#footer-copy-social { width: 20%;}
	.highlighted:before { margin-left: -200px;}
	.highlighted:after { margin-right: -200px;}
	#bandeau-dessin-accueil { width: 90%; margin: 0 5%; left: auto;}
	.view-projets { display: inline-block; text-align: center;}
	.projets-element-sous-titre { font-size: 14px;}
	.view-projets .views-row { width: 50%; height: auto; float: none; display: inline-block;}
	.view-equipe .views-row { width: 40%;}

	h3 { font-size: 24px; letter-spacing: 1px;}
	#contenu-projet h4 { padding-bottom: 50px;}
	#contenu-projet h4:after {top: 60px;}
	p, .content ol, .content ul { font-size: 17px;}

	.path-frontpage #bandeau img { left: 0; margin-left: 0; width: 100%;}
	.path-frontpage #bandeau h1 { padding: 80px 20px 0 20px;}

    #section-outils-tri {width: 180px;}
    #section-outils-liste {width: calc(100% - 180px);}
    .bloc-outil {width: 48%;}
    #section-outils h2 {margin: 0 0 20px 0;}
    .outil-element-format {left: 10px; top: 10px; margin-right: 10px;}
    .outil-element-titre {width: calc(100% - 20px); padding: 10px;}
    .bloc-outil {border-radius: 15px;}
    #section-outils fieldset legend {font-size: 18px;}
    #section-outils fieldset label {font-size: 14px;}
}

@media all and (max-width : 900px) {

	#header, .menu { height: auto;}
	.region-primary-menu .menu-item, body:not(:target) .region-primary-menu .menu-item { width: 30%;}

	.region-footer-first { width: 100% !important; float: none;}
	.region-footer-first .menu li { float: left;}
	.region-footer-first .menu { width: auto;}
	.region-footer-third, .region-footer-fourth { width: 45% !important;}

	.ckeditor-accordion-container td { display: block; width: 90%; padding: 0 5%; padding-bottom: 30px;}
	.ckeditor-accordion-container p { font-size: 15px !important;}
	.section-a-propos .ckeditor-accordion-container tr td:first-child { width: 50%;}
	.ckeditor-accordion-container table { font-size: 15px; margin: 0;}
	.ckeditor-accordion-container > dl dd { padding-bottom: 0;}

	.accordion-droit { width: 100%; margin-top: 350px;}

	article.node--type-projet > div.node__content { display: block; }

    article.node--type-page > div.node__content {display: block;}
    .node--type-projet .colonne-gauche, .node--type-page .colonne-gauche { width: 100%;}
    .node--type-projet .colonne-gauche .field--name-field-image, .node--type-page .colonne-gauche .field--name-field-image { margin-right: 0; float: none;}
    .node--type-projet .colonne-droite, .node--type-page .colonne-droite { width: 100%;}

    .section-contact .col:first-child {width: 100%; float: none;}
    .section-contact .col:last-child {width: 100%; float: none;}
}


@media all and (max-width : 800px) {

	.view-projets .views-row { width: 96%;}

	.highlighted:before { display: none;}
	.highlighted:after { display: none;}
	#block-calltoactiondelapagedaccueil p, .section-expertise .featured-bottom p { padding: 0 50px; font-size: 23px;}

	h1 { font-size: 35px; line-height: 1.1;}
	#phrase-section { font-size: 16px;}
	#section-apropos #contenu img { width: 100%; float: none;}
	.accordion-image { width: 60%; float: none; margin-bottom: 40px;}
	.accordion-droit { width: 100%; float: none;}

	.node--type-membre .node__content, .col { width: 100%; float: none;}
	.node--type-membre .field--name-field-image { float: none;}

	#partenaires li { width: 48%;}

    #inter-img, #inter-texte {width: 100%;}
    #inter-img {padding-right: 0;}
    #inter-texte {font-size: 19px; padding-left: 0;}
    .inter-action {width: calc(50% - 12px); margin: 6px;}
    .inter-action-titre {font-size: 22px;}
    .inter-action p {font-size: 16px;}
}

@media all and (max-width : 750px) {

	.view-equipe .views-row { width: 80%;}
	#retour-page { bottom: 0; width: 100%;}
	#retour-page a {  width: 90%; display: block; padding: 20px 5%; text-align: center; font-size:  16px;}

    .bloc-outil {width: 98%;}
    #section-outils h2 {text-align: left; margin-bottom: 10px !important;}
    #section-outils h2 span { padding: 0; font-size: 24px; letter-spacing: 0;}
    #section-outils-tri-inner, #section-outils-liste-inner {padding: 10px;}
}

@media all and (max-width : 600px) {

	#partenaires li { width: 98%;}
	#block-signature p:first-child  { margin-bottom: 20px;}
	#block-signature a:first-child { position: relative;}
	.region-footer-third, .region-footer-fourth { width: 90% !important;}
	#block-signature p { text-align: left;}
	ol { padding-left: 0; list-style: decimal;}
	ol > li { padding-left: 0;}
	ol > li::before { display: none;}
	.region-primary-menu .menu-item, body:not(:target) .region-primary-menu .menu-item { width: 100%;}

	.region-header .field--name-body { top: 400px;}

    .inter-action {width: 100%; margin: 6px 0;}


}

@media all and (max-width : 600px) {
  h1 {
    padding-top: 0
  }

	.region-header .field--name-body { top: 200px;}
	.region-primary-menu .block-menu .menu { position: absolute; width: 100%; background-color: #fff; left: 0;}
	.region-primary-menu .block-menu .menu a { text-align: center;}

    .path-frontpage #bandeau {background-position: top left 10%; height: 550px;}
    .path-frontpage #bandeau h1 {padding-top: 30px; font-size: 30px; line-height: 1; margin-bottom: 20px;}
    .path-frontpage #bandeau p {font-size: 20px;}
}

/* Était dans Bartik, n'est plus là! */
@media (min-width: 560px) {
  .node .field--type-image {
    float: left;
    margin: 0 1em 0 0;
  }
}

/* Était dans Drupal 10, retiré de Drupal 11
   Sans ça, il y a des cadres sur la page /devenir-membre autour des champs */
.fieldgroup {
  padding: 0;
  border-width: 0;
}


/** Texte cute au début de la boîte à outils. Généré par AI */
#section-outils header, .section-expertise  header:has(> .bloc-centre) {
  width: 100%;
  margin-bottom: 3vw;
  display: flex;
  justify-content: center;
  align-items: center;
  box-sizing: border-box;
}
.bloc-centre {
  width: 100%;
  max-width: 700px;
  padding: 50px;
  background-color: #fff;
  box-shadow: 0 0 50px rgba(0, 0, 0, 0.2);
    transform: translateY(-20%);
  text-align: center;
  box-sizing: border-box;
}
.bloc-centre p {
  margin: 0;
  color: #515151;
  font-size: 20px;
  line-height: 1.5;
}
.bloc-centre p:last-child {
  padding: 0;
}
@media all and (max-width : 600px) {
  #section-outils header, .section-expertise header:has(> .bloc-centre) {
    min-height: auto;
    padding: 40px 20px;
  }

  .bloc-centre {
    padding: 35px 25px;
    border-radius: 18px;
  }

  .bloc-centre p {
    font-size: 18px;
    line-height: 1.45;
  }

  .highlighted  {
    height: auto;
    min-height: 340px;
    overflow: visible;
  }
}
