/* Master SCSS File */
/* Montserrat Font Face Declarations */
@font-face {
  font-family: 'Montserrat';
  src: url("../fonts/Montserrat-Light.woff2") format("woff2");
  font-weight: 300;
  font-style: normal;
  font-display: swap; }
@font-face {
  font-family: 'Montserrat';
  src: url("../fonts/Montserrat-Regular.woff2") format("woff2");
  font-weight: 400;
  font-style: normal;
  font-display: swap; }
@font-face {
  font-family: 'Montserrat';
  src: url("../fonts/Montserrat-Medium.woff2") format("woff2");
  font-weight: 500;
  font-style: normal;
  font-display: swap; }
@font-face {
  font-family: 'Montserrat';
  src: url("../fonts/Montserrat-SemiBold.woff2") format("woff2");
  font-weight: 600;
  font-style: normal;
  font-display: swap; }
@font-face {
  font-family: 'Montserrat';
  src: url("../fonts/Montserrat-Bold.woff2") format("woff2");
  font-weight: 700;
  font-style: normal;
  font-display: swap; }
@font-face {
  font-family: 'Montserrat';
  src: url("../fonts/Montserrat-ExtraBold.woff2") format("woff2");
  font-weight: 800;
  font-style: normal;
  font-display: swap; }
@font-face {
  font-family: 'Montserrat';
  src: url("../fonts/Montserrat-Black.woff2") format("woff2");
  font-weight: 900;
  font-style: normal;
  font-display: swap; }
html {
  font-size: 16px; }

body {
  font-family: 'Montserrat', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif; }

