/* CSS Document */
@font-face {
  font-family: marianne;
  src: url("https://www.impots.gouv.fr/www2/minisite/0_communs/fonts/marianne-regular.woff");
}

@font-face {
  font-family: marianne-bold;
  src: url("https://www.impots.gouv.fr/www2/minisite/0_communs/fonts/marianne-bold.woff");
}

@font-face {
  font-family: marianne-xbold;
  src: url("https://www.impots.gouv.fr/www2/minisite/0_communs/fonts/marianne-extrabold.woff");
}

body {
	font-family: marianne;
	font-size: 14px;
	background-color: #000191;		
}

h1,h2,h3,h4,h5,h6{
clear:both;
}

/*test
*:focus{
box-shadow:0 0 15px red !important;
}
*/



a[target='_blank']{
position:relative;
}




a[target='_blank']:after{
content:"Ouverture dans une nouvelle fenêtre";
position:absolute;
display:none;
bottom:100%;
left:0;
background:#efefef;
font-size:11px;
padding:3px 6px;
border:1px solid #000;
box-shadow:0 0 5px #666;
pointer-events: none;
color:#000;
text-decoration:none;
text-transform:none;
font-style:normal;
min-width:20em;	
}

a[target='_blank']:focus:after{
display:block;
}




.alert-info {
	color: #000;
	background-color: #f6f6f6;
	border-color: #ccc;
}


.home .sidenav{
display: none;
}

.page #main-inner {
padding-top: 30px;
padding-bottom: 30px;
}

.page .sidenav {
/*	margin-top: 15px;*/
}

.new {
	float: right;
	margin-left: .25em;
	transform: rotate(12.5deg);
	margin-top: -1em;
	background: #fff;
	color: #000;
	padding: 5px 10px;
	font-size: 12px;
	font-family: marianne-bold;
	box-shadow: 5px 5px 10px rgba(0,0,0,.5);
}

a.puce-fleche{

display: table;

margin-top:.5em;

text-decoration: none;

margin-left:1em;

clear:both;

font-weight:400;
}


a.puce-fleche::before, .liste.liens ul li a::before {
	display: inline-block;	
	content: "\25B6\0000A0";
	color: #020091;
	margin-left: -20px;
	/*color:#000;*/
	
	
	
	/*
	content: "";
	width: 1em;
	height: 1em;
	border-bottom: .5em solid #E1000F;
	border-right: .5em solid #E1000F;
	transform: rotate(-45deg);
	font-size: 0.75em;	
	float: left;
	margin: .45em 0 0 -1.575em;
	*/
	
}

/*correction effet transition manquant CSS portail*/
.collapse.in{

}


/*.nav-pills > li.active > a, .nav-pills > li.active > a:focus, .nav-pills > li.active > a:hover {
margin:0;
}*/
.nav li{list-style-type: none;}

.nav li ul{
margin:0;
padding:0;
}

.nav li a {
	position: relative;
	display: block;
	padding: 10px 15px;
}

/*.nav > li > a:focus, .nav > li > a:hover {*/
.nav li a:focus, .nav li a:hover {
background-color:transparent;
}


.nav li.titre{
border-top:10px solid #fff;

}

.nav li.titre:hover{
/*background:none;*/
}

.nav li.titre > span {
	padding: 15px 0 0 10px;
	display: block;
	font-weight: bold;
	font-size: .85em;
	color: #000;
}

#main-inner .nav{
/*margin:0 -15px;*/
/*background:#efefef;*/
background: #edecff;
}

.page #main-inner #menu{
margin-top:15px;
}

/*.nav > li a{*/
.nav li a{
/*padding: 15px 10px 15px 30px;*/
position:relative;
border:1px solid transparent;
color:#000262;
}

.nav a.puce-fleche{
margin-top:0;
}

#main-inner .nav a.puce-fleche{
margin-left:0;
}



.navbar{
margin-bottom:0;
background: #fff;
color: #000;
}

.navbar-nav{
    margin-top: 30px;
}



.navbar-header{
padding:15px 0;
}

.navbar-inverse {
background-color: #fff;
border: 0;
}

.navbar-inverse .navbar-toggle .icon-bar {
background-color:#133D77;
}

.navbar-toggle {
border-color:#020091;
background:#fff;
margin-right:0;
}

.navbar-toggle[aria-expanded=true],
.navbar-toggle .icon-bar {
background-color:#020091;
}

.navbar-toggle[aria-expanded=true] .icon-bar {
background-color:#fff;
}

