
/* Style the counter cards */
.card {

    padding:0.25rem;
    text-align: center;
    background-color:#ffffff;
    background: white;
    color: #ffffff;

  }
  
  
  /* Style the counter cards */
  .studentCard {
  
    padding:0.25rem;
    text-align: center;
    background-color:#ffffff;
    background: white;
    color: #000;
    height: 12.5rem;
    width: 10rem;
    box-shadow: 0 0.25rem 0.25rem 0 rgba(0, 0, 0, 0.2);
    margin: 0.3125rem;
    z-index: 1;
    min-width: 11.25rem;
    letter-spacing: 0px

  }
  
  .cardImage {
    border: 0;
    height: 4rem;
    width: 4rem;
    background-color:transparent;
    display: inline-block;
    top:0%;
    margin-top:-0.8rem;
    margin-bottom:0px;
  }
  
  .cardHr {
    margin:2px;
    /* margin-bottom: 1px; */
  }
  
    
  
  
  .card-title-White{
    color:White;
  }
  
  /* --- resource cards ------ */

    .resource-card {
      background: #FAFAFA;
      padding: 0.4rem;                /* 32px */
      border-radius: 0.8rem;      /* 10px */
      box-shadow: 0 0.25rem 0.575rem rgba(0,0,0,0.4);
      position: relative;
      transition: 0.2s ease;
      display: flex;
      flex-direction: column;
      height: 100%;              /* ensures equal-height cards in a grid */
        /* transition: border-left-width 0.2s ease, border-left-color 0.2s ease;
       transition: border-left-color 0.2s ease, transform 0.2s ease; */
      p {
        margin-bottom: 0.5rem;
        padding:0 0 0 0.5rem;
        }
      h2 {
        padding:0 0 0 0.5rem;
        margin:0;
        transition: color 0.2s ease;
      }
      button {
        background-color: transparent;
        color: white;
      }
      .badge {
        margin-left: 1rem;
        font-family:'caveat';
          display: inline-flex;
          align-items: center;
          justify-content: center;

          width: 1.75rem;          /* 28px */
          height: 1.75rem;

          border-radius: 50%;      /* makes it a perfect circle */

          font-size: 0.75rem;      /* 12px */
          font-weight: 700;
          color: #ffffff;

          line-height: 1;
           transition: background-color 0.2s ease, transform 0.2s ease;
        }
      .language-btn {
          display: inline-block;
          margin:  0 0.8rem ;
          align-content: center;
          padding: 0.3rem 1rem;      /* ~3px 8px */
          border-radius: 1rem;       /* ~3px */
          font-weight: 600;
          font-size: 1.1rem;          /* 12px */
          text-decoration: none;
          color: #FFFFFF;
          transition: background-color 0.2s ease;
        }
    }


    .resource-card {
      position: relative;
      overflow: hidden;
    }

    .resource-card::before {
      content: "";
      position: absolute;
      left: 0;
      top: 0;
      height: 100%;
      width: 0.4rem;
      transition: width 0.2s ease;
      transition: background-color 0.2s ease;
    }

    .resource-card.french::before  { background: var(--col-fr); }
    .resource-card.spanish::before { background: var(--col-sp); }
    .resource-card.german::before  { background: var(--col-ge); }

    .resource-card.french:hover  { border-left-color: var(--col-frH) }
    .resource-card.spanish:hover { border-left-color: var(--col-spH); }
    .resource-card.german:hover  { border-left-color: var(--col-geH); }

    .resource-card:hover::before { width: 0.6rem;   }

    .resource-card.french:hover  h2 { color:var(--col-frH) /* darker French */   }
    .resource-card.spanish:hover h2 { color: var(--col-spH); /* darker Spanish */ }
    .resource-card.german:hover h2  { color: var(--col-geH); /* darker German */   }


    .resource-card.french .badge  { background-color: var(--col-fr); }
    .resource-card.spanish .badge { background-color: var(--col-sp); }
    .resource-card.german .badge  { background-color: var(--col-ge); }

    .resource-card.french:hover .badge {
      background-color: var(--col-frH);
      transform: scale(1.08);
    }

    .resource-card.spanish:hover .badge {
      background-color: var(--col-spH);
      transform: scale(1.08);
    }

    .resource-card.german:hover .badge {
      background-color: var(--col-geH);
      transform: scale(1.08);
    }

    .resource-card:hover {
      transform: translateY(-4px);
      transition: 0.2s ease;
    }











  
  /* --- teacher cards ------ */
