@import url("newsletter.css");
@import url("calender-style.css");
@import url("dropdown.css");
/* =========================
/* GENERELLE STYLES
/* ========================= */

html {
  overflow-x: hidden;
}

body {
  font-family: "Open Sans", sans-serif;
  margin: 0;
  line-height: 1.5;
  display: flex;
  flex-direction: column;
  overflow-x: hidden;
  padding-top: 70px;
}

/* =========================
/* SCROLLBAR
/* ========================= */
::-webkit-scrollbar-thumb {
  width: 10px;
  background: var(--primary-color);
  border-radius: 5px;
}

::-webkit-scrollbar-track {
  border-inline: 2px solid black;
  background: transparent;
}

.cartoon-arrow {
  position: absolute;
  display: block;

  /* FAST STØRRELSE TIL BREDE SKÆRME (justeres kun i media query, hvis den skal være endnu større) */
  width: 300px;
  height: 300px;

  /* RET STIEN TIL BILLEDET AF DIN PIL HER */
  background-image: url("../img/cartoonArrow.png");

  background-size: contain;
  background-repeat: no-repeat;
  background-color: transparent;

  /* Filtrer pilen til at være mørkeblå (fra sort) */
  filter: invert(10%) sepia(20%) saturate(600%) hue-rotate(185deg)
    brightness(70%);

  z-index: 10;
}

/* Refresh-animation */
.refresh {
  animation: refreshAnimation 0.3s ease;
}

@keyframes refreshAnimation {
  0% {
    opacity: 0;
    transform: translateY(-10px) rotate(0deg);
  }
  50% {
    opacity: 1;
    transform: translateY(5px) rotate(2deg);
  }
  100% {
    opacity: 1;
    transform: translateY(0) rotate(2deg);
  }
}

#bookingList {
  margin-top: 10px;
  padding-left: 20px;
  list-style: disc;
}

#bookingList li {
  font-size: 0.9rem;
}

#infoClose {
  position: absolute;
  top: 15px;
  left: 15px;
  font-size: 26px;
  font-weight: bold;
  color: white;
  cursor: pointer;
  display: none;
  z-index: 11;
}

/* Standard: tekst venstrestillet */
#infoText {
  margin: 0;
  text-align: left;
  transition:
    margin-left 0.3s ease,
    text-align 0.3s ease;
}

#infoText p,
#bookingList,
#bookingList li {
  text-align: left;
}

.infoboxDiv {
  position: relative;
  left: 0;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  text-align: left;
  transition: left 0.3s ease;
  margin-right: 0;
  width: 100%;
  box-sizing: border-box;
}

/* Container til slots */
.slots-container {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: flex-start;
  gap: 6px;
  margin-top: 8px;
  width: 100%;
  box-sizing: border-box;
  margin-left: 0;
}

/* Hvert slot */
.slot {
  display: inline-block;
  padding: 4px 8px;
  background-color: #1a2a44;
  color: white;
  border-radius: 4px;
  cursor: pointer;
  transition: background-color 0.2s;
}

.slot:hover {
  background-color: #3b4f70;
}

/* Når krydset vises */
#infoBox.showClose #infoText {
  text-align: left;
  margin-left: 30px;
}

#infoText.fadeIn {
  animation: fadeIn 0.5s ease forwards;
}
/* -------------------------
/* Optional fade in/out animation for box
/* ------------------------- */
@keyframes fadeIn {
  0% {
    opacity: 0;
    transform: translateY(-10px) rotate(0deg);
  }
  100% {
    opacity: 1;
    transform: translateY(0) rotate(2deg);
  }
}

@keyframes textRefresh {
  0% {
    opacity: 0;
    transform: translateY(-2px);
  }
  50% {
    opacity: 0.5;
    transform: translateY(1px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}

#infoText.refresh {
  animation: textRefresh 0.3s ease forwards;
}

#infoText.refresh {
  animation: textRefresh 0.4s ease;
}

.info-box.animate {
  animation: fadeIn 0.5s ease forwards;
}
.wrapper-main {
  width: 100vw;
}
main {
  flex: 1;
}

.text-center {
  text-align: center;
}

:root {
  --primary-color: #3a4052;
  --goto-color: #0b1f33;
}

* {
  box-sizing: border-box;
  padding: 0;
  margin: 0;
}

a {
  text-decoration: none;
  color: var(--primary-color);
}

h1 {
  font-weight: 300;
  font-size: 60px;
  line-height: 1.2;
  margin-bottom: 15px;
  padding: 40px;
}

