/*
 * Legacy Elementor pages under the platform shell: one type scale, button and spacing language, through a
 * scoped stylesheet. No page is restyled by hand and nothing here applies with site_shell_enabled off.
 * 1) The Elementor kit's global tokens, remapped to the owner-approved palette (most widgets read these).
 * 2) What the kit does not reach: per-widget colours from generated CSS, forms, the title band.
 */
body.bati-shell-on[class*="elementor-kit-"] {
	--e-global-color-primary: #182B3A;
	--e-global-color-secondary: #182B3A;
	--e-global-color-text: #22282F;
	--e-global-color-accent: #182B3A;
	--e-global-color-c98a456: #182B3A;
	--e-global-color-f714f7c: #B85A0E;
	--e-global-color-d777049: #B85A0E;
	--e-global-color-1aa0b4d: #B85A0E;
	--e-global-color-4a57bbd: #954809;
	--e-global-color-36fb0ab: #954809;
	--e-global-color-9680ba2: #F7F8F9;
	--e-global-color-9701d51: #F7F8F9;
	--e-global-color-b27535a: #F7F8F9;
	--e-global-color-a67ff41: #FFF1E2;
	--e-global-typography-primary-font-family: "Assistant";
	--e-global-typography-secondary-font-family: "Assistant";
	--e-global-typography-text-font-family: "Assistant";
	--e-global-typography-accent-font-family: "Assistant";
	font-family: 'Assistant', 'Segoe UI', Arial, sans-serif;
	color: #22282F;
}
.bati-shell-on .elementor :is(h1, h2, h3, h4, h5, h6, p, li, a, span, button, input, textarea, select, label, div):not(.fa, .fab, .fas, .far, [class*="eicon"], [class*="fa-"], .bati *) { font-family: 'Assistant', 'Segoe UI', Arial, sans-serif !important; letter-spacing: 0 !important; }

