.elementor-kit-21{--e-global-color-primary:#6EC1E4;--e-global-color-secondary:#54595F;--e-global-color-text:#7A7A7A;--e-global-color-accent:#61CE70;--e-global-color-8f7475d:#FFFFFF;--e-global-color-73410e1:#F8ED3E;--e-global-color-5903ee4:#101010;--e-global-color-3d8a5ac:#00A7E0;--e-global-typography-primary-font-family:"Roboto";--e-global-typography-primary-font-weight:600;--e-global-typography-secondary-font-family:"Roboto Slab";--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-family:"Roboto";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Roboto";--e-global-typography-accent-font-weight:500;--e-global-typography-69fd77b-font-family:"Special Gothic Expanded One";--e-global-typography-69fd77b-font-size:10px;--e-global-typography-69fd77b-font-weight:400;--e-global-typography-69fd77b-text-transform:uppercase;--e-global-typography-69fd77b-line-height:1.4em;--e-global-typography-69fd77b-letter-spacing:2px;--e-global-typography-83b5284-font-family:"DM Sans";--e-global-typography-83b5284-font-size:16px;--e-global-typography-83b5284-font-weight:500;--e-global-typography-83b5284-line-height:1.4em;--e-global-typography-68c33d5-font-family:"Special Gothic Expanded One";--e-global-typography-68c33d5-font-size:14px;--e-global-typography-68c33d5-font-weight:400;--e-global-typography-68c33d5-line-height:1.5em;--e-global-typography-9b81eb1-font-family:"DM Sans";--e-global-typography-9b81eb1-font-size:14px;--e-global-typography-9b81eb1-font-weight:500;--e-global-typography-9b81eb1-line-height:1.5em;--e-global-typography-9817b76-font-family:"Special Gothic Expanded One";--e-global-typography-9817b76-font-size:10px;--e-global-typography-9817b76-font-weight:400;--e-global-typography-9817b76-text-transform:uppercase;--e-global-typography-9817b76-line-height:1.4em;--e-global-typography-9817b76-letter-spacing:2px;}.elementor-kit-21 e-page-transition{background-color:#FFBC7D;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1300px;}.e-con{--container-max-width:1300px;--container-default-padding-top:0px;--container-default-padding-right:0px;--container-default-padding-bottom:0px;--container-default-padding-left:0px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}:root { --yellow:#F8ED3E; --off-black:#101010; --white:#fff; --lightblue:#00A7E0; --body-gray:#606060; --off-white:#F7F7F7; }
/* Start custom CSS *//* BOA readability + sticky header (SEO doc 1.8) */
body .body-regular, body .elementor-widget-text-editor, body .elementor-widget-text-editor p { font-size: 18px; line-height: 1.6; }
body :is([data-elementor-type="wp-page"],[data-elementor-type="wp-post"]) p.body-regular { font-size: 18px; line-height: 1.6; }
body h3.e-heading-base + p.body-regular { font-size: 20px; }
body :is([data-elementor-type="wp-page"],[data-elementor-type="wp-post"]) :is(p, li, .elementor-widget-text-editor) a:not([class*="button"]):not(.e-button-base) { color: #007DB3 !important; text-decoration: underline; }
[data-elementor-type="header"] { position: sticky; top: 0; z-index: 999; background-color: #ffffff; box-shadow: 0 2px 12px rgba(0,0,0,0.08); }
body.admin-bar [data-elementor-type="header"] { top: 32px; }
@media (max-width: 782px) { body.admin-bar [data-elementor-type="header"] { top: 46px; } }
/* BOA split images (new bands only) */
.e-dc48acb-5381e42:has(> .e-b0a5p17-1mgc01) { align-items: center; gap: 48px; }
@media (min-width: 1025px) { .e-dc48acb-5381e42:has(> .e-b0a5p17-1mgc01) > * { flex: 1 1 0; width: auto !important; min-width: 0; } }
.e-b0a5p17-1mgc01 .elementor-widget-image, .e-b0a5p17-1mgc01 .elementor-widget-image img { width: 100% !important; max-width: 100% !important; }
.e-b0a5p17-1mgc01 .elementor-widget-image img { aspect-ratio: 4 / 3; object-fit: cover; border-radius: 10px; }
@media (max-width: 1024px) { .e-b0a5p17-1mgc01 { order: 2; } }
/* BOA form labels on dark form cards */
.gform_wrapper fieldset.gfield--type-radio legend.gfield_label, .gform_wrapper .gchoice label { color: #ffffff !important; }
.gform_wrapper .gchoice input[type="radio"] { accent-color: #00A7E0; border-color: #bfbfbf !important; background-color: #ffffff !important; }
/* BOA trust bar: center the remaining logos */
.e-con:has(> img[src*="logos1"]) { display: flex !important; flex-wrap: wrap; justify-content: center; align-items: center; gap: 24px 80px; }
/* BOA services cards (Figma services page) */
.elementor-547 .e-d0d8393-f0c0e9e { padding: 0 0 28px !important; overflow: hidden; justify-content: flex-start !important; align-items: stretch !important; gap: 14px !important; border-radius: 12px !important; border-color: #e3e3e3 !important; box-shadow: 0 4px 18px rgba(0,0,0,0.06); }
.elementor-547 .e-d0d8393-f0c0e9e > img { border-radius: 0 !important; height: 240px !important; width: 100% !important; margin-bottom: 8px; }
.elementor-547 .e-d0d8393-f0c0e9e > :is(h2, h3, h4, p) { padding: 0 24px !important; margin: 0 !important; text-align: center !important; align-self: stretch !important; }
.elementor-547 .e-d0d8393-f0c0e9e > p { font-size: 17px !important; }
.elementor-547 .e-d0d8393-f0c0e9e > a:last-child { margin: auto 24px 0 !important; align-self: stretch !important; justify-content: center !important; gap: 10px; padding-left: 16px !important; padding-right: 16px !important; }
.elementor-547 .e-d0d8393-f0c0e9e > a:last-child p { white-space: nowrap; font-size: 12px !important; }
/* BOA centered section headers: heading and intro follow the centered eyebrow (Figma) */
:is(.e-02c16d2-de5e46b, .e-ff2ff13-7467c7e, .e-a0035be-9bef16f, .e-aeaa078-597a8d3, .e-7eb5694-4475574, .e-57bdda5-81fcee5) > :is(h1, h2, h3, p, .elementor-widget-text-editor) { text-align: center !important; }
:is(.e-ec1c9c5-da86a03, .e-22c06ca-c70ba7e, .e-f3517c8-15fbf8f, .e-8bc7d0d-e394b01) > p.title-span { text-align: center !important; }
/* BOA hub service cards: equal height, buttons aligned at the bottom */
.e-b69331f-900d1b1 { flex: 1 1 auto; }
.e-b69331f-900d1b1 > a.button-y:last-child { margin-top: auto !important; }
/* BOA text-editor headings use the site heading font */
body :is([data-elementor-type="wp-page"]) .elementor-widget-text-editor :is(h2, h3, h4) { font-family: "Special Gothic Expanded One", sans-serif; font-weight: 400; text-transform: uppercase; color: #111111; font-size: 22px; line-height: 1.3; margin-bottom: 12px; }
/* BOA service areas regions (homepage Areas design, region names stay H2 for SEO) */
.elementor-element-69b16f5 h2 { font-family: "DM Sans", sans-serif !important; font-size: 16px !important; font-weight: 700 !important; text-transform: uppercase; color: #101010 !important; line-height: 1.4 !important; margin: 0 !important; letter-spacing: 0; }
.elementor-element-69b16f5 p { font-family: "DM Sans", sans-serif; font-size: 15px !important; line-height: 1.55 !important; color: #606060 !important; margin: 0 !important; }
/* BOA areas background: house photo anchored below the content */
@media (min-width: 1025px) { :is(.e-24053ef-7d8fb4a) { background: #f0f6f9 url("/wp-content/uploads/2026/10/areassectionbg.webp") no-repeat center bottom / 100% auto !important; padding-bottom: calc(41.7vw + 40px) !important; } }
/* BOA areas map inside the areas section */
.e-24053ef-7d8fb4a .elementor-widget-html iframe { display: block; width: 100%; border: 0; border-radius: 12px; box-shadow: 0 4px 18px rgba(0,0,0,0.08); }
/* BOA near-you lists (homepage Areas list design) */
[class*="-nygrid"] { margin-top: 8px; }
@media (min-width: 1025px) { :is(.elementor-3485, .elementor-3486) :has(> [class*="-nygrid"]) { flex-wrap: wrap; } :is(.elementor-3485, .elementor-3486) [class*="-nygrid"] { flex: 0 0 100%; margin-top: 24px; } }
.elementor-1407 [class*="-nygrid"] .elementor-icon-list-text { color: #ffffff !important; }
.elementor-1407 [class*="-nygrid"] .elementor-icon-list-icon i, .elementor-1407 [class*="-nygrid"] .elementor-icon-list-icon svg { color: #00A7E0 !important; fill: #00A7E0 !important; }
/* BOA form field text: readable while typing, filled, autofilled and in error */
.gform_wrapper :is(input:not([type="submit"]):not([type="radio"]):not([type="checkbox"]):not([type="button"]), textarea, select) { color: #ffffff !important; -webkit-text-fill-color: #ffffff !important; caret-color: #ffffff; opacity: 1; }
.gform_wrapper :is(input, textarea)::placeholder { color: #a9a9a9 !important; -webkit-text-fill-color: #a9a9a9 !important; opacity: 1 !important; }
.gform_wrapper :is(input, textarea, select):focus { border-color: #00A7E0 !important; outline: 2px solid rgba(0, 167, 224, 0.35) !important; outline-offset: 0; }
.gform_wrapper :is(input, textarea, select):-webkit-autofill, .gform_wrapper :is(input, textarea, select):-webkit-autofill:hover, .gform_wrapper :is(input, textarea, select):-webkit-autofill:focus { -webkit-text-fill-color: #ffffff !important; caret-color: #ffffff; -webkit-box-shadow: 0 0 0 1000px #101010 inset !important; box-shadow: 0 0 0 1000px #101010 inset !important; transition: background-color 9999s ease-out 0s; }
.gform_wrapper :is(input, textarea):autofill { color: #ffffff !important; }
.gform_wrapper select option { color: #111111; background: #ffffff; }
body .gform_wrapper .gfield.gfield_error :is(input, textarea, select) { border-color: #ff5c5c !important; box-shadow: inset 0 0 0 1px #ff5c5c !important; }
.gform_wrapper :is(.gfield_validation_message, .validation_message) { color: #ff8a8a !important; background: transparent !important; border: 0 !important; padding: 4px 0 0 !important; font-size: 14px; }
.gform_wrapper .gform_validation_errors { background: rgba(255, 92, 92, 0.12) !important; border: 1px solid #ff5c5c !important; }
.gform_wrapper .gform_validation_errors :is(h2, .gform_submission_error, li, a) { color: #ffffff !important; }
/* BOA footer bottom bar (copyright + agency credit) */
.elementor-184 .elementor-element-2bd05ff:not(:has(p:not(:empty))) { display: none !important; }
.elementor-184 .elementor-element-db33593 { background-color: #101010 !important; padding: 0 20px !important; }
.elementor-184 .elementor-element-db33593 > .e-con-inner { border-top: 1px solid rgba(255, 255, 255, 0.14); padding: 18px 0 22px !important; }
.elementor-184 .elementor-element-9880a3f { width: 100%; }
.elementor-184 .elementor-element-9880a3f footer { font-family: "DM Sans", sans-serif; font-size: 14px; line-height: 1.7; color: #b8b8b8; text-align: center; background: transparent; margin: 0; padding: 0; }
.elementor-184 .elementor-element-9880a3f footer a { color: #ffffff !important; text-decoration: underline; text-underline-offset: 2px; }
.elementor-184 .elementor-element-9880a3f footer a:hover, .elementor-184 .elementor-element-9880a3f footer a:focus { color: #00A7E0 !important; }
@media (max-width: 767px) { .elementor-184 .elementor-element-db33593 > .e-con-inner { padding-bottom: 84px !important; } }/* End custom CSS */
/* Start Custom Fonts CSS */@font-face {
	font-family: 'Special Gothic Expanded One';
	font-style: normal;
	font-weight: normal;
	font-display: auto;
	src: url('https://roofedbyroyal.com/wp-content/uploads/2026/10/SpecialGothicExpandedOne-Regular.ttf') format('truetype');
}
/* End Custom Fonts CSS */