
@font-face {
  font-family: Poppins;
  src: url("../fonts/Poppins-Thin.ttf") format("truetype");
  font-weight: 100;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: Poppins;
  src: url("../fonts/Poppins-ExtraLight.ttf") format("truetype");
  font-weight: 200;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: Poppins;
  src: url("../fonts/Poppins-Light.ttf") format("truetype");
  font-weight: 300;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: Poppins;
  src: url("../fonts/Poppins-Regular.ttf") format("truetype");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: Poppins;
  src: url("../fonts/Poppins-Medium.ttf") format("truetype");
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: Poppins;
  src: url("../fonts/Poppins-SemiBold.ttf") format("truetype");
  font-weight: 600;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: Poppins;
  src: url("../fonts/Poppins-Bold.ttf") format("truetype");
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: Poppins;
  src: url("../fonts/Poppins-ExtraBold.ttf") format("truetype");
  font-weight: 800;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: Poppins;
  src: url("../fonts/Poppins-Black.ttf") format("truetype");
  font-weight: 900;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: Poppins;
  src: url("../fonts/Poppins-ThinItalic.ttf") format("truetype");
  font-weight: 100;
  font-style: italic;
  font-display: swap;
}
@font-face {
  font-family: Poppins;
  src: url("../fonts/Poppins-ExtraLightItalic.ttf") format("truetype");
  font-weight: 200;
  font-style: italic;
  font-display: swap;
}
@font-face {
  font-family: Poppins;
  src: url("../fonts/Poppins-LightItalic.ttf") format("truetype");
  font-weight: 300;
  font-style: italic;
  font-display: swap;
}
@font-face {
  font-family: Poppins;
  src: url("../fonts/Poppins-Italic.ttf") format("truetype");
  font-weight: 400;
  font-style: italic;
  font-display: swap;
}
@font-face {
  font-family: Poppins;
  src: url("../fonts/Poppins-MediumItalic.ttf") format("truetype");
  font-weight: 500;
  font-style: italic;
  font-display: swap;
}
@font-face {
  font-family: Poppins;
  src: url("../fonts/Poppins-SemiBoldItalic.ttf") format("truetype");
  font-weight: 600;
  font-style: italic;
  font-display: swap;
}
@font-face {
  font-family: Poppins;
  src: url("../fonts/Poppins-BoldItalic.ttf") format("truetype");
  font-weight: 700;
  font-style: italic;
  font-display: swap;
}
@font-face {
  font-family: Poppins;
  src: url("../fonts/Poppins-ExtraBoldItalic.ttf") format("truetype");
  font-weight: 800;
  font-style: italic;
  font-display: swap;
}
@font-face {
  font-family: Poppins;
  src: url("../fonts/Poppins-BlackItalic.ttf") format("truetype");
  font-weight: 900;
  font-style: italic;
  font-display: swap;
}
:root {
  --base-blue: #034c96;
  --base-yellow: #F4DC31;
  --base-white: #FFFFFF;
}


header {
  background-color: var(--base-white);
  color: var(--base-blue);
  padding: 10px 1%;
  display: flex;
  justify-content: space-between;
  align-items: center;
  position: sticky;
  top: 0;
  z-index: 1000;
}
header > a {
  width: 5%;
}
header > a img {
  width: 100%;
  object-fit: contain;
}
header nav {
  width: 95%;
  display: flex;
  justify-content: space-between;
  padding: 0 2%;
}
header nav a {
  font-weight: 700;
  font-size: 1.6rem;
  text-decoration: none;
  color: var(--base-blue);
  padding: 0 1vw;
}
header nav a:hover {
  text-decoration: underline;
}
header nav a.active {
  background-color: var(--base-yellow);
}
header button.menu-toggle {
  display: none;
}

