/* --------------------------------------------------------------
   FORMS
-------------------------------------------------------------- */

form {
	font-family: Lato;
}

.form-row {
	margin:5px 0px 5px 0px;
	position:relative;
}

.separated {
	margin-top: 10px;
	border-top: 1px solid #ffffff
}

.form-row.checkbox label {
	position:absolute;
	white-space: nowrap;
	overflow:hidden;
	text-overflow:ellipsis;
}

.form-container {
	margin:0px 0px 20px 0px;
}

input[type="checkbox"],
input[type="radio"] {
    position:absolute;
    top:-9999px;
}
input[type="checkbox"] + label,
input[type="radio"] + label {
    display:block;
    height:30px;
    line-height:30px;
    overflow:hidden;
    text-overflow: ellipsis;
    text-wrap: nowrap;
    margin:2px 0;
    padding:5px 5px 5px 30px;
    color:#000;
    cursor:pointer;
    background-color:#fff;
/*	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	border-radius: 3px;*/
	position: relative;
}

input[type="checkbox"] + label:after,
input[type="radio"] + label:after {
	content: ' ';
    background-image: url(cdf-img/sprites.svg);
    background-position: -689px -80px;
    background-repeat: no-repeat;
    height: 30px;
    position: absolute;
    width: 30px;
    left:30px;
    margin: 2px 0px 0px -30px;
}

input[type="checkbox"]:checked + label:after,
input[type="radio"]:checked +label:after {
    background-position: -660px -20px;
}



input[type="submit"] {
	background-color:#69b6f0;
	border-color:#69b6f0;
	color:#fff;
}

input[type="submit"]:hover {
	background-color:#2d95e1;
	border-color:#2d95e1;
}

.multiline input[type="checkbox"] + label,
.multiline input[type="radio"] + label {
	height:auto;
	line-height:20px;
	padding-left:30px;
}

/*input[type="radio"]:not(old):checked + label > span:before{
  content     : '✓';
  display     : block;
  width       : 1em;
  color       : rgb(153,204,102);
  font-size   : 0.875em;
  line-height : 1em;
  text-align  : center;
  text-shadow : 0 0 0.0714em rgb(115,153,77);
  font-weight : bold;
}*/

/* --------------------------------------------------

    LIST

-------------------------------------------------- */

.dgt-list-filters {
    background-color: #d8e5f1;
}
.dgt-list-filters > .toggle {
    background-color: #d8e5f1;
}
.dgt-list-count {
    background-color: #cc0033; /*#bbd9f6;*/
    font-family: Lato,sans-serif;
    font-weight:300;
}
.dgt-list-form {
    background-color: #e2e2e2;
}


/* -------------------------
    ITEMS
------------------------- */

.dgt-list .dgt-list-items {
  background-color: #f4f6f9;
/* 2020      background-color: #ffffff;*/
}

.dgt-list .dgt-list-items a:hover,
.dgt-list .dgt-list-items a.current {
    background-color: #fff;
}
.dgt-list .dgt-list-items a.current {
    color: #000;
}
.dgt-list .dgt-list-items a.current .title {
    color: #cc0030;
}

/* -------------------------
    ITEMS in dgt content
------------------------- */

.dgt-content .dgt-list-items {
    background-color: transparent;
    font-size:15px;
}

.dgt-content .dgt-list-items a, .dgt-content .dgt-list-items .nolink {
   display:block;
   color : #000;
   padding: 10px 0;
}

.dgt-content .dgt-list-items a:hover,
.dgt-content .dgt-list-items a.current {
    color : #2d96e1;
}
.dgt-content .dgt-list-items a.current {
    color: #000;
}

/* -------------------------
    NAVBAR
------------------------- */

.dgt-list-navbar {
    background-color: #f4f6f9;
}

.dgt-list-navbar .progress {
    background-color: #ccc;
}

.dgt-list-navbar .progress .thumb {
    background-color: #cc0030;
}

.dgt-list-prev,
.dgt-list-next {
    background-color: #f4f6f9;
}

/* -------------------------
    PREV/NEXT
------------------------- */

.dgt-list-prev:hover,
.dgt-list-next:hover {
    background-color: #ddd;
}

.dgt-list-navbar .prev:hover,
.dgt-list-navbar .next:hover {
    background-color: #ddd;
}


/* --------------------------------------------------

    COVER

-------------------------------------------------- */

.dgt-cover {
    width: 550px;
    background-color: #14283c;
}
.dgt-cover-body {
    width: 275px;
    padding-top: 10px;
}


/* -------------------------
    (MARKUP SPECIFIQUE)
------------------------- */

.block.subject-header {
    padding: 5px 15px 15px 15px;
}
.block.subject-header h1 {
    margin: 0em 0 0.2em 0;
    font-size: 2.2em;
}
.block.subject-header h2 {
    margin: 0.3em 0 0.2em 0;
    font-size: 1.6em;
}


/* -------------------------
    PHOTO
------------------------- */

.dgt-cover-photo img {
    width: 550px;
}
.dgt-cover-photo-blur {
    width: 275px;
}
.dgt-cover-caption {
    right: 275px;
}



/* --------------------------------------------------------------

    TOOLS

-------------------------------------------------------------- */

.menu .search .icon {
	background-image: url(cdf-img/sprites.svg);
    background-position: -180px -50px;
    background-repeat: no-repeat;
    height: 30px;
    position: absolute;
    width: 30px;
	margin : -6px 0 0 -6px;
}

.dgt-cover .menu li.chair a, .dgt-cover .menu li.laboratory a{
	position:relative;
	padding-right: 50px;
}

.dgt-cover .menu li.chair a .icon, .dgt-cover .menu li.laboratory a .icon{
	background-image: url(cdf-img/sprites.svg);
    background-position: -1230px -50px;
    background-repeat: no-repeat;
    height: 30px;
    position: absolute;
    width: 30px;
    right:15px;
    top:5px;
}

/*2020
.lyt-mo .dgt-cover .menu li.chair a .icon, .lyt-mo .dgt-cover .menu li.laboratory a .icon {
    top:10px;
    background-position: -1230px -80px;
}
*/

.dgt-cover .menu li.chair a:hover .icon, .dgt-cover .menu li.laboratory a:hover .icon{
    background-position: -1230px -20px;
}


