@charset "UTF-8";
/*
font-family: 'aeroregular';
font-family: 'spantaranregular';
*/
/*
0 - 600px:      Phone
600 - 900px:    Tablet portrait
900 - 1200px:   Tablet landscape
[1200 - 1800] is where our normal styles apply
1800px + :      Big desktop

$breakpoint arguement choices:
- phone
- tab-port
- tab-land
- big-desktop

ORDER: Base + typography > general layout + grid > page layout > components
1rem = 10px
1em = 16px
*/
body {
  font-family: "Segoe UI", Tahoma, Geneva, Verdana, sans-serif;
  line-height: 1.2;
  color: grey;
}

.heading-primary {
  font-size: 3.6rem;
  /*
  font-size:2.5em;//36:16 
  */
}

.heading-secondary {
  font-size: 2.4rem;
  /*
  font-size:1.5em;//24:16 
  */
}

.heading-tertio {
  font-size: 2.1rem;
  /*
  font-size:1.3125em;//21:16 
  */
}

:is(h1, h2, h3) {
  margin-block-end: 1.6rem;
}

h1 {
  font-size: 3.6rem;
}

h2 {
  font-size: 3rem;
}

h3 {
  font-size: 2.5rem;
}

h4 {
  font-size: 2rem;
}

h5 {
  font-size: 1.8rem;
}

h6 {
  font-size: 1.4rem;
}

.default-paragraph {
  font-size: 1.6rem;
}

@font-face {
  /*
  X (circle): &#59;&#82;
  X (line): &#219;&#8197;
  F (circle) :&#83;
  F (line) :&#220;
  Localisation (circle) :&#71;
  Localisation (line) :&#251;
  SMS (circle) :&#121;
  SMS (line) :&#200;
  Youtube/video (circle) :&#91;
  Youtube/video (circle) :&#228;
  Instagram (circle) :&#95;
  Instagram (line) :&#232;
  Phone (circle) :&#123;
  Phone (line) :&#202;
  Whatsapp (circle) :&#90;
  Whatsapp (line) :&#227;
  Web (circle) :&#89;
  Web (line) :&#226;
  */
  font-family: "social_media_circledregular";
  src: url("../../public/fonts/social_media_circled-webfont.woff2") format("woff2"), url("../../public/fonts/social_media_circled-webfont.woff") format("woff");
  font-weight: normal;
  font-style: normal;
}
@font-face {
  font-family: "autographyregular";
  src: url("../../public/fonts/autography-webfont.woff2") format("woff2"), url("../../public/fonts/autography-webfont.woff") format("woff");
  font-weight: normal;
  font-style: normal;
}
@font-face {
  font-family: "aeroregular";
  src: url("../../public/fonts/aero-webfont.woff") format("woff2"), url("../../public/fonts/aero-webfont.woff2") format("woff");
  font-weight: normal;
  font-style: normal;
}
@font-face {
  font-family: "spantaranregular";
  src: url("../../public/fonts/spantaran_demo-webfont.woff2") format("woff2"), url("../../public/fonts/spantaran_demo-webfont.woff") format("woff");
  font-weight: normal;
  font-style: normal;
}
.text-link {
  font-size: 1.6rem;
  font-weight: bold;
  color: rgb(132, 46, 27);
}

.box-title {
  width: 100%;
  max-width: 120rem;
  margin: 0 auto;
  scroll-margin-block-end: 1rem;
  margin-bottom: 1rem;
}
.box-title .snd-level-title a {
  display: inline-block;
  font-family: "aeroregular";
  letter-spacing: 0.1rem;
  font-size: 2.3rem;
  color: rgb(68, 70, 71);
}

.responsive-title {
  /*width: 100%;
  max-width: variables.$projet-row;
  margin: 0 auto;
  scroll-margin-block-end: 1rem;
  margin-bottom: 1rem;*/
}
.responsive-title .snd-level-title {
  display: inline-block;
  font-family: "aeroregular";
  letter-spacing: 0.1rem;
  font-size: 2.3rem;
  color: rgb(68, 70, 71);
}

.round-img {
  --size-image: 150px;
  --max-size: 30vw;
  /*border: 1px solid variables.$color-secondary;*/
  border-radius: 50%;
  width: min(var(--size-image), 50%, var(--max-size));
  height: auto;
  padding: 1rem;
  background: rgba(202, 208, 211, 0.3);
  aspect-ratio: 1;
}

.title-width-img-col {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 1rem;
}

.title-width-img-row {
  display: flex;
  flex-flow: row wrap;
  justify-content: center;
  align-items: center;
  gap: 1rem;
  text-align: center;
  margin-bottom: 1.6rem;
  margin-block-end: 1.6rem;
}

.block-margin-md {
  margin-block-start: min(12rem, 20vh);
}

.top-spacing-small {
  margin-top: 2rem;
}

.top-spacing-meduim {
  margin-top: 4rem;
}

.top-spacing-large {
  margin-top: 6rem;
}

.u-mb-2 {
  margin-bottom: 2rem;
}

.u-mb-3 {
  margin-bottom: 3rem;
}

.u-mb-4 {
  margin-bottom: 4rem;
}

.u-mb-5 {
  margin-bottom: 5rem;
}

.u-mb-6 {
  margin-bottom: 6rem;
}

.u-mt-2 {
  margin-top: 2rem;
}

.u-mt-3 {
  margin-top: 3rem;
}

.u-mt-4 {
  margin-top: 4rem;
}

.u-mt-5 {
  margin-top: 5rem;
}

.u-mt-6 {
  margin-top: 6rem;
}

.u-mtb-1 {
  margin-top: 2rem;
  margin-bottom: 2rem;
}

.u-mtb-1 {
  margin-top: 1rem;
  margin-bottom: 1rem;
}

.u-mtb-3 {
  margin-top: 3rem;
  margin-bottom: 3rem;
}

.u-mtb-4 {
  margin-top: 4rem;
  margin-bottom: 4rem;
}

.u-mtb-5 {
  margin-top: 5rem;
  margin-bottom: 5rem;
}

.u-mtb-6 {
  margin-top: 6rem;
  margin-bottom: 6rem;
}

.u-ptb-1 {
  padding-top: 2rem;
  padding-bottom: 2rem;
}

.u-ptb-2 {
  padding-top: 2rem;
  padding-bottom: 2rem;
}

.u-ptb-3 {
  padding-top: 3rem;
  padding-bottom: 3rem;
}

.u-ptb-4 {
  padding-top: 4rem;
  padding-bottom: 4rem;
}

.u-ptb-5 {
  padding-top: 5rem;
  padding-bottom: 5rem;
}

.u-ptb-6 {
  padding-top: 6rem;
  padding-bottom: 6rem;
}

.u-center {
  text-align: center;
}

.r-align {
  display: flex;
  justify-content: flex-end;
  gap: 1rem;
}

.align-self-end {
  justify-self: flex-end;
  justify-self: end;
  justify-self: self-end;
}

.resp-img {
  width: 100%;
  height: auto;
}

.whitebg {
  background-color: aliceblue;
}

.col-2-wrap {
  display: flex;
  flex-flow: row wrap;
  align-items: center;
  gap: 1rem;
}
.col-2-wrap > * {
  flex: 1 0 45ch;
  padding: 2rem;
}

.col-1fr-2fr {
  display: grid;
  grid-template-columns: 1fr 2fr;
  align-items: center;
  gap: 1rem;
}

.col-1fr-3fr {
  display: grid;
  grid-template-columns: 1fr 3fr;
  align-items: center;
  gap: 1rem;
}

.col-1fr-1fr {
  display: grid;
  grid-template-columns: 1fr 1fr;
  align-items: center;
  gap: 1rem;
}

.col-3fr-1fr {
  display: grid;
  grid-template-columns: 3fr 1fr;
  align-items: center;
  gap: 1rem;
}

.col-1fr-5fr {
  display: grid;
  grid-template-columns: 1fr 5fr;
  align-items: center;
  gap: 1rem;
}

div.has-error {
  width: 100%;
  display: block;
  border: 1px solid red;
}

.error-doesnt-exist {
  font-size: 2rem;
  color: rgb(29, 32, 32);
}

.errors-register li {
  font-size: 2rem;
  color: rgb(252, 5, 5);
}

/*
font-family: 'aeroregular';
font-family: 'spantaranregular';
*/
*,
*::after,
*::before {
  padding: 0;
  margin: 0;
  box-sizing: inherit;
}

