/* Responsive structure over the original theme; original photos and section order retained. */
#main > .limit-wrapper {max-width:1440px!important;padding:56px 32px!important;box-sizing:border-box}
#main .page-wrapper {display:grid!important;grid-template-columns:220px minmax(0,1fr);gap:48px;align-items:start}
#main .page-wrapper:before,#main .page-wrapper:after {display:none!important}
#main article.left-only,#main aside.left {float:none!important;width:auto!important;min-width:0;margin:0!important;padding:0!important}
#main article.left-only {border:0!important}
#main aside .widget {margin:0 0 28px!important}
#main aside .widgettitle {margin:0!important;padding:0!important}
.directory-toggle {display:flex!important;align-items:center;justify-content:space-between;width:100%;padding:14px 0!important;border:0!important;border-bottom:1px solid #e9ccbb!important;background:transparent!important;color:#2c396b!important;text-align:left;font:500 25px/1.2 'EB Garamond',serif!important;border-radius:0!important}
.directory-toggle:after {content:'−';font:20px/1 sans-serif;margin-left:12px}
.directory-toggle[aria-expanded=false]:after {content:'+'}
#main aside [hidden] {display:none!important}
#main aside ul.menu {padding:10px 0!important;margin:0!important}
#main aside ul.menu a {display:block;padding:10px 0!important;line-height:1.45!important;font-size:14px!important}
a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible {outline:3px solid #586bb4!important;outline-offset:4px}
#main .fl-row-content {max-width:100%!important;min-width:0}
#main .fl-builder-content-14013 > .fl-row > .fl-row-content-wrap {padding:28px 0!important}
#main .fl-node-5a008e0fc55fe > .fl-row-content-wrap {padding-top:0!important}
#main .fl-node-5a008e0fce6e8 {width:100%!important}
#main .fl-node-5a008e0fce6a2,#main .fl-node-5a008e0fce72e,#main .fl-node-jt87ep6layx2 {display:none!important}
#main .fl-node-5a008e0fce6e8 .fl-module-content {margin:12px 0!important}
#main .fl-node-6dv0r3floh4b {display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:28px;margin-top:32px}
#main .fl-node-6dv0r3floh4b:before,#main .fl-node-6dv0r3floh4b:after {display:none}
#main .fl-node-6dv0r3floh4b .fl-col {width:100%!important}
#main .fl-node-6dv0r3floh4b .fl-module-content {margin:0!important}
#main .fl-map iframe {height:400px!important;border-radius:8px}
#main .specialist-grid {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px 24px;padding:24px 0}
#main .specialist-grid .team-member {width:100%;margin:0;min-width:0}
#main .specialist-grid .thumbnail {height:auto!important;margin:0!important}
#main .specialist-grid .vamtam-responsive-wrapper {height:auto!important;padding:0!important;aspect-ratio:2/3;background:#f6f3f0}
#main .specialist-grid img {position:static!important;width:100%!important;height:100%!important;object-fit:contain}
#main .specialist-grid .team-member-info {padding:20px 0!important}
#main .specialist-grid h3 {margin:4px 0 12px!important;font-size:30px}
#main .specialist-grid h5 {font-size:12px!important;letter-spacing:1px}
#main .specialist-grid ul {padding-left:18px;margin:0;font-size:14px;line-height:1.7;text-align:left}
#main .service-prices {width:100%!important;border-collapse:collapse;table-layout:fixed}
#main .service-prices th,#main .service-prices td {padding:16px 10px!important;border-bottom:1px solid #e9ccbb;vertical-align:middle;text-align:left;line-height:1.5}
#main .service-prices th {width:30%;font-weight:500;color:#2c396b}
#main .service-prices span {font-size:14px!important}
#main .service-prices th span {font-size:16px!important}
#main .service-prices tr:nth-child(odd) {background:#faf7f4}
#main .fl-accordion-content {padding:0!important}
#main .local-original-form input,#main .local-original-form textarea {box-sizing:border-box;width:100%;min-height:48px;font-size:16px}
@media(max-width:1100px){
 #main .page-wrapper {grid-template-columns:200px minmax(0,1fr);gap:28px}
 #main .specialist-grid {grid-template-columns:repeat(2,minmax(0,1fr))}
 #main .service-prices span {font-size:12px!important}
}
@media(max-width:1199px){
 #main > .limit-wrapper {padding:28px 20px!important}
 #main .page-wrapper {display:flex!important;flex-direction:column;gap:32px}
 #main aside.left,#main article.left-only {width:100%!important}
 #main aside.left {display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
 #main aside .widget {margin:0!important}
 #main aside .widget:not(.widget_nav_menu) {display:none!important}
 .directory-toggle {font-size:22px!important;min-height:64px}
 #main .fl-col {max-width:100%!important}
}
@media(max-width:600px){
 #main > .limit-wrapper {padding:24px 18px!important}
 #main aside.left {display:block!important;border-top:1px solid #e9ccbb}
 .directory-toggle {min-height:52px;font-size:23px!important}
 #main aside ul.menu {display:grid;grid-template-columns:1fr 1fr;column-gap:20px}
 #main .fl-node-6dv0r3floh4b {grid-template-columns:1fr}
 #main .fl-map iframe {height:280px!important}
 #main .fl-builder-content-14013 > .fl-row > .fl-row-content-wrap {padding:20px 0!important}
 #main .fl-module-content {margin-left:0!important;margin-right:0!important}
 #main h1 {font-size:36px!important;line-height:1.15!important}
 #main h2 {font-size:30px!important;line-height:1.2!important}
 #main .specialist-grid {grid-template-columns:1fr;gap:24px;padding:20px 0}
 #main .specialist-grid .team-member {max-width:360px;margin:auto}
 #main .service-prices,#main .service-prices tbody {display:block}
 #main .service-prices tr {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));padding:16px 10px;margin-bottom:12px;border:1px solid #e9ccbb;border-radius:6px}
 #main .service-prices th {grid-column:1/-1;width:auto;padding:0 0 8px!important}
 #main .service-prices td {padding:8px 2px!important;border:0}
 #main .service-prices span {font-size:13px!important;white-space:nowrap}
 #main .service-prices th span {font-size:17px!important;white-space:normal}
 #main .fl-node-okldecnz4rbg .fl-col-group {display:grid;grid-template-columns:1fr 1fr;gap:20px}
 #main .fl-node-okldecnz4rbg .fl-col {width:100%!important}
 #main .fl-node-okldecnz4rbg h2 {font-size:25px!important}
 #main .fl-node-okldecnz4rbg h3 {font-size:22px!important}
}
@media(prefers-reduced-motion:reduce){html {scroll-behavior:auto!important} .fl-module {animation:none!important;transition:none!important}}
#main {scroll-margin-top:100px}
#main aside.left {order:-1;grid-column:1;grid-row:1}
#main article.left-only {grid-column:2;grid-row:1}
#main .fl-node-6dv0r3floh4b h3 {font-size:34px!important;line-height:1.15!important;margin:0 0 18px!important}
#main .fl-node-5a00a040473fe h2 {font-size:clamp(40px,5vw,72px)!important;overflow-wrap:break-word}
#main .fl-node-5a00a040473fe .fl-col-content {padding-left:16px!important;padding-right:16px!important}
@media(max-width:600px){#main .fl-node-6dv0r3floh4b h3 {font-size:32px!important}}

/* Keep tablet content full width in both orientations. */
@media(min-width:601px) and (max-width:1199px){
 #main article.left-only {max-width:100%!important}
 #main article.left-only > div {max-width:100%!important;width:100%!important}
 #main .fl-node-5a00a4c5a522a {width:100%!important}
 #main .service-prices {table-layout:auto}
 #main .service-prices th {width:28%}
 #main .service-prices th,#main .service-prices td {padding:14px 8px!important}
 #main .service-prices span {font-size:14px!important}
 #main h1 {font-size:46px!important;line-height:1.2!important}
 #main .specialist-grid {grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(min-width:901px) and (max-width:1199px){
 #mega-menu-menu-header > .mega-menu-item > .mega-sub-menu {left:auto!important;right:0!important;width:min(730px,90vw)!important}
}
@media(min-width:601px) and (max-width:1199px){
 #main .fl-node-5a00a0404747f,#main .fl-node-qwi6psju49b3 {width:100%!important;max-width:100%!important;margin-left:0!important;left:auto!important}
}
