/*
Theme Name:         Signal Spam
Theme URI:             https://www.e-labo.biz/
Description:            Thème du site Signal Spam
Author:                   e-labo
Author URI:             https://www.e-labo.biz
Version:                  1.0
Requires at least :   5.0
Tested up to:          5.4
Require PHP:           7.0
Text Domain:          signal-spam
Domain Path:          /languages
License:                  GPL-3.0-or-later
License URI:            https://www.gnu.org/licenses/gpl-3.0.html
*/


/*********************************************************************
	GENERAL
*********************************************************************/

body, p, ul, ol, h1, h2, h3, h4, h5, form, input, textarea, select, table, pre, iframe { margin:0; padding:0; line-height: 1.3em;}
html, body { line-height: 1.3em; }
p, ul, table, td, th, form, input, select, option, div { line-height: 1.3em; font-size: inherit;	}
textarea, input, select, option { font-size: inherit; font-family: inherit; }
table, td, th { margin: 0; padding: 0; border: 0; border-spacing: 0; border-collapse: collapse; }
.clear { clear: both; min-height: 1px; }
.clear10 { clear: both; height: 10px; }
.clear20 { clear: both; height: 20px; }
img, iframe { border: 0; max-width: 100%; }
img { height: auto; }
.text-right { text-align: right; }
.text-left { text-align: left; }
.text-center { text-align: center; }
.right { float: right; }
.left { float: left; }
.no-border {  border: 0; }
.display-none { display: none; }
.display-block, div.display-block { display: block; }
sup { vertical-align: 3px; }
.small { font-size: 0.9em; }
.global-page { margin: 0 auto; }
html, body { -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }
a, input { -webkit-transition: all 0.2s; -moz-transition: all 0.2s; transition: all 0.2s; }
.relative { position: relative; }
.alignright { float: right; margin: 10px 0 20px 30px; }
.alignleft { float: left; margin: 10px 30px 20px 0; }
.aligncenter {margin: auto; }
.screen-reader-text { clip: rect(1px, 1px, 1px, 1px); position: absolute !important; height: 1px; width: 1px; overflow: hidden; }
input[type="text"], input[type="submit"], input[type="password"], input[type="email"], input[type="search"], input[type="tel"], textarea, select, option, button { -webkit-appearance: none; -moz-appearance: none; }

/*********************************************************************
	SIGNATURE
*********************************************************************/
/* elabo signature */
@font-face {
	font-weight: normal;
	font-style: normal;
	font-family: 'labo';
	src:url('font/elabo.eot');
	src:url('font/elabo.eot?#iefix') format('embedded-opentype'),
		url('font/elabo.woff') format('woff'),
		url('font/elabo.ttf') format('truetype'),
		url('font/elabo.svg#icomoon') format('svg');
}
.sign-icolabo:before {
	font-family: 'labo', serif !important;
	speak: none;
	font-style: normal;
	font-weight: normal;
	font-variant: normal;
	text-transform: none;
	font-size: 24px;
	line-height: 1;
    content: "\e900";
    vertical-align: middle;
}
a.sign-elabo:link, a.sign-elabo:visited, a.sign-elabo:hover, a.sign-elabo:active, a.sign-elabo:focus {
    text-decoration: none;
	display: inline-block;
	color: inherit;
	text-decoration: none;
	vertical-align: middle;
}
.sign-elabo em {
	display: none;
}

/*********************************************************************
	ICON
*********************************************************************/

@font-face {
  font-family: 'icomoon';
  src:  url('font/icomoon.eot?kn9ntt');
  src:  url('font/icomoon.eot?kn9ntt#iefix') format('embedded-opentype'),
    url('font/icomoon.ttf?kn9ntt') format('truetype'),
    url('font/icomoon.woff?kn9ntt') format('woff'),
    url('font/icomoon.svg?kn9ntt#icomoon') format('svg');
  font-weight: normal;
  font-style: normal;
}

[class^="icon-"], [class*=" icon-"] {
  /* use !important to prevent issues with browser extensions that change fonts */
  font-family: 'icomoon' !important;
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;

  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.icon-facebook:before {
  content: "\e91e";
}
.icon-mascot:before {
  content: "\e91d";
}
.icon-menu:before {
  content: "\e903";
}
.icon-close:before {
  content: "\e91b";
}
.icon-chat:before {
  content: "\e900";
}
.icon-checked:before {
  content: "\e901";
}
.icon-chrome .path1:before {
  content: "\e902";
  color: rgb(38, 166, 209);
}
.icon-chrome .path2:before {
  content: "\e904";
  margin-left: -1em;
  color: rgb(61, 179, 158);
}
.icon-chrome .path3:before {
  content: "\e905";
  margin-left: -1em;
  color: rgb(239, 199, 94);
}
.icon-chrome .path4:before {
  content: "\e908";
  margin-left: -1em;
  color: rgb(226, 87, 76);
}
.icon-cloud:before {
  content: "\e906";
}
.icon-dialogue:before {
  content: "\e907";
}
.icon-edge:before {
  content: "\e909";
  color: #26a6d1;
}
.icon-firefox .path1:before {
  content: "\e90a";
  color: rgb(35, 148, 188);
}
.icon-firefox .path2:before {
  content: "\e91c";
  margin-left: -1em;
  color: rgb(236, 136, 64);
}
.icon-footsteps:before {
  content: "\e90b";
}
.icon-chevron-right:before {
  content: "\e90c";
}
.icon-linkedin .path1:before {
  content: "\e90d";
  color: rgb(0, 122, 185);
}
.icon-linkedin .path2:before {
  content: "\e90e";
  margin-left: -1em;
  color: rgb(241, 242, 242);
}
.icon-megaphone:before {
  content: "\e90f";
}
.icon-OSX:before {
  content: "\e910";
}
.icon-outlook:before {
  content: "\e911";
}
.icon-police:before {
  content: "\e912";
}
.icon-presentation:before {
  content: "\e913";
}
.icon-rss .path1:before {
  content: "\e914";
  color: rgb(244, 180, 89);
}
.icon-rss .path2:before {
  content: "\e915";
  margin-left: -1em;
  color: rgb(255, 255, 255);
}
.icon-safari .path1:before {
  content: "\e916";
  color: rgb(38, 166, 209);
}
.icon-safari .path2:before {
  content: "\e917";
  margin-left: -1em;
  color: rgb(226, 87, 76);
}
.icon-safari .path3:before {
  content: "\e918";
  margin-left: -1em;
  color: rgb(228, 231, 231);
}
.icon-twitter .path1:before {
  content: "\e919";
  color: rgb(85, 172, 238);
}
.icon-twitter .path2:before {
  content: "\e91a";
  margin-left: -1em;
  color: rgb(241, 242, 242);
}



/*********************************************************************
	THEME
	    Open Sans 14px regular/bold
	    bleu #3f6191
	    rouge #ce044a
*********************************************************************/
.global-page {
	width: 1170px;
	box-sizing: border-box;
}
html, body {
    background: #eaeaea;
	font-size: 14px;
	font-family: 'Open Sans', sans-serif;
}
a:link, a:visited {
	color: #000000;
	text-decoration: underline;
}
a:hover, a:active, a:focus {
	color: #000000;
	text-decoration: none;
}
textarea, input.text, select, input[type="text"], input[type="email"], input[type="tel"], input[type="password"], input[type="search"] {
	border: 1px #e5e5e5 solid;
}
#content {
    background: #ffffff;    
}
.col-aside {
    display: flex;   
    align-items: flex-start; 
    padding-bottom: 40px;
}
.col-aside .main-col {
    flex-grow: 1;
}
.col-aside aside {
    width: 370px;
    box-sizing: border-box;
    margin-left: 30px;
    margin-top: 5.65em;
    flex-shrink: 0;    
}
.home h1 {
    text-transform: uppercase;
    font-size: 2.14rem;    
    font-weight: normal;
}
h1.arrow, h2.arrow {
    text-align: center;
    color: #ce044a;
    font-size: 2.57em;
    padding: 1em 0;
    font-weight: normal;
}
h1.arrow {
    padding-top: 0.7em;    
}
h1.arrow:before, h2.arrow:before {
    content: "";
    display: inline-block;
    height: 14px;
    width: 60px;
    background: url(img/bg-title.png) no-repeat;
}
h1.dotted, h2.dotted, h3.dotted {
    color: #25528b;
    font-size: 1.71rem;  
    border-bottom: 3px #a5a2a4 dotted;
    padding: 1.5em 0 0.5em 0;
    margin-bottom: 0.75em;  
}
h3.dotted, 
h2.dotted {
    font-weight: normal;
}
h3.dotted {
    padding-top: 0;    
}
h3 {
    font-size: 1.64rem;    
    color: #25528b;
}
.text a.btn,
a.btn {
    display: inline-block;
    border: 1px #ce044a solid;
    color: #ce044a;
    padding: 0.5em 1em;
    font-size: 2.14rem;
    line-height: 1em;
    text-decoration: none;    
    text-align: center;
}
a.btn:hover {
    color: #ffffff;    
    background: #ce044a;
}
a.btn.small {
    font-size: 1.86rem;
}
a.btn.flat {
    border-color: #ce044a;
    background: #ce044a;
    color: #ffffff;
}
a.btn.flat:hover {
    background: #ffffff;
    color: #ce044a;
}
a.btn.flat.white {
    background: #ffffff;
    color: #3f6191;
    border-color: #ffffff;
}
a.btn.flat.white:hover {
    background: #3f6191;
    color: #ffffff;
}
a.btn.flat.green {
    background: #81ae29;
    color: #ffffff;
    border-color: #81ae29;
}
a.btn.flat.green:hover {
    background: #ffffff;
    color: #81ae29;
}
a.btn.flat.grey {
    background: #565255;
    color: #ffffff;
    border-color: #565255;
}
a.btn.flat.grey:hover {
    background: #ffffff;
    color: #565255;
}

