/* text formatting in text-current */
div.text-current p em, div.text-current li em, div.rte-array em {font-style: italic;}
div.text-current p b, div.text-current p strong, div.text-current li strong, div.rte-array strong {font-weight: bold;}


div.push-yellow div.text-current li::before,
div.box div.text-current li::before {
    content: '';
    width: 25px;
    height: 2px;
    background: #000;
    position: absolute;
    top: 16px;
    left: 0;
}

div.push-yellow div.text-current p {margin-bottom: 0.5rem; }
div.push-yellow div.text-current li,
div.box div.text-current li {
    position: relative;
    padding: 0 0 0 2.5rem;
}
div.push-yellow div.text-current ul,
div.push-yellow div.text-current ol,
div.box div.text-current ul,
div.box div.text-current ol {
	margin-bottom: 0.5rem;
}

/* table component */
div.rte-array p+table {
	margin-top: 1.5rem;
}
div.rte-array table+table.table-footnote {
	border : none;
	margin: 0 auto;
}
div.rte-array table.table-footnote td,
div.rte-array table+table.table-footnote td {
	/* override some rte-table styling */
	color: #A39E9E;
	font-size:.75rem; 
	text-transform: none;
	padding: 0.5rem 0.5rem 0.5rem 0;
}
.rte-array table thead th {
	text-align: center;
}
/* idem td */
.rte-array tbody td > p {
    font-size: .7rem;
    line-height: 1rem;
    letter-spacing: .075rem;
    color: #000;
    text-transform: uppercase;
}
header.panel-product__header {
	background-color: #F2F2F2;
}
span.filetype {
	text-transform: uppercase;
	font-size: 0.8em;
	border: 2px solid #dfdfdf;
	display: inline-block;
	line-height: 1.8em;
	border-radius: 1em;
	position: absolute;
	left: 0;
	bottom: 0.25em;
	width: 3.8em;
	height: 2em;
	text-align: center;
}
.sticky-segment {
	top: -128px;
}
.sticky-segment__subnav {
	max-height: 400px;
	overflow-y: auto;
}
.cover-case-study__bloc-sub__list-item .label-category {
	text-transform: uppercase;
}

/* header darkening */
header.header--no-bg {
	min-height: 200px;
	background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0.3), rgba(0, 0, 0, 0));
}

/* Special homepage header in editMode */
header.header--no-bg-editMode {
	background-color: #666;
}	
header.header--no-bg-editMode	.header--inner {
		background: none;
		color: #fff;
  	}
header.header--no-bg-editMode	.brand svg *:not(.logo-initial) {
		fill: #fff;
	}
header.header--no-bg-editMode	.header--list li a {
		color: #fff;
	}
header.header--no-bg-editMode	.header--list svg * {
    	fill: #fff;
  	}

/* header layout */
header.header--no-bg-editMode  .brand a {
	height: auto;
}
header.header--no-bg-editMode  .header--list li {
	height: auto;
}

/* Quote with image, grey variant */
.push-yellow-quote--grey{
	background-color:#E5E5E5;
}
.push-yellow-quote--grey .push-yellow-quote--center:after,
.push-yellow-quote--grey .push-yellow-quote--center:before{
	background-color:#E5E5E5;
}
.push-yellow-quote .push-yellow-quote--grey .middle{
	background-color:#E5E5E5;
}
.push-yellow-quote--grey div.heading-5{
	color: #DB3331;
}
@media (max-width:767px){
	.push-yellow-quote--grey{background:0 0}
}

