/* =========================================
   COOKIE BANNER - MOBILE
========================================= */

@media (max-width: 700px) {

  .cookie-banner {
    padding: 20px 16px;
  }

  .cookie-banner__inner {
    flex-direction: column;
    align-items: stretch;
    gap: 18px;
  }

  .cookie-banner__text strong {
    font-size: 17px;
  }

  .cookie-banner__text p {
    font-size: 13px;
  }

  .cookie-banner__actions {
    width: 100%;
    gap: 10px;
  }

  .cookie-button {
    flex: 1;
    min-width: 0;
    padding: 12px 14px;
  }

}


/* =====================================================
   STERDIGITAAL - MOBILE HEADER + MENU
===================================================== */

@media (max-width: 800px) {

  /* Desktop navigatie + CTA verbergen */
  .site-header .header-actions {
    display: none !important;
  }


  /* Header */
  .site-header .header-inner {
    min-height: 78px;

    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;

    padding-left: 20px;
    padding-right: 20px;

    box-sizing: border-box;
  }


  /* Logo */
  .site-header .site-logo img {
    display: block;

    width: 205px;
    max-width: 100%;

    height: auto;
  }


  /* =========================================
     HAMBURGER
  ========================================= */

  .site-header .mobile-menu-toggle {
    display: flex !important;

    flex-direction: column;
    align-items: center;
    justify-content: center;

    width: 44px;
    height: 44px;

    margin-left: auto;
    padding: 0;

    flex-shrink: 0;

    border: 0;
    background: transparent;

    cursor: pointer;

    position: relative;
    z-index: 1200;
  }


  .site-header .mobile-menu-toggle span {
    display: block;

    width: 27px;
    height: 2px;

    margin: 3px 0;

    background-color: #302222;

    transition:
      transform 0.3s ease,
      opacity 0.3s ease,
      background-color 0.3s ease;
  }


  /* =========================================
     MOBILE MENU
  ========================================= */

  .site-header .mobile-menu {
    display: flex !important;
    flex-direction: column;

    position: fixed;

    top: 0;
    left: 0;

    width: 100%;
    height: 100dvh;

    padding: 110px 28px 40px;

    box-sizing: border-box;

    background-color: #7B599F;

    z-index: 1100;

    opacity: 0;
    visibility: hidden;

    transform: translateX(100%);

    transition:
      transform 0.35s ease,
      opacity 0.35s ease,
      visibility 0.35s ease;
  }


  /* Menu geopend */
  .site-header .mobile-menu.is-open {
    opacity: 1;
    visibility: visible;

    transform: translateX(0);
  }


  /* Navigatie */
  .mobile-menu-nav {
    display: flex;
    flex-direction: column;
  }


  .mobile-menu-nav a {
    display: block;

    padding: 16px 0;

    border-bottom: 1px solid rgba(255, 255, 255, 0.22);

    font-family: var(--font-body);
    font-size: 28px;
    font-weight: 600;

    color: #FCF7F7;

    text-decoration: none;
  }


  /* CTA onderaan */
  .mobile-menu-cta {
    display: flex;

    align-items: center;
    justify-content: center;

    width: 100%;

    margin-top: 34px;
    padding: 18px 20px;

    box-sizing: border-box;

    background-color: #FCF7F7;

    color: #7B599F;

    font-size: 15px;
    font-weight: 700;

    text-decoration: none;

    border-radius: 40px;
  }


  /* =========================================
     HAMBURGER → KRUIS
  ========================================= */

  .mobile-menu-toggle.is-open span {
    background-color: #FCF7F7 !important;
  }


  .mobile-menu-toggle.is-open span:nth-child(1) {
    transform: translateY(8px) rotate(45deg);
  }


  .mobile-menu-toggle.is-open span:nth-child(2) {
    opacity: 0;
  }


  .mobile-menu-toggle.is-open span:nth-child(3) {
    transform: translateY(-8px) rotate(-45deg);
  }

}


/* =====================================================
   CONTACTPAGINA - MOBILE
===================================================== */

