@media(min-width: 980px){
body{margin: 0 auto; max-width: 1920px}
body.menu_open{overflow: auto}

h1 {font-size: var(--h1)}
h2 {font-size: var(--h2)}
h3 {font-size: var(--h3)}
h4 {font-size: var(--h4)}
h5 {font-size: var(--h5)}
h6 {font-size: var(--h6)}
.d-only{display: block}
.d-sr-only{border:0; clip:rect(0, 0, 0, 0); height:1px; overflow:hidden; padding:0; position:absolute; white-space:nowrap; width:1px}
.m-sr-only{clip:auto; height:auto; overflow:visible; position:static; white-space:normal; width:auto}
.container{margin: 0 auto; max-width: 1280px}
.d-tbl{border-collapse: collapse; border-style: hidden; display: table; table-layout: fixed; width: 100%}
.d-tbl.rev{direction: rtl}
.d-tbl_row{display: table-row}
.d-tbl_cell{border: 4rem solid transparent; direction: ltr; display: table-cell; vertical-align: top}
ol.cols, ul.cols {column-count: 2; column-gap: 1rem}
/* ul {padding-left: 1rem} */

/* form */
.theme-form .fieldset {border-collapse: collapse; border-style: hidden; display: table; margin: 1rem auto; table-layout: fixed; text-align: left; width: 100%}
.theme-form.proposal-form .fieldset {width: auto}
.theme-form .fieldset .field {border: 1rem solid transparent; display: table-cell; vertical-align: middle}

/* header */
#header {margin: 1rem 0 2rem;}
#top_menu, #top_search {vertical-align: middle}
#top_menu {text-align: center}
#top_links {border-radius: 100rem; display: inline-block; list-style: none; padding: 0 1rem; text-align: center}
#top_links li {display: inline-block; margin: 0.5rem 1rem}
#top_links a {color: var(--headers); text-decoration: none}
#top_search {text-align: right}
#top_search_wrap {display: inline-block; position: relative}
#top_search_search {background-color: var(--ui-bg); border: 2px solid var(--ui-border); border-radius: 100rem; padding: 0.5rem 2rem 0.5rem 1rem; text-align: left}
#top_search_search::placeholder {color: var(--body)}
#top_search_submit {background-color: transparent; border: none; cursor: pointer; height: 100%; overflow: hidden; padding: 0; position: absolute; right: 0; top: 0; width: 2rem}

/* menu */
#main_menu_overlay, body.menu_open #main_menu_overlay {background-color: transparent; position: relative; z-index:10}
#main_menu_inner, body.js #main_menu_inner {clip:auto; height:auto; overflow:visible; position:static; white-space:normal; width:auto}
#main_menu_open, body.js #main_menu_open, #main_menu_close, body.js #main_menu_close {display: none}
#main_menu {background-color: var(--bg-body); border: 2px solid var(--ui-border); border-radius: 100rem; display: table; margin: 1rem auto; padding: 0 1rem; text-align: left}
#main_menu .menu > li.menu-item {display: table-cell; padding: 0.5rem 1rem; position: relative; vertical-align: bottom}
#main_menu .menu > li.menu-item > a {padding: 0}
#main_menu .menu > li > .sub-menu {background-color: var(--bg-body); border: 2px solid var(--ui-border); right: 0%; padding: 0; position: absolute; top: 100%; width: 220px !important;}
#main_menu .menu > li:hover > .sub-menu.sr-only, #main_menu li:focus-within > .sub-menu {clip:auto; height:auto; overflow:visible; position: absolute; white-space:normal; width:auto}
#main_menu li li:focus-within > .sub-menu {position: static}
body.js #main_menu .menu > li > .sub-menu {display: none}
#main_menu .menu > li.menu-item.menu-item-has-children > a::after {content: '\25be'; margin-left: 5px;}
#main_menu .menu > li.menu-item.menu-item-has-children > a .submenu_toggle {display: none}

/* footer */
#footer {text-align: left}
#footer_cols {table-layout: auto}
.footer_col {border-width: 2rem}
.footer_col h2 {font-size: var(--h4)}
#footer_logo {display: block; width: 240px}
#footer_logo_logo {display: block}
#footer .social_links {justify-content: center; width:240px}
#subFooter p {display: inline-block; margin: 1rem}

/* hero */
#hero.wide_right .container {margin: 0 0 0 1rem; max-width: none; padding: 0 0 0 calc((50% - 640px - 1rem))}
#hero_img {margin-top: 2rem; position: relative}
#hero_img .img {border-radius: 5rem 0 5rem 0; padding-bottom: 0; height: 24rem}
#hero_img .buttonholder {bottom: 2rem; left: 0; position: absolute; right: 0}
#hero_wrap {height: 1px}
#hero_wrap #hero_img {height: 100%; margin: 0; width: 65%}
#hero_wrap #hero_img .img {border-radius: 100rem 0 0 100rem; height: 100%; min-height: 20rem}
body.home #hero_wrap #hero_img  {width: 55%}
body.home #hero_wrap #hero_img .img {min-height: 28rem}
body.home #hero_copy {vertical-align: middle}
body.home #hero_img {overflow-x: clip; padding: 0}
body.home #hero_img::before {background-position: bottom left; background-size: auto; bottom: -6rem; height: 200rem; left: 10rem; right: -10rem; top: auto}

/* sections */
.sub_section.width_narrow .container {max-width: 60%; padding: 0}

/*cta*/
.sub_section_cta .heading, .section.altcol .sub_section_cta .heading {padding-left: calc(50% - 640px - 1rem)}
.sub_section_cta .heading::before {content: ''; display: inline-block; width: 1rem}
.sub_section_cta .copy {font-size: var(--h6); margin-bottom: 2rem; width: 50%}

/*cta: image grid*/
.cta_imggrid .copyholder {vertical-align: middle}
.cta_imggrid .content:first-child, .cta_imggrid .content:first-child > :first-child {margin-top: 0}
.cta_imggrid .content:last-child, .cta_imggrid .content:last-child > :last-child {margin-bottom: 0}

/*form*/
.sub_section_form:not(:has(.copyholder)) .container {max-width: 740px}

/*image carousel*/
.sub_section_imagecarousel .container {max-width: 720px}

/*quick links*/
.sub_section_quicklinks .heading {text-align: center}
.quick_links {margin: 1rem auto; width: auto}
.quick_link:has(.copy) {box-sizing: border-box; flex-basis: calc(50% - 1.5rem)}

/*list*/
.list_tbl {margin: 2rem 0}
.list_item {border-width: 2rem 4rem; padding: 0 0 0 2rem; position: relative}
.list_item::before {background-color: var(--buttons); border-radius: 1rem; content: ''; display: block; height: 100%; left: 0; position: absolute; top: 0; width: 1rem}

/*posts*/
.viewall_wrap h2, .viewall_wrap .viewall {border: 2rem solid transparent; display: table-cell}
.viewall_wrap h2 {margin: 0}
.viewall_wrap .viewall {text-align: right}
.featuredposts {margin: 2rem auto; table-layout: auto; width: auto}
.featuredpost {border-width: 4rem; padding-bottom: 4rem; position: relative; width: 440px}
.featuredpost .buttonholder {bottom: 0; left: 0; margin: 0; position: absolute; right: 0}

/*staff*/
.featured_staff_group {display: flex; flex-wrap: wrap; gap:2rem}
.featured_staff {flex-basis: calc(100% / 4 - 5rem / 3); margin: 0}

/*tabs*/
.tabsnav ul:before {bottom: 0; height: 1rem; left: 0; position: absolute; top:auto; width: 100%}
.tabsnav li:has(.active):before {bottom: -2rem; height: 1rem; left: 0; position: absolute; top:auto; width: 100%}
.tabsnav ul {display: table; margin: 0 auto; padding: 0 0 2rem 0; width: auto}
.tabsnav li {display: table-cell; font-size: 1.5rem; padding: 0 1rem; vertical-align: bottom}

/*two column left heading*/
/*.twocol_lefthead {margin: 4rem 0}*/
.twocol_lefthead {margin: 2rem 0}
.twocol_lefthead > .d-tbl_cell >:first-child {margin-top: 0}
/*.twocol_lefthead > .lefthead {width: 25%}*/
.twocol_lefthead .copy h3 {font-size: var(--h5)}
.twocol_lefthead .copy h4, .twocol_lefthead .copy h5, .twocol_lefthead .copy h6 {font-size: var(--h6)}
.twocol_lefthead .copy > :first-child, .twocol_lefthead .copy > ol > li:first-child, .twocol_lefthead .copy > ul > li:first-child {margin-top: 0}

/* sidebaars */
.sidebar_wrap {margin: 0 auto; max-width: calc(1280px + 2rem)}
.sidebar_copy > :first-child, .sidebar_copy > .section:first-child .container > :first-child, .sidebar_sidebars .sidebar:first-child  {margin-top: 0}
.sidebar_sidebars {width: 20rem}

/* post-types */
.hero_info {display: flex; gap: 3rem}
.hero_info_col {margin: 0}
.hero_info_phone {margin: 1rem 0}
.hero_info_phone h3, .hero_info_phone p {margin: 0}

/*location*/
.location_hero #hero_wrap #hero_img {width: 50%}
.location_hero #hero_wrap #hero_img .img {min-height: 20rem}
.hours {display: flex; flex-wrap: wrap; gap: 4rem}
.hours_cat {flex-basis: calc(33.33% - 2.67rem)}
.sidebar_wrap:has(.sidebar_sidebars) .hours_cat {flex-basis: calc(50% - 2rem)}
.hours_cat > :first-child {margin-top: 0}

/*staff*/
.staff_hero #hero_wrap #hero_img {width: 20rem}
.staff_hero #hero_wrap #hero_img .img {border-radius: 5rem 0; height: 20rem}
.staff_locations {flex-grow: 1}
.staff_rating .stars, .staff_rating_desc {display: inline-block; vertical-align: middle}
.staff_rating .stars {margin-right: 1rem}
.staff_review {padding: 1rem 0 1rem 2rem; position: relative}
.staff_review::before {height: 100%; left: 0; margin: 0; position: absolute; top: 0; width: 1rem}
.staff_rating_comment {margin: 1rem 0 0 0}

/*testimonials*/
.testimonials {border-collapse: separate; border-spacing: 2rem; margin: -2rem auto; /*min-height: 35rem;*/ width: auto}
.testimonials.fullwidth {margin: -2rem; width: calc(100% + 4rem)}
.testimonial {box-sizing: border-box; border-width: 0; width: calc(1280px / 4 - 4rem / 4)}

/*video 2-col*/
.sub_section_twocol_video .copyholder {vertical-align: middle}

/* aggregators */
/*providers*/
#provider_filter {width: 20%}
#provider_list .provider {padding: 1px 0 1px 2rem; position: relative}
#provider_list .provider:first-child {margin-top: 0}
#provider_list .provider::before {height: 100%; left: 0; position: absolute; top: 0; width: 1rem}
#provider_list .provider h2 {font-size: var(--h3)}
#provider_list .provider h3 {font-size: var(--h5)}
#provider_list .provider_name_tbl, .provider_info_tbl d-tbl {margin: 1rem 0}
#provider_list .provider_img {width: 20%}
#provider_list .provider_name {vertical-align: middle}
#provider_list .provider_info_tbl {width: calc(100% / 3)}
#provider_list .provider_info_tbl:has(> :nth-child(2)) {width: calc((100% / 3) * 2)}
#provider_list .provider_info_tbl:has(> :nth-child(3)) {width: 100%}
#provider_pagination {font-size: 1.125rem}
#provider_pagination a, #provider_pagination span {padding: 0}

/*services*/
.service_links, body.js .service_links {clip:auto; font-size: var(--h6); height:auto; overflow:visible; position:static; text-align: center; white-space:normal; width:auto}
.service_letter {display: inline-block; margin: 0.25rem 0.5rem}
a.service_letter {color: inherit; font-weight: bold; text-decoration: none}
span.service_letter {opacity: 0.5}
body.js .sevices_sel {display: none}

/* Blog */
.post .imgholder {width: 20%}
.post .imgholder .post_img {padding-bottom: 100%; border-radius: 2rem}
.post .copyholder {vertical-align: middle}
.single-post h1 {font-size: 32px;}

}