html {
  scroll-behavior: smooth;
}
body {
    background: #fff;
    color: #757b8d;
    font-size: 22px;
    line-height: 1.75em;
    padding:0;
    margin:0;
    font-family: 'DIN Pro';
    font-weight: normal;
}

body.site{
	border-top:none;
	padding:0;
	margin:0;
}

.body{overflow:hidden;background: #fff;}

.itemid-101 body, 
.itemid-101 .body {
    background: #fcfcfc;
}

a {
    color: #1b3a9f;
    text-decoration: none;
    transition: all .4s;
}
a:active, a:hover, a:focus {
    color: #ff4700;
    text-decoration: none;
}

img{max-width:100%;height:auto;}

.img-right {
    position: relative;
    float: right;
    margin: 0 0px 30px 75px;
}

.img-left, .photo.lf {
    position: relative;
    float: left;
    margin: 0 75px 30px 0px;
}

.img-left, .img-right {
    overflow: hidden;
    border-radius: 55px;
    max-width: 100%;
    height: auto;
}

img.img-left.left1 {padding-top: 80px;}

h1, h2, h3, h4, h5, h6,
.h1, .h2, .h3, .h4, .h5, .h6 {
    line-height: 1em;
    text-transform: capitalize;
    font-family: 'TTNorms-Bold';
    font-weight: normal;
}

h1, .h1{

   color: #1455a5;
   font-weight: normal;
   font-size: 45px;
}

h2, .h2{
	position:relative;
	color: #1455a5;
	font-size: 35px;
	margin-bottom: 38px;
	margin: 40px 0 30px;
}

h2 span.subtitile {
    display: block;
    margin-top: 7px;
}

h3, .h3{
    color: #1a66ac;
    margin:30px 0 15px;
    font-size:26px;
	font-family: 'd-dindin-bold';
}

h4, .h4{
    font-size:22px;
    color:#251c39;
    margin:30px 0 10px;
	font-family: 'd-dindin-bold';
}
h5, .h5{
    font-size:16px;
	margin:30px 0 10px;
}
h6, .h6{
    font-size:14px;
	margin:30px 0 10px;
}


/****************---------HEADER------------*********************/
nav#nav-2, nav.mobile-nav {
    display: none;
}

header.header {
    position: relative;
    overflow: hidden;
}
header.header .header-inner .top .container-fluid {
    width: 85%;
}

header.header .header-inner .top {
    position: fixed;
    left: 0;
    right: 0;
    top: 0;
    height: 155px;
    width: 100%;
	padding: 15px 0;
	z-index:20;
	background: #fcfcfc;
    box-shadow: 0px 0px 3px 0px rgb(130 126 126 / 36%);
}
nav#navigation {
    padding-top: 72px;
}

header.header .banner{
	position:relative;
	margin-top: 155px;
}
header.header .banner p.slogan {
    position: absolute;
    top: 29%;
    color: #fff;
    left: 500px;
    width: 60%;
    font-size: 42px;
    line-height: 1.2em;
    z-index: 1;
    font-family: 'dinmedium';
    font-weight: normal;
}
.view-article header.header .banner{
	position:relative;
	height: 450px;
	overflow:hidden;
}
.view-article header.header .banner img {
    max-width: unset;
    height: auto;
}
#flexslider-91.flexslider li .jslider-image:after, 
.view-article header.header .banner:after{
	position:absolute;
	content:"";
	inset:0;
   background:rgb(21 31 61 / 50%);
}

#flexslider-91 .slide-desc-box {
	left: 500px !important;
    right: unset !important;
    text-align: left !important;
    top: 45% !important;
}

#flexslider-91 .slide-desc h3{
	 color: #fff !important;
	 font-size: 36px !important;
	 font-family: 'dinmedium' !important;
	 line-height: 1.42em;
}

#flexslider-91 .slide-desc {
    font-family: 'dinlight' !important;
    max-width: 650px !important;
    text-align: left;
    color: #fff !important;
    font-size: 28px !important;
    text-shadow:unset !important;
}
.slide-desc-box > div > div {
    padding: 0 !important;
	 opacity: 1 !important;
	text-shadow:unset !important;
}
.slide-desc-box > div {
text-shadow:unset !important;
    opacity: 1 !important;
}

