/*
Jaune clair : #fbf1e3;
light-gray : #f1f2f2;

*/
:root {
	--bs-canard:#008caf;
	--bs-canard40:#007e9d;
	--bs-canard50:#006f8b;
	--bs-canard64: #00617a;
	--bs-bleublason: #0056a4;
}
html {
	scroll-behavior: smooth;
	overflow-x: hidden;
}

/*************************************************************************/
/**                    responsive : MOBILE FIRST                        **/
/*************************************************************************/

/* X-Small devices (portrait phones, less than 576px / 36em)
 No media query for `xs` since this is the default in Bootstrap */


h2:before {
  background: var(--bs-info);
  opacity:.2;
  border-radius: 50%;
  content: "";
  display: inline-block;
  height: 56px;
  margin: 0 -42px -11px 0;
  width: 60px;
}
h2 span {
	position:relative;
	z-index: 1;
}
.bg-primary h1, .bg-primary h2, .bg-primary h3, .bg-primary h4, .bg-primary h5, 
.bg-primary  .ce-bodytext p, .bg-primary ce-bodytext ul li {
	color: var(--bs-white);
}

.lead {
	position: relative;
	padding: 1rem;
	margin: 2rem 0 3rem 0;
	background:var(--bs-light-gray);
	font-weight: 500;
	border-radius: 20px;
}


.page .lead {
	padding: 2rem 3rem;
}

img, video, svg {
    max-width: 100%;
    height: auto;
}
iframe {
    border: 0;
}

/*** liens et boutons ***/

span.at::before {
    content: '@';
    display: inline-block;
}

.mail, .external-link, .download, .tel, .phone  {
	font-weight: 500;

	text-decoration-thickness: 2px;
	text-decoration-color: var(--bs-primary);
}
.external-link:before, .tel:before, .phone:before, .mail:before, .download:before {
    content: "";
  display: inline-block;
  width: 1.8rem;
  height: 1.8rem;
  margin-right: 0.5em;
  background-color: currentColor;
  -webkit-mask-repeat: no-repeat;
  -webkit-mask-size: contain;
  mask-repeat: no-repeat;
  mask-size: contain;
}

.external-link:before {
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M15 3h6v6'/%3E%3Cpath d='M10 14 21 3'/%3E%3Cpath d='M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6'/%3E%3C/svg%3E");
	mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M15 3h6v6'/%3E%3Cpath d='M10 14 21 3'/%3E%3Cpath d='M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6'/%3E%3C/svg%3E");
}

.tel::before {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M13.832 16.568a1 1 0 0 0 1.213-.303l.355-.465A2 2 0 0 1 17 15h3a2 2 0 0 1 2 2v3a2 2 0 0 1-2 2A18 18 0 0 1 2 4a2 2 0 0 1 2-2h3a2 2 0 0 1 2 2v3a2 2 0 0 1-.8 1.6l-.468.351a1 1 0 0 0-.292 1.233 14 14 0 0 0 6.392 6.384'/%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M13.832 16.568a1 1 0 0 0 1.213-.303l.355-.465A2 2 0 0 1 17 15h3a2 2 0 0 1 2 2v3a2 2 0 0 1-2 2A18 18 0 0 1 2 4a2 2 0 0 1 2-2h3a2 2 0 0 1 2 2v3a2 2 0 0 1-.8 1.6l-.468.351a1 1 0 0 0-.292 1.233 14 14 0 0 0 6.392 6.384'/%3E%3C/svg%3E");
}

.mail:before {
	-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m22 7-8.991 5.727a2 2 0 0 1-2.009 0L2 7'/%3E%3Crect x='2' y='4' width='20' height='16' rx='2'/%3E%3C/svg%3E");
	mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m22 7-8.991 5.727a2 2 0 0 1-2.009 0L2 7'/%3E%3Crect x='2' y='4' width='20' height='16' rx='2'/%3E%3C/svg%3E");
	position: relative;
	top: .2rem;
}

.download:before {
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 15V3'/%3E%3Cpath d='M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4'/%3E%3Cpath d='m7 10 5 5 5-5'/%3E%3C/svg%3E");
	mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 15V3'/%3E%3Cpath d='M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4'/%3E%3Cpath d='m7 10 5 5 5-5'/%3E%3C/svg%3E");
}