.text {
    padding: 1em 0;    
    color: #565255;
}
.text h2 {
    font-size: 1.29em;
    padding: 1em 0 0.5em 0;
    color: #565255;
}
.text h3 {
    font-size: 1.14em;
    padding: 1em 0 0.5em 0;
    color: #565255;
}
.text p, .text ul {
    padding: 0.8em 0;
}
.text li {
    list-style-type: none;
    padding-left: 13px;
    background: url(img/puce.png) no-repeat 0px 7px;
}
.text .btns {
    padding: 2em 0;
    text-align: center;
}
.text a {
    color: #1d61a0;    
}
.red {
    color: #ce044a;    
}
.text .cadre {
    margin: 1em 0;
    padding: 15px;
    background: #e6e6e6;    
}
.edit {
    position: fixed;
    bottom: 20px;
    left: 20px;
}
.edit a {
    display: block;
    padding: 15px 20px;
    border: 1px solid rgba(255, 100, 100, .2);
    border-radius: 3px;
    background: rgba(255, 100, 100, .3);
    text-decoration : none;
    color : #a4003a;
    font-weight : bold;
}
.single .text .visu img {
    display: block;
    width: 100%;    
    margin-bottom: 1em;
}

/*********************************************************************
	HEADER / FOOTER
*********************************************************************/

/* header */
#header {
    position: relative;
    background: #f2f2f2;
    color: #3071ab;
    font-size: 1.14em;
    z-index:50;
}
#header:before {
    content: "";
    position: absolute;
    display: block;
    width: 50%;
    right: 0%;
    background: #1d61a0;
    top: 0;  
    height: 90px;  
}
#header .global-page {
    position: relative;
    background: #f2f2f2;
}
#header a {
    color: #3071ab;
    text-decoration: none;
}
#header a:hover {
    color: #ce044a;    
}
#header li {
    list-style-type: none;
}
#header .logo img {
    margin-left: 60px;    
}
#header nav, #header nav .menu ul {
    display: flex;    
    height: 90px;
    line-height: 90px;
    align-items: center;
}
#header nav .lang {
}
#header nav .menu {
    flex-grow: 2;    
}
#header nav .menu li {
    flex-grow: 1;
}
#header nav li.mobile {
    display: none;    
}
#header nav .menu a {
    display: block;
    text-align: center;
}
#header nav .lang .wgcurrent a:after,
#header nav .menu div > ul > li.menu-item-has-children > a:after {
    content: "";
    width: 0;
    height: 0;
    vertical-align: middle;
    display: inline-block;
    margin: 0 0 0 5px;
    border-style: solid;
    position: static;
    top: auto;
    right: auto;
    border-width: 5px 4px 0 4px;
    border-color: #3071ab transparent transparent transparent;    
	-webkit-transform: rotate(0);
	-moz-transform: rotate(0);
	-ms-transform: rotate(0);
	-o-transform: rotate(0);
	transform: rotate(0); 
}
#header nav .country-selector:hover ul {
	display: none;
}
#header nav .lang ul,
#header nav .menu ul ul {
    display: none;
    position: absolute;
    background: #ffffff;    
    line-height: 1.3em;
    z-index: 10;
    height: auto;
    text-align: left;
    padding: 5px 0;
}
.wgcurrent .wglanguage-name,
#header nav .lang a,
#header nav .menu ul ul a {
    display: block;
    font-size: 1em;
    height: auto;
    line-height: 1.2em;
    padding: 10px 20px;
    text-align: left;
}
.wgcurrent .wglanguage-name {
	line-height: 90px;
	padding-bottom: 0;
	padding-top: 0;
}
#header nav .country-selector.weglot-inline ul {
	display: none;
}
#header nav .country-selector:hover ul,
#header .lang:hover ul,
#header nav .menu ul li:hover ul {
    display: block;
}

