.section-enterwapp[data-node].ralco-rich-text {
	--ralco-red: rgb(185, 27, 33);
	--ralco-red-2: rgb(221, 51, 51);
	--ralco-muted: rgb(68, 68, 68);
	--ralco-offwhite: rgb(242, 242, 242);
	--ralco-grey: rgb(237, 237, 237);
	--ralco-dark: rgb(26, 26, 26);
	font-family: 'Lato', 'Helvetica Neue', Helvetica, Arial, sans-serif;
	font-size: 15px;
	font-weight: 300;
	line-height: 23px;
}

.section-enterwapp[data-node].ralco-rich-text *,
.section-enterwapp[data-node].ralco-rich-text *::before,
.section-enterwapp[data-node].ralco-rich-text *::after {
	box-sizing: border-box;
	font-family: inherit;
}

.section-enterwapp[data-node].ralco-rich-text .ralco-wrap {
	width: 100%;
	max-width: 1245px;
	margin: 0 auto;
	padding: 0;
}


html.ralco-js .section-enterwapp[data-node].ralco-rich-text .ralco-anim[data-anim="fade-up"] {
    opacity: 0;
    transform: translateY(30px);
    transition: opacity 0.55s ease-out, transform 0.55s ease-out;
}

html.ralco-js .section-enterwapp[data-node].ralco-rich-text .ralco-anim.is-in[data-anim="fade-up"] {
    opacity: 1;
    transform: translateY(0);
}

.enquiry-form-fire-wrap {
    width: 100%;
    padding: 40px;
    background: rgb(237, 237, 237);
}

.enquiry-form-fire-wrap * {
    box-sizing: border-box;
}

.enquiry-form-fire-title {
    margin: 0 0 28px;
    font-size: 30px;
    font-weight: 400;
    line-height: 1.2;
    color: #000000;
}

#formEnquiry-1 {
    width: 100%;
}

#formEnquiry-1 .form-row {
    width: 100%;
    margin-bottom: 24px;
}

#formEnquiry-1 .form-row.double {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 11px;
}

#formEnquiry-1 .form-field {
    width: 100%;
}

#formEnquiry-1 label {
    display: block;
    margin: 0 0 7px;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.4;
    color: #000000;
}

#formEnquiry-1 label .required {
    color: rgb(185, 27, 33);
}

#formEnquiry-1 input,
#formEnquiry-1 textarea,
#formEnquiry-1 select {
    display: block;
    width: 100%;
    border: 1px solid #cccccc;
    border-radius: 0;
    background: #ffffff;
    color: #000000;
    font-family: inherit;
    font-size: 16px;
    outline: none;
    transition: border-color 0.25s ease, box-shadow 0.25s ease;
}

#formEnquiry-1 input {
    height: 42px;
    padding: 8px 12px;
}

#formEnquiry-1 textarea {
    min-height: 138px;
    padding: 12px;
    resize: vertical;
}

#formEnquiry-1 input:focus,
#formEnquiry-1 textarea:focus,
#formEnquiry-1 select:focus {
    border-color: rgb(185, 27, 33);
    box-shadow: 0 0 0 2px rgba(185, 27, 33, 0.08);
}

#formEnquiry-1 .form-submit-row {
    margin-bottom: 0;
}

#formEnquiry-1 .custom-btn,
#formEnquiry-1 .custom-btn .custom-btn-content {
    color: #ffffff;
}

#formEnquiry-1 .custom-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    min-height: 48px;
    padding: 12px 24px;
    border: 0;
    border-radius: 4px;
    background: rgb(185, 27, 33);
    font-family: inherit;
    font-size: 16px;
    font-weight: 600;
    line-height: 1.2;
    text-align: center;
    cursor: pointer;
    transition: background-color 0.25s ease;
}

#formEnquiry-1 .custom-btn:hover,
#formEnquiry-1 .custom-btn:hover .custom-btn-content {
    color: #ffffff;
}

#formEnquiry-1 .custom-btn:hover {
    background: rgb(221, 51, 51);
}

#formEnquiry-1 .custom-btn:disabled {
    cursor: wait;
    opacity: 0.75;
}

@media (max-width: 767px) {
    .enquiry-form-fire-wrap {
        padding: 32px 20px;
    }

    .enquiry-form-fire-title {
        margin-bottom: 24px;
        font-size: 26px;
    }

    #formEnquiry-1 .form-row.double {
        grid-template-columns: 1fr;
        gap: 20px;
    }

    #formEnquiry-1 .form-row {
        margin-bottom: 20px;
    }

    #formEnquiry-1 textarea {
        min-height: 150px;
    }
}

@media (max-width: 1425px) {
	.section-enterwapp[data-node].ralco-rich-text .ralco-wrap {
		max-width: calc(100vw - 180px);
	}
}

@media (max-width: 999px) {
	.section-enterwapp[data-node].ralco-rich-text .ralco-wrap {
		max-width: 600px;
	}
}

@media (max-width: 767px) {
	.section-enterwapp[data-node].ralco-rich-text .ralco-wrap {
		max-width: 320px;
	}
}

.ralco-rt-media.ralco-anim {
  margin-top: 20px;
}


.fl-module-ralco-rich-text > .fl-module-content {
	margin: 0;
}

.fl-row:has(.fl-module-ralco-rich-text) > .fl-row-content-wrap {
	padding: 0;
}

.fl-col:has(> .fl-col-content > .fl-module-ralco-rich-text) > .fl-col-content {
	padding-left: 0;
	padding-right: 0;
}

.fl-col-group > .fl-col:only-child:has(> .fl-col-content > .fl-module-ralco-rich-text) {
	width: 100%;
	max-width: 100%;
}

.fl-col-group:has(> .fl-col > .fl-col-content > .fl-module-ralco-rich-text) {
	display: flex;
	flex-wrap: wrap;
	width: round(down, 100%, 2px);
	margin-left: 0;
	margin-right: auto;
}

