/* http://meyerweb.com/eric/tools/css/reset/ 
   v2.0 | 20110126
   License: none (public domain)
*/
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
}

/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
  display: block;
}

body {
  line-height: 1;
}

ol, ul {
  list-style: none;
}

blockquote, q {
  quotes: none;
}

blockquote:before, blockquote:after,
q:before, q:after {
  content: "";
  content: none;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

/* FONTS */
.font-title, h4, h3, h2, h1 {
  font-family: "Italiana", sans-serif;
  font-weight: 400;
  font-style: normal;
}

.font-sans, h5, body {
  font-family: "Nunito Sans", sans-serif;
  font-weight: 400;
  font-style: normal;
}

.font-sans-italic, .entry-content em {
  font-family: "Nunito Sans", sans-serif;
  font-weight: 400;
  font-style: italic;
}

.font-sans-bold, .entry-content strong, .entry-content h4, .entry-content h3 {
  font-family: "Nunito Sans", sans-serif;
  font-weight: 700;
  font-style: normal;
}

.font-sans-bold-italic, .entry-content em strong, .entry-content strong em {
  font-family: "Nunito Sans", sans-serif;
  font-weight: 700;
  font-style: italic;
}

/* COLORS */
/* SCREEN SIZES */
/* MISC */
* {
  box-sizing: border-box;
}

html {
  font-size: 62.5%;
  min-height: 100vh;
}

body {
  color: #262626;
  font-size: 1.6rem;
  line-height: 1.2;
}

a {
  color: #196383;
  text-decoration: none;
}
a:hover {
  color: #bfb09d;
}

p {
  line-height: 1.5;
}

em {
  font-style: italic;
}

sup {
  vertical-align: super;
  font-size: smaller;
}

.container {
  margin: 0 auto;
  max-width: 1170px;
}

/* HEADER/FOOTER/NAV */
header .container {
  align-items: center;
  display: flex;
  justify-content: space-between;
  padding: 4rem 0;
  max-width: 1200px;
}
header .logo {
  color: #262626;
  text-decoration: none;
}
header nav ul {
  justify-content: flex-end;
}
header nav ul li a {
  font-size: 18px;
}
header .open-nav,
header .close-nav {
  display: none;
}

nav ul {
  align-items: center;
  display: flex;
}
nav ul li {
  margin-left: 0.8rem;
}
nav ul a {
  color: #262626;
  padding: 0.5rem;
  text-decoration: none;
}
nav ul a:hover {
  color: #196383;
}
nav ul .btn {
  margin-left: 1rem;
}

footer {
  background: #F2F5F0;
  text-align: center;
}
footer .container {
  padding: 2rem 0;
}
footer .footer-header {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  grid-gap: 10px;
  padding-top: 2rem;
}
footer .footer-contact h4 {
  margin-bottom: 2rem;
}
footer .footer-contact p + p {
  margin-top: 1rem;
}
footer .footer-nav {
  flex-direction: column;
}
footer .footer-nav h4 {
  margin-bottom: 2rem;
}
footer nav {
  margin: 0 0 4rem;
}
footer nav ul {
  display: block;
}
footer nav ul li {
  margin: 0 0 1rem 0;
}
footer nav ul li:last-child {
  display: none;
}
footer nav .bull {
  display: none;
}
footer nav .btn {
  background: #bfb09d;
  color: #FFFFFF;
}
footer .footer-down {
  color: grey;
  font-size: 1.3rem;
}

/* TITLES */
h1 {
  font-size: 4.8rem;
}

h2 {
  font-size: 4rem;
  line-height: 1.2;
}

h3 {
  font-size: 3rem;
  line-height: 1.2;
}

h4 {
  font-size: 2.4rem;
  line-height: 1.2;
}

h5 {
  font-size: 2rem;
  line-height: 1.2;
}

/* BUTTONS */
.btn {
  background: #DDEBF1;
  border-radius: 0.2rem;
  color: #262626;
  display: inline-block;
  line-height: 1.6;
  padding: 1rem 2rem;
  transition: background 0.2s linear;
}
.btn:hover {
  background: #196383;
  color: #FFFFFF;
}
.btn.is-dark {
  background: #196383;
  color: #FFFFFF;
}
.btn.is-dark:hover {
  background: #DDEBF1;
  color: #262626;
}

/* MODIFIERS */
.home footer {
  margin-top: 8rem;
}

.home-infos {
  margin: 6rem 0 3rem;
}
.home-infos h3 {
  margin-bottom: 2rem;
  text-align: center;
}
.home-infos p {
  line-height: 1.5;
}
.home-infos p + p {
  margin-top: 2rem;
}

.swiper {
  height: 70vh;
  min-height: 49rem;
  width: 100%;
}
.swiper-slide img {
  display: block;
  height: 100%;
  object-fit: cover;
  width: 100%;
}
.swiper-pagination-bullet-active {
  background: #196383;
}

.slider {
  position: relative;
}
.slider-text {
  background: rgba(221, 235, 241, 0.85);
  height: auto;
  left: 50%;
  max-width: 100rem;
  padding: 80px;
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);
  width: 100rem;
  z-index: 10;
}
.slider h2 {
  margin-bottom: 2rem;
  text-align: center;
  white-space: nowrap;
}
.slider p {
  line-height: 1.5;
}
.slider p + p {
  margin-top: 2rem;
}