:root {
  --layout-gap-sm:clamp(1rem, 3vmax, 1.5rem);
  --layout-gap-md:clamp(1.5rem, 6vmax, 3rem);
  --layout-gap-lg:clamp(1.75rem, 8vmax, 4.5rem);
  --block-flow-sm: min(2rem, 4vh);
  --block-flow-md: min(4rem, 8vh);
  --block-flow-lg: min(8rem, 16vh);
}

.layout-gap {
  gap: var(--layout-gap, var(--layout-gap-md));
}

.layout-gap-sm {
  --layout-gap: var(--layout-gap-sm);
}

.layout-gap-lg {
  --layout-gap: var(--layout-gap-lg);
}

.block-flow > * + * {
  margin-block-start: var(--block-flow, var(--block-flow-md));
}

.block-flow-sm {
  --block-flow: var(--block-flow-sm);
}

.block-flow-lg {
  --block-flow: var(--block-flow-lg);
}

html {
  background-image: linear-gradient(-180deg, #363636 90%, #696969 100%);
  font-size: 62.5%;
}
@media only screen and (max-width: 75em) {
  html {
    font-size: 56.25%;
  }
}
@media only screen and (max-width: 56.25em) {
  html {
    font-size: 50%;
  }
}
@media only screen and (min-width: 112.5em) {
  html {
    font-size: 75%;
  }
}

body {
  box-sizing: border-box;
}

ul {
  list-style: none;
  list-style-type: none;
}

p {
  font-size: 1.6rem;
}

a {
  text-decoration: none !important;
  color: #fa876b;
  /* ordre de déclaration des états 
  :visited, quand le lien est visité
  :active, quand le lien est cliqué
  :focus, quand le lien a la focus
  :link, lien normal non visité
  */
}

img {
  display: block;
  max-width: 100%;
}

/*
.row-1-of-2 {
  display: flex;
  flex-flow: row wrap;
  align-items: center;
  gap: 1rem;

  & > * {
    flex: 1 0 80ch;
  }
}
  */
/*
font-family: 'aeroregular';
font-family: 'spantaranregular';
*/
.projet-row {
  width: 100%;
  max-width: 120rem;
  margin: 0 auto;
}
.projet-row:not(:last-child) {
  margin-bottom: 8rem;
}
@media only screen and (max-width: 75em) {
  .projet-row {
    padding: 0 2rem;
  }
}
.projet-row::after {
  content: "";
  clear: both;
  display: table;
}
.projet-row {
  /*
      comportement des bloc
      avec prefixe de class "col-"
  */
}
.projet-row [class^=col-] {
  float: left !important;
}
.projet-row [class^=col-]:not(:last-child) {
  margin-right: 6rem;
}
@media only screen and (max-width: 37.5em) {
  .projet-row [class^=col-] {
    width: 100% !important;
    margin-bottom: 8rem;
  }
}
.projet-row .col-1-of-2 {
  width: calc((100% - 6rem) / 2);
}
.projet-row .col-1-of-3 {
  width: calc((100% - 2 * 6rem) / 3);
}
.projet-row .col-2-of-3 {
  width: calc(2 * (100% - 2 * 6rem) / 3 + 6rem);
}
.projet-row .col-1-of-4 {
  width: calc((100% - 3 * 6rem) / 4);
}
.projet-row .col-2-of-4 {
  width: calc(2 * (100% - 3 * 6rem) / 4 + 6rem);
}
.projet-row .col-3-of-4 {
  width: calc(3 * (100% - 3 * 6rem) / 4 + 2 * 6rem);
}

.wrapper-row {
  padding: 4vw;
}

/*
font-family: 'aeroregular';
font-family: 'spantaranregular';
*/
.header {
  z-index: 2;
}
.header .logo-box {
  position: relative;
  top: 2rem;
  left: 4rem;
  display: inline-block;
}
.header .logo {
  height: 7rem;
  border: none;
}
.header a.logo {
  text-decoration: none;
}

.admin-barMenu {
  z-index: 10000;
  position: fixed;
  width: 30px;
  right: 0.5rem;
  bottom: 10rem;
}

.iconBtn {
  margin: 0.5rem;
  cursor: pointer;
  width: 35px;
  height: 35px;
  background: rgba(0, 0, 0, 0.7);
  border-radius: 50%;
  padding: 4px;
  top: 12px;
}

.editmenu {
  padding-left: 0;
  list-style: none;
  position: absolute;
  width: 5rem;
  right: 0;
  bottom: 5rem;
  align-items: center;
  background: rgba(0, 0, 0, 0.8);
  transition: all 0.3s ease-in-out;
  transform: translateX(0);
}

.editmenu li {
  display: flex;
  flex-flow: row nowrap;
  align-items: center;
  border-bottom: 1px inset #212529;
  padding: 0.5rem;
}

.editmenu li a {
  display: inline-block;
}

.editmenu li span {
  color: white;
  font-size: 1.6rem;
  display: none;
}

.editmenu li a:hover {
  color: rgb(132, 46, 27);
}

.editmenu.is-active {
  transform: translateX(0);
}

.hero header:has(> img:first-child) {
  grid-template-areas: ". . ." ". content ." ". . .";
  grid-auto-columns: minmax(0.5rem, 1fr) min(100% - 1rem, 40ch, minmax(0.5rem, 5fr));
  grid-auto-rows: 8vh auto 8vh;
}
.hero .cta-row:has(> :only-child, > :nth-child(2)) :last-child a {
  background-color: transparent;
  color: white;
}
.hero header > img:first-child {
  /* fill the entire grid */
  grid-area: 1/-1/-1/1;
  /* behave like a background image */
  -o-object-fit: cover;
     object-fit: cover;
  /* height "hack" to prevent image overflow */
  height: 0;
  min-height: 100%;
  width: 100%;
}
.hero header > img:first-child + .owner {
  grid-area: content;
  background-color: rgba(132, 46, 27, 0.5);
  padding: clamp(1.25rem, 5%, 3rem);
  border-radius: 1rem;
  width: 90vw;
  margin: 0 auto;
}
.hero header > img:first-child + .content {
  grid-area: content;
  background-color: rgb(132, 46, 27);
  padding: clamp(1.25rem, 5%, 3rem);
  border-radius: 1.5rem;
  width: min(90vw, 80ch);
}
.hero header > .content:first-child {
  text-align: center;
  font-size: 1.25rem;
  padding: 8vh 1rem;
  margin: min(1.5rem, 4vw);
}
.hero header > .content:first-child .cta-row {
  justify-content: center;
}
.hero header {
  display: grid;
  align-items: center;
  background-color: transparent;
}
.hero header .owner {
  text-align: center;
  width: max(70ch, 100% - 5rem);
  margin: 0 auto;
  padding: 2vh 1vw;
}
.hero header .owner .title {
  color: white;
  font-size: max(3.6rem, 5vw);
}
.hero header .owner p {
  color: white;
  font-size: max(2rem, 2vw);
  font-weight: 200;
  margin-bottom: 6vh;
}
.hero header .content {
  display: grid;
  gap: 1.5rem;
}
.hero header .content .title {
  color: white;
  font-size: max(1.6rem, 3vw);
}
@media only screen and (max-width: 37.5em) {
  .hero header .content .title {
    font-size: max(3.6rem, 5vw);
  }
}
.hero header .content p {
  color: white;
  font-size: max(1.5rem, 1.6vw);
  font-weight: 200;
}
.hero .cta-row {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  gap: 1rem;
  margin-top: 1.5rem;
}
.hero .cta-row a {
  display: inline-block;
  text-decoration: none;
  text-align: center;
  padding: 0.8em 1.6em;
  color: white;
  border: 1px solid;
  background-color: aliceblue;
  border-radius: 0.5rem;
  font-family: 1.6rem;
}

/*
font-family: 'aeroregular';
font-family: 'spantaranregular';
*/
.partner-container {
  position: relative;
  overflow: hidden;
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
  overflow: hidden;
}

.partner-list {
  display: flex;
  gap: 2rem;
  animation: slide infinite linear;
  animation-play-state: running;
  justify-content: center;
}
.partner-list:hover {
  animation-play-state: paused;
}
.partner-list li {
  flex: 0 0 min(15em, 90%);
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: whitesmoke;
  box-shadow: 0 2px 8px rgba(179, 179, 180, 0.15);
  padding: 1rem;
  border-radius: 8px;
  text-align: center;
}
.partner-list__item {
  font-size: large;
}
.partner-list__item img {
  aspect-ratio: auto;
  -o-object-fit: cover;
     object-fit: cover;
  width: 100%;
  height: auto;
}

@keyframes slide {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(-100%);
  }
}
.footer {
  padding: 4vw;
  background: transparent;
  color: rgb(213, 210, 210);
}
.footer .partenaires {
  padding-block: 4vw;
  padding-top: 4vw;
  padding-bottom: 4vw;
}
.footer__item {
  justify-self: center;
}
.footer .address__sigle {
  font-style: normal !important;
  font-weight: bold;
  padding-bottom: 0.5rem;
  font-size: clamp(1.8rem, 10%, 2.5rem);
}
.footer .address__line {
  /*
   i {
        font-family: "social_media_circledregular";
   }*/
  display: flex;
  flex-flow: row nowrap;
  gap: 1.3rem;
  padding-bottom: 0.1rem;
  font-size: clamp(1.4rem, 5%, 1.8rem);
}
.footer__title {
  margin-block-end: 0.7rem;
  display: inline-block;
}
.footer__logo {
  width: 100%;
  max-width: min(50vw, 15rem);
  justify-self: self-end;
}
.footer__link {
  font-size: clamp(1rem, 1rem + 4cqi, 1.6rem);
  text-decoration: none;
  color: rgb(213, 210, 210);
}
.footer__link:hover {
  color: rgb(132, 46, 27);
}
.footer__owner {
  font-size: 1.35rem;
}
.footer__partner img {
  max-height: 5rem;
}
.footer__social-media {
  display: flex;
  justify-content: center;
  gap: 1.6rem;
}
.footer__social-media img {
  width: 100%;
  max-width: 40px;
  filter: grayscale(1);
  transform: scale(0.9);
  transition: all 0.3s ease-in-out;
}
.footer__social-media img:hover {
  filter: brightness(1);
  transform: scale(1);
}
.footer .social-media-box p {
  font-size: x-large;
  margin-bottom: 0.5rem;
}
.footer .social-font {
  font-weight: bold;
  font-family: "social_media_circledregular";
}
.footer .copyright {
  margin-block-start: 1rem;
  padding: 1rem;
  border-top: 1px solid #bab8b8;
  text-align: center;
}