#flexslider-91 .slide-desc a{
	position:relative;
	background:#1065bb;
	color:#fff;
	padding:10px;
	width:250px;
	display:block;
	text-align:center;
	border-radius:35px;
	font-size:20px;
	 font-family: 'dinmedium';
	 text-transform:uppercase;
	 transition:.3s all;
}
#flexslider-91 .slide-desc a:hover{
	background:#000000;
	
}
#flexslider-91 .slide-desc a:before{
	position:absolute;
	content:"";
	background:url(../images/flec-1.png) top right no-repeat;
	width:12px;
	height:12px;
	right:40px;
	top:18px
}
#flexslider-91.flexslider.position-nav-bottom .flex-control-nav {
    position: absolute;
    bottom: 130px !important;
    text-align: right !important;
    right: 300px !important;
    font-size: 0 !important;
}
.color-nav-light .flex-control-paging li a {
    background-color: rgb(16 101 187)!important;
    box-shadow: unset !important;
}
.flex-control-paging li a {
    width: 12px !important;
    height: 12px !important;
	background-color: rgb(16 101 187)!important;
    box-shadow: unset !important;
}
#flexslider-91 .flex-control-paging li a.flex-active,
#flexslider-91 .flex-control-paging li a:hover{
background-color: rgb(255 255 255) !important;
}

/**********************fin header********************************/
/**********************bloc pdts********************************/



.bloc-pdts.row {
    position: relative;
    margin: -76px 0 130px;
    z-index: 2;
}

.bloc-pdts.row .pdt {
    position: relative;
    display: block;
    max-width: 450px;
    height: 400;
    margin: auto;
    background: #fff;
    text-align: center;
    padding: 76px 40px 0;
    border-radius: 55px;
    box-shadow: 0px 0px 8px 0px rgb(0 0 0 / 7%);
}

.bloc-pdts.row .pdt  h2 {
    font-family: 'dinmedium';
    color: #1b3a9f;
    font-size: 32px;
    text-transform: uppercase;
    padding: 0 25px;
	transition:.3s all;
}
.bloc-pdts.row .pdt:hover h2{
	color:#1065bb;
}
.bloc-pdts.row .pdt a{
	position:absolute;
	font-size:0;
	inset:0;
	z-index:10;
}

.bloc-pdts.row .pdt:after {
    position: absolute;
    content:"";
	border-bottom: 11px solid #1065bb;
    left: 60px;
    right: 60px;
    bottom: -11px;
    border-bottom-left-radius: 55px;
    border-bottom-right-radius: 55px;
	transition:.3s all;	
}
.bloc-pdts.row .pdt:hover:after {
	border-bottom: 11px solid #1b3a9f;
}
.bloc-pdts.row .pdt .photo {
    position: relative;
    overflow: hidden;
}
.bloc-pdts.row .pdt .photo img{
   transform:scale(1);
  transition:.3s all;
}
.bloc-pdts.row .pdt:hover .photo img{
   transform:scale(1.02);
}

/**********************fin pdts**************************/
/*******************blocs home*************************/
.present {
    position: relative;
    display: grid;
    grid-template-columns: 2fr 2fr;
    gap: 10px;
	margin-bottom:80px
}

.present .photo {
    position: relative;
}

.present .photo img{
    position: relative;
    float: right;
    border-radius: 55px;
    margin-right: 65px;
}
.present .info {
    font-size: 28px;
    margin: 0 20px 0 55px;
}
.present .info h2{
    font-size: 42px;
    color:#151f3d;
    font-family: 'd-dindin-bold';
    font-weight: normal;
    text-transform: unset;
    line-height: 1.2em;
	margin: 0px 0 30px;
}

.present .info a, 
.customvehicules a,
.news a.readon.fleft {
    font-size:20px;
    color:#151f3d;
    font-family: 'Hikou Regular';
    letter-spacing: 1;
    background:url(../images/flec-2.png) top 7px right no-repeat;
    padding-right:25px;
    height: 23px;
}
.news a.readon.fleft {
	margin:20px 0 0;
    background:url(../images/flec-2.png) top 10px right no-repeat;
}


.present .info a:hover, 
.customvehicules a:hover,
.news a.readon.fleft:hover{  
    color:#1b3a9f;  
    background:url(../images/flec-2.png) bottom 4px right no-repeat;
}



/********************fin presntation**************************/
/*******************blocs historique*************************/

.custom.historique {
    position: relative;
    width: 90%;
    margin: 0 auto 120px;
    background: #fff;
    box-shadow: 0px 0px 7px 0px rgb(0 0 0 / 7%);
    border-radius: 55px;
    padding: 50px 0;
}
.custom.historique:after{
	position:absolute;
	content:"";
	background:#0f61b4;
	left:156px;
	right:156px;
	height:9px;
	bottom:-9px;
	border-bottom-left-radius:55px;
	border-bottom-right-radius:55px;
}

.custom.historique .hist {
    position: relative;
    display: table;
    margin: auto;
    text-align: center;
    font-size: 26px;
}

.custom.historique .hist p{
	padding: 0 45px;
}
.custom.historique .col-md-3.hist-3 p{
	padding: 0 72px;
}

.custom.historique .hist h2{
	position: relative;
	color:#ff4700;
	font-size:82px;
	font-family: 'Hikou Light';
	font-weight: normal;
	line-height: 0.75em;
	margin: 40 0 20px;
	transition:.3s all;
}
.custom.historique .hist:hover h2{
	color:#151f3d;
}

