@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,100..900;1,100..900&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Raleway:ital,wght@0,100..900;1,100..900&display=swap");
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

html {
  scroll-behavior: smooth;
}
html body {
  width: 100%;
  min-height: 100vh;
  overflow-x: hidden;
  background: white;
}
html body main h1 {
  text-align: center;
  font-family: "Montserrat", sans-serif;
  color: #1E3142;
}
html body main {
  width: min(1100px, 92%);
  margin: 3rem auto 1rem auto;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: stretch;
  gap: 2.5rem;
  animation: fadeUp 0.8s ease forwards;
}
html body main h1 {
  font-family: "Montserrat", sans-serif;
  color: #1E3142;
  font-weight: 800;
  font-size: clamp(2rem, 4vw, 3.5rem);
  line-height: 1.2;
}
html body main h2 {
  font-family: "Montserrat", sans-serif;
  color: #3FA3A8;
  font-weight: 700;
  font-size: clamp(1.5rem, 3vw, 2.1rem);
  line-height: 1.3;
  display: flex;
  flex-direction: row;
  justify-content: flex-start;
  align-items: center;
  gap: 0.5rem;
}
html body main h2 img {
  height: clamp(20px, 2.5vw, 33px);
  width: auto;
  flex-shrink: 0;
}
html body main p {
  font-family: "Raleway", sans-serif;
  font-size: clamp(1rem, 1.2vw, 1.125rem);
  line-height: 1.7;
  color: #1E3142;
  margin-bottom: 1rem;
}
html body main ul,
html body main ol {
  font-family: "Raleway", sans-serif;
  font-size: clamp(1rem, 1.2vw, 1.125rem);
  line-height: 1.7;
  color: #1E3142;
  padding-left: 1.25rem;
  margin-bottom: 1.25rem;
}
html body main ul li,
html body main ol li {
  margin-bottom: 0.6rem;
}
html body main ul li::before,
html body main ol li::before {
  content: "↳";
  padding-right: 0.4rem;
  color: #3FA3A8;
}
html body main .activeLink {
  position: relative;
  text-decoration: none;
  color: inherit;
  font-family: inherit;
  transition: color 0.25s ease;
}
html body main .activeLink::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: -0.2rem;
  width: 0;
  height: 2px;
  background: #F4D24A;
  transition: width 0.25s ease;
}
html body main .activeLink:hover {
  color: #3FA3A8;
  cursor: pointer;
}
html body main .activeLink:hover::after {
  width: 100%;
}
html body main .teamSection {
  width: 100%;
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: stretch;
  flex-wrap: wrap;
  gap: 2rem;
}
html body main .teamSection .teamCard {
  flex: 1 1 320px;
  max-width: 380px;
  background: rgba(255, 255, 255, 0.85);
  backdrop-filter: blur(20px);
  border: 1px solid rgba(63, 163, 168, 0.15);
  border-radius: 28px;
  padding: 2rem;
  box-shadow: 0 10px 40px rgba(30, 49, 66, 0.08), 0 2px 12px rgba(63, 163, 168, 0.08);
  transition: transform 0.35s ease, box-shadow 0.35s ease;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: center;
  gap: 1.2rem;
  text-align: center;
}
html body main .teamSection .teamCard:hover {
  transform: translateY(-4px);
  box-shadow: 0 16px 40px rgba(30, 49, 66, 0.12), 0 4px 16px rgba(63, 163, 168, 0.1);
}
html body main .teamSection .teamCard img {
  width: 140px;
  height: 140px;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: 50%;
  border: 4px solid rgba(63, 163, 168, 0.12);
}
html body main .teamSection .teamCard h3 {
  font-size: 1.4rem;
  font-family: "Montserrat", sans-serif;
  font-weight: 700;
  color: #1E3142;
  line-height: 1.2;
}
html body main .teamSection .teamCard .function {
  font-family: "Raleway", sans-serif;
  font-size: 1rem;
  color: #3FA3A8;
  font-weight: 600;
}
html body main .teamSection .teamCard p {
  font-family: "Raleway", sans-serif;
  font-size: 0.95rem;
  line-height: 1.7;
  color: rgba(30, 49, 66, 0.8);
}
html body main .teamSection .teamCard p a {
  position: relative;
  text-decoration: none;
  color: inherit;
  transition: color 0.25s ease;
}
html body main .teamSection .teamCard p a::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: -0.2rem;
  width: 0;
  height: 2px;
  background-color: #F4D24A;
  transition: width 0.25s ease;
}
html body main .teamSection .teamCard p a:hover {
  cursor: pointer;
  color: #3FA3A8;
}
html body main .teamSection .teamCard p a:hover::after {
  width: 100%;
}
@media (max-width: 1100px) {
  html body main .teamSection .teamCard {
    flex: 1 1 calc(50% - 2rem);
    max-width: unset;
  }
}
@media (max-width: 768px) {
  html body main .teamSection {
    gap: 1.5rem;
  }
  html body main .teamSection .teamCard {
    flex: 1 1 100%;
    padding: 1.8rem;
    border-radius: 22px;
  }
  html body main .teamSection .teamCard img {
    width: 120px;
    height: 120px;
  }
  html body main .teamSection .teamCard h3 {
    font-size: 1.25rem;
  }
}
@media (max-width: 480px) {
  html body main .teamSection .teamCard {
    padding: 1.5rem;
  }
  html body main .teamSection .teamCard img {
    width: 100px;
    height: 100px;
  }
}
html body main .buttonBlock {
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  gap: 1rem;
}
html body main .buttonBlock button {
  border: none;
  outline: none;
  padding: 1rem 1.6rem;
  border-radius: 18px;
  color: white;
  background: #1E3142;
  font-family: "Montserrat", sans-serif;
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.3;
  cursor: pointer;
  transition: transform 0.25s ease, background 0.25s ease, box-shadow 0.25s ease;
  box-shadow: 0 10px 25px rgba(30, 49, 66, 0.12);
  white-space: nowrap;
}
html body main .buttonBlock button:hover {
  background: #3FA3A8;
  transform: translateY(-3px);
  box-shadow: 0 16px 30px rgba(63, 163, 168, 0.22);
}
html body main {
  /* MOBILE FIX */
}
@media (max-width: 768px) {
  html body main .buttonBlock {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: stretch;
    gap: 0.8rem;
  }
  html body main .buttonBlock button {
    width: 100%;
    text-align: center;
  }
}
html body main .videoWrapper {
  width: 100%;
  aspect-ratio: 16/9;
  border-radius: 24px;
  overflow: hidden;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.08);
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}
html body main .videoWrapper:hover {
  transform: translateY(-4px);
  box-shadow: 0 18px 40px rgba(0, 0, 0, 0.12);
}
html body main .videoWrapper iframe {
  width: 100%;
  height: 100%;
  border: 0;
  display: block;
}
html body main {
  /* RESPONSIVE */
}
@media (max-width: 768px) {
  html body main .videoWrapper {
    border-radius: 18px;
  }
}
@media (max-width: 480px) {
  html body main .videoWrapper {
    border-radius: 14px;
  }
}
html body main .miniEventSection {
  width: 100%;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: stretch;
  gap: 2rem;
}
html body main {
  /* EVENT CARD */
}
html body main .miniEventCard {
  width: 100%;
  display: grid;
  grid-template-columns: minmax(280px, 420px) 1fr;
  gap: 2rem;
  align-items: stretch;
}
html body main {
  /* IMAGE BLOCK */
}
html body main .eventPoster {
  width: -moz-fit-content;
  width: fit-content;
  height: -moz-fit-content;
  height: fit-content;
  background: white;
  border-radius: 28px;
  overflow: hidden;
  line-height: 0;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.06);
  transition: transform 0.3s ease, box-shadow 0.3s ease;
  align-self: start;
}
html body main .eventPoster:hover {
  transform: translateY(-5px);
  box-shadow: 0 18px 40px rgba(0, 0, 0, 0.1);
}
html body main .eventPoster img {
  display: block;
  width: auto;
  max-width: 100%;
  height: auto;
  -o-object-fit: contain;
     object-fit: contain;
  vertical-align: middle;
}
html body main {
  /* TEXT BLOCK */
}
html body main .eventInfo {
  background: white;
  border-radius: 28px;
  padding: 2rem;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.06);
  transition: transform 0.3s ease, box-shadow 0.3s ease;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  gap: 1rem;
}
html body main .eventInfo:hover {
  transform: translateY(-5px);
  box-shadow: 0 18px 40px rgba(0, 0, 0, 0.1);
}
html body main .eventInfo h3 {
  font-family: "Montserrat", sans-serif;
  font-size: clamp(1.5rem, 2vw, 2.2rem);
  font-weight: 800;
  line-height: 1.2;
}
html body main .eventInfo h4 {
  font-family: "Montserrat", sans-serif;
  font-size: clamp(1rem, 1.5vw, 1.7rem);
  font-weight: 800;
  line-height: 1.2;
  color: #1E3142;
}
html body main .eventInfo p, html body main .eventInfo ul {
  font-family: "Raleway", sans-serif;
  font-size: clamp(1rem, 1.1vw, 1.05rem);
  line-height: 1.75;
  color: rgba(30, 49, 66, 0.82);
  margin: 0;
}
html body main {
  /* LINKS */
}
html body main .eventLinks {
  display: flex;
  flex-direction: row;
  justify-content: flex-start;
  align-items: center;
  flex-wrap: wrap;
  gap: 1.4rem;
  margin-top: 0.5rem;
}
html body main .eventLinks a {
  position: relative;
  text-decoration: none;
  font-family: "Montserrat", sans-serif;
  font-weight: 700;
  font-size: 1rem;
  color: #1E3142;
  transition: color 0.25s ease;
}
html body main .eventLinks a::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: -0.2rem;
  width: 0;
  height: 2px;
  background: #F4D24A;
  transition: width 0.25s ease;
}
html body main .eventLinks a:hover {
  color: #3FA3A8;
  cursor: pointer;
}
html body main .eventLinks a:hover::after {
  width: 100%;
}
html body main {
  /* TABLET */
}
@media (max-width: 1024px) {
  html body main .miniEventCard {
    grid-template-columns: 320px 1fr;
    gap: 1.5rem;
  }
  html body main .eventInfo {
    padding: 1.6rem;
  }
}
html body main {
  /* MOBILE */
}
@media (max-width: 768px) {
  html body main .miniEventCard {
    grid-template-columns: 1fr;
    gap: 1.5rem;
  }
  html body main .eventPoster {
    max-width: 100%;
  }
  html body main .eventInfo {
    padding: 1.4rem;
    border-radius: 24px;
  }
  html body main .eventInfo h3 {
    font-size: 1.4rem;
  }
}
html body main {
  /* SMALL MOBILE */
}
@media (max-width: 480px) {
  html body main .miniEventSection {
    gap: 1.5rem;
  }
  html body main .eventPoster,
  html body main .eventInfo {
    border-radius: 20px;
  }
  html body main .eventInfo {
    padding: 1rem;
  }
  html body main .eventInfo h3 {
    font-size: 1.2rem;
  }
  html body main .eventInfo p {
    font-size: 0.95rem;
    line-height: 1.65;
  }
  html body main .eventLinks {
    gap: 0.9rem;
  }
  html body main .eventLinks a {
    font-size: 0.9rem;
  }
}
html body main .container {
  width: min(1200px, 92%);
  margin: 0 auto;
}
html body main .section {
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: stretch;
  gap: 2rem;
}
html body main .subTitle {
  display: flex;
  flex-direction: row;
  justify-content: flex-start;
  align-items: center;
}
html body main .subTitle img {
  height: 2.5rem;
  width: auto;
}
html body main .subTitle h2 {
  font-size: 2rem;
  font-family: "Montserrat", sans-serif;
  font-weight: 700;
  line-height: 1.2;
}
html body main .subTitle a {
  font-size: 1.5rem;
  color: #3FA3A8;
  font-family: "Montserrat", sans-serif;
  font-weight: 800;
  line-height: 1.2;
  padding-left: 0.3rem;
  position: relative;
  text-decoration: none;
  transition: color 0.25s ease;
}
html body main .subTitle a::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: -0.2rem;
  width: 0;
  height: 3px;
  background-color: #F4D24A;
  transition: width 0.25s ease;
}
html body main .subTitle a:hover {
  cursor: pointer;
  color: #3FA3A8;
}
html body main .subTitle a:hover::after {
  width: 100%;
}
@media (max-width: 1024px) {
  html body main p, html body main ul, html body main ol, html body main a {
    font-size: 1rem;
  }
}
@media (max-width: 768px) {
  html body main h1 {
    font-size: 2rem;
  }
  html body main h2 {
    font-size: 1.5rem;
  }
}
@media (max-width: 480px) {
  html body main h1 {
    font-size: 1.75rem;
  }
  html body main p, html body main ul, html body main ol, html body main a {
    font-size: 0.95rem;
  }
  html body main h2 {
    font-size: 1.2rem;
  }
}
html body main .leerpad {
  width: min(1100px, 92%);
  margin: 3rem auto;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: stretch;
  gap: 2rem;
}
html body main .leerpad h1 {
  font-family: "Montserrat", sans-serif;
  font-weight: 800;
  color: #1E3142;
  font-size: clamp(2rem, 4vw, 3rem);
}
html body main .leerpad .pathIntro {
  font-family: "Raleway", sans-serif;
  color: rgba(30, 49, 66, 0.85);
  line-height: 1.7;
}
html body main {
  /* TOPIC LIST */
}
html body main .topicBlock {
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: stretch;
  gap: 1.5rem;
}
html body main {
  /* CARD */
}
html body main .topicCard {
  background: white;
  border-radius: 24px;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.06);
  overflow: hidden;
  transition: 0.3s ease;
  border: 1px solid rgba(63, 163, 168, 0.1);
}
html body main .topicCard summary {
  list-style: none;
  cursor: pointer;
  padding: 1.5rem;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: flex-start;
  gap: 0.3rem;
  transition: 0.25s ease;
}
html body main .topicCard summary h3 {
  font-family: "Montserrat", sans-serif;
  font-weight: 800;
  color: #1E3142;
  font-size: 1.3rem;
}
html body main .topicCard summary span {
  font-family: "Raleway", sans-serif;
  color: rgba(30, 49, 66, 0.6);
  font-size: 0.95rem;
}
html body main .topicCard summary:hover {
  background: rgba(63, 163, 168, 0.05);
}
html body main .topicCard[open] {
  border-color: rgba(63, 163, 168, 0.3);
}
html body main {
  /* CONTENT INSIDE OPEN CARD */
}
html body main .topicContent {
  padding: 0 1.5rem 1.5rem 1.5rem;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: flex-start;
  gap: 1rem;
}
html body main .topicContent p {
  font-family: "Raleway", sans-serif;
  color: rgba(30, 49, 66, 0.85);
  line-height: 1.7;
}
html body main {
  /* ACTION BUTTONS */
}
html body main .topicActions {
  display: flex;
  flex-direction: row;
  justify-content: flex-start;
  align-items: center;
  flex-wrap: wrap;
  gap: 1rem;
}
html body main .topicActions a {
  position: relative;
  text-decoration: none;
  font-family: "Montserrat", sans-serif;
  font-weight: 700;
  color: #1E3142;
  transition: color 0.25s ease;
}
html body main .topicActions a::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: -0.2rem;
  width: 0;
  height: 2px;
  background: #F4D24A;
  transition: width 0.25s ease;
}
html body main .topicActions a:hover {
  color: #3FA3A8;
  cursor: pointer;
}
html body main .topicActions a:hover::after {
  width: 100%;
}
html body main {
  /* MOBILE */
}
@media (max-width: 768px) {
  html body main .leerpadHero {
    flex-direction: column;
    align-items: flex-start;
    padding: 2rem;
  }
  html body main .topicCard summary {
    padding: 1.2rem;
  }
  html body main .topicCard summary h3 {
    font-size: 1.1rem;
  }
  html body main .topicContent {
    padding: 0 1.2rem 1.2rem 1.2rem;
  }
}
html body main .explanationImage {
  width: 100%;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: center;
  gap: 0.5rem;
  margin: 1rem 0;
}
html body main .explanationImage img {
  width: 100%;
  max-width: 700px;
  height: auto;
  display: block;
  border-radius: 18px;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.08);
  -o-object-fit: contain;
     object-fit: contain;
}
html body main .explanationImage span {
  font-family: "Raleway", sans-serif;
  font-size: 0.9rem;
  color: rgba(30, 49, 66, 0.6);
  text-align: center;
}
html body main .leerpadHero {
  background: linear-gradient(135deg, rgba(63, 163, 168, 0.08), rgba(161, 204, 197, 0.08));
  border-radius: 32px;
  padding: 2.5rem;
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  gap: 2rem;
  box-shadow: 0 12px 40px rgba(0, 0, 0, 0.06);
}
html body main .leerpadHero .heroText h1 {
  font-family: "Montserrat", sans-serif;
  font-size: clamp(2.2rem, 4vw, 4rem);
  color: #1E3142;
  font-weight: 800;
  line-height: 1.1;
  margin-bottom: 1rem;
}
html body main .leerpadHero .heroText p {
  max-width: 650px;
  font-family: "Raleway", sans-serif;
  color: rgba(30, 49, 66, 0.8);
  line-height: 1.8;
  font-size: 1.05rem;
}
html body main .leerpadHero .heroProgress {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 1rem;
  flex-shrink: 0;
}
html body main .leerpadHero .heroProgress .progressCircle {
  width: 140px;
  height: 140px;
  border-radius: 50%;
  background: conic-gradient(#3FA3A8 42%, rgba(63, 163, 168, 0.12) 0);
  position: relative;
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
}
html body main .leerpadHero .heroProgress .progressCircle::before {
  content: "";
  position: absolute;
  width: 108px;
  height: 108px;
  border-radius: 50%;
  background: white;
}
html body main .leerpadHero .heroProgress .progressCircle span {
  position: relative;
  z-index: 2;
  font-family: "Montserrat", sans-serif;
  font-size: 1.6rem;
  font-weight: 800;
  color: #1E3142;
}
html body main .leerpadHero .heroProgress p {
  font-family: "Raleway", sans-serif;
  color: rgba(30, 49, 66, 0.7);
  text-align: center;
}
@media (max-width: 480px) {
  html body main .leerpadHero {
    padding: 1.5rem;
  }
}/*# sourceMappingURL=vak.css.map */