/* Mobile specific fixes */
@media (max-width: 767px) {
  .device-notification {
    display: none !important; /* Never block content on mobile */
  }
  
  .l-wrapper {
    width: 100%;
    max-width: 100%;
    padding: 0 15px;
    box-sizing: border-box;
  }
  
  .intro--banner h1 {
    font-size: 36px;
  }
  
  .intro--options {
    flex-direction: column;
  }
  
  .work-request--options {
    flex-direction: column;
  }
  
  .work-request--options .options-a,
  .work-request--options .options-b {
    width: 100%;
  }
  
  .work-request--information {
    flex-direction: column;
  }
  
  .work-request--information .information-name,
  .work-request--information .information-email {
    width: 100%;
    margin-bottom: 20px;
  }
  
  .work-request input[type="submit"] {
    width: 100%;
  }
  
  .outer-nav {
    left: 0;
    width: 100%;
    text-align: center;
  }
  
  .outer-nav > li {
    font-size: 28px;
  }
  
  /* Better touch targets for mobile */
  .header--nav-toggle {
    width: 60px;
    height: 60px;
  }
  
  /* Fix slider for mobile */
  .work--lockup .slider--item-center .slider--item-image {
    width: 200px;
    height: 200px;
  }
  
  /* Full width modal for mobile */
  .contact--lockup .modal {
    width: 90%;
    padding: 20px;
  }
  
  /* Bottom contact info */
  .bottom-center {
    width: 100%;
    padding: 15px;
    background-color: rgba(12, 12, 12, 0.8);
  }
}

/* Landscape fixes */
@media (max-height: 500px) and (orientation: landscape) {
  .intro--banner {
    height: auto;
    padding: 40px 0;
  }
  
  .section {
    height: auto;
    min-height: 100vh;
    padding: 40px 0;
  }
}

/* Fix for extremely small screens */
@media (max-width: 375px) {
  .intro--banner h1 {
    font-size: 30px;
  }
  
  .header--logo p {
    font-size: 14px;
  }
} 