.fl-col-group:has(> .fl-col > .fl-col-content > .fl-module-ralco-rich-text) > .fl-col {
	flex: 1 1 0;
	width: auto;
	max-width: none;
}

@media (max-width: 999px) {
	.fl-col-group:has(> .fl-col > .fl-col-content > .fl-module-ralco-rich-text) > .fl-col {
		flex: 0 0 100%;
	}
}

.fl-content:has(.fl-module-ralco-rich-text) {
	width: 100%;
	max-width: 100%;
	flex: 0 0 100%;
}

.fl-page-content:has(.fl-module-ralco-rich-text) .container,
.fl-page-content:has(.fl-module-ralco-rich-text) .fl-content,
.fl-page-content:has(.fl-module-ralco-rich-text) .fl-row-fixed-width,
.fl-page-content:has(.fl-module-ralco-rich-text) .fl-row-content.fl-row-fixed-width {
	width: 100%;
	max-width: 100%;
	padding-left: 0;
	padding-right: 0;
}

.fl-page-content:has(.fl-module-ralco-rich-text) .container > .row {
	margin-left: 0;
	margin-right: 0;
}

.section-enterwapp[data-node].ralco-rich-text h1,
.section-enterwapp[data-node].ralco-rich-text h2,
.section-enterwapp[data-node].ralco-rich-text h3,
.section-enterwapp[data-node].ralco-rich-text h4,
.section-enterwapp[data-node].ralco-rich-text p,
.section-enterwapp[data-node].ralco-rich-text a,
.section-enterwapp[data-node].ralco-rich-text li,
.section-enterwapp[data-node].ralco-rich-text span,
.section-enterwapp[data-node].ralco-rich-text address,
.section-enterwapp[data-node].ralco-rich-text strong,
.section-enterwapp[data-node].ralco-rich-text figure {
	font-family: 'Lato', 'Helvetica Neue', Helvetica, Arial, sans-serif;
}

.section-enterwapp[data-node].ralco-rich-text {
	background: #ffffff;
}

.section-enterwapp[data-node].ralco-rich-text .ralco-rt-wrap {
	padding-top: 50px;
	padding-bottom: 30px;
}

.section-enterwapp[data-node].ralco-rich-text .ralco-rt-center {
	text-align: center;
}

/* reference: h2 48/700 left at the container edge, h4 20/400 */
.section-enterwapp[data-node].ralco-rich-text .ralco-rt-h2 {
	font-size: 48px;
	line-height: 62px;
	font-weight: 700;
	color: rgb(0, 0, 0);
	margin: 0 0 7px;
}

.section-enterwapp[data-node].ralco-rich-text .ralco-rt-h4 {
	font-size: 20px;
	line-height: 30px;
	font-weight: 400;
	color: var(--ralco-muted);
	margin: 0 0 18px;
}

.section-enterwapp[data-node].ralco-rich-text .ralco-rt-body {
	font-size: 15px;
	line-height: 23px;
	font-weight: 300;
	color: var(--ralco-muted);
	max-width: 860px;
}

.section-enterwapp[data-node].ralco-rich-text .ralco-rt-body p {
	margin: 0 0 18px;
}

.section-enterwapp[data-node].ralco-rich-text .ralco-rt-body p:last-child {
	margin-bottom: 0;
}

.section-enterwapp[data-node].ralco-rich-text .ralco-rt-ul {
	list-style: none;
	margin: 18px 0 0;
	padding: 0;
}

/* Bullet lists fade up one item after another, as the reference does with
   nectar-fancy-ul (data-animation="true", delay 1, each <li> starting at
   opacity 0). Gated on .ralco-js, and the site-wide observer's backstop means
   a missed trigger still reveals the list - on the reference itself these
   items are stuck at opacity 0 and never appear at all. */
html.ralco-js .section-enterwapp[data-node].ralco-rich-text .ralco-rt-ul.ralco-anim > li {
	opacity: 0;
	transform: translateY(12px);
	transition: opacity 0.6s ease-out, transform 0.6s cubic-bezier(0.25, 1, 0.2, 1);
}

html.ralco-js .section-enterwapp[data-node].ralco-rich-text .ralco-rt-ul.ralco-anim.is-in > li {
	opacity: 1;
	transform: none;
}

.section-enterwapp[data-node].ralco-rich-text .ralco-rt-ul li {
	position: relative;
	padding-left: 18px;
	font-size: 15px;
	line-height: 26px;
	font-weight: 300;
	color: var(--ralco-muted);
}

.section-enterwapp[data-node].ralco-rich-text .ralco-rt-ul li::before {
	content: '';
	position: absolute;
	top: 11px;
	left: 0;
	width: 6px;
	height: 6px;
	background: var(--ralco-red);
}

.section-enterwapp[data-node].ralco-rich-text .ralco-rt-btn {
	display: inline-block;
	margin-top: 24px;
	background-color: var(--ralco-red);
	color: #ffffff;
	font-size: 16px;
	font-weight: 700;
	line-height: 1;
	text-decoration: none;
	padding: 14px 22px;
	border-radius: 4px;
	transition: background-color 0.45s cubic-bezier(0.25, 1, 0.33, 1);
}

.section-enterwapp[data-node].ralco-rich-text .ralco-rt-btn:hover {
	background-color: var(--ralco-red-2);
	color: #ffffff;
}

html.ralco-js .section-enterwapp[data-node].ralco-rich-text .ralco-anim[data-anim="fade-in"] {
	opacity: 0;
	transition: opacity 0.55s ease-out;
}

html.ralco-js .section-enterwapp[data-node].ralco-rich-text .ralco-anim[data-anim="fade-in-from-left"] {
	opacity: 0;
	transform: translateX(-75px);
	transition: opacity 0.55s ease-out, transform 0.55s ease-out;
}