#myNavbar{
background:#EDECFF;
}



#myNavbar .intro-btn-cfs{
margin-top:15px;
}

#myNavbar .btn-cfs{
margin:0 auto;
}

#myNavbar hr{
border-top: 2px solid #ccc;
}


#myNavbar a.puce-fleche{
color:#000;
display: inline-block;
}

.navbar-nav > li > a{
/*line-height:normal;*/
}




header{
background:#fff;
/*margin-top: 0px;*/
}

.bloc-marque{
max-width:471px;
}

.intro-btn-cfs{
text-align:center;
color:#777;
font-size:12px;
}

.intro-btn-cfs .decla{
display:block;
font-size: 2em;
font-family: marianne-bold;
color: #000;
}


.btn-cfs,
.btn-cfs:hover,
.btn-cfs:link,
.btn-cfs:visited{
display: block;
padding: 13px 18px;
width:260px;
height:47px;
background:#0b6ba8;
color:#fff;
text-decoration:none;
outline:none;
transition:background .3s;
}

.btn-cfs:hover{
text-decoration: none;
background:#133D77;
transition:background .3s;
}

.btn-cfs svg{
width: 20px;
margin-top: -2px;
float: left;
margin-right: 17px;
}

.main-title {
	font-family: marianne-bold;
	text-transform: uppercase;
	/* color: #fff; */
	/* font-style: italic; */
	margin: 0px -15px 0 -15px;
	/*background: #020091;
	padding: 5px 15px;*/
	/* margin-bottom: 10px; */
}

.main-title h1{
color:#fff;
font-size:40px;
border-bottom: 5px dotted #fff;
padding-bottom: .25em;
/*text-shadow: rgb(2, 0, 145) 4px 0px 0px, rgb(2, 0, 145) 3.87565px 0.989616px 0px, rgb(2, 0, 145) 3.51033px 1.9177px 0px, rgb(2, 0, 145) 2.92676px 2.72656px 0px, rgb(2, 0, 145) 2.16121px 3.36588px 0px, rgb(2, 0, 145) 1.26129px 3.79594px 0px, rgb(2, 0, 145) 0.282949px 3.98998px 0px, rgb(2, 0, 145) -0.712984px 3.93594px 0px, rgb(2, 0, 145) -1.66459px 3.63719px 0px, rgb(2, 0, 145) -2.51269px 3.11229px 0px, rgb(2, 0, 145) -3.20457px 2.39389px 0px, rgb(2, 0, 145) -3.69721px 1.52664px 0px, rgb(2, 0, 145) -3.95997px 0.56448px 0px, rgb(2, 0, 145) -3.97652px -0.432781px 0px, rgb(2, 0, 145) -3.74583px -1.40313px 0px, rgb(2, 0, 145) -3.28224px -2.28625px 0px, rgb(2, 0, 145) -2.61457px -3.02721px 0px, rgb(2, 0, 145) -1.78435px -3.57996px 0px, rgb(2, 0, 145) -0.843183px -3.91012px 0px, rgb(2, 0, 145) 0.150409px -3.99717px 0px, rgb(2, 0, 145) 1.13465px -3.8357px 0px, rgb(2, 0, 145) 2.04834px -3.43574px 0px, rgb(2, 0, 145) 2.83468px -2.82216px 0px, rgb(2, 0, 145) 3.44477px -2.03312px 0px, rgb(2, 0, 145) 3.84068px -1.11766px 0px, rgb(2, 0, 145) 3.9978px -0.132717px 0px;*/
}

.main-title h1 span{color:#FEED00;}

.page .main-title h1{
font-size:35px;
padding-top: 30px;
}

/*
.page .main-title .img-responsive{
margin-bottom: 40px;
}
*/

.main-title .header{
 background: #4b298c;background-image: linear-gradient(-180deg,#423a84,#21186b);
 }



#main-inner{
float:left;
background:#fff;
width:100%;
}


#intro{
/*background:#133d77;
color:#fff;
padding:15px;
*/
margin-bottom:30px;
}

#intro h2{
font-size:2.5em;
	font-family: marianne-xbold;
/*	text-transform: uppercase;*/
	color: #020091;
}

#main-inner b, #main-inner strong{
color:#000;
}

.intro-page {	
	font-size: 20px;
	clear: both;
	box-shadow: 0 0 15px #ccc;
	/*padding: 15px;*/
	/*margin-bottom: 2em;*/
	background: #000091;
	color: #fff;
}

.intro-page p {
	padding:15px;
}