/* Text with image, grey variant */
.push-yellow.grey .row{background-color:#E5E5E5;}
@media (max-width:767px){
	.push-yellow.grey .middle{background-color:#E5E5E5}
}

/* buttons with icons : left variant */
.button--icons.left {
    padding: 12px 30px 15px 60px;
}
.button--icons.left svg.icon {
    right: unset;
    left: 30px;
    transform-origin: center;
    -webkit-transform: rotateZ(-180deg);
    -ms-transform: rotate(-180deg);
    transform: rotateZ(-180deg);
}

/* FAQ */
div.faq-answer > div.append-1 strong {
	font-weight: bold;
}
div.faq-answer > div.append-1 em {
	font-style: italic;
}
div.faq-answer > div.append-1 > ul > li::before,
div.faq-answer > div.append-1 > ol > li::before {
    content: '';
    width: 25px;
    height: 2px;
    background: #000;
    position: absolute;
    top: 15px;
    left: 0;
}
div.faq-answer > div.append-1 > ul > li,
div.faq-answer > div.append-1 > ol > li {
    position: relative;
    padding: 0 0 0.25rem 2.5rem;
}
div.faq-answer > div.append-1 > ol, div.faq-answer > div.append-1 > ul {
	margin-bottom: 0.5rem;
}

/* components with text following header */
.section-header h2+p {
	margin-top: 1rem;
}

/* search result highlight */
ul.search__results .search__results__text span.hl,
ul.search__results .search__results__date span.hl {
/*	font-weight: bold; */
	background-color: #FFE97E;
}

/* Blog */
.news-signature {
	margin: 40px 0 20px;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-flex-flow: row nowrap;
	-ms-flex-flow: row nowrap;
	flex-flow: row nowrap
}
.news-page--cover .news-signature img+.signature-meta {
	text-align: left
}
.news-signature.news-signature-small .signature-meta {
	display: block
}
.news-page--cover .news-signature img+.signature-meta {
	text-align: left
}
.news-page--cover .news-signature {
	-webkit-justify-content: center;
	-ms-flex-pack: center;
	justify-content: center
}

.news-page--cover .news-signature img+.signature-meta {
	text-align: left
}
.news-signature:before {
	content: "";
	display: block;
	height: 60px
}
.news-signature,
	.news-signature .signature-name {
	font-family: FuturaNewDemi-Reg;
}
.news-signature.news-signature-small .signature-name,
	.news-signature .signature-date {
	font-family: FuturaNewMedium-Reg;
	font-size: .7rem;
	line-height: 1rem;
}
.news-signature,
	.news-signature .signature-name {
	font-size: 1.15rem;
	line-height: 1.45rem;
	color: #000;
}
.news-signature.news-signature-small .signature-name,
	.news-signature .signature-date {
	font-size: .7rem;
	line-height: 1rem;
	letter-spacing: .075rem;
	color: #000;
	text-transform: uppercase;
}
.news-signature .signature-name {
	display: block;
	line-height: 1.2
}

.news-signature .signature-date {
	color: #a39e9e;
	display: block
}

.news-signature.news-signature-small {
	-webkit-align-items: flex-start;
	-ms-flex-align: start;
	align-items: flex-start;
	margin-top: 20px
}

.news-signature.news-signature-small:before {
	height: 36px
}

.news-signature.news-signature-small img {
	max-width: 36px;
	max-height: 36px;
	margin: 4px 14px 0 0
}

.news-signature.news-signature-small .signature-name {
	margin-bottom: 4px
}

.news-signature.news-signature-small .signature-meta {
	display: block
}
.news-signature img {
	margin-right: 1em;
	max-width: 60px;
	max-height: 60px
}

.box--categories .list-icon {
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-flow: row wrap;
	-ms-flex-flow: row wrap;
	flex-flow: row wrap;
	-webkit-align-items: flex-end;
	-ms-flex-align: end;
	align-items: flex-end
}

.box--categories .list-icon__item {
	float: none;
	border-bottom: 0
}

.box--categories .list-icon__item a {
	border-bottom: 1px solid #e5e5e5
}

.box--share .button--block {
	display: inline-block;
	margin: 0 .1em .5em 0
}

@media ( max-width :1023px) {
	.box--share .button--block {
		display: block;
		margin-bottom: .5rem
	}
}

@media ( max-width :767px) {
	.box--share .button--block {
		max-width: none
	}
}

.box--news-author__image img {
	max-width: 100%;
	height: auto;
}

@media ( max-width :1023px) {
	.box--news-author__image {
		width: 120px;
		box-sizing: content-box;
		margin-top: 5px;
		float: left
	}
}

@media ( max-width :767px) {
	.box--news-author__image {
		width: 80px;
		margin-top: 4px
	}
}

@media ( max-width :1023px) {
	.box--news-author .box--news-author__image+.box--news-author__info {
		margin-left: 150px;
		width: auto;
		float: none
	}
}

@media ( max-width :767px) {
	.box--news-author .box--news-author__image+.box--news-author__info {
		margin-left: 100px
	}
}


/* responsive brand logo in % instead of absolute dimension */
@media (max-width:1023px) {
	.brand svg {
		width: 90%;
		max-width: 113px;
	}
	.news-signature:before {
		height: 36px;
	}
	.news-signature,
		.news-signature .signature-name {
		font-size: 1rem;
		line-height: 1.3rem;
	}
	.news-signature img {
		max-width: 36px;
		max-height: 36px
	}
}
@media (max-width:767px) {
	.brand svg {
		width: 75%;
		max-width: 113px;
	}
	.news-signature {
		margin-top: 0
	}
	.news-signature,
		.news-signature .signature-name {
		font-size: .9rem;
		line-height: 1.2rem;
	}
	.news-signature.news-signature-small .signature-name,
		.news-signature .signature-date {
		font-size: .6rem;
		line-height: .9rem;
	}
}

#login-form input:not([type="checkbox"]).error {
	border-color: #DB3331;
}
#login-form .error-message {
	background: #DB3331;
	padding: 1rem 1.5rem 1rem 3.8rem;
	margin: 0 0 1.5rem;
	position: relative;
	border-radius: 4px;
	display: none;
}
#login-form .error-message.error {
	display: block;
}
#login-form .error-message .error-warning {
	position: absolute;
	top: 0;
	left: 30px;
	bottom: 0;
	margin: auto;
}
#login-form .error-message .error-text {
	font-size: 0.75rem;
	line-height: 1.1rem;
	letter-spacing: 0.4px;
	color: #ffffff;
}