#tools li a,
#tools li span {
    width: 2.6em;
    height: 2.6em;
    line-height: 2.6em;
    background-color: transparent;
    border:none;
}
#tools li span {
    color: #000;
    background-color: #fff;
}
#tools li a {
    color: #fff;
}
#tools li a:hover {
    color: #fff;
    background-color: #74bcf0;
}
#tools li a.selected {
    color: #fff;
    background-color: #74bcf0;
}


/* --------------------------------------------------------------
	CONTEXTUAL BUTTONS
-------------------------------------------------------------- */

.context-buttons {
	padding: 0;
    height:30px;
    list-style: none;
}

.context-buttons li {
	background-image: none;
    float: left;
    margin-right: 0.5em;
    padding-left: 0;
    list-style: none;
	padding-left:0;
}

.context-buttons li a {
    display: block;
    height: 30px;
    line-height: 30px;
    margin-right: 0;
    padding-left: 30px;
    padding-right: 0;
    position: relative;
}

.context-buttons a .icon {
    background-image: url(cdf-img/sprites.svg);
    background-position: 0px -80px;
    height: 30px;
    left: 0;
    margin-top: 0;
    position: absolute;
    width: 30px;
}

.no-svg .context-buttons a .icon {
    background-image: url(cdf-img/sprites.png);
}

.context-buttons .lang .label {
    width:25px;
    height:25px;
    overflow:hidden;
    margin-left:-25px;
    font-size:0.8em;
    position: absolute;
	color:#999;
	z-index:1;
}

.context-buttons a {
	text-decoration:none;
}

.context-buttons .lang a .icon {
    background: none;
}
.context-buttons .lang a:hover .icon {
    background: none;
}
.context-buttons .lang a:hover .label {
    color : #ff7711 ;
}

.context-buttons .basket.deletefrombasket a .icon {
    background-position: -510px -110px;
}

.context-buttons .basket.deletefrombasket  a:hover .icon {
    background-position: -510px -80px;
}

.context-buttons .basket a .icon {
    background-position: -390px -110px;
}
.context-buttons .basket a:hover .icon {
   background-position: -390px -80px;
}

.context-buttons .mail a .icon {
    background-position: -540px -110px;
}
.context-buttons .mail a:hover .icon {
    background-position: -540px -80px;
}

.context-buttons .print a .icon {
    background-position: -420px -110px;
}
.context-buttons .print a:hover .icon {
   background-position: -420px -80px;
}

.context-buttons .twitter a .icon {
     background-position: -270px -110px;
}
.context-buttons .twitter a:hover .icon {
    background-position: -270px -80px;
}
.context-buttons .facebook a .icon {
    background-position: -300px -110px;
}
.context-buttons .facebook a:hover .icon {
    background-position: -300px -80px;
}
.context-buttons .linkedin a .icon {
    background-position: -330px -110px;
}
.context-buttons .linkedin a:hover .icon {
    background-position: -330px -80px;
}

.context-buttons .linkedin {
	display:none;
}

/* -------------------------------
   VIDEO JS
------------------------------- */

.block.video {
}
.flashplayer embed{
	width:100%;
	height:auto;
}

.flashplayer object{
	width:100%;
	height:auto;
}

.video-js {
/*    height: 0;
    padding-bottom: 56.25%;
    overflow:hidden;
    */
}
.video-js {width:100% !important;
	height: 0 !important;
    padding-bottom: 56.25%;
    overflow:hidden;
}

.video-js.vjs-fullscreen {
    padding-bottom: 0;
}

.vjs-poster{
	background-size: cover;
}

.vjs-fullscreen {padding-top: 0px}
.vjs-poster {
 /*	max-height:none;*/
}
/*
 patch player audio -  not hiding image & toolbar

.audio .video-js {
    padding-bottom: 48%;
    background-color:#fff;
}
.audio .vjs-default-skin .vjs-big-play-button {
	top:40%;
}

.audio .vjs-default-skin .vjs-big-play-button span{
	width:30px;
	background-position: 68px -13px;
}

.audio .vjs-poster {
 	display:block !important;
}
.audio .vjs-fade-out {
    visibility: visible !important;
    opacity: 1!important;
}

.audio .vjs-default-skin .vjs-controls {
	visibility: visible !important;
    opacity: 1 !important;
}
*/


/*
.page.list .section, .page.menu .section {
	background-color: #f2f2f2;
}*/
/*
.vjs-default-skin .vjs-big-play-button
{
	-webkit-box-shadow: none;
	-moz-box-shadow: none;
	box-shadow: none;
	opacity:0.80;
	width:65px;
	height:65px;
}

.vjs-default-skin .vjs-big-play-button {
	display: block;
	z-index: 2;
	position: absolute;
	bottom: 0;
	left: 0;
	width: 5.0em;
	height: 5.0em;
	margin: 10% 0 0 4%;
	text-align: center;
	vertical-align: center;
	border: .15em solid white;
	cursor: pointer!important;
	opacity: .90;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border-radius: 5px;
}

.vjs-default-skin div.vjs-big-play-button span {
	position: absolute;
	top: 50%;
	left: 50%;
	display: block;
	width: 35px;
	height: 42px;
	margin: -20px 0 0 -15px;
}

*/

.vjs-default-skin .vjs-big-play-button {
    top: 50%;
    /* bottom: 50%; */
    left: 50%;
    width: 50px;
    height: 50px;
    margin-top: -25px;
    margin-left: -25px;
    border-radius: 50%;
    border: 0px;
    background-color: #226392;
}

.video-js .vjs-control-bar {
    background-color: #226392;
}
.video-js .vjs-play-control {
    border: 0px;
}
.video-js .vjs-big-play-button:focus, .video-js:hover .vjs-big-play-button {
    background-color: rgba(115,133,159,.5);
    transition: all 0s;
    background-color: #226392;
    box-shadow: 0 0 0 5px rgba(0,179,255,.5)
}

.vjs-icon-placeholder:before {
    line-height: 50px;
}

.vjs-default-skin .vjs-big-play-button:before {
	line-height: 1.3em;
	text-shadow: .05em .05em .1em #000;
}

/* --------------------------------------------------------------
   Audio
-------------------------------------------------------------- */

audio {
	width:100%;
	background-color: #000;
	border-top: solid 6px #2D96E1;
}

