/* nav-core.css — header/navigation slice of the site stylesheet.
 *
 * Why this file exists (issue #227): the desktop mega-menu's collapsed state is
 * governed by rules that live only in the full 353 KB live-bundle.css. When that
 * sheet is late or absent — which is exactly what the critical-CSS split (#228)
 * produces — the nav renders fully expanded with default bullets and covers the
 * page. Loading this small, header-only slice synchronously makes the nav
 * self-sufficient: it renders correctly regardless of when the main sheet arrives.
 *
 * Generated from public/assets/css/live-bundle.css by scripts/build-nav-css.mjs.
 * Do not hand-edit: re-run the generator after any header/CSS change.
 *
 * Scope: page base typography/box model, the nav's collapsed/open state, the
 * desktop horizontal bar, the mobile hamburger bar, and the dropdown panel.
 */
html{font-family:sans-serif;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}
html{font-size:10px;-webkit-tap-highlight-color:rgba(0,0,0,0)}
html{overflow-x:hidden;overflow-y:auto}
html,body{min-height:100%}
body{margin:0}
body{font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:14px;line-height:1.42857143;color:#333;background-color:#fff}
*{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}
body{color:#666;background-color:#fff;font-family:Open Sans,Arial;font-size:14px;line-height:23px;margin:0;padding:0}
header,nav{display: block;}
a{background: transparent;}
a:active,a:hover{outline: 0px;}
img{border: 0px;}
button{color: inherit; font: inherit; margin: 0px;}
button{overflow: visible;}
button{text-transform: none;}
button{appearance: button; cursor: pointer;}
@media print{*{text-shadow: none !important; color: rgb(0, 0, 0) !important; background: transparent !important; box-shadow: none !important;}}
@media print{a,a:visited{text-decoration: underline;}}
@media print{a[href]::after{content: " (" attr(href) ")";}}
@media print{a[href^="#"]::after{content: "";}}
@media print{img{break-inside: avoid;}}
@media print{img{max-width: 100% !important;}}
@media print{h2{orphans: 3; widows: 3;}}
@media print{h2{break-after: avoid;}}
*{box-sizing: border-box;}
button{font-family: inherit; font-size: inherit; line-height: inherit;}
a{color: rgb(66, 139, 202); text-decoration: none;}
a:hover,a:focus{color: rgb(42, 100, 150); text-decoration: underline;}
a:focus{outline: -webkit-focus-ring-color auto 5px; outline-offset: -2px;}
img{vertical-align: middle;}
h2{font-family: inherit; font-weight: 500; line-height: 1.1; color: inherit;}
h2{margin-top: 20px; margin-bottom: 10px;}
h2{font-size: 30px;}
ul{margin-top: 0px; margin-bottom: 10px;}
ul ul{margin-bottom: 0px;}
.container{margin-right: auto; margin-left: auto; padding-left: 15px; padding-right: 15px;}
@media (min-width: 768px){.container{width: 750px;}}
@media (min-width: 992px){.container{width: 970px;}}
@media (min-width: 1200px){.container{width: 1170px;}}
.btn{display: inline-block; margin-bottom: 0px; font-weight: normal; text-align: center; vertical-align: middle; cursor: pointer; background-image: none; border: 1px solid transparent; white-space: nowrap; padding: 6px 12px; font-size: 14px; line-height: 1.42857; border-radius: 4px; user-select: none;}
.btn:focus,.btn:active:focus,.btn.active:focus{outline: -webkit-focus-ring-color auto 5px; outline-offset: -2px;}
.btn:hover,.btn:focus{color: rgb(51, 51, 51); text-decoration: none;}
.btn:active,.btn.active{outline: 0px; background-image: none; box-shadow: rgba(0, 0, 0, 0.125) 0px 3px 5px inset;}
.btn-primary{color: rgb(255, 255, 255); background-color: rgb(66, 139, 202); border-color: rgb(53, 126, 189);}
.btn-primary:hover,.btn-primary:focus,.btn-primary:active,.btn-primary.active{color: rgb(255, 255, 255); background-color: rgb(48, 113, 169); border-color: rgb(40, 94, 142);}
.btn-primary:active,.btn-primary.active{background-image: none;}
.btn-lg{padding: 10px 16px; font-size: 18px; line-height: 1.33; border-radius: 6px;}
.collapse{display: none;}
.collapse.in{display: block;}
.caret{display: inline-block; width: 0px; height: 0px; margin-left: 2px; vertical-align: middle; border-top: 4px solid; border-right: 4px solid transparent; border-left: 4px solid transparent;}
.dropdown{position: relative;}
.dropdown-toggle:focus{outline: 0px;}
.dropdown-menu{position: absolute; top: 100%; left: 0px; z-index: 1000; display: none; float: left; min-width: 160px; padding: 5px 0px; margin: 2px 0px 0px; list-style: none; font-size: 14px; text-align: left; background-color: rgb(255, 255, 255); border: 1px solid rgba(0, 0, 0, 0.15); border-radius: 4px; box-shadow: rgba(0, 0, 0, 0.176) 0px 6px 12px; background-clip: padding-box;}
.dropdown-menu .divider{height: 1px; margin: 9px 0px; overflow: hidden; background-color: rgb(229, 229, 229);}
.dropdown-menu > li > a{display: block; padding: 3px 20px; clear: both; font-weight: normal; line-height: 1.42857; color: rgb(51, 51, 51); white-space: nowrap;}
.dropdown-menu > li > a:hover,.dropdown-menu > li > a:focus{text-decoration: none; color: rgb(38, 38, 38); background-color: rgb(245, 245, 245);}
.nav{margin-bottom: 0px; padding-left: 0px; list-style: none;}
.nav > li{position: relative; display: block;}
.nav > li > a{position: relative; display: block; padding: 10px 15px;}
.nav > li > a:hover,.nav > li > a:focus{text-decoration: none; background-color: rgb(238, 238, 238);}
.nav-pills > li{float: left;}
.nav-pills > li > a{border-radius: 4px;}
.nav-pills > li + li{margin-left: 2px;}
.nav-pills > li.active > a,.nav-pills > li.active > a:hover,.nav-pills > li.active > a:focus{color: rgb(255, 255, 255); background-color: rgb(66, 139, 202);}
.navbar-collapse{overflow-x: visible; padding-right: 15px; padding-left: 15px; border-top: 1px solid transparent; box-shadow: rgba(255, 255, 255, 0.1) 0px 1px 0px inset;}
.navbar-collapse.in{overflow-y: auto;}
@media (min-width: 768px){.navbar-collapse{width: auto; border-top: 0px; box-shadow: none;}}
@media (min-width: 768px){.navbar-collapse.collapse{padding-bottom: 0px; display: block !important; height: auto !important; overflow: visible !important;}}
@media (min-width: 768px){.navbar-collapse.in{overflow-y: visible;}}
.container > .navbar-collapse{margin-right: -15px; margin-left: -15px;}
@media (min-width: 768px){.container > .navbar-collapse{margin-right: 0px; margin-left: 0px;}}
.container::before,.container::after,.nav::before,.nav::after,.navbar-collapse::before,.navbar-collapse::after{content: " "; display: table;}
.container::after,.nav::after,.navbar-collapse::after{clear: both;}
.pull-right{float: right !important;}
button{background: none; border: 0px; margin: 0px; padding: 0px; cursor: pointer;}
img{border: 0px; vertical-align: top;}
button{outline: none !important;}
img{vertical-align: middle;}
a,a:focus,a:hover,a:active{outline: 0px; cursor: pointer;}
.fsize13{font-size: 13px !important; line-height: 17px !important;}
.margin-top10{margin-top: 10px;}
.container{position: relative;}
i.fa{text-decoration: none !important;}
.btn i.fa{padding-right: 10px;}
.nav-pills > li a,.dropdown-menu{border-radius: 0px;}
h2{margin: 0px; color: rgb(0, 0, 0); font-family: "Open Sans"; font-weight: 300; letter-spacing: -1px;}
h2{font-size: 2.2em; line-height: 42px; margin: 0px 0px 32px;}
.btn,.btn:hover{padding: 8px 18px; margin-bottom: 3px; border: 1px solid rgba(255, 255, 255, 0); transition: 0.2s;}
.btn:active,.btn:focus,.btn.active{box-shadow: none;}
.btn-lg,.btn-lg:hover{padding: 12px 32px;}
.btn-lg{padding: 10px 16px !important;}
.btn-lg{padding: 10px 16px !important;}
.divider{border-width: 1px 0px; border-style: solid none; border-color: rgb(221, 221, 221) currentcolor; border-image: none; margin: 60px 0px; height: 4px; text-align: center; position: relative; clear: both;}
li.divider{margin: 6px;}
@media print{#topBar,#topNav,#header{display: none !important;}}
@media print{body *{visibility: hidden; margin: 0px; padding: 0px;}}
@media print{#topNav,.btn{display: none;}}
.fa{display: inline-block; font-family: FontAwesome; font-style: normal; font-weight: normal; line-height: 1; -webkit-font-smoothing: antialiased;}
.pull-right{float: right;}
.fa-bars::before{content: "";}
#header.sticky{display: block; left: 0px; right: 0px; z-index: 100;}
#header.sticky.affix #topBar{display: none;}
#header.sticky.affix.has-slider{top: 0px; margin-top: 0px !important;}
#topBar{display: block; position: relative; background-color: rgb(255, 255, 255); min-height: 30px; z-index: 10;}
#topBar a.logo{margin: 15px 0px; display: inline-block; min-height: 50px;}
#topNav{display: block; left: 0px; right: 0px; top: 0px; border-top: 1px solid rgb(238, 238, 238); border-bottom: 1px solid rgb(238, 238, 238); background: rgb(255, 255, 255); position: relative; z-index: 10; box-shadow: rgba(0, 0, 0, 0.04) 0px 4px 0px;}
#topNav .nav-pills > li > a,#topNav .nav-pills > li > a:hover,#topNav .nav-pills > li > a:focus,#topNav .nav-pills > li.active > a,#topNav .nav-pills > li.active > a:hover,#topNav .nav-pills > li.active > a:focus{background-color: transparent;}
#topNav div.navbar-collapse{padding: 0px;}
#topNav ul.nav > li{color: rgb(102, 102, 102); border-left: 1px solid rgb(238, 238, 238); text-align: center; position: relative; margin: 0px;}
#topNav ul.nav > li:last-child{border-right: 1px solid rgb(238, 238, 238);}
#topNav ul.nav > li:hover > a::before,#topNav ul.nav > li.active > a::before{content: " "; background-color: rgb(169, 69, 69); height: 2px; width: 100%; left: 0px; top: -3px; position: absolute;}
#topNav ul.nav > li a{color: rgb(102, 102, 102); padding: 15px 35px; position: relative; text-decoration: none; font-size: 14px; line-height: 14px; display: block; font-weight: 300; transition: 0.2s;}
#topNav ul.nav > li > a > span{display: block; font-size: 12px; color: rgb(204, 204, 204); transition: 0.2s;}
#topNav ul.nav > li:hover a{color: rgb(51, 51, 51);}
#topNav ul.nav > li:hover a > span{color: rgb(136, 136, 136);}
#topNav ul.dropdown-menu li.divider{margin: -1px 0px 0px; padding: 0px; border-width: 0px 0px 1px; border-style: none none solid; border-color: currentcolor currentcolor rgba(0, 0, 0, 0.2); border-image: none;}
#topNav .nav li:hover > ul.dropdown-menu{padding: 0px; display: block; z-index: 100;}
#topNav ul.dropdown-menu{text-align: left; margin-top: 0px; border-width: 0px 1px 1px; border-style: none solid solid; border-color: currentcolor rgb(238, 238, 238) rgb(238, 238, 238); border-image: none; list-style: none; background-color: rgb(255, 255, 255); box-shadow: rgba(0, 0, 0, 0.2) 0px 6px 12px; min-width: 200px; border-radius: 0px;}
#topNav ul.dropdown-menu li{position: relative;}
#topNav ul.dropdown-menu > li a{margin: 0px; padding: 10px 15px; font-weight: 400; color: rgb(85, 85, 85); font-size: 13px; border-bottom: 1px solid rgba(0, 0, 0, 0.1);}
#topNav ul.dropdown-menu li:last-child > a{border-bottom: 0px;}
.dropdown-menu > li:hover > a,.dropdown-menu > li:focus > a{color: rgb(255, 255, 255) !important; background-color: rgb(51, 51, 51);}
#topNav button.btn-mobile{display: none;}
#topNav button.btn-mobile{color: rgb(255, 255, 255); display: none; background: rgb(51, 51, 51); padding: 6px 10px; margin-top: 6px; margin-bottom: 3px; border-radius: 0px;}
#topNav button.btn-mobile i{padding: 0px; margin: 0px; font-size: 21px;}
@media only screen and (max-width: 990px){.navbar-collapse{max-height: 100%;}}
@media only screen and (max-width: 990px){#topNav .container{padding: 0px; margin: 0px;}}
@media only screen and (max-width: 990px){#topNav button.btn-mobile{display: block; float: right; margin-right: 15px;}}
@media only screen and (max-width: 990px){#topNav nav.nav-main{background-color: rgb(255, 255, 255);}}
@media only screen and (max-width: 990px){#topNav div.nav-main-collapse,#topNav div.nav-main-collapse.in{width: 100%; margin: 56px 0px 0px;}}
@media only screen and (max-width: 990px){#topNav div.nav-main-collapse{float: none; overflow-x: hidden;}}
@media only screen and (max-width: 990px){#topNav div.nav-main-collapse.collapse{display: none !important;}}
@media only screen and (max-width: 990px){#topNav div.nav-main-collapse.in{display: block !important;}}
@media only screen and (max-width: 990px){#topNav div.nav-main-collapse{position: relative;}}
@media only screen and (max-width: 990px){#topMain > li > a > span{display: none !important;}}
@media only screen and (max-width: 990px){#topMain li{float: none; text-align: left; border-radius: 0px; display: block !important;}}
@media only screen and (max-width: 990px){#topMain > li > a{text-align: left; border-width: 0px 0px 1px; border-style: none none solid; border-color: currentcolor currentcolor rgba(0, 0, 0, 0.1); border-image: none; border-radius: 0px;}}
@media only screen and (max-width: 990px){#topMain > li:hover,#topMain > li:hover > a{border-top: 0px !important;}}
@media only screen and (max-width: 990px){#topNav ul.nav > li > a::after{content: ""; font-family: FontAwesome; position: absolute; font-size: 14px; right: 20px; top: 15px; color: rgb(153, 153, 153);}}
@media only screen and (max-width: 990px){#topMain ul.dropdown-menu{position: static; clear: both; float: none; box-shadow: none; display: none !important; border-left: 0px !important;}}
@media only screen and (max-width: 990px){#topNav nav.nav-main li.resp-active > ul.dropdown-menu{margin-left: 30px; margin-right: 30px; padding: 20px 0px; border-right: 0px; display: block !important;}}
@media only screen and (max-width: 990px){#topNav nav.nav-main li.resp-active > ul.dropdown-menu li{border-left: 0px;}}
@media only screen and (max-width: 990px){#topNav ul.nav > li:hover > a::before,#topNav ul.nav > li.active > a::before{background-color: transparent;}}
@media only screen and (max-width: 479px){#topNav button.btn-mobile{margin-right: 4px;}}
@media only screen and (max-width: 479px){#topBar a.logo{display: block; text-align: center; margin: 6px 0px; float: none;}}
@media only screen and (max-width: 479px){.hide_mobile{display: none;}}
@media only screen and (max-width: 1216px){.container{width: 100%;}}
a{color: rgb(245, 33, 81);}
a,a:hover,a:active,#topNav ul.nav li li a:hover{color: rgb(249, 72, 52);}
#topNav ul.nav > li:hover > a::before,#topNav ul.nav > li.active > a::before{background-color: rgb(249, 72, 52);}
#topNav ul.nav .dropdown-menu > li.active > a,#topNav ul.nav .dropdown-menu > li:hover > a,#topNav ul.nav .dropdown-menu > li:focus > a{color: rgb(255, 255, 255) !important; background-color: rgb(249, 72, 52);}
.btn-primary{border-color: rgb(249, 72, 52); background-color: rgb(249, 72, 52);}
.btn-primary:hover,.btn-primary:focus,.btn-primary:active,.btn-primary.active,.btn-primary:hover,.btn-primary:active,.btn-primary:focus{border-color: rgb(249, 72, 52); background-color: rgb(249, 72, 52);}
#topNav ul.nav > li:hover::before,#topNav ul.nav > li.active::before{background-color: rgb(249, 72, 52);}
.mobile-only-container{display: none;}
@media only screen and (max-width: 1024px){h2{font-size: 1.8em; margin: 0px 0px 20px;}}
@media only screen and (max-width: 1024px){#topBar{display: none;}}
@media only screen and (max-width: 1024px){a.logo.mobile{display: block; width: 122px; height: 77px; margin: 5px 5px 5px 10px;}}
@media only screen and (max-width: 1024px){.mobile-phone-container{display: flex; flex: 2 1 0%; align-items: flex-end; margin: 2px 5px 0px 0px; flex-direction: column;}}
@media only screen and (max-width: 1024px){.mobile-only-container{display: flex;}}
@media only screen and (max-width: 1024px){#topNav button.btn-mobile{height: 40px;}}
#topNav ul.nav > li a{padding: 15px 25px;}
@media only screen and (max-width: 990px){#topNav div.nav-main-collapse,#topNav div.nav-main-collapse.in{margin: 0px;}}
.make-appt-button{margin: 0px 0px 0px 5px;}
.header-icon-container{display: flex; align-items: center; justify-content: flex-end;}