.custom.historique .hist h2 span.subtitle{
    position:relative;
    display:table;
    margin:auto;
    font-size:32px;
    color:#151f3d;
    font-family: 'd-dindin-bold';
    font-weight: normal;
    text-transform: uppercase;
    padding: 0 0 24px;
    transition:.3s all;
}

.custom.historique .hist:hover h2 span.subtitle{

  color:#ff4700;  
}

.custom.historique .hist h2 span.subtitle:after{
	position:absolute;
	content:"";
	width:24px;
	height: 17px;
	bottom: 0;
	left:0;
	right:0;
	margin:auto;
	background:url(../images/flec-3.png) top center no-repeat;
	transition:.3s all;
}
.custom.historique .hist:hover h2 span.subtitle:after{

	background:url(../images/flec-3.png) bottom center no-repeat;
}

.custom.historique .col-md-3.hist-1 .hist h2{
	background:url(../images/ic-1.png) top center no-repeat;
	padding-top:75px;
}
.custom.historique .col-md-3.hist-2 .hist h2{
	background:url(../images/ic-2.png) top center no-repeat;
	padding-top:75px;
}
.custom.historique .col-md-3.hist-3 .hist h2{
	background:url(../images/ic-3.png) top center no-repeat;
	padding-top:75px;
}

.custom.historique .col-md-3.hist-4 .hist h2{
	background:url(../images/ic-4.png) top center no-repeat;
	padding-top:75px;
}

.custom.historique .hist a{
	position:absolute;
	inset:0;
	font-size:0;
	z-index:10;
}
.custom.historique .col-md-3{
	position:relative;
}

.custom.historique .col-md-3:after{
	position:absolute;
	content:"";
	top: 140px;
	border-right: 1px solid rgb(225 226 226 / 50%);
	height: 185px;
	right:0;
}


.custom.historique .col-md-3:last-child:after{content:none;}

/**********************fin blocs********************************/
/************************News*********************************/

div#nsp-nsp-92.news {
    position: relative;
}
div#nsp-nsp-92.news h2.tit-act, .customvehicules h2, .view-article h2 {
    font-size: 32px;
    text-transform: uppercase;
    color: #1b3a9f;
    font-family: 'dinmedium';
    font-weight: normal;
    background: url(../images/flec-4.png) top right no-repeat;
    display: table;
    padding-right: 44px;
    height: 35px;
}

div#nsp-nsp-92.news  .nspArt h4.nspHeader,
p.nspInfo.nspInfo1.tleft.fnone{
	display:none !important;
}

.nspArt img.nspImage {
	position:relative;
	z-index:2;
    margin-bottom: 50px;
    max-width: 100%;
    width: auto !important;
    height: auto !important;
    border-radius: 35px !important;
}

.nspArt .nspImageWrapper:after{
	position:absolute;
	content:"";
	background:#dedfe0;
	left:50px;
	right:50px;
	height: 33px;
    bottom: 42px;
	border-bottom-left-radius:55px;
	border-bottom-right-radius:55px;
}

div#nsp-nsp-92.news .nspArt {
    font-size: 25px;
}
.nspArt.nspCol1 {
    position: relative;
    margin-bottom: 75px;
}

.view-article.itemid-115 .nspArt h4.nspHeader {
    font-size: 29px;
    margin: 0;
    padding: 10px 0 15px 0;
 
}
.view-article.itemid-115 .nspArt h4.nspHeader a {
    color: #000000;
}

.view-article.itemid-115 .nspArt p.nspText {
    display: block;
    margin: 0;
    padding: 0;
    position: absolute;
    top: 117px;
    left: 480px;
    float: none;
}

.view-article.itemid-115 a.readon.fleft { 
    position: absolute;
    bottom: 120px;
	padding-left: 17px;
}

.view-article.itemid-101 .bloc-pdts.row, 
.view-article.itemid-101 .present,
.view-article.itemid-101 .custom.historique,
.view-article.itemid-101 div#nsp-nsp-92.news, 
.view-article.itemid-101 .customvehicules,
.view-article.itemid-101 #flexslider-91 .slide-desc,
.view-article.itemid-101 #flexslider-91.flexslider.position-nav-bottom .flex-control-nav{
display:none !important;
}


/**********************fin blocs********************************/
/**********************vehicules********************************/
.customvehicules {
    position: relative;
    padding: 0 58px;
	margin: 120px 0;
	font-size: 28px;
}

/**********************fin blocs********************************/
/**********************Contenus********************************/

main#content {
	position:relative;
}

.view-article main#content {
    margin:100px 0 80px;
}

main#content ul{
	list-style:none;
	margin:0;
	padding:0;
}

p.photo-i.ph-1 {
    position: relative;
	float:right;
	display:table;
}

p.photo-i.ph-2 {
    position: relative;
	float:left;
	display:table;
}

