.elementor-kit-40{--e-global-color-primary:#173055;--e-global-color-secondary:#13A49C;--e-global-color-text:#737373;--e-global-color-accent:#E58106;--e-global-color-308e809:#FFFFFF;--e-global-color-9eaa092:#FFFFFF00;--e-global-color-a954db2:#E58106;--e-global-color-651faef:#FDF9EB;--e-global-color-2db06a9:#8FCED0;--e-global-color-2d69694:#3F2791;--e-global-color-bd8f609:#F4D35E;--e-global-typography-primary-font-family:"Fredoka";--e-global-typography-primary-font-size:clamp(2.0625rem, 1.6223rem + 1.9565vw, 3.1875rem);--e-global-typography-primary-font-weight:600;--e-global-typography-primary-text-transform:capitalize;--e-global-typography-primary-line-height:1.15em;--e-global-typography-primary-letter-spacing:0px;--e-global-typography-secondary-font-family:"Fredoka";--e-global-typography-secondary-font-size:clamp(1.75rem, 1.4321rem + 1.413vw, 2.5625rem);--e-global-typography-secondary-font-weight:600;--e-global-typography-secondary-line-height:1.15em;--e-global-typography-secondary-letter-spacing:0px;--e-global-typography-text-font-family:"Nunito";--e-global-typography-text-font-size:clamp(0.9375rem, 0.8886rem + 0.2174vw, 1.0625rem);--e-global-typography-text-font-weight:500;--e-global-typography-text-line-height:1.62em;--e-global-typography-text-letter-spacing:0px;--e-global-typography-accent-font-family:"Nunito";--e-global-typography-accent-font-size:clamp(0.875rem, 0.8261rem + 0.2174vw, 1rem);--e-global-typography-accent-font-weight:800;--e-global-typography-accent-text-transform:capitalize;--e-global-typography-accent-line-height:1.2em;--e-global-typography-accent-letter-spacing:0px;--e-global-typography-b2ce6af-font-family:"Nunito";--e-global-typography-b2ce6af-font-size:clamp(1rem, 0.9022rem + 0.4348vw, 1.25rem);--e-global-typography-b2ce6af-font-weight:600;--e-global-typography-b2ce6af-line-height:1.45em;--e-global-typography-b2ce6af-letter-spacing:0px;--e-global-typography-69c152f-font-family:"Nunito";--e-global-typography-69c152f-font-size:clamp(0.8125rem, 0.7636rem + 0.2174vw, 0.9375rem);--e-global-typography-69c152f-font-weight:500;--e-global-typography-69c152f-line-height:1.6em;--e-global-typography-69c152f-letter-spacing:0px;--e-global-typography-520c191-font-family:"Nunito";--e-global-typography-520c191-font-size:clamp(0.9375rem, 0.8886rem + 0.2174vw, 1.0625rem);--e-global-typography-520c191-font-weight:700;--e-global-typography-520c191-text-transform:none;--e-global-typography-520c191-line-height:1.3em;--e-global-typography-520c191-letter-spacing:0px;--e-global-typography-583e54c-font-family:"Fredoka";--e-global-typography-583e54c-font-size:clamp(2.0625rem, 1.6223rem + 1.9565vw, 3.1875rem);--e-global-typography-583e54c-font-weight:600;--e-global-typography-583e54c-text-transform:capitalize;--e-global-typography-583e54c-line-height:1.15em;--e-global-typography-583e54c-letter-spacing:0px;--e-global-typography-5d167aa-font-family:"Fredoka";--e-global-typography-5d167aa-font-size:clamp(1.75rem, 1.4321rem + 1.413vw, 2.5625rem);--e-global-typography-5d167aa-font-weight:600;--e-global-typography-5d167aa-line-height:1.15em;--e-global-typography-5d167aa-letter-spacing:0px;--e-global-typography-d3dae9a-font-family:"Fredoka";--e-global-typography-d3dae9a-font-size:clamp(1.5rem, 1.2799rem + 0.9783vw, 2.0625rem);--e-global-typography-d3dae9a-font-weight:600;--e-global-typography-d3dae9a-line-height:1.15em;--e-global-typography-d3dae9a-letter-spacing:0px;--e-global-typography-83682a1-font-family:"Fredoka";--e-global-typography-83682a1-font-size:clamp(1.25rem, 1.1033rem + 0.6522vw, 1.625rem);--e-global-typography-83682a1-font-weight:600;--e-global-typography-83682a1-line-height:1.2em;--e-global-typography-83682a1-letter-spacing:0px;--e-global-typography-7044a64-font-family:"Fredoka";--e-global-typography-7044a64-font-size:clamp(1.0625rem, 0.9647rem + 0.4348vw, 1.3125rem);--e-global-typography-7044a64-font-weight:600;--e-global-typography-7044a64-line-height:1.3em;--e-global-typography-7044a64-letter-spacing:0px;--e-global-typography-84ca66e-font-family:"Fuzzy Bubbles";--e-global-typography-84ca66e-font-size:clamp(0.9375rem, 0.8886rem + 0.2174vw, 1.0625rem);--e-global-typography-84ca66e-font-weight:700;--e-global-typography-84ca66e-text-transform:capitalize;--e-global-typography-84ca66e-line-height:1em;--e-global-typography-84ca66e-letter-spacing:0.5px;--e-global-typography-112b6c4-font-family:"Nunito";--e-global-typography-112b6c4-font-size:clamp(0.75rem, 0.7011rem + 0.2174vw, 0.875rem);--e-global-typography-112b6c4-font-weight:500;--e-global-typography-112b6c4-line-height:1.5em;--e-global-typography-112b6c4-letter-spacing:0px;--e-global-typography-3715edf-font-family:"Fredoka";--e-global-typography-3715edf-font-size:clamp(2.4375rem, 1.8505rem + 2.6087vw, 3.9375rem);--e-global-typography-3715edf-font-weight:600;--e-global-typography-3715edf-text-transform:capitalize;--e-global-typography-3715edf-line-height:1.12em;--e-global-typography-3715edf-letter-spacing:-0.5px;--e-global-typography-f8733ea-font-family:"Fredoka";--e-global-typography-f8733ea-font-size:clamp(4rem, 3.144rem + 3.8043vw, 6.1875rem);--e-global-typography-f8733ea-font-weight:700;--e-global-typography-f8733ea-text-transform:capitalize;--e-global-typography-f8733ea-line-height:1em;--e-global-typography-f8733ea-letter-spacing:0.2px;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 );letter-spacing:var( --e-global-typography-text-letter-spacing );}.elementor-kit-40 button,.elementor-kit-40 input[type="button"],.elementor-kit-40 input[type="submit"],.elementor-kit-40 .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 );line-height:var( --e-global-typography-accent-line-height );letter-spacing:var( --e-global-typography-accent-letter-spacing );color:var( --e-global-color-308e809 );border-style:none;border-radius:30px 30px 30px 30px;}.elementor-kit-40 button:hover,.elementor-kit-40 button:focus,.elementor-kit-40 input[type="button"]:hover,.elementor-kit-40 input[type="button"]:focus,.elementor-kit-40 input[type="submit"]:hover,.elementor-kit-40 input[type="submit"]:focus,.elementor-kit-40 .elementor-button:hover,.elementor-kit-40 .elementor-button:focus{background-color:var( --e-global-color-bd8f609 );color:var( --e-global-color-primary );}.elementor-kit-40 e-page-transition{background-color:var( --e-global-color-651faef );}.elementor-kit-40 a{color:var( --e-global-color-accent );}.elementor-kit-40 a:hover{color:var( --e-global-color-primary );}.elementor-kit-40 h1{color:var( --e-global-color-primary );font-family:var( --e-global-typography-583e54c-font-family ), Sans-serif;font-size:var( --e-global-typography-583e54c-font-size );font-weight:var( --e-global-typography-583e54c-font-weight );text-transform:var( --e-global-typography-583e54c-text-transform );line-height:var( --e-global-typography-583e54c-line-height );letter-spacing:var( --e-global-typography-583e54c-letter-spacing );}.elementor-kit-40 h2{color:var( --e-global-color-primary );font-family:var( --e-global-typography-5d167aa-font-family ), Sans-serif;font-size:var( --e-global-typography-5d167aa-font-size );font-weight:var( --e-global-typography-5d167aa-font-weight );line-height:var( --e-global-typography-5d167aa-line-height );letter-spacing:var( --e-global-typography-5d167aa-letter-spacing );}.elementor-kit-40 h3{color:var( --e-global-color-primary );font-family:var( --e-global-typography-d3dae9a-font-family ), Sans-serif;font-size:var( --e-global-typography-d3dae9a-font-size );font-weight:var( --e-global-typography-d3dae9a-font-weight );line-height:var( --e-global-typography-d3dae9a-line-height );letter-spacing:var( --e-global-typography-d3dae9a-letter-spacing );}.elementor-kit-40 h4{color:var( --e-global-color-primary );font-family:var( --e-global-typography-83682a1-font-family ), Sans-serif;font-size:var( --e-global-typography-83682a1-font-size );font-weight:var( --e-global-typography-83682a1-font-weight );line-height:var( --e-global-typography-83682a1-line-height );letter-spacing:var( --e-global-typography-83682a1-letter-spacing );}.elementor-kit-40 h5{color:var( --e-global-color-primary );font-family:var( --e-global-typography-7044a64-font-family ), Sans-serif;font-size:var( --e-global-typography-7044a64-font-size );font-weight:var( --e-global-typography-7044a64-font-weight );line-height:var( --e-global-typography-7044a64-line-height );letter-spacing:var( --e-global-typography-7044a64-letter-spacing );}.elementor-kit-40 h6{color:var( --e-global-color-primary );font-family:var( --e-global-typography-84ca66e-font-family ), Sans-serif;font-size:var( --e-global-typography-84ca66e-font-size );font-weight:var( --e-global-typography-84ca66e-font-weight );text-transform:var( --e-global-typography-84ca66e-text-transform );line-height:var( --e-global-typography-84ca66e-line-height );letter-spacing:var( --e-global-typography-84ca66e-letter-spacing );}.elementor-kit-40 label{color:var( --e-global-color-primary );font-family:"Figtree", Sans-serif;font-size:clamp(0.875rem, 0.8261rem + 0.2174vw, 1rem);font-weight:500;text-transform:capitalize;line-height:1.5em;}.elementor-kit-40 input:not([type="button"]):not([type="submit"]),.elementor-kit-40 textarea,.elementor-kit-40 .elementor-field-textual{font-family:"Inter", Sans-serif;font-size:clamp(0.875rem, 0.8261rem + 0.2174vw, 1rem);font-weight:400;line-height:1.3em;color:var( --e-global-color-text );background-color:var( --e-global-color-308e809 );border-style:solid;border-width:1px 1px 1px 1px;border-color:var( --e-global-color-a954db2 );border-radius:0px 0px 0px 0px;}.elementor-kit-40 input:focus:not([type="button"]):not([type="submit"]),.elementor-kit-40 textarea:focus,.elementor-kit-40 .elementor-field-textual:focus{color:var( --e-global-color-text );background-color:var( --e-global-color-308e809 );border-style:solid;border-width:1px 1px 1px 1px;border-color:var( --e-global-color-accent );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1280px;}.e-con{--container-max-width:1280px;}.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:1850px){.elementor-kit-40{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );}.elementor-kit-40 h1{font-size:var( --e-global-typography-583e54c-font-size );line-height:var( --e-global-typography-583e54c-line-height );letter-spacing:var( --e-global-typography-583e54c-letter-spacing );}.elementor-kit-40 h2{font-size:var( --e-global-typography-5d167aa-font-size );line-height:var( --e-global-typography-5d167aa-line-height );letter-spacing:var( --e-global-typography-5d167aa-letter-spacing );}.elementor-kit-40 h3{font-size:var( --e-global-typography-d3dae9a-font-size );line-height:var( --e-global-typography-d3dae9a-line-height );letter-spacing:var( --e-global-typography-d3dae9a-letter-spacing );}.elementor-kit-40 h4{font-size:var( --e-global-typography-83682a1-font-size );line-height:var( --e-global-typography-83682a1-line-height );letter-spacing:var( --e-global-typography-83682a1-letter-spacing );}.elementor-kit-40 h5{font-size:var( --e-global-typography-7044a64-font-size );line-height:var( --e-global-typography-7044a64-line-height );letter-spacing:var( --e-global-typography-7044a64-letter-spacing );}.elementor-kit-40 h6{font-size:var( --e-global-typography-84ca66e-font-size );line-height:var( --e-global-typography-84ca66e-line-height );letter-spacing:var( --e-global-typography-84ca66e-letter-spacing );}.elementor-kit-40 button,.elementor-kit-40 input[type="button"],.elementor-kit-40 input[type="submit"],.elementor-kit-40 .elementor-button{font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );letter-spacing:var( --e-global-typography-accent-letter-spacing );}}@media(max-width:1024px){.elementor-kit-40{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );}.elementor-kit-40 h1{font-size:var( --e-global-typography-583e54c-font-size );line-height:var( --e-global-typography-583e54c-line-height );letter-spacing:var( --e-global-typography-583e54c-letter-spacing );}.elementor-kit-40 h2{font-size:var( --e-global-typography-5d167aa-font-size );line-height:var( --e-global-typography-5d167aa-line-height );letter-spacing:var( --e-global-typography-5d167aa-letter-spacing );}.elementor-kit-40 h3{font-size:var( --e-global-typography-d3dae9a-font-size );line-height:var( --e-global-typography-d3dae9a-line-height );letter-spacing:var( --e-global-typography-d3dae9a-letter-spacing );}.elementor-kit-40 h4{font-size:var( --e-global-typography-83682a1-font-size );line-height:var( --e-global-typography-83682a1-line-height );letter-spacing:var( --e-global-typography-83682a1-letter-spacing );}.elementor-kit-40 h5{font-size:var( --e-global-typography-7044a64-font-size );line-height:var( --e-global-typography-7044a64-line-height );letter-spacing:var( --e-global-typography-7044a64-letter-spacing );}.elementor-kit-40 h6{font-size:var( --e-global-typography-84ca66e-font-size );line-height:var( --e-global-typography-84ca66e-line-height );letter-spacing:var( --e-global-typography-84ca66e-letter-spacing );}.elementor-kit-40 button,.elementor-kit-40 input[type="button"],.elementor-kit-40 input[type="submit"],.elementor-kit-40 .elementor-button{font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );letter-spacing:var( --e-global-typography-accent-letter-spacing );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-kit-40{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );}.elementor-kit-40 h1{font-size:var( --e-global-typography-583e54c-font-size );line-height:var( --e-global-typography-583e54c-line-height );letter-spacing:var( --e-global-typography-583e54c-letter-spacing );}.elementor-kit-40 h2{font-size:var( --e-global-typography-5d167aa-font-size );line-height:var( --e-global-typography-5d167aa-line-height );letter-spacing:var( --e-global-typography-5d167aa-letter-spacing );}.elementor-kit-40 h3{font-size:var( --e-global-typography-d3dae9a-font-size );line-height:var( --e-global-typography-d3dae9a-line-height );letter-spacing:var( --e-global-typography-d3dae9a-letter-spacing );}.elementor-kit-40 h4{font-size:var( --e-global-typography-83682a1-font-size );line-height:var( --e-global-typography-83682a1-line-height );letter-spacing:var( --e-global-typography-83682a1-letter-spacing );}.elementor-kit-40 h5{font-size:var( --e-global-typography-7044a64-font-size );line-height:var( --e-global-typography-7044a64-line-height );letter-spacing:var( --e-global-typography-7044a64-letter-spacing );}.elementor-kit-40 h6{font-size:var( --e-global-typography-84ca66e-font-size );line-height:var( --e-global-typography-84ca66e-line-height );letter-spacing:var( --e-global-typography-84ca66e-letter-spacing );}.elementor-kit-40 button,.elementor-kit-40 input[type="button"],.elementor-kit-40 input[type="submit"],.elementor-kit-40 .elementor-button{font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );letter-spacing:var( --e-global-typography-accent-letter-spacing );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}
/* Start custom CSS *//* Fix: the CTA card's internal layout (heading/text/Let's talk/Follow/button) must always stack vertically — its atomic per-element direction setting doesn't save on this Theme Builder Single Post template (Elementor bug), so it falls back to the element's row default at desktop widths, splitting the button into its own column and overlapping the enquiry form. */
.e-flexbox-base:has(> .elementor-widget-contact) {
  flex-direction: column !important;
}

/* Fix: the outer split between the CTA card and the enquiry form should stack only on tablet/mobile (desktop keeps its intended 2-column layout) — same underlying save bug as above. */
@media (max-width: 1024px) {
  .e-flexbox-base:has(> .e-flexbox-base > .elementor-widget-contact) {
    flex-direction: column !important;
  }
}

/* Fix: same issue on the form side of this CTA — the "Send us an enquiry" heading and the form widget must always stack vertically instead of defaulting to a row, which was overlapping them at desktop widths. */
.e-flexbox-base:has(> .elementor-widget-eael-contact-form-7) {
  flex-direction: column !important;
}

/* Style default blockquotes (blog posts, Foster Parent Stories, etc.) to match the site's teal pull-quote style. Excludes the existing Elementor Blockquote widget (.elementor-blockquote), which already has its own matching design. */
blockquote:not(.elementor-blockquote) {
	border-left: 7px solid #13A49C;
	padding: 0 0 0 20px;
	margin: 24px 0;
	color: rgb(63, 68, 75);
	font-style: normal;
}
blockquote:not(.elementor-blockquote) p {
	font-size: 18px;
	line-height: 1.5;
	margin: 0;
}

/* Center main page/post H1 titles on mobile, keep body copy left-aligned */
@media (max-width: 767px) {
	h1.elementor-heading-title {
		text-align: center;
	}
}

/* Fix: mobile dropdown nav menu's positioning context is the 70px-wide hamburger icon box (not the page), so it was rendering narrow/mispositioned with page content bleeding through around it. Force it to escape that box and dock full-width under the header instead. */
@media (max-width: 767px) {
	.elementor-nav-menu--dropdown.elementor-nav-menu__container {
		position: fixed !important;
		top: 65px !important;
		left: 0 !important;
		right: 0 !important;
		width: 100% !important;
	}
}
@media (min-width: 768px) and (max-width: 1024px) {
	.elementor-nav-menu--dropdown.elementor-nav-menu__container {
		position: fixed !important;
		top: 85px !important;
		left: 0 !important;
		right: 0 !important;
		width: 100% !important;
	}
}

/* Fix: some heading widgets have Elementor's "mobile width: initial" setting, which shrinks the widget to auto/content-width on mobile instead of full width. This defeats our centered text-align rule above, since centering text inside a box that's already shrunk to fit its own widest line has no visible effect, making the heading look left-anchored instead of centered. Force these widgets to full width on mobile so centering actually shows. */
@media (max-width: 767px) {
	.elementor-widget-mobile__width-initial:has(h1.elementor-heading-title) {
		width: 100% !important;
	}
}

/* Header redesign: logo sits far left instead of appearing centered on wide screens (the header row itself is already full-width, but its own 8% side padding grows huge on wide monitors, e.g. ~150px+ each side on a 1920px screen, pushing the logo inward). Replace with a small, capped gutter so the logo sits close to the true edge like a typical modern header. */
.elementor-element-560c9669 {
	--padding-left: clamp(20px, 3vw, 48px) !important;
	--padding-right: clamp(20px, 3vw, 48px) !important;
}
/* When the header collapses to the hamburger icon (Elementor's standard tablet breakpoint, 1024px and below), put the icon after the Contact Us button (to its right) instead of in the nav's old position (to its left), matching the reference layout where the CTA stays rightmost and the menu icon sits beyond it. */
@media (max-width: 1024px) {
	.elementor-element-c414af4 {
		order: 2;
	}
	.elementor-element-1cacd25e {
		order: 1;
	}
}
/* Header redesign (part 2): the inner content group (logo + nav/button) was centered as a fixed-width block within the row rather than stretching to fill it, which is why reducing the outer padding above didn't actually move the logo closer to the edge. Stretch it full width and push its two children (logo, nav+button group) to opposite ends, so the logo sits at the true left edge and the nav/CTA sit at the true right edge, regardless of screen width. */
.elementor-element-560c9669 .e-con-inner {
	width: 100% !important;
	max-width: 100% !important;
	margin-left: 0 !important;
}
/* The nav+button group should sit at its own natural width, pushed to the far right by margin-left:auto, rather than being force-stretched to fill the row (which was causing it to overflow). This keeps the nav items and Contact Us button clustered together on the right, with the gap living between the logo and this group, not inside it. */
.elementor-element-37b47003 {
	max-width: none !important;
	width: auto !important;
	flex-grow: 0 !important;
	margin-left: auto !important;
}/* End custom CSS */