/* family/product long description */
div.rich-text em {font-style: italic;}
div.rich-text b, div.rich-text strong {font-weight: bold;}
div.rich-text ul {
	margin: 0 0 1.5em; }
div.rich-text ol {
	margin: 0 0 1.5em 2.5em;
	list-style-type: decimal;
	list-style-position: outside;
	}
div.rich-text ul li {
	position: relative;
	padding: 0 0 0 2.5em; }
div.rich-text ol li {
	position: relative;
	padding: 0 0 0 0; }
div.rich-text ul li::before {
	content: '';
	width: 1.5em;
	height: 2px;
	background: #000000;
	position: absolute;
	top: 16px;
	left: 0.5em; }
div.rich-text h1, div.rich-text h2, div.rich-text h3, div.rich-text h4 {
	font-family: 'FuturaNewDemi-Reg';
	font-size: 1.15rem;
  	line-height: 1.45rem;
  	margin: 1.5rem 0 1rem; }

.form-result-msg {
  	display: none;
}
.simple-dropdown button:hover {
	color: #DB3331;
	cursor: pointer;
}

/* b2b-link-list */
div.b2b-link-list svg {
	max-width: 1.2em;
	max-height: 1.2em;
	vertical-align: text-top;
}

/* useful reverse mode for SVG */
svg.reversed {
  -webkit-transform: rotateZ(-180deg);
      -ms-transform: rotate(-180deg);
          transform: rotateZ(-180deg);
  right: initial;
  left: 30px; }

/* free sections */
div.free-section table tr {
	border-bottom: 1px solid rgba(0, 0, 0, 0.1);
}