.audio-player, .video-player {
	width:100% !important;
	height: 0 !important;
    padding-bottom: 55%;
    overflow:hidden;
    position:relative;
}

a.audio {
    height: 0;
    display: block;
    margin: 1em 0;
    position: relative;
    padding-bottom: 55%;
    background-color: #ddd;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-column-break-inside: avoid;
    -moz-column-break-inside: avoid;
    column-break-inside: avoid;
    page-break-inside: avoid;
}

a.audio .icon {
    width: 26px;
    height: 26px;
    position: absolute;
    bottom: 15px;
    left: 15px;
    margin-top: -20px;
    margin-left: 0px;
    border: 2px solid #fff;
    background-color: #000;
    background-color: rgba(0,0,0,0.5);
    border-radius: 15%;
	opacity: .99;
}

a.audio .icon:after {
    content: ' ';
    display: block;
    width: 0;
    height: 0;
    border-top: 7px solid transparent;
    border-left: 11px solid #fff;
    border-bottom: 7px solid transparent;
    position: absolute;
    top: 50%;
    left: 50%;
    margin-top: -7px;
    margin-left: -5px;
}

a.audio img, .audio-player img {
    margin: 0;
    position: absolute;
    top: 0;
    right: 0;
    width: 100%;
}

a.audio img {
}

.multiplelink .media-infos{
	display: block;
    position: absolute;
    padding: 5px;
    color: #fff;
    bottom: 14px;
    left: 50px;
    right: 15px;
    /*height: 18px;*/
    overflow: hidden;
    line-height: 18px;
    text-overflow: ellipsis;
    white-space: nowrap;
    background-color: #226392;
    opacity:0.9;
    border-radius: 2px;
}

.multiplelink a:hover .media-infos{
    height: auto;
    text-overflow: ellipsis;
    white-space: normal;
    /*bottom:10px;*/
}

/* -------------------------------
  image container ratio OVERFLOW 16/9 = 55%
------------------------------- */

.img-container {
	width:100% !important;
	height: 0 !important;
    padding-bottom: 55%;
    overflow:hidden;
    position:relative;
}
.img-container img.img-ratio {
    margin: 0;
    position: absolute;
    top: 0;
    right: 0;
    width: 100%;
    height:auto;
}

.audio-wrapper .img-container {
    padding-bottom: 47.5%;
}

.media-wrapper {
	margin:16px 0;
}

/* --------------------------------------------------------------
   TILES
-------------------------------------------------------------- */

.dgt-tiles .tile {
    width: 300px;
    height: 165px;
}

.dgt-tiles .tile:before {
	top:0;
 	background-image: url(cdf-img/bg-tiles.png);
    background-position: left bottom;
    background-repeat: repeat-X;
    background-color: transparent;
}

.dgt-tiles .tile:hover:before {
    background-color: #000;
}

.dgt-tiles .tile-author{
	font-family: 'Lato', sans-serif;
    font-weight: 400;
    display:block;
    padding: 15px;
    padding-right: 52px;
    z-index: 2;
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    color: #fff;
    font-size: 15px;
    line-height: 1.25;
}

.dgt-tiles .tile-infos {
    top: 0px;
    font-size: 18px;
}

.lyt-mo .dgt-tiles .tile-author{
    font-size: 13px;
    left: 160px;
    padding: 10px 15px;
    display: block;
    /* top: 0; */
    bottom: 0;

}

.lyt-mo .dgt-tiles .tile-infos {
    font-size: 13px;
    display:block;
    height: 35px;
    overflow: hidden;
}

/* --------------------------------------------------------------
   LISTS
-------------------------------------------------------------- */

.dgt-list li span {
	margin-bottom: 2px;
}

.dgt-list li .one {
	text-overflow: ellipsis;
	overflow: hidden;
	white-space: nowrap;
	display:block;
}

.dgt-list .date, .dgt-list .url,  .dgt-list .place {
	font-family: 'Lato';
	font-weight: 300;
	display: block;
	font-size : 14px;
	color: #666;
	text-overflow: ellipsis;
	overflow: hidden;
	white-space: nowrap;
}

.dgt-list .lecturer {
	font-family: 'Lato';
	font-weight: 300;
	display: block;
	font-size : 16px;
	text-overflow: ellipsis;
	overflow: hidden;
	white-space: nowrap;
}

.dgt-list .title {
	display: block;
	font-weight:400;
	font-size : 16px;
	margin-top:2px;
	margin-bottom:-1px;
	/*letter-spacing: 0.03em;*/
}

.dgt-list .description {
	font-weight:400;
	color: #666;
	font-style:italic;
}

.dgt-list .presentation .title {
	font-size : 20px;
	margin-bottom:10px;
}

/* --------------------------------------------------------------
   SIMPLE LINK
-------------------------------------------------------------- */
.listeliens, .simplelink, .multiplelink, .multiplecontact {
    font-family: 'Lato', sans-serif;
    font-weight:300;
}

.simplelink {
	display:block;
	margin-bottom:1.5em;
	position:relative;
	font-weight:300;
	padding: 5px 0px 5px 0px;
}

.simplelink.pdf {
	display:block;
	padding: 5px 0px 5px 30px;
	margin: 2px 0;
	position:relative;
	color:#000;
	margin-bottom:16px;
}

.listeliens li {
	padding: 5px 0px;
	list-style: none;
}

.listeliens{
	padding-left:0;
}

/* --------------------------------------------------------------
   MULTIPLE LINK
-------------------------------------------------------------- */




.multiplelink.mosaic li{
	display:block;
	float:left;
}

.multiplelink ul{
 margin-top: 0;
}

.multiplelink .puce {
	padding-left:0;
}
.multiplelink .puce li{
	list-style: none;
	padding: 5px 0;
}

.multiplelink.mosaic .puce li{
	padding: 0;
	margin:2px;
}

.multiplelink .picto {
	padding-left:0;
}

.multiplelink.mosaic li a.video{
	margin:0;
	font-size:75%;
}

@media screen and (min-width: 1080px) {
 .multiplelink.mosaic2 .puce li:nth-child(odd){
  margin:12px 12px 12px 0px;
 }
 .multiplelink.mosaic2 .puce li:nth-child(even){
  margin:12px 0px 12px 12px;
 }

 .multiplelink.mosaic2 li{
  width:48%;
 }
}
.multiplelink .picto li{
	list-style: none;
	padding:0;
	background: none;
}