#header nav .menu .app li {
}
#header nav .menu .app a {
    box-sizing: border-box;
    height: 90px;
    padding-top: 27px;
    padding-left: 83px;
    line-height: 1.2em;
    color: #ffffff;
    position: relative;
    text-align: left;
    background: #1d61a0;
    border-right: 1px #ffffff solid;    
}
#header nav .menu .app a:hover {
    background: #ffffff;
    color: #1d61a0;
}
#header nav .menu .app a:before {
    content: "\e91d";
    font-family: 'icomoon'; 
    position: absolute;
    left: 20px;
    padding-top: 10px;
    font-size: 45px;
}
.wg-drop.country-selector {
    background: none;    
}
#header nav .lang .wgcurrent a {
    padding: 0 20px;
    width: 40px;
    text-transform: uppercase;
    font-size: 1.29rem;
    line-height: 90px;
    height: 90px;
    border-left: 1px #c9c7cd solid;    
    border-right: 1px #c9c7cd solid;    
}
.wg-drop.country-selector .wgcurrent {
    border: 0;    
}
#header .wg-drop.country-selector .wgcurrent:after {
    display: none;    
}
.wg-drop.country-selector ul {
    border: 0;
    right: 1px;
    left: 1px;
    width: auto;  
}

#header nav .lang ul {
    position: absolute;
    line-height: 1.2em;    
}
#header nav .lang li a {
    display: block;
    padding-left: 20px;   
}
#header .logo img {
    vertical-align: middle;    
    margin-right: 30px;
}

/* baseline */
.baseline {
    background: url(img/bg-header-back.jpg) repeat-x 0 -125px;     
    position: relative;
}
.baseline .bg,
.baseline:before, .baseline:after {
    content: "";
    height: 250px;
    display: block;
    position: absolute;
    top: 0;
    height: 100%;
    left: 0;
    width: 100%;
}
.baseline:before {
    background: url(img/bg-header.jpg) no-repeat 50% -125px;     
}
.baseline .global-page {
    height: 250px;
}
.home .baseline {
    background: url(img/bg-header-back.jpg) repeat-x 0 0;     
}
.home .baseline .bg {
    background: url(img/bg-home-paral.png) no-repeat 50% 0%;     
}
.home .baseline:before {
    background: url(img/bg-header.jpg) no-repeat 50% 0;     
}
.members .baseline:after {
    background: url(img/bg-home.png) no-repeat 50% -125px;     
}
.deontology .baseline:after,
.faq .baseline:after {
    background: url(img/bg-faq.png) no-repeat 50% 0;     
}
.news .baseline:after {
    background: url(img/bg-news.png) no-repeat 50% 0;     
}
.addons .baseline:after {
    background: url(img/bg-addons.png) no-repeat 50% 0;     
}
.actions .baseline:after {
    background: url(img/bg-action.png) no-repeat 50% 0;     
}

#breadcrumb {
    background: rgba(255, 255, 255, 0.8); 
    margin-top: -2.8em;
    position: relative;
    height: 1.3em;
    padding: 0.75em;
}
#breadcrumb .breadcrumb_last {
    color: #cb0347;    
}
#breadcrumb a {
    text-decoration: none;    
}
#breadcrumb a:hover {
    text-decoration: underline;    
}

/* footer */
#footer {
    background: #f2f2f2;
}
#footer .footer-menu {
    display: flex;
    justify-content: space-around;
    padding-top: 50px;
    padding-bottom: 30px;    
}
#footer .footer-menu .info {
    max-width: 365px;
}
#footer .footer-menu ul {
    padding: 1em 0 0 30px;   
    font-size: 1.29em;
}
#footer .footer-menu ul a {
    color: #505658;
    font-weight: bold;
    text-decoration: none;
}
#footer .footer-menu ul a:hover {
    color: #ce044a;
}
#footer .footer-menu ul a .icon-facebook, #footer .footer-menu ul a:hover .icon-facebook {
    color: #49659f
}
#footer .footer-menu ul li {
    list-style-type: none;
    padding-bottom: 1em;
}
#footer .footer-menu ul.socials {
    font-size: 3.57em; 
    padding: 0;   
}
#footer .socials li {
    display: inline;
    list-style-type: none;    
}
#footer .socials a {
    text-decoration: none;    
}
#footer h3 {
    color: #505658;    
    font-size: 1.29em;
    padding: 1em 0 0.5em 0;
}
#footer img {
    display: block;
    margin: 0 0 2em 0;    
}

#footer .mention {
    padding: 1em 0;    
    color: #505658;
    text-align: center;
    background: #eaeaea;
}


/*********************************************************************
	HOME
*********************************************************************/
.home section {
    padding-bottom: 60px;    
}
.home .baseline {
    color: #ffffff;   
    font-size: 1.14em; 
}
.home .baseline .bg {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;    
}
.home .baseline p {
    padding: 1em 0;    
    line-height: 1.5em;
}
.home .baseline .global-page {
    position: relative;
    z-index: 1;
    height: 500px;
    background: url(img/bg-home-mascot.png) no-repeat 150px 34px;
}
.home .baseline .global-page div {
    padding: 100px 70px 40px 57%;
}

section.videos .intro {
    font-size: 1.14em;
    text-align: center;
    padding: 0 14%;    
}
section.videos .list-videos {
    display: flex;
    justify-content: center;
    margin: 20px -15px 0 -15px;
    flex-wrap: wrap;
}
section.videos .list-videos .video-item {
    flex: 0 0 370px;
    margin: 0 15px;
    padding-top: 30px;
}
section.videos .list-videos iframe {
    width: 370px;
    height: 208px;
    max-width: 100%;
}
section.videos h3.video-item-title {
    text-align: center;
    font-weight: normal;
    padding-bottom: 1rem;
}
section.videos .video-item-desc {
    text-align: center;
    padding-top: 1rem;
}

section.why {
    background: #f2f2f2;
    color: #565255;
    padding-bottom: 70px;
}
section.why .intro {
    font-size: 1.14em;
    text-align: center;
    padding: 0 14%;    
}
section.why h3 {
    font-weight: normal;
    text-align: center;
    color: #25528b;
    font-size: 1.71rem;  
    border-bottom: 3px #a5a2a4 dotted;
    padding: 1.5em 0 0.5em 0;
    margin-bottom: 0.75em;  
}
section.why ul {
    display: flex;
    padding-top: 3em;    
    margin: 0 -15px;
}
section.why li {
    list-style-type: none;
    text-align: center;
    width: 33.33%;    
    margin: 0 15px;
}
section.why ul div {
    padding: 0 20px 2em 20px; 
}
section.why li .btn {
    display: block;
    margin: 0 30px;
}
section.why [class^="icon-"], section.why [class*=" icon-"] {
    font-size: 95px;
    background: #ffffff;
    width: 140px;
    color: #3f6191;
    display: inline-block;
    height: 140px;
    line-height: 140px;
    border-radius: 100%;
    border: 15px #5f81b1 solid;    
}
section.why span.icon-cloud {
    font-size: 115px;    
}