@media screen and (max-aspect-ratio: 4/5) {
  header {
    background-color: var(--base-blue);
    display: flex;
    justify-content: space-between;
    padding: 2% 4%;
  }
  header > a {
    width: 15%;
  }
  header > a img {
    width: 100%;
    object-fit: contain;
    filter: brightness(0) invert(1);
  }
  header nav {
    position: absolute;
    display: none;
  }
  header nav.active {
    display: flex;
    flex-direction: column;
    position: absolute;
    top: 100%;
    right: 0;
    background-color: var(--base-blue);
    width: 80vw;
    padding: 2% 4%;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
  }
  header nav a {
    color: var(--base-white);
  }
  header button.menu-toggle {
    display: flex;
    flex-direction: column;
    justify-content: space-around;
    aspect-ratio: 1;
    width: 10vw;
    border: none;
    outline: none;
    background: transparent;
    cursor: pointer;
  }
  header button.menu-toggle .bar {
    width: 100%;
    height: 0.3rem;
    background-color: var(--base-white);
    border-radius: 10px;
  }
}


#accueil {
  font-weight: 900;
}
#accueil .top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  text-align: center;
  gap: 1rem;
  padding: 0 1% 1rem 1%;
}
#accueil .top img {
  max-width: 150px;
  height: auto;
}
#accueil .top h1 {
  color: #034c96;
  font-size: 3.2rem;
}
#accueil .top a {
  background-color: #F4DC31;
  color: #034c96;
  padding: 0.5rem 1rem;
  text-decoration: underline;
  border-radius: 1rem;
  font-size: 2rem;
  font-weight: 700;
}
#accueil .images {
  width: 100%;
  display: flex;
}
#accueil .images img:nth-child(1) {
  width: 33.25%;
}
#accueil .images img:nth-child(2) {
  width: 66.75%;
}
#accueil h2 {
  font-size: 3.2rem;
  text-align: center;
  color: #F4DC31;
  background-color: #034c96;
  padding: 4rem 0;
}

@media screen and (max-aspect-ratio: 4/5) {
  #accueil .top {
    flex-direction: column;
  }
  #accueil .top h1 {
    font-size: 2.4rem;
  }
  #accueil .top img {
    display: none;
  }
  #accueil .images {
    flex-direction: column;
  }
  #accueil .images img {
    width: 100% !important;
  }
  #accueil .images img:not(:first-child) {
    display: none;
  }
  #accueil h2 {
    font-size: 1.1rem;
    padding: 2rem 0;
  }
}


#apropos {
  padding: 2rem 4%;
}
#apropos h2 {
  color: #034c96;
  position: relative;
  width: fit-content;
  font-weight: 700;
}
#apropos h2::before {
  content: "";
  display: block;
  inset: 40% -2% 0 -2%;
  background-color: #F4DC31;
  position: absolute;
  z-index: -1;
}
#apropos h2 {
  font-size: 2.4rem;
  text-align: center;
  margin: 0 auto 2rem auto;
}
#apropos .histoire cite {
  font-style: italic;
  display: block;
  text-align: center;
  margin-bottom: 1.5rem;
}
#apropos .histoire div {
  display: flex;
  justify-content: space-between;
  gap: 8%;
}
#apropos .histoire div p {
  text-align: justify;
  line-height: 1.5;
  margin-bottom: 1.5rem;
  width: 60%;
}
#apropos .histoire div img {
  width: 40%;
  height: auto;
}
#apropos .valeurs {
  margin-top: 4%;
}
#apropos .valeurs > p {
  display: block;
  margin-bottom: 8%;
}
#apropos .valeurs article {
  margin: 4% 0;
}
#apropos .valeurs article h3 {
  margin-bottom: 0.5rem;
}
#apropos .missions img {
  width: 32%;
  height: auto;
  object-fit: contain;
}
#apropos .missions div {
  width: 90%;
  margin: 8% auto 0 auto;
  display: flex;
  justify-content: space-around;
}
#apropos .missions div ol {
  width: 56%;
  counter-reset: item;
  list-style: none;
}
#apropos .missions div ol li {
  margin-bottom: 6%;
  line-height: 1.5;
  counter-increment: item;
}
#apropos .missions div ol li h3 {
  position: relative;
  margin: 2% 0;
}
#apropos .missions div ol li h3:before {
  content: counter(item);
  border-radius: 100%;
  color: var(--base-blue);
  font-size: 5rem;
  font-weight: 700;
  width: 1.2em;
  text-align: center;
  display: inline-block;
  position: absolute;
  right: 100%;
  top: 50%;
  transform: translateY(-50%);
}
#apropos .missions {
  margin-bottom: 8%;
}
#apropos .coeur {
  text-align: center;
}
#apropos .coeur p {
  margin: 4% auto 4% auto;
  width: 60%;
}
#apropos .coeur a {
  color: var(--base-blue);
  font-size: 2rem;
  text-decoration: none;
  border-radius: 4px;
  font-weight: 600;
}