.intro-page a {
	color: #feed00;
	text-decoration: underline;
}

.intro-page img{max-width:100%;}


footer{
/*background:#586fbd;*/
background:#020091;
margin-top: 30px;
color: #fff;
}

footer a,
footer a:hover{
color:#fff;
}

footer .rs img{
width:40px;
height:40px;
}
.rs a{
display:inline-block;
margin:7.5px;
}

footer>.row>div[class^="col-"]>div{
padding:30px 0;
}

.rs{
text-align: center;
}


footer .tm{
    font-size: 12px;
    text-align: right;
}


.cookies{
color:#fff;
background:#4a4fb6;
border:1px solid #4a4fb6;
padding:.5em 1em;
display:inline-block;
border-radius:4px;
margin-top:1em;
}

.cookies:hover{
border-color:#fff;
text-decoration: none;
}

.blocs-home{
margin-top:30px;
}

.blocs-home .bloc{
display: block;
cursor:pointer;
/*min-height:410px;*/
/*background:#efefef;*/
border:1px solid #8495ce;/*#ccc*/
padding:15px;
text-align:center;
transition: box-shadow .2s;
margin-bottom:30px;
}

.bloc.supcom{
background:#eff1f8;
min-height:auto;
}

.blocs-home .bloc img{
max-width:100%;
}

.blocs-home .bloc .new{
margin-left: -2em;
margin-top: -1em;
    position: absolute;
    right: 30px;
}

.blocs-home .bloc:hover{
box-shadow:0 0 15px rgba(0,0,0,.75);
transition: box-shadow .3s;
text-decoration: none;
}

/*
.blocs-home .bloc:hover img{
max-width:100%;
transition:max-width .5s;
}
*/

.blocs-home .bloc h3{
color:#000;
text-align:center;
margin:0;
/*font-weight: bold;*/
font-family:marianne-bold;
}

.blocs-home .bloc:hover h3{
color:#133D77;
}


.blocs-home .bloc span {
	display: block;
	color: #000;
}

.blocs-home .bloc:hover span{
color:#000;
}


.bg-picto-home {
    background: #020091;
    margin: -15px -15px 15px -15px;
	/*margin: -30px -30px 30px -30px;*/
	/*padding:15px;*/
}


/*
.saumon,
.vert,
.bleu,
.orange{
color:#fff;
}
*/


.page-title{
margin:0 0 30px 0;
font-family: marianne-xbold;
	font-size: 44px;
	font-variant: small-caps;
	color: #020091;
	position: relative;

}

.page-title img{
padding:15px;
}

/*
.saumon{
background:#FA7E7E;
}

.vert{
background:#00AC8C;
}

.bleu{
background:#5670BD;
}

.orange{
background:#FE993F;
}
*/


.page-title span,
.page-title img{
display:block;
margin:0 auto;
text-align: center;
}

.page-title span {
	background: #fff;
/*	padding-top: 30px;
	position: absolute;
	bottom: 0;*/
}

.page-title img{
/*max-width: 200px;*/
max-width: 140px;
margin-top:30px;
display:none;
}

#main-inner{
/*padding: 30px 0 30px 0;*/
}

#main-inner h3 {
	font-family: marianne-bold;
	color: #020091;
	padding: 30px 0 15px 0;
}


#main-inner h3:first-of-type{
padding-top:0;
}

#main-inner .blocs-home h3,
#main-inner .blocs-home h3:first-of-type{
padding: 30px;
background: #020091;
color: #feed00;
margin: -15px;
}


#main-inner h4{
font-weight: bold;
color: #000;
}

a.retour {
	/*background: #efefef;*/
	padding: 8px 15px;
	color: #133D77;	
	line-height: 1.2em;
	float: left;
	z-index: 9999;
	position: relative;
	background: #feed00;
}

a.puce-fleche.retour:before{
margin:.25em .5em 0 0;
transform:rotate(180deg);
border-color:#ccc;
}


.intro-page .big {
    font-family: marianne-bold;
	font-weight:bold;
    color: #133d77;
    font-size: 1.25em;
    text-align: center;
    display: inline-block;
    background: #efefef;
    padding: 15px;
	margin:10px 0;
    
	}
.intro-page .big .big {
	padding: 5px .35em;
	/* border-radius: 2em; */
	/* border: 1px solid #ccc; */
	color: #fff;
	background: #020091;
	margin: 0;
	border-bottom: 5px solid #feed00;
}