/*** generique modale ****/
button.close {
	padding: 1rem 3rem;
    margin:-1rem -1rem -1rem auto;
	font-size: 4rem;
}
/*
.modal {
    z-index:10050 !important;
}
*/

.modal-content {
    height: 100%;
}
.modal-body {
    display: flex;
    flex-direction:column;
	padding: 1rem 3rem;
}
/*** menu pictos ****/
.menu-pictos a, .menu-pictos-svg a {
    text-align: center;
    position: relative;
    text-decoration: none !important;
	font-weight: 600;
	font-family: Arial, 'Segoe UI', Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif;
	font-size:1.8rem;
	letter-spacing: -.05rem;
	width: 10rem;
}
.menu-pictos-svg svg {
	max-height: 100%;
}
.menu-pictos img {
	width:5rem;
	height: 5rem;
}
.menu-pictos a .picto, .menu-pictos a .pictoon, .menu-pictos-svg a span {
    padding: 1rem;
    border-radius: 100%;
    width: 6.5rem;
    height: 6.5rem;
	background-color: var(--bs-info);
	margin-bottom: 1rem;
	display: flex;
	justify-content:center;
	align-items: center;
}

.menu-pictos a:after, .menu-pictos-svg a:after {
    content: "";
	display:block;
	width: 2.5rem;
	height: .5rem;
	margin: auto;
	background-color: transparent;
	transition: all ease-in-out 500ms;
}
.menu-pictos-svg a .cls-2 {
	fill: var(--bs-white);
}
.menu-pictos-svg svg {
	stroke: var(--bs-white);
}
.menu-pictos-svg a:hover:after, .menu-pictos-svg a:focus:after, .menu-pictos-svg a:hover .cls-2, .menu-pictos-svg a:focus .cls-2 {
	fill:var(--bs-yellow);
	background-color:var(--bs-yellow);
}
.menu-pictos-svg a:hover span {
	background-color:var(--bs-primary);
}
.bg-primary .menu-pictos a, .bg-primary .menu-pictos-svg a {
	color: var(--bs-white);
}
/*** menus des sous pages  ***/


/*** generique card ****/

.card {
	text-align: center;
  }
.card-title {
	padding: .6rem;
	font-family: 'Trebuchet MS', 'Lucida Sans Unicode', 'Lucida Grande', 'Lucida Sans', Arial, sans-serif;
	font-size: 1.8rem;
	font-weight: 500;
	letter-spacing: -0.05rem;
	margin: -2.8rem auto 2rem;
	color: #fff;
	background-color: var(--bs-canard40);
	border-radius: 1rem;
  }
.card .h5 {color: black;}
/*** generique accordion ****/

/*** generique tab ****/

/*** generique collapse ****/

#bt_access {
	display:block; 
	margin:auto;
	text-transform: capitalize;
	width: 21rem;
	font-size: 2rem;
	font-weight: 600;
}

#acces_rapide {
	padding-bottom:6rem;
}

#bt_access[aria-expanded="false"] {
	position:absolute;
	top: -3rem;
	left: 50%;
	transform: translateX(-50%);
	transition: all ease 500ms;
	background:var(--bs-white);
	border-radius: 100%;
	height: 7rem;
	border-top: 1px solid var(--bs-light-gray);

}

#bt_access[aria-expanded="false"]:hover, #bt_access[aria-expanded="false"]:focus {
	background-color: var(--bs-light);
}
#bt_access[aria-expanded="false"] .fermer, #bt_access[aria-expanded="true"] .ouvrir {
	display:none;
}

#bt_access[aria-expanded="false"] .ouvrir {
	display: block;
}
#bt_access[aria-expanded="true"] .fermer {
	display: flex;
}
#bt_access i {
	font-size: 2rem;
	line-height: 1rem !important;
	transition: all ease 300ms;
	color: #008caf;
}
#bt_access .fermer {
	display:flex;
	color: var(--bs-dark);
	position: absolute;
	bottom:-2rem;
	padding: .5rem 5rem;
	left: 50%;
transform: translateX(-50%);
	border-radius: 100%;
	background-color: var(--bs-light);
	text-transform: none;
	font-size: 1.7rem;
}

/*** generique dropdown ****/

.dropdown-toggle {
    background: none;
    border: 0 none;
    margin-left: .6rem;
}