@media screen and (max-aspect-ratio: 4/5) {
  #apropos .histoire cite {
    font-size: 1.4rem;
  }
  #apropos .histoire div {
    flex-direction: column;
  }
  #apropos .histoire div p, #apropos .histoire div img {
    width: 100%;
  }
  #apropos .histoire div img {
    order: 1;
    max-height: 200px;
    object-fit: cover;
    object-position: center;
  }
  #apropos .histoire div p {
    order: 2;
    margin-top: 1.5rem;
    font-size: 1.1rem;
  }
  #apropos .valeurs > p {
    font-size: 1.4rem;
    text-align: center;
  }
  #apropos .valeurs article h3 {
    font-size: 1.6rem;
  }
  #apropos .valeurs article p {
    font-size: 1.1rem;
  }
  #apropos .missions div {
    flex-direction: column;
    align-items: center;
  }
  #apropos .missions div ol {
    width: 95%;
    margin-left: 10%;
  }
  #apropos .missions div ol li h3 {
    font-size: 1.6rem;
  }
  #apropos .missions div ol li h3:before {
    font-size: 3.2rem;
  }
  #apropos .missions div ol li p {
    font-size: 1.1rem;
  }
  #apropos .missions div img {
    width: 100%;
  }
  #apropos .missions img {
    width: 50%;
  }
  #apropos .coeur h2 {
    font-size: 1.6rem;
    margin-bottom: 2%;
  }
  #apropos .coeur p {
    width: 100%;
    font-size: 1.1rem;
  }
  #apropos .coeur a {
    font-size: 1.6rem;
    background-color: var(--base-blue);
    color: white;
    display: block;
  }
}

#nos-boutiques {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  align-items: center;
  justify-items: center;
  margin-left: 1%;
}
#nos-boutiques > article {
  width: 95%;
  display: flex;
  align-items: center;
  margin: 2% 0;
}
#nos-boutiques > article h3 {
  color: #034c96;
  position: relative;
  width: fit-content;
  font-weight: 700;
}
#nos-boutiques > article h3::before {
  content: "";
  display: block;
  inset: 40% -2% 0 -2%;
  background-color: #F4DC31;
  position: absolute;
  z-index: -1;
}
#nos-boutiques > article h3 {
  font-size: 1.6rem;
}
#nos-boutiques > article > img {
  width: 20%;
  height: auto;
  margin-right: 1rem;
}
#nos-boutiques > article p::before {
  content: "";
  display: block;
  width: 8%;
  aspect-ratio: 1/1;
  position: absolute;
  z-index: 100;
  top: 0;
  left: 0;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}
#nos-boutiques > article p {
  position: relative;
  margin: 0;
  padding: 1% 0 0 10%;
  font-size: 1.4rem;
}
#nos-boutiques > article p:nth-child(1)::before {
  background-image: url("../images/icons/loc.png");
}
#nos-boutiques > article p:nth-child(2)::before {
  background-image: url("../images/icons/tel.png");
}
#nos-boutiques > article p:nth-child(3)::before {
  background-image: url("../images/icons/time.png");
}
#nos-boutiques > article:last-of-type p {
  padding: 1% 0 0 0;
}
#nos-boutiques > article:last-of-type p::before {
  display: none;
}
#nos-boutiques > article:nth-of-type(1) {
  flex-direction: column;
}
#nos-boutiques > article:nth-of-type(1) > img {
  width: 70%;
  margin: 0;
}
#nos-boutiques > article:nth-of-type(1) h3 {
  margin: 0 auto;
  text-align: center;
  font-size: 2rem;
}
#nos-boutiques > article:nth-of-type(8) {
  flex-direction: column;
}
#nos-boutiques > article:nth-of-type(8) h3 {
  margin: initial auto;
  text-align: center;
}
#nos-boutiques > article div {
  width: 80%;
}