.showcase {
  position: relative;
  height: 100vh;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  padding: 0 20px;
  color: black;
}

.content {
  z-index: 10;
}

.btn {
  display: inline-block;
  padding: 10px 30px;
  background: var(--primary-color);
  color: #fff;
  border-radius: 5px;
  margin: top 25px;
  opacity: 0.7;
}

.btn:hover {
  scale: (0.98);
}

.blog-box1 {
  margin-left: 0px;
  filter: drop-shadow(0 12px 40px rgba(0, 0, 0, 0.5));
  transform: translateZ(0);
  will-change: filter;
}

.blog-box1::before {
  margin-left: 5px;
  margin-bottom: -10px;
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 3px;
  background-color: #0b1f33;
  border-radius: 1.5px;
  width: 95px;
}

.discord-button {
  display: inline-flex;
  align-items: center; /* Sikrer vertikal centrering af tekst og billede */
  justify-content: center; /* Sikrer horisontal centrering af indholdet inde i knappen (hvis knappen har fast bredde) */
  text-decoration: none;
  background-color: #5865f2; /* Discord's lilla */
  color: white;

  /* Gør teksten mere fed (som i 'gotd' / 'bold') og øger størrelsen */
  font-weight: bold;
  font-size: 19px;
  font-family: "Whitney", "Helvetica Neue", Helvetica, Arial, sans-serif;

  padding: 14px 28px;
  border-radius: 8px;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.2);

  transition:
    background-color 0.3s,
    box-shadow 0.3s;
}

.discord-button img {
  width: 24px;
  height: 24px;
  /* Beholder den samme afstand til ikonet som på billedet */
  margin-right: 10px;
}

.discord-button:hover {
  background-color: #4752c4;
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.15);
}
nav {
  position: sticky;
  top: 0;
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 0 50px;
  background-color: #fff;
  z-index: 9000;
  height: 70px;
}
.logo {
  margin-right: 15px;
  margin-top: 3px;
  display: flex;
  align-items: center;
  margin-left: 5px;
}

.logo img {
  height: 50px;
  width: auto;
  z-index: 5;
  /* Gør det sorte logo helt hvidt */
  filter: brightness(0) invert(1);
  transition:
    transform 0.3s ease,
    filter 0.3s ease;
}

.logoClick {
  margin: 0;
  display: flex;
  align-items: center;
  text-decoration: none;
}

/* En fed effekt: Logoet bliver svagt gennemsigtigt eller skifter farve ved hover */

footer {
  margin-top: auto;
}

.footerWrapper {
  color: white;
}

.footerUpper {
  display: flex;
  align-items: center;
  align-items: flex-start;
  gap: 50px;
  color: white;
  width: 600px;
}

.footerLower {
  display: flex;
  align-items: center;
  gap: 50px;
  color: white;
}

.footer-logo img {
  height: 60px;
}

.footerText-parent {
  display: flex;
}

.footerText {
  text-align: left;
}

.contact {
}

.container {
  display: flex;
  align-items: center;
  justify-content: space-between;

  width: 100%;
  max-width: 650px;
  padding-right: 10px;
  height: 70px;
}

.custom-caret {
  display: inline-block;
  width: 8px;
  height: 8px;
  margin-left: 5px;
  border-left: 2px solid #ccc;
  border-bottom: 2px solid #ccc;
  transform: rotate(-45deg);
  transform-origin: center;
  vertical-align: middle;
  position: relative;
  top: -3px;
  transition: transform 0.3s ease;
}

.menuLinks {
  display: inline-flex;
  padding: 9px 15px;
  padding-right: 0;
  margin-right: 5px;
  margin-left: auto;
  font-weight: bold;
  text-align: center;
  gap: 5px;
  margin-left: auto;
  align-items: center;
}

.menuLinks a {
  background-color: none;
  border: none;
  border-radius: 50px;
  cursor: pointer;
  transition: all 0.3s ease 0s;
}

.menuLinks a:hover {
  color: #ffffff;
  background-color: #330b17;
}

.login {
  align-items: center;
  padding: 9px 15px;

  border-radius: 50px;
  gap: 8px;
  cursor: pointer;

  background-color: white;
  transition: all 0.3s ease;
}
.langBox {
  position: absolute;
  top: -12px;
  left: -720px;
  color: var(--primary-color);
}

.langBox a {
  color: #cccccc;
}

.login img {
  width: 20px;
  height: 20px;
  object-fit: contain;
  transition:
    transform 0.3s,
    filter 0.3s;
}

