/* Accessibility fixes — burbankorthodontist.info, 2026-10-09 (a11y rollout, SOP Step 5/5a).
   Loaded after the page's own Divi CSS. Each rule is scoped to the element that failed. */

/* Skip link (visible on keyboard focus only) */
.a11y-skip{position:absolute;left:-9999px;top:0;z-index:100000;background:#0b5a82;color:#fff;padding:10px 16px;font:600 16px/1.2 Verdana,Helvetica,Arial,sans-serif;text-decoration:underline}
.a11y-skip:focus{left:8px;top:8px;outline:3px solid #fff;outline-offset:2px}
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
main#main-content{display:block}
main#main-content:focus{outline:none}

/* Footer practice name: was an <h1>, now <h2 class="ft-name">; look pinned to the old h1 */
.et_pb_text_0_tb_footer h2.ft-name{font-family:'Verdana',Helvetica,Arial,Lucida,sans-serif;font-size:30px;font-weight:500;line-height:30px;padding:0 0 10px;margin:0;color:#333}

/* Contrast: blue header menu bar and blue footer band. #1696d3 + white text = 3.31:1 -> #127cae = 4.65:1 */
#page-container .et_pb_section_2_tb_header.et_pb_section{background-color:#127cae!important}
#page-container .et_pb_section_0_tb_footer.et_pb_section{background-color:#127cae!important}
body.home #page-container .et_pb_section_4.et_pb_section{background-color:#127cae!important}
/* Contrast: "Copyright" and legal-row separators #666 on black = 3.65:1 -> #777 = 4.69:1 */
#page-container .et_pb_text_1_tb_footer.et_pb_text,#page-container .et_pb_text_2_tb_footer.et_pb_text,#page-container .et_pb_text_1_tb_footer .et_pb_text_inner,#page-container .et_pb_text_2_tb_footer .et_pb_text_inner{color:#777!important}
/* Contrast: Divi default link colour #2ea3f2 on white = 2.74:1 -> #0c79c2 = 4.64:1 (same rule, same specificity) */
a{color:#0c79c2}
/* Links inside body text must not rely on colour alone (link-in-text-block) */
#main-content .et_pb_text_inner p a:not(.et_pb_button),#main-content .et_pb_text_inner li a:not(.et_pb_button),#main-content .et_pb_text_inner h5 a{text-decoration:underline;text-underline-offset:2px}
/* Contrast: braces gallery case labels #1696d3 on #e8f4fb = 2.96:1 -> #1174a3 = 4.63:1 */
.bx-num{color:#1174a3!important}
/* Contrast: homepage button #3ca3ce + white = 2.86:1 -> #287ca0 = 4.69:1 */
body #page-container .et_pb_section .et_pb_button_6{background-color:#287ca0!important}
/* Contrast: team names/roles #5caae1 / #5c9ed4 on white (2.5-2.9:1) -> #227ab8 (4.62:1) / #2f78b4 (4.7:1) */
#page-container .et_pb_team_member .et_pb_module_header,#page-container .et_pb_team_member .et_pb_member_position{color:#227ab8!important}
body.page-id-122 .et_pb_text_0 h2,body.page-id-122 .et_pb_text_0 h3{color:#2f78b4!important}

/* Visible keyboard focus (site navy) */
a:focus-visible,button:focus-visible,[role="button"]:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #0b5a82!important;outline-offset:2px}
#menu-header a:focus-visible,.et_pb_section_0_tb_footer a:focus-visible{outline-color:#fff!important}
/* Desktop dropdowns open for keyboard users too */
.et-menu li:focus-within > .sub-menu{visibility:visible!important;opacity:1!important;display:block}
/* Mobile menu toggle is keyboard-operable (see BaseLayout script) */
.mobile_nav[role="button"]:focus-visible{outline:3px solid #0b5a82;outline-offset:2px}

/* Target size: gallery pager dots >= 24x24 hit area, same 7px dot look */
.et_pb_gallery .et-pb-controllers a{box-sizing:content-box;padding:9px;background-clip:content-box;margin:0 1px}

/* Target size: legal/statement contents links get a 24px-tall hit area */
.lg-toc li a{display:inline-block;min-height:24px;padding:2px 0}

/* Divi icon-font glyphs are CSS content letters ("3", "4", "5", "I"); screen readers read them
   ("Doctor 3", "View Entire Smile Gallery 5"). Same glyph, empty alternative text. */
.et-menu .menu-item-has-children>a:first-child::after{content:"3" / ""}
.et-pb-arrow-prev::before{content:"4" / ""}
.et-pb-arrow-next::before{content:"5" / ""}
.et_pb_video_play::before{content:"I" / ""}
#page-container .et_pb_button:not(.et_pb_custom_button_icon)::after,#page-container .et_pb_button:not(.et_pb_custom_button_icon)::before{content:"\35" / ""}
#page-container .et_pb_custom_button_icon.et_pb_button::after{content:attr(data-icon) / ""}

/* Contrast: dropdown items #666 on #e1e1e1 = 4.39:1 and fade to 70% on hover -> #4d4d4d (6.4:1), no fade, underline on hover */
#page-container .et_pb_menu_0_tb_header.et_pb_menu .nav li ul.sub-menu a{color:#4d4d4d!important}
#page-container .et_pb_menu_0_tb_header .nav li ul.sub-menu a:hover{opacity:1!important;text-decoration:underline}

/* Reflow (1.4.10): the header logo module is a fixed 350px, wider than a 320px screen */
.et_pb_image_0_tb_header{max-width:100%!important}