section.how {
    background: #3f6191;
    color: #ffffff;
}
section.how h2, section.how h3, section.how a {
    color: #ffffff;
}
section.how h3 {
    padding-bottom: 0.5em;    
}
section.how h3:before {
    content: "";
    display: block;
    position: absolute;
    left: -20px;    
    height: 40px;
    width: 40px;
    border-radius: 100%;
    background: #ffffff;
    transform: scale(0);   
}
section.how .on h3:before {
    animation: bullet 0.5s 0.2s ease-out both;
}
@keyframes bullet {
    0% {
        transform: scale(0);   
    }
    60% {
        transform: scale(1.2);   
    }
    100% {
        transform: scale(1);   
    }
}
section.how ul {
    padding-top: 2em;    
}
section.how li:nth-child(2) h3:before {
    left: auto;    
    right: -20px;    
}
section.how li:before {
    content: "";
    display: block;
    position: absolute;
    left: 50%;
    top: 0;
    bottom: 100%;
    width: 2px;
    background: #ffffff;
    margin-left: -1px;
    -webkit-transition: bottom 0.2; -moz-transition: bottom 0.2s; transition: bottom 0.2s;
}
section.how li.trace:before {
    bottom: -70px;
}
section.how li:first-child:before {    
    top: 70px;
}
section.how li:last-child:before {    
    display: none;
}
section.how p {
    padding-bottom: 1em;    
}
section.how li {
    padding: 0 100px 50px 100px;
    position: relative;
    list-style-type: none;
    display: flex;    
}
section.how li > div {
    width: 50%;   
    box-sizing: border-box;
}
section.how li:nth-child(2) .visu {
    order: 2;
    padding-right: 0;  
    padding-left: 85px;  
}
section.how li:nth-child(2) .resume {
    text-align: right;
    padding-right: 85px;  
    padding-left: 0;  
}
section.how li .resume {
    padding-top: 50px;  
    padding-left: 85px;  
    position: relative;
}
section.how li .visu,
section.how li .resume div,
section.how li .resume h3 span {
    display: block;
    opacity: 0;
    -webkit-transition: opacity 0.3s, transform 0.3s; -moz-transition: opacity 0.3s, transform 0.3s; transition: opacity 0.3s, transform 0.3s;
}
section.how li:nth-child(2) .resume div,
section.how li:nth-child(2) .resume h3 span,
section.how li .visu {
    transform: translateX(-50px);    
}
section.how li:nth-child(2) .visu,
section.how li .resume div,
section.how li .resume h3 span {
    transform: translateX(50px);    
}
section.how li.on .visu,
section.how li.on .resume div,
section.how li.on .resume h3 span {
    opacity: 1;
    transform: translateX(0);    
    transform: translateY(0);    
}
section.how li .visu {
    padding-right: 85px;  
}
section.how li:first-child .resume {
    padding-top: 70px;    
}

section.news {
    background: #f2f2f2;    
}
section.news a {
    text-decoration: none;    
}
section.news ul {
    display: flex;
    margin: 0 -15px;    
}
section.news li {
    margin: 0 15px;
    width: 33.33%;
    list-style-type: none;    
}
section.news h3 {
    padding: 0.5em 0;
    list-style-type: none;    
}
section.news img {
    display: block;    
}
section.news li, section.news li p {
    line-height: 1.5em;
    color: #565255;
}
section.news .btns {
    text-align: center;
    padding-top: 3em;    
}

section.support {
    padding-bottom: 0;
    background: #3f6191;
    color: #ffffff;
}
section.support a {
    color: #ffffff;
}
section.support h2, section.support h3 {
    color: #ffffff;
}
section.support h3 {
    padding: 20px 0 0.5em 0;    
}
section.support p {
    padding: 1em 0;    
}
section.support img {
    display: block;
    max-width: 60%;
    flex-shrink: 0;
    margin-left: 30px;
}
section.support .global-page > div {
    display: flex;
    align-items: flex-end;
}
section.support h2 {
    width: 100%;    
}
section.support .btn {
    display: block;
    margin: 2em 15px 2em 15px;    
}

.barometer {
    position: relative;
}
section.barometer {
    background: url(img/bg.png) repeat-x #e6e6e6 50% 0;    
}
section.barometer:after {
    content: "";
    display: block;
    position: absolute;
    left: 0;
    width: 100%;
    height: 15px;
    bottom: 0;
    background: url(img/bg.png) repeat-x 50% 0;  
    transform: rotate(180deg);  
}
.barometer h2 {
    padding-bottom: 0;
}
.barometer .date {
    color: #24508d;    
    text-align: center;
    font-size: 2.14em;
}
section.barometer h3, div.barometer .main-col h3 {
    font-weight: normal;
    text-align: center;
    color: #25528b;
    font-size: 1.71rem;  
    border-bottom: 3px #a5a2a4 dotted;
    padding: 1.5em 0 0.5em 0;
    margin-bottom: 0.75em;  
}
.barometer .metrics {
    display: flex;
    padding-top: 3em;    
    margin: 0 -15px;
}
div.barometer .metrics {
    flex-wrap: wrap;
}
.barometer .metrics > div {
    padding: 0 15px;
    box-sizing: border-box;
}
section.barometer .metrics > div {
    width: 33.33%;    
}
div.barometer .metrics > div {
    width: 50%;    
}
.barometer .btns {
    padding: 1.5em 0 0.5em 0;
    text-align: center;
}
.barometer .metrics li {
    list-style-type: none;
    padding-bottom: 20px;
    color: #3071ab;
    display: flex;
}
.barometer .objects li {
    padding-bottom: 45px;
    line-height: 1.3em;
}
.barometer .metrics .objects ul {
    font-size: 0.86em;    
}
.barometer .metrics .objects ul li:first-child {
    font-size: 1.14rem;    
}
.barometer .metrics ul {
    font-size: 1.29em;    
}
.barometer .metrics ul li:first-child {
    font-size: 1.71rem;    
}
.barometer .num {
    font-weight: bold;
    color: #a4003a;    
    font-size: 2.14rem;
}
.barometer .metrics li:first-child .num {
    font-size: 3.43rem;
}
.barometer .objects .num {
    padding-right: 10px;
    width: 60px;
    text-align: right;
    align-self: center;
}
.barometer .objects ul {
    padding-top: 20px;    
}
.barometer .metrics .means ul {
    padding-top: 30px;    
}
.barometer .metrics .means li {
    justify-content: space-between;
    align-items: baseline;
}
.barometer .means .num {
    width: 145px;
    padding-left: 10px;
}
.barometer .gauge .num {
    padding-top: 0.44em;
    font-size: 3.43rem;
    line-height: 0.85em;
}
.barometer .gauge .num span {
    font-size: 1.71rem;
    font-weight: normal;
    color: #3071ab;
    display: block;
}
.barometer .metrics .gauge ul li:first-child {
    margin-top: 10px;
    font-size: 1em;    
}
.barometer .metrics .gauge li {
    background: #aaabac;
    color: #ffffff;
    padding: 0.75em;
    margin-bottom: 20px;
    position: relative;
}
.barometer .gauge li div {
    background: #a4003a;
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    box-sizing: border-box;
}
.barometer .gauge li span {
    position: relative;
}
.barometer .gauge a {
    text-decoration: none;
    color: inherit;    
}
.barometer .global-page {
    position: relative;
}
.barometer .global-page:after {
    content: "";
    display: block;
    position: absolute;
    left: 10px;
    z-index: 2;
    bottom: -83px;
    width: 252px;
    height: 154px;
    background: url(img/mascot-barometer.png) no-repeat;    
}
div.barometer .btns {
    margin: 2em 0;
}
.barometer .svg, .barometer .svg svg {
    margin: 50px auto;
    width: 250px;
    height: 250px;
    display: block;
    border-radius: 100%;
}
.barometer .svg.on, .barometer .svg.on svg {
    background: #25528b;
}