p.photo-i.ph-1:before {
    position: absolute;
    content: "";
    top: 60px;
    bottom: 100px;
    left: 67px;
    border-left: 9px solid #0f61b4;
    border-top-left-radius: 55px;
    border-bottom-left-radius: 55px;
}

p.photo-i.ph-2:before {
    position: absolute;
    content: "";
    top: 60px;
    bottom: 100px;
    right: 67px;
    border-left: 9px solid #0f61b4;
        border-top-right-radius: 55px;
    border-bottom-right-radius: 55px;
}

p.photo-i.ph-2.imgs-2 img,
p.photo-i.ph-1.imgs-2 img,
p.photo-i.ph-1.img-dip-1 img,
p.photo-i.ph-2.img-dip-1 img {border:1px solid #e3e3e3;}

p.photo-i.ph-2.img-dip-1.img-dip-2:before{content:none}

.view-article h3 {
    color: #26272a;
    font-size: 30px;
    font-family: 'd-dindin-bold';
    font-weight: normal;
	line-height:1.5em
}

.echelle {
    position: relative;
    width: 90%;
    margin: auto;
    text-align: center;
}

.echelle:before {
    position: absolute;
    content:"";
    border: 2px solid #ebecec;
    top: 90px;
    height: 393px;
    left:0;
    right:0;
    border-left:none;
    border-radius:285px;
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
}

.echelle h4 {
    color: #151f3d;
    font-family:'Hikou Light';
    font-weight:normal;
    font-size: 28px;
    margin-bottom: 30px;
}

.echelle ul.row.row-1 h4 {
    background: url(../images/flec-5.png) bottom center no-repeat;
    padding-bottom:42px
}

.echelle ul.row.row-2 h4 {
    background: url(../images/flec-6.png) bottom center no-repeat;
    padding-bottom:42px;
    margin-top: 84px;
}

main#content ul.certifica {
    margin-left: 25px;
    color: #26272a;
    font-family: 'Roboto-Medium';
}

.certif.certifs {
    display: flex;
    justify-items: center;
    align-items: center;
}

.certif.certifs .photo img {
    margin-right: 25px;
    border-radius: 25px;
}

a.pdf {
    background: url(../images/icone-pdf.png) top left no-repeat;
    display: table;
    padding-left: 84px;
    line-height: 30px;
    max-width: 400px;
    height: 92px;
    padding-top: 16px;
}

p.photo-right-pdt {
    position: relative;
    display: table;
    float: right;
    height: auto;
    margin: 0 0px 120px 75px;
	box-shadow: 0px 0px 7px 0px rgb(0 0 0 / 7%);
    border-radius: 55px;
}

p.photo-right-pdt .img-right{margin:0;}

p.photo-right-pdt:after  {
    position: absolute;
    content: "";
    border-bottom: 11px solid #1065bb;
    left: 60px;
    right: 60px;
    bottom: -11px;
    border-bottom-left-radius: 55px;
    border-bottom-right-radius: 55px;
}

.itemid-137 li.col-md-3{position:relative; margin-bottom: 70px;}

.itemid-137 li.col-md-3 img {
    border-radius: 35px;
    box-shadow: 0px 0px 4px 0px rgb(0 0 0 / 7%);  
}

.itemid-137 li.col-md-3:after {
    position: absolute;
    content: "";
    border-bottom: 9px solid #005aab;
    bottom: -10px;
    left: 66px;
    right: 66px;
    border-bottom-left-radius: 55px;
    border-bottom-right-radius: 55px;
}


.itemid-137 img.img-grph.img-grph-1 {
    padding-top: 48px;
}


.view-article.itemid-133 header.header .banner:after,
.view-article.itemid-135 header.header .banner:after,
.view-article.itemid-136 header.header .banner:after,
.view-article.itemid-122 header.header .banner:after{
	content:none;
}
/**********************fin blocs********************************/
/**********************footer********************************/
footer.footer {
    position: relative;
    background: #1a242e;
}
.footer-top {
    position: relative;
    background: url(../images/bloc-top-footer-min.jpg) top center no-repeat;
    background-size: cover;
    height: 643px;
    padding: 80px 0 0;
    color: #151f3d;
    font-size: 28px;
}
.footer-container .container{
	position: relative;
	z-index: 1;
}

.customfooter {
    position: relative;
    padding: 93px 0 0;
}
.bloc-contact h2 {
    color: #151f3d;
    font-size: 42px;
    font-family: 'Hikou Regular';
    font-weight: normal;
}