/*
font-family: 'aeroregular';
font-family: 'spantaranregular';
*/
.btn {
  --color-btn:base.$color-primary;
  border: 1px solid var(--color-btn) !important;
  padding: 0.85rem 2rem;
  border-radius: 4px;
  text-decoration: none;
  font-size: 1.6rem;
  display: inline-block;
}
.btn:visited, .btn:link {
  color: var(--color-btn);
}

.btn--primary {
  background-color: rgb(132, 46, 27);
  color: rgb(243, 240, 240) !important;
  transition: background 0.5s linear;
}
.btn--primary:hover {
  background-color: rgb(93, 30, 15);
}

.btn--del {
  --color-btn: red;
  background-color: rgb(213, 210, 210);
  border: 1px solid transparent;
  transition: background 0.5s linear;
  color: rgb(34, 33, 33) !important;
}
.btn--del:hover {
  background-color: rgb(244, 133, 133);
  border: 1px solid transparent;
  color: white !important;
}

.btn--cancel {
  background-color: rgb(213, 210, 210);
  transition: background 0.5s linear;
  padding: unset;
  padding-inline: 2rem;
  padding-block: 0.55em;
}
.btn--cancel:hover {
  background-color: grey;
  color: white;
}

.btn--standard {
  background-color: rgb(213, 210, 210);
}

.bn--default {
  background: grey !important;
}

.btn--outline {
  --color-btn-outline:#9cb74c;
  border: 1px solid var(--color-btn-outline);
  border-radius: 5px;
  padding: 8px 12px;
  font-size: 1.6rem;
  font-weight: bold;
  color: var(--color-btn-outline);
  position: relative;
  display: inline-block;
  margin-block: 2.5rem;
  transition: all 0.35s;
}

.moveright-content {
  background: transparent;
  text-indent: 0.5rem;
  transition: all 0.25s;
  min-width: 180px;
  height: 38px;
}
.moveright-content::before {
  content: "⟶";
  width: 30px;
  height: 100%;
  position: absolute;
  display: grid;
  justify-content: center;
  align-items: center;
  left: 0;
  top: 0;
  background: rgb(132, 46, 27);
  border-top-left-radius: 4px;
  border-bottom-left-radius: 4px;
  font-size: 1.6rem;
  color: white;
  font-weight: bold;
  text-indent: 5px;
  transform-origin: left center;
  transform: translate(-20%, 0) scale(0, 1);
  transition: all 0.25s;
  z-index: 1;
}
.moveright-content:hover {
  --color-btn-outline:white;
  text-indent: 2.5rem;
}
.moveright-content:hover::before {
  background: white;
  color: #9cb74c;
  transform: translate(0, 0) scale(1, 1);
}

/*
font-family: 'aeroregular';
font-family: 'spantaranregular';
*/
.projet-form__group {
  margin-block: 1.2rem;
}
.projet-form label {
  display: block;
  font-size: 1.6rem;
}
.projet-form__input, .projet-form__textarea {
  display: inline-block;
  width: 100%;
  padding: 1rem;
  /*margin-bottom: 1rem !important;*/
  border-radius: 0.4rem;
  border: 1px solid grey;
  background-color: aliceblue !important;
}
.projet-form__select {
  display: inline-block;
  padding: 1rem 1.5rem;
  width: 100%;
  max-width: 22.8rem;
}
.projet-form input[type=submit] {
  display: inline-block;
  padding: 1rem 2rem;
  font-size: 1.6rem;
  background-color: rgb(132, 46, 27);
  color: white;
  border: none;
  border-radius: 0.4rem;
  width: unset;
  cursor: pointer;
  transition: background 0.5s linear;
}
.projet-form input[type=submit]:hover {
  background: rgb(93, 30, 15);
}
.projet-form input[type=file i] {
  width: 100%;
  font-size: 1.6rem;
  padding: 0.5rem;
  border-radius: 3px;
}
.projet-form .wrapper-file {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(60ch, 1fr));
  gap: 1.5rem;
}
.projet-form .wrapper-file > div {
  display: flex;
  flex-flow: row nowrap;
  align-items: center;
  border: 1px solid rgb(140, 145, 147);
  border-radius: 3px;
  padding: 0.8rem;
}
.projet-form .wrapper-file img {
  max-width: 110px;
  border-radius: 3px;
}
.projet-form .section-group {
  display: flex;
  gap: 1.6rem;
}
.projet-form button {
  padding: 1rem 2rem;
  font-size: 1.6rem;
  background-color: rgb(132, 46, 27);
  color: white;
  border: none;
  border-radius: 0.4rem;
  width: unset;
  cursor: pointer;
  transition: background 0.5s linear;
}
.projet-form button:hover {
  background: rgb(93, 30, 15);
}

.flight-form-box {
  --padding: 4vw;
  padding: var(--padding);
  text-align: center;
}
.flight-form-box .flight-form {
  background: rgb(202, 208, 211);
  --width: 170ch;
  max-width: var(--width);
  margin: 0 auto;
  padding: 1.6rem;
  display: flex;
  flex-flow: row wrap;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
}
@media (min-width: 70rem) {
  .flight-form-box .flight-form {
    flex-flow: row nowrap;
  }
}
.flight-form-box .form-group {
  display: flex;
  flex-direction: column;
}
@media (min-width: 70rem) {
  .flight-form-box .form-group > label {
    align-self: flex-start;
    font-size: 1em;
  }
}
.flight-form-box button {
  flex: 0 0 auto;
}

/*
font-family: 'aeroregular';
font-family: 'spantaranregular';
*/
.switch {
  position: relative;
  display: inline-block;
  width: 60px;
  height: 34px;
}
.switch input {
  opacity: 0;
  width: 0;
  height: 0;
}
.switch .off {
  position: absolute;
  cursor: pointer;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgb(140, 145, 147);
  transition: 0.4s;
  border: 0;
}
.switch .off:before {
  position: absolute;
  content: "";
  height: 26px;
  width: 26px;
  left: 4px;
  bottom: 4px;
  background-color: rgb(59, 61, 61);
  transition: 0.4s;
}
.switch input:checked + .off {
  background-color: #2196F3;
}
.switch .active {
  position: absolute;
  cursor: pointer;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: rgb(140, 145, 147);
  transition: 0.4s;
  border: 0;
}
.switch .active:before {
  position: absolute;
  content: "";
  height: 26px;
  width: 26px;
  left: 4px;
  bottom: 4px;
  background-color: rgb(132, 46, 27);
  transition: 0.4s;
}
.switch .active:before {
  transform: translateX(26px);
}
.switch input:focus + .off {
  box-shadow: 0 0 1px #2196F3;
}
.switch input:checked + .off:before {
  transform: translateX(26px);
}
.switch {
  /* Rounded active */
}
.switch .active.round {
  border-radius: 34px;
}
.switch .active.round:before {
  border-radius: 50%;
}
.switch {
  /* Rounded sliders */
}
.switch .off.round {
  border-radius: 34px;
}
.switch .off.round:before {
  border-radius: 50%;
}