#market { 
    fill: #a4003a;
}
#crime {
    fill: #25528b;
}
.barometer .metrics ul.legend {
    display: block;
}
.barometer .metrics .legend li, .barometer .metrics .legend li:first-child {
    list-style-type: none;    
    font-size: 1rem;
    padding-bottom: 0;
    display: block;
}
.barometer .legend li:before {
    content: "";
    display: inline-block;
    width: 15px;
    height: 15px;
    margin: 0 2px 0 0;
    vertical-align: -2px;
}
.barometer .legend li.crime:before {
    background: #25528b;
}
.barometer .legend li.market:before {
    background: #a4003a;
}
.barometer .legend li.market {
    color: #a4003a;
}

/* list barometer */
#content .list-barometer li {
    position: relative;
    list-style-type: none;
    padding: 25px 0;
    background: none;
}
#content .list-barometer li:first-child {
    border-top: 0;
}
#content .list-barometer li a {
        
}


/*********************************************************************
	MEMBRES
*********************************************************************/
h2.dotted img {
    vertical-align: botom;
    margin-right: 10px;    
}
.members h2 {
    margin-top: 1em;    
}
.members .intro {
    font-size: 1.29em;
    text-align: center;
    color: #565255;    
}
#content.members ul {
    padding: 1em 0;
    font-size: 1.29em;
    color: #565255;    
    display: flex;
    flex-wrap: wrap;
}
#content.members li {
    box-sizing: border-box;
    width: 50%;
    padding: 0.75em 0 0.75em 57px;
    list-style-type: none;   
    background-repeat: no-repeat;
    background-position: 30px 1em;
}
#content.members .gold li {
    background-image:url(img/mascot-gold.png);  
}
#content.members .silver li {
    background-image:url(img/mascot-silver.png);  
}
#content.members .bronze li {
    background-image:url(img/mascot-bronze.png);  
}
#content.members > .global-page {
    padding-left: 70px;
    padding-right: 70px;    
    padding-bottom: 70px;    
}
ul#members {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;   
    margin: 4em 0 2em 0; 
}
#members li {
    width: 231px;
    padding: 0 15px;
    background: none;
    text-align: center;
    font-size: 1.71em;
    line-height: 1.2em;
}
#members li:nth-child(3) {
    width: 100%;
}
#members li a {
    width: 231px;
    margin: -15px auto;
    display: block;
    text-align: center;
    text-decoration: none;
    color: #565255;
    padding-top: 240px;
    background-repeat: no-repeat;
    background-position: 50% 0%;
}
#members li.page-item-118 a {
    background-image: url(img/members-pro.png);    
}
#members li.page-item-120 a {
    background-image: url(img/members-public.png);    
}
#members li.page-item-122 a {
    background-image: url(img/members-education.png);    
}
#members li.page-item-129 a {
    background-image: url(img/members-web.png);    
}
#members li.page-item-131 a {
    background-image: url(img/members-society.png);    
}



/*********************************************************************
	FAQ
*********************************************************************/
#content.faq {
    background: #e6e6e6;
}
.faq .intro {
    padding: 1em 0 3em 0;
    color: #565255;    
}
.faq h2 {
    color: #ce044a;
    font-size: 1.29em;    
}
.faq .questions h3 {
    color: #565255;
    font-size: 1em;  
    position: relative;
    padding: 30px 70px 30px 20px;  
    cursor: pointer;
}
.faq .questions h3:before {
    content: "";
    display: block;
    top: 34px;
    height: 2px;
    width: 30px;
    position: absolute;
    right: 25px;
    background: #ce044a;    
}
.faq .questions h3:after {
    content: "";
    top: 20px;
    display: block;
    width: 2px;
    height: 30px;
    position: absolute;
    right: 39px;
    background: #ce044a;   
    -webkit-transition: top 0.2s, height 0.2s; 
    -moz-transition: top 0.2s, height 0.2s; 
    transition: top 0.2s, height 0.2s; 
}
.faq .questions .open h3:after {
    top: 34px;
    height: 2px;
}
.faq .questions {
    margin: 2em 0 3em 0;    
}
.faq .questions li > div {
    color: #565255;
    padding: 0 70px 30px 20px;  
    display: none;
}
.faq .questions li.open > div {
    display: block;
}
.faq .questions li {
    list-style-type: none;
    margin: 2px 0;
    background: #ffffff;
}


/*********************************************************************
	NEWS
*********************************************************************/
/* aside */
aside ul.news li {
    position: relative;
    list-style-type: none;
    border-top: 3px #a5a2a4 dotted;
    padding: 25px 0;
}
aside ul.news li:first-child {
    border-top: 0;
}
aside ul.news h3 {
    font-size: 1em;    
}
aside ul.news a {
    text-decoration: none;
}
aside ul.news a:hover h3 {
    color: #cd0349;
}
aside ul.news img {
    display: block;
    margin-top: 10px;
}
aside ul.news li .date {
    position: absolute;
    bottom: 25px;
    right: 0;
    background: #d10048;
    color: #ffffff;
    font-weight: bold;
    padding: 3px 10px;
    font-size: 0.86em;    
}
.news .main-col article {
    position: relative;
}
.news .main-col .date {
    background: #d10048;
    color: #ffffff;
    font-weight: bold;
    padding: 3px 10px;
    font-size: 0.86em;    
    position: absolute;
    right: 0;
    margin-top: -16px;
}

/* detail */
.news .main-col .text {
    padding-top: 2.5em;    
}

/* list */
ul.news-list {
    max-width: 770px;
    margin: 0 auto;  
    padding-bottom: 3em;  
}
ul.news-list a {
    display: block;
    text-decoration: none;    
    color: #565255;
}
ul.news-list img {
    display: block;
    width: 100%;
}
ul.news-list .visu {
    position: relative;
    margin-bottom: 1em;
}
ul.news-list .date {
    background: #d10048;
    color: #ffffff;
    font-weight: bold;
    padding: 3px 10px;
    font-size: 0.86em;    
    position: absolute;
    right: 0;
    bottom: 0;
}
ul.news-list li {
    list-style-type: none;
    padding: 30px 0;
    border-top: 3px #a5a2a4 dotted;
}
ul.news-list h2 {
    color: #25528b;    
    padding-bottom: 0.75em;
}
ul.news-list a:hover h2 {
    color: #cd0349;
}
.uwpqsfpagi {
    text-align: center;
    padding: 2em 0;    
}
.uwpqsfpagi > span, .uwpqsfpagi > a {
    display: inline-block;
    padding: 0.5em 0.75em;    
    text-decoration: none;
    border: 1px #1d61a0 solid;
    color: #1d61a0;
    margin: 0 0.5em;
}
.uwpqsfpagi > a:hover, .uwpqsfpagi > span {
    color: #ffffff;    
    background: #1d61a0;
}
.upw-after {
    text-align: center;    
}
.upw-after a.btn {
    font-size: 1.29rem;
}

