/* Mobile Styles for Moscow Ballet */

/* ==========================================================================
   Mobile Breakpoints
   ========================================================================== */
/* 
   - Small devices (phones): max-width: 480px
   - Medium devices (tablets): max-width: 767px
   - Large devices (desktop): max-width: 991px
*/

/* ==========================================================================
   Base Mobile Styles
   ========================================================================== */
@media (max-width: 991px) {
  /* Global styles for tablets and smaller */
  body {
    font-size: 16px;
  }
  
  .container {
    padding-left: 20px;
    padding-right: 20px;
  }
  
  h1 {
    font-size: 2.2em;
  }
  
  h2 {
    font-size: 1.8em;
  }
  
  h3 {
    font-size: 1.5em;
  }
}

@media (max-width: 767px) {
  /* Global styles for phones and tablets */
  body {
    font-size: 15px;
  }
  
  h1 {
    font-size: 2em;
  }
  
  h2 {
    font-size: 1.6em;
  }
  
  h3 {
    font-size: 1.3em;
  }
  
  /* Enhanced mobile menu */
  .main-navigation .menu-toggle {
    display: block;
  }
  
  .main-navigation .primary-menu-container {
    position: fixed;
    top: 0;
    right: -100%;
    width: 80%;
    height: 100vh;
    background-color: #fff;
    box-shadow: -3px 0 10px rgba(0, 0, 0, 0.1);
    z-index: 1000;
    padding: 60px 20px 20px;
    transition: right 0.3s ease;
    overflow-y: auto;
  }
  
  .main-navigation .primary-menu-container.toggled {
    right: 0;
  }
  
  .main-navigation ul {
    display: block;
    width: 100%;
  }
  
  .main-navigation ul li {
    width: 100%;
    margin: 0;
    padding: 0;
    text-align: left;
  }
  
  .main-navigation ul li a {
    display: block;
    padding: 15px 0;
    border-bottom: 1px solid #eaeaea;
  }
  
  /* Hero sections */
  .hero-banner {
    padding: 50px 0;
  }
  
  .hero-banner .hero-text h1 {
    margin-bottom: 15px;
  }
  
  .hero-banner .hero-buttons {
    flex-direction: column;
    align-items: center;
  }
  
  .hero-banner .hero-buttons .btn {
    margin: 5px 0;
    width: 100%;
    max-width: 250px;
  }
}

@media (max-width: 480px) {
  /* Specific styles for smaller phones */
  body {
    font-size: 14px;
  }
  
  /* Content sections */
  .section-header {
    margin-bottom: 20px;
  }
  
  .section-header h2 {
    font-size: 1.5em;
  }
  
  /* Event cards */
  .event-card {
    margin-bottom: 20px;
  }
  
  /* Gallery */
  .gallery-grid {
    grid-gap: 10px;
  }
  
  /* Buttons */
  .btn {
    padding: 10px 15px;
    font-size: 14px;
  }
  
  /* Footer spacing */
  .site-footer {
    padding: 30px 0;
  }
  
  .site-footer .footer-logo, 
  .site-footer .footer-navigation {
    margin-bottom: 20px;
  }
} 