@media screen and (max-aspect-ratio: 4/5) {
  #nos-boutiques {
    grid-template-columns: 1fr;
  }
  #nos-boutiques > article {
    width: 95%;
    margin: 0 auto 8% auto;
    flex-direction: column;
    align-items: center;
    justify-content: center;
  }
  #nos-boutiques > article:nth-of-type(1) img {
    width: 100%;
  }
  #nos-boutiques > article:nth-of-type(1) h3 {
    font-size: 1.4rem;
    text-decoration: none;
  }
  #nos-boutiques > article div {
    width: 100%;
  }
  #nos-boutiques > article div h3 {
    margin: 0 auto;
    text-align: center;
    font-size: 1.4rem;
    width: 100%;
  }
  #nos-boutiques > article p {
    text-align: center;
    font-size: 1.1rem;
  }
  #nos-boutiques > article img {
    width: 100%;
    max-height: 200px;
    object-fit: cover;
  }
}

#actu {
  min-height: 60vh;
  position: relative;
  margin: 4% 0;
}
#actu h1 {
  color: #034c96;
  position: relative;
  width: fit-content;
  font-weight: 700;
}
#actu h1::before {
  content: "";
  display: block;
  inset: 40% -2% 0 -2%;
  background-color: #F4DC31;
  position: absolute;
  z-index: -1;
}
#actu h1 {
  text-align: center;
  font-size: 3.2rem;
  margin: 0 auto 2% auto;
}
#actu button {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  background-color: transparent;
  border: none;
  font-size: 5rem;
  color: var(--base-blue);
  cursor: pointer;
  z-index: 10;
}
#actu button.left {
  left: 2%;
}
#actu button.right {
  right: 2%;
}
#actu .actu-item {
  display: none;
  margin: 0 auto;
  padding: 2%;
  width: 90%;
  font-size: 1.6rem;
}
#actu .actu-item .actu-title {
  font-size: 2rem;
  text-align: center;
  margin-bottom: 1%;
}
#actu .actu-item .actu-date {
  font-style: italic;
  font-size: 1.4rem;
  color: var(--base-grey-dark);
  margin-bottom: 2%;
}
#actu .actu-item.highlight {
  display: block;
}
#actu .actu-item img {
  display: block;
  max-width: 100%;
  height: auto;
  margin: 2% auto 0 auto;
}

@media screen and (max-aspect-ratio: 4/5) {
  #actu h1 {
    font-size: 2rem;
    margin-top: 10%;
  }
  #actu button {
    font-size: 4rem;
    top: 1.5rem;
  }
  #actu .actu-item {
    font-size: 1.1rem;
    padding: 1%;
  }
  #actu .actu-item .actu-title {
    font-size: 1.6rem;
  }
  #actu .actu-item .actu-date {
    font-size: 1.1rem;
  }
}

#atelier div {
  width: 90%;
  margin: 0 auto 2% auto;
}
#atelier div h1 {
  color: #034c96;
  position: relative;
  width: fit-content;
  font-weight: 700;
}
#atelier div h1::before {
  content: "";
  display: block;
  inset: 40% -2% 0 -2%;
  background-color: #F4DC31;
  position: absolute;
  z-index: -1;
}
#atelier div h1 {
  text-align: center;
  margin: 0 auto 2% auto;
  font-size: 3.2rem;
}
#atelier div:nth-of-type(1) p {
  width: 60%;
  text-align: justify;
}
#atelier div:nth-of-type(1) img {
  float: right;
  width: 30%;
}
#atelier div:nth-of-type(2) {
  display: grid;
  place-items: center;
  grid-template-columns: repeat(4, 1fr);
  gap: 2rem;
}
#atelier div:nth-of-type(2) img {
  width: 100%;
  aspect-ratio: 1/1;
  object-fit: cover;
}

@media screen and (max-aspect-ratio: 4/5) {
  #atelier div:nth-of-type(1) p {
    width: 100%;
    font-size: 1.1rem;
  }
  #atelier div:nth-of-type(1) img {
    float: none;
    width: 80%;
    margin: 1% 10%;
  }
  #atelier div:nth-of-type(2) {
    grid-template-columns: repeat(2, 1fr);
    gap: 1rem;
  }
  #atelier div:nth-of-type(2) img {
    aspect-ratio: 4/3;
  }
}

