/* All mobiles & tablets */
@media (max-width: 1080px) {
  .orb {
    filter: blur(12rem);
    opacity: 0.4;
  }

  .orb-1 {
    top: -10rem;
    left: -10rem;

    width: 30rem;
    height: 30rem;
  }

  .orb-2 {
    bottom: -10rem;
    right: -10rem;

    width: 25rem;
    height: 25rem;
  }

  .orb-3 {
    top: 50%;
    left: 50%;

    width: 20rem;
    height: 20rem;
  }
}

/* Mobiles */
@media (max-width: 768px) {
  html {
    font-size: 55%;
  }

  .page-header {
    display: flex;
    flex-direction: column-reverse;
  }

  .sub-header {
    justify-content: center;

    position: relative;
    top: auto;
    left: auto;

    width: 100%;
  }

  .section-header {
    padding-top: 2rem;
  }

  small {
    display: flex;
    flex-direction: column;
  }

  /* LAYOUTS */
  .grid-3 {
    display: flex;
    flex-direction: column;
  }

  /* MY PROJECTS */
  .artefact-grid {
    grid-template-columns: 1fr;
    gap: 2rem;
  }

  /* MY PROCESS */
  .stat-value {
    font-size: var(--txt-huge);
  }

  .story-book-container,
  .page {
    height: 80vh;
  }
  .page-front {
    padding: 2em 1.5em;
  }

  /* MY CAREER */
  .timeline {
    display: none;
  }

  .dossier-body {
    grid-template-columns: 1fr;
  }

  /* SANDBOX */
  .log-header {
    flex-direction: column;
    align-items: flex-start;
  }

  /* CONTACT ME */
  .contact-grid {
    grid-template-columns: 1fr;
  }
}

/* Extra Small Screens (Mobile) */
@media only screen and (max-width: 576px) {
  .container {
    width: 100%;
  }

  .menu-grid {
    grid-template-columns: repeat(2, 15rem);
    gap: 1.5rem;
  }

  .menu-item {
    height: 13.5rem;
  }

  .menu-badge {
    width: 5rem;
    height: 5rem;
    font-size: var(--txt-huge);
  }

  .menu-title {
    font-size: 1rem;
  }

  h1 {
    font-size: 4rem;
  }

  /* MY PROCESS */
  .stats {
    flex-direction: column;
    gap: 2.5rem;
  }
  .stat-value {
    font-size: var(--txt-dolly-parton);
  }
}

/* Small Screens (Tablets) */
@media only screen and (min-width: 769px) and (max-width: 980px) {
  .container {
    width: 100%;
  }

  .menu-grid {
    grid-template-columns: repeat(3, 20rem);
    gap: 1.5rem;
  }

  /* COURSES */
  .grid-3 {
    grid-template-columns: repeat(2, 1fr);
  }

  /* MY PROCESS */
  .stats {
    gap: 2rem;
  }
  .stat-value {
    font-size: 2.5rem;
  }

  /* MY CAREER */
  .timeline {
    display: none;
  }
}

/* ===== Adjustments for no hover ================================ */
@media (hover: none) and (pointer: coarse) {
  .terminal-card:hover .console-output {
    visibility: hidden;

    opacity: 0;
    transform: scale(1) translateY(0);
  }
  .terminal-card:hover .terminal-body {
    opacity: 1;
  }
  .terminal-card.active .console-output {
    visibility: visible;

    opacity: 1;
    transform: scale(0.95) translateY(0);
  }
  .terminal-card.active .terminal-body {
    opacity: 0.1;
    transition: opacity 0.3s ease;
  }
  .terminal-card:not(.active) .terminal-body {
    opacity: 1;
    transition: opacity 0.3s ease;
  }
  .dirs {
    display: block;
  }
  .console-output {
    cursor: pointer;
  }
  .console-output::after,
  .terminal-body::after {
    position: absolute;
    bottom: 1rem;
    left: 0;

    width: 100%;

    text-align: center;
    font-family: "Courier New", monospace;
    font-size: var(--txt-tiny);
    color: var(--clr-primary);

    opacity: 0.7;

    content: "TAP TO CLOSE";
    pointer-events: none;
  }
  .terminal-body {
    margin-bottom: 2rem;
  }
  .terminal-body::after {
    bottom: -2rem;

    content: "TAP FOR USER NOTES";
  }
}

/* ===== Important overrides ===================================== */
@media (prefers-reduced-motion: reduce) {
  * {
    animation: none !important;
    transition: none !important;
  }
}
