/* Mobile-specific improvements for Emocean Counseling Services */

/* Enhanced mobile styles for screens 767px and below */
@media screen and (max-width: 767px) {
  
  /* Navigation improvements */
  .nav_logo-icon {
    max-width: 50px;
  }
  
  .paragraph_large {
    font-size: 0.9rem !important;
  }
  
  /* Hide logo and company name in header on mobile */
  .nav_logo {
    display: none !important;
  }
  
  /* Move Book Now button to the left on mobile */
  .nav_container {
    display: flex !important;
    flex-direction: row-reverse !important;
    justify-content: space-between !important;
  }
  
  .nav_right {
    order: -1 !important;
    margin-right: auto !important;
  }
  
  .nav_right .button-group {
    margin-right: 0 !important;
  }
  
  /* Hide "Emocean Counseling Services" text in footer on mobile */
  .footer .paragraph_large[data-brand-name="true"] {
    display: none !important;
  }
  
  /* Hero section improvements */
  .hero_container {
    padding: 2rem 1rem;
  }
  
  .heading_primary {
    font-size: 2rem !important;
    line-height: 1.2 !important;
  }
  
  .subheading {
    font-size: 1rem !important;
  }
  
  /* Insurance cards mobile layout */
  .insurance-card {
    padding: 2rem 1.5rem !important;
    min-height: 120px !important;
  }
  
  .insurance-logo {
    max-height: 60px !important;
  }
  
  .insurance-logo-large {
    max-height: 75px !important;
  }
  
  /* Grid improvements for mobile */
  .grid_3-col {
    grid-template-columns: 1fr !important;
    gap: 1.5rem !important;
  }
  
  .grid_2-col {
    grid-template-columns: 1fr !important;
    gap: 1.5rem !important;
  }
  
  /* Section spacing */
  .section {
    padding: 3rem 1rem !important;
  }
  
  /* Container padding */
  .container {
    padding-left: 1rem !important;
    padding-right: 1rem !important;
  }
  
  /* Image ratio adjustments */
  .image-ratio_2x3 {
    aspect-ratio: 1 / 1 !important;
    width: 100% !important;
    height: auto !important;
    overflow: hidden !important;
    position: relative !important;
  }
  
  .image-ratio_auto {
    width: 100% !important;
  }
  
  /* Ensure images are visible and properly sized on mobile */
  .image-ratio_2x3 img,
  .image-ratio_auto img,
  .image_cover {
    visibility: visible !important;
    opacity: 1 !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center !important;
  }
  
  /* Treatment options section image fixes */
  .ix_sticky-card .image-ratio_2x3 {
    min-height: 250px !important;
    max-height: 400px !important;
  }
  
  .ix_sticky-card img {
    display: block !important;
  }
  
  /* Card padding */
  .content-block-link {
    padding: 0.5rem;
  }
  
  /* Form improvements */
  .form_wrapper {
    padding: 1.5rem !important;
  }
  
  .form_field-label {
    font-size: 0.9rem !important;
  }
  
  .form_input,
  .form_textarea {
    font-size: 1rem !important;
    padding: 0.75rem !important;
  }
  
  /* Button improvements */
  .button {
    width: auto !important;
    padding: 0.75rem 1.25rem !important;
    font-size: 0.95rem !important;
  }
  
  /* Footer improvements */
  .footer {
    padding: 2rem 1rem !important;
  }
  
  .footer_content {
    flex-direction: column !important;
    gap: 1.5rem !important;
  }
}

/* Extra small mobile devices (479px and below) */
@media screen and (max-width: 479px) {
  
  /* Further reduce heading sizes */
  .heading_primary {
    font-size: 1.75rem !important;
    line-height: 1.3 !important;
  }
  
  .heading_secondary {
    font-size: 1.5rem !important;
  }
  
  .heading_tertiary {
    font-size: 1.1rem !important;
  }
  
  /* Insurance cards for very small screens */
  .insurance-card {
    padding: 1.5rem 1rem !important;
    min-height: 100px !important;
  }
  
  .insurance-logo {
    max-height: 50px !important;
    max-width: 85% !important;
  }
  
  .insurance-logo-large {
    max-height: 65px !important;
  }
  
  /* Tighter section spacing */
  .section {
    padding: 2rem 0.75rem !important;
  }
  
  .container {
    padding-left: 0.75rem !important;
    padding-right: 0.75rem !important;
  }
  
  /* Grid gaps */
  .grid_3-col,
  .grid_2-col {
    gap: 1rem !important;
  }
  
  /* Navigation logo size */
  .nav_logo-icon {
    max-width: 40px;
  }
  
  .nav_logo-icon img {
    max-width: 100%;
    height: auto;
  }
  
  /* Reduce logo text on very small screens */
  .paragraph_large {
    font-size: 0.85rem !important;
  }
  
  /* Form elements */
  .form_wrapper {
    padding: 1rem !important;
  }
  
  .form_input,
  .form_textarea {
    font-size: 0.95rem !important;
    padding: 0.65rem !important;
  }
  
  /* Button size */
  .button {
    padding: 0.7rem 1rem !important;
    font-size: 0.9rem !important;
    width: auto !important;
  }
  
  /* Treatment section images - consistent sizing */
  .ix_sticky-card .image-ratio_2x3 {
    min-height: 220px !important;
    max-height: 300px !important;
  }
}

/* Landscape mode on mobile */
@media screen and (max-width: 767px) and (orientation: landscape) {
  .section {
    padding: 2rem 1rem !important;
  }
  
  .hero_container {
    padding: 1.5rem 1rem;
  }
}

/* Touch target improvements for all mobile */
@media (hover: none) and (pointer: coarse) {
  .button,
  .nav_link,
  .content-block-link,
  .form_button {
    min-height: 44px !important;
    min-width: 44px !important;
  }
  
  .insurance-card {
    min-height: 110px !important;
  }
}