.page-content h3 {
  margin: 4rem 0;
  text-align: center;
}
.page-content-intro {
  line-height: 1.4;
  margin: 2rem auto 8rem;
  max-width: 80%;
}

.services {
  margin-top: 8rem;
}
.services h3 {
  margin-bottom: 6rem;
  text-align: center;
}

.list-services,
.list-grossesse {
  display: flex;
  flex-wrap: wrap;
  justify-content: start;
  margin: 0 -1rem;
}
.list-services li,
.list-grossesse li {
  background: #DDEBF1;
  display: block;
  margin: 1rem;
  min-height: 30rem;
  width: calc(20% - 2rem);
}
.list-services a,
.list-grossesse a {
  align-items: flex-end;
  background: #196383;
  display: flex;
  height: 100%;
  justify-content: center;
  overflow: hidden;
  position: relative;
  text-align: center;
}
.list-services a .bg,
.list-grossesse a .bg {
  background: #196383 no-repeat center center;
  background-size: cover;
  bottom: 0;
  display: block;
  left: 0;
  opacity: 0.8;
  position: absolute;
  right: 0;
  top: 0;
  transition: opacity 0.2s linear, transform 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  z-index: 1;
}
.list-services a .text,
.list-grossesse a .text {
  align-items: center;
  background: #FFFFFF;
  color: #262626;
  display: flex;
  height: 8rem;
  justify-content: center;
  margin: 0 1rem 1rem;
  padding: 1rem;
  position: relative;
  text-overflow: ellipsis;
  transform: scale(1);
  transition: background 0.2s linear, color 0.2s linear;
  width: calc(100% - 2rem);
  z-index: 10;
}
.list-services a:hover .bg,
.list-grossesse a:hover .bg {
  opacity: 0.6;
  transform: scale(1.05);
}
.list-grossesse {
  margin-bottom: 6rem;
}

.articles {
  margin-top: 8rem;
  text-align: center;
}
.articles .container {
  border-top: 0.1rem solid #E7E7E7;
  padding-top: 8rem;
}
.articles h3 {
  margin-bottom: 6rem;
  text-align: center;
}
.articles .btn-articles {
  display: inline-block;
  margin: 8rem auto;
}

.list-articles {
  grid-gap: 3rem;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}
.list-articles figure {
  align-items: center;
  aspect-ratio: 4/3;
  display: flex;
  justify-content: center;
  margin-bottom: 3rem;
  overflow: hidden;
}
.list-articles figure img {
  object-fit: cover;
  display: block;
  height: 100%;
  transition: transform 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  width: 100%;
}
.list-articles a {
  color: #262626;
}
.list-articles a:hover img {
  transform: scale(1.05);
}

.list-collaborateurs li {
  margin-top: 10rem;
}
.list-collaborateurs li:nth-child(even) .collaborateur {
  flex-direction: row-reverse;
}
.list-collaborateurs li:nth-child(even) .collaborateur .collaborateur-content-wrapper {
  margin-left: 0;
  margin-right: -5rem;
  text-align: right;
}