.login:hover img {
  filter: brightness(0) saturate(100%) invert(50%) saturate(500%)
    hue-rotate(0deg) brightness(90%) contrast(90%);
}
.discordAvatar {
  width: 30px;
  height: 30px;
  object-fit: cover;
  border-radius: 50%;
  vertical-align: middle;
  transition:
    transform 0.3s,
    filter 0.3s;
  margin-right: 3px;
  border: 1px solid #000;
}

.signIn img {
  width: 20px;
  height: 20px;
  object-fit: contain;
  transition:
    transform 0.3s,
    filter 0.3s;
}

.signIn {
  gap: 8px;
  align-items: center;
  padding: 9px 15px;
  font-weight: bold;
  border-radius: 50px;
  color: black;

  cursor: pointer;
  background-color: rgb(21, 183, 28);
  transition: all 0.3s ease;
}

.signIn:hover {
  background-color: rgb(81, 250, 81);
}

.signIn2 img {
  width: 20px;
  height: 20px;
  object-fit: contain;
  transition:
    transform 0.3s,
    filter 0.3s;
}

.signIn2 {
  gap: 8px;
  align-items: center;
  padding: 9px 15px;
  font-weight: bold;
  border-radius: 50px;
  color: black;

  cursor: pointer;
  background-color: rgb(21, 183, 28);
  transition: all 0.3s ease;
}

.signIn2:hover {
  background-color: rgb(81, 250, 81);
}

.coaching img {
  width: 20px;
  height: 20px;
  object-fit: contain;
  transition:
    transform 0.3s,
    filter 0.3s;
}

.coaching {
  align-items: center;
  padding: 9px 15px;
  font-weight: bold;
  border-radius: 50px;
  color: black;
  gap: 8px;
  cursor: pointer;
  background-color: rgb(21, 183, 28);
  transition: all 0.3s ease;
  min-width: 170px;
}

.coaching:hover {
  background-color: rgb(81, 250, 81);
}

.nav-links {
  display: flex;
  align-items: center;
  list-style: none;
  cursor: pointer;
  transition: all 0.3s ease 0s;
  transform: translateX(50px);
}

.nav-links:hover {
  filter: brightness(0) saturate(100%) invert(50%) saturate(500%)
    hue-rotate(0deg) brightness(90%) contrast(90%);
}

.custom-line {
  border: none;
  border-top: 2px solid #60677c9a;
  width: 650px;
  margin: 0 auto;
}

.footerline {
  border: none;
  border-top: 3px solid #0000009a;
  width: 100%;
  margin: 0;
  position: relative;
  top: 0;
}

.menu {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 70px;
  width: 100%;
  position: fixed;
  top: 0;
  background: rgb(255, 255, 255);
  gap: 10px;
}

.menu > * {
  flex-basis: 100%;
}

.menu-logo {
  position: absolute;
  left: 0;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}

.menu-container {
  display: flex;
  justify-content: space-between;
  height: 70px;
  width: 650px;
  position: fixed;
  align-items: center;
  padding: 10px;
}

#boxName {
  margin: 0;
  width: 75%;
  height: auto;
}

#boxName img {
  margin: 0;
  margin-top: 7px;
  width: 90%;
  height: auto;
}

#boxIcons {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 5px;
  flex-shrink: 0;
}

.icons {
  margin-top: 10px;
  color: var(--primary-color);
  font-size: 2rem;
}

#boxLanguage {
  line-height: 70px;
  margin-left: 40px;

  justify-content: center;
}

#text-box {
  padding: 25px;
  width: 650px;
}

div.text-articles {
  width: 100%;
  padding: 25px;
  background-color: #859cdf9a;
  margin: 0;
  border-radius: 20px;
  outline: 5px dashed gray;
}

div.text-articles:hover {
  background-color: #a9b6df9a;
}

div.box-arts {
  width: 30%;
  height: 350px;
  padding: 25px;
  margin: 15px;
  border-radius: 20px;
  outline: 5px dashed gray;
}

div.box-arts.youtube {
  background-color: #ff0000;
  overflow: hidden;
}

div.box-arts.paintings {
  background-color: #756bff;
  overflow: hidden;
}

