.elementor-171 .elementor-element.elementor-element-1c8906d9{--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;}.elementor-171 .elementor-element.elementor-element-21c16473{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-171 .elementor-element.elementor-element-5992f26f{--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;}.elementor-171 .elementor-element.elementor-element-21578574{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;}.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-171 .elementor-element.elementor-element-5664949{width:var( --container-widget-width, 136px );max-width:136px;--container-widget-width:136px;--container-widget-flex-grow:0;}.elementor-171 .elementor-element.elementor-element-5664949.elementor-element{--flex-grow:0;--flex-shrink:0;}.elementor-171 .elementor-element.elementor-element-5d9e61cb{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;}.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-171 .elementor-element.elementor-element-41af6034.elementor-element{--flex-grow:0;--flex-shrink:0;}.elementor-171 .elementor-element.elementor-element-7d9d0542{--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;}.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-171 .elementor-element.elementor-element-5664949{width:var( --container-widget-width, 92px );max-width:92px;--container-widget-width:92px;--container-widget-flex-grow:0;}}@media(max-width:767px){.elementor-171 .elementor-element.elementor-element-5664949{width:var( --container-widget-width, 64px );max-width:64px;--container-widget-width:64px;--container-widget-flex-grow:0;}.elementor-171 .elementor-element.elementor-element-41af6034{width:initial;max-width:initial;}.elementor-171 .elementor-element.elementor-element-41af6034.elementor-element{--flex-grow:0;--flex-shrink:0;}}/* Start custom CSS *//* COMFORT v10 - metric-matched Roboto fallback. While Roboto downloads, text renders in a size-matched local font so nothing jumps when Roboto arrives (fixes hero layout shift / CLS). Lives in the Header template so it loads on every page. */
@font-face{font-family:"Roboto Fallback";src:local("Arial"),local("ArialMT"),local("Liberation Sans"),local("LiberationSans-Regular"),local("Arimo"),local("Helvetica Neue"),local("Helvetica");ascent-override:92.49%;descent-override:24.34%;line-gap-override:0%;size-adjust:100.3%}
body.elementor-kit-146{--e-global-typography-primary-font-family:"Roboto","Roboto Fallback";--e-global-typography-secondary-font-family:"Roboto","Roboto Fallback";--e-global-typography-text-font-family:"Roboto","Roboto Fallback";--e-global-typography-accent-font-family:"Roboto","Roboto Fallback"}

/* COMFORT v11 - form submit button contrast (WCAG AA). Brand cyan button with deep-navy text, matching the site's primary buttons (7.2:1 contrast). Applies to every Elementor form. */
.elementor-form .elementor-button[type="submit"]{background-color:var(--a,#13bfd0)!important;border-color:var(--a,#13bfd0)!important;color:#05242e!important;font-weight:700}
.elementor-form .elementor-button[type="submit"] :is(.elementor-button-text,.elementor-button-icon,svg){color:#05242e!important;fill:#05242e!important}
.elementor-form .elementor-button[type="submit"]:hover{background-color:#3fd3e1!important;border-color:#3fd3e1!important}
.elementor-form .elementor-button[type="submit"]:focus-visible{outline:3px solid #78e0e7;outline-offset:3px}

/* COMFORT v12 - top bar landline, footer email + credit, and styling for the legal pages (Privacy, Terms, Cookies) which are plain WordPress pages, not Elementor layouts. */
.topsep{opacity:.45;margin:0 2px}
.footer a.mail{color:#fff;font-weight:700;overflow-wrap:anywhere}
.footer a.mail:hover{color:var(--a,#13bfd0)}
.legalbar .elementor-widget-text-editor{width:100%}
.legalbar .elementor-widget-text-editor .elementor-widget-container{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:8px 24px}
.legalbar .legal.credit a{color:#c3d8dc;font-weight:700}
.legalbar .legal.credit a:hover{color:var(--a,#13bfd0)}
body:not(.elementor-page) main.site-main{max-width:880px;margin-inline:auto;padding:clamp(44px,7vw,96px) 20px clamp(64px,9vw,120px);font-family:"Roboto","Roboto Fallback",Arial,sans-serif}
body:not(.elementor-page) .site-main .page-header{margin:0 0 8px}
body:not(.elementor-page) .site-main .entry-title{font-size:clamp(36px,5.2vw,60px);line-height:1.02;letter-spacing:-.035em;font-weight:700;color:var(--n,#062736);margin:0;text-wrap:balance}
body:not(.elementor-page) .page-content{font-size:17px;line-height:1.72;color:#34484e}
body:not(.elementor-page) .page-content h2{font-size:clamp(22px,2.6vw,28px);line-height:1.2;letter-spacing:-.015em;font-weight:700;color:var(--n,#062736);margin:52px 0 12px;padding-top:22px;border-top:1px solid #dde7e9}
body:not(.elementor-page) .page-content h3{font-size:18px;line-height:1.3;font-weight:700;color:var(--n,#062736);margin:30px 0 8px}
body:not(.elementor-page) .page-content :is(p,ul){margin:0 0 16px}
body:not(.elementor-page) .page-content ul{padding-left:1.25em}
body:not(.elementor-page) .page-content li{margin:7px 0}
body:not(.elementor-page) .page-content li::marker{color:var(--a,#13bfd0)}
body:not(.elementor-page) .page-content a{color:#0a7682;text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px}
body:not(.elementor-page) .page-content a:hover{color:var(--n,#062736)}
body:not(.elementor-page) .page-content a:focus-visible{outline:3px solid #13bfd0;outline-offset:2px;border-radius:2px}
.page-content .policy-updated{font-size:12.5px;letter-spacing:.16em;text-transform:uppercase;color:#0a7682;font-weight:700;margin:14px 0 22px}
.page-content .policy-card{background:#f2f7f8;border:1px solid #d9e6e8;border-radius:16px;padding:22px 24px;margin:28px 0 8px;font-size:15.5px;line-height:1.65}
.page-content .policy-card p{margin:0 0 10px}
.page-content .policy-card p:last-child{margin:0}
.page-content .table-wrap{overflow-x:auto;margin:18px 0 22px;border:1px solid #d9e6e8;border-radius:14px}
.page-content table{width:100%;border-collapse:collapse;font-size:15px;line-height:1.55;min-width:520px;margin:0}
.page-content th{background:#062736;color:#fff;text-align:left;font-weight:700;padding:12px 16px;border:0}
.page-content td{padding:12px 16px;border:0;border-top:1px solid #e3ecee;vertical-align:top}
.page-content tr:nth-child(even) td{background:#f7fafb}
@media(max-width:767px){body:not(.elementor-page) .page-content{font-size:16px}body:not(.elementor-page) .page-content h2{margin-top:40px}.page-content .policy-card{padding:18px}}/* End custom CSS */