.collaborateur {
  align-items: center;
  display: flex;
}
.collaborateur-media {
  align-items: center;
  display: flex;
  flex-grow: 0;
  justify-content: center;
  max-height: 58rem;
  object-fit: cover;
  overflow: hidden;
  width: 50%;
}
.collaborateur-media img {
  display: block;
  min-height: 100%;
  min-width: 100%;
}
.collaborateur-content {
  align-items: center;
  display: flex;
  flex-grow: 0;
  width: 50%;
}
.collaborateur-content-wrapper {
  background: #F2F5F0;
  line-height: 1.6;
  margin-left: -5rem;
  margin-right: 0;
  padding: 6rem;
  position: relative;
  z-index: 1;
}
.collaborateur-content h4 {
  margin-bottom: 2rem;
}
.collaborateur-content .btn {
  margin-top: 2rem;
}
.collaborateur-content p + p {
  margin-top: 2rem;
}
.collaborateur.is-small {
  background: #F2F5F0;
}
.collaborateur.is-small .collaborateur-media {
  width: 40%;
}
.collaborateur.is-small .collaborateur-media img {
  border: 0.4rem solid #FFFFFF;
  max-height: 30rem;
  max-width: 30rem;
  min-height: auto;
  min-width: auto;
}
.collaborateur.is-small .collaborateur-content {
  width: 60%;
}

.page .services {
  margin-top: 4rem;
  margin-bottom: 6rem;
}
.page .collaborateurs {
  margin-bottom: 10rem;
}
.page .publications {
  margin-bottom: 10rem;
}

.error404 .main,
#page-contact {
  background: #DDEBF1;
  padding: 4rem 0;
  text-align: center;
}
.error404 .main .container,
#page-contact .container {
  background: #FFFFFF;
}
.error404 .main .container > h3,
#page-contact .container > h3 {
  margin-top: 0;
  padding-top: 4rem;
}
.error404 .main .page-content-intro,
#page-contact .page-content-intro {
  margin-bottom: 0;
  padding-bottom: 6rem;
}

.error404 .main .container {
  align-items: center;
  display: flex;
  flex-direction: column;
  justify-content: center;
  min-height: 50rem;
}
.error404 .main .container h3 {
  margin-bottom: 2rem;
}

.single.page-content h3 {
  margin-left: auto;
  margin-right: auto;
  max-width: 96rem;
}

.entry-content {
  line-height: 1.5;
  margin: 0 auto 8rem;
  max-width: 96rem;
}
.entry-content h3 {
  font-size: 2.2rem;
  margin: 4rem 0 2rem;
  text-align: left;
}
.entry-content h4 {
  font-size: 1.8rem;
  margin: 3rem 0 2rem;
}
.entry-content p {
  font-size: 1.6rem;
  margin: 1.2rem 0;
}
.entry-content ul {
  list-style: disc;
  padding: 1rem 0 1rem 2rem;
}
.entry-content ul li {
  margin-bottom: 0.5rem;
}
.entry-content .wp-block-separator {
  border-color: #E7E7E7;
  border-width: 0.1rem;
  border-bottom: none;
  margin-top: 4rem;
}
.entry-content .wp-block-columns {
  margin-bottom: 2rem;
}
.entry-content .wp-block-image {
  margin: 2rem 0;
}
.entry-content iframe {
  aspect-ratio: 16/9;
  height: auto;
  width: 100%;
}
.entry-content .wp-block-file__button {
  padding: 5px 10px;
}

#page-contact ul {
  list-style: disc;
  margin: 2rem auto;
  text-align: left;
  max-width: 27rem;
}