.footer-container  ul.coord {
    list-style: none;
    margin: 56px 0 0;
    padding: 0;
}
.footer-container  ul.coord li{
	margin-bottom:15px
}
.footer-container  ul.coord li.ads {
    background: url(../images/ads.png) top left no-repeat;
    padding-left: 55px;
    display: block;
    height:65px
}
.footer-container  ul.coord li.tel {
    background: url(../images/tel.png) top left no-repeat;
    padding-left: 55px;
    display: block;
      height:55px
}
.footer-container  ul.coord li.fax {
    background: url(../images/fax.png) top left no-repeat;
    padding-left: 55px;
    display: block;
    height: 42px;
}
.footer-container  ul.coord li.mail {
    background: url(../images/mail.png) top left no-repeat;
    padding-left: 55px;
    display: block;
    height: 42px;
}
.footer-container  ul.coord li.mail a{color:#151f3d;}
.footer-container  ul.coord li.mail a:hover{color:#ff4700;}


.footer-container .networks{position: relative;display: grid;grid-template-columns: 2fr 3fr;color: #fff;font-size: 20px;line-height: 1.2em;margin-top: 53px;gap: 10px;}
.footer-container .networks h3{
    font-family: 'TTNorms-Light';
    font-weight: normal;
    font-size:22px;
    color: #fff;
}
.footer-container .networks a{display:table;position: relative;}

.footer-container .networks a .fa {
    font-size: 50px;
    color: #fff;
}
.footer-container .networks a:hover .fa {color: #92cbff;}
ul#menu-footer {
    /* clear: both; */
    position: relative;
    margin: 0;
    padding: 0;
}
.copy {
    position: relative;
    text-align: center;
    font-size: 14px;
    display: table;
    margin: 50px auto 0;
    color: #fff;
}
.copy a{color: #ffffff;}
::placeholder { 
	/* Chrome, Firefox, Opera, Safari 10.1+ */
		color:#000 !important;
		font-size:22px !important;
		letter-spacing:0px !important;
		padding:5px !important;
		text-align:left !important;
		opacity: 1;
		line-height:30px !important; 
		margin-top:-5px !important;
	
    font-weight: normal !important;
	/* Firefox */
}


.bloc-contact.coord {
    margin-top: 27px;
    background: #005aab;
    color: #fff;
    padding: 35px 20px;
    border-radius: 55px;
    line-height: 1.32em;
}

.bloc-contact.coord p,
.bloc-contact.coord ul li{margin-bottom:25px;}

.bloc-contact.coord i.fa.fa-map-marker {
    margin-right: 14px;
    font-size: 40px;
    color: #ff4700;
}

.bloc-contact.coord li.tel {
	background: url(../images/tel.png) top left no-repeat;
    padding-left: 55px;
    display: block;
    height: 42px;
}

.bloc-contact.coord li.fax {
	background: url(../images/fax.png) top left no-repeat;
    padding-left: 55px;
    display: block;
    height: 42px;
}

.bloc-contact.coord li.mail {
	background: url(../images/mail.png) top left no-repeat;
    padding-left: 55px;
    display: block;
    height: 42px;
}

.bloc-contact.coord li.mail a{
	color:#fff;
}

.bloc-contact.coord li.mail a:hover{
color:#ff4700;
}
/* 2026-10-20 (revu le 2026-10-23) : règle de JSN UniForm retirée (div#jsn_form_4) : plus aucun élément ne la porte depuis le passage au composant Formulaires ; aucun pixel ne change. */
.jsn-master {
    font-size: 22px !important;
    font-family: 'DIN Pro' !important;
    font-weight: normal !important;
}
.jsn-master .jsn-bootstrap .jsn-form-content .control-group .control-label{
    color: #1b3a9f !important;
    font-weight: normal !important;
    font-size: 20px !important;
    float: left !important;
    width: 185px !important;
    /* text-align: right !important; */
    margin-right: 10px !important;
    padding-top: 11px !important;
}
.jsn-master .jsn-bootstrap .jsn-form-content .control-group.ui-state-highlight{
    background-color: rgb(252 248 227 / 0%) !important;
    border-color: hsl(39deg 83% 91% / 0%) !important;
}
.jsn-master .jsn-bootstrap .jsn-form-content .control-group.ui-state-highlight{
    background-color: none!important;
    border-color: none !important;
}
.jsn-master .jsn-bootstrap .jsn-form-content .control-group .controls input, 
.jsn-master .jsn-bootstrap .jsn-form-content .control-group .controls select, 
.jsn-master .jsn-bootstrap .jsn-form-content .control-group .controls textarea
{
    background: rgb(252 252 252 / 44%);
    color: #666666;
    max-width: 845px;
    border: none;
    padding: 8px 15px;
    outline: 0;
    position: relative;
    border: 1px solid rgb(27 58 159 / 90%);
    border-radius: 50px;
    /* border-radius:5px; */
    width: 70% !important;
}


.jsn-uniform.jsn-master .jsn-row-container .form-actions{
    text-align: right;
    margin-left: 5px;
    margin-right: 54px;
    margin-top: -10px;
}

.jsn-uniform.jsn-master .btn-primary{
    color: #fff;
    background-color: #1b3a9f;
    border-color: #1b3a9f;
    border-radius: 5px;
    margin-right: 20px;
    border-radius: 15px;
}
.jsn-uniform.jsn-master .btn-primary:hover, 
.jsn-uniform.jsn-master .btn-primary:focus{
    color: #ffffff;
    background-color: #000000;
    border-color: #060606;
    margin-right: 20px;
    border-radius: 15px;
}
.jsn-uniform.jsn-master .btn{border: none;width: 150px;}

   
/* 2026-10-20 (revu le 2026-10-23) : règle de JSN UniForm retirée (.jsn-uf-grecaptchav2) : plus aucun élément ne la porte ; aucun pixel ne change. */
/*************************************/

@media screen and (max-width: 1600px){
	
header.header .header-inner .top .container-fluid {
    width: 95%;
}
.bloc-pdts.row .pdt .photo {
    height: 172px;
}	
}

@media screen and (max-width: 1470px){
	
.container {max-width: 1300px;}
	
header.header .banner p.slogan {top: 27%; left: 300px;font-size: 37px;}	
	
.custom.historique {width: 95%;}
	
#flexslider-91 .slide-desc-box {left: 350px !important;top: 33% !important;}	
	
.bloc-pdts.row .pdt h2 {font-size: 28px;}
	
.present .info h2 {font-size: 40px;}
	
.present .info {font-size: 24px;}
	
.customvehicules {font-size: 26px;}
	
.view-article main#content { margin: 65px 0 80px;}
	
}

@media screen and (max-width: 1300px){
	
.container {max-width: 100%;}
	
.customvehicules {margin: 70px 0;}
	
.custom.historique {margin: 0 auto 70px;}
	
.custom.historique .hist p {padding: 0 15px;}
	
div#nsp-nsp-92.news {
    position: relative;
    display: table;
    margin: auto;
    width: 90%;
}
	
div#nsp-nsp-92.news .nspArt {font-size: 22px;}
	
#flexslider-91 .slide-desc h3 {
    font-size: 33px !important;
    line-height: 1.15em;
}	
	
#flexslider-91 .slide-desc {font-size: 25px !important;}
	
.custom.historique .hist {font-size: 22px;}	
}

@media screen and (max-width: 1240px){
	
header.header .header-inner .top .container-fluid {width: 100%;}
	
.present {gap: 0; padding: 0px 30px 0 97px;}
	
.view-article header.header .banner{height: auto; overflow:unset;}
	
.view-article header.header .banner img {max-width: 100%;height: auto;}
	
header.header .banner p.slogan {font-size: 30px;}	
	
header.header .header-inner .top {height: 140px;}
	
header.header .banner{margin-top:140px}
	
nav#navigation {padding-top: 58px;}
	
body {font-size: 20px;}	
	
.echelle ul.row.row-2 h4 {margin-top: 46px;}
	
.echelle {width: 95%;}
	
.echelle:before {
    height: 340px;
    border-radius: 150px;
}	
	
}

@media screen and (max-width: 1152px){
	
#flexslider-91 .slide-desc {font-size: 21px !important;}
	
#flexslider-91 .slide-desc h3 {
    font-size: 30px !important;
    line-height: 1.15em;
}
	
#flexslider-91 .slide-desc-box {
    left: 220px !important;
    top: 30% !important;
}
	
#flexslider-91.flexslider.position-nav-bottom .flex-control-nav {
    bottom: 110px !important;
    right: 100px !important;
}
.bloc-pdts.row .pdt h2 {padding: 0 29px;}	
	