.calendar{
background:#fff;
border:2px solid #ccc;
border-radius:7px 7px 0 0;
text-align:center;
max-width: 200px;
margin: 30px auto 60px auto;
font-size:.85em;
min-height:220px;
box-shadow:0px 8px 10px #0007;
}

.calendar img{
width:60%;
max-width:150px;
margin:-30px auto 0 auto;
}

.calendar .limit,
.calendar .dept{
line-height:1em;
}

.calendar .limit{
font-size:1.1em;
/*background:#DF0A18;*/
/*color:#fff;*/
width:80%;
max-width:200px;
margin:.5em auto .25em auto;
padding:.5em 0;
}

.calendar .limit strong{
font-size:1.9em;
line-height:1.1em;
}

.calendar .dept strong{
font-size:1.25em;
line-height:1.1em;
}

.calendar .dept{
margin-top:15px;
}

.calendar .new{
font-size: 8px;
padding: 4px;
margin-left: 0em;
background: #efefef;
margin-top: 2em;
border: 1px solid red;
transform: rotate(-25deg);

position: absolute;
}

.bg-bleu{
background:#B0D8F4;
}

.bg-vert{
background:#CEE69C;
}

.bg-jaune{
background:#FFDB7B;
}

.bg-rouge{
background:#FFC59C;
}

.rouge{
color:#e1000f;
}
	

.bouton-transparent{
margin:0 auto 30px auto;
cursor:pointer;
}

#main-inner .bouton-transparent b,
#main-inner .bouton-transparent strong{
color:inherit;
}

.bouton-transparent,
.bouton-transparent:hover,
.bouton-transparent:link,
.bouton-transparent:active,
.bouton-transparent:visited{
border:1px solid #0F3E60;
display: block;
padding:.25em;
text-align:center;
font-size:1.2em;
line-height:1em;
/*color:#0F3E60;*/
color: #133d77;
word-spacing: -1px;
min-height:2.75em;
text-decoration: none;
transform:scale(1);
box-shadow:-5px -5px 15px #0000;
transition:transform .2s,box-shadow .4s;
max-width:275px;
}

.bouton-transparent:hover{
transform:scale(1.1);
box-shadow:5px 0px 15px #0006;
transition:transform .2s,box-shadow .4s;
}


.bouton-transparent.savplus{
background:#fff;
min-height: 1.75em;
display:inline-block;
margin:30px 0 0 0;
}


.info-annx{
border-left: 1px solid #ccc;
padding: 10px;
color: #777;
font-style: italic;
}



#access-evitement{
width:100%;
background:#000;
color:#fff;
z-index:9999;
}

#access-evitement a{
display:inline-block;
color:#fff;
width:0px;
height:0px;
overflow:hidden;
position:absolute;
margin:1em;
}



#access-evitement a:focus{
position:relative;
height:auto;
width:auto;
overflow:visible;

}