div.box-arts:hover {
  background-color: #a9b6df9a;
}
section {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center; /* Centrerer vandret */

  padding: 50px 20vw;
  margin-top: auto; /* <--- DENNE LINJE ER VIGTIG! (Den presser sektionen ned) */
  box-sizing: border-box;
}
.white {
  background: #ffffff;
  display: flex;
  justify-content: center;
  text-align: center;
}
.blue {
  background: #0b1f33;
  display: flex;
  justify-content: center;
  text-align: center;
}
.grey {
  background: #0b1f33;
  width: 100%;
}

.curve {
  position: absolute;
  bottom: 0;
  height: 225px;
  width: 100%;
}

.parent-container {
  width: 100vw;
  height: 161px;
}

.svgContainer svg {
  position: relative;
  width: 100%;

  box-sizing: border-box;
}

.content-box {
  background-color: #0b1f33;
  color: #fff;

  z-index: 2;

  margin-top: -30px;
  text-align: left;
}

.blog-text {
  font-weight: normal;
  column-count: 2;
  column-gap: 20px;
}

.wave {
  position: absolute;
  bottom: -1px;
  left: 0;
  width: 100%;
  overflow: hidden;
  line-height: 0;
}

.wave svg {
  position: relative;
  display: block;
  width: calc(100% + 1.3px);
  height: 69px;
}

.wave .shape-fill {
  fill: #0b1f33;
}

.waveInv {
  position: absolute;
  top: -1px;
  left: 0;
  width: 100%;
  overflow: hidden;
  line-height: 0;
}

.waveInv svg {
  transform: scaleY(-1);
  position: relative;
  display: block;
  width: calc(100% + 1.3px);
  height: 69px;
  top: -1px;
}

.waveInv .shape-fill {
  fill: #0b1f33;
}

.wave2 {
  aspect-ratio: 960/300;
  width: 100%;
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}
.layer1 {
  background-image: url("img/wave-haikei.jpg");
}

.cv-box {
  position: relative; /* Needed for the pseudo-element */
  padding: 30px;
  margin-left: 30px;
}

.cv-box::before {
  content: "";
  position: absolute;
  left: 0; /* Position at the left */
  top: 0;
  bottom: 0;
  width: 3px; /* Thickness of the line */
  background-color: rgb(255, 255, 255);
  border-radius: 1.5px; /* Half of width for fully rounded ends */
}

.cv-box2 {
  position: relative; /* Needed for the pseudo-element */
}

.cv-box2::before {
  content: "";
  position: absolute;
  left: 0; /* Position at the left */
  top: 0;
  bottom: 0;
  width: 3px; /* Thickness of the line */
  background-color: rgb(255, 255, 255);
  border-radius: 1.5px; /* Half of width for fully rounded ends */
}

/* Ny CSS til at arrangere logo og tekst */
.neurokapow-flex-container {
  /* 1. Aktiver Flexbox */
  display: flex;

  /* 2. Centrer elementerne vertikalt (align-items: center;) og horisontalt (justify-content: center;) */
  align-items: center;
  justify-content: center; /* Dette centrerer hele gruppen i den tilgængelige bredde */

  margin: 0 auto; /* Centrerer containeren horisontalt på siden */
  align-items: flex-start;
  display: flex;

  justify-content: center;
  gap: 25px;
}

.neurokapow-flex-container div {
  /*border: 2px #3a4052 solid;*/
  padding: 5px;
  margin-top: 75px;
}

.neurokapow-flex-container img {
  align-content: center;
  width: 350px;
}

.neurokapow-flex-container p {
  text-align: left;
  align-content: center;
  max-width: 400px;
}

.neurokapow-parent {
  display: flex; /* gør at children ligger side om side */
  align-items: flex-start;
  justify-content: center;
  gap: 25px;
  margin-top: 50px;
}

.neurokapow {
  background-image: url("../img/neurokapowvV2.png");
  background-size: contain; /* keeps the full image visible */
  background-position: center; /* centers it in the box */
  background-repeat: no-repeat; /* <-- you should add this */

  transition: background-image 0.3s ease;
  overflow: visible;
  filter: drop-shadow(0 12px 40px rgba(0, 0, 0, 0.5));
  transition:
    transform 0.5s ease-in-out,
    box-shadow 0.5s ease-in-out;
  width: 250px;
  height: 250px; /* tilføj en højde */
  transform: translateZ(0);
  will-change: filter;
}

.neurokapow:hover {
  transform: scale(1.05); /* grow a bit */
}

.neurokapow-text {
  position: relative; /* Vigtigt for at ::before placeres korrekt */
  color: #ffffff;
  padding-left: 25px; /* Plads til at rykke linjen ind under teksten */
}