#partenaires h1 {
  color: #034c96;
  position: relative;
  width: fit-content;
  font-weight: 700;
}
#partenaires h1::before {
  content: "";
  display: block;
  inset: 40% -2% 0 -2%;
  background-color: #F4DC31;
  position: absolute;
  z-index: -1;
}
#partenaires h1 {
  text-align: center;
  margin: 0 auto;
  text-transform: uppercase;
  font-size: 3.2rem;
  margin-bottom: 2%;
}
#partenaires p {
  text-align: center;
  font-size: 1.6rem;
  margin-bottom: 4%;
}
#partenaires div {
  width: 90%;
  margin: 0 auto;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}
#partenaires div img {
  max-width: 25%;
  max-height: 17vh;
  object-fit: contain;
  padding: 2% 2.2%;
}

@media screen and (max-aspect-ratio: 4/5) {
  #partenaires h1 {
    font-size: 1.6rem;
  }
  #partenaires p {
    font-size: 1.1rem;
    margin-bottom: 2%;
  }
  #partenaires div img {
    max-width: 25%;
    max-height: 12vh;
    padding: 1% 1.1%;
  }
}

#dons h1 {
  color: #034c96;
  position: relative;
  width: fit-content;
  font-weight: 700;
}
#dons h1::before {
  content: "";
  display: block;
  inset: 40% -2% 0 -2%;
  background-color: #F4DC31;
  position: absolute;
  z-index: -1;
}
#dons h1 {
  text-align: center;
  margin: 0 auto;
}
#dons h1:nth-of-type(1) {
  font-size: 2rem;
  margin-top: 5%;
}
#dons h1:nth-of-type(2) {
  font-size: 3.2rem;
  margin: 2% auto 5% auto;
}
#dons ul {
  margin: 5% auto;
  list-style: disc;
  width: 80%;
}
#dons ul li {
  font-size: 1.4rem;
}
#dons > .cols {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-around;
  gap: 5%;
}
#dons > .cols .col {
  text-align: center;
  width: 35%;
}
#dons > .cols .col h2 {
  font-size: 2rem;
  margin-bottom: 2%;
}
#dons > .cols .col p {
  font-size: 1.4rem;
  margin: 5% 0;
}
#dons > .cols .col h3 {
  color: #034c96;
  position: relative;
  width: fit-content;
  font-weight: 700;
}
#dons > .cols .col h3::before {
  content: "";
  display: block;
  inset: 40% -2% 0 -2%;
  background-color: #F4DC31;
  position: absolute;
  z-index: -1;
}
#dons > .cols .col h3 {
  margin: 0 auto;
}
#dons > .cols .col h3::before {
  opacity: 0.5;
}
#dons > .cols .col ul {
  list-style: "-";
  margin: 5% auto;
  width: 80%;
}
#dons > .cols .col ul li {
  font-size: 1.4rem;
  width: max-content;
  text-align: center;
  margin: 0 auto 2% auto;
  padding: 1% 3%;
}
#dons .vetements .cols {
  width: 100%;
  display: flex;
  justify-content: space-around;
  margin: 5% auto 0 auto;
  gap: auto;
}
#dons .vetements .cols div {
  width: 15%;
}
#dons .vetements .cols div img {
  width: 100%;
  aspect-ratio: 1/1;
  object-fit: cover;
  object-position: top;
}
#dons .vetements .cols div figcaption {
  font-size: 1.1rem;
  font-weight: 700;
  text-align: center;
}
#dons .objets {
  position: relative;
  width: 100%;
  padding: 0 20%;
  margin: 10% 0;
  overflow: visible;
}
#dons .objets .img {
  position: absolute;
  width: 23%;
  display: block;
  aspect-ratio: 1/1;
  object-fit: cover;
}
#dons .objets .img:nth-of-type(1) {
  bottom: 5vh;
  right: -8%;
}
#dons .objets .img:nth-of-type(2) {
  top: 15vh;
  left: -8%;
}
#dons .objets .img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: top;
  clip-path: url(#clip);
}
#dons .objets .img .bg {
  position: absolute;
  width: 100%;
  height: 100%;
  background-color: var(--base-blue);
  clip-path: url(#clip);
  z-index: -1;
  bottom: 10%;
  right: 8%;
}
#dons .objets .img .bg.two {
  top: 10%;
  left: 8%;
}
#dons .objets p {
  font-size: 1.4rem;
  text-align: center;
  margin: 5% auto;
}
#dons .faq details {
  width: 90%;
  margin: 5% auto;
  font-size: 2rem;
}
#dons .faq details summary {
  font-weight: 700;
  cursor: pointer;
  margin-bottom: 1%;
}
#dons .faq details p {
  width: 90%;
  margin: 0 auto 0 auto;
  font-size: 1.4rem;
}
#dons .faq details p a {
  color: var(--base-blue);
  font-weight: 600;
}

