/* BOY-53 (Sam 2026-09-27: "website and listings need to be mobile friendly").
   Phone rules for every page of www.boyerholdings.com, loaded after the theme's own stylesheets by
   tools/phone_patch.py. Nothing here applies above 767px wide, so desktop pages are untouched. */
@media (max-width: 767px) {
  html, body { overflow-x: hidden; }
  body { font-size: 15px; line-height: 1.6; }
  img, video, iframe, embed, object, figure { max-width: 100%; }
  img { height: auto; }
  table { width: 100% !important; }

  /* Readable, not massive (Sam: "the font is pretty massive") */
  h1 { font-size: 28px !important; line-height: 1.25 !important; }
  h2 { font-size: 26px !important; line-height: 1.25 !important; }
  h3, .vc_custom_heading { font-size: 22px !important; line-height: 1.3 !important; }
  h4 { font-size: 19px !important; line-height: 1.3 !important; }
  h5 { font-size: 17px !important; }
  h6 { font-size: 15px !important; }
  .section-title h2 { font-size: 26px !important; }
  .section-title h3 { font-size: 22px !important; }
  .entry-content p, .entry-content li, .entry-content label, .entry-content td, .entry-content th { font-size: 15px; line-height: 1.6; }
  .entry-content p:last-child { margin-bottom: 0; }

  /* Header: the menu button is the whole 44px square, not just its dots */
  .site-header .sigma_header-middle .container { padding-left: 15px; padding-right: 15px; }
  .site-header .sigma_header-controls .aside-toggler { width: 44px !important; height: 44px !important; padding: 6px !important; box-sizing: border-box; cursor: pointer; }
  .sigma_aside { max-width: 84vw; }
  .sigma_aside .navbar-nav a { display: block; font-size: 16px !important; padding-top: 14px; padding-bottom: 14px; }
  .sigma_aside .logo-wrap { padding: 10px 15px; }
  .sigma_aside .logo-wrap img { max-width: 170px; }

  /* Page banner: one third of a screen, not two thirds; title at a readable size */
  .sigma-subheader { min-height: 0 !important; }
  .sigma-subheader .container { padding-top: 34px !important; padding-bottom: 34px !important; }
  .sigma-subheader .page-title { font-size: 28px !important; line-height: 1.25 !important; }
  .sigma-subheader .subheader-caption { font-size: 15px !important; margin-top: 8px !important; }
  .sigma-subheader .breadcrumb-nav, .sigma-subheader .breadcrumb { margin-top: 12px !important; }
  .sigma-subheader .breadcrumb-nav li, .sigma-subheader .breadcrumb-nav a { font-size: 14px !important; min-height: 44px; display: inline-flex; align-items: center; }

  /* Sections: less dead space between blocks */
  .entry-content > .vc_row, .entry-content .vc_row.vc_row-has-fill { padding-top: 40px !important; padding-bottom: 40px !important; }
  .entry-content .vc_row.vc_row-no-padding, .entry-content .vc_row.vc_custom_1611574689812 { padding-top: 0 !important; padding-bottom: 0 !important; }
  .vc_column_container > .vc_column-inner { padding-left: 15px !important; padding-right: 15px !important; }

  /* Home page: the phone hero (a text block + photo the theme shows instead of the slider) */
  .vc_custom_1611574689812 .wpb_wrapper h2 { font-size: 28px !important; padding-top: 24px; margin-bottom: 10px; }
  .vc_custom_1611574689812 .wpb_wrapper p { font-size: 15px; margin-bottom: 8px; }
  .vc_custom_1611574689812 .vc_single_image-wrapper img { max-height: 52vh; width: auto; margin: 0 auto; display: block; }
  .vc_custom_1611574689812 .wpb_single_image { margin-bottom: 0; }
  .vc_custom_1604139991274 { padding-top: 40px !important; padding-bottom: 40px !important; }
  .vc_custom_1604139991274 .wpb_content_element { margin-bottom: 16px; }

  /* Videos: full width of the phone, 16:9 */
  .wpb_video_widget .wpb_wrapper { width: 100% !important; margin: 0 auto; }
  .wpb_video_wrapper { padding-top: 56.25% !important; }
  .wpb_video_widget { margin-bottom: 24px; }

  /* Tenant Portal: app-store badges and the pay button take the phone's width */
  .wpb_raw_html table, .wpb_raw_html table td { width: auto !important; }
  .wpb_raw_html table { margin: 0 auto; }
  .wpb_raw_html center > div[style*="width: 259px"] { width: 100% !important; max-width: 340px; }
  .vc_btn3-container .vc_btn3 { display: block; width: 100%; box-sizing: border-box; text-align: center; font-size: 16px !important; padding: 15px 18px !important; white-space: normal; }

  /* Forms: 16px text so iPhones do not zoom in, thumb-sized controls, one column, full-width buttons */
  .entry-content input:not([type=checkbox]):not([type=radio]):not([type=submit]):not([type=button]):not([type=file]),
  .entry-content select, .entry-content textarea {
    font-size: 16px !important; min-height: 48px; width: 100% !important; max-width: 100%; box-sizing: border-box; padding-left: 14px; padding-right: 14px; }
  .entry-content textarea { min-height: 110px; }
  .entry-content input[type=file] { font-size: 15px; max-width: 100%; }
  .entry-content input[type=checkbox], .entry-content input[type=radio] { width: 22px !important; height: 22px !important; min-height: 0; margin: 0 8px 0 0; vertical-align: middle; flex: 0 0 auto; }
  .wpcf7-list-item { display: flex !important; align-items: center; margin: 0 18px 0 0 !important; min-height: 40px; }
  .wpcf7-list-item label { display: flex; align-items: center; gap: 10px; min-height: 40px; margin: 0; font-size: 15px; }
  .wpcf7-list-item-label { font-size: 15px; }
  .wpcf7-form p { margin-bottom: 14px; }
  .wpcf7-form label { display: block; }
  .gform_wrapper .gfield_checkbox li, .gform_wrapper .gfield_radio li { display: flex; align-items: center; min-height: 40px; }
  .gform_wrapper .gfield_checkbox li label, .gform_wrapper .gfield_radio li label { font-size: 15px; margin: 0; }
  .gform_wrapper .gf-50, .gform_wrapper .gf_left_half, .gform_wrapper .gf_right_half, .gform_wrapper .gf_left_third, .gform_wrapper .gf_middle_third, .gform_wrapper .gf_right_third { width: 100% !important; margin-left: 0 !important; margin-right: 0 !important; }
  .entry-content input[type=submit], .entry-content input[type=button], .entry-content form button, .wpcf7-submit, .file_btn, .gform_button, .gform_next_button, .gform_previous_button, .btn-custom, .sigma_btn-custom {
    display: block; width: 100%; box-sizing: border-box; min-height: 48px; font-size: 16px !important; text-align: center; padding: 13px 18px !important; margin-top: 10px; white-space: normal; }
  .wpcf7-form-control-wrap { display: block; }
  .wpcf7-spinner { display: none; }
  .wpcf7-response-output { font-size: 15px; }

  /* Footer: links big enough to tap */
  .footer-copyright-section { text-align: center; }
  .footer-copyright-section .footer-left, .footer-copyright-section .footer-right { font-size: 15px; padding: 4px 0; }
  .footer-right a { display: inline-block; padding: 10px 6px; }
  .go-top-btn { width: 44px !important; height: 44px !important; }
}