/*
font-family: 'aeroregular';
font-family: 'spantaranregular';
*/
.navigation {
  position: absolute;
}
.navigation .navigation__checkbox {
  display: none;
  visibility: hidden;
}
.navigation__button {
  position: fixed;
  top: 2rem;
  right: 8rem;
  width: 5rem;
  height: 5rem;
  border-radius: 50% !important;
  background-color: rgb(132, 46, 27);
  box-shadow: 0 1rem 3rem rgba(0, 0, 0, 0.1);
  /*offset-x | offset-y | blur-radius | spread-radius | color*/
  cursor: pointer;
  z-index: 2000;
  /*
  text-align: center;*/
}
.navigation__background {
  height: 4.8rem;
  width: 4.8rem;
  border-radius: 50%;
  position: fixed;
  top: 2.1rem;
  right: 8.1rem;
  background-image: radial-gradient(rgb(68, 70, 71), rgb(59, 61, 61));
  z-index: 1000;
  transition: transform 0.8s cubic-bezier(0.86, 0, 0.07, 1);
}
.navigation__nav {
  height: 100vh;
  position: fixed;
  top: 0;
  left: -30rem;
  z-index: 1500;
  opacity: 0;
  width: 0;
  transition: all 0.8s cubic-bezier(0.68, -0.55, 0.265, 1.55);
}
.navigation__list {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  list-style: none;
  text-align: center;
  width: 100%;
  display: flex;
  flex-flow: row wrap;
  justify-content: center;
}
.navigation__item {
  margin: 1rem;
}
.navigation__link {
  position: relative;
}
.navigation__link--border, .navigation__link:link, .navigation__link:visited {
  display: inline-block;
  font-size: clamp(2rem, 5%, 10vw);
  font-weight: 300;
  padding: 1rem 2rem;
  color: rgb(243, 240, 240);
  text-decoration: none;
  text-transform: uppercase;
  background-image: linear-gradient(120deg, transparent 0%, transparent 50%, rgb(202, 208, 211) 50%);
  background-size: 220%;
  transition: all 0.4s;
}
.navigation__link--border span, .navigation__link:link span, .navigation__link:visited span {
  margin-right: 1.5rem;
  display: inline-block;
}
.navigation__link:hover, .navigation__link:active {
  background-position: 100%;
  color: rgb(68, 70, 71);
  transform: translateX(1rem);
}
.navigation__link--border {
  background: rgb(68, 70, 71);
  border-radius: 2.5rem;
  transition: all 0.3s;
}
.navigation__link--border::after, .navigation__link--border::before {
  content: "";
  width: 105%;
  height: 120%;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  background-image: conic-gradient(rgb(132, 46, 27), #fa876b, #fa876b, rgb(132, 46, 27));
  border-radius: 2.5rem;
  z-index: -1;
}
.navigation__link--border::before {
  filter: blur(1.3rem);
  opacity: 0.7;
}
.navigation__checkbox:checked ~ .navigation__background {
  transform: scale(80);
}
.navigation__checkbox:checked ~ .navigation__nav {
  left: 0rem;
  opacity: 1;
  width: 100%;
}
.navigation__icon {
  position: relative;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.navigation__icon, .navigation__icon::after, .navigation__icon::before {
  display: inline-block;
  width: 2.8rem;
  height: 2px;
  background-color: rgb(243, 240, 240);
}
.navigation__icon::before, .navigation__icon::after {
  content: "";
  position: absolute;
  transition: all 0.2s;
  left: 0;
}
.navigation__icon::before {
  top: -0.7rem;
}
.navigation__icon::after {
  top: 0.7rem;
}
.navigation__button:hover .navigation__icon::before, .navigation__button:hover .navigation__icon::after {
  /*top: -.85rem;*/
  width: 2rem;
}
.navigation__checkbox:checked + .navigation__button .navigation__icon {
  background: transparent;
}
.navigation__checkbox:checked + .navigation__button .navigation__icon::before {
  top: 0;
  width: 2.8rem;
  height: 3px;
  transform: rotate(135deg);
}
.navigation__checkbox:checked + .navigation__button .navigation__icon::after {
  top: 0;
  width: 2.8rem;
  height: 3px;
  transform: rotate(-135deg);
}

.nav-categ {
  display: inline-block;
  background: rgb(202, 208, 211);
  display: inline-block;
  padding: 1rem 2rem;
  border-radius: 3px;
}

.header-navmenu {
  --speed:0.3s;
  background: transparent;
  display: flex;
  justify-content: space-between;
  padding: 0.8rem;
  position: relative;
  z-index: 10000;
}
.header-navmenu .site-nav-action {
  color: white;
  display: flex;
  height: 2.8rem;
  width: 3.8rem;
  align-items: center;
  align-self: center;
  padding: 0.5rem;
  position: relative;
}
.header-navmenu .site-nav-action__line {
  --background:#fff;
  --height: 0.4rem;
  background-color: var(--background);
  height: var(--height);
  width: 100%;
  transition: all ease-in-out var(--speed);
  cursor: pointer;
}
.header-navmenu .site-nav-action__line:before, .header-navmenu .site-nav-action__line:after {
  background-color: var(--background);
  height: var(--height);
  width: 100%;
  transition: all ease-in-out var(--speed);
  content: "";
  position: absolute;
  left: 0.5rem;
  right: 0.5rem;
  width: auto;
}
.header-navmenu .site-nav-action__line:before {
  top: 0.5rem;
}
.header-navmenu .site-nav-action__line:after {
  bottom: 0.5rem;
}
.header-navmenu #header-navmenu-check:checked + label .site-nav-action__line {
  height: 0;
}
.header-navmenu #header-navmenu-check:checked + label .site-nav-action__line::before {
  transform: translateY(-50%) rotate(45deg);
  top: 50%;
}
.header-navmenu #header-navmenu-check:checked + label .site-nav-action__line::after {
  transform: translateY(50%) rotate(-45deg);
  bottom: 50%;
}
.header-navmenu .dropdown-toggle {
  /* cache le checkbox */
  opacity: 0;
  width: 0;
  height: 0;
  position: absolute;
  /* à quoi sert ce focus? */
}
.header-navmenu .dropdown-toggle:focus + label {
  box-shadow: 0 0 1px 1px transparent;
}
.header-navmenu .dropdown-toggle:checked + label + .dropdown {
  max-height: 100vh;
}
.header-navmenu .dropdown-toggle:checked + label .dropdown-toggle-text:before {
  transform: rotate(45deg);
}
.header-navmenu .dropdown-toggle-text {
  padding-left: 1.25rem;
  position: relative;
}
.header-navmenu .dropdown-toggle-text:before {
  content: "";
  height: 0.5rem;
  width: 0.5rem;
  position: absolute;
  top: 3px;
  left: 0;
  border: solid #fff;
  border-width: 0 2px 2px 0;
  transition: all ease-in-out var(--speed);
  transform: rotate(-45deg);
}
.header-navmenu .site-nav {
  background: rgba(0, 0, 0, 0.95);
  display: flex;
  position: absolute;
  top: 100%;
  left: 0;
  right: 0;
}
.header-navmenu .site-nav__item:not(last-of-type) {
  border-bottom: 1px inset rgb(68, 70, 71);
}
.header-navmenu .nav-list {
  display: flex;
  flex-direction: column;
  width: 100%;
}
.header-navmenu .site-nav__link {
  color: #fff;
  display: block;
  padding: 0.5rem 1rem;
  text-decoration: none;
  font-size: clamp(2rem, 5%, 3rem);
}
.header-navmenu .dropdown {
  height: auto;
  max-height: 0;
  transition: max-height var(--speed) ease-in-out;
  overflow: hidden;
}
.header-navmenu .dropdown:not(.site-nav) {
  padding-left: 1rem;
}
.header-navmenu .dropdown:not(.site-nav) .dropdown {
  padding-left: 1rem;
}
.header-navmenu a:focus {
  box-shadow: 0 0 2px 2px var(--focus);
  outline: none;
}