div#nsp-nsp-92.news {width: 95%;}
	
.present {gap: 0;padding: 0px 10px 0 36px;}	
	
.present .info h2 {font-size: 30px;}
	
.present .photo img {margin-right: 30px;}
	
.present .info {font-size: 22px; margin: 0 20px 0 27px;}
	
.footer-top, .customvehicules {font-size: 24px;}
	
.footer-top {height: 535px; padding: 30px 0 0;}
	
.bloc-pdts.row {margin: -76px 0 80px;}
	
.bloc-pdts.row .pdt {padding: 76px 10px 30px;height: auto;}
	
.bloc-pdts.row .pdt h2 {font-size: 26px;}
	
header.header .banner p.slogan {font-size: 28px; top: 20%; left: 237px;}
	
.footer-container .networks {grid-template-columns: 3fr 2fr;}
	
.customfooter {padding: 45px 0 0;}
	
div#nsp-nsp-92.news .nspArt p.nspText {text-align: center;}
	
div#nsp-nsp-92.news a.readon.fleft {margin: 20px auto 0; float: none; display: table;}
	
.echelle:before{content:none}
	
/* 2026-10-20 (revu le 2026-10-23) : règle de JSN UniForm retirée (.jsn-uf-grecaptchav2, sous 1 152 px) : plus aucun élément ne la porte. */
}