/*********************************************************************
	ADDONS
*********************************************************************/
.addons h2.dotted {
    font-weight: bold;    
}
.addons-list {
    display: flex;
    margin: 0 -15px;    
    flex-wrap: wrap;
}
.addons-list > li {
    list-style-type: none;
    padding: 0 15px;
    color: #505658;
    box-sizing: border-box;
}
.addons-list.line {
    font-size: 1.29em;
}
.addons-list.visu > li {
    width: 200px;
    padding-top: 2em;
    padding-bottom: 2em;
    text-align: center;
}
.addons-list.line > li {
    padding-top: 1em;
    padding-bottom: 0.5em;
    width: 50%;
}
.addons-list.visu > li > a.btn {
    font-size: 1.29rem;
    display: block;
    padding: 0.75em;
}
.addons-list.visu .name {
    min-height: 2.6em;    
    padding-bottom: 0.5em;
}
.addons-list .visu {
    min-height: 127px;
    padding: 10px 0 20px 0;
}
.addons-list .visu img {
    display: block;
    margin: 0 auto;
}
.addons-list.line > li > a {
    color: #ce044a;
}
.addons .main-col .info {
    font-size: 1.71em;    
    color: #ce044a;
    text-align: center;
    padding: 2em 0;
}
.addons .main-col .btns {
    padding-bottom: 2em;
    text-align: center;    
}
.addons .main-col .btns .btn {
    padding-left: 2em;   
    padding-right: 2em;   
}

/*********************************************************************
	MODAL
*********************************************************************/
#modal-bg {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.5);
    z-index: 50;    
    display: none;
}
.modal-content {
    position: absolute;
    top: 0;
    background: #ffffff;
    z-index: 51;
    left: 50%;
    margin-left: -515px;
    top: 150px;
    width: 970px;
    padding: 30px;
    font-size: 1.29rem;
    color: #505658;
    display: none;
    text-align: left;
}
.modal-content .cols {
    display: flex; 
    margin: 0 -30px;   
}
.modal-content .col {
    width: 455px;    
    padding: 0 30px;
}
.modal-content .col h3.last {
    padding-top: 1em;
}
.modal-content .cols .col:first-child strong {
    font-weight: normal;
    color: #ce044a;   
}
.modal-content p, .modal-content ul, .modal-content ol {
    padding: 0.75em 0;    
    line-height: 1.5em;
}
.modal-content ol {
    counter-reset: list;    
}
.modal-content ol li {
    counter-increment: list;   
    list-style-type: none; 
}
.modal-content ol li:before {
    content: counter(list)" - ";    
    font-weight: bold;
}
.modal-content .btns {
    text-align: center;
    padding: 1em 0;    
}
.modal-content a.btn.small {
    font-size: 1.29rem;
    padding-top: 0.75em;
    padding-bottom: 0.75em;
}
.modal-content .modal-close {
    cursor: pointer;
    position: absolute;
    right: 10px;
    top: 10px;  
    font-size: 20px;  
    -webkit-transition: all 0.2s; -moz-transition: all 0.2s; transition: all 0.2s;
}
.modal-content .modal-close:hover {
    color: #ce044a;
}

/*********************************************************************
	ASIDE
*********************************************************************/
#content aside {
    border: 3px #a5a2a4 dotted;
    padding: 15px 20px 20px 20px;   
    clear: both; 
}
aside h2.arrow {
    margin-top: 3em;
    font-size: 1.43em;
    padding: 0 0 0.5em 0;   
}
aside h2.arrow:first-child {
    margin: 0;    
}
aside h2.arrow:before {
    width: 34px;
    height: 10px;
    background-size: 100% auto;   
    background-position: 0 100%;
    margin-right: 5px; 
}
aside a.btn.small {
    font-size: 1.29rem;    
    padding: 0.75em 1em;
}
aside .btns {
    text-align: center;    
}
aside .text {
    color: #565255;    
}
aside .menu {
    padding: 1em 0;    
}
aside .menu li {
    list-style-type: none;
    padding: 2px 0;
    font-weight: bold;
}
aside .menu a {
    color: #25528b;    
    text-decoration: none;    
}
aside .menu a:hover, aside .menu a.current {
    color: #d10048;    
}

/*********************************************************************
	DEONTOLOGY
*********************************************************************/
#content.deontology {
    background: #e6e6e6;    
}
.deontology .main-col {
    background: #e6e6e6;    
    color: #565255;    
    padding-left: 400px;
}
.deontology aside {
    margin-left: 0;
    margin-right: 30px;   
    position: absolute;
}
.deontology .col-aside { 
    position: relative;
}
.deontology .text h2 {
    color: #ce044a;
}
.deontology .text h3 {
    color: #25528b;
}
.deontology .text .cadre {
    margin: 1em 0;
    padding: 15px;
    background: #ffffff;
}
.deontology.fixed aside {
    position: fixed;
    top: 0px;
}
.deontology.bottom aside {
    position: absolute;
    bottom: 60px;
    top: auto;
}

/*********************************************************************
	ACTIONS
*********************************************************************/
.actions section.action h2 {
    max-width: 800px;
    margin-left: auto;
    margin-right: auto;
}
.actions section.action {
    color: #565255;    
    padding: 20px 0 60px 0;
}
.actions section.action.unsubscrib,
.actions section.action.phishing {
    background: #f2f2f2;    
}
.actions section.action.corrupt {
    background: #3f6191;    
}
.actions section.action.evidence {
    background: #e6e6e6;    
}
.actions section.action.corrupt .text, .actions section.action.corrupt h3.dotted, .actions section.action.corrupt h2.arrow {
    color: #ffffff;
}
.actions section.action.corrupt h3.dotted {
    border-color: #ffffff;    
}
.actions section.action .text {
    font-size: 1.14em;
}
.actions section.action h3.dotted {
    font-weight: bold;  
    font-size: 1.29em;  
}
.actions section.action .cols {
    display: flex;
}
.actions section.action .benefits {
    padding-left: 30px;
    width: 40.2%;
    flex-shrink: 0;
}
#content.actions section.action .benefits p {
    padding: 0;
}
#content.actions section.action .benefits .text {
    padding: 0 0 2em 0;
}
.actions section.action .benefits h3.dotted {
    padding-top: 1.2em;    
}
.actions section.action .visu {
    text-align: center;
    padding-top: 2em;    
}
.actions section.head {
    background: #c82b4b;
    color: #ffffff;
    font-size: 1.14em;    
}
.actions section.head h1 {
    padding-bottom: 1em;
    font-size: 1.44em;    
}
.actions section.head .global-page {
    background: url(img/bg-head-action.png) no-repeat 8.88% 70px;  
    padding-top: 90px;
    padding-bottom: 60px;  
}
.actions section.head h1,
.actions section.head .global-page > div {
    padding-right: 70px;
    padding-left: 48.7%;    
}
.actions section.head .global-page > div {
    line-height: 1.4em;    
}
.actions section.reporting {
    background: #9d9d9c;
    padding: 80px 0;
    color: #ffffff;    
}
.actions .frame {
    color: #ffffff;
    font-weight: bold;
    width: 370px;
    padding: 10px 20px;
    box-sizing: border-box;
    border: 3px #ffffff solid;
    border-radius: 5px;   
    background: #cd0349;
    font-size: 1.29rem; 
    text-align: center;
    margin: 0 auto;
    position: relative;
}
.actions .subtitle {
    padding: 70px 100px;
    display: flex;
    justify-content: space-between;    
}
.actions .frame.title {
    position: relative;
}
.actions .frame.title:before {
    content: "";
    position: absolute;
    top: 100%;
    display: block;
    width: 4px;
    left: 50%;
    height: 0px;
    background: #ffffff;
    margin: 0 0 0 -2px;
    -webkit-transition: height 0.3s; -moz-transition: height 0.3s; transition: height 0.3s;
}
.actions .frame.title.on:before {
    height: 250px;
}
.actions .subtitle .frame {
    margin: 0;   
}
.actions .subtitle .frame:before {
    content: "";
    position: absolute;
    left: 50%;
    top: 74px;
    margin-left: -18px;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 30px 18px 0 18px;
    border-color: #ffffff transparent transparent transparent;
    transform: translateY(-20px);
    opacity: 0;
    -webkit-transition: opacity 0.2s 0.2s, transform 0.2s 0.2s; -moz-transition: opacity 0.2s 0.2s, transform 0.2s 0.2s; transition: opacity 0.2s 0.2s, transform 0.2s 0.2s;
}
.actions .subtitle .frame:after {
    content: "";
    position: absolute;
    left: 50%;
    top: 76px;
    margin-left: -14px;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 24px 14px 0 14px;
    border-color: #d5144e transparent transparent transparent;
    transform: translateY(-20px);
    opacity: 0;
    -webkit-transition: opacity 0.2s 0.2s, transform 0.2s 0.2s; -moz-transition: opacity 0.2s 0.2s, transform 0.2s 0.2s; transition: opacity 0.2s 0.2s, transform 0.2s 0.2s;
}
.actions .subtitle.on .frame:before,
.actions .subtitle.on .frame:after {
    transform: translateY(0);
    opacity: 1;
}