/* video component evolution */
div.grid.video-side .row:first-child {
	background-color: #FFE97E;
	margin: 0;
	display:flex;
	align-items:center;
}
div.grid.video-side.left .row:first-child {
	flex-direction: row-reverse;
}
div.grid.video-side.grey .row:first-child {
	background-color: #dae5ec !important; 
}
div.grid.video-side .row:first-child > div {
	flex: 1 1;
}
div.grid.video-side.right .row:first-child > div {
	margin-left: 25px;
} 
div.grid.video-side.left .row:first-child > div {
	margin-right: 25px;
}
div.grid.video-side .row:first-child > div:first-child {
	min-width:50%;
	margin-left: 0px;
	margin-right: 0px;
}
div.grid.video-side video,
div.grid.video-side .box--video__inner {
	float:right;
	width:100%;
	min-width:min(770px, 50vw);
}
div.grid.video-side video {
	min-height: 300px;
	background-color: #000;
}
div.grid.video-side.right video,
div.grid.video-side.right .box--video__inner {
	float:left;
}
div.grid.video-side.right .box--video__title > p {
	text-align:right;
}
div.video-side div.middle {
    display: inline-block;
    vertical-align: middle;
    margin-top: 1rem;
    margin-bottom: 1rem;
	margin-left:15%;
	margin-right:15%;
}
div.grid.video-side.right .box--video__title > p {
	text-align: right;
}
div#matomo-opt-out label {
	font-size: 0.9rem;
}
body.editMode p.error, body.editMode span.error {
	color: #DB3331;
}

/* didomi related styles */
div#didomi-host div.didomi-popup-backdrop {
	/* enable access to header (for language selection) */
	top: 49px !important;
	bottom: 0px !important;
	height: auto !important;
}
div.youtube-container > .video-consent-overlay{
  position:absolute;
  top:0;
  left:0;
  width: 100%;
  height: 100%;
  background-color: rgb(80,80,80);
  display:flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  box-sizing:border-box;
  color: white;
}
div.youtube-container .video-consent-overlay-text {
  text-align:center;
  margin:2rem 4rem;
}

@media (max-width: 1589px) {
	div.grid.video-side video,
	div.grid.video-side .box--video__inner {
		min-width:min(660px, 50vw);
	}	
}
@media (max-width: 1159px) {
	div.grid.video-side video,
	div.grid.video-side .box--video__inner {
		min-width:min(540px, 50vw);
	}	
	div.grid.video-side.right .row:first-child > div:not(.box--video) {
		margin-left: 10px;
	} 
	div.grid.video-side.left .row:first-child > div:not(.box--video) {
		margin-right: 10px;
	}
}
@media (max-width:1023px) {
	div.grid.video-side video,
	div.grid.video-side .box--video__inner {
		min-width:min(480px, 50vw);
	}
	div.grid.video-side.right .row:first-child > div:not(.box--video) {
		margin-left: 5px;
	} 
	div.grid.video-side.left .row:first-child > div:not(.box--video) {
		margin-right: 5px;
	}
}
@media (max-width:767px) {
	div.grid.video-side video,
	div.grid.video-side .box--video__inner {
		min-width:auto;
	}
    div.grid.video-side.left .row:first-child > div:first-child {
    	height:0px;
    	overflow: hidden;
    }
	div.video-side div.middle {
		margin-left:0;
		margin-right:0;
    }
	div.video-side div.middle {
	    height: initial;
	    display: block;
	    padding: 1.75rem 1.25rem 2rem;
	    padding: 1.75rem 1.25rem 2rem;
	}
	div.grid.video-side .row:first-child {
		flex-wrap: wrap;
	}
	div.grid.video-side .row:first-child > div:not(.box--video) {
		min-width:100%;
		margin-left: 0;
		margin-right: 0;
	}
	div.grid.video-side.right .box--video__title > p {
		text-align: left;
	}
	div.grid.video-side.right .row:first-child > div.box--video {
		margin: 0.1px; /* if 0px, then it is not displayed... */
	}
	div.grid.video-side.left .row:first-child > div.box--video {
		margin: 0.1px; /* if 0px, then it is not displayed... */
	}
}