@media screen and (max-width: 1023px){
	
nav.mobile-nav {display: block; padding-top: 55px;}
	
nav.mobile-nav a {float:right;color:#0f61b4;}
	
nav#navigation{display:none;}
	
header.header .header-inner .top {height: 132px; padding: 13px 0 15px;}
	
header.header .banner {margin-top: 132px;}	
	
}

@media screen and (max-width: 992px){
	
div#nsp-nsp-92.news h2.tit-act, .customvehicules h2, .view-article h2 {
    font-size: 28px;
}	
.bloc-pdts.row .pdt .photo {
    height: auto;
}	
.img-left, .img-right { float: none;   margin: auto;}	
	
p.photo-right-pdt,
p.photo-i.ph-1,
p.photo-i.ph-2{
    float: none;
    margin: 0 auto 50px;
	display:table;
}	
	
p.photo-i.ph-2:before { bottom: 60px; right: -7px;}
	
p.photo-i.ph-1:before {bottom: 60px;left: -9px;}
	
.present .photo {height: 450px; margin-bottom:45px}
	
.present .info {margin: 35px auto;}	
		
.view-article h3 {font-size: 28px;}
	
.view-article.itemid-115 .nspArt .fleft {
    float: none;
    display: table;
    margin: auto !important;
}
	
.view-article.itemid-115 .nspArt p.nspText {
    display: table;
    margin: auto;
    padding: 0;
    position: relative;
    top: unset;
    left: unset;
    float: none;
}
.view-article.itemid-115 a.readon.fleft {
    position: relative;
    bottom: unset;
    padding-left: 17px;
}	
	
ul.row.row-1, ul.row.row-2.row {
    display: unset;
    -ms-flex-wrap: unset;
    flex-wrap: unset;
	margin:auto;
}
	
.echelle .col-md-3, .echelle .col-md-4, .row.contacts .col-md-8, 
.row.contacts .col-md-4, .bloc-pdts.row .col-md-4, .custom.historique .col-md-3 {
    -webkit-box-flex: 0;
    -ms-flex: unset;
    flex: unset;
    max-width: unset;
}
.echelle:before{content:none;}
	
.bloc-contact.coord {display: table; margin: 27px auto;}
	
.bloc-pdts.row .pdt { margin: 30px auto;}
	
.present {
    gap: 0;
    padding: 0;
    display: table;
	margin: 70px auto;
    grid-template-columns: unset;
}
	
.present .photo img {
    margin: auto;
    float: none;
    display: table;
}
	
div#nsp-nsp-92.news .nspArt {
    font-size: 25px;
    width: auto;
    float: none;
    display: table;
    margin: 50px auto;
}
	
div#nsp-nsp-92.news .nspArt .nspImageWrapper {
    display: table;
    position: relative;
    margin: auto !important;
    float: none !important;
}
	
.news a.readon.fleft {
    clear: both;
    margin: 25px auto !important; 
    float: none !important;
	display: table;	
}
	
div#nsp-nsp-92.news .nspArt p.nspText {float: none !important;}
	
.footer-container .networks {grid-template-columns: 3fr 2fr; font-size: 18px;}	
	
.customvehicules {margin: 0px 0 70px;}
	
div#nsp-nsp-92.news {width: 100%;}	
.jsn-master .jsn-bootstrap .jsn-form-content .control-group .controls input, 
.jsn-master .jsn-bootstrap .jsn-form-content .control-group .controls select, 
.jsn-master .jsn-bootstrap .jsn-form-content .control-group .controls textarea
{
    width: 95% !important;
}	
}

@media screen and (max-width: 860px){
	
#flexslider-91 .slide-desc-box {left: 100px !important; top: 34% !important;}
	
#flexslider-91 .slide-desc h3 { font-size: 28px !important; margin-bottom: 0;}
	
header.header .banner p.slogan { font-size: 26px; left: 100px; width: 80%;}	
	
header.header .header-inner .top {height: 105px;}
	
header.header .banner {margin-top: 105px;}
	
nav.mobile-nav {padding-top: 44px;}
	
.custom.historique {width: auto;display: table; margin: auto;}
	
.customvehicules h2 {text-align: center; margin: 0 auto 25px;}	
	
div#nsp-nsp-92.news h2.tit-act{text-align: center; margin: 70px auto 0px;}
	
.customvehicules {padding: 0;text-align: center;}
	
.footer-container .networks {grid-template-columns: 3fr 1fr;}	
	
div#nsp-nsp-92.news h2.tit-act, .customvehicules h2, .view-article h2 {font-size: 25px; background-size: 10%;}
	
.view-article main#content {margin: 40px 0 80px;}
	
}

@media screen and (max-width: 767px){

.logo img {max-width: 75%;height: auto;}
	
header.header .header-inner .top {height: 120px;}
	
header.header .banner {margin-top: 120px;}	
	
.footer-container .networks {
    grid-template-columns: 2fr 2fr;
    width: 250px;
    margin: auto;
}
header.header .banner p.slogan {
    font-size: 22px;
    left: 60px;
    width: 85%;
}	
	
}

