.elementor-54 .elementor-element.elementor-element-a41985b1{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:space-between;--align-items:center;--gap:16px 16px;--row-gap:16px;--column-gap:16px;--padding-top:0px;--padding-bottom:0px;--padding-left:24px;--padding-right:24px;}.elementor-widget-theme-site-logo .widget-image-caption{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );line-height:var( --e-global-typography-text-line-height );}.elementor-54 .elementor-element.elementor-element-963bfb7{margin:8px 0px calc(var(--kit-widget-spacing, 0px) + 8px) 0px;text-align:start;}.elementor-54 .elementor-element.elementor-element-963bfb7 img{width:64px;}.elementor-widget-nav-menu .elementor-nav-menu .elementor-item{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item{color:var( --e-global-color-text );fill:var( --e-global-color-text );}.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item:hover,
					.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item.elementor-item-active,
					.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item.highlighted,
					.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item:focus{color:var( --e-global-color-accent );fill:var( --e-global-color-accent );}.elementor-widget-nav-menu .elementor-nav-menu--main:not(.e--pointer-framed) .elementor-item:before,
					.elementor-widget-nav-menu .elementor-nav-menu--main:not(.e--pointer-framed) .elementor-item:after{background-color:var( --e-global-color-accent );}.elementor-widget-nav-menu .e--pointer-framed .elementor-item:before,
					.elementor-widget-nav-menu .e--pointer-framed .elementor-item:after{border-color:var( --e-global-color-accent );}.elementor-widget-nav-menu{--e-nav-menu-divider-color:var( --e-global-color-text );}.elementor-widget-nav-menu .elementor-nav-menu--dropdown .elementor-item, .elementor-widget-nav-menu .elementor-nav-menu--dropdown  .elementor-sub-item{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-size:var( --e-global-typography-accent-font-size );font-weight:var( --e-global-typography-accent-font-weight );text-transform:var( --e-global-typography-accent-text-transform );letter-spacing:var( --e-global-typography-accent-letter-spacing );}.elementor-54 .elementor-element.elementor-element-be47b971 .elementor-menu-toggle{margin:0 auto;}.elementor-54 .elementor-element.elementor-element-be47b971 .elementor-nav-menu--dropdown a, .elementor-54 .elementor-element.elementor-element-be47b971 .elementor-menu-toggle{color:#47464E;fill:#47464E;}.elementor-54 .elementor-element.elementor-element-be47b971 .elementor-nav-menu--dropdown{background-color:#FCF9F4;}.elementor-54 .elementor-element.elementor-element-be47b971 .elementor-nav-menu--dropdown a:hover,
					.elementor-54 .elementor-element.elementor-element-be47b971 .elementor-nav-menu--dropdown a:focus,
					.elementor-54 .elementor-element.elementor-element-be47b971 .elementor-nav-menu--dropdown a.elementor-item-active,
					.elementor-54 .elementor-element.elementor-element-be47b971 .elementor-nav-menu--dropdown a.highlighted,
					.elementor-54 .elementor-element.elementor-element-be47b971 .elementor-menu-toggle:hover,
					.elementor-54 .elementor-element.elementor-element-be47b971 .elementor-menu-toggle:focus{color:#05052E;}.elementor-54 .elementor-element.elementor-element-be47b971 .elementor-nav-menu--dropdown a:hover,
					.elementor-54 .elementor-element.elementor-element-be47b971 .elementor-nav-menu--dropdown a:focus,
					.elementor-54 .elementor-element.elementor-element-be47b971 .elementor-nav-menu--dropdown a.elementor-item-active,
					.elementor-54 .elementor-element.elementor-element-be47b971 .elementor-nav-menu--dropdown a.highlighted{background-color:#F0EDE9;}.elementor-54 .elementor-element.elementor-element-be47b971 .elementor-nav-menu--dropdown a.elementor-item-active{color:#8C4B55;background-color:#F0EDE9;}.elementor-widget-button .elementor-button{background-color:var( --e-global-color-accent );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-size:var( --e-global-typography-accent-font-size );font-weight:var( --e-global-typography-accent-font-weight );text-transform:var( --e-global-typography-accent-text-transform );letter-spacing:var( --e-global-typography-accent-letter-spacing );}.elementor-54 .elementor-element.elementor-element-7b5e874b{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-theme-builder-content-area{height:400px;}.elementor-location-header:before, .elementor-location-footer:before{content:"";display:table;clear:both;}@media(max-width:1024px){.elementor-54 .elementor-element.elementor-element-a41985b1{--padding-top:0px;--padding-bottom:0px;--padding-left:24px;--padding-right:24px;}.elementor-widget-theme-site-logo .widget-image-caption{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-54 .elementor-element.elementor-element-963bfb7.elementor-element{--flex-grow:1;--flex-shrink:0;}.elementor-54 .elementor-element.elementor-element-963bfb7 img{width:56px;}.elementor-widget-nav-menu .elementor-nav-menu--dropdown .elementor-item, .elementor-widget-nav-menu .elementor-nav-menu--dropdown  .elementor-sub-item{font-size:var( --e-global-typography-accent-font-size );letter-spacing:var( --e-global-typography-accent-letter-spacing );}.elementor-54 .elementor-element.elementor-element-be47b971.elementor-element{--order:3;}.elementor-widget-button .elementor-button{font-size:var( --e-global-typography-accent-font-size );letter-spacing:var( --e-global-typography-accent-letter-spacing );}}@media(max-width:767px){.elementor-54 .elementor-element.elementor-element-a41985b1{--padding-top:0px;--padding-bottom:0px;--padding-left:16px;--padding-right:16px;}.elementor-widget-theme-site-logo .widget-image-caption{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-54 .elementor-element.elementor-element-963bfb7 img{width:52px;}.elementor-widget-nav-menu .elementor-nav-menu--dropdown .elementor-item, .elementor-widget-nav-menu .elementor-nav-menu--dropdown  .elementor-sub-item{font-size:var( --e-global-typography-accent-font-size );letter-spacing:var( --e-global-typography-accent-letter-spacing );}.elementor-widget-button .elementor-button{font-size:var( --e-global-typography-accent-font-size );letter-spacing:var( --e-global-typography-accent-letter-spacing );}}/* Start custom CSS for nav-menu, class: .elementor-element-be47b971 */@media (min-width:768px) and (max-width:1024px){.elementor-54 .elementor-element.elementor-element-be47b971 .elementor-nav-menu--dropdown{margin-top:24px;}}@media (max-width:767px){.elementor-54 .elementor-element.elementor-element-be47b971 .elementor-nav-menu--dropdown{margin-top:19px;}}/* End custom CSS */
/* Start custom CSS *//* D4-D7 accessibility CSS: delivered as Elementor Custom CSS on the Theme Builder header (template 54), which loads on every page.
   Global Additional CSS is not touched. No child combinators (the settings sanitizer escapes them). */
/* D5: 44px+ touch target for the menu toggle without changing its look (33px icon box + 6px hit area each side) */
.tps-header .elementor-menu-toggle { position: relative; }
.tps-header .elementor-menu-toggle::after { content: ""; position: absolute; top: -6px; right: -6px; bottom: -6px; left: -6px; }
/* D6: FAQ trigger is a real button element; it keeps the look of the former anchor. The whole title row shows the focus ring. */
.tps-faq .elementor-tab-title button.elementor-accordion-title { -webkit-appearance: none; appearance: none; background: none; border: 0; border-radius: 0; box-shadow: none; margin: 0; padding: 0; text-align: inherit; letter-spacing: inherit; text-transform: inherit; font-size: inherit; line-height: inherit; cursor: pointer; display: block; white-space: normal; color: var(--tps-navy); }
.tps-faq .elementor-tab-title.elementor-active button.elementor-accordion-title { color: var(--tps-rose-deep); }
.tps-faq .elementor-tab-title button.elementor-accordion-title:focus, .tps-faq .elementor-tab-title button.elementor-accordion-title:focus-visible { outline: none; }
.tps-faq .elementor-tab-title:has(button.elementor-accordion-title:focus-visible) { outline: 2px solid var(--tps-navy); outline-offset: -4px; border-radius: 6px; }
/* D7: inline text links keep their look; the clickable area grows (about 44px tall) */
.tps-btn-text a.elementor-button, .tps-symptom__link { position: relative; }
.tps-btn-text a.elementor-button::after { content: ""; position: absolute; top: -16px; right: -8px; bottom: -16px; left: -8px; }
.tps-symptom__link::after { content: ""; position: absolute; top: -10px; right: -8px; bottom: -10px; left: -8px; }
/* D4 (shared components): the simulator result button sits on navy, so its focus ring is light; the header Book button ring appears immediately instead of fading in from white */
.tps-sim a.tps-sim__cta:focus-visible { outline: 2px solid #FFD9DD; outline-offset: 3px; }
.tps-header a.elementor-button:focus-visible { transition: background-color 0.3s ease, color 0.3s ease; }/* End custom CSS */