.multiplelink.side .picto li{
	width:50%;
	float:left;
}

@media screen and (min-width: 1180px) {
	.multiplelink.side .picto li{
	width:33.333%;
}

}

.lyt-mo .multiplelink.side .picto li{
	width:100%;
}

.multiplelink.side:after{
	visibility: hidden;
	display: block;
	font-size: 0;
	content: " ";
	clear: both;
	height: 0;
}

.multiplelink .picto a{
	display:block;
	padding: 5px 0px 5px 30px;
	margin: 2px 0;
	position:relative;
	color:#000;
}

.multiplelink .picto a:hover{
    text-decoration: none;
}

.multiplelink.side .picto li a{
	overflow-x: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    margin-right:10px;
}
.multiplelink .picto .icon, .simplelink.pdf .icon{
    background-image: url(cdf-img/links.svg);
    background-position: -175px -125px;
    background-repeat: no-repeat;
    height: 25px;
    left: 0;
    top: 2px;
    position: absolute;
    width: 25px;
}

.multiplelink .picto a:hover .icon{
    background-position: -175px -150px;
}

.nosvg .multiplelink .picto .icon {
    background-image: url(cdf-img/links.png);
}

.multiplelink .picto .pdf .icon, .multiplelink .picto .support .icon, .multiplelink .picto .download .icon, .simplelink.pdf .icon{
    background-position: -150px -125px;
}
.multiplelink .picto .pdf  a:hover .icon, .multiplelink .picto .support a:hover .icon, .multiplelink .picto .download a:hover .icon, .simplelink.pdf:hover .icon{
    background-position: -150px -150px;
}

.multiplelink .picto .video .icon{
    background-position: -125px -125px;
}
.multiplelink .picto .video a:hover .icon{
    background-position: -125px -150px;
}

.multiplelink .picto .audio .icon{
    background-position: -100px -125px;
}
.multiplelink .picto .audio a:hover .icon{
    background-position: -100px -150px;
}

.multiplelink .picto .chair .icon{
    background-position: -250px -125px;
}
.multiplelink .picto .chair a:hover .icon{
    background-position: -250px -150px;
}

.multiplelink .picto .support.ppt .icon, .simplelink.ppt .icon, .multiplelink .picto .support.pptx .icon, .simplelink.pptx .icon, .multiplelink .picto .support.pps .icon, .simplelink.pps .icon, .multiplelink .picto .support.ppsx .icon, .simplelink.ppsx .icon{
    background-position: -276px -125px;
}
.multiplelink .picto .support.ppt a:hover .icon, .simplelink.ppt .icon, .multiplelink .picto .support.pptx a:hover .icon, .simplelink.pptx:hover .icon, .multiplelink .picto .support.pps a:hover .icon, .simplelink.pps:hover .icon, .multiplelink .picto .support.ppsx a:hover .icon, .simplelink.ppsx:hover .icon{
    background-position: -276px -150px;
}

.list-icon {
    background-image: url(cdf-img/links.svg);
    background-position: 0px -202px;
    background-repeat: no-repeat;
    height: 15px;
    width: 15px;
    overflow:hidden;
    display:block;
    float: left;
    margin-right:5px;
}

.nosvg .list-icon {
    background-image: url(cdf-img/links.png);
}

.list-icon.list-icon-video {
    background-position: -52px -202px;
}
.list-icon.list-icon-audio {
    background-position: -28px -202px;
}
.list-icon.list-icon-pdf {
    background-position: -77px -202px;
}
.list-icon.list-icon-ext {
    background-position: -200px -202px;
}

.multiplelink .picto .calalog,.multiplelink  .picto .catalog {
    background-image: url(cdf-img/catalog.png);
    background-position: 0px 0px;
    background-repeat: no-repeat;
}

.multiplelink .picto .edocs {
    background-image: url(cdf-img/e-doc.png);
    background-position: 0px 0px;
    background-repeat: no-repeat;
}

.filesize {
	font-size:8px;
}

.side .filesize {
	display:none;
}

/* --------------------------------------------------------------
   Contact list
-------------------------------------------------------------- */

ul.contact {
	list-style:none;
	padding:0;
}

ul.contact li{
    position: relative;
    min-height: 30px;
}

ul.contact a {
	display: block;
}

ul.contact a .icon{
	background-image: url(cdf-img/sprites.svg);
    background-position: -545px -84px;
    background-repeat: no-repeat;
    height: 30px;
    position: absolute;
    width: 30px;
    top:0;
    left:0;
}

ul.contact .details, ul.contact .details  {
	padding-left:30px;
	display: block;
}

.nosvg ul.contact a .icon {
    background-image: url(cdf-img/links.png);
}



/* --------------------------------------------------------------
   Block Button
-------------------------------------------------------------- */

.block.button {
	margin:0 0 40px 0;
}
.block.button a, .block.button span {
	display:block;
}
.block.button a {
	color: #000;
}
.block.button a:hover {
	color: #2d96e1;
	text-decoration:none;
}

.block.button .image {
	position:relative;
	margin: 0 0 5px 0;
}

.block.button .sticker{
	font-family: "Lato", sans-serif;
	font-size:10px;
	position:absolute;
	bottom:0;
	background-color: #CC0033;
	line-height:14px;
	padding: 2px 5px;
	text-transform:uppercase;
	color:#fff;
}

.block.button .title{
	font-family: "Lato", sans-serif;
	font-size:20px;
	font-weight:300;
	margin:5px 0;
}
.block.button .description{
	font-size:14px;
	margin:5px 0;
}

/* --------------------------------------------------------------
   BASELINE CHAIR
-------------------------------------------------------------- */
.chair-baseline {
	font-family: 'Alegreya', serif;
	margin-bottom: 10px;
}

.chair-baseline .icon {
    background-image: url(cdf-img/links.svg);
    background-position: -250px -176px;
    background-repeat: no-repeat;
    height: 25px;
    left: 0;
    top: 1px;
    position: absolute;
    width: 25px;
}

.chair-baseline a{
	display:inline-block;
	padding: 5px 0px 5px 5px;
	margin: 0;
	position:relative;
	font-weight:300;
	font-size: 100%;
	color: black;
}
.chair-baseline a:first-child {
 padding-left: 30px;
}