.btn-primary {
  background-color: #bd301e;
  color: #fff;
  border: none;
  border-radius: 0.4rem;
  font-size: 0.8rem;
  font-weight: 600;
  padding: 10px 20px; }
  .btn-primary:hover {
    background-color: #bd301e;
    border: none;
    background-color: #d63f21; }

.img-rounded {
  border-radius: 1rem;
  overflow: hidden; }

header {
  position: relative;
  background: #017a85;
  /* fallback for old browsers */
  background: -webkit-linear-gradient(145deg, #007c87 40%, #01080b 60%);
  /* Chrome 10-25, Safari 5.1-6 */
  background: linear-gradient(135deg, #007c87 30%, #01080b 60%);
  /* W3C standard */
  margin-bottom: 3rem; }
  header .container {
    position: relative;
    z-index: 10;
    padding-top: 40px;
    padding-bottom: 40px;
    min-height: 640px; }
  header .bg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    opacity: 1;
    z-index: 5; }
  header .header-title {
    font-size: 2rem;
    font-weight: 700;
    color: #fff;
    text-align: center;
    margin-bottom: 20px;
    background: linear-gradient(180deg, #bd301e 20%, #832517 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    color: transparent; }
  header h1 {
    font-size: 1.5rem;
    font-weight: 700;
    color: #fff;
    margin-bottom: 20px; }
  header p {
    font-size: 1.2rem;
    font-weight: normal;
    color: #fff;
    margin-bottom: 20px; }

#main-menu li {
  padding: 0; }
  #main-menu li a {
    font-size: 17px;
    color: #fff;
    text-decoration: none;
    font-weight: 600;
    transition: all 0.25s ease;
    padding: 10px 20px; }
    #main-menu li a:hover {
      color: #bd301e; }

section {
  padding: 3rem 0; }
  section .section-title {
    font-size: 2.2rem;
    font-weight: 800;
    color: #1c302e;
    text-align: center;
    margin-bottom: .875rem;
    background: linear-gradient(to right, #bd301e 20%, #381009 90%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    color: transparent; }
  section .section-sub-title {
    font-size: 1rem;
    font-weight: 600;
    color: #1c302e;
    text-align: center;
    margin-bottom: 1rem; }
  section#presentation {
    color: #1c302e;
    font-size: 1.2rem; }
  section#nos-offres .section-navs {
    margin-bottom: 3rem;
    overflow: hidden; }
    section#nos-offres .section-navs .nav-item {
      display: flex !important;
      align-items: center;
      color: #1c302e;
      padding: 1.5rem 2rem;
      cursor: pointer;
      transition: all 0.3s ease;
      justify-content: start;
      height: 100%;
      -webkit-border-radius: 1rem;
      -moz-border-radius: 1rem;
      border-radius: 1rem;
      opacity: 0.5; }
      section#nos-offres .section-navs .nav-item .icon-container {
        width: 58px;
        height: 58px;
        margin-right: 20px;
        border-radius: 50%;
        background-color: #f6f5ed;
        display: flex;
        align-items: center;
        justify-content: center;
        transition: all 0.5s ease; }
        section#nos-offres .section-navs .nav-item .icon-container svg {
          max-height: 50px;
          height: auto;
          width: 48px;
          height: 48px; }
      section#nos-offres .section-navs .nav-item .nav-content {
        font-size: 1rem;
        font-weight: 600;
        margin-bottom: 4px;
        margin-top: 0; }
    section#nos-offres .section-navs .slick-current.nav-item {
      opacity: 1;
      background-color: #f6f5ed; }
      section#nos-offres .section-navs .slick-current.nav-item .icon-container {
        background-color: transparent; }
  section#nos-offres h3 {
    font-weight: 700; }
  section#nos-offres .btn {
    padding: 0.875rem 1.5rem;
    font-size: 1rem;
    font-weight: 600; }
  section#nos-offres .content-list {
    border: 1px solid #d6d3c4;
    border-radius: 1rem;
    padding: 3rem 2rem;
    box-shadow: 1.2rem 1.2rem 0 #f6f5ed; }
    section#nos-offres .content-list li {
      padding: 1rem 1.5rem 1rem 3.5rem;
      border-radius: 2rem;
      position: relative;
      font-size: .9rem; }
      section#nos-offres .content-list li:nth-child(odd) {
        background-color: #f6f5ed; }
      section#nos-offres .content-list li::after {
        content: "";
        display: block;
        width: 1.8rem;
        height: 1.8rem;
        position: absolute;
        top: 50%;
        left: 1rem;
        margin-top: -.9rem;
        background: url(../img/check.svg) center center no-repeat;
        background-size: contain; }
  section#souscription .section-content {
    background-color: #f6f5ed;
    padding: 4rem 2rem;
    border-radius: 1rem; }
  section#souscription .parcours {
    position: relative;
    margin: 2rem 0; }
    section#souscription .parcours .parcours-item {
      padding: 0 1rem; }
    section#souscription .parcours::before {
      content: "";
      position: absolute;
      left: 15%;
      top: 1.75rem;
      z-index: 1;
      width: 70%;
      border-top: 3px dotted #1c302e;
      border-width: 3px 0 0 0;
      border-style: dotted none none none;
      opacity: .2; }
    section#souscription .parcours .circle {
      display: inline-flex;
      width: 3.5rem;
      height: 3.5rem;
      border-radius: 50%;
      background-color: #bd301e;
      justify-content: center;
      align-items: center;
      color: #fff;
      font-size: 1.75rem;
      font-weight: 700;
      z-index: 10;
      position: relative;
      margin-bottom: 1.5rem; }
    section#souscription .parcours .title {
      font-size: 1.25rem;
      font-weight: 700;
      color: #bd301e;
      margin-bottom: 1rem; }
    section#souscription .parcours p {
      font-size: 1rem; }
  section#contactez-nous h3 {
    font-weight: 700;
    color: #1c302e;
    font-size: 1.75rem;
    margin-bottom: 2rem; }
  section#contactez-nous .contacts-utiles {
    border-radius: 1rem;
    background-color: #f6f5ed;
    padding: 2rem 1.5rem;
    margin-bottom: 2rem; }
    section#contactez-nous .contacts-utiles h4 {
      font-weight: 700;
      color: #1c302e;
      font-size: 1.2rem;
      margin-bottom: 1rem; }
    section#contactez-nous .contacts-utiles li {
      margin-bottom: .75rem; }
      section#contactez-nous .contacts-utiles li:last-child {
        margin-bottom: 0; }
    section#contactez-nous .contacts-utiles img {
      margin-right: .5rem;
      display: inline-block; }
    section#contactez-nous .contacts-utiles a {
      color: #1c302e;
      font-size: 1rem;
      transition: all 200ms; }
      section#contactez-nous .contacts-utiles a:hover {
        color: #bd301e; }
  section#contactez-nous .contact-container {
    border-radius: 1rem;
    padding: 3rem;
    border: 1px solid #d6d3c4; }
  section#faq {
    background-color: #1c302e;
    color: #fff; }
    section#faq .section-title {
      color: #f6f5ed;
      background: none;
      -webkit-background-clip: unset;
      -webkit-text-fill-color: unset;
      background-clip: unset;
      font-size: 1.5rem;
      font-weight: 700; }
    section#faq .section-sub-title {
      color: #fff; }
    section#faq #faqAccordion .accordion-item {
      background: rgba(255, 255, 255, 0.13);
      border: none;
      border-radius: 0.5rem;
      margin-bottom: 1rem; }
      section#faq #faqAccordion .accordion-item .accordion-header {
        position: relative; }
        section#faq #faqAccordion .accordion-item .accordion-header button {
          border: none;
          padding: 1.3rem 3rem 1.3rem 1.5rem;
          border-radius: 0.5rem;
          font-size: 1rem;
          font-weight: 600;
          color: #f6f5ed; }
          section#faq #faqAccordion .accordion-item .accordion-header button .circle-plus {
            position: absolute;
            right: 2rem;
            top: 50%;
            transform: translateY(-50%); }
            section#faq #faqAccordion .accordion-item .accordion-header button .circle-plus::before, section#faq #faqAccordion .accordion-item .accordion-header button .circle-plus::after {
              content: '';
              position: absolute;
              background-color: #f6f5ed;
              transition: all 0.35s ease-in-out; }
            section#faq #faqAccordion .accordion-item .accordion-header button .circle-plus::before {
              /* horizontal bar */
              transform: rotate(90deg);
              opacity: 0;
              width: 14px;
              height: 3px;
              left: 50%;
              margin-left: -7px;
              top: 50%;
              margin-top: -1.5px; }
            section#faq #faqAccordion .accordion-item .accordion-header button .circle-plus::after {
              /* vertical bar */
              transform: rotate(90deg);
              width: 3px;
              height: 14px;
              left: 50%;
              margin-left: -1.5px;
              top: 50%;
              margin-top: -7px; }
          section#faq #faqAccordion .accordion-item .accordion-header button.collapsed .circle-plus::before {
            transform: rotate(-90deg);
            opacity: 1; }
          section#faq #faqAccordion .accordion-item .accordion-header button.collapsed .circle-plus::after {
            transform: rotate(-90deg); }
      section#faq #faqAccordion .accordion-item .accordion-body {
        padding: 1rem 1.5rem; }