/*
Used for subject cards
*/

  .teacherCard {
    width: 11rem;
    min-height:10.5rem; 
    margin: 0.35rem;
    padding:0.25rem;
    color: #747373;
    background-color: #f1f1f1;
    border:0.25rem;
    border-radius: 5%;
    box-shadow: 0 0.3rem 0.3rem  var(--shadow);

    text-align: center;
  }
  
@media (max-width: 48rem) {
  .teacherCard {
    width: 100%;
    min-height: auto;
    margin: 0;
  }
}

  
  .teacherTextCard {
      padding: 0.35rem;
      text-align: center;
      color: #747373;
      border: 0.35rem;;
      border-color: #ffffff;
      box-shadow: 0 4% 4% 0 rgba(0, 0, 0, 0.2);
      margin: 0.25rem;
       width: 12rem;
       height: 8rem;

      text-align: center;
      background-color: #f1f1f1;
  }
  
@media (max-width: 48rem) {
  .teacherTextCard {
    width: 9rem;
    max-width: 9rem;
    height: auto;
    margin: 0;
  }
}
  
  .teacherCardImage {
    border: 0;
    height: 3rem;
    width:auto;
    background-color:transparent;
      display: inline-block;
      top:0.25rem;
      margin-top:0.25rem;
      margin-bottom:0.25rem;
  }
 
    .teacherCardImage img {
      max-width: 90%;
    }

@media (max-width: 48rem) {
  .teacherCardImage {
    max-width: 9rem;
    height: auto;
    max-height: 3rem;
  }
}
  
  .teacherCard20 {
  
    padding: 0.35rem;
    text-align: center;
    /* background-color:#ffffff; */
    /* background: white; */
    color: #747373;
    border: 0.35rem;
    border-color: #ffffff;
    box-shadow: 0 4% 4% 0 rgba(0, 0, 0, 0.2);
    margin: 0.35rem;
     width: 13rem;
     height: 20rem;
    text-align: center;
    background-color: #f1f1f1;
  
  }
  
  



  .cardNotButton {
  
      padding: 0.35rem;
      text-align: center;
      /* background-color:#ffffff; */
      /* background: white; */
      color: #747373;
      border: 5px;
      border-color: #ffffff;
      box-shadow: 0 4px 4px 0 rgba(0, 0, 0, 0.2);
      margin: 5px;
       width: 15rem;
       height: 18rem;
  
  
      text-align: center;
      background-color: #f1f1f1;
  }
  
  
  

 