.pseudo-lecteur-video *{box-sizing: border-box;}
.pseudo-lecteur-video a,.pseudo-lecteur-video img{display: block;position:relative;max-width:900px;}
.pseudo-lecteur-video a{margin:1em auto;}
.pseudo-lecteur-video img{width:100%;height:auto;max-width:900px;}
.pseudo-lecteur-video a span {position:absolute;color:#fff;background: rgba(255,255,255,.5);width: 100%;font-size: 24px;padding: 18% 0px;top: 0;left: 0;text-align:center;margin: 0;height: 100%;font-weight:bold;text-shadow: rgb(0, 0, 0) 3px 0px 0px, rgb(0, 0, 0) 2.83487px 0.981584px 0px, rgb(0, 0, 0) 2.35766px 1.85511px 0px, rgb(0, 0, 0) 1.62091px 2.52441px 0px, rgb(0, 0, 0) 0.705713px 2.91581px 0px, rgb(0, 0, 0) -0.287171px 2.98622px 0px, rgb(0, 0, 0) -1.24844px 2.72789px 0px, rgb(0, 0, 0) -2.07227px 2.16926px 0px, rgb(0, 0, 0) -2.66798px 1.37182px 0px, rgb(0, 0, 0) -2.96998px 0.42336px 0px, rgb(0, 0, 0) -2.94502px -0.571704px 0px, rgb(0, 0, 0) -2.59586px -1.50383px 0px, rgb(0, 0, 0) -1.96093px -2.27041px 0px, rgb(0, 0, 0) -1.11013px -2.78704px 0px, rgb(0, 0, 0) -0.137119px -2.99686px 0px, rgb(0, 0, 0) 0.850987px -2.87677px 0px, rgb(0, 0, 0) 1.74541px -2.43999px 0px, rgb(0, 0, 0) 2.44769px -1.73459px 0px, rgb(0, 0, 0) 2.88051px -0.838247px 0px;}
.pseudo-lecteur-video a span img{display:block;max-width:70px;width:60%;margin:0 auto;}
.pseudo-lecteur-video a:hover span{background:rgba(0,0,0,.1);transition:background .2s;}





@media(min-width:768px){

body{
background-color: #dcdbff;
background-image: linear-gradient(180deg, #dcdbff 850px, #fff);
}

header{
padding:30px 0;
background:#fff;
}

a.retour{
margin: -36px 0 0 0;
}

/*.nav > li.active{*/

.nav li.titre > span {
	padding: 15px 15px 0 15px;
}


.nav li.active{
font-family: marianne-bold;
}

/*.nav > li > a{*/
.nav li a{
/*padding:10px 0 10px 5px;*/
/*padding:20px 0 20px 5px;*/
padding: 20px 5px 20px 30px;
font-size:.85em;
}

/*.nav > li > a .new{*/
.nav li a .new{
display:none;
}

/*.nav > li.active > a .new{*/
.nav li:hover > a > .new,
.nav li.active:hover > a > .new,
.nav li.active a .new{
display:block;
}

/*.nav > li:hover,
.nav > li:hover a,
.nav > li.active*/
/*.nav > li:hover,*/
.nav li.active > a,
.nav > li > ul > li.active > a,
.nav > li.active:hover > a,
.nav > li > ul > li.active:hover > a{
background-color:#5e60be;
}


.nav > li:hover > a,
.nav > li > ul > li:hover > a{
background-color: #020091;
}


/*.nav > li:hover a,
.nav > li.active a*/
.nav li:hover > a,
.nav li.active > a{
color:#fff;
}

/*.nav > li:hover a:before,
.nav > li.active a:before*/
.nav li:hover > a:before,
.nav li.active > a:before{
/*border-color:#fff;*/
color: #feed00;
}

/*.nav > li.active a,
.nav > li.active:hover a*/
.nav li.active a,
.nav li.active:hover a{
/*box-shadow: 0 0 15px #000;
border: 1px solid #fff;*/
z-index:10;

}


.btn-cfs{
margin-left:-15px;
}


#main-inner{
/*padding:15px 15px 30px 15px;*/
font-size:16px;
}


#intro h2{
font-size:47px;/*32*/
margin-top:0;
margin-top:0;
}


.new {
	/* background: #c2c2e5; */
	color: #000;
	margin-left: -6em;
	transform: rotate(-25deg);
	margin-top: -3.5em;
	position: absolute;
	z-index: 9999;
	border: 5px solid #feed00;
}

.blocs-home .bloc .new{
right:auto;
}

#photo-home{
padding:0;
margin-bottom:30px;
}


.pseudo-lecteur-video a span {font-size: 30px;}
.pseudo-lecteur-video a span img{max-width:100px;}



}

@media(min-width:992px){

.page .main-title .img-responsive {
	margin-bottom: 0px;
	max-width: 700px;
	margin-left: auto;
	margin-right: auto;
}	

/*.nav > li > a*/
.nav li a{
font-size:16px;
}



/*
.bloc-marque{
width:471px;
}
*/

#col-main{
padding-top:15px;
}

#main-inner>.col-sm-9{
/*padding:0 15px 30px 45px;*/
}

.main-title {
margin: 30px -15px 0 -15px;
}

.main-title h1{
font-size:56px;
}


.page-title {
	/* margin: 0; */
	float: left;
	width: 100%;
	margin-top: 15px;
}

.page-title span,
.page-title img{
display: inline-block;
}

.page-title img {

	float: left;
	width: 200px;
	margin-top:0;
	background: #020091;

}

.page-title span {
	max-width: calc(100% - 200px);
	text-align: left;
	/* padding: calc(100px - .65em) 0 0 30px; */
position: absolute;
/*
padding:30px 0 0 30px;		
bottom: 0;
*/
padding:0px 0 0 30px;		
top: 0;

}

/*
.intro-page {
	display: flex;
	align-items: normal;
}

.intro-page img {
	max-width: 40%;
	margin: 0 1em .5em 0;
	object-fit: cover;
}
*/



.rs{
padding-left: 45px !important;
}

}


@media(min-width:1200px){

.btn-cfs{
margin-left:0px;
}




}