.neurokapow-text::before {
  content: "";
  position: absolute;
  /* JUSTERING HER: Rykker linjen mod højre */
  left: 5px;
  bottom: -10px; /* Placeret under teksten */

  height: 3px;
  width: 95px;
  background-color: #ffffff;
  border-radius: 1.5px;

  /* Sikrer at margin ikke modarbejder positioneringen */
  margin: 0;
}
.footerText-parent {
  display: flex;
  gap: 30px;
}

/* =================================
/* CALENDER TEXT BOX - Hovedcontainer
/* Mørkeblå boks med shadow og hover effekt
/* ================================= */
/* =================================
/* PILE OG BOKS WRAPPER (TIL ABSOLUT POSITIONERING AF PILE)
/* ================================= */

/* =================================
/* CALENDER TEXT BOX - Mørkeblå boks med hover & streg
/* ================================= */

/* Kort hvid streg i bunden til venstre */

/* H2 og Flex Container (justeret til at kun indeholde teksten, da pilene er flyttet ud) */

@keyframes arrowPulse {
  /* Justeret animation til den nye -20px position */
  0% {
    opacity: 0.5;
    transform: translateY(-20px);
  }
  50% {
    opacity: 1;
    transform: translateY(-10px);
  }
  100% {
    opacity: 0.5;
    transform: translateY(-20px);
  }
}

/* =================================
/* ØVRIG TEKST
/* ================================= */

.centerMobile {
  /* 1. Etabler Flex Container */
  display: flex;

  /* 2. Horisontal centrering af børn (dropdown-btn) */
  justify-content: center;

  /* Valgfrit: Sørg for at den fylder hele bredden af sin egen forælder (hvis den ikke allerede gør det) */
  width: 100%;
}

@media only screen and (min-width: 401px) {
}

@media only screen and (max-width: 600px) {
  .footerUpper {
    width: 350px;
  }
  .custom-line {
    border: none;
    /* Remove default border */
    border-top: 2px solid #60677c9a;
    /* Set custom border properties */
    width: 350px;
    /* Set the width of the line */
    margin: 0 auto;
  }

  .signIn {
    position: fixed;
    left: 50%;
    transform: translate(-50%, -0);
  }

  .login {
    display: none !important; /* !important er tilføjet for at overskrive den inline style="display: flex;" */
  }
  /* 1. Skjul alle elementer, der ikke skal vises */

  /* Skjuler sprogvælgeren (div med position: relative) */
  .langBox,
  .langBox + div {
    display: none;
  }

  .coaching {
    display: none !important; /* !important er tilføjet for at overskrive den inline style="display: flex;" */
  }

  /* Skjul den ydre div, der indeholder .langBox, da den stadig kan optage plads */
  .langBox-parent-div {
    /* Du skal muligvis give denne div en klasse i din HTML */
    display: none;
  }

  /* 3. Tving Burger Menu til Højre */

  /* VIGTIGT: Fjern enhver vandret padding fra .container, der kan forstyrre */

  /* Og sørg for at kalenderens elementer er fleksible, f.eks.: */

  .blog-text {
    font-weight: normal;
    column-count: 1;
    width: 250px;
  }

  .blog-box1 {
    margin: 0 -150px;
  }

  .wrapper-main {
    width: 100vw;
  }

  main {
    align-items: flex-end;
  }

  .footer-logo img {
    height: 60px;

    display: flex-start;
    align-items: center;
  }

  nav {
    flex-wrap: wrap;
    padding: 0 20px;
  }

  .logo {
    height: 60px;
  }

  .nav-links {
    display: none;
    flex-basis: 100%;
    flex-wrap: wrap;
    vertical-align: middle;
  }

  .cv-box {
    position: relative; /* Needed for the pseudo-element */

    width: 250px;
    justify-content: center;
    align-content: center;
    margin-left: -25px;
  }

  .box2 {
    width: 250px;
    justify-content: center;
    align-content: center;
  }

  .neurokapow-flex-container {
    align-items: center;
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 0px;
  }

  .neurokapow-flex-container img {
    align-content: center;
    width: 250px;
  }

  .neurokapow-flex-container p {
    text-align: left;
    align-content: center;
    max-width: 350px;
  }

  .neurokapow-text {
    margin-top: 0px;
    width: 250px;
    justify-content: center;
    align-content: center;
  }

  .footerText-parent {
    align-items: center;
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 10px;
  }

  .footerText {
    align-content: center;
    width: 250px;
  }

  .footerText p {
    align-content: center;
    width: 250px;
  }
}
@media only screen and (min-width: 601px) {
}

