/* Yosemite Optometric — responsive.css v1.0 */

/* ── Top bar ── */
@media (max-width: 768px) {
  .yoc-topbar-left { display: none !important; }
  .yoc-topbar { justify-content: center !important; }
}

/* ── Header: hide desktop nav, show hamburger ── */
@media (max-width: 900px) {
  .yoc-menu   { display: none !important; }
  .yoc-hamburger { display: block !important; }
}

/* ── Hero (home) ── */
@media (max-width: 768px) {
  #yoc-home-hero {
    height: auto !important;
    min-height: 0 !important;
    padding: 80px 0 60px !important;
  }
  #yoc-home-hero-content { padding: 0 20px !important; }
  #yoc-home-hero h1 { font-size: 1.8rem !important; }
  #yoc-home-hero-btns { flex-direction: column !important; }
  #yoc-home-hero-btns a { width: 100% !important; justify-content: center !important; }
}

/* ── Dedicated & Friendly Service 2-col ── */
@media (max-width: 768px) {
  #yoc-friendly-grid {
    grid-template-columns: 1fr !important;
    gap: 40px !important;
  }
  #yoc-friendly-img { order: 1 !important; }
  #yoc-friendly-text { order: 2 !important; }
  #yoc-friendly-img .yoc-circle-abs-br,
  #yoc-friendly-img .yoc-circle-abs-tl { display: none !important; }
}

/* ── Complete Eye Care 4-col → 2-col → 1-col ── */
@media (max-width: 900px) {
  #yoc-eyecare-grid { grid-template-columns: 1fr 1fr !important; }
}
@media (max-width: 480px) {
  #yoc-eyecare-grid { grid-template-columns: 1fr !important; }
}

/* ── CTA section ── */
@media (max-width: 600px) {
  #yoc-cta-btns { flex-direction: column !important; }
  #yoc-cta-btns a { width: 100% !important; justify-content: center !important; }
}

/* ── About: bio 2-col → 1-col ── */
@media (max-width: 768px) {
  #yoc-about-bio-grid {
    grid-template-columns: 1fr !important;
    gap: 32px !important;
  }
  #yoc-about-dark-grid {
    grid-template-columns: 1fr !important;
    gap: 28px !important;
  }
  #yoc-about-dark-wrap { padding: 32px 24px !important; }
}

/* ── Contact: card flex-row → flex-col ── */
@media (max-width: 768px) {
  #yoc-contact-card {
    flex-direction: column !important;
  }
  #yoc-contact-left  { width: 100% !important; }
  #yoc-contact-right { min-height: 320px !important; }
}

/* ── Services: section padding ── */
@media (max-width: 600px) {
  .yoc-svc-card { flex-direction: column !important; }
  .yoc-svc-inner { padding: 0 16px !important; }
}

/* ── Articles: 3-col → 2-col → 1-col ── */
@media (max-width: 900px) {
  #yoc-art-grid { grid-template-columns: 1fr 1fr !important; }
}
@media (max-width: 560px) {
  #yoc-art-grid { grid-template-columns: 1fr !important; }
}

/* ── Footer: 3-col → 1-col ── */
@media (max-width: 768px) {
  #yoc-footer-grid {
    grid-template-columns: 1fr !important;
    gap: 32px !important;
  }
}

/* ── Global: generous tap targets, readable font sizes ── */
@media (max-width: 600px) {
  body { font-size: 15px; }
  .yoc-about { padding: 40px 16px !important; }
  .yoc-services { padding: 40px 16px !important; }
  .yoc-articles { padding: 40px 16px !important; }
  /* Hero banners */
  .yoc-hero { padding: 48px 20px !important; }
  .yoc-hero h1 { font-size: 2rem !important; }
}