/* ---- module cards ----- */

  .moduleCard {
    padding: 0.35rem;
    text-align: center;
    /* background-color:#ffffff; */
    /* background: white; */
    color: #747373;
    border: 0.25rem;
    border-color: #ffffff;
    box-shadow: 0 4% 4% 0 rgba(0, 0, 0, 0.2);
    margin:  0.25rem;
     width: 10rem;
     height: 13rem;
    text-align: center;
    background-color: var(--gray100);
  box-shadow: 0 0.3rem 0.3rem  var(--shadow);
  }

    .moduleCard:hover {
    background-color: var(--gray200);
    }


  @media (max-width: 48rem) {
  .moduleCard {
    width: 45%;
    max-width: 45vw;
    height: auto;
    margin: 0;
  }
}




  
  .moduleCardImage {
    border: 0;
    width: 80%;
    background-color:transparent;
      display: inline-block;
      top:5%;
      margin-top:0.8rem;
      margin-bottom:0.625rem;
  }





  
  
  
  
  .audioCard {
  
    padding: 0.8rem;
    text-align: center;
    background-color:#ffffff;
    background: white;
    color: #747373;
    color: #222222;
    border: 5px;
    border-color: #ffffff;
    box-shadow: 0 4px 4px 0 rgba(0, 0, 0, 0.2);
    margin: 10px;
    height: 18.75rem;
    width: 22.5rem;
 
    

    color: #424242;
    text-align: center;
    background-color: #f1f1f1;
  
  
  }
  
  
  


 /* --------------- inform card ------------ */
 .wrapper {
    background-color: rgba(90, 87, 125, 0.294);
    display: grid;
    gap:1rem;
    width:90vw;
    overflow-x:scroll;
    scroll-snap-type: x mandatory; 
  }

 .informCardContainer {
    /* width: 80vw; */
    /*  if in carousel shouldn't be more than 4 columns */
    margin:auto;
    display: grid;
    grid-template-columns:   1fr 1fr 1fr 1fr; 

    flex-direction: row;
    border-radius: 0.625rem;
    justify-content: flex-end;
    z-index: 100;

    
    /* root */
    --black: hsl(0, 0%, 0%);
    --white: hsl(0, 0%, 100%);
    /* Fonts */
    --font-title: "Montserrat", sans-serif;
    --font-text: "Lato", sans-serif;
  
  }
  


/* Box sizing rules */
.informCardContainer *,
.informCardContainer *::before,
.informCardContainer *::after {
  box-sizing: border-box;
}





  .informCardContainer  h2 {

    font-size: 1.1rem;
    font-family: var(--p700);
    color: white;
    line-height: 1;
    margin: 0;
  }


  .informCardContainer  p {
    margin: 3%;
    margin-top: 8%;
    font-family: var(--p700);
    font-size: 0.8rem;
    color: white;

  }


  .flow > * + * {
    margin-top: var(--flow-space, 2rem);
  }
  
  

  
  /*  -------  inform cards ------------------- */
  

/* --------------- FAQ section -------------- */


.faqSection {
  background-color: #f9f9f9;
  color: #1f1f1f ;
  margin: 1.5rem;
  line-height: 1.6em;
  font-size: 1em;
}

.faqSection h1 {
  color: #333;
  font-weight:bold  ;
  font-size: 2.5em;
  text-align: center;
}

.faqSection h2 {
  color: #333;
  font-size: 1.6em;
  text-align: center;
  font-weight: 700;
  text-align: left;
  margin:0.8rem;
  margin-bottom:1.25rem;
  line-height: 1.3em;
}



.faqSection p {
  color: #333;
  font-size: 1.2em;
  line-height: 1.5em;
  font-weight: 500;
  font-family: var(--font-text);
  margin:0.3125rem;
  margin-bottom: 0.625rem;
} 

.faqSection img {
  max-width: 100%;
  height: auto;
  border-radius: 5px;
  margin:0.625rem;
  margin-bottom: 1.25rem;
}

.faqContainer {
  margin:auto;
  display: grid;
  grid-template-columns:   1fr 1fr 1fr; 

  flex-direction: row;
  border-radius: 0.8rem;
  justify-content: flex-end;
  z-index: 100;
}


  /* FAQ */
.faq {
    /* margin-bottom: 20px; */
    margin: 20px 20px 20px 20px;
    padding: 1rem;
    border: 0.625rem solid #eff0f1;
    background-color: #eff0f1;
    border-radius: 0.8rem;
}

.faqP {
  border: 0.625rem solid #fff;
  background-color: #fff;
}

.faqH {
  border: 0.375rem solid #FFCF37;
  background-color: #FFCF37;
}