html.ralco-js .section-enterwapp[data-node].ralco-rich-text .ralco-anim[data-anim="fade-up"] {
	opacity: 0;
	transform: translateY(30px);
	transition: opacity 0.55s ease-out, transform 0.55s ease-out;
}

html.ralco-js .section-enterwapp[data-node].ralco-rich-text .ralco-anim[data-anim="reveal-from-top"] {
	opacity: 0;
	transform: translateY(-101%);
	transition: opacity 0.55s ease-out, transform 0.55s ease-out;
}

/* [data-anim] is on the selector deliberately: it lifts this above the four
   resting rules, which each carry an attribute selector of their own. Without
   it the two sides tie on specificity and the outcome depends on file order -
   which the separately cached copy of this stylesheet does not guarantee. */
html.ralco-js .section-enterwapp[data-node].ralco-rich-text .ralco-anim.is-in[data-anim] {
	opacity: 1;
	transform: none;
}

@media (prefers-reduced-motion: reduce) {
	html.ralco-js .section-enterwapp[data-node].ralco-rich-text .ralco-anim[data-anim] {
		opacity: 1;
		transform: none;
		transition: none;
	}
}

.section-enterwapp[data-node].ralco-rich-text .ralco-rt-tl {
	list-style: none;
	margin: 30px auto 0;
	padding: 26px 0;
	position: relative;
	max-width: 1150px;
}

