
:root{
   --ink:#0b0f17;
   --soft:#4d5b66;
   --bg:#f7f8fa;
   --aqua:#37C4D4;
   --indigo:#4737D4;
   --coral:#D44737;
   --lime:#C4D437;
   --rule:#e6e6e6;
 }

*,
*::before,
*::after {
  box-sizing: border-box;
}

body{
  margin:0;
  font:400 16px/1.7 system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;
  color:var(--ink);
  background:var(--bg);
   }

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

.wrap{
  max-width:1100px;
  margin:0 auto;
  padding:1.25rem;
  }

h1,h2,h3{
  line-height:1.25;
  margin:0 0 .6rem;
 }

h1{
  font-weight:800;
   font-size:clamp(1.6rem, 5vw, 2.6rem);
 }

h2{
  font-weight:800;
   font-size:clamp(1.3rem, 3.2vw, 1.8rem);
 }

h3{
  font-weight:700;
   font-size:1.1rem;
 }

p{
  margin: 1rem;
}

.sources li {
  text-decoration: none;
}

/** FLUID TYPE **/
 
.fluid-type {
  --fluid-type-min-size: 1;
  --fluid-type-max-size: 2;
  --fluid-type-min-screen: 20;
  --fluid-type-max-screen: 88;

  font-size: calc(
    (var(--fluid-type-min-size) * 1rem) + (var(--fluid-type-max-size) - var(--fluid-type-min-size)) *
      (100vw - (var(--fluid-type-min-screen) * 1rem)) /
      (var(--fluid-type-max-screen) - var(--fluid-type-min-screen))
  );
}

h1.fluid-type {
  --fluid-type-min-size: 2;
  --fluid-type-max-size: 4;
}

h2.fluid-type {
  --fluid-type-min-size: 1.5;
  --fluid-type-max-size: 2.2;
}

.btn{
  display:inline-block;
  border:0;
  background:var(--indigo);
  color:#fff;
  padding:.8rem 1.1rem;
  border-radius:10px;
  font-weight:700;
  text-decoration:none;
}

.btn:hover,
.btn:focus{
  filter:brightness(1.06);
  outline:none;
 }

section{
  padding:2rem 0;
}

section + section{
  border-top:1px solid var(--rule);
}

/* header */

.header {
    padding-left: 1rem;
    padding-right: 1rem;
  }

.header {
  background-color: #fff;
  box-shadow: 1px 1px 4px 0 rgba(0,0,0,.1);
  position: fixed;
  width: 100%;
  top: 0;
  z-index: 3;
}

.header ul {
  margin: 0;
  padding: 0;
  list-style: none;
  overflow: hidden;
  /*background-color: #fff;*/
}

.header li a {
  display: block;
  padding: 20px 10px;
  color:  #4737D4;
  font-family: "Montserrat", sans-serif;
  font-size:  1 rem;
  font-weight: 500;
  border-right: 1px solid #f4f4f4;
  text-decoration: none;
}

/*.header li a:hover,
.header .menu-btn:hover {
  background-color: #f4f4f4;
}*/

.header li a:hover,
.header .menu-btn:hover {
  bottom-border:  2px solid #712064;
}


.header .logo {
  display: block;
  float: left;
  font-size: 2rem;
  padding: 20px 20px;
  text-decoration: none;
}

.logo {
  font-family: "Montserrat", sans-serif;
  color: #4737D4;
  font-weight: 500;
}

/* menu */

.header .menu {
  clear: both;
  max-height: 0;
  transition: max-height .2s ease-out;
}

/* menu icon */

.header .menu-icon {
  cursor: pointer;
  display: inline-block;
  float: right;
  padding: 36px 20px;
  position: relative;
  user-select: none;
}

.header .menu-icon .navicon {
  background: #4737D4;
  display: block;
  height: 2.5px;
  position: relative;
  transition: background .2s ease-out;
  width: 20px;
}

.header .menu-icon .navicon:before,
.header .menu-icon .navicon:after {
  background: #4737D4;
  content: '';
  display: block;
  height: 100%;
  position: absolute;
  transition: all .2s ease-out;
  width: 100%;
}

.header .menu-icon .navicon:before {
  top: 5px;
}

