/***** class *****/
.anchor         { top: -120px; position: relative;}
.intro.nogrid   { display: block;}
.link.partage   { cursor: pointer; text-transform: none; font-weight: 400;}
.link.partage svg {fill:#ffffff; vertical-align: middle; margin-left: 10px;}

@media (min-width:1201px) {
    .link.partage:hover	svg {fill:#DB0000;}
}

@media (max-width:1200px) {
    .anchor         { top: -80px;}
}




/***** top_page *****/
.top_page                           { padding: 140px 0 0;} 
.top_page .texte                    { display: block; position: relative; padding-top: 90px;}

@media (max-width:1200px) { 
.top_page                           { padding: 150px 0 0;}
.top_page .texte                    { padding-top: 0;}
.top_page .intro                    { padding: 0;}
.top_page .content                  { gap: 50px;}
}
@media (max-width:1000px) { 
.top_page                           { padding-top: 130px ;}
.top_page .texte                    { margin-bottom: 40px;}
.top_page .content                  { grid-template-columns: 1fr;}
.top_page .intro                    { margin-top: 0;}
}


/***** breadcrumb *****/
.breadcrumb							{ line-height: 0; position: absolute; top: 0; left: 0; width: max-content;}
.breadcrumb li a                    { color: #fff;}
.breadcrumb li a.active             { color: #db0000;}
.breadcrumb li 						{ display: inline-block; font-size: 12px; line-height: 30px; letter-spacing: 1.2px; margin-right: 30px; position: relative;}
.breadcrumb li:after				{ width: 1px; height: 9px; position: absolute; right: -16px; top: 11px; background: #fff; content: "";}
.breadcrumb li:last-child:after 	{ display: none;}

@media (min-width:1201px) {
.breadcrumb li a:hover				{ color:#db0000;}
}
@media (max-width:1200px) { 
.breadcrumb							{ display: none;}
}

/***** page content *****/
.text_center                        { text-align: center;}
.page_content 						{ position: relative;}
.page_content .quote                { text-align: center; display: inline-block; vertical-align: top;}
.page_content p						{ margin-bottom: 15px;}
.page_content .ul_list a, 
.page_content p a					{ border-bottom: 1px solid transparent; padding-bottom: 2px; color: #db0000;}

.quote                              { right: -60px; bottom: -100%;}

@media (min-width:1201px) {
.page_content .ul_list a:hover,
.page_content p a:hover			    { color: #fff;}
}
@media (max-width:1000px) {
.page_content 					    { padding-bottom: 0;}
.page_content .quote                { display: none;}
}
@media (max-width:700px) {
.page_content p					    { margin-bottom: 10px;}
.page_content .ul_list			    { margin-bottom: 10px;}
}

/***** bloc texte *****/
.bloc_texte							{ margin: 80px auto; position: relative;}
.bloc_texte :last-child				{ margin-bottom: 0;}

@media (max-width:1200px) { 
.bloc_texte							{ margin: 60px auto;}
}
@media (max-width:1000px) { 
.bloc_texte							{ margin: 50px auto;}
}
@media (max-width:700px) { 
.bloc_texte							{ margin: 30px 0;}
}

.types                                      { position: relative; display: grid; grid-template-columns: 1fr 1fr 1fr; gap: 80px; margin: 100px 0; text-align: center;}
.types .item                                { padding: 55px 40px 30px; background-color: #222222; color: #fff; box-shadow: 0 0 0 0 #db0000;}
.types.play .item                           { box-shadow: 20px 20px 0 0 #db0000; transition-duration: 1.5s;}

#plan .types  { text-align: left;}

@media (max-width:1400px) {
.types .item                                { padding: 40px 40px 50px;}
}
@media (max-width:1200px) {
.types                                      { gap: 40px;}
.types .item                                { padding: 30px; box-shadow: 0 0 0 0 #db0000;}
.types.play .item                           { box-shadow: 10px 10px 0 0 #db0000;}
}
@media (max-width:1000px) {
.types                                      { grid-template-columns: 1fr 1fr; margin: 50px 0;}
.types .item:last-of-type                   { grid-column: 1 / -1;}
}
@media (max-width:700px) {
.types                                      { grid-template-columns: 1fr; margin: 40px 0;}
}



/***** moving photos *****/
.moving_gal 						    { width: 100%; font-size: 0; line-height: 0; letter-spacing: 0; text-align: left; position: relative; overflow: hidden; margin-top: 130px; padding-bottom: 80px;}
.moving_gal .wrapper                    { text-align: center;}
.moving_gal .link                       { background-image: linear-gradient(to top, #fff 0% 50%, #1b1b1b 50% 100%); color: #db0000; margin-top: 80px;}
.moving_gal::before                     { content: ""; display: block; position: absolute; top: 20%; left: 0; right: 0; bottom: 0; background: #db0000;}
.moving_gal .row						{ width: 9000px; display: inline-block; vertical-align: middle; position: relative; z-index: 5;}
.moving_gal .row .item 					{ display: inline-block; vertical-align: middle; animation: sliding 50s linear infinite;}
.moving_gal .row .item img 				{ max-height: 480px; display: inline-block; vertical-align: middle; position: relative; transition: all 400ms ease-in-out; margin-left: 30px; object-fit: cover; box-shadow: 40px 40px 40px 0 rgba(0, 0, 0, 0.3); width: auto;}


@keyframes sliding {
0%										{ transform: translateX(0);}
100% 									{ transform: translateX(-100%);}
}

@media (min-width: 1201px){
.moving_gal .link:hover                 { color: #fff;}
}
@media (max-width: 1000px){
.moving_gal                             { margin-top: 80px;}
}
@media (max-width: 700px){
.moving_gal                             { margin-top: 60px; padding-bottom: 50px;}
.moving_gal .row .item img 				{ margin-left: 10px; height: 300px;}
.moving_gal .link                       { margin-top: 50px;}
}