.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-weight:var( --e-global-typography-accent-font-weight );}.elementor-widget-image .widget-image-caption{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-48 .elementor-element.elementor-element-13efd5a6{--display:flex;}.elementor-widget-button .elementor-button{background-color:var( --e-global-color-accent );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-theme-builder-content-area{height:400px;}.elementor-location-header:before, .elementor-location-footer:before{content:"";display:table;clear:both;}/* Start custom CSS for image, class: .elementor-element-d4e2560 */.elementor-48 [data-id="35d891d"]{display:grid!important;grid-template-columns:1fr 1fr!important;} .elementor-48 [data-id="eab46fb"]{grid-column:1/-1;grid-row:1;} .elementor-48 [data-id="08ee485"]{grid-column:1/-1;grid-row:3;} .elementor-48 [data-id="52cd919"]{grid-column:1;grid-row:2;padding:0 24px 28px!important;} .elementor-48 [data-id="52cd919"] figure{width:280px;max-width:100%;margin:0 0 0 auto!important;text-align:left;} .elementor-48 [data-id="52cd919"] img{width:200px;max-width:100%;height:auto;margin:0!important;} .elementor-48 [data-id="52cd919"] figcaption{font:400 12px/1.5 "Source Sans 3",sans-serif;color:#fff;text-align:left;margin-top:10px;} .elementor-48 .elementor-element.elementor-element-d4e2560{grid-column:2;grid-row:2;padding:0 24px 28px!important;align-self:start;} .elementor-48 .elementor-element.elementor-element-d4e2560 img{display:block;width:200px;max-width:100%;height:auto;margin-left:0;} @media(max-width:600px){.elementor-48 [data-id="35d891d"]{grid-template-columns:1fr!important;} .elementor-48 .elementor-element.elementor-element-d4e2560{grid-column:1;grid-row:3;}.elementor-48 .elementor-element.elementor-element-d4e2560 img{margin-inline:auto;} .elementor-48 [data-id="52cd919"]{grid-column:1;grid-row:2;} .elementor-48 [data-id="52cd919"] figure{margin-inline:auto!important;text-align:center;} .elementor-48 [data-id="52cd919"] img{margin-inline:auto!important;} .elementor-48 [data-id="52cd919"] figcaption{text-align:center;} .elementor-48 [data-id="08ee485"]{grid-row:4;} .elementor-48 [data-id="997dcf0"]{grid-column:1;grid-row:5;}}/* End custom CSS */
/* Start custom CSS for image, class: .elementor-element-52cd919 */.elementor-48 .elementor-element.elementor-element-52cd919{width:100%;}.elementor-48 .elementor-element.elementor-element-52cd919 img{display:block;width:200px;max-width:100%;height:auto;margin:0;}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-13efd5a6 *//* One shared editable CTA, replacing page-local mobile bars. */
body:has(.cfa-global-booking) .elementor-11 [data-id="f15e9e3"],body:has(.cfa-global-booking) .cfa-courses .ct-mobile-book{display:none!important}
.elementor-48 .cfa-global-booking.e-con{display:none!important}
.elementor-48 .cfa-booking-helper{display:none!important}
@media(max-width:1024px){
body:has(.cfa-global-booking):not(.elementor-editor-active){padding-bottom:calc(73px + env(safe-area-inset-bottom,0px))!important}
body:has(.cfa-global-booking) .elementor-location-footer{padding-bottom:0!important}
.elementor-48 .cfa-global-booking.e-con{display:flex!important;position:fixed!important;inset:auto 0 0!important;z-index:999!important;width:100%!important;max-width:none!important;padding:12px 12px calc(12px + env(safe-area-inset-bottom,0px))!important;gap:0!important;margin:0!important;border:0!important;border-top:1px solid #D7DEE6!important;background:#fff!important;border-radius:0!important;box-sizing:border-box!important}
.elementor-48 .cfa-global-booking .elementor-widget-button{width:100%!important;margin:0!important}
.elementor-48 .cfa-global-booking .elementor-button{display:flex!important;align-items:center!important;justify-content:center!important;width:100%!important;height:48px!important;min-height:48px!important;padding:0 20px!important;border:0!important;border-radius:6px!important;background:#C8102E!important;color:#fff!important;font:500 16px/24px 'Source Sans 3',sans-serif!important;text-decoration:none!important;transition:background-color .15s}
.elementor-48 .cfa-global-booking .elementor-button:hover{background:#A40D25!important}
.elementor-48 .cfa-global-booking .elementor-button:focus-visible{outline:2px solid #0E1C2F!important;outline-offset:3px!important}
body:has(.cfa-global-booking) .elementor-46 a.e-button-base[data-id="d19167a"][data-id="d19167a"]{display:none!important}
}
@media(prefers-reduced-motion:reduce){.elementor-48 .cfa-global-booking .elementor-button{transition:none!important}}/* End custom CSS */
/* Start custom CSS */.elementor-48{font-family:"Source Sans 3",sans-serif;font-weight:400}.elementor-48 *{box-sizing:border-box}.elementor-48 a:not(.e-button-base){color:inherit!important;text-decoration:none!important}.elementor-48 a:hover{text-decoration:underline!important}.elementor-48 a:focus-visible{outline:3px solid #C8102E;outline-offset:4px}@media(max-width:767px){.elementor-48 [data-id="35d891d"]{padding:32px 16px!important}}
.elementor-48 [data-id="35d891d"]{padding:0!important;gap:0!important}
.elementor-48 [data-id="eab46fb"]{display:grid!important;grid-template-columns:2.1626fr 1fr 1fr!important;gap:40px!important;width:100%!important;max-width:1152px!important;margin:0 auto!important;padding:48px 24px!important;align-items:start!important}
.elementor-48 [data-id="cec44ee"]{gap:20px!important;width:100%!important}
.elementor-48 [data-id="c3788d0"]{width:264px!important;height:48px!important;padding:4px 8px!important;object-fit:contain!important}
.elementor-48 [data-id="769582a"]{font-size:14px!important;line-height:22.75px!important;max-width:384px!important}
.elementor-48 [data-id="3e15bd4"],.elementor-48 [data-id="ed9a189"]{font-size:14px!important;line-height:22.75px!important;min-width:0!important;flex:none!important;width:100%!important}
.elementor-48 [data-id="3e15bd4"] strong,.elementor-48 [data-id="ed9a189"] strong{display:block;font-size:12px;line-height:16px;font-weight:600;text-transform:uppercase;letter-spacing:.6px;color:rgba(255,255,255,.8);margin-bottom:12px}
.elementor-48 [data-id="ed9a189"] a{display:block;line-height:20px;margin-top:8px}
.elementor-48 [data-id="ed9a189"] strong + a{margin-top:0}
.elementor-48 [data-id="3e15bd4"] a{display:inline-block;margin-top:12px}
.elementor-48 [data-id="08ee485"]{width:100%!important;padding:20px max(24px,calc((100% - 1104px)/2))!important;border-top:1px solid rgba(255,255,255,.1)!important;display:flex!important;justify-content:space-between!important;gap:8px!important;font-size:12px!important;line-height:19.5px!important;color:rgba(255,255,255,.8)!important}
.elementor-48 a{text-decoration-color:transparent!important;text-underline-offset:4px}
.elementor-48 a:hover{text-decoration:underline!important;text-decoration-color:currentColor!important}
@media(max-width:767px){.elementor-48 [data-id="eab46fb"]{grid-template-columns:1fr!important;padding:48px 16px!important}.elementor-48 [data-id="08ee485"]{padding:20px 16px!important;flex-direction:column!important}.elementor-48 [data-id="c3788d0"]{height:44px!important}.elementor-48 [data-id="35d891d"]{padding:0!important}}

/* Centrally managed WordPress footer menus. */
.elementor-48 [data-id="8da2a02"]{order:3!important;gap:0!important;width:100%!important;min-width:0!important}.elementor-48 [data-id="b6dd196"]{font-size:12px!important;line-height:16px!important;font-weight:600!important;text-transform:uppercase!important;letter-spacing:.6px!important;color:rgba(255,255,255,.8)!important;margin:0 0 12px!important;max-width:none!important}.elementor-48 [data-id="35d891d"]{position:relative!important}.elementor-48 .elementor-widget-nav-menu{width:100%!important;margin:0!important}.elementor-48 .elementor-widget-nav-menu .elementor-item{font:400 14px/20px "Source Sans 3",sans-serif!important;color:#fff!important;background:transparent!important;padding:0!important;margin:0!important}.elementor-48 [data-id="72149f6"] li+li{margin-top:8px!important}.elementor-48 [data-id="72149f6"] li:last-child a{font-weight:600!important}.elementor-48 .elementor-widget-nav-menu .elementor-item:hover{text-decoration:underline!important;text-underline-offset:4px}.elementor-48 [data-id="997dcf0"]{position:absolute!important;bottom:20px!important;right:max(24px,calc((100% - 1104px)/2))!important;width:auto!important}.elementor-48 [data-id="997dcf0"] .elementor-nav-menu{gap:12px!important}.elementor-48 [data-id="997dcf0"] .elementor-item{font-size:12px!important;line-height:19.5px!important;color:rgba(255,255,255,.8)!important}.elementor-48 [data-id="08ee485"]>span{max-width:70%!important}
@media(max-width:767px){.elementor-48 [data-id="997dcf0"]{position:static!important;padding:0 16px 20px!important;width:100%!important}.elementor-48 [data-id="08ee485"]>span{max-width:100%!important}.elementor-48 [data-id="08ee485"]{padding-bottom:8px!important}}

/* Shared footer 48: fill short pages without overlaying longer content. */
body:has(> .elementor-location-footer.elementor-48):not(.elementor-editor-active) {
  min-height: 100vh;
  min-height: 100dvh;
  display: flex;
  flex-direction: column;
}
body:has(> .elementor-location-footer.elementor-48):not(.elementor-editor-active) > .elementor {
  flex-shrink: 0;
}
body:not(.elementor-editor-active) > .elementor-location-footer.elementor-48 {
  margin-top: auto;
}
body.admin-bar:has(> .elementor-location-footer.elementor-48):not(.elementor-editor-active) {
  min-height: calc(100vh - 32px);
  min-height: calc(100dvh - 32px);
}
@media (max-width: 782px) {
  body.admin-bar:has(> .elementor-location-footer.elementor-48):not(.elementor-editor-active) {
    min-height: calc(100vh - 46px);
    min-height: calc(100dvh - 46px);
  }
}


/* Center the 404 message within the available content area. */
body.error404:not(.elementor-editor-active) > main#content.site-main {
  flex: 1 0 auto;
  width: 100%;
  max-width: none;
  min-height: 320px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 16px;
  padding: 48px 24px;
  text-align: center;
  box-sizing: border-box;
}
body.error404 main#content .page-header,
body.error404 main#content .page-content {
  width: 100%;
  max-width: 900px;
  margin: 0;
  padding: 0;
}
body.error404 main#content .entry-title,
body.error404 main#content .page-content p { margin: 0; }

body.error404 main#content .entry-title { width: 100%; max-width: none; }/* End custom CSS */