/* Type scale: same sizes as the plugin's pages. */
.bati-shell-on .elementor h1.elementor-heading-title, .bati-shell-on .elementor .elementor-widget-theme-post-title .elementor-heading-title, .bati-shell-on .elementor .elementor-widget-theme-archive-title .elementor-heading-title { font-size: clamp(26px, 3.2vw, 36px) !important; font-weight: 800 !important; }
.bati-shell-on .elementor h2.elementor-heading-title:not(.bati *) { font-size: clamp(21px, 2.3vw, 27px) !important; font-weight: 800 !important; color: #182B3A; }
.bati-shell-on .elementor h3.elementor-heading-title, .bati-shell-on .elementor p.elementor-heading-title { color: inherit; }
.bati-shell-on .elementor-widget-theme-post-content :is(h2, h3, h4):not(.bati *), .bati-shell-on .elementor-widget-text-editor :is(h2, h3, h4):not(.bati *) { color: #182B3A !important; font-weight: 700; line-height: 1.3; }
.bati-shell-on .elementor-widget-theme-post-content :is(h2, h3, h4):not(.bati *) *, .bati-shell-on .elementor-widget-text-editor :is(h2, h3, h4):not(.bati *) * { color: inherit !important; }
.bati-shell-on .elementor-widget-theme-post-content, .bati-shell-on .elementor-widget-text-editor { font-size: 17px; line-height: 1.6; }
.bati-shell-on .elementor-widget-theme-post-content :is(p, ul, ol):not(.bati *) { max-width: 75ch; }
/* Platform components (.bati) inside post content keep their own colours: legacy rules never reach them. */
.bati-shell-on .elementor-widget-theme-post-content a:not(.bati *), .bati-shell-on .elementor-widget-text-editor a:not(.bati *) { color: #954809; }

/* The title band above legacy pages (class added by Shell in memory): navy, not grey. */
.bati-shell-on .bs-legacy-band, .bati-shell-on .bs-legacy-band > .e-con-inner { background: #182B3A !important; }
.bati-shell-on .bs-legacy-band { padding-block: 22px; }
.bati-shell-on .bs-legacy-band :is(h1, h2, .elementor-heading-title) { color: #fff !important; }

/* Buttons: one pill. */
.bati-shell-on .elementor .elementor-button,
.bati-shell-on .elementor .top_btn .elementor-button,
.bati-shell-on .elementor .e-form__buttons .elementor-button {
	background: #B85A0E !important; color: #fff !important; border: 2px solid #B85A0E !important; border-radius: 24px !important;
	min-height: 48px; padding: 12px 26px !important; font-weight: 700 !important; font-size: 16px !important; line-height: 1.2 !important; display: inline-flex; align-items: center; justify-content: center;
}
.bati-shell-on .elementor .elementor-button:hover, .bati-shell-on .elementor .elementor-button:focus-visible { background: #954809 !important; border-color: #954809 !important; color: #fff !important; }
.bati-shell-on .elementor .elementor-button :is(span, svg, i) { color: #fff !important; fill: #fff !important; }

/* Forms: same fields as the platform's. */
.bati-shell-on .elementor-form .elementor-field-textual, .bati-shell-on .elementor-form select { border: 1px solid #C9CFD5 !important; border-radius: 10px !important; min-height: 48px; font-size: 16px !important; background: #fff !important; color: #22282F !important; }
.bati-shell-on .elementor-form .elementor-field-label { color: #182B3A !important; font-weight: 600 !important; font-size: 15px !important; }
.bati-shell-on .elementor-form .elementor-field-textual::placeholder { color: #5B6672; opacity: 1; }

/* Spacing and surfaces: legacy sections sit in the same rhythm, photos get the card radius. */
.bati-shell-on .elementor-widget-image img, .bati-shell-on .elementor-widget-image-carousel img { border-radius: 12px; }
.bati-shell-on .elementor-element .elementor-divider-separator { --divider-color: #B85A0E; }
.bati-shell-on .elementor-widget-breadcrumbs, .bati-shell-on .elementor-widget-breadcrumbs a { color: #5B6672; font-size: 14px; }
.bati-shell-on #scroll-top { display: none !important; }

.bati-shell-on .bs-no-bg, .bati-shell-on .bs-no-bg::before, .bati-shell-on .bs-no-bg > .elementor-background-overlay { background-image: none !important; }
.bati-shell-on .bs-legacy-hero { min-height: clamp(150px, 20vw, 280px) !important; }
.bati.bs-contact-form h2 { text-align: center; margin-block-end: 20px; }

/* Landing pages with their own hero (gas): the promoted H1 sits on a navy plate, white text. */
.bati-shell-on .elementor-widget.bs-legacy-title { background: rgba(24, 43, 58, .86) !important; border-radius: 12px !important; }
.bati-shell-on .elementor-widget.bs-legacy-title .elementor-heading-title { color: #fff !important; }
.bati-shell-on .elementor-widget.bs-legacy-title + .elementor-widget-heading .elementor-heading-title { color: #fff !important; text-shadow: 0 1px 3px rgba(0, 0, 0, .6); }

/* 404 (theme template): same title, button, search language. */
body.bati-shell-on.error404 { font-family: 'Assistant', 'Segoe UI', Arial, sans-serif; color: #22282F; }
body.bati-shell-on.error404 .error-title { font-family: inherit; color: #182B3A; font-size: clamp(26px, 3.2vw, 36px); font-weight: 800; }
body.bati-shell-on.error404 .error-text { font-family: inherit; color: #22282F; font-size: 17px; }
body.bati-shell-on.error404 .error-btn, body.bati-shell-on.error404 .error-btn.button {
	display: inline-flex; align-items: center; justify-content: center; min-height: 48px; padding: 12px 26px; border: 2px solid #B85A0E; border-radius: 24px;
	background: #B85A0E; color: #fff; font: 700 16px/1.2 'Assistant', 'Segoe UI', Arial, sans-serif; letter-spacing: 0; text-transform: none;
}
body.bati-shell-on.error404 .error-btn:hover, body.bati-shell-on.error404 .error-btn:focus-visible { background: #954809; border-color: #954809; color: #fff; }
body.bati-shell-on.error404 input[type="search"], body.bati-shell-on.error404 .searchform input { border: 1px solid #C9CFD5; border-radius: 10px; min-height: 48px; font-size: 16px; }