.nav-article__item {
  padding: 3px 10px;
  background: rgb(33, 38, 19);
  font-size: 1.6rem;
  color: rgb(213, 210, 210);
  transition: all 0.3s ease-in-out;
}
.nav-article__item:hover {
  background-color: rgb(132, 46, 27);
}
.nav-article .currentPage, .nav-article .currentPage:link, .nav-article .currentPage:active {
  background-color: unset;
  pointer-events: none;
  background-color: rgb(132, 46, 27) !important;
}

.details > summary {
  padding: 2px 6px;
  cursor: pointer;
  font-size: large;
}
.details > p {
  font-size: 1.6rem !important;
  padding: 1rem;
}

/*
font-family: 'aeroregular';
font-family: 'spantaranregular';
*/
.horizontal-scroll-snap {
  display: grid;
  grid-auto-flow: column;
  gap: 1.5rem;
  overflow-x: auto;
  scroll-snap-type: x mandatory;
  -webkit-overflow-scrolling: touch;
}
.horizontal-scroll-snap > * {
  width: min(120ch, 85vw);
  scroll-snap-align: center;
  scroll-snap-stop: always;
}
.horizontal-scroll-snap img {
  width: 100%;
}
.horizontal-scroll-snap::-webkit-scrollbar {
  display: none;
}

.scroller {
  max-width: 94rem;
  margin: 0 auto;
}
.scroller[data-animated=true] {
  overflow: hidden;
  -webkit-mask: linear-gradient(90deg, transparent, white 20%, white 80%, transparent);
  mask: linear-gradient(90deg, transparent, white 20%, white 80%, transparent);
}
.scroller[data-animated=true] .scroller__inner {
  width: -moz-max-content;
  width: max-content;
  flex-wrap: nowrap;
  animation: scroll var(--_animation-duration, 40s) var(--_animation-derection, forwards) linear infinite;
}
.scroller[data-direction=right] {
  --_animation-derection: reverse;
}
.scroller[data-direction=left] {
  --_animation-derection: forwards;
}
.scroller__inner {
  padding-block: 1rem;
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 1rem;
}
.scroller .tag-list {
  padding-inline: 0;
}
.scroller .tag-list li {
  min-width: 9rem;
  padding: 1rem;
  background: rgb(68, 70, 71);
  border-radius: 0.5rem;
  box-shadow: 0 0.5rem 1rem -0.25rem rgb(140, 145, 147);
  transition: background linear 0.3s;
}
.scroller .tag-list li a {
  color: white;
  font-size: 1.5rem;
  transition: all 0.3s;
}
.scroller .tag-list li:hover {
  background: rgb(140, 145, 147);
}
.scroller .tag-list li:hover a {
  color: rgb(68, 70, 71);
}

@keyframes scroll {
  to {
    transform: translate(calc(-40% - 0.5rem));
  }
}
.gallery-container {
  overflow-x: auto;
  display: flex;
  gap: 1rem;
  scroll-snap-type: x mandatory;
  -webkit-overflow-scrolling: touch;
  padding-bottom: 1rem;
}

.no-scrollbar {
  scrollbar-width: none; /* Firefox */
  -ms-overflow-style: none; /* IE and Edge */
}
.no-scrollbar::-webkit-scrollbar {
  display: none; /* chrome , Safary and Oprera */
}

.gallery-item {
  flex: 0 0 280px; /* largeur pour les snaps */
  scroll-snap-align: start;
  border-radius: 6px;
  overflow: hidden;
  box-shadow: 0 2px 8px rgba(0, 64, 133, 0.15);
  background: white;
  cursor: pointer;
  position: relative;
  transition: transform 0.25s ease;
}

.gallery-item:hover, .gallery-item:focus {
  transform: scale(1.05);
  outline: none;
}

.gallery-item img {
  width: 100%;
  height: 180px;
  -o-object-fit: cover;
     object-fit: cover;
  display: block;
}

.gallery-item .desc {
  padding: 0.75rem 1rem;
  font-weight: 600;
  color: #003366;
}

/*
font-family: 'aeroregular';
font-family: 'spantaranregular';
*/
.row-search {
  display: flex;
  flex-flow: row wrap;
  gap: 2.5rem;
}
.row-search .row-item {
  flex: 1 0 28rem;
}
.row-search .row-item .details {
  margin-block: 1rem;
  font-size: 1.2rem;
  color: rgb(140, 145, 147);
}
.row-search .row-item .option {
  width: 100%;
  display: flex;
  flex-flow: row wrap;
  align-items: center;
  gap: 1rem;
}
.row-search .row-item .option > * {
  flex: 0 0 auto;
}

.livesearch-pagination {
  display: flex;
  gap: 1rem;
  margin-block: 2rem;
}
.livesearch-pagination .page-item {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0.5rem 1rem;
  min-width: 2.5rem;
  height: 2.5rem;
  background-color: rgb(140, 145, 147);
  color: white;
  border-radius: 3px;
}
.livesearch-pagination .page-item .page-link {
  color: white;
  text-decoration: none;
}
.livesearch-pagination .page-item.active {
  background-color: rgb(68, 70, 71);
}

/*
font-family: 'aeroregular';
font-family: 'spantaranregular';
*/
.author-list {
  display: grid;
  place-content: center;
  /*background: hsl(200, 15%, 73%);//#B0BEC5;*/
  margin-block: 4rem;
}

.social-media .row-item {
  display: flex;
  flex-flow: row wrap;
  gap: 1rem;
  margin-block-end: 1rem;
}
.social-media .option {
  display: flex;
  gap: 1rem;
}

.edit {
  padding: 4rem 1rem;
}

/*
font-family: 'aeroregular';
font-family: 'spantaranregular';
*/
.table {
  border-collapse: collapse;
  width: 100% !important;
  font-family: Arial, sans-serif; /* Police de la table */
  font-size: 14px; /* Taille de police */
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1); /* Ombre de la table */
}
.table th, .table td {
  border: 1px solid #ddd; /* Bordure des cellules */
  padding: 8px; /* Espace intérieur */
  text-align: left; /* Alignement du texte */
}
.table th {
  background-color: rgb(202, 208, 211); /* Couleur de fond pour les en-têtes */
  text-transform: uppercase; /* Mettre en majuscule les en-têtes */
}
.table td {
  width: auto; /* Largeur des cellules */
  height: auto; /* Hauteur des cellules */
}
.table tr:hover {
  background-color: #f1f1f1; /* Couleur au survol de la ligne */
}

/*
font-family: 'aeroregular';
font-family: 'spantaranregular';
*/
.grille-wrap {
  --padding: 5vw;
  --max-width: 280ch;
  padding: var(--padding);
  max-width: var(--max-width);
}

.grille {
  --min:50ch;
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, var(--min)), 1fr));
  gap: var(--layout-gap-md);
}

.card {
  padding: clamp(0.5rem, 5%, 3rem);
  border-radius: 1rem;
  border: 1px solid rgb(202, 208, 211);
}

