.content {
  box-sizing: border-box;
}
.content a {
  text-decoration: none;
}
.content a.urlextern {
  background-image:url(/images/picto/external-link.svg);
  background-repeat: no-repeat;
  padding-left: 30px;
}
.content a:hover {
  text-decoration: underline;
}

.article {
  max-width: 45rem;
}

.bouton_bleu a,
.bouton_gris a,
.bouton_jaune a,
.bouton_marron a,
.bouton_rouge a,
.bouton_vert a,
.bouton_violet a,
.bouton_bleu a.urlextern,
.bouton_gris a.urlextern,
.bouton_jaune a.urlextern,
.bouton_marron a.urlextern,
.bouton_rouge a.urlextern,
.bouton_vert a.urlextern,
.bouton_violet a.urlextern {
  display: inline-block;
  background-image:url(/images/picto/fd-blanc.png);
  background-repeat: no-repeat;
  background-position: 0.3rem 0.5rem;
  font-weight: bold;
  text-decoration: none;
  padding-left: 2rem;
  padding-right: 1rem;
  padding-top: 0.2rem;
  padding-bottom: 0.2rem;
  margin-bottom: 0.5rem;
  border-radius: 0.3rem;
  border-width: 1px;
  border-style: solid;
  text-transform: uppercase;
}
.bouton_bleu a:hover,
.bouton_gris a:hover,
.bouton_jaune a:hover,
.bouton_marron a:hover,
.bouton_rouge a:hover,
.bouton_vert a:hover,
.bouton_violet a:hover,
.bouton_bleu a.urlextern:hover,
.bouton_gris a.urlextern:hover,
.bouton_jaune a.urlextern:hover,
.bouton_marron a.urlextern:hover,
.bouton_rouge a.urlextern:hover,
.bouton_vert a.urlextern:hover,
.bouton_violet a.urlextern:hover {
  text-decoration: none;
}

.dates {
  font-weight: bold;
}

.dyn {
  border-style: dashed;
  border-width: 1px;
  border-radius: 5px;
  padding: 2px 5px 0 5px;
  margin-bottom: 0.5rem;
}
.dyn::after {
  content: "Ctrl+F5 pour rafraîchir";
  padding-left: 2rem;
  font-size: 60%;
}

.partage_exp h2 {
  text-align: center;
}
.partage_exp img {
  width: 100%;
  height: 82px;
  object-fit: none;
}
.partage_exp a::before{
  content: url(/images/picto/article-partage.png);
  margin-right: 0.5rem;
}

.tablo-visible table {
  border-collapse: collapse;
}
.tablo-visible th,.tablo-visible td {
  border-width: 1px;
  border-style: solid;
  padding: 0.2rem 0.5rem 0 0.5rem;
}
.tablo-visible thead {
  text-align: left;
}

.tablo-invisible table {
  margin: 0 1rem 1.5rem 1rem;
  border-collapse: collapse;
}
.tablo-invisible th,.tablo-invisible td {
  border-style: none;
  padding: 0.2rem 0.5rem 0 0.5rem;
  font-weight: normal;
  vertical-align: top;
  display: inline-flex;
  flex-direction: column;
}
.tablo-invisible img {
  object-fit: none;
}

.tablo-prog {
  padding-left: 1rem;
}
.tablo-prog table {
  margin-left: 5%;
  margin-bottom: 1rem;
  border-collapse: collapse;
  width: 90%;
}
.tablo-prog thead th,.tablo-prog thead td,.tablo-prog tbody th, .tablo-prog tbody td {
  border-style: none;
  padding: 0.2rem 0.5rem 0 0.5rem;
  text-align: left;
}
.tablo-prog tbody td {
  border-width: 1px;
  border-top-style: solid;
  border-bottom-style: solid;
}


.tablo-5pictos th {width: 6.5rem;}
.tablo-6pictos th {width: 4rem;}

.la-ferme-en-images p {
  margin-bottom: 3rem;
}
.la-ferme-en-images-paysage {
  margin-top: 1rem;
}

.la-ferme-en-images-portrait {
  text-align: center;
  margin-top: 1rem;
}

.bloc-inline {
  padding: 1rem 1rem 0.5rem 1rem;
  margin: 0 0 1rem 2%;
  background-repeat:no-repeat;
  display: inline-block;
  vertical-align: top;
}

.bloc {
  padding: 1rem 1rem 0.5rem 1rem;
  margin: 0 -1rem 1rem -1rem;
  background-repeat:no-repeat;
}
.flex65 {
  clear: both;
}

.float_right {
  margin-left: 1rem;
}

.tablo-inline {
  padding: 0;
  margin: 0;
  display: inline-block;
  vertical-align: top;
}
.tablo-inline table {
  margin-left: 0;
  margin-right: 0;
}

.attention {
  border-radius: 2rem;
  transform: rotate(-2deg);
  vertical-align: text-bottom;
  background-image: url(/images/picto/attention.png);
  background-position: 1rem 50%;
  padding-left: 5rem;
}

.info {
  vertical-align: text-bottom;
  background-image: url(/images/picto/info.png);
  background-position: 1rem 50%;
  padding-left: 5rem;
}

.intervenant {
  border-style: solid;
  border-width: 1px;
  margin-left: 8%;
  margin-right: 8%;
}
.intervenant img {
  float: left;
  margin-right: 2rem;
  margin-bottom: 2rem;
}

.infobul{
  padding: 0 3px 1px 3px;
  border-radius: 5px;
}
.infobul:hover::after,
.infobul:focus::after{
  content: attr(aria-label);
  position: relative;
  padding: 3px 3px 0 3px;
  border-radius: 5px;
  font-size: 0.8rem;
}

.stages-visites {
  padding: 0;
  margin: 0 -1rem -2rem -1rem;
  height: 215px;
  text-align: center;
  font-size: 1.2rem;
  vertical-align: middle;
}

.surlign_info {
  text-transform: uppercase;
  font-size: 0.9rem;
  font-weight: bold;
  padding: 0rem 0.2rem 0.3rem 0.2rem;
  display: inline-block;
  height: 0.9rem;
  border-radius: 0.2rem;
}

.AlignC {
  text-align: center;
}
.AlignL {
  text-align: left;
}
.AlignR {
  text-align: right;
}
.hAlignC h1,
.hAlignC h2,
.hAlignC h3,
.hAlignC h4,
.hAlignC h5,
.hAlignC h6 {
  text-align: center;
}
.hAlignL h1,
.hAlignL h2,
.hAlignL h3,
.hAlignL h4,
.hAlignL h5,
.hAlignL h6 {
  text-align: left;
}
.hAlignR h1,
.hAlignR h2,
.hAlignR h3,
.hAlignR h4,
.hAlignR h5,
.hAlignR h6 {
  text-align: right;
}
.hRotD h1,
.hRotD h2,
.hRotD h3,
.hRotD h4,
.hRotD h5,
.hRotD h6 {
  transform: rotate(1deg);
}
.hRotDD h1,
.hRotDD h2,
.hRotDD h3,
.hRotDD h4,
.hRotDD h5,
.hRotDD h6 {
  transform: rotate(2deg);
}
.hRotG h1,
.hRotG h2,
.hRotG h3,
.hRotG h4,
.hRotG h5,
.hRotG h6 {
  transform: rotate(-1deg);
}
.hRotGG h1,
.hRotGG h2,
.hRotGG h3,
.hRotGG h4,
.hRotGG h5,
.hRotGG h6 {
  transform: rotate(-2deg);
}