/* COMMON */
@media screen and (max-width: 1279px) {
  .container {
    margin: 0 2rem;
    max-width: 100%;
  }
}
@media screen and (max-width: 1170px) {
  header h1 {
    font-size: 3.6rem;
  }
}
@media screen and (max-width: 1023px) {
  body {
    overflow-x: hidden;
  }
  header .open-nav,
  header .close-nav {
    display: block;
  }
  header .open-nav {
    height: 5rem;
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    width: 5rem;
  }
  header .open-nav span, header .open-nav:before, header .open-nav:after {
    background: #196383;
    display: block;
    height: 0.3rem;
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    width: 3rem;
  }
  header .open-nav:before, header .open-nav:after {
    content: "";
  }
  header .open-nav:before {
    margin-top: -0.8rem;
  }
  header .open-nav:after {
    margin-top: 0.8rem;
  }
  header .close-nav {
    height: 5rem;
    position: absolute;
    right: 2rem;
    width: 5rem;
    top: 2rem;
  }
  header .close-nav span, header .close-nav:before {
    background: #196383;
    display: block;
    height: 0.3rem;
    position: absolute;
    right: 0;
    top: 50%;
    width: 3rem;
  }
  header .close-nav span {
    transform: translateY(-50%) rotate(45deg);
  }
  header .close-nav:before {
    content: "";
    transform: translateY(-50%) rotate(-45deg);
  }
  header .container {
    position: relative;
  }
  header .header-nav {
    background: #F2F5F0;
    position: fixed;
    bottom: 0;
    top: 0;
    left: 0;
    right: 0;
    height: 100vh;
    width: 100vw;
    z-index: 1000;
    transform: translateX(100%);
    transition: transform 0.4s ease-in-out;
  }
  header .header-nav nav {
    padding: 5rem;
  }
  header.nav-open .header-nav {
    transform: none;
  }
  nav ul {
    display: block;
  }
  nav ul li {
    margin: 0 0 2rem 0;
  }
  nav ul .btn {
    margin: 2rem 0 0 0;
  }
  nav .bull {
    display: none;
  }
  footer .footer-header {
    display: block;
  }
  footer .footer-contact {
    margin: 4rem 0;
  }
}
@media screen and (max-width: 767px) {
  header .container {
    padding: 2rem 0;
  }
}
/* CONTENT */
@media screen and (max-width: 1023px) {
  .slider h2 {
    white-space: normal;
  }
  .slider-text {
    margin: 0;
    max-width: 100%;
    position: static;
    transform: none;
    width: 100%;
  }
  .swiper {
    height: 20rem;
    min-height: 20rem;
  }
  .intro-media {
    padding: 4%;
  }
  .services .list-services li {
    width: calc(33.33% - 2rem);
  }
}
@media screen and (max-width: 767px) {
  .intro {
    background: #196383;
  }
  .intro-container {
    flex-direction: column;
  }
  .intro-media, .intro-text {
    width: 100%;
  }
  .intro-text {
    background: #F2F5F0;
  }
  .services h3 {
    margin-bottom: 3rem;
  }
  .services .list-services li {
    width: calc(50% - 2rem);
  }
  .list-articles {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .list-collaborateurs li {
    margin-top: 4rem;
  }
  .list-collaborateurs li:nth-child(even) .collaborateur {
    flex-direction: column;
  }
  .list-collaborateurs li:nth-child(even) .collaborateur .collaborateur-content-wrapper {
    margin-right: 0;
    text-align: center;
  }
  .collaborateur {
    flex-direction: column;
  }
  .collaborateur.is-small .collaborateur-media,
  .collaborateur.is-small .collaborateur-content {
    width: 100%;
  }
  .collaborateur-media, .collaborateur-content {
    width: 100%;
  }
  .collaborateur-description {
    text-align: left;
  }
  .collaborateur-content-wrapper {
    margin-left: 0;
    padding: 2rem;
    text-align: center;
  }
  .collaborateur-content-wrapper .collaborateur-description {
    text-align: left;
  }
  .page .collaborateurs,
  .page .publications {
    margin-bottom: 4rem;
  }
  .error404 .main .page-content-intro,
  #page-contact .page-content-intro {
    padding-left: 2rem;
    padding-right: 2rem;
  }
  .error404 .main .container {
    min-height: 20rem;
  }
}
@media screen and (max-width: 465px) {
  .services .list-services li {
    width: 100%;
  }
  .list-grossesse li {
    width: 100%;
  }
  .list-articles {
    grid-template-columns: repeat(1, minmax(0, 1fr));
  }
  .page-content-intro {
    margin: 2rem 0;
    max-width: 100%;
  }
}

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