/* ------------------------------------- */
/* --- SMÅ SKÆRME (POST-IT UNDER KALENDER) - UNDER 1146px --- */
/* ------------------------------------- */
@media only screen and (max-width: 1145px) {
  .contact {
    display: none;
  }

  /* Kalender skaleres for at passe */

  /* Gør Post-it og pil mindre for at passe på små skærme */
  #infoBox {
    width: 250px;
    height: 250px;
  }

  /* PIL: Pege OPAD, buet (relativ til .arrow-wrapper) */
  .cartoon-arrow {
    top: 250px; /* Position under post-it'en (hvis .arrow-wrapper er relative) */
    left: 50%;

    /* Roter for at pege op mod post-it'en */
    transform: translate(-100%, 0) rotate(90deg);

    width: 180px; /* Gør pilen mindre her for at passe */
    height: 180px;
  }

  /* JUSTER TAPE PÅ SMÅ SKÆRME */
  .arrow-wrapper::before {
    top: -20px;
    right: 15px;
    transform: rotate(5deg);
  }
}

/* ------------------------------------- */
/* --- STORE SKÆRME (POST-IT VED SIDEN AF KALENDER) - OVER 1146px --- */
/* ------------------------------------- */
@media only screen and (min-width: 1146px) {
  /* ØG AFSTAND MELLEN KALENDER OG POST-IT */

  /* POST-IT JUSTERING (Bruger de faste, større mål fra standard CSS) */
  /* VIGTIGT: FJERN ABSOLUT POSITIONERING FOR AT BRUGE FLEXBOX GAP */
  .arrow-wrapper {
    position: relative; /* Beholder relative for pilen */
    top: initial;
    right: initial;
    transform: none;
    margin-top: 20px; /* Juster top-margin for at aligne med kalender */
  }

  /* 🎯 PIL JUSTERING (Større, Spejlet, Positioneret i forhold til .arrow-wrapper) 🎯 */
  .cartoon-arrow {
    /* Brug den faste, store størrelse (300x300) */

    /* Position pilen til venstre for .arrow-wrapper, så den peger tilbage mod kalenderen */
    left: 290px; /* Juster denne værdi baseret på 150px gap + pilens bredde */
    top: 175px;

    /* Spejl horisontalt for at pege mod kalender */
    transform: scaleX(-1) rotate(190deg);
  }

  /* JUSTER TAPE PÅ STORE SKÆRME */
  .arrow-wrapper::before {
    top: -20px;
    right: 5px;
    transform: rotate(5deg);
  }
}

/* RYD OP I REDUNDANTE MEDIA QUERIES */

@media only screen and (max-width: 992px) {
  .menuLinks-right {
    margin-left: auto;
  }
  .nav-links {
    display: none;
  }

  .container {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 100%;
    max-width: 850px;
    padding: 0 10px;
    height: 70px;
  }
}

@media only screen and (min-width: 993px) {
  .lang {
    display: none;
  }
}

/* Kalender + extended skal stå sammen og være ens i højde + bredde */

/* Kalenderen */
.calender {
  width: 350px;

  border: 1px solid #ddd;
  border-right: none;

  display: flex;
  flex-direction: column;
  padding: 10px;
  background: white;
  margin: 25px;
  margin-top: 35px;
  border: none;
}

/* InfoBox indeni */
#infoBox {
  width: 100%;
  height: 100%;
  position: relative;
}

/* Kryds i venstre øverste hjørne */
#infoClose {
  position: absolute;
  top: 25px;
  left: 45px;
  font-size: 25px;
  cursor: pointer;
}

/* Ren mørkeblå infoboks uden post-it styling */
.infoboxDiv {
  padding: 25px;
  background-color: #0b1f33; /* mørkeblå farve */
  color: white;
  margin: 25px;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.5);
  transform: none; /* fjern rotation */
  font-style: normal; /* normal tekst */
  text-align: left; /* teksten står lige */

  background-color: #0b1f33;
  color: white;
  /* FAST STØRRELSE TIL BREDE SKÆRME (større post-it) */
  width: 350px;
  height: 350px;
  overflow: auto;
  border-radius: 25px;
}

/* Tekst i infoboksen */
.infoboxDiv p,
.infoboxDiv li {
  transform: none;
  font-style: normal;
  margin: 0 0 10px 0; /* standard margin mellem linjer */
}
/* Liste */
#bookingList {
  margin-top: 10px;
  padding-left: 20px;
}