.actions .visu.click {
    position: relative;;
    padding-bottom: 125px;    
}
.actions .visu.macaron {
    position: relative;;
    padding-bottom: 25px;    
}
.actions .visu.click:before {
    content: "";
    position: absolute;
    left: 50%;
    top: 236px;
    margin-left: -37px;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 60px 37px 0 37px;
    border-color: #ffffff transparent transparent transparent;
}
.actions .visu.click:after {
    content: "";
    position: absolute;
    left: 50%;
    top: 241px;
    margin-left: -28px;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 46px 28px 0 28px;
    border-color: #d5144e transparent transparent transparent;
}
.actions .reporting .visu {
    text-align: center;    
}
.actions .reporting ul {
    padding: 0 100px;
    font-size: 1.14em;
}
.actions .reporting li {
    display: flex;
    padding: 35px 0;
    align-items: center;
    list-style-type: none;
    justify-content: space-between;    
}
.actions .reporting li div.to:before {
    content: "";
    position: absolute;
    top: -100px;
    display: block;
    width: 4px;
    right: -117px;
    height: 0%;
    background: #ffffff;
    margin: 0 0 0 -2px;
    z-index: 1;
    -webkit-transition: height 0.2s; -moz-transition: height 0.2s; transition: height 0.2s;
}
.actions .reporting li.on div.to:before {
    height: 100px;
}
.actions .reporting li > div {
    width: 370px;
}
.actions .reporting li:first-child div.to:before {
    display: none;
}
.actions .reporting li > div.visu {
    width: 124px;
    position: relative;
    line-height: 124px;
    height: 124px;
    text-align: center;
    border-radius: 100%;
    background: #ffffff;
    transform: scale(0);  
    z-index: 5;
    flex-shrink: 0;
    margin: 0 20px;
}
.actions .reporting li > div.visu img {
    vertical-align: middle;
    z-index: 10;
    position: relative;
    z-index: 5;
}
.actions .reporting li.on > div.visu {
    animation: bulletAction 0.5s 0.2s ease-out forwards;
}
@keyframes bulletAction {
    0% {
        transform: scale(0);   
    }
    60% {
        transform: scale(1.2);   
    }
    100% {
        transform: scale(1);   
    }
}
.actions .reporting li .to {
    text-align: right;
    position: relative;
}
.actions .reporting li h3 {
    color: #ffffff;
    font-size: 1em;
}
.actions .reporting li .do div, .actions .reporting li .to div, .actions .reporting li .to h3 {
    opacity: 0;    
    -webkit-transition: opacity 0.2s 0.2s; -moz-transition: opacity 0.2s 0.2s; transition: opacity 0.2s 0.2s;
}
.actions .reporting li.on .do div, .actions .reporting li.on .to div, .actions .reporting li.on .to h3 {
    opacity: 1;    
}

/*********************************************************************
	404
*********************************************************************/
#content.error404 {
    text-align: center;
    color: #ffffff;
    font-weight: bold;
    font-size: 1.14rem;
    background: #c82b4b;    
}
#content.error404 a {
    color: #ffffff;
}
#content.error404 > .global-page {
    padding-top: 70px;
    padding-bottom: 250px;
}
.error404 .baseline .global-page {
    height: 340px;
}
.error404 .baseline:before {
    background: url(img/bg-header.jpg) no-repeat 50% -50px;     
}
.error404 .baseline {
    background: url(img/bg-header-back.jpg) repeat-x 0 -50px
}
.error404 .baseline .error {
    font-size: 210px;
    line-height: 160px;
    position: absolute;
    bottom:0;
    width: 100%;
    left: 0;
    text-align: center;
    color: #c82b4b;    
    font-weight: 800;
}
.error404 .baseline .error:before {
    content: "\e91d";
    color: #ffffff;
    font-family: 'icomoon'; 
    font-size: 150px;
    display: block;
    position: absolute;
    bottom: 135px;
    width: 250px;
    height: 158px;
    text-align: center;
    left: 50%;
    margin-left: -125px;
}

/*********************************************************************
	RESPONSIVE
*********************************************************************/
.menu-mobile {
    position: absolute;
    top: 20px;
    right: 30px;
    font-size: 40px;
    display: none;    
}
@media screen and (max-width: 1210px) {
	div.global-page { padding-left: 20px; padding-right: 20px; width: auto; }
	.actions .reporting li div.to:before {
	    right: -84px;    
	}
	#breadcrumb {
	    background: #d6dae6;   
	    height: auto; 
	}
	#header .logo img {
	    margin-left: 0;    
	}
	#header .global-page {
	    padding-right: 0;    
	}
	/* actions */
	.actions .subtitle,
	.actions .reporting ul {
	    padding-left: 0;    
	    padding-right: 0;    
	}
	.actions .subtitle .frame {
	    margin: 0 20px;
	    width: 50%;    
	}
	
}
@media screen and (max-width: 1070px) {
    .modal-content {
        width: auto;
        margin: 0;
        left: 20px;
        right: 20px;    
    }
    #header {
        font-size: 0.95em;    
    }
    #header nav .menu .app a {
        padding-left: 60px;    
    }
    #header nav .menu .app a:before {
        font-size: 30px;    
    }
    #content.members > .global-page {
        padding-left: 20px;    
        padding-right: 20px;    
    }
}