.chair-baseline a:hover{
    text-decoration: underline;
    color:#2d96e1;
}
.chair-baseline a:hover .icon{
    background-position: -250px -125px
}



/* --------------------------------------------------------------
   CUSTOM DEFINITIONS
-------------------------------------------------------------- */

.notvisible {
	display:none;
}

/* --------------------------------------------------------------
   BIBLIO
-------------------------------------------------------------- */

.page.publication .reference,.page.publication  .weburl, .page.publication .author, .page.publication .pubdate, .page.publication .idpivot {
    font-family: 'Lato', sans-serif;
    font-weight:400;
    margin-bottom:10px;
}

.page.publication .publication {
	font-weight:600;
	display:block;
	font-style:italic;
	margin-bottom:10px;
}

.page.publication .reference .publication {
	font-weight:600;
	display:inline;
}

.page.publication .reference .pubdate {
	display:block;
}

.author .label {
	color:#666;
	text-transform: capitalize;
}

.author {
	padding: 0;
	margin: 0;
}
.author:after {
	visibility: hidden;
	display: block;
	font-size: 0;
	content: " ";
	clear: both;
	height: 0;
	padding:0;
	margin:0;
}

.author li {
	list-style: none;
	float:left;
}
.author li a{
	color:#2d96e1;
}
.author li a:hover{
	text-decoration:underline;
}
.author li:after {
	content:'~';
	padding-left:6px;
	padding-right:6px;
}

.author li:last-child:after {
	content:'';
	padding-right:0px;
}

.author li.label:after {
	content:':';
}

/* --------------------------------------------------------------
   CALENDAR
-------------------------------------------------------------- */
.calendar{
	font-family: Lato;
}

.dgt-agenda .calendar.dgt-list-items{
	background-color: #226392;
	color: #fff
}

.dgt-agenda .calendar.dgt-list-items a:hover {
    background-color: #1f5780;
}

.dgt-agenda .calendar.dgt-list-items a {
 border:none;
}

.calendar table{
/*	border-bottom: 1px #dedede dotted;*/
	font-size:12px;
	margin-left: auto;
	margin-right: auto;
}

.calendar .month{
	padding: 10px;
	margin: 20px 0;
	-webkit-box-sizing: border-box;
	   -moz-box-sizing: border-box;
	        box-sizing: border-box;
}

.lyt-mo .calendar li {
	clear: both;
}

.lyt-mo .calendar .month{
	width: 50%;
	float: left;
	clear: none;
}

.lyt-mo .calendar .month:nth-of-type(even) {
	padding-left: 30px;
}
.lyt-mo .calendar .month:nth-of-type(odd) {
	padding-right: 30px;
}

@media only screen and (max-width:600px) {
	.lyt-mo .calendar .month{
		width: 100%;
		float: none;
		padding-left: 10px !important;
		padding-right: 10px !important;
	}
}

.calendar h3{
	font-size: 1.2em;
	margin-bottom:0.5em;
	text-align:center;
	font-weight: 500;
	color: #ffffff
}

.calendar .today h3{
	color: #cc0033;
}


.calendar th
{
	text-transform: uppercase;
	border-bottom: 1px #cccccc dotted;
	padding-bottom:5px;
	font-size:10px;
	color:#999;
	text-align:center;
}

.calendar.dgt-list-items td span,
.calendar.dgt-list-items td a {
	display: block;
	padding: 8px;
	text-decoration: none;
	border:none;
	text-align: center;
	margin: 2px;
	border-radius: 50%;
}

.calendar.dgt-list-items td.disable {
	color:#bbb;
	font-style:italic;
}
.calendar.dgt-list-items td a {
	background-color: #96caf0;
}

.calendar.dgt-list-items td a.today {
	background-color: #2D96E1;
	color: #ffffff;
}
.calendar.dgt-list-items td span.today {
	border: 2px solid #2D96E1;
	padding-top: 6px;
	padding-bottom: 6px;

}
.calendar.dgt-list-items td a.selected {
	background-color: #cc0033;
	color: #ffffff;
}

.lyt-ho .calendar .nextyear {
	display:block;
	min-height:600px;
}
/* -------------------------------
   forms smartlabel
------------------------------- */