/* Blue sektion - din base farve */
.blue {
  background-color: #0b1f33;
  position: relative;
  z-index: 5;
  padding-bottom: 100px; /* Mere plads til overgangen */
  margin: 0;
  width: 100%;
}

.space {
  position: relative;
  width: 100%;
  min-height: 800px;
  overflow: hidden;
  margin-top: -2px; /* Fjerner mikro-mellemrum */

  /* BAGGRUND: Vi starter præcis på #0b1f33 og går mod en dybere blå i stedet for grå/sort */
  background: linear-gradient(
    to bottom,
    #0b1f33 0%,
    /* 100% match med .blue sektionen */ #071626 30%,
    /* En mørkere, men stadig blå tone */ #020810 100%
      /* En ekstremt mørk blå (næsten sort) i bunden */
  );
}

/* Vi justerer også hvor partiklerne starter, så de passer til den mindre højde */
#particles-js,
#lightning-canvas {
  position: absolute;
  top: 150px; /* Rykket lidt op, da sektionen nu er kortere */
  left: 0;
  width: 100%;
  height: calc(100% - 150px);
  z-index: 1;
}
/* LAG 3: Neurokapow & Coaching boks (Helt øverst) */
.neurokapow-flex-container {
  position: relative; /* VIGTIGT: Skal være relative eller absolute for at z-index virker */
  z-index: 10; /* Højere end alt andet i space */
}

/* Gør podcast teksten hvid og rykker den til højre */
.neurokapow-text {
  color: #ffffff; /* Gør teksten helt hvid */
  padding-left: 20px; /* Flytter teksten lidt mod højre fra logoet */
  position: relative;
  z-index: 10;
}

/* Hvis din streg er en border på containeren */
.neurokapow-flex-container {
  display: flex;
  align-items: center;
  position: relative;
  z-index: 10;
  /* Hvis stregen skal rykkes til højre, kan vi justere containerens padding eller margin */
  padding-left: 30px;
}

/* Hvis stregen er lavet specifikt under logoet/teksten */
.neurokapow-text p {
  margin: 0;
  font-size: 1.1rem;
  /* Her sikrer vi at eventuelle links indeni også er hvide */
  color: #ffffff;
}

/* Ryk den hvide linje (border) mere til højre */
.neurokapow-text {
  color: #ffffff;
}

/* Containeren til coaching-boksen */

/* Mobil-optimering */
@media (max-width: 450px) {
}

@media (max-width: 450px) {
  /* 1. Centrer Neurokapow ordentligt */
  .neurokapow-flex-container {
    display: flex;
    justify-content: center;
    align-items: center;
    padding-left: 0 !important;
    width: 100%;
    gap: 0px;
  }

  /* 2. Wrapperen holder pilene på siderne */

  /* 3. STØRRE ARROWS */
  .h2-arrow {
    flex-shrink: 0;
    font-size: 3rem !important; /* Her gør vi dem meget større (før var de ca. 1.5) */
    color: #ffffff;
    font-weight: bold;
    padding: 0 10px; /* Giver pilene lidt luft til siderne */
  }

  /* 4. Ryk Wave 2px ned */
  .wave {
    bottom: -2px !important;
  }
}
/* Slet de to andre .space definitioner og brug denne i stedet */

/* Opdater også dine radial-gradients (::before) så de ikke lysner toppen for meget */
.space::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  opacity: 0.2; /* Sat lidt ned fra 0.3 for at holde toppen mørk */
  pointer-events: none;
  z-index: 2;
  background-image:
    radial-gradient(circle at 10% 10%, #0b1f33 transparent 50%),
    radial-gradient(
      circle at 90% 90%,
      rgba(150, 87, 213, 0.2) 0%,
      transparent 50%
    );
  mix-blend-mode: screen;

  /* Denne maske er vigtig - den fjerner alt lys/grå i de øverste 15% af sektionen */
  -webkit-mask-image: linear-gradient(to bottom, transparent 0%, black 15%);
  mask-image: linear-gradient(to bottom, transparent 0%, black 15%);
}
/* LAG 2: Stærkere blå gradienter + Lilla bund-glød (0.6 opacitet) */
.space::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  opacity: 0.6;
  pointer-events: none;
  z-index: 2;
  background-image:
    radial-gradient(
      circle at 50% 100%,
      rgba(106, 0, 255, 0.3) 0%,
      transparent 70%
    ),
    /* Den lilla bund */
    radial-gradient(circle at 10% 10%, rgba(4, 50, 95, 0.3) 0%, transparent 50%),
    radial-gradient(
      circle at 90% 90%,
      rgba(150, 100, 200, 0.3) 0%,
      transparent 50%
    );
  mix-blend-mode: screen;

  /* RETTET: Sørger for at de stærke farver ikke starter brat */
  -webkit-mask-image: linear-gradient(to bottom, transparent 0%, black 20%);
  mask-image: linear-gradient(to bottom, transparent 0%, black 20%);
}