.card-border {
  padding: clamp(0.5rem, 5%, 3rem);
  background: rgb(68, 70, 71);
  border-radius: 1rem;
  position: relative;
}
@property --angle {
  .card-border {
    syntax: "<angle>";
    initial-value: 0deg;
    inherits: false;
  }
}
.card-border::after, .card-border::before {
  content: "";
  position: absolute;
  height: 100%;
  width: 100%;
  background: conic-gradient(from var(--angle), transparent 70%, #ff253a);
  top: 50%;
  left: 50%;
  translate: -50% -50%;
  z-index: -1;
  padding: 2rem;
  border-radius: 1rem;
  transform: scale(1.01);
  animation: 3s spin linear infinite;
}
.card-border::before {
  filter: blur(1.5rem);
  opacity: 0.5;
}
@keyframes spin {
  from {
    --angle:0deg;
  }
  to {
    --angle: 360deg ;
  }
}

.article {
  display: flex;
  flex-direction: column;
  align-items: center;
}
.article .icone {
  width: min(10rem, 100%);
}
.article .title {
  margin-top: 1rem;
  font-weight: 200;
}
.article .title a {
  color: white;
}
.article__content {
  --min-height: 5rem;
  flex-grow: 1;
  flex-shrink: 0;
  flex-basis: var(--min-height);
  font-size: 1.2rem;
}

.video-container {
  max-width: 800px;
  margin: 20px auto;
  position: relative;
}
.video-container video {
  width: 100%;
  background: rgb(236, 236, 236);
}
.video-container .controls {
  position: absolute;
  bottom: 0;
  width: 100%;
  background: rgba(0, 0, 0, 0.7);
  display: flex;
  align-items: center;
  padding: 10px;
  gap: 10px;
}
.video-container .controls button {
  background: none;
  border: none;
  color: white;
  cursor: pointer;
  font-size: 18px;
}
.video-container .progress {
  flex: 1;
  height: 5px;
  background: #444;
  cursor: pointer;
  position: relative;
}
.video-container .progress-filled {
  height: 100%;
  background: #00f;
  width: 0%;
}
.video-container .time {
  color: white;
  font-family: Arial, sans-serif;
}
.video-container .volume-control {
  display: flex;
  align-items: center;
  gap: 5px;
}

.check-list {
  background-color: aliceblue;
  padding: clamp(1rem, 3%, 2rem);
  border-radius: 0.5rem;
}
.check-list .chek-item {
  display: flex;
  gap: 0.5rem;
  margin: 0 auto;
  padding-block: 0.5rem;
}
@container (min-width:45ch) {
  .check-list li span {
    --color:var(--col) ;
  }
}

/*
font-family: 'aeroregular';
font-family: 'spantaranregular';
*/
.text-over-image-container {
  position: relative;
  max-height: 60rem;
  width: 100%;
  margin: 0 auto;
  overflow: hidden;
}
.text-over-image-container__image {
  display: block;
  width: 100%;
  height: auto;
  -o-object-fit: cover;
  object-fit: cover;
}
.text-over-image-container__overlay {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  color: white;
  text-align: center;
  text-align: center;
  /*background: rgba(base.$color-black, 0.5);*/
  border-radius: 8px;
  padding: 2rem;
  width: 90vw;
  margin-inline: 2vw;
}
.text-over-image-container__overlay .title {
  font-size: max(3.6rem, 5vw);
}
.text-over-image-container__overlay .accroche {
  font-size: max(2rem, 2vw);
  margin-block-end: 1.8rem;
}
.text-over-image-container::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  width: 100%;
  height: 100%;
  background: rgba(18, 18, 18, 0.4);
  z-index: 1;
}
.text-over-image-container__overlay {
  z-index: 2;
}

.text-over-image-grid {
  display: grid;
  grid-template-areas: "hero";
  height: 75vh;
  place-items: center;
  background-color: rgba(250, 135, 107, 0.3);
  overflow: hidden;
}
.text-over-image-grid > * {
  grid-area: hero;
}
.text-over-image-grid__content {
  max-width: min(90vw, 90rem);
  z-index: 1;
}
.text-over-image-grid__media {
  width: 100%;
  height: inherit;
  -o-table-baseline: cover;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: top;
  object-position: top;
  z-index: -1;
}
@media only screen and (max-width: 37.5em) {
  .text-over-image-grid__media {
    height: auto;
  }
}

/*
font-family: 'aeroregular';
font-family: 'spantaranregular';
*/
.avatar-list {
  width: 100%;
  list-style: none;
  border-radius: 0.5rem;
  /*box-shadow: 0.25rem 0.25rem 0.5rem -0.15rem hsl(0 0% 0% / 30%);
  border: 1px solid hsl(200, 16%, 62%);*/
}
.avatar-list img {
  aspect-ratio: auto;
  width: 100%;
  height: auto;
}
.avatar-list li {
  position: relative;
  padding: 1%;
  font-size: 1.35rem;
  font-size: clamp(0.8rem, 0.8rem + 2cqi, 1.5rem);
  color: hsla(0, 0%, 0%, 0.45);
  letter-spacing: 0.03rem;
}
.avatar-list li:nth-child(even) {
  background-color: hsl(204, 73%, 77%);
}
.avatar-list li + li::before {
  content: "";
  position: absolute;
  top: 0;
  left: calc(5% + 1rem);
  right: 3%;
  border-top: 1px solid hsla(0, 0%, 0%, 0.2);
}
.avatar-list figure {
  display: grid;
  grid-template-columns: 15% 1fr;
  align-items: center;
  gap: 1rem;
}
.avatar-list figure .inames {
  text-transform: uppercase;
  font-weight: 700;
  background: #fa876b;
  border-radius: 50%;
  color: white;
  justify-self: center;
  align-self: center;
  padding: 20%;
}

.bio-avatar {
  padding: 4rem 1.5rem;
  background: #fa876b;
}
.bio-avatar :where(* + *) {
  margin-block-start: 1rem;
}
.bio-avatar img {
  max-width: 100%;
}
.bio-avatar .bio {
  border-radius: 0.5rem;
  background: rgb(140, 145, 147);
  box-shadow: 0 0 10px -2px hsla(0, 0%, 0%, 0.85);
  padding: 3%;
  display: grid;
  gap: 1rem;
}
.bio-avatar .bio :is(h3, p) {
  margin-block-start: 0;
}
.bio-avatar .bio:has(.photo) {
  grid-template-columns: min(25vw, 85px) 1fr;
  grid-template-areas: "photo name" "photo bio";
}
.bio-avatar .bio:has(.photo) :not(.photo) {
  grid-column: bio;
}
.bio-avatar .bio .photo {
  grid-area: photo;
}
.bio-avatar .bio .photo {
  aspect-ratio: 1;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: 50%;
}

/*.avatar-list {
    li {
        padding: clamp(.5rem, 3%, 2rem);
    }

    figure {
        display: flex;
        flex-flow: row nowrap;
        justify-items: center;
        align-items: center;
        gap: clamp(.5rem, 3%, 2rem);

        img {
            max-width: min(4rem, 14%);
        }
    }

    img {
        aspect-ratio: 1;
        object-fit: cover;
        width: 100%;
        height: 100%;
        border-radius: 50%; 
    }
}*/
/*
font-family: 'aeroregular';
font-family: 'spantaranregular';
*/
.separator-box {
  display: flex;
  flex-flow: row nowrap;
  align-items: center;
  justify-content: center;
  gap: 2rem;
  padding: 4vw;
}
.separator-box .line {
  display: block;
  width: 100%;
  max-width: 400px;
  height: 1px;
  background: whitesmoke;
}
.separator-box .label {
  text-align: center;
  flex: 1 0 16rem;
}
.separator-box .label__title {
  color: rgb(202, 208, 211);
  font-size: min(90vw, 3rem);
}

.wrapper-user h3 {
  color: white;
}
.wrapper-user table {
  background-color: aliceblue;
  padding: 1rem;
  border-radius: 1rem;
}
.wrapper-user table caption {
  color: #ccc;
  padding-block-end: 1rem;
}

/*
font-family: 'aeroregular';
font-family: 'spantaranregular';
*/
/*
font-family: 'aeroregular';
font-family: 'spantaranregular';
*/
.teaser {
  background-image: linear-gradient(to right bottom, rgba(59, 61, 61, 0.8), rgba(140, 145, 147, 0.8)), url(../../public/images/bg-home.jpg);
  background-size: cover;
  background-position: center;
  position: relative;
  padding-block-end: 2rem;
}
.teaser__wrapper {
  /*min-height: 85vh;*/
  display: flex;
  flex-direction: column;
  align-items: center;
  /*clip-path: polygon(0% 0%, 50% 20%, 100% 0%, 100% 100%, 70% 80%, 0% 100%);*/
}
.teaser__text {
  /* @include centerLeftandTop(28%, 50%);*/
  position: relative;
  margin-block-start: 2vh;
  text-align: center;
  width: 100%;
  padding: 0 1rem;
}
.teaser__text .heading-primary {
  color: rgb(243, 240, 240) !important;
  line-height: 1.2;
}
.teaser__text .heading-primary--main {
  font-size: 4rem;
  display: block;
  text-transform: uppercase;
  font-family: "aeroregular" !important;
}
@media only screen and (max-width: 37.5em) {
  .teaser__text .heading-primary--main {
    font-size: 2.5rem;
  }
}
.teaser__text .heading-primary--sub {
  display: block;
  font-family: "autographyregular" !important;
  font-weight: 100;
}
@media only screen and (max-width: 37.5em) {
  .teaser__text .heading-primary--sub {
    font-size: 2rem;
  }
}