@media screen and (max-width: 683px){
	
#flexslider-91 .slide-desc-box {display: none !important;}
	
#flexslider-91.flexslider.position-nav-bottom .flex-control-nav {
    clear: both;
    bottom: 153px !important;
    right: unset !important;
    left: 15px !important;
}	
	
#flexslider-91 .flex-control-nav li {display: block !important;}	
	
header.header .banner p.slogan {font-size: 19px;left: 50px;width: 85%;}	
	
}

@media screen and (max-width: 575px){
	
nav.mobile-nav {position: absolute;right: 20px;top: -37px;padding-top: 0;}
	
.present .info h2 {font-size: 30px;}
	
.footer-top, .customvehicules {font-size: 20px;}	
	
}

@media screen and (max-width: 538px){
	
.present .info {font-size: 20px;margin: 0 20px 0 27px;}
	
.present .info h2 {font-size: 24px;}
	
.bloc-pdts.row .pdt h2 {font-size: 22px;}
	
.custom.historique .hist h2 {font-size: 70px;}
	
.custom.historique .hist h2 span.subtitle {font-size: 25px;}
	
div#nsp-nsp-92.news .nspArt p.nspText {font-size: 20px;}
	
header.header .banner p.slogan{display:none}

.present .info a, .customvehicules a, .news a.readon.fleft {
    font-size: 16px;
}	
}



@media screen and (min-width: 1921px) and (max-width: 8000px) {
header.header .header-inner .top .container-fluid,
.container-fluid {max-width:2000px;margin:auto;}
.view-article header.header .banner img{
	max-width:100%; width:100%; height:auto;
}
}


/* 2026-10-20 (revu le 2026-10-23) : sur les 4 pages de formulaire (Itemid 122 « Réclamations »,
   133 « Devenir fournisseur », 135 « Devenir client », 136 « Intégrer Colmar »), JSN UniForm chargeait la feuille de
   JSN Framework (jsn-gui.css, qui importe jsn-general.css) : sa règle globale « iframe { border: 0px; } » retirait la
   bordure grise de 2 px (« 2px inset » du mode quirks) du cadre de la carte Google (module 110, bandeau). JSN est retiré :
   la même règle est reprise ici, pour ces 4 pages seulement (/contactez-nous, sans formulaire, garde sa bordure, comme
   l'original). :where() garde la faible priorité de la règle d'origine (un seul sélecteur d'élément). */
:where(.view-article.itemid-122, .view-article.itemid-133, .view-article.itemid-135, .view-article.itemid-136) iframe {
	border: 0px;
}


/* 2026-10-28 (demande du propriétaire) : bouton du menu mobile rendu visible, sous 1 024 px seulement.
   À l'origine, son icône « fa fa-bars » venait de Font Awesome 4 sur un CDN bloqué : 0 × 0 px, menu inutilisable au toucher.
   Les trois barres sont dessinées ici en CSS (aucun CDN, aucune police) sur le même élément <i class="fa fa-bars"> ; couleur
   du lien d'origine (#0f61b4), bleu du logo (#1b3a9f) au survol et au focus ; zone de toucher de 44 × 44 px, centrée sur la
   hauteur du logo. Les autres icônes « fa » du site ne sont pas touchées (règles limitées à nav.mobile-nav).
   Au-dessus de 1 023 px, le bouton reste masqué (« nav.mobile-nav { display: none; } », en tête de fichier) : rien ne change. */
@media screen and (max-width: 1023px) {
	nav.mobile-nav {position: absolute; top: 50%; right: 8px; margin-top: -22px; padding-top: 0; z-index: 1;}
	nav.mobile-nav a {display: block; float: none; position: relative; width: 44px; height: 44px; color: #0f61b4; -webkit-tap-highlight-color: transparent;}
	nav.mobile-nav a:hover, nav.mobile-nav a:focus {color: #1b3a9f;}
	nav.mobile-nav a:focus-visible {outline: 2px solid #1b3a9f; outline-offset: 2px; border-radius: 4px;}
	nav.mobile-nav a i.fa-bars,
	nav.mobile-nav a i.fa-bars:before,
	nav.mobile-nav a i.fa-bars:after {display: block; position: absolute; width: 26px; height: 3px; border-radius: 2px; background: currentColor; content: "";}
	nav.mobile-nav a i.fa-bars {left: 9px; top: 50%; margin-top: -1.5px;}
	nav.mobile-nav a i.fa-bars:before {left: 0; top: -8px;}
	nav.mobile-nav a i.fa-bars:after {left: 0; top: 8px;}
}
/* Sous 576 px, la colonne du menu passe sous le logo : le bouton est remonté à la hauteur du logo (même place à droite). */
@media screen and (max-width: 575px) {
	nav.mobile-nav {top: -46px; right: 12px;}
}