/*** styles specifiques rte et contenus ***/
.relative {
	position:relative;
}
.text-right {
	text-align: right;
}
.texte-petit {
	font-size: 80%;
}
.texte-grand {
	font-size: 110%;
}
.texte-tres-grand {
	font-size: 130%;
}
figcaption {
    text-align: center;
    font-stretch:75%;
	letter-spacing: -0.05rem;
    font-size: 1.5rem;
}
.ce-gallery figcaption.video-caption {
    display: table-cell;
}
.ButtonIframe {
    bottom:7rem !important;
}
.alert:before {
	content: "";
	display:inline-block;
	width:3rem;
	height: 2.9rem;
	margin-right: 1.5rem;
	background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 422.68 411.8' fill='%23F2C518' width='30'%3E%3Cg id='Calque_1-2'%3E%3Cpath d='M376.33,311.93c19.7-31.36,31.13-68.43,31.13-108.2C407.46,91.21,316.25,0,203.73,0S0,91.21,0,203.73s91.21,203.73,203.73,203.73c42.95,0,82.77-13.32,115.63-36.02l103.32,40.36-46.35-99.87Zm-172.59,15.36c-14.5,0-26.25-11.75-26.25-26.25s11.75-26.25,26.25-26.25,26.25,11.75,26.25,26.25-11.75,26.25-26.25,26.25Zm26.25-99.25c0,14.44-11.81,26.25-26.25,26.25s-26.25-11.81-26.25-26.25V95.31c0-14.44,11.81-26.25,26.25-26.25s26.25,11.81,26.25,26.25V228.04Z'/%3E%3C/g%3E%3C/svg%3E");
}
:lang(oc) {
    font-style: italic;
}
/* les couleurs */
.bg-danger .frame-default * {
	color: var(--bs-white);
}
.bg-deg {
	background: linear-gradient(var(--bs-white) 50%, var(--bs-gray-200) 100%);
}
.bg-deg-inv {
	background: linear-gradient(var(--bs-gray-200) 50%, var(--bs-white) 100%);
}


.frame-gris, .frame-jaune {
	padding: 2rem;
	margin: 2rem 0;
	position:relative;
	background-color: var(--bs-yellow);
}
.frame-gris *:first-child, .frame-jaune *:first-child, .ce-bodytext *:first-child {
	margin-top: 0;
}
.frame-gris {
	background-color: var(--bs-light-gray);
	border-radius: 2rem;
}

/*** header ***/
.skip-link:focus {
  position: static !important;
  width: auto !important;
  height: auto !important;
  margin: 1rem;
  padding: 0.5rem 1rem;
  background-color: #fff;
  border: 2px solid var(--bs-canard);
  color: #000;
  font-weight: bold;
  text-decoration: none;
  z-index: 1000;
  display: inline-block;
}

/* Optionnel : ajouter une transition pour éviter un effet trop brutal */
.skip-link {
  transition: all 0.1s ease-in-out;
}
#blason {margin-top:1rem;}
#logo {
	padding-left: 1rem;
}
#logo img, #logo svg {
    max-width: 90% !important;
    transition: all ease 500ms;
    fill:#000000;
}
#logo .cls-1{
	fill:var(--bs-primary);
}
.bandeau {
	height: 5rem;

}
.bandeau-image {
	min-height: 9vh;
}

#recherche .fa-search {
	font-size:2.5rem;
}
#main-menu button {
	min-width: 6rem;
	min-height: 8rem;
	justify-content:center;
	border: 0;
	background: var(--bs-white);
}

#main-menu button:hover, #main-menu button:focus, 
#main-menu button:hover g, #main-menu button:focus g,
#main-menu button:hover path, #main-menu button:focus path {
	background: var(--bs-primary);
	color: var(--bs-white);
	fill: var(--bs-white);
}
/*** accessconfig ****/

#a42-ac fieldset {
	border-color: var(--bs-primary);
	background-color: var(--bs-light);
}

#a42-ac h1 {
	color: var(--bs-primary);
}

#a42-ac label {
	margin: 0 .7em .533em .5em;
	font-size: 1.3em;
}

#a42-ac input[type="radio"]+label {
	padding-left: 1.967em;
}

.a42-ac-high-contrast>header:before {
	display: none;
}