@media screen and (max-aspect-ratio: 4/5) {
  #dons h1:nth-of-type(1) {
    font-size: 1.4rem;
    margin-top: 10%;
    background-color: var(--base-yellow);
  }
  #dons h1:nth-of-type(2) {
    font-size: 2rem;
  }
  #dons ul {
    width: 85%;
  }
  #dons ul li {
    font-size: 1.1rem;
  }
  #dons > .cols {
    flex-direction: column;
    align-items: center;
  }
  #dons > .cols .col {
    width: 80%;
    margin-bottom: 5%;
  }
  #dons > .cols .col h2 {
    font-size: 1.4rem;
  }
  #dons > .cols .col p {
    font-size: 1.1rem;
  }
  #dons > .cols .col h3 {
    font-size: 1.6rem;
  }
  #dons > .cols .col ul li {
    font-size: 1.1rem;
  }
  #dons .vetements .cols {
    flex-wrap: wrap;
    gap: 2%;
  }
  #dons .vetements .cols div {
    width: 40%;
  }
  #dons .vetements .cols div img {
    width: 100%;
  }
  #dons .vetements .cols div figcaption {
    font-size: 1.1rem;
  }
  #dons .vetements .cols div {
    margin: 3% 0;
  }
  #dons .objets {
    padding: 0 10%;
    margin: 0;
  }
  #dons .objets img {
    position: static;
    display: none !important;
  }
  #dons .objets .bg {
    position: static;
    display: none;
  }
  #dons .objets p {
    font-size: 1.1rem;
  }
  #dons .faq h1 {
    font-size: 2rem;
  }
  #dons .faq details {
    font-size: 1.4rem;
  }
  #dons .faq details summary {
    margin-bottom: 2%;
  }
  #dons .faq details p {
    font-size: 1.1rem;
  }
}

#contact h1 {
  color: #034c96;
  position: relative;
  width: fit-content;
  font-weight: 700;
}
#contact h1::before {
  content: "";
  display: block;
  inset: 40% -2% 0 -2%;
  background-color: #F4DC31;
  position: absolute;
  z-index: -1;
}
#contact h1 {
  margin: 0 auto;
  font-size: 2rem;
  margin-bottom: 3%;
}
#contact p {
  width: 75%;
  text-align: center;
  margin: 0 auto;
  font-size: 1.4rem;
  margin-bottom: 5%;
}
#contact article {
  width: 70%;
  margin: 0 auto;
  background-color: var(--base-yellow);
  border-radius: 2rem;
  padding: 1% 4%;
}
#contact article h2 {
  color: var(--base-white);
  text-transform: uppercase;
  margin: 0 auto;
  text-align: center;
  font-size: 3.2rem;
}
#contact article > div {
  display: flex;
  justify-content: stretch;
  align-items: center;
}
#contact article > div .wpforms-container {
  width: 50% !important;
  padding: 0 4% !important;
}
#contact article > div .wpforms-container .wpforms-form {
  width: 100% !important;
}
#contact article > div .wpforms-container .wpforms-field {
  padding: 0.5rem 0;
  clear: both;
}
#contact article > div .wpforms-container input[type=text],
#contact article > div .wpforms-container input[type=email],
#contact article > div .wpforms-container textarea {
  border-radius: 1rem !important;
  border: solid 8px var(--base-blue) !important;
  width: 100% !important;
  padding: 4% 2% !important;
  max-width: none !important;
  height: none !important;
  margin: 0 !important;
}
#contact article > div .wpforms-container .wpforms-submit {
  background-color: var(--base-blue) !important;
  color: var(--base-white) !important;
  border-radius: 2rem !important;
  padding: 6% !important;
  font-size: 1.6rem !important;
  font-weight: 700 !important;
  border: none !important;
  cursor: pointer !important;
  width: 100% !important;
  height: 100% !important;
}
#contact article > div > img {
  width: 50%;
  padding: 0 5%;
}
#contact .cols {
  display: flex;
  justify-content: space-around;
  margin: 8% 0;
}
#contact .cols a {
  width: 25%;
  text-decoration: none;
}
#contact .cols a figure {
  width: 100%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}