.space2 {
  position: relative;
  width: 100%;
  min-height: 800px;
  overflow: hidden;
  margin-top: -2px; /* Fjerner mikro-mellemrum */

  /* BAGGRUND: Vi starter præcis på #0b1f33 og går mod en dybere blå i stedet for grå/sort */
  background: linear-gradient(
    to bottom,
    #0b1f33 0%,
    /* 100% match med .blue sektionen */ #071626 30%,
    /* En mørkere, men stadig blå tone */ #020810 100%
      /* En ekstremt mørk blå (næsten sort) i bunden */
  );
}

/* Opdater også dine radial-gradients (::before) så de ikke lysner toppen for meget */
.space2::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  opacity: 0.2; /* Sat lidt ned fra 0.3 for at holde toppen mørk */
  pointer-events: none;
  z-index: 2;
  background-image:
    radial-gradient(circle at 10% 10%, #0b1f33 transparent 50%),
    radial-gradient(
      circle at 90% 90%,
      rgba(150, 87, 213, 0.2) 0%,
      transparent 50%
    );
  mix-blend-mode: screen;

  /* Denne maske er vigtig - den fjerner alt lys/grå i de øverste 15% af sektionen */
  -webkit-mask-image: linear-gradient(to bottom, transparent 0%, black 15%);
  mask-image: linear-gradient(to bottom, transparent 0%, black 15%);
}
/* LAG 2: Stærkere blå gradienter + Lilla bund-glød (0.6 opacitet) */
.space2::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  opacity: 0.6;
  pointer-events: none;
  z-index: 2;
  background-image:
    radial-gradient(
      circle at 50% 100%,
      rgba(106, 0, 255, 0.3) 0%,
      transparent 70%
    ),
    /* Den lilla bund */
    radial-gradient(circle at 10% 10%, rgba(4, 50, 95, 0.3) 0%, transparent 50%),
    radial-gradient(
      circle at 90% 90%,
      rgba(106, 0, 255, 0.3) 0%,
      transparent 50%
    );
  mix-blend-mode: screen;

  /* RETTET: Sørger for at de stærke farver ikke starter brat */
  -webkit-mask-image: linear-gradient(to bottom, transparent 0%, black 20%);
  mask-image: linear-gradient(to bottom, transparent 0%, black 20%);
}
:root {
  --primary: #00ff6a;
  --dark-bg: #0d1b2a;
  --card-bg: #1f2a38;
  --border: rgba(255, 255, 255, 0.1);
}

.progress-footer {
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100%;
  background: #0b141d;
  border-top: 1px solid var(--border);
  padding: 15px 0;
  z-index: 1000;
}
.progress-container {
  max-width: 1000px;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 0 20px;
}
.steps-wrap {
  display: flex;
  gap: 30px;
}
.step {
  display: flex;
  align-items: center;
  gap: 10px;
  color: #444;
  font-size: 0.75rem;
  font-weight: 800;
  text-transform: uppercase;
}
.step.active {
  color: var(--primary);
}
.step.completed {
  color: white;
}
.step-num {
  width: 24px;
  height: 24px;
  border-radius: 50%;
  border: 2px solid #444;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 0.7rem;
}
.active .step-num {
  border-color: var(--primary);
  background: var(--primary);
  color: #0d1b2a;
}
.completed .step-num {
  border-color: white;
  background: white;
  color: #0d1b2a;
}

.nav-btns {
  display: flex;
  gap: 12px;
}
.nav-btn {
  padding: 10px 24px;
  border-radius: 8px;
  border: 1px solid var(--border);
  background: rgba(255, 255, 255, 0.05);
  color: white;
  text-decoration: none;
  font-size: 0.85rem;
  font-weight: 700;
  transition: 0.2s;
}
.nav-btn.primary {
  background: var(--primary);
  color: #0d1b2a;
  border: none;
}
.nav-btn:hover:not(:disabled) {
  background: rgba(255, 255, 255, 0.1);
}