/*** menu principal modale ***/
.nav-link {
    line-height: 1.3;
	font-weight: 500;
	color: #000;
	font-size: 1.6rem;
}

.navbar-expand .navbar-nav .nav-link {
	padding: 1rem 0 2rem 0;
    font-size: 2rem;
	font-weight: 500;
	text-align: center;
}

.navbar-expand .navbar-nav .nav-link:after {
    content: "";
    display: block;
    width: 5rem;
    height: .5rem;
    background-color: var(--bs-white);
    margin: 1rem 0;
	transition: all ease 1s;
}

.navbar-expand .navbar-nav .nav-link:hover:after,
.navbar-expand .navbar-nav .nav-link:focus:after,
.navbar-expand .navbar-nav .active .nav-link:after,
.navbar-expand .navbar-nav .current .nav-link:after {
    background-color: var(--bs-primary);
	margin: 1rem auto;
}

.navbar-expand .navbar-nav .dropdown-menu {
    position: static;
}

.modal-body .navbar-nav>li {
    padding-right: 3rem;
}

.dropdown-menu {
    padding: 0;
}

.menu2 {
    width: 100%;
    height: 100%;
}

.menu2 ul li {
    line-height: .9;
    padding-bottom: 1rem;
}

.menu2>li>a {
    display:block;
	font-weight: 500;
    margin-bottom: 1rem;
	text-decoration:none;
	color: var(--bs-dark);
	background-color: var(--bs-white);
	padding: .2rem 1rem;
	transition: all ease-in-out 500ms;
}
.menu2>li>a i {
	color: var(--bs-dark);
	color: var(--bs-primary);
}
.menu3 a {
	display:inline-block;
	padding:.2rem .5rem;
	text-decoration:none;
	color: var(--bs-dark);
}
.menu2>li>a:hover, .menu2>li>a:focus, .menu2>li.active>a, .menu2>li.current>a, 
.menu3 a:hover, .menu3 a:focus, .menu3 li.current a{
	background-color: var(--bs-light-gray);
}
.menu2>li>a:hover i, .menu2>li>a:focus i, .menu2>li.active>a>i, .menu2>li.current a>i {
	color: var(--bs-yellow);
}
.menu3 {
	padding-left:2.5rem;
	font-weight: 400;
	font-size:1.5rem;
}

.menutop .bar {
	display: block;
	width: 1px;
	height: 3rem;
	padding-left: 1rem;
	margin-right: 1rem;
	border-right: 0;
  }
  .menutop li:last-child .bar {
	display: none;
  }
/*** modale ****/
#searchModal .modal-dialog {
    max-width:90vw;
    height: 70vh;
}
#fenetre-menu-principal .modal-dialog {
    max-width:100%;
}
#shareBlock .btn {
	padding-left:1rem; 
	padding-right:1rem;
}
.Xtwitter-icon {width: 2rem;}
/**** classe more à associer avec le svg + ****/
a .more svg, .more svg {
    fill: var(--bs-gray-400);
    align-self: flex-end;
}

a:hover .more svg, a:focus .more svg, a.more:hover svg, a.more:focus svg {
    fill: var(--bs-yellow);
}

.plus {
	display:flex;
	flex-direction:column;
	align-items: flex-end;
	text-decoration: none;
	color: var(--bs-gray-700);
	font-weight: 500;
	text-decoration: none;
	letter-spacing: .0.05rem;
}

.plus:after {
	content: "";
	margin-top: 1rem;
	width: 6rem;
	height: .1rem;
	border-top: 8px dotted var(--bs-gray-600);
}
.plus:hover, .plus:focus {
	color: var(--bs-black);
	text-decoration:underline;
	text-decoration-color: var(--bs-yellow);
}
.plus:hover:after, .plus:focus:after {
	border-color: var(--bs-yellow);
}
.frame-aplat .plus:before {
	position: absolute;
top: 0;
right: 0;
bottom: 0;
left: 0;
z-index: 1;
content: "";
}
/************** les boutons rte *************/


/*** tt_address ***/
.trombi .card {
	flex-basis: 25rem;
}

.annuaire .card {
	border: 0 none;
}
.annuaire .card-text {
	font-size: 1.5rem;
}
.annuaire p {
	line-height: 1.25;
}
/*** slick carousel ****/
.slick-slide img {
	margin: auto;
}
/**** les actus et l'agenda****/
.list-view .article {
	text-decoration: none;
	color: var(--bs-dark);
}
.list-view .article .teaser {
	text-align: center;
	padding: .5rem 2rem;
	color: var(--bs-gray-700);
}

