/* =========================================================
   Phoenix Rising Counseling – styles.responsive.css
   Responsive layout adjustments (Section 12)
   Nav here only adjusts sizing; behavior is defined globally
   ========================================================= */


/* 12.1 Header / Nav responsiveness */

@media (max-width: 960px) {

  .main-header-inner {
    max-width: 1100px;
    margin: 0 auto;
    padding: 0.75rem 1rem;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.75rem 1rem;
  }

  /* Brand stays left */
  .site-brand {
    flex: 1 1 auto;
  }

  /* Hide the separate header CTA on small screens (optional) */
  .header-cta {
    display: none;
  }

  .nav-link {
    font-size: 0.95rem;
    padding: 0.25rem 0;
    width: 100%;
  }
}

/* Extra tightening on very small phones */
@media (max-width: 480px) {

  .main-header-inner {
    padding: 0.6rem 0.75rem;
  }

  .site-title {
    font-size: 0.95rem;
  }

  .site-subtitle {
    font-size: 0.8rem;
  }

  .nav-link {
    font-size: 0.9rem;
  }
}

/* 12.1.1 Compact sticky header on small phones */
@media (max-width: 720px) {

  /* Make the beige header bar as small as possible */
  .main-header-inner {
    padding: 0.45rem 0.75rem;
    justify-content: flex-end;  /* push Menu / nav to the right */
  }

  /* Hide the full brand text (name and subtitle), but keep the logo */
  .site-title,
  .site-subtitle {
    display: none;
  }

  /* Show a small, circular logo on the left (if .site-logo is used) */
  .site-logo {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    object-fit: cover;
  }
}

/* 12.2 Collapse two-column layouts on smaller screens */

@media (max-width: 900px) {
  /* Generic two-column utility */
  .section-two-col {
    grid-template-columns: 1fr;
  }

  /* Contact section grid (info + form/map) */
  .section-contact .section-inner {
    grid-template-columns: 1fr;
  }

  /* Team cards */
  .section-team .section-inner {
    grid-template-columns: 1fr;
  }

  /* Clear floats for Services/Who We Are images */
  .section-services img,
  .section-who-we-are img {
    float: none;
    width: 100%;
    max-width: 100%;
    margin: 0 0 1.25rem 0;
  }

  /* Hero adjustments (tablet + small desktop) */
  .section-hero .section-inner {
    min-height: 65vh;
    padding-top: 4.5rem;
    padding-bottom: 3.5rem;
  }

  .section-hero h1 {
    font-size: clamp(2.1rem, 6.2vw, 2.6rem);
  }

  .section-hero p {
    max-width: 100%;
    font-size: 0.98rem;
  }

  .section-hero a {
    width: 100%;
    justify-content: center;
  }

  .section-hero a[href="#top"] {
    width: auto;
  }
}

/* 12.3 Hero – smallest phones */

@media (max-width: 480px) {
  .section-hero .section-inner {
    min-height: 60vh;
    padding-top: 4rem;
    padding-bottom: 3rem;
  }

  .section-hero h1 {
    font-size: clamp(1.9rem, 7vw, 2.3rem);
  }

  .section-hero p {
    font-size: 0.95rem;
  }
}

/* 12.4 Team & cards on smaller screens */

@media (max-width: 720px) {
  .section-team .section-inner {
    grid-template-columns: 1fr;
    gap: 2rem;
  }

  .section-team .team-member {
    padding: 1.25rem 1.35rem;
  }
}

/* 12.5 Footer responsiveness */

@media (max-width: 960px) {
  .footer-inner {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 640px) {
  .footer-inner {
    grid-template-columns: 1fr;
    padding: 0 1rem;
  }

  .site-footer {
    padding-top: 2.5rem;
  }

  .footer-bottom {
    padding: 1rem 1rem 0;
    flex-direction: column;
    align-items: flex-start;
  }
}

/* 12.6 Global image tweaks on small screens */

@media (max-width: 720px) {
  .section img {
    margin: 0.75rem 0 1rem;
    border-radius: 0.5rem;
  }
}