@media (max-width: 800px) {

  /* Hele contactpagina */
  .contact-page {
    width: 100%;
    overflow-x: hidden;
  }


  /* Desktop 2-koloms grid uitschakelen */
  .contact-page-grid {
    display: flex !important;
    flex-direction: column !important;

    grid-template-columns: none !important;

    width: 100% !important;
    max-width: 100% !important;

    gap: 50px !important;

    padding-left: 20px !important;
    padding-right: 20px !important;

    box-sizing: border-box;
  }


  /* =========================================
     LINKERKANT
  ========================================= */

  .contact-page-content {
    display: block !important;

    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;

    box-sizing: border-box;
  }


  .contact-page-content .eyebrow {
    width: 100%;
  }


  .contact-page-content h1 {
    display: block;

    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;

    margin-left: 0;
    margin-right: 0;

    font-size: 50px !important;
    line-height: 1.02 !important;

    overflow-wrap: normal !important;
    word-wrap: normal !important;
    word-break: normal !important;
    white-space: normal !important;
  }


  .contact-page-intro {
    display: block;

    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;

    font-size: 17px;
    line-height: 1.65;

    box-sizing: border-box;
  }


  /* =========================================
     FORMULIER
  ========================================= */

  .contact-form {
    display: block;

    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;

    box-sizing: border-box;
  }


  /* Velden die desktop naast elkaar staan,
     mobiel onder elkaar */
  .contact-form-row {
    display: flex !important;
    flex-direction: column !important;

    grid-template-columns: none !important;

    width: 100% !important;
    max-width: 100% !important;

    gap: 22px !important;
  }


  .form-group {
    display: block;

    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;

    box-sizing: border-box;
  }


  .form-group label {
    display: block;
    width: 100%;
  }


  .form-group input,
  .form-group select,
  .form-group textarea {
    display: block;

    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;

    box-sizing: border-box;
  }


  .form-group textarea {
    resize: vertical;
  }


  .contact-form .button {
    width: 100%;
    max-width: 100%;

    box-sizing: border-box;
  }


  /* =========================================
     RECHTER CONTACTKAART
  ========================================= */

  .contact-card {
    display: block !important;

    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;

    margin: 0 !important;

    box-sizing: border-box;
  }


  .contact-card-image {
    width: 100% !important;
    max-width: 100% !important;

    overflow: hidden;
  }


  .contact-card-image img {
    display: block;

    width: 100% !important;
    max-width: 100% !important;

    height: auto;
  }


  .contact-card-content {
    display: block;

    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;

    box-sizing: border-box;
  }


  .contact-details {
    width: 100%;
    max-width: 100%;
  }


  .contact-details a {
    max-width: 100%;
    overflow-wrap: anywhere;
  }

}


/* =====================================================
   CONTACTPAGINA - KLEINERE MOBIEL
===================================================== */

@media (max-width: 500px) {

  .contact-page-content h1 {
    font-size: 42px !important;
    line-height: 1.05 !important;
  }

  /* =====================================================
   BEDANKTPAGINA
===================================================== */

.thank-you-page {
  min-height: 80vh;

  display: flex;
  align-items: center;

  padding: 100px 0;

  background-color: #FCF7F7;
}


.thank-you-inner {
  max-width: 760px;
}


.thank-you-inner h1 {
  max-width: 700px;

  margin-bottom: 28px;
}


.thank-you-text {
  max-width: 620px;

  margin-bottom: 22px;

  font-size: 20px;
  line-height: 1.7;
}


.thank-you-signature {
  margin-bottom: 36px;

  font-size: 17px;
  line-height: 1.6;
}


/* =====================================================
   BEDANKTPAGINA - MOBIEL
===================================================== */

@media (max-width: 800px) {

  .thank-you-page {
  min-height: 10vh;

  display: flex;
  align-items: flex-start;

  padding: 140px 0 100px;

  background-color: #FCF7F7;
}


.thank-you-inner h1 {
  max-width: 700px;

  margin-bottom: 28px;

  font-size: 72px;
  line-height: 1.05;
}


  .thank-you-text {
    font-size: 17px;
  }

}


@media (max-width: 500px) {

  .thank-you-inner h1 {
    font-size: 40px;
  }

  /* =====================================================
   404 PAGINA - MOBIEL
===================================================== */

@media (max-width: 800px) {

  .error-page {
    min-height: 70vh;

    padding: 90px 0 70px;
  }


  .error-page-inner {
    padding-left: 20px;
    padding-right: 20px;
  }


  .error-page-inner h1 {
    font-size: 46px;
    line-height: 1.05;
  }


  .error-page-text {
    font-size: 17px;
  }

}


@media (max-width: 500px) {

  .error-page-inner h1 {
    font-size: 40px;
  }

}

}
}