.list-view .article h3 {
	font-size:1.9rem;
	color: inherit;
	font-stretch: 99%;
	margin-bottom: 1.5rem;
	margin-top: 0;
}


.news-img-wrap, .event-image {
	overflow: hidden;
}

.extra {
	color: var(--bs-gray-700);
	font-size: 1.4rem;
	font-stretch: 75%;
}
.extra p {
	display:inline;
	text-transform: uppercase;
}
.thumbnail {
	text-align:center;
	height: 50rem;
	overflow: hidden;
	margin-bottom:2rem;
}
.thumbnail img {
	object-fit: cover;
	height: 100%;
}
/*** specif agenda ***/
.list-view .article .date-event {
	font-size: 2.5rem;
	text-transform: uppercase;
	font-stretch: 75%;
	color: var(--bs-dark);
	background-color: var(--bs-yellow);
	min-width: 15rem;
	min-height: 15rem;
	padding: .5rem;
	margin: -7.5rem auto 0 auto;
	position:relative;
	z-index: 1;
}

.date-event p {
	margin: 0;
	
}

.events a:hover .more svg, .events a:focus .more svg {
    fill: var(--bs-primary);
}
.date-lieu .date{
	background-color: var(--bs-yellow);
	border-radius:2rem;
	display: inline-block;
	padding-right: 2rem;
}
.localisation{
	padding-left:8rem;
	position: relative;
	border-bottom:2px solid var(--bs-light-gray);
	margin-top:1rem;
}
.localisation::before{
	content: '';
	background: url(../Images/SVG/ico-pin-map.svg);
	    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    position: absolute;
    left: 2rem;
    width: 4rem;
    height: 4rem;
}

/*** formulaires - powermail ***/
/***************************** formulaires **********************/

form .row>div>* {
    padding-left: 0;
}

fieldset {
    margin-bottom: 2rem;
}

label,
p.label {
    font-weight: 500;
    font-size: 1.8rem;
}

.form-check label{
    font-weight :normal
}
    
.radio label {
    font-weight: 100;
    line-height: 0;
    font-size: 1.6rem;
}
.form-check label:before, .radio label:before{
    display:none;
}
.help-block p{
    margin :0;
    font-weight: 600;
}

.powermail_fieldwrap_champsobligatoires {
    font-size: smaller;
}


.mandatory {
    color: var(--bs-danger);
}
.powermail_fieldwrap_champsobligatoires .mandatory {
    font-size: 1.7rem;        
}
select {
    border: 1px solid var(--bs-primary);
    background:0 none;
}
input {
	padding: .6rem 1.5rem;
	border-radius:50rem;
	border: 1px solid var(--bs-light-gray);
}
/*** main-content ****/

.breadcrumb-title .rounded-pill {
	margin:.5rem 0 1rem;
}
.breadcrumb {
	list-style: '>';
	
  }
  .breadcrumb-item + .breadcrumb-item:before {
	display: none;
}

.breadcrumb-item {
	padding:0 .8rem 0 .5rem;
	font-size:1.5rem;
	letter-spacing: -0.05rem;
	font-stretch: 75%;
}
.breadcrumb-item:first-child {
	list-style: none;
	padding-left: 0;
}
.breadcrumb-item a {
	color: var(--bs-dark);
}
.breadcrumb-item.active {
	color: var(--bs-black);
  }
.breadcrumb-title .btn:hover, .breadcrumb-title .btn:focus {
	color: var(--bs-primary);

}

.entry-content .ce-bodytext ul {
	padding-left: 4rem;
}
.entry-content .ce-bodytext li {
	margin-bottom: .8rem;
}
#voiraussi {
	padding:2rem;
	margin-top: 3rem;
  }
#voiraussi a{
  padding-left: 0;
}



#extra {
	padding: 3rem 0;
}
#extra a, #voiraussi a {
	font-weight: 500;
	font-size: 1.6rem;
}

/*** footer ****/


#colophon h2 {
	font-size: 2.4rem;
	margin-bottom: 1rem;
}
#colophon h3 {
	font-size: 1.9rem;
	margin:.5rem 0;
}
#colophon h2:before {
	display: none;
}