.header .menu-icon .navicon:after {
  top: -5px;
}

/* menu btn */

.header .menu-btn {
  display: none;
}

.header .menu-btn:checked ~ .menu {
  /*max-height: 240px;*/
  max-height: 50vh;
}

.header .menu-btn:checked ~ .menu-icon .navicon {
  background: transparent;
}

.header .menu-btn:checked ~ .menu-icon .navicon:before {
  transform: rotate(-45deg);
}

.header .menu-btn:checked ~ .menu-icon .navicon:after {
  transform: rotate(45deg);
}

.header .menu-btn:checked ~ .menu-icon:not(.steps) .navicon:before,
.header .menu-btn:checked ~ .menu-icon:not(.steps) .navicon:after {
  top: 0;
}

/* 64em = 1024px */

@media screen and (min-width:  64em) {
  .navlink:hover {
    color:  #4737D4;
  }
  .header li {
    float: left;
  }
  .header li a {
    padding: 30px 40px;
  }
  .header .menu {
    clear: none;
    float: right;
    max-height: none;
  }
  .header .menu-icon {
    display: none;
  }
}

/* Hero */
/*.front-page-1{
  color:#fff;
  background:
  radial-gradient(80% 80% at 50% 38%, rgba(255,255,255,.18) 0%, rgba(255,255,255,.08) 100%),
  linear-gradient(#37C4D4,#37C4D4);
}

.front-page-1 .wrap{
  padding:2.5rem 1.25rem;
}

.hero-sub{
  color:#eefbfd;
  max-width:56ch;
 }

.hero-cta{
  margin-top:1rem;
}*/

/* hero image */

.front-page-1 {
  margin-top: 40px;
}
.hero {
   position: relative;
   width: 100vw;
   /*height: (--rule)vh;*/
   height: 100vh;
   display: flex;
   justify-content: center;
   align-items: center;
}
.hero::before {
   content: "";
   position: absolute;
   top: 0;
   left: 0;
   width: 100%;
   height: 100%;
   background: url(--);
   background-repeat: no-repeat;
   background-size: cover;
   background-position: center center;
   filter: brightness(60%);
}
.hero-content {
   position: relative;
   font-family: "Montserrat", sans-serif;
   color: white;
   text-align: center;
   margin: 0.625rem;
}
.hero-title {
   font-size: 3rem;
   font-weight: 600;
   margin-bottom: 0;
   color: #f5f5f5;
}
.hero-subtitle {
   font-size: 1.875rem;
   font-weight: 800;
   margin-top: 1.25rem;
   color: #f5f5f5;
}