.container-slider {
  padding: 2rem;
  width: 100%;
  background-color: rgba(250, 135, 107, 0.3);
}
.container-slider h2 {
  font-size: 4vh;
}
.container-slider .box {
  height: 220px;
  box-shadow: 2px 10px 12px rgba(18, 18, 18, 0.5);
  border-radius: 3px;
  background: rgb(93, 30, 15);
  margin: 2rem 1.5rem;
  transition: all ease 0.3s;
  position: relative;
}
.container-slider .box::after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  border: 1px solid rgb(243, 240, 240);
  transition: all 0.4s;
  border-radius: 3px;
  opacity: 0;
}
.container-slider .box__picture {
  max-height: 100%;
  width: 100%;
  border-radius: 3px;
  position: relative;
}
.container-slider .box__details {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  text-align: center;
  z-index: 1;
  background-color: red;
}
.container-slider .box:hover {
  transform-style: preserve-3d;
  transform: scale(1.05);
}
.container-slider .box:hover::after {
  transform: scale(0.8);
  opacity: 1;
}
.container-slider .box:hover + .container-slider .box__details {
  display: none;
}

.ws {
  margin-block-end: 2.5rem;
  position: relative;
  width: 100vw;
}
.ws__wrapper {
  width: 100%;
  position: relative;
  bottom: 3rem;
}
.ws__arrow {
  position: absolute;
  display: flex;
  align-items: center;
  justify-content: center;
  color: white;
  background: rgba(132, 46, 27, 0.3);
  top: 45%;
  height: 35px;
  width: 35px;
  border-radius: 50%;
  font-size: 1.6rem;
  cursor: pointer;
}
.ws__arrow:hover {
  background: rgba(93, 30, 15, 0.8);
}
.ws__arrow--left {
  left: 1.5rem;
}
.ws__arrow--right {
  right: 2rem;
}
.ws__sliders {
  display: flex;
  scroll-behavior: smooth;
  scroll-snap-type: x mandatory;
  overflow-x: auto;
}
.ws__sliders::-webkit-scrollbar {
  display: none;
}
.ws__slide {
  margin: 1rem;
  min-width: calc(100% - 20px);
  /*background: rgba(165, 42, 42, 0.444);*/
  border-radius: 5px;
  scroll-snap-align: center;
}
.ws__features {
  --max-width: 180ch;
  max-width: var(--max-width);
  margin: 0 auto;
}
.ws__features li {
  padding: clamp(0.5rem, 3%, 2rem);
  color: white;
}
.ws__features .figure {
  display: flex;
  flex-flow: row nowrap;
  justify-items: center;
  align-items: center;
  gap: clamp(0.5rem, 5%, 2rem);
}
.ws__features .figure h3 {
  font-size: 3.5rem;
  line-height: 1.2;
}
@media only screen and (max-width: 37.5em) {
  .ws__features .figure {
    flex-direction: column;
    text-align: center;
  }
}
.ws__features .item {
  width: 100%;
  max-width: 42em;
  height: auto;
  border-radius: 0.5rem;
  flex: 0 0 auto;
}
.ws__bullets {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 1rem;
}
.ws__bullets .bullet {
  width: 10px;
  height: 10px;
  background-color: rgb(132, 46, 27);
  border-radius: 50%;
}
.ws__bullets .bullet.active {
  background-color: rgb(93, 30, 15);
}

.about .card {
  --img-ratio:2/1;
  display: grid;
  padding: 1rem;
  gap: 1rem;
  border-radius: 0.5rem;
  box-shadow: 0 0 0.5rem rgba(0, 0, 0, 0.35);
}
.about .card > img {
  height: max(18vh, 12rem);
  -o-object-fit: cover;
     object-fit: cover;
  width: 100%;
}
.about .card__content {
  display: grid;
  gap: 0.5rem;
  gap: 1cqb;
  padding: 1.5rem;
  color: var(--color-def);
}
.about .card__content:not(.title) {
  font-size: 0.9rem;
}
@supports (aspect-ratio: 1) {
  .about .card > img {
    aspect-ratio: var(--img-ratio);
    height: auto;
  }
}
.about .card-list {
  align-items: start;
}
.about .card-list li {
  container-type: inline-size;
}
@container (min-width:350px) {
  .about .card {
    --img-ratio:1;
    grid-auto-flow: column;
    align-items: center;
  }
}
@container (min-width:600px) {
  .about .card {
    --img-ratio:2/1;
    grid-template-areas: "card";
    place-items: center;
    overflow: hidden;
  }
  .about .card > * {
    grid-area: card;
  }
  .about .card__content {
    color: white;
  }
  .about .card__content .title > a {
    color: white;
  }
}
.about__content {
  --color:white;
  width: 100%;
  max-width: 56rem;
}
.about__content p {
  font-size: 1.6rem;
}
.about__content:has(h2, a, p) {
  color: var(--color);
}

.blog {
  /*====*/
}
.blog .mobilefriendly {
  width: 100vw;
  position: relative;
  overflow: hidden;
  display: flex;
  align-items: center;
}
.blog .mobilefriendly .track {
  display: inline-flex;
  -moz-user-select: none;
       user-select: none;
  -webkit-user-select: none;
  touch-action: none; /* Empêche le scroll natif sur les écrans tactiles */
}
.blog .mobilefriendly .track .card {
  width: 38rem;
  margin-right: 20px;
  background-color: whitesmoke;
  box-shadow: 0 5px 15px rgba(0, 0, 0, 0.2);
}

.recents {
  padding: 4vw;
}
.recents .travaux {
  position: relative;
  max-width: 1200px;
  margin: 0 auto;
  overflow: hidden;
  color: rgb(140, 145, 147);
}
.recents .carousel-travaux {
  display: flex;
  transition: transform 0.5s ease;
}
.recents .carousel-slide-travaux {
  min-width: 100%;
  box-sizing: border-box;
  padding: 4vw;
}
.recents .carousel-slide-travaux img {
  width: 100%;
  height: auto;
}
.recents .left, .recents .right {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  background: rgba(0, 0, 0, 0.5);
  color: white;
  border: none;
  padding: 10px;
  cursor: pointer;
}
.recents .left {
  left: 10px;
}
.recents .right {
  right: 10px;
}
.recents figure {
  color: transparent;
}
.recents .item {
  display: flex;
  gap: 1.5rem;
  align-items: center;
}
.recents .item > * {
  flex: 1 0 45%;
}
@media (max-width: 723px) {
  .recents .item {
    flex-flow: column;
  }
}
.recents .controls .arrow {
  z-index: 10;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  color: rgba(132, 46, 27, 0.5);
  cursor: pointer;
  padding: 5px;
  font-size: 30px;
  height: 40px;
  width: 40px;
  border-radius: 50%;
  background-color: rgba(243, 240, 240, 0.5);
  transition: all 0.2s ease;
}
.recents .controls .arrow:hover {
  color: rgba(132, 46, 27, 0.9);
}
.recents .controls .arrow {
  display: flex;
  justify-content: center;
  align-items: center;
}
.recents .controls .arrow__selector {
  position: absolute;
  left: 50%;
  transform: translate(-50%);
  bottom: 20px;
  list-style: none;
  display: flex;
  padding: 0;
  margin: 0;
}
.recents .controls .arrow__selector li {
  width: 20px;
  left: 20px;
  margin: 10px;
  border: 2px solid rgb(68, 70, 71);
  border-radius: 50px;
  background: rgb(140, 145, 147);
  cursor: pointer;
}
.recents .controls .arrow__selector li.selected {
  background: rgb(132, 46, 27);
}
.recents .arrow.left {
  left: 10px;
}
.recents .arrow.right {
  right: 10px;
}

.carousel-auto {
  position: relative;
  margin: 0 auto;
  overflow: hidden;
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
  width: 100%;
}
.carousel-auto .prev, .carousel-auto .next,
.carousel-auto .prevBtn, .carousel-auto .nextBtn {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  border: none;
  cursor: pointer;
  background-color: transparent;
}
.carousel-auto .prev > img, .carousel-auto .next > img,
.carousel-auto .prevBtn > img, .carousel-auto .nextBtn > img {
  width: min(4rem, 90vw);
  height: auto;
}
.carousel-auto .prev, .carousel-auto .prevBtn {
  left: 1rem;
}
.carousel-auto .next, .carousel-auto .nextBtn {
  right: 1rem;
}