/* one element draws the line plus the dot cap the reference puts at each end */
.section-enterwapp[data-node].ralco-rich-text .ralco-rt-tl::before {
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	left: 50%;
	width: 11px;
	margin-left: -5.5px;
	background-image:
		linear-gradient(#000000, #000000),
		radial-gradient(circle at 50% 50%, #000000 5.5px, rgba(0, 0, 0, 0) 5.5px),
		radial-gradient(circle at 50% 50%, #000000 5.5px, rgba(0, 0, 0, 0) 5.5px);
	background-size: 3px 100%, 11px 11px, 11px 11px;
	background-position: center top, center top, center bottom;
	background-repeat: no-repeat;
}

.section-enterwapp[data-node].ralco-rich-text .ralco-rt-tl-item {
	display: grid;
	grid-template-columns: 1fr 1fr;
	align-items: start;
	position: relative;
	padding: 0 0 38px 0;
}

.section-enterwapp[data-node].ralco-rich-text .ralco-rt-tl-date {
	font-size: 21px;
	line-height: 30px;
	font-weight: 400;
}

.section-enterwapp[data-node].ralco-rich-text .ralco-rt-tl-text {
	font-size: 15px;
	line-height: 23px;
	font-weight: 400;
	text-transform: capitalize;
}

/* odd row: date left of the line, text right of it */
.section-enterwapp[data-node].ralco-rich-text .ralco-rt-tl-item.is-odd > .ralco-rt-tl-date {
	grid-column: 1;
	text-align: right;
	padding-right: 34px;
}

.section-enterwapp[data-node].ralco-rich-text .ralco-rt-tl-item.is-odd > .ralco-rt-tl-text {
	grid-column: 2;
	text-align: left;
	padding-left: 42px;
}

/* even row: text left of the line, date right of it */
.section-enterwapp[data-node].ralco-rich-text .ralco-rt-tl-item.is-even > .ralco-rt-tl-text {
	grid-column: 1;
	text-align: right;
	padding-right: 42px;
}

.section-enterwapp[data-node].ralco-rich-text .ralco-rt-tl-item.is-even > .ralco-rt-tl-date {
	grid-column: 2;
	text-align: left;
	padding-left: 34px;
}

.section-enterwapp[data-node].ralco-rich-text .ralco-rt-tl-dot {
	position: absolute;
	left: 50%;
	top: 5px;
	width: 20px;
	height: 20px;
	margin-left: -10px;
	border-radius: 50%;
}

/* the reference alternates the accent: first story red, second black */
.section-enterwapp[data-node].ralco-rich-text .ralco-rt-tl-item.is-odd > .ralco-rt-tl-dot { background: rgb(221, 51, 51); }
.section-enterwapp[data-node].ralco-rich-text .ralco-rt-tl-item.is-even > .ralco-rt-tl-dot { background: rgb(0, 0, 0); }
.section-enterwapp[data-node].ralco-rich-text .ralco-rt-tl-item.is-odd .ralco-rt-tl-date,
.section-enterwapp[data-node].ralco-rich-text .ralco-rt-tl-item.is-odd .ralco-rt-tl-text { color: rgb(221, 51, 51); }
.section-enterwapp[data-node].ralco-rich-text .ralco-rt-tl-item.is-even .ralco-rt-tl-date,
.section-enterwapp[data-node].ralco-rich-text .ralco-rt-tl-item.is-even .ralco-rt-tl-text { color: rgb(0, 0, 0); }

/* the heading above a timeline is centred and red on the reference */
.section-enterwapp[data-node].ralco-rich-text .ralco-rt-wrap:has(.ralco-rt-tl) .ralco-rt-h2 {
	color: rgb(221, 51, 51);
	text-align: center;
}

/* ---- banded / carded / media layouts -------------------------------- */
.section-enterwapp[data-node].ralco-rich-text .ralco-rt-band {
	background-size: cover;
	background-position: center center;
	background-repeat: no-repeat;
	scroll-margin-top: 110px;
}

.section-enterwapp[data-node].ralco-rich-text .ralco-rt-band-grey {
	background-color: rgb(242, 242, 242);
}

/* two-up: the picture takes 53.9% and the copy 48.92%, with the copy lapped
   over the picture by 3.69% - the same geometry as the landing About row */
.section-enterwapp[data-node].ralco-rich-text .ralco-rt-l-media-left,
.section-enterwapp[data-node].ralco-rich-text .ralco-rt-l-media-right {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
}

.section-enterwapp[data-node].ralco-rich-text .ralco-rt-l-media-left .ralco-rt-media,
.section-enterwapp[data-node].ralco-rich-text .ralco-rt-l-media-right .ralco-rt-media {
	position: relative;
	flex: 0 0 53.9%;
	max-width: 53.9%;
}

.section-enterwapp[data-node].ralco-rich-text .ralco-rt-l-media-left .ralco-rt-col,
.section-enterwapp[data-node].ralco-rich-text .ralco-rt-l-media-right .ralco-rt-col {
	position: relative;
	flex: 0 0 48.92%;
	max-width: 48.92%;
	margin-left: -3.69%;
}

/* text first, picture second */
.section-enterwapp[data-node].ralco-rich-text .ralco-rt-l-media-right .ralco-rt-media { order: 2; margin-left: -3.69%; }
.section-enterwapp[data-node].ralco-rich-text .ralco-rt-l-media-right .ralco-rt-col { order: 1; margin-left: 0; }

.section-enterwapp[data-node].ralco-rich-text .ralco-rt-media img {
	display: block;
	width: 100%;
	height: auto;
}

/* the reference puts the copy on a white panel at 80% over the photo */
.section-enterwapp[data-node].ralco-rich-text .ralco-rt-carded .ralco-rt-col {
	background: rgba(255, 255, 255, 0.8);
	padding: min(50px, calc(4.01vw - 7px));
}

/* a carded block with no side image still sits in one half */
.section-enterwapp[data-node].ralco-rich-text .ralco-rt-l-full.ralco-rt-carded {
	display: flex;
}

.section-enterwapp[data-node].ralco-rich-text .ralco-rt-l-full.ralco-rt-carded .ralco-rt-col {
	flex: 0 0 48.92%;
	max-width: 48.92%;
}

/* dark wash over the section photo, with the copy reversed out */
.section-enterwapp[data-node].ralco-rich-text .ralco-rt-band-dark {
	position: relative;
}

.section-enterwapp[data-node].ralco-rich-text .ralco-rt-band-dark::before {
	content: "";
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	background: rgba(10, 10, 10, 0.8);
}

.section-enterwapp[data-node].ralco-rich-text .ralco-rt-band-dark > * {
	position: relative;
}

.section-enterwapp[data-node].ralco-rich-text .ralco-rt-band-dark .ralco-rt-h2,
.section-enterwapp[data-node].ralco-rich-text .ralco-rt-band-dark .ralco-rt-h4,
.section-enterwapp[data-node].ralco-rich-text .ralco-rt-band-dark .ralco-rt-body,
.section-enterwapp[data-node].ralco-rich-text .ralco-rt-band-dark .ralco-rt-ul li {
	color: #ffffff;
}

.section-enterwapp[data-node].ralco-rich-text .ralco-rt-media > form,
.section-enterwapp[data-node].ralco-rich-text .ralco-rt-media > div {
	width: 100%;
}

/* ---- contact form (rendered through the Side HTML field) ------------- */
.section-enterwapp[data-node].ralco-rich-text .ralco-form-card {
	background: rgba(255, 255, 255, 0.9);
	padding: min(50px, calc(4.01vw - 7px));
}

.section-enterwapp[data-node].ralco-rich-text .ralco-form-title {
	font-size: 30px;
	line-height: 40px;
	font-weight: 400;
	color: rgb(0, 0, 0);
	margin: 0 0 24px;
}

.section-enterwapp[data-node].ralco-rich-text .ralco-form-row {
	display: flex;
	gap: 10px;
	/* rows sit flush; the only space between them is the 6px each label puts
	   above its own field */
	margin-bottom: 0;
}

.section-enterwapp[data-node].ralco-rich-text .ralco-form-row label {
	flex: 1 1 0;
	display: block;
	font-size: 15px;
	line-height: 23px;
	font-weight: 300;
	color: rgb(0, 0, 0);
}

.section-enterwapp[data-node].ralco-rich-text .ralco-form-row label span {
	display: block;
	margin-bottom: 6px;
}

.section-enterwapp[data-node].ralco-rich-text .ralco-form-row label em {
	font-style: normal;
	color: var(--ralco-red);
}

.section-enterwapp[data-node].ralco-rich-text .ralco-form input,
.section-enterwapp[data-node].ralco-rich-text .ralco-form textarea {
	display: block;
	width: 100%;
	padding: 8px 12px;
	font-family: inherit;
	font-size: 15px;
	line-height: 23px;
	font-weight: 300;
	color: rgb(0, 0, 0);
	background: #ffffff;
	border: 1px solid rgba(0, 0, 0, 0.18);
	border-radius: 0;
	transition: border-color 0.2s ease;
}

.section-enterwapp[data-node].ralco-rich-text .ralco-form input:focus,
.section-enterwapp[data-node].ralco-rich-text .ralco-form textarea:focus {
	outline: none;
	border-color: var(--ralco-red);
}

.section-enterwapp[data-node].ralco-rich-text .ralco-form input.is-bad,
.section-enterwapp[data-node].ralco-rich-text .ralco-form textarea.is-bad {
	border-color: var(--ralco-red);
	background: rgba(185, 27, 33, 0.04);
}

.section-enterwapp[data-node].ralco-rich-text .ralco-form textarea {
	resize: vertical;
	min-height: 138px;
}

.section-enterwapp[data-node].ralco-rich-text .ralco-form-note:empty { display: none; }

.section-enterwapp[data-node].ralco-rich-text .ralco-form-note {
	margin: 0 0 8px;
	font-size: 15px;
	line-height: 23px;
	font-weight: 300;
	color: var(--ralco-red);
}

.section-enterwapp[data-node].ralco-rich-text .ralco-form-submit {
	display: block;
	width: 100%;
	padding: 12px 20px;
	font-family: inherit;
	font-size: 16px;
	line-height: 24px;
	font-weight: 700;
	color: #ffffff;
	background: var(--ralco-red);
	border: 0;
	border-radius: 4px;
	cursor: pointer;
	transition: background-color 0.3s ease;
}

.section-enterwapp[data-node].ralco-rich-text .ralco-form-submit:hover,
.section-enterwapp[data-node].ralco-rich-text .ralco-form-submit:focus {
	background: var(--ralco-red-2);
}

/* ---- embedded map --------------------------------------------------- */
.section-enterwapp[data-node].ralco-rich-text .ralco-map {
	position: relative;
	width: 100%;
	height: 600px;
}

.section-enterwapp[data-node].ralco-rich-text .ralco-map iframe {
	display: block;
	width: 100%;
	height: 100%;
	border: 0;
}

/* ---- sub-heading variants, taken off the reference's About page ------ */
.section-enterwapp[data-node].ralco-rich-text .ralco-rt-sub-accent .ralco-rt-h4 {
	color: var(--ralco-red);
}

.section-enterwapp[data-node].ralco-rich-text .ralco-rt-subsz-small .ralco-rt-h4 { font-size: 20px; line-height: 34px; }
.section-enterwapp[data-node].ralco-rich-text .ralco-rt-subsz-medium .ralco-rt-h4 { font-size: 24px; line-height: 40px; }
.section-enterwapp[data-node].ralco-rich-text .ralco-rt-subsz-large .ralco-rt-h4 { font-size: 28px; line-height: 40px; }

/* a black sub-heading for use inside the HTML fields */
.section-enterwapp[data-node].ralco-rich-text .ralco-rt-sub {
	font-size: 20px;
	line-height: 34px;
	font-weight: 400;
	color: rgb(0, 0, 0);
	margin: 0 0 8px;
}

.section-enterwapp[data-node].ralco-rich-text .ralco-rt-sub + .ralco-rt-ul {
	margin-bottom: 24px;
}

/* the reference sets its body copy and lists in black, not grey */
.section-enterwapp[data-node].ralco-rich-text .ralco-rt-body,
.section-enterwapp[data-node].ralco-rich-text .ralco-rt-body p,
.section-enterwapp[data-node].ralco-rich-text .ralco-rt-ul li {
	color: rgb(0, 0, 0);
}

/* centred blocks sit in a 529 measure, as the Vision / Mission pair does */
.section-enterwapp[data-node].ralco-rich-text .ralco-rt-center .ralco-rt-col {
	max-width: 529px;
	margin-left: auto;
	margin-right: auto;
}

/* On a dark band the copy has to win against the black body rule above -
   that targets the paragraph directly, so inheriting white is not enough. */
.section-enterwapp[data-node].ralco-rich-text .ralco-rt-band-dark .ralco-rt-body,
.section-enterwapp[data-node].ralco-rich-text .ralco-rt-band-dark .ralco-rt-body p,
.section-enterwapp[data-node].ralco-rich-text .ralco-rt-band-dark .ralco-rt-body li {
	color: #ffffff;
}

/* Only the office names are red, and the reference uses pure #ff0000 here,
   not either brand red. The p-prefixed selector keeps this above the grouped
   rule even in a cached copy of the file. */
.section-enterwapp[data-node].ralco-rich-text .ralco-rt-band-dark .ralco-rt-body strong,
.section-enterwapp[data-node].ralco-rich-text .ralco-rt-band-dark .ralco-rt-body p strong {
	color: rgb(255, 0, 0);
}

.section-enterwapp[data-node].ralco-rich-text .ralco-rt-body strong {
	font-weight: 600;
}

/* the reference sets its email links in the brand red, not the theme blue */
.section-enterwapp[data-node].ralco-rich-text .ralco-rt-body a {
	color: var(--ralco-red);
	text-decoration: none;
}

.section-enterwapp[data-node].ralco-rich-text .ralco-rt-body a:hover,
.section-enterwapp[data-node].ralco-rich-text .ralco-rt-body a:focus {
	text-decoration: underline;
}

.section-enterwapp[data-node].ralco-rich-text .ralco-form-row label span {
	font-weight: 400;
}

/* two locations side by side, each captioned with its address */
.section-enterwapp[data-node].ralco-rich-text .ralco-maps {
	display: flex;
	flex-wrap: wrap;
	gap: 25px;
}

.section-enterwapp[data-node].ralco-rich-text .ralco-maps > figure {
	flex: 1 1 0;
	min-width: 280px;
	margin: 0;
}

.section-enterwapp[data-node].ralco-rich-text .ralco-maps figcaption {
	margin-top: 14px;
	font-size: 15px;
	line-height: 23px;
	font-weight: 300;
	color: rgb(0, 0, 0);
}

.section-enterwapp[data-node].ralco-rich-text .ralco-maps figcaption strong {
	display: block;
	font-weight: 600;
}

.section-enterwapp[data-node].ralco-rich-text .ralco-maps .ralco-map {
	height: 420px;
}

/* ---- 50 / 50 split: a cover panel beside the copy, as the Services page --- */
.section-enterwapp[data-node].ralco-rich-text .ralco-rt-l-split-left,
.section-enterwapp[data-node].ralco-rich-text .ralco-rt-l-split-right {
	display: flex;
	flex-wrap: wrap;
	align-items: stretch;
}

.section-enterwapp[data-node].ralco-rich-text .ralco-rt-l-split-left .ralco-rt-media,
.section-enterwapp[data-node].ralco-rich-text .ralco-rt-l-split-right .ralco-rt-media {
	flex: 0 0 50%;
	max-width: 50%;
}

.section-enterwapp[data-node].ralco-rich-text .ralco-rt-l-split-left .ralco-rt-col,
.section-enterwapp[data-node].ralco-rich-text .ralco-rt-l-split-right .ralco-rt-col {
	flex: 0 0 50%;
	max-width: 50%;
	display: flex;
	flex-direction: column;
	justify-content: center;
	padding: 25px;
}

.section-enterwapp[data-node].ralco-rich-text .ralco-rt-l-split-right .ralco-rt-media { order: 2; }
.section-enterwapp[data-node].ralco-rich-text .ralco-rt-l-split-right .ralco-rt-col { order: 1; }

/* the reference stacks these blocks 24px apart, not on the usual 50px of
   section padding, so the panels read as one run */
.section-enterwapp[data-node].ralco-rich-text .ralco-rt-wrap.ralco-rt-l-split-left,
.section-enterwapp[data-node].ralco-rich-text .ralco-rt-wrap.ralco-rt-l-split-right {
	padding-top: 12px;
	padding-bottom: 12px;
}

.section-enterwapp[data-node].ralco-rich-text .ralco-rt-shot {
	display: block;
	width: 100%;
	min-height: 300px;
	height: 100%;
	background-size: cover;
	background-position: center center;
	background-repeat: no-repeat;
}

/* the short red rule the reference sets under each service heading */
.section-enterwapp[data-node].ralco-rich-text .ralco-rt-rule {
	display: block;
	width: 75px;
	height: 2px;
	margin: 15px 0;
	background: var(--ralco-red);
}

.section-enterwapp[data-node].ralco-rich-text .ralco-rt-rule-full {
	display: block;
	width: 100%;
	height: 0;
	margin: 37px 0 54px;
	background: none;
	border-top: 1px solid rgba(0, 0, 0, 0.18);
}

.section-enterwapp[data-node].ralco-rich-text .ralco-rt-band-dark .ralco-rt-rule-full {
	border-top-color: rgb(255, 255, 255);
}

/* On the lapped media layouts the panel is pulled back over this column by
   3.69% of the row, so a 100%-wide rule disappears under it. The column is
   48.92% of the row, so the rule has to give up 3.69/48.92 = 7.54% of itself
   and stop exactly at the panel's left edge. Short copy never reaches that far,
   which is why only the rule showed the problem. 92.46% would stop the rule
   flush against the panel; the reference leaves 13px of air there, so 90.4%. */
.section-enterwapp[data-node].ralco-rich-text .ralco-rt-l-media-right .ralco-rt-rule-full {
	width: 90.4%;
}

.section-enterwapp[data-node].ralco-rich-text .ralco-rt-l-media-left .ralco-rt-rule-full {
	width: 90.4%;
	margin-left: 9.6%;
}

.section-enterwapp[data-node].ralco-rich-text .ralco-rt-subsz-xl .ralco-rt-h4 { font-size: 30px; line-height: 40px; }
.section-enterwapp[data-node].ralco-rich-text .ralco-rt-sub-dark .ralco-rt-h4 { color: rgb(0, 0, 0); }

/* cog markers, matching the reference's icon list */
.section-enterwapp[data-node].ralco-rich-text .ralco-rt-ul-cog {
	margin: 0 0 30px;
}

.section-enterwapp[data-node].ralco-rich-text .ralco-rt-ul-cog li {
	position: relative;
	padding-left: 38px;
	margin-bottom: 5px;
	font-size: 15px;
	line-height: 23px;
	font-weight: 300;
	color: rgb(0, 0, 0);
}

.section-enterwapp[data-node].ralco-rich-text .ralco-rt-ul-cog li::before {
	content: "";
	position: absolute;
	left: 0;
	top: 3px;
	width: 16px;
	height: 16px;
	background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23b91b21'%3E%3Cpath d='M19.4 13a7.8 7.8 0 0 0 0-2l2-1.6a.5.5 0 0 0 .1-.6l-1.9-3.3a.5.5 0 0 0-.6-.2l-2.4 1a7.6 7.6 0 0 0-1.7-1l-.4-2.5a.5.5 0 0 0-.5-.4h-3.8a.5.5 0 0 0-.5.4l-.4 2.5a7.6 7.6 0 0 0-1.7 1l-2.4-1a.5.5 0 0 0-.6.2L2.5 8.8a.5.5 0 0 0 .1.6L4.6 11a7.8 7.8 0 0 0 0 2l-2 1.6a.5.5 0 0 0-.1.6l1.9 3.3a.5.5 0 0 0 .6.2l2.4-1a7.6 7.6 0 0 0 1.7 1l.4 2.5a.5.5 0 0 0 .5.4h3.8a.5.5 0 0 0 .5-.4l.4-2.5a7.6 7.6 0 0 0 1.7-1l2.4 1a.5.5 0 0 0 .6-.2l1.9-3.3a.5.5 0 0 0-.1-.6zM12 15.5A3.5 3.5 0 1 1 15.5 12 3.5 3.5 0 0 1 12 15.5z'/%3E%3C/svg%3E") no-repeat center / contain;
}

/* ---- clean 50/50, no lapping: the About "Our Believes" row -------------- */
.section-enterwapp[data-node].ralco-rich-text .ralco-rt-l-half-left,
.section-enterwapp[data-node].ralco-rich-text .ralco-rt-l-half-right {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
}

.section-enterwapp[data-node].ralco-rich-text .ralco-rt-l-half-left .ralco-rt-media,
.section-enterwapp[data-node].ralco-rich-text .ralco-rt-l-half-right .ralco-rt-media,
.section-enterwapp[data-node].ralco-rich-text .ralco-rt-l-half-left .ralco-rt-col,
.section-enterwapp[data-node].ralco-rich-text .ralco-rt-l-half-right .ralco-rt-col {
	flex: 0 0 50%;
	max-width: 50%;
	margin-left: 0;
}

.section-enterwapp[data-node].ralco-rich-text .ralco-rt-l-half-right .ralco-rt-media { order: 2; }
.section-enterwapp[data-node].ralco-rich-text .ralco-rt-l-half-right .ralco-rt-col { order: 1; }

/* the copy keeps clear of the picture */
.section-enterwapp[data-node].ralco-rich-text .ralco-rt-l-half-left .ralco-rt-col { padding-left: 25px; }
.section-enterwapp[data-node].ralco-rich-text .ralco-rt-l-half-right .ralco-rt-col { padding-right: 25px; }

/* a centred block can hug the inner edge of its column, which is how the
   reference butts Our Vision and Our Mission together in the middle */
.section-enterwapp[data-node].ralco-rich-text .ralco-rt-center .ralco-rt-col {
	/* whole pixels on purpose: 37.35 left the box 180.6875 tall, and a 1px
	   border on a fractional box edge is painted across two device pixels at
	   dpr 1 - which reads as a doubled, bolder line. */
	padding: 37px;
}

.section-enterwapp[data-node].ralco-rich-text .ralco-rt-pull-right.ralco-rt-center .ralco-rt-col {
	margin-left: auto;
	margin-right: 0;
}

.section-enterwapp[data-node].ralco-rich-text .ralco-rt-pull-left.ralco-rt-center .ralco-rt-col {
	margin-left: 0;
	margin-right: auto;
}

/* the reference sets its page headings in red at 400, not black at 700 */
.section-enterwapp[data-node].ralco-rich-text .ralco-rt-sub-accent .ralco-rt-h2 {
	color: var(--ralco-red);
	font-weight: 400;
}

/* The reference's History card sits flush with the top of its band and leaves
   142.5px below it, and it reveals downward out of that top edge - so the
   band has to clip. */
.section-enterwapp[data-node].ralco-rich-text .ralco-rt-band {
	overflow: hidden;
}

.section-enterwapp[data-node].ralco-rich-text .ralco-rt-wrap.ralco-rt-carded {
	padding-top: 0;
	padding-bottom: 142px;
}

/* Vision / Mission sit in a 1px red box, 504 wide inside the 529 slot */
.section-enterwapp[data-node].ralco-rich-text .ralco-rt-center .ralco-rt-col {
	position: relative;
	max-width: 504px;
	/* the reference frames these in its accent #dd3333, the same red as the
	   CTA panel - not the darker brand red used for body accents */
	border: 1px solid var(--ralco-red-2);
}

/* The reference column is Salient's data-border-style="double" at
   data-border-width="1px": four .border-* spans draw the outer line, and each
   one's ::after draws a second line inset 4px from it, leaving a 3px gap of
   background between the two. One absolutely positioned ::after reproduces the
   same two-line frame without the span scaffolding.
   (Salient's inner segments stop 4px short at each corner, so its corners have
   a 1px nick; a continuous rect reads the same at this scale and avoids
   depending on that quirk.) */
.section-enterwapp[data-node].ralco-rich-text .ralco-rt-center .ralco-rt-col::after {
	content: "";
	position: absolute;
	top: 3px;
	right: 3px;
	bottom: 3px;
	left: 3px;
	border: 1px solid var(--ralco-red-2);
	pointer-events: none;
}

/* Measured against the reference's Our Vision / Our Mission boxes: the heading
   is its accent #dd3333, not the darker brand red, and sits 8px above the copy
   rather than 18px. Those two together are what made our box 180 tall against
   the reference's 171. */
.section-enterwapp[data-node].ralco-rich-text .ralco-rt-center .ralco-rt-h4 {
	color: var(--ralco-red-2);
	margin-bottom: 8px;
}

.section-enterwapp[data-node].ralco-rich-text .ralco-rt-pull-right.ralco-rt-center .ralco-rt-col {
	margin-left: auto;
	margin-right: 12px;
}

.section-enterwapp[data-node].ralco-rich-text .ralco-rt-pull-left.ralco-rt-center .ralco-rt-col {
	margin-left: 12px;
	margin-right: auto;
}

/* Typical laptop screen size*/
@media (max-width: 1400px) {
	.section-enterwapp[data-node].ralco-rich-text .ralco-rt-h2 { font-size: 42px; line-height: 54px; }
}

/* Portrait tablet to landscape and desktop */
@media (max-width: 999px) {
	.section-enterwapp[data-node].ralco-rich-text .ralco-rt-h2 { font-size: 34px; line-height: 44px; }
}

/* Below the reference's 1000px container breakpoint */
@media (max-width: 999px) {
	.section-enterwapp[data-node].ralco-rich-text .ralco-rt-l-half-left,
	.section-enterwapp[data-node].ralco-rich-text .ralco-rt-l-half-right { display: block; }
	.section-enterwapp[data-node].ralco-rich-text .ralco-rt-l-half-left .ralco-rt-media,
	.section-enterwapp[data-node].ralco-rich-text .ralco-rt-l-half-right .ralco-rt-media,
	.section-enterwapp[data-node].ralco-rich-text .ralco-rt-l-half-left .ralco-rt-col,
	.section-enterwapp[data-node].ralco-rich-text .ralco-rt-l-half-right .ralco-rt-col {
		max-width: 100%; padding-left: 0; padding-right: 0;
	}
	.section-enterwapp[data-node].ralco-rich-text .ralco-rt-l-half-left .ralco-rt-col,
	.section-enterwapp[data-node].ralco-rich-text .ralco-rt-l-half-right .ralco-rt-col { margin-top: 25px; }
	.section-enterwapp[data-node].ralco-rich-text .ralco-rt-center .ralco-rt-col { padding: 0; }
	.section-enterwapp[data-node].ralco-rich-text .ralco-rt-l-split-left,
	.section-enterwapp[data-node].ralco-rich-text .ralco-rt-l-split-right { display: block; }
	.section-enterwapp[data-node].ralco-rich-text .ralco-rt-l-split-left .ralco-rt-media,
	.section-enterwapp[data-node].ralco-rich-text .ralco-rt-l-split-right .ralco-rt-media,
	.section-enterwapp[data-node].ralco-rich-text .ralco-rt-l-split-left .ralco-rt-col,
	.section-enterwapp[data-node].ralco-rich-text .ralco-rt-l-split-right .ralco-rt-col { max-width: 100%; }
	.section-enterwapp[data-node].ralco-rich-text .ralco-rt-shot { min-height: 220px; }
	.section-enterwapp[data-node].ralco-rich-text .ralco-maps { display: block; }
	.section-enterwapp[data-node].ralco-rich-text .ralco-maps > figure + figure { margin-top: 30px; }
	.section-enterwapp[data-node].ralco-rich-text .ralco-maps .ralco-map { height: 320px; }
	.section-enterwapp[data-node].ralco-rich-text .ralco-form-row { display: block; }
	/* the fields stack here, so this 14px is the mobile equivalent of the row
	   margin - zeroed too, keeping the same density as desktop */
	.section-enterwapp[data-node].ralco-rich-text .ralco-form-row label { margin-bottom: 0; }
	.section-enterwapp[data-node].ralco-rich-text .ralco-form-card { padding: 30px; }
	.section-enterwapp[data-node].ralco-rich-text .ralco-map { height: 380px; }

	/* stay flex so "text left, image right" keeps the copy first when it
	   stacks - display:block would fall back to DOM order, which puts the
	   side panel (the contact form) above the heading. */
	.section-enterwapp[data-node].ralco-rich-text .ralco-rt-l-media-left,
	.section-enterwapp[data-node].ralco-rich-text .ralco-rt-l-media-right,
	.section-enterwapp[data-node].ralco-rich-text .ralco-rt-l-full.ralco-rt-carded {
		display: flex; flex-direction: column; align-items: stretch;
	}
	.section-enterwapp[data-node].ralco-rich-text .ralco-rt-l-media-right .ralco-rt-media { order: 2; }
	.section-enterwapp[data-node].ralco-rich-text .ralco-rt-l-media-right .ralco-rt-col { order: 1; }
	.section-enterwapp[data-node].ralco-rich-text .ralco-rt-l-media-left .ralco-rt-media,
	.section-enterwapp[data-node].ralco-rich-text .ralco-rt-l-media-right .ralco-rt-media,
	.section-enterwapp[data-node].ralco-rich-text .ralco-rt-l-media-left .ralco-rt-col,
	.section-enterwapp[data-node].ralco-rich-text .ralco-rt-l-media-right .ralco-rt-col,
	.section-enterwapp[data-node].ralco-rich-text .ralco-rt-l-full.ralco-rt-carded .ralco-rt-col {
		flex: 0 0 auto; width: 100%; max-width: 100%; margin-left: 0;
	}
	.section-enterwapp[data-node].ralco-rich-text .ralco-rt-l-media-left .ralco-rt-col,
	.section-enterwapp[data-node].ralco-rich-text .ralco-rt-l-media-right .ralco-rt-col { margin-top: 25px; }
	.section-enterwapp[data-node].ralco-rich-text .ralco-rt-carded .ralco-rt-col { padding: 30px; }
	.section-enterwapp[data-node].ralco-rich-text .ralco-rt-l-media-right .ralco-rt-rule-full,
	.section-enterwapp[data-node].ralco-rich-text .ralco-rt-l-media-left .ralco-rt-rule-full {
		width: 100%;
		margin-left: 0;
	}
	/* the 12.5px pull that offsets Vision/Mission from the gutter on desktop
	   leaves the box lopsided once it is the full width of the column. */
	.section-enterwapp[data-node].ralco-rich-text .ralco-rt-pull-right.ralco-rt-center .ralco-rt-col,
	.section-enterwapp[data-node].ralco-rich-text .ralco-rt-pull-left.ralco-rt-center .ralco-rt-col {
		margin-left: 0; margin-right: 0;
	}
	.section-enterwapp[data-node].ralco-rich-text .ralco-rt-wrap { padding-top: 35px; padding-bottom: 25px; }
	.section-enterwapp[data-node].ralco-rich-text .ralco-rt-h2 { font-size: 28px; line-height: 38px; }
	.section-enterwapp[data-node].ralco-rich-text .ralco-rt-h4 { font-size: 18px; line-height: 27px; }
}

/* Mobile screen size */
@media (max-width: 480px) {
	.section-enterwapp[data-node].ralco-rich-text .ralco-rt-h2 { font-size: 24px; line-height: 32px; }
}

/* timeline collapses to a single-sided list on small screens */
@media (max-width: 767px) {
	.section-enterwapp[data-node].ralco-rich-text .ralco-rt-tl::before { left: 9px; margin-left: -5.5px; }
	.section-enterwapp[data-node].ralco-rich-text .ralco-rt-tl-item { grid-template-columns: 1fr; padding-bottom: 26px; }
	.section-enterwapp[data-node].ralco-rich-text .ralco-rt-tl-item.is-odd > .ralco-rt-tl-date,
	.section-enterwapp[data-node].ralco-rich-text .ralco-rt-tl-item.is-even > .ralco-rt-tl-date {
		grid-column: 1; grid-row: 1; text-align: left; padding: 0 0 2px 38px;
	}
	.section-enterwapp[data-node].ralco-rich-text .ralco-rt-tl-item.is-odd > .ralco-rt-tl-text,
	.section-enterwapp[data-node].ralco-rich-text .ralco-rt-tl-item.is-even > .ralco-rt-tl-text {
		grid-column: 1; grid-row: 2; text-align: left; padding: 0 0 0 38px;
	}
	.section-enterwapp[data-node].ralco-rich-text .ralco-rt-tl-dot { left: 9px; margin-left: -10px; top: 6px; }
	.section-enterwapp[data-node].ralco-rich-text .ralco-rt-tl-date { font-size: 19px; line-height: 27px; }
}