.about {
    background: url(images/inalizecilliers.png);
   height: 30vh;
}
.frontpage {
    background: url(images/stressed.png);
}
.herobackground{
  background:
  radial-gradient(80% 80% at 50% 38%, rgba(255,255,255,.2) 0%, rgba(255,255,255,.1) 100%),
  linear-gradient(135deg, #4737D4, #37C4D4);
  height: 30vh;
}
.article{
  background:
  radial-gradient(80% 80% at 50% 38%, rgba(255,255,255,.2) 0%, rgba(255,255,255,.1) 100%),
  linear-gradient(135deg, #37C4D4, #4737D4);
  height: 30vh;
}

/** FORM **/
.form {
/*font-family: "Lucida Sans Unicode", "Lucida Grande", sans-serif;
font-size: 0.8em;*/
width: 100%;
padding: 1rem;
border: 1px solid #ccc;
margin:  0 auto;
}

.form * {
box-sizing: border-box;
}

.form fieldset {
border: none;
padding: 0;
}

.form legend,
.form label {
padding: 0;
font-weight: bold;
}

.form label.choice {
font-size: 1rem;
font-weight: normal;
}

.form input[type="text"],
.form input[type="tel"],
.form input[type="email"],
.form input[type="datetime-local"],
.form select,
.form textarea {
display: block;
width: 80%;
border: 1px solid #ccc;
/*font-family: "Lucida Sans Unicode", "Lucida Grande", sans-serif;*/
/*font-size: 0.9rem;*/
padding: 0.3rem;
}

.form textarea {
height: 100px;
}

.form button {
padding: 1rem;
border-radius: 0.5rem;
background: #eee;
border: none;
font-weight: bold;
margin-top: 1rem;
}

.form button:hover {
background: #ccc;
cursor: pointer;
}

@media (min-width: 1024px) {
  .hero-content {
   margin: 1.25rem;
}

  .hero-title {
   font-size: 5rem;
   font-weight: 600;
   margin-bottom: 0;
}
.hero-subtitle {
   font-size: 2rem;
   font-weight: 500;
   margin-top: 1rem;
}
.hero-button {
   font-size: 1.25rem;

}
}

/* grid */
.grid{
  display:grid;
  gap:1rem;
 }

@media (min-width:768px){
  .grid-1{
    grid-template-columns:1fr;
  }
 .grid-2{
  grid-template-columns:1fr 1fr;
}

 .grid-3{
  grid-template-columns:repeat(3,1fr);
}
}

.card{
  background:#fff;
  border:1px solid var(--rule);
  border-radius:14px;
  padding:1rem;
   }

.check{
  list-style:none;
  padding:0;
  margin:.25rem 0 0;
  }

.check li{
  position:relative;
  /*padding-left:1.25rem;*/
  padding-left:2rem;
  margin:.25rem 2rem;
  }

.check li::before{
  content:"✓";
  position:absolute;
  left:0;
  color:var(--aqua);
  font-weight:800;
}

.programs .card h3{
  margin-top:.25rem;
}

.meta{
  color:var(--soft);
  font-size:.95rem
 }

/* Testimonials */
.quote{
  font-style:italic;
}

.cite{
  font-size:.95rem;
  color:var(--soft);
 }

/* Lead magnet */
.lead{background:
  radial-gradient(80% 80% at 50% 38%, rgba(255,255,255,.18) 0%, rgba(255,255,255,.08) 100%),
  linear-gradient(#C4D437,#C4D437);
  color:#21310a;
  border-top:1px solid rgba(0,0,0,.05);
}

.lead .card{
  background:rgba(255,255,255,.9);
}

/* CTA (.front-page-7) */
.front-page-7{
  color:#fff; 
  background:
  radial-gradient(80% 80% at 50% 38%, rgba(255,255,255,.2) 0%, rgba(255,255,255,.1) 100%),
  linear-gradient(135deg, #4737D4, #37C4D4);
  text-align:center;
}

.front-page-7 .wrap{
  padding:3rem 1.25rem;
}

.front-page-7 p{
  max-width:60ch;
  margin-left:auto;
  margin-right:auto;
  color:#ecf3ff;
}

.front-page-7 .btn{
  background:#fff;
  color:#2d2d7a;
}

/* FAQ (no JS) */
details{
  background:#fff;
  border:1px solid var(--rule);
  border-radius:10px;
  padding:.8rem 1rem;
  margin:.6rem 0;
}

summary{
  cursor:pointer;
  font-weight:700;
 }

summary::-webkit-details-marker{
  display:none;
}

/** FORM **/
.form {
/*font-family: "Lucida Sans Unicode", "Lucida Grande", sans-serif;
font-size: 0.8em;*/
/*width: 90%;*/
padding: 1rem;
border: 1px solid #ccc;
margin:  0 auto;
}

.form * {
box-sizing: border-box;
}

.form fieldset {
border: none;
padding: 0;
}

.form legend,
.form label {
padding: 0;
font-weight: bold;
}

.choice {
font-size: 1rem;
font-weight: normal;
}

.form input[type="text"],
.form input[type="tel"],
.form input[type="email"],
.form input[type="datetime-local"],
.form select,
.form textarea {
display: block;
/*width: 80%;*/
border: 1px solid #ccc;
/*font-family: "Lucida Sans Unicode", "Lucida Grande", sans-serif;*/
/*font-size: 0.9rem;*/
padding: 0.3rem;
}

.form textarea {
height: 100px;
}

.form button {
padding: 1rem;
border-radius: 0.5rem;
background: #eee;
border: none;
font-weight: bold;
margin-top: 1rem;
}

.form button:hover {
background: #ccc;
cursor: pointer;
}

/* Footer */
footer{
  font-size:.9rem;
  color:#4d5b66;
  padding:2rem 0;
  text-align:center;
  }