.carousel-auto-container {
  display: flex;
  transition: transform 0.5s ease-in-out;
  /*gap: 1rem;
  width: 100%;*/
}

.carousel-auto-slide {
  position: relative;
  flex: 1 0 100%;
  max-width: 100%;
  height: 45em;
  background-color: aliceblue;
}
.carousel-auto-slide__picture {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.carousel-auto-slide__overlay {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  color: white;
  text-align: center;
  text-align: center;
  padding: 2rem;
  width: 90vw;
  /*margin-inline: 2vw;*/
}
.carousel-auto-slide__overlay .title {
  font-size: max(3.6rem, 5vw);
}
.carousel-auto-slide__overlay .accroche {
  font-size: max(2rem, 2vw);
  margin-block-end: 1.8rem;
}
.carousel-auto-slide::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  width: 100%;
  height: 100%;
  background: rgba(18, 18, 18, 0.4);
}

.somiat-container {
  display: flex;
  transition: transform 0.5s ease-in-out;
  /*gap: 1rem;
  width: 100%;*/
}

.somiat-slide {
  flex: 0 0 100%;
  max-width: calc(25% - 10px);
  margin: 5px;
  height: 45em;
}
.somiat-slide .cardslide {
  background-color: rgb(164, 210, 250);
  width: 100%;
  height: 100%;
}

.promo {
  background: #fa876b;
}

/*
font-family: 'aeroregular';
font-family: 'spantaranregular';
*/
.showpost {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  grid-template-rows: auto auto auto auto;
  grid-template-areas: "showpost__img showpost__img showpost__img showpost__img showpost__img" "showpost__title showpost__title showpost__title showpost__title showpost__title" "showpost__content showpost__content showpost__content showpost__content showpost__content" "showpost__related showpost__related showpost__related showpost__related showpost__related";
  gap: 1rem;
  padding: 1rem 4.5rem;
}
.showpost__title {
  grid-area: showpost__title;
}
.showpost__img {
  grid-area: showpost__img;
  width: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}
.showpost__content {
  grid-area: showpost__content;
}
.showpost__related {
  grid-area: showpost__related;
}
.showpost__related .grille {
  --min:50ch;
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, var(--min)), 1fr));
  gap: var(--layout-gap-md);
}
.showpost__related .grille .article {
  display: grid;
  grid-auto-rows: min-content;
}
.showpost__related .grille .article__content {
  grid-row: minmax(20rem, auto);
}

@media screen and (min-width: 601px) {
  .showpost {
    display: grid;
    grid-template-columns: 1fr 1fr 25vw 1fr 25vw 1fr 1fr;
    grid-template-rows: auto auto auto auto;
    grid-template-areas: "showpost__img showpost__img showpost__img showpost__img showpost__img . ." ". showpost__title showpost__title showpost__title showpost__title showpost__title ." ". showpost__content showpost__content showpost__content showpost__content showpost__content ." ". showpost__related showpost__related showpost__related showpost__related showpost__related .";
  }
  .showpost__img {
    width: 80rem;
  }
  .descript {
    -moz-column-count: 2;
    column-count: 2;
    -moz-column-gap: 4rem;
    column-gap: 4rem;
    -moz-column-rule: 1px solid #e4dfd9;
    column-rule: 1px solid #e4dfd9;
    hyphens: auto;
  }
}
.see-also {
  display: inline-block;
  padding: 0.5rem 1.6rem;
  font-size: 1.5rem;
  background: rgb(132, 46, 27);
  color: rgb(59, 61, 61);
}

.categories {
  padding: 4rem 1rem;
}

.login {
  display: grid;
  justify-content: center;
  align-items: center;
  min-height: 50vh;
}

/*
font-family: 'aeroregular';
font-family: 'spantaranregular';
*/
.page-header {
  position: relative;
  height: max(35em, 60vh);
  display: block;
  margin-block-end: 2vh;
  background: rgb(68, 70, 71);
  overflow: hidden;
}
.page-header__img {
  /*height: max(75vh, 30rem);*/
  height: max(35em, 60vh);
  object-fit: cover;
  -o-object-fit: cover;
  width: 100%;
  position: relative;
  filter: brightness(0.5);
}
.page-header__content {
  width: 80vw;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
@media (min-width: 800) {
  .page-header__content {
    max-width: 60rem;
  }
}
.page-header__content .icone {
  --max-size: 15vw !important;
}
.page-header__content .accroche, .page-header__content .accroche p {
  font-size: clamp(1.6rem, 5vw, 2rem);
}
.page-header__title {
  font-family: "aeroregular";
  letter-spacing: 0.1rem;
  font-size: clamp(3.5dvw, 6vw, 3.6rem);
  color: rgb(202, 208, 211);
  text-shadow: 1px 1px 0.5rem rgba(0, 0, 0, 0.735);
}
.page-header p {
  color: inherit;
  font-size: 2rem;
  line-height: 1.3;
}

.categ-list {
  --padding: 5vw;
  --max-width: 240ch;
  padding: var(--padding);
  max-width: var(--max-width);
  margin: 0 auto;
}
.categ-list [role=list] {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(40ch, 1fr));
  gap: var(--layout-gap-md);
}
.categ-list .categ {
  display: grid;
  justify-items: center;
  gap: 1rem;
}
.categ-list .categ__content {
  text-align: center;
}
.categ-list .card {
  padding: clamp(0.5rem, 5%, 3rem);
  border-radius: 1rem;
  border: 1px solid lavender;
  background: whitesmoke;
}

.nav-list {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  margin-block: 2rem;
}
.nav-list__item-parent {
  color: grey !important;
  border-right: 1px solid rgb(202, 208, 211);
  padding-inline-end: 1rem;
}

.nav-list-pr {
  justify-content: end;
}

.options {
  display: flex;
  gap: 0.2rem;
  margin-block-start: 2rem;
  align-items: center;
  align-self: flex-end;
}
.options--btn {
  padding: 0.5rem 1rem;
  border-radius: 2.5px;
  background: rgb(132, 46, 27);
  color: aliceblue;
  transition: all ease-in-out;
}
.options--btn:hover {
  background: rgb(93, 30, 15);
}
.options label {
  display: block;
  font-size: 1.6rem;
}
.options input {
  padding: 0.3rem;
  border-radius: 2.5px;
}
.options input[type=submit] {
  padding: 0.5rem 1rem;
  font-size: 1rem;
}
.options input[type=submit]:hover {
  background: rgb(93, 30, 15);
}
.options input[type=file i] {
  width: 100%;
  font-size: 1rem;
  padding: 0.5rem;
  border-radius: 2.5px;
}
.options .wrapper-file {
  gap: 1.5rem;
}
.options .wrapper-file > div {
  border: 1px solid rgb(140, 145, 147);
  border-radius: 2.5px;
  padding: 0.5rem;
}
.options .section-group {
  display: flex;
  gap: 1.6rem;
}
.options button {
  padding: 0.5rem 1rem !important;
  font-size: 1rem;
}

.article .extract {
  font-family: 1.6rem;
}

.list-odd {
  position: fixed;
  left: 0;
  top: 10vw;
  background: white;
}
@media only screen and (max-width: 37.5em) {
  .list-odd {
    position: unset;
    display: grid;
    grid-auto-flow: column;
    gap: 1.5rem;
    margin-block: max(2vh, 3rem);
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    -webkit-overflow-scrolling: touch;
    background: transparent;
  }
  .list-odd > * {
    scroll-snap-align: center;
    scroll-snap-stop: always;
    background-color: aliceblue;
    padding: clamp(1rem, 3%, 2rem);
    border-radius: 0.5rem;
    width: -moz-max-content;
    width: max-content;
  }
}
.list-odd__item {
  display: flex;
  gap: 0.5rem;
}
.list-odd__link {
  font-size: clamp(1.6rem, 5%, 2rem);
  padding: clamp(0.5rem, 1%, 1rem);
}

.contacts {
  width: 100%;
  padding-top: 10vh;
}
.contacts .title {
  text-align: center;
}
.contacts address {
  --width:170ch;
  --padding:4vw;
  max-width: var(--width);
  padding: var(--padding);
  margin: 0 auto;
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(30%, 1fr));
  justify-content: center;
  justify-items: center;
}
.contacts__item {
  display: grid;
  justify-items: center;
  text-align: center;
}
.contacts .reference {
  font-size: clamp(1.6rem, 5%, 6.4rem);
}/*# sourceMappingURL=main.css.map */