#colophon .list-inline {
	margin:1rem 0 .5rem 0;
}

#colophon .list-inline-item a {
    font-size:1.5rem;
    border-right: 1px solid var(--bs-light);
    padding:0 .5rem 0 0;
	color: var(--bs-light);
}
#colophon .list-inline-item a, #colophon .reseaux a {
	text-decoration: none;
}
#colophon .list-inline-item a:hover, #colophon .list-inline-item a:focus, #colophon .reseaux a:hover, #colophon .reseaux a:focus {
	text-decoration: underline;
}
#colophon .list-inline-item:last-child a {
    border: 0 none;
}
#colophon .lead {
	background:none;
}
.scroll-button {
  position: fixed;
  right: 1rem;
  bottom: 1.5rem;
  background-color: var(--bs-primary);
  color: white;
  width: 3rem;
  height: 3rem;
  border-radius: 50%;
  z-index: 1000;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: background 0.3s ease;
}

.scroll-button a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  color: inherit;
  text-decoration: none;
  padding: 0.5rem; /* amélioration accessibilité tactile */
}

.scroll-button:hover {
  background-color: #007a99;
}

.scroll-button svg {
  width: 1.5rem;
  height: 1.5rem;
}

/* === Adaptations Tablette et Mobile === */
@media (max-width: 768px) {
  .scroll-button {
    width: 3.5rem;
    height: 3.5rem;
    bottom: 4.5rem; /* décalé vers le haut pour éviter les overlaps */
  }

  .scroll-button svg {
    width: 1.75rem;
    height: 1.75rem;
  }
}

/* === Option : cacher le bouton "go-down" sur tout petit écran === */
@media (max-width: 480px) {
  #go-down {
    display: none !important;
  }
}

/* === Compatibilité iOS : prise en compte des safe areas === */
.scroll-button {
  bottom: calc(env(safe-area-inset-bottom, 0) + 1.5rem);
}


/* Large devices (desktops, 992px / 62em and up) */
@media (min-width: 62em) {
	#main-menu button {
		position: relative;
		top: 2.5rem;
		border-radius: 100rem;
		min-width: 8rem;
		margin: 0 .5rem;
		padding: .75rem 1.5rem;
	}
	
	.entry-title {
		font-size: 4rem;
	}

 h2 {
		margin-top: 3rem;
		margin-bottom: 3rem;
	}
 h3 {
		margin-top:3rem;
		margin-bottom:2.5rem;
	}
	
	.bandeau-image {
	height: 30vh;
	}

	#recherche button {
		transition: all ease 500ms;
	}
	
	#colophon .list-inline-item:last-child a {
		border: 0 none;
	}

	#main-menu button::before {
		content: "";
		display: inline-block;
		width: 100%;
		height: 3rem;
		position: absolute;
		left: 0;
		top: 56%;
		z-index: -1;
		border-radius: 0 0 50% 50% / 0 0 100% 100%;
		background-color: transparent;
		box-shadow: 0 .5rem 1rem rgba(0,0,0,.15) !important;
		transition: all .3s ease;
	  }
	  
}

/* X-Large devices (large desktops, 1200px / 75em and up) */
@media (min-width: 75em) {

	.menu-pictos-svg a {
		width: 12rem;
		font-size: 1.6rem;
	}
    .menu-pictos img, .menu-pictos-svg svg {
		width:7rem;
		height: 7rem;
	}
    .menu-pictos a .picto, .menu-pictos a .pictoon, .menu-pictos-svg a span {
        padding: 2rem;
        width: 12rem;
        height: 12rem;
    }
	#colophon .btn {
		width: 75%;
		margin-bottom: 2rem;
	}
	.entry-content h2, .h2 {
		font-size : 3.4rem;
	}
	.entry-content h3, .h3 {
		font-size : 2.8rem;
	}
	.entry-content h4, .h4 {
		font-size : 2.4rem;
	}
	.entry-content h5, .h5 {
		font-size : 1.8rem;
	}
}

/* XX-Large devices (larger desktops, 1400px / 87.5em and up) */
@media (min-width: 87.5em) {
	.container-xxl {
        max-width: 150rem;
    }
	.bandeau-image {
		height: 45vh;
		}
}