footer {
  background-color: #1c302e;
  color: #f6f5ed; }
  footer .footer-content {
    border-top: 1px solid rgba(255, 255, 255, 0.1);
    padding: 2rem 0;
    font-size: 0.8rem; }
  footer .footer-sub-content {
    border-top: 1px solid rgba(255, 255, 255, 0.1);
    padding: 2rem 0;
    margin-top: 2rem;
    font-size: 0.875rem; }
    footer .footer-sub-content h4 {
      font-size: 1.125rem;
      font-weight: 700;
      color: #f6f5ed;
      margin-bottom: 1rem; }
    footer .footer-sub-content a {
      color: #f6f5ed;
      text-decoration: none;
      transition: all 0.25s ease; }
      footer .footer-sub-content a:hover {
        color: #bd301e; }

@media (max-width: 767.98px) {
  html {
    font-size: 14px; }

  header {
    background: -webkit-linear-gradient(135deg, #007c87 0%, #01080b 60%);
    background: linear-gradient(135deg, #007c87 0%, #01080b 60%);
    padding-bottom: 20%; }
    header .header-title {
      font-size: 1.4rem;
      margin-bottom: 2rem;
      text-align: left; }
    header h1 {
      font-size: 1.4rem; }
    header .bg {
      height: 50%;
      top: initial;
      bottom: 0; }

  section {
    padding: 2rem 0; }
    section .section-title {
      font-size: 2rem; }
    section#presentation {
      font-size: 1.1rem; }
    section#nos-offres .section-navs .nav-item {
      background-color: #f6f5ed; }
    section#nos-offres .content-list {
      padding: 1.5rem 1rem;
      box-shadow: 0.8rem 0.8rem 0 #f6f5ed; }
    section#souscription .section-content {
      padding: 4rem 1rem; }
    section#souscription .parcours .title {
      min-height: 3.5rem;
      display: flex;
      align-items: center;
      margin-bottom: 0; }
    section#souscription .parcours .parcours-item {
      padding: 0; }
    section#souscription .parcours::before {
      content: "";
      position: absolute;
      left: 1.75rem;
      top: 0;
      z-index: 1;
      height: 60%;
      width: 0;
      border-left: 3px dotted #1c302e;
      border-left-width: 3px;
      border-left-style: dotted;
      border-width: 0 0 0 3px;
      border-style: none none none dotted; }
    section#contactez-nous h3 {
      font-size: 1.3rem; } }
@media (min-width: 768px) and (max-width: 991.98px) {
  html {
    font-size: 15px; }

  header .container {
    min-height: 600px; }
  header .header-title {
    font-size: 1.6rem;
    margin-bottom: 3rem; }
  header .bg {
    background-position: left center; }

  section {
    padding: 2rem 0; }
    section .section-title {
      font-size: 2rem; }
    section#presentation {
      font-size: 1.1rem; }
    section#nos-offres .section-navs .nav-item {
      padding: 1rem 1.5rem; }
    section#contactez-nous h3 {
      font-size: 1.3rem; }
    section#contactez-nous .contacts-utiles li a {
      font-size: 0.875rem; }
    section#contactez-nous .contact-container {
      padding: 2rem 1.5rem; } }
@media (min-width: 1370px) {
  header .bg {
    background-size: contain; } }

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