#contact .cols a figure svg {
  width: 30%;
  margin: 0 auto;
  fill: var(--base-blue);
}
#contact .cols a figure figcaption {
  color: #034c96;
  position: relative;
  width: fit-content;
  font-weight: 700;
}
#contact .cols a figure figcaption::before {
  content: "";
  display: block;
  inset: 40% -2% 0 -2%;
  background-color: #F4DC31;
  position: absolute;
  z-index: -1;
}
#contact .cols a figure figcaption {
  width: 100%;
  font-size: 1.4rem;
  text-align: center;
  margin-top: 2%;
}
#contact .cols .cols {
  margin: 5% 0;
}
#contact .cols .cols a {
  width: 30%;
  padding: 0 5%;
  font-size: 0;
}

@media screen and (max-aspect-ratio: 4/5) {
  #contact h1 {
    font-size: 1.4rem;
    margin-top: 10%;
    background-color: var(--base-yellow);
    text-align: center;
  }
  #contact p {
    width: 90%;
    font-size: 1.1rem;
  }
  #contact article {
    flex-direction: column;
    width: 95%;
  }
  #contact article h2 {
    margin-top: 4%;
    font-size: 2rem;
  }
  #contact article div > img {
    display: none;
  }
  #contact article div > .wpforms-container {
    width: 100% !important;
    margin: 0 0 5% 0;
  }
  #contact article div > .wpforms-container .wpforms-submit-container {
    text-align: center;
    margin: 0 auto !important;
  }
  #contact .cols {
    margin: 5% 0;
    flex-direction: column;
  }
  #contact .cols a {
    width: 100%;
    padding: 0 5%;
    font-size: 0;
  }
}
body {
  font-family: "Poppins";
  margin: 0;
  padding: 0;
  box-sizing: border-box;
  background-color: var(--base-white);
  color: var(--base-blue);
  font-size: 1.6rem;
  max-width: 100vw;
  overflow-x: hidden;
}

main, main * {
  scroll-margin-top: var(--scroll-offset);
}


footer {
  width: 100%;
  padding: 5% 10%;
  background-color: var(--base-blue);
  color: white;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 5%;
}
footer .cta {
  width: 25%;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
footer .cta a {
  width: 20%;
}
footer .cta a svg {
  width: 100%;
  fill: white;
}
footer nav {
  width: 35%;
  display: flex;
  justify-content: space-between;
}
footer nav .col {
  display: flex;
  flex-direction: column;
  gap: 10px;
}
footer nav .col a {
  color: white;
  font-size: 1.6rem;
}
footer nav .col a:hover {
  text-decoration: underline;
}
footer img {
  width: 13%;
}

@media screen and (max-aspect-ratio: 4/5) {
  footer {
    flex-direction: column;
    align-items: center;
    text-align: center;
    gap: 5%;
  }
  footer .cta {
    display: none;
  }
  footer nav {
    width: 80%;
    flex-direction: column;
    gap: 5%;
  }
  footer nav .col {
    align-items: center;
  }
  footer nav .col a {
    font-size: 1.4rem;
  }
  footer img {
    width: 30%;
  }
}
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

section {
  min-height: 20vh;
}

.see-more {
  display: none;
}

@media screen and (max-aspect-ratio: 4/5) {
  .hidden-block {
    display: none;
  }
  .hidden-block.show {
    display: initial;
  }
  .see-more {
    display: block;
    color: var(--base-blue);
    text-decoration: underline;
    cursor: pointer;
    font-weight: bold;
  }
  .see-more.clicked {
    display: none;
  }
}

/*# sourceMappingURL=style.css.map */