@media screen and (max-width: 960px) {
    #header nav .menu .app a {
        padding-left: 20px;    
        padding-right: 20px;    
    }
    #header nav .menu .app a:before {
        display: none;
    }
    #header nav .menu a {
        padding: 0 20px;
        line-height: 1.2em;    
    }
    #header .logo img {
        max-width: 120px;    
    }
    /* home */
    section.support .global-page > div {
        display: block;
    }
    section.support img {
        margin: 0 auto;
    }
    .home .baseline .global-page div {
        padding-left: 40%;
    }
    section.how li {
        padding: 0;
    }
    .barometer li {
        flex-wrap: wrap;
    }
    .barometer .means .num, .barometer .objects .num {
        display: block; 
        margin: 0;
        width: 100%;
        padding: 0;
        line-height: 1em;
        text-align: left;
        order: 0;
    }
    .barometer li span {
        display: block; 
        width: 100%;
        padding: 0;
        order: 1;
    }
    .barometer .global-page {
        padding-bottom: 40px;    
    }
    /* actions */
    .actions section.head h1, .actions section.head .global-page > div {
        padding-left: 35%;
        padding-right: 0;    
    }
    .actions section.head .global-page {
        background-size: 25% auto;    
    }
    /* addons */
    .addons .col-aside {
        display: block;   
    }
    .addons .col-aside aside {
        width: auto;
        margin-left: 0;
    }
    .addons-list.visu {
        justify-content: center;    
    }
}
@media screen and (max-width: 767px) {
    .col-aside {
        display: block;   
    }
    .col-aside aside {
        width: auto;
        margin-left: 0;
    }
    /* footer */
    #footer .footer-menu {
        flex-wrap: wrap;   
    }
    #footer .footer-menu .info {
        width: 100%;
        max-width: 100%;   
        padding-bottom: 2em; 
    }
    #footer .footer-menu ul {
        padding-left: 0;    
    }
    /* home */
    .home .baseline .global-page {
        height: auto;    
    }
    .home .baseline .global-page div {
        padding-top: 40px; 
    }
    .home .baseline:before {
        background-size: auto 100%;    
    }
    .barometer .metrics {
        display: block;
    }   
    section.barometer .metrics > div,
    div.barometer .metrics div {
        width: auto;
    }    
    div.barometer .metrics div.svg {
        width: 250px;
    }            
    .barometer .global-page {
        padding-bottom: 80px;    
    }
    section.news ul {
        display: block;    
    }
    section.news li {
        width: auto;
        padding-top: 2em;
        padding-bottom: 2em;
    }
    section.why ul {
        display: block;
    }
    section.why li {
        width: auto;    
        margin-bottom: 2em;
        margin-top: 4em;
    }
    section.how li {
        display: block;    
    }
    section.how li > div {
        width: auto;   
    }
    section.how li .visu {
        text-align: center;    
    }
    section.how li:nth-child(2) .visu, section.how li:nth-child(2) .resume,
    section.how li .resume, section.how li .visu {
        padding: 0;    
    }
    section.how li:before, section.how li h3:before {
        display: none;    
    } 
    /* members */
    #content .members > .global-page {
        padding-left: 20px;
        padding-right: 20px;    
    }    
    /* deontology */
    .deontology .main-col {
        padding-left: 0px;
    }
    .deontology.fixed aside, 
    .deontology.bottom aside,
    .deontology aside {
        margin-right: 0;
        position: static;
    }   
    /* actions */
    .actions section.head .global-page > div {
        padding-left: 0%;    
    }
    .actions section.head h1 {
        padding-left: 30%;    
        padding-bottom: 2em;
    }
    .actions section.head .global-page {
        padding-top: 50px;
        background-position: 30px 30px;    
    }
    /* addons */
    .modal-content .cols {
        display: block;    
    }
    .modal-content .col {
        width: auto;    
    }
}
@media screen and (max-width: 680px) {
    /* header - footer */
    #footer .footer-menu {
        justify-content: space-between;
    }
    #header .menu, #header .lang {
        display: none;    
    }
    .menu-mobile {
        display: block;    
    }
    #header {
        font-size: 1em;    
    }
    #header .logo img {
        margin-left: 0;    
    }
    #header .menu {
        display:block;        
    }
    #header nav {
        position: relative;    
        line-height: 1.2em; 
    }
    #header nav .menu ul li:hover ul {
        display: none;
    }
    #header nav li.mobile {
        display: block;    
    }
    .mmobile #header div.menu {
        display:block;        
    }
    #header div.menu {
        background: #ffffff;
        display:none;        
        position: absolute;    
        top: 90px;
        left: -20px;
        right: 0;
    }
    #header nav .menu ul, #header nav div {
        display: block;   
        height: auto;
        line-height: 1.2em; 
    }
    #header nav .menu .app a,
    #header nav .menu a {
        text-align: left;
        display: block;
        padding: 10px 20px;    
        height: auto;
    }
    #header nav .menu .app a br {
        display: none;    
    }
    #header nav .menu ul {
        padding: 10px 0 0 0;
    }
    #header nav .menu ul ul {
        display: none;
        position: static;
        background: #f2f2f2;
        font-size: 0.9em;
        padding: 0 0 5px 20px;
    }
    #header nav .menu .app a {
        margin-top: 10px;
        padding: 25px 20px 25px 80px;    
    }
    #header nav .menu .app a:before {
        display: block;
        padding-top:0;
        font-size: 45px;
    }

    /* home */
    section.how {
        overflow: hidden;
    }
    .home .baseline .global-page div {
        padding: 40px 0; 
    }
    section.why .intro {
        padding: 0;    
    }
    /* actions */
    .actions section.action .cols {
        display: block;    
    }
    .actions section.action .benefits {
        padding: 50px 0 0 0;
        width: auto;    
    }
    .reporting {
        display: none;    
    }
    /* addons */
    .addons-list.line {
        display: block;    
    }
    .addons-list.line > li {
        width: auto;    
    }
}
@media screen and (max-width: 480px) {
    /* general */
    a.btn,
    h1 {
        font-size: 1.7em;    
    }
    .barometer .gauge .num,
    h2, h1.arrow, h2.arrow {
        font-size: 2em;    
    }
    h2.arrow:before, h1.arrow:before {
        display: none;
   
    }
    a.btn.small,
    h3, h2.dotted {
        font-size: 1.3em;    
    }
    .members .baseline:after {
        background-position: 50% 50%;
        background-size: cover;    
    }
    /* members */
    .members h2 {
        text-align: center;    
    }
    h2.dotted img {
        margin: 0 auto 10px auto;;
        display: block;    
    }
    #content.members li {
        width: 100%;
        padding-left: 27px;
        background-position: 0 1em;
    }
    #members li {
        padding: 0;
        width: 100%;
    }
    #members li a {
        width: auto;
        margin: 15px auto;
    }    
    /* actions */
    .actions section.head h1 {
        padding-left: 0%;    
        text-align: center;
        padding-bottom: 1em;
    }
    .actions section.head .global-page {
        padding-top: 100px;
        background-size: 30%;
        background-position: 50% 30px;    
    }
    
    section.videos .list-videos, section.videos .list-videos .video-item {
        display: block;
        margin: 0;
    }

}