/* all #2e5e8b; */
::-webkit-input-placeholder { font-weight:300;font-style:italic;color:#aaaaaa; }
::-moz-placeholder { font-weight:300;font-style:italic;color:#aaaaaa; } /* firefox 19+ */
:-ms-input-placeholder { font-weight:300;font-style:italic;color:#aaaaaa; } /* ie */
input:-moz-placeholder { font-weight:300;font-style:italic;color:#aaaaaa; }

.registration-section {
	background-color: #fff;
}

.form-row:after {
  content:"";
  display:table;
  clear:both;
}

.smartlabel .form-element{
	position:relative;
}

.smartlabel .form-element:hover input[type=text]{
	background-color: #f2f2f2;
	cursor: pointer;
}

.smartlabel .form-element .errormessage {
	position:absolute;
	z-index:1000;
	bottom:0;
	right:0px;
	background-color: #bb0000;
	color:#fff;
	font-size:10px;
	line-height:12px;
	padding:2px 6px;
	overflow:hidden;
	height:12px;
}

.smartlabel .form-element .errormessage.noerror {
	display:none;
}

.smartlabel .text-field label
{
/*	position: absolute;
	top: -9999px;*/
	font-size: 0.9em;
	color: #000;
	white-space: nowrap;
	text-overflow: ellipsis;
	overflow:hiden;
}

.smartlabel .text-field label.visible {
	position:absolute;
	top: 1em;
	left:2px;
}

.smartlabel input {
	width: 100%;
	line-height: 1.3em;
	font-size: 1.0em;
	border: 1px solid #8bc5f0;
	background-color: #fff;
	margin:0 0 1px 0;
/*	padding-top:1.1em;*/
	padding: 0 12px;

/*	margin-top:5px;*/
}

.smartlabel .inline.form-element {
	float:left;
}
@media screen and (max-width: 640px) {
 float: none;
}
.check-field input {
	position:absolute;
	left:7px;
	top:9px;
	width:22px;
}

.check-field label {
	padding-left:25px;
	display:block;
}

.inline50 {
	width:50%;
}
.inline30 {
	width:33.333333%;
}
.inline70 {
	width:70%;
}

@media screen and (max-width: 640px) {
.inline50 {
	width:100%;
 }
}


.smartlabel input[type=submit] {
	background-color: #2e5e8b;
	color:#fff;
	margin-top:1.5em;
	padding: 0.5em;
	cursor:pointer;
	border-radius:0.3em;
	border:none:
}
.smartlabel input[type=submit]:hover {
	background-color: #156598;
}

.high input {
	font-size:130%;
}

.data-card {
	background-color: #F2F2F2;
	padding: 10px;
	margin-bottom:15px;
}

.data-element {
	padding-bottom:5px;
}

.smartlabel input[type="checkbox"] + label,
.smartlabel input[type="radio"] + label {
    background-color:transparent;
    padding: 2px 8px 2px 25px;
    margin: 2px 0;
}

.smartlabel input[type="checkbox"]:checked + label,
.smartlabel input[type="radio"]:checked + label {
/*    background-color:transparent;
    padding: 5px 25px 5px 30px;*/
}

.dgt-search-form,
.smartlabel {
	   padding:10px;
    background-color: #226392;
    color: #fff;
    border-radius: 5px;
    margin-bottom:15px;
}

.dgt-search-form .separated{
	border-color:#fff;
}

.dgt-search-form input[type="checkbox"] + label,
.dgt-search-form input[type="radio"]:checked + label {
	color:#fff ;
}

.smartlabel input[type="checkbox"] + label,
.smartlabel input[type="radio"]:checked + label {
	color:#fff ;
}

.smartlabel input[type="checkbox"] + label::first-letter,
.smartlabel input[type="radio"]:checked + label::first-letter {
	text-transform: uppercase;
}

.dgt-search-form input[type="text"]{
	border:none;
	color:#000;
}

.search-form-details {
	height:0;
	overflow:hidden
}
.slide-in .search-form-details{
	height:auto;
	overflow:show;
    -moz-transition-duration: 20.3s;
    -webkit-transition-duration: 20.3s;
    -o-transition-duration: 20.3s;
    transition-duration: 20.3s;
    -moz-transition-timing-function: ease-in;
    -webkit-transition-timing-function: ease-in;
    -o-transition-timing-function: ease-in;
    transition-timing-function: ease-in;
}

.input-fulltext {
	position:relative;
}

.input-fulltext .icon {
	position:absolute;
	display:block;
    background-image: url(cdf-img/sprites.svg);
    background-position: -180px -80px;
    background-repeat: no-repeat;
    height: 28px;
    width: 30px;
	top:1px;
	right:20px;
	margin-right:-18px;
	background-color: #fff;
}

.input-fulltext input:focus+.icon:hover{
    background-position: -180px -20px;
    cursor:pointer;
}

.smartlabel .hidedetails {
	position:absolute;
	bottom:0;
	right:0;
}

.smartlabel .form-row h4 {
    color: #8bc5f0;
    font-weight: 600;
    margin: 15px 10px 0 10px;
}

.toggle .controller {
	padding:7px 0px 0px 14px;
	font-size:11px;
	position:relative;
	height:15px;
	color:#fff;
	display:inline-block;
	cursor:pointer;
}
.controller .icon {
	background-image: url(cdf-img/sprites.svg);
    background-position: -218px -50px;
    background-repeat: no-repeat;
    height: 30px;
    position: absolute;
    width: 10px;
    left:3px;
    top:0px;
}
.nosvg .controller .icon {
	background-image: url(cdf-img/sprites.svg);
}
.controller.out .icon {
 	transform:         rotate(-180deg); /* CSS3 */
 	-moz-transform:    rotate(-180deg); /* Firefox */
 	-webkit-transform: rotate(-180deg); /* Webkit */
 	-o-transform:      rotate(-180deg); /* Opera */
	-ms-transform:     rotate(-180deg); /* IE 9 */}
}
.toggle-out .out, .toggle-in .in{
	display:inline-block !important;
}
.toggle-out .in, .toggle-in .out{
	display:none !important;
}

/* advanced search */

.block a.advanced-search-button {
 margin-top: 15px;
 padding-left: 10px;
 display: block;
 color:#eee;
 position: relative;
}
.block a.advanced-search-button:hover {
  color:white;
  text-decoration: none;
}

.controlled {
 display:none;;
}

.block .advanced-search-open .controlled {
 display:block;
}

.block a.advanced-search-button .icon {
  cursor: pointer;
  width: 40px;
  height: 15px;
  position: relative;
  margin: 0 10px 0 0;
  display: inline-block;
}

.block a.advanced-search-button  .icon::before,
.block a.advanced-search-button  .icon::after {
  content: "";
  position: absolute;
}

.block a.advanced-search-button  .icon::before {
  width: 100%;
  background-color: #777;
  border-radius: 30px;
  height: 100%;
  transition: all 0.25s ease-in-out;
}

.block a.advanced-search-button  .icon::after {
  width: 21px;
  height: 21px;
  margin-top: -3px;
  background-color: #FAFAFA;
  border-radius: 21px;
  right: 19px;
  box-shadow: 0px 0px 1px 0px rgba(0, 0, 0, 0.75);
  transition: all 0.2s;
}

.block a.advanced-search-button  .icon:hover::before {
  background-color: rgba(100,100,100,0.75);
}


/* Checked styles */
.block .advanced-search-open .advanced-search-button .icon::after {
  right: 0;
}

.block .advanced-search-open .advanced-search-button .icon::before {
  background-color: rgb(100, 189, 99);
}

.block .advanced-search-button {
  display: block;
  // align-items: center;
  margin-bottom: 10px;
  cursor: pointer;
}

.arrow-up {
  width: 0;
  height: 0;
  border-left: 15px solid transparent;
  border-right: 15px solid transparent;

  border-bottom: 15px solid white;
}

.arrow-down {
  width: 0;
  height: 0;
  border-left: 15px solid transparent;
  border-right: 15px solid transparent;

  border-top: 15px solid white;
}

.arrow-right {
  width: 0;
  height: 0;
  border-top: 15px solid transparent;
  border-bottom: 15px solid transparent;

  border-left: 15px solid white;
}

.arrow-left {
  width: 0;
  height: 0;
  border-top: 15px solid transparent;
  border-bottom: 15px solid transparent;

  border-right:15px solid white;
}


/* -------------------------------
   mecenat
------------------------------- */

.mecene {
	margin: 20px 10px;
	font-size: 0.8em;
	font-style: italic;
}

.mecene.TOTAL {
    min-height: 65px;
    padding-top: 60px;
    padding-left: 5px;
    background-image: url(../images/logos/TOTAL.png);
    background-repeat: no-repeat;
    background-position: 5px 0px;
}

.mecene.AFD {
	min-height: 60px;
	padding-left: 60px;
	background-image: url(../images/logos/AFD.png);
	background-repeat: no-repeat;
	background-position: 8px 2px;
}

.mecene.INRIA {
	min-height: 40px;
    padding: 35px 8px 10px 8px;
	background-image: url(../images/logos/INRIA.png);
	background-repeat: no-repeat;
    background-position: 8px 2px;
}

.mecene.SPF {
    min-height: 40px;
    padding: 90px 8px 10px 8px;
    background-image: url(../images/logos/SPF.png);
    background-repeat: no-repeat;
    background-position: 8px 2px;
    color: white;
}

.mecene.AUF {
	min-height: 40px;
    padding: 75px 8px 10px 8px;
	background-image: url(../images/logos/AUF.png);
	background-repeat: no-repeat;
	background-position: 8px 2px;
}

.mecene.FCT {
	min-height: 40px;
    padding: 75px 8px 10px 8px;
	background-image: url(../images/logos/FCT.png);
	background-repeat: no-repeat;
	background-position: 8px 2px;
}

.mecene.bettencourt_schueller {
    min-height: 40px;
    padding: 55px 8px 10px 8px;
    background-image: url(../images/logos/bettencourt_schueller.png);
    background-repeat: no-repeat;
    background-position: 8px 2px;
    color: white;
}

/* --------------------------------------------------------------

	BLOCK PROMO

-------------------------------------------------------------- */

.lyt-ho .index_site .section {
	border-left:none;
}

.dgt-cover {
	position:relative;
}

.dgt-home-cover {
	margin:0;
	padding:0px;
	position:relative;
	height: 100%;
	background-color: #063D51;
	overflow: hidden;
	background-image: url(../images/subject/home-cover-background.jpg);
}

.dgt-home-cover .promo-cover{
	position:absolute;
	top : 0;
	bottom: 0;
	right: 0;
	left:0;
	margin:0;
	padding: 0;
	overflow:hidden;
}

.promo img{
	margin:0;
	padding:0;
	width:100%;
}
.dgt-home-cover .promo-body{
	position:absolute;
	top : 0px;
	left: 50%;
	bottom: 0px;
	right: 00px;
	padding:20px;
	overflow:hidden;
	z-index:100;
	font-family:"Lato";
	font-weight:300;
	font-size:18px;
	color:#fff;
	background-color:rgba(0,0,0,0.05);
}
.dgt-home-cover .promo-body .count{
	font-size:30px;
	font-weight:300;
}
.dgt-home-cover .promo-body ul {
	padding:0;
	text-align:center;
	list-style:none;
}
.dgt-home-cover .promo-body li span {
	margin-top:18px;
	display:block;
}

.dgt-home-cover .promo-body .fondation{
	background-image: url(cdf-img/sprites.png);
	background-position: -30px -200px;
	background-repeat: no-repeat;
	height: 75px;
	width: 125px;
	display:block;
	margin : 25px auto 20px auto;
}

.dgt-home-cover .promo-body a.button
{
	padding: 15px 25px;
	display: block;
	margin: 30px 20px 20px 20px;
	border: 1px #fff solid;
	-webkit-border-radius: 4px;
	-moz-border-radius: 4px;
	border-radius: 4px;
	text-align:center;
}

.dgt-home-cover .promo-body a.button:hover
{
	border: 1px #2d96e1 solid;
}

.nosvg .dgt-home-cover .promo-body .fondation{
  background-image: url(cdf-img/sprites.png);
}

.dgt-home-cover .promo-body .fondation span{
	display:none;
}

.promo-body-card{
	overflow:hidden;
	z-index:100;
	font-family:"Lato";
	font-weight:300;
	font-size:16px;
	color:#000;
	background-color:#fff;
}

.lyt-ho .promo-body-card{
	position:absolute;
	left: 15%;
	right: 15%;
	bottom: 10%;
}

.lyt-ho .dgt-cover .promo-body-card{
	left: 3%;
	right: 53%;
	bottom: 3%;
}

.dgt-cover .promo-body-card{
	text-align:center;
}
.dgt-cover .promo-body-card p{
    margin: 0.5em 0 0.5em 0;
}
.lyt-mo .promo-body-card{
	left: 30px;
	right: 30px;
}
.lyt-mo .dgt-home-cover .promo-body-card{
	position:absolute;
	left:0;
	right:0;
	bottom:0px;
	margin:30px;
}
.lyt-mo .dgt-home-cover .promo-body-card p, .lyt-mo .dgt-home-cover .promo-body-card h2{
	padding:5px;
}

.promo-body-card a{
	padding:30px 15px 15px 15px;
	display:block;
	color:#000;
}
.lyt-mo .promo-body-card a{
	padding:0px 0 5px 0;
	background-color: #f2f2f2;
}

.promo-body-card a strong{
	text-decoration: underline;
}

.promo-body-card a:hover, .promo-body-card a:hover h2{
	color:#2d96e1;
	text-decoration:none;
}

.promo-body-card h2, .promo-body-card h3{
	font-size: 1.0em;
}


.promo-body-card img{
	height:40px;
	width:auto;
	max-width: 100%;
}

.dgt-cover .promo-body-card img{
	width: 50px;
	height:50px;
	border-radius: 50%;
	margin: 0 auto;
}

.promo-body-card .sticker, .promo-body-card .etiquette{
	font-family: "Lato", sans-serif;
	font-size:10px;
	background-color: #CC0033;
	line-height:14px;
	padding: 2px 5px;
	text-transform:uppercase;
	color:#fff;
	text-align: left;
}
.lyt-ho .promo-body-card .sticker, .lyt-ho .promo-body-card .etiquette{
	position:absolute;
	top:0;
	left:0;
}
.dgt-cover .promo-body-card .etiquette {
	width:100%;
	display:block;
	padding-left:15px;
}

#left-popin
{
/*	display:none;*/
	position:absolute;
	background: rgba(36,58,81,0.80);
	bottom:0;
	left:0;
	padding: 15px 65px 15px 15px;
	z-index:1000;
}

.lyt-mo #left-popin {
	position:fixed;
	line-height: 15px;
	white-space: normal;
}


.highlight .promo-cover {
	background-color: #f3c733;
}

#left-popin a
{
	color:#fff;
	display:block;
	font-family:lato;
	font-size:13px;
}

#left-popin a:hover
{
	text-decoration:underline;
}

#left-popin .icon
{
    background-image: url(cdf-img/sprites.svg);
    background-position: -570px -50px;
    height: 30px;
    right: 0;
    top:0;
    margin-top: 0;
    position: absolute;
    width: 30px;
    display:block
}

#left-popin .icon:hover
{
    background-position: -570px -20px;
    cursor:pointer;
}


#right-popin
{
	display:none;
	position:absolute;
	background: rgba(162,138,98,0.80);
	bottom:36px;
	right:146px;
	padding: 15px 65px 15px 15px;
	z-index:1000;
	width:200px;
}

#right-popin a
{
	color:#fff;
	display:block;
	font-family:lato;
	font-size:13px;
}

#right-popin a:hover
{
	text-decoration:underline;
}

#right-popin .icon
{
    background-image: url(cdf-img/sprites.svg);
    background-position: -570px -50px;
    height: 30px;
    right: 0;
    top:0;
    margin-top: 0;
    position: absolute;
    width: 30px;
    display:block
}

#right-popin .icon:hover
{
    background-position: -570px -20px;
    cursor:pointer;
}




.home-content.news-list .block {
	margin:15px;
}

.lyt-ho .dgt-home.dgt-home-cover {
	width:520px;
}

/* cover mobile */

.lyt-mo .dgt-home-cover {
	height: 300px;
}

.lyt-mo .dgt-home-cover img {
	margin-top: -50px;
	width:100%;
}

.lyt-mo .dgt-home-cover {
	height: 300px;
}
.lyt-mo .dgt-home-cover .promo-body {
	padding:0 20px;
}
.lyt-mo .dgt-home-cover .promo-body li  {
	display:block;
	font-size:80%;
}

.lyt-mo .dgt-home-cover .promo-body li span {
	margin-top:10px;
}


/* dgt-form-list */

.dgt-form-list {
    margin: 0;
    padding: 0;
    list-style: none;
}

.dgt-form-list li{
    margin: 0 0 10px 0;
}

/* dgt-innerpage invisible link */

.dgt-innerpage {
	display:none;
}

.card_subtitle {
    overflow: hidden;
    height: 86px;
}
.card_title {
}
.card_one {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.card_title_savoirs {
   color: currentColor;
   height: 72px;
}

.search-line-results .card a {
 display: block;
 position: relative;
}

.card_line_title {
    margin-bottom: 0px;
    font-family: 'Alegreya', serif;
}

.search-line-results .card_line_image {
    position: absolute;
    width: 80px;
    top : 5px;
    left: 0px;
}
.search-line-results .card_line_text {
    position: relative;
    padding-left: 110px;
}
.search-line-results .card_line_text .type2 {
    text-transform: lowercase;
}

.page:not(:last-child) .collapsing-size .card_line_image {
 display:none;
}
.page:not(:last-child) .collapsing-size .card_line_text {
    padding-left: 0px;
    font-size: 85%;
}
.page:not(:last-child) .collapsing-size.card-container {
   padding: 0 !important;
}
.page:not(:last-child) .collapsing-size a.current,
.page:not(:last-child) .collapsing-size a.current h3 {
    color:#cc0030 !important;
}

/*.block h2 > a:hover {
   text-decoration: none;
}*/


.small-select select {
  -webkit-appearance: none;
  -moz-appearance: none;
  -ms-appearance: none;
  appearance: none;
  outline: 0;
  box-shadow: none;
  border: 0 !important;
  background: #226392;
  background-image: none;
  background-color: transparent;
}
/* Remove IE arrow */
.small-select select::-ms-expand {
  display: none;
}
.small-select select {
  flex: 1;
  padding: 0 .5em;
  color: #fff;
  cursor: pointer;
}
.small-select {
 position: relative;
 border: 2px solid #fff;
 padding-right: 3px
}

.small-select::after {
    content: '\25BC';
    position: absolute;
    top: 50%;
    right: 10px;
    font-size: 54%;
    margin-top: -4px;
}
/* Transition */
.small-select:hover::after {
  color: ##f2f2f2;
}

.languages-options a {
  display: inline-block;
  width: 30px;
  height: 30px;
  border-radius: 50%;
  font-size: 14px;
  text-align: center;
  line-height: 30px;
  background-color: transparent;
  color: #ffffff;
}

.languages-options .selected{
  background-color: #fff;
  color: #226392;
}

.languages-options :not(.selected):hover {
  background-color: rgba(0,0,0,0.4);
  color: #ffffff;
}

.languages-options{
  margin-right: 40px;
}

.direct-access {
  width: 180px;
  overflow: hidden;
}

.direct-access:hover {
  background-color: rgba(0,0,0,0.4);
  cursor: pointer;
}

.direct-access ul {
  display:none;
  list-style: none;
  margin: 0;
  padding: 0;
}

.direct-access:hover ul {
  display:block;
}

.direct-access .direct-access-title {
  position: relative;
  width: 180px;
  overflow: hidden;
  height: 30px;
  font-size: 16px;
  text-align: center;
  line-height: 30px;
  padding: 0 10px 0 20px
}

.direct-access .direct-access-title::before {
    content: '\25BC';
    position: absolute;
    top: 0;
    left: 6px;
    font-size: 54%;
    margin-top: -4px;
}


.direct-access ul li a {
  overflow: hidden;
  text-overflow:ellipsis;
  white-space: nowrap;
  padding: 4px 10px 4px 20px;
  width: 100%;
  display:block;
  border-top: solid 1px rgba(0,0,0,0.6);
}
.direct-access ul li a:hover {
  background-color: rgba(0,0,0,0.6);
}
