/**
Theme Name: Response Primary Care
Author: Brainstorm Force
Author URI: http://wpastra.com/about/
Description: Astra is the fastest, fully customizable & beautiful theme suitable for blogs, personal portfolios and business websites. It is very lightweight (less than 50KB on frontend) and offers unparalleled speed. Built with SEO in mind, Astra comes with schema.org code integrated so search engines will love your site. Astra offers plenty of sidebar options and widget areas giving you a full control for customizations. Furthermore, we have included special features and templates so feel free to choose any of your favorite page builder plugin to create pages flexibly. Some of the other features: # WooCommerce Ready # Responsive # Compatible with major plugins # Translation Ready # Extendible with premium addons # Regularly updated # Designed, Developed, Maintained & Supported by Brainstorm Force. Looking for a perfect base theme? Look no further. Astra is fast, fully customizable and beautiful theme!
Version: 1.3.09
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: response-pc
Template: astra

colours
light teal #47C6BC
light grey #F2F2F2
light green #E2F6F4
light blue #F0F9FF
dark grey #6a6768
blue #62B6F3
navy #1e3a4a
*/

@import url('https://fonts.googleapis.com/css2?family=Lato:wght@400;900&display=swap');

:root {
  --rpc-xl: 100px;
  --rpc-large: 80px;
  --rpc-medium: 60px;
  --rpc-small: 40px;
  --rpc-box: 250px;
  --teal: #47C6BC;
  --teal-dark: #35a99f;
  --teal-deeper: #2a8880;
  --mint: #E2F6F4;
  --light-silver: #F2F2F2;
  --mist-blue: #F0F9FF;
  --navy: #1e3a4a;
  --white: #ffffff;
  --gray: #6b7c87;
  --light-gray: #dce8eb;
  --text: #2c3e46;
}

strong {
	font-weight: 900;
	letter-spacing: 0;
}
a {
	text-decoration: underline;
}
.has-ast-global-color-5-color a,
.has-ast-global-color-5-color h2,
.has-ast-global-color-5-color h3 {
	color: var(--ast-global-color-5);
}

h2 em, h3 em {
	color: var(--ast-global-color-0);
}
.rpc-nowrap {
	white-space: nowrap;
}

/* header */
.ast-site-title-wrap {
	margin-top: .7em;
}
a.ast-header-account-link {
	text-decoration: none;
}
.ast-header-account-text:after {
	content: " →";
}
.ast-above-header-wrap .ast-above-header-bar {
	background-color: var(--teal-dark);
}
.ast-desktop:not(:has(.ast-header-sticked)) .ast-primary-header-bar .main-header-menu > .menu-item,
.ast-desktop .ast-primary-header-bar .main-header-menu > .menu-item {
	line-height: 1.5em;
}
.ast-builder-menu-1 .menu-item.rpc-button .menu-link {
	background-color: var(--teal);
	color: var(--ast-global-color-5);
	padding: 10px 25px;
	border-radius: 4px;
}
.ast-builder-menu-1 .menu-item.rpc-button .menu-link:hover {
	background: var(--teal-dark);
  transform: translateY(-2px);
  box-shadow: 0 8px 24px rgba(71,198,188,0.4);
}
.ast-builder-menu-1 .menu-item.rpc-button .menu-link:before {
	color: var(--ast-global-color-0);
}
.ast-builder-layout-element[data-section='section-header-mobile-trigger'] {
	display: none;
}

/* buttons */
.wp-block-buttons.is-layout-flex {
	margin-top: 1em;
	width: 100%;
}
.wp-block-buttons.is-content-justification-center {
	justify-content: center;
}
.wp-block-group.is-nowrap .wp-block-buttons.is-layout-flex {
	margin-top: 0;
}
.wp-block-button .wp-block-button__link {
  display: inline-block;
}
.wp-block-button .wp-block-button__link:hover {	
  transform: translateY(-2px);
}
.wp-block-button .wp-block-button__link.has-ast-global-color-0-background-color:hover {
	background: var(--teal-dark) !important;
  box-shadow: 0 8px 24px rgba(71,198,188,0.4);
}
.wp-block-button .wp-block-button__link.has-ast-global-color-3-background-color {
	background-color: transparent !important;
	border: 2px solid rgba(255,255,255,0.6);
}
.wp-block-button .wp-block-button__link.has-ast-global-color-3-background-color:hover {
	background: rgba(255,255,255,0.12);
  border-color: rgba(255,255,255,0.9);
}

/* blocks */
.wp-block-group.is-nowrap {
	flex-wrap: nowrap;
}
.wp-block-group.is-content-justification-center {
	justify-content: center;
}
span.rpc-smaller {
	font-size: 0.6em;
	display: block;
}

/* hero */
.rpc-hero-bg {
  animation: heroShimmer 7s ease-in-out infinite;
  position: relative;
}
@keyframes heroShimmer { 0%,100%{background-position:0% 50%} 50%{background-position:100% 50%} }

.rpc-hero-bg:before {
	content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(100deg, rgba(27,55,70,0.88) 0%, rgba(30,90,90,0.72) 60%, rgba(61,191,191,0.35) 100%);
  z-index: 1;
}
.rpc-hero-bg h1, .rpc-hero-bg p {
	color: var(--ast-global-color-5);
	margin-bottom: 16px;
	animation: fadeUp .6s 1s ease both;
}
.rpc-hero-bg p {
	animation: fadeUp .6s .2s ease both;
}
.entry-content > .rpc-hero-bg.wp-block-cover {
	height: auto;
	min-height: 420px;
	display: flex;
  align-items: center;
	justify-content: left;
  overflow: clip;
  padding: 64px 48px 60px;
}
.rpc-hero-bg.wp-block-cover .wp-block-cover__background {
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
}
.rpc-hero-bg.wp-block-cover .wp-block-cover__background.has-background-dim {
	opacity: 0.85;
	z-index: 1;
	height: 100%;
}
.rpc-hero-bg.wp-block-cover .wp-block-cover__image-background {
	border: none;
  box-shadow: none;
  left: 0;
  margin: 0;
  max-height: none;
  min-width: 100%;
  max-width: 100%;
  object-fit: cover;
  outline: none;
  padding: 0;
  position: absolute;
  right: 0;
  width: 100%;
 }
.entry-content[ast-blocks-layout] > .rpc-hero-bg.wp-block-cover .wp-block-cover__inner-container {
	max-width: 640px;
	width: 100%;
	margin: 0;
	padding: 0;
	z-index: 1;
}
.hero-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: rgba(71,198,188,0.2);
  border: 1px solid rgba(71,198,188,0.5);
  color: #a8efe9;
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 2px;
  text-transform: uppercase;
  padding: 5px 14px;
  border-radius: 20px;
  margin-bottom: 18px;
  width: fit-content;
  animation: fadeUp .5s ease both;
}
@keyframes pulse { 0%,100%{opacity:1;transform:scale(1)} 50%{opacity:0.5;transform:scale(1.5)} }
.hero-eyebrow-dot {
  width: 6px;
  height: 6px;
  background: var(--teal);
  border-radius: 50%;
  animation: pulse 2s infinite;
}
.wp-block-cover__inner-container {
    display: flex;
    flex-direction: column;
}
.wp-block-cover__inner-container h1.wp-block-heading {
	font-weight: normal;
	text-align: center;
}
.wp-block-cover__inner-container h1.wp-block-heading em {
	color: var(--ast-global-color-0);
	font-weight: 600;
}
.wp-block-cover__inner-container.right h1.wp-block-heading,
.wp-block-cover__inner-container.left h1.wp-block-heading {
	text-align: left;
}
.wp-block-cover__inner-container.centre h1.wp-block-heading {
	font-size: 3rem;
}

.wp-block-cover__inner-container p {
	text-align: center;
	font-weight: 400;
	font-size: 1.1rem;
}
.wp-block-cover__inner-container.right p,
.wp-block-cover__inner-container.left p {
	text-align: left;
}
.wp-block-cover__inner-container.centre .wp-block-buttons.is-layout-flex {
	justify-content: center;
}
.rpc-hero-bg .wp-block-buttons {
	animation: fadeUp .6s .3s ease both;
}

/* icons */
.wp-block-group.rpc-icons {
	padding: var(--rpc-small);
	justify-content: center;
}
.rpc-icons .wp-block-group {
	flex-basis: 14%;
}
.rpc-icons .wp-block-image {
	display: flex;
	flex-wrap: nowrap;
	align-items: center;
}
.rpc-icons .wp-block-image img {
	width: var(--rpc-small);
	height: var(--rpc-small);
}
.rpc-icons .wp-block-image figcaption {
	text-transform: uppercase;
	font-size: 0.9rem;
	font-style: italic;
	margin: 0 0 0 1em;
	font-weight: 800;
	letter-spacing: 0;
}

/* centred block */
.rpc-centred-block {
	padding: var(--rpc-medium);
}
.rpc-centred-block p,
.rpc-centred-block h2 {
	max-width: 40%;
}
.rpc-centred-block p:last-of-type {
	margin-bottom: 3em;
}
.rpc-centred-block h2 {
	font-size: 1.5rem;
	margin-bottom: 1.5em;
	font-weight: 900;
}
.rpc-centred-image .wp-block-cover {
  display: flex;
  align-items: center;
  background-position: 50%;
  box-sizing: border-box;
  justify-content: center;
  overflow: clip;
  position: relative;
}
.rpc-centred-image .wp-block-cover .wp-block-cover__background.has-background-dim {
	opacity: 0.85;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: block;
  z-index: 1; /* overlay above image */
}
.rpc-centred-image .wp-block-cover .wp-block-cover__image-background {
  border: none;
  box-shadow: none;
  left: 0;
  margin: 0;
  max-height: none;
  max-width: none;
  object-fit: cover;
  outline: none;
  padding: 0;
  position: absolute;
  right: 0;
  width: 100%;
  height: 100%;
}

/* welcome */
.wp-block-group.rpc-welcome {
	padding: var(--rpc-large);
	justify-content: space-around;
}
.wp-block-group.rpc-welcome h5 {
	color: var(--ast-global-color-5);
	margin-bottom: 0.5em;
	letter-spacing: 0px;
	font-size: 1.3em;
}
.wp-block-group.rpc-welcome .wp-block-group {
	padding-left: var(--rpc-medium);
	margin-left: var(--rpc-medium);
}
.wp-block-group.rpc-welcome.teal .wp-block-group {
	border-left: 1px solid var(--ast-global-color-0);
}
.wp-block-group.rpc-welcome.grey .wp-block-group {
	border-left: 1px solid var(--ast-global-color-3);
}
.wp-block-group.rpc-welcome.white .wp-block-group {
	border-left: 1px solid var(--ast-global-color-5);
}
.wp-block-group.rpc-welcome.has-ast-global-color-5-color .wp-block-group {
	border-color: var(--ast-global-color-5);
}
.wp-block-group.rpc-welcome.has-ast-global-color-0-background-color {
	border-color: var(--ast-global-color-5);
}

/* introduction */
body.home .rpc-introduction.is-layout-flex {
  display: none;
}
.wp-block-group.rpc-introduction .wp-block-group {
	flex-basis: 50%;
	padding: 0 var(--rpc-xl);
}
.wp-block-group.rpc-introduction h2 {
	color: var(--ast-global-color-5);
	margin-bottom: 1.1em;
}
.rpc-introduction figure {
	flex-basis: 50%;
	width: 100%;
}

/* why choose */
.section-label {
  display: block;
  font-size: 0.7rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 2.5px;
  color: var(--teal);
  margin-bottom: 10px;
}
.rpc-choose {
	background-color: var(--mist-blue);
	padding: var(--rpc-medium) var(--rpc-small);
}
.rpc-choose h2 {
	color: var(--navy);
  line-height: 1.22;
  margin-bottom: 16px;
  font-weight: 700;
}
.rpc-choose h2 p {
	font-size: 2rem;
}
.rpc-choose h2 em {
	color: var(--ast-global-color-0);
}
.rpc-choose > div > p {
	max-width: 660px;
}
.why-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 22px;
  margin-top: 44px;
  margin-bottom: 44px;
}
.why-card {
  background: var(--white);
  border-radius: 10px;
  padding: 28px 24px;
  border: 1px solid var(--light-gray);
  border-top: 3px solid var(--teal-deeper);
  box-shadow: 0 2px 12px rgba(0,0,0,0.04);
  transition: transform .25s, box-shadow .25s;
}
.why-card:hover { 
	transform: translateY(-5px); box-shadow: 0 16px 40px rgba(71,198,188,0.13); 
}
.why-num {
  font-family: 'Lora',serif;
  font-size: 2rem;
  font-weight: 600;
  color: var(--teal-deeper);
  line-height: 1;
  margin-bottom: 10px;
}
.why-card h3 {
  font-size: 1rem;
  color: var(--navy);
  margin-bottom: 8px;
}
.why-card p {
  font-size: 0.85rem;
  color: var(--gray);
  line-height: 1.6;
  margin: 0;
}

/* performance */
.rpc-performance::before {
  content: '';
  position: absolute;
  top: -30%;
  right: -5%;
  width: 480px;
  height: 480px;
  background: radial-gradient(circle, rgba(71,198,188,0.07) 0%, transparent 70%);
  pointer-events: none;
}
.rpc-performance {
  background: var(--navy);
  position: relative;
  overflow: hidden;
  padding: var(--rpc-medium) var(--rpc-small);
}
.rpc-performance > div {
	max-width: 1080px;
  margin: 0 auto;
}
.rpc-performance h2 {
	font-size: 35px;
	color: var(--ast-global-color-5);
	margin-bottom: 1em;
}
.rpc-performance h2 em {
	color: var(--ast-global-color-0);
}
.rpc-performance p.lead {
	color: rgba(255,255,255,0.62);
	max-width: 660px;
}
.charts-grid {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 16px;
  margin-top: 48px;
}
.chart-item {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
}
.donut-wrap {
  position: relative;
  width: 130px;
  height: 130px;
  margin-bottom: 18px;
}
.donut {
  width: 130px;
  height: 130px;
  transform: rotate(-90deg);
  filter: drop-shadow(0 0 10px rgba(71,198,188,0.18));
}
.donut-label {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%,-50%);
  font-family: 'Lora',serif;
  font-size: 1.4rem;
  font-weight: 600;
  color: #fff;
  line-height: 1;
}
.donut-bg {
  fill: none;
  stroke: rgba(255,255,255,0.07);
  stroke-width: 9;
}
.donut-ring {
  fill: none;
  stroke: var(--teal);
  stroke-width: 9;
  stroke-linecap: round;
  stroke-dasharray: 251.2;
  stroke-dashoffset: 251.2;
  transition: stroke-dashoffset 1.6s cubic-bezier(0.35,0,0.25,1);
}
.chart-item.in .donut-ring {
  stroke-dashoffset: var(--final-offset);
}
.chart-desc {
  font-size: 0.79rem;
  color: rgba(255,255,255,0.7);
  line-height: 1.55;
  margin-bottom: 5px;
}
.chart-source {
  font-size: 0.65rem;
  color: rgba(255,255,255,0.3);
}

/* beyond primary care */
.rpc-beyond-pc {
  background: var(--navy);
  position: relative;
  overflow: hidden;
  padding: var(--rpc-medium) var(--rpc-small);
}
.container {
	max-width: 1080px;
  margin: 0 auto;
}
.rpc-beyond-pc .beyond-header {
	text-align: center;
  max-width: 640px;
  margin: 0 auto 52px;
}
.rpc-beyond-pc .beyond-header h2 {
	color: var(--ast-global-color-5);
	margin-bottom: 1em;
	font-size: 35px;
}
.rpc-beyond-pc .beyond-header h2 em {
	color: var(--ast-global-color-0);
}
.rpc-beyond-pc .beyond-header p {
	color: rgba(255, 255, 255, .62);
}
.beyond-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 14px;
}
.beyond-card {
  background: rgba(255,255,255,0.05);
  border: 1px solid rgba(255,255,255,0.09);
  border-top: 2px solid var(--teal);
  border-radius: 8px;
  padding: 20px 18px;
  display: flex;
  align-items: flex-start;
  gap: 12px;
  transition: background .22s, transform .22s;
  cursor: default;
}
.beyond-card:hover { background: rgba(71,198,188,0.1); transform: translateY(-3px); }
.beyond-card-icon {
  width: 34px; height: 34px;
  background: rgba(71,198,188,0.15);
  border-radius: 6px;
  display: flex; align-items: center; justify-content: center;
  flex-shrink: 0; color: var(--teal);
}
.beyond-card p {
  font-size: 0.84rem;
  color: rgba(255,255,255,0.82);
  line-height: 1.45;
  font-weight: 500;
  margin: 0;
  padding-top: 6px;
}
.beyond-footer { text-align: center; margin-top: 44px; }
.beyond-note-dark {
  display: inline-block;
  background: rgba(71,198,188,0.1);
  border: 1px solid rgba(71,198,188,0.22);
  border-radius: 6px;
  padding: 12px 28px;
  font-size: 0.85rem;
  color: rgba(255,255,255,0.62);
  margin-bottom: 28px;
}


/* NHS */
body.home .is-layout-flex.rpc-nhs {
  display: none;
}
.rpc-nhs {
	gap: 3em;
	padding: var(--rpc-small);
}
.rpc-nhs h3 {
	font-weight: 400;
	text-transform: uppercase;
	color: var(--ast-global-color-5);
	font-size: 1.5rem;
}
.rpc-nhs img {
	margin: 0 10px;
}
.rpc-nhs .wp-block-buttons {
	width: auto;
}

/* audit results */
.rpc-audit {
	background-color: var(--ast-global-color-7);
	padding: var(--rpc-large) calc((100% - (200px * 3) - (var(--rpc-medium) * 6)) / 2);
	gap: var(--rpc-medium);
}
.rpc-audit > p {
	text-align: center;
	margin-top: -2em;
}
.rpc-audit .wp-block-group {
	background-color: var(--ast-global-color-0);
	color: var(--ast-global-color-5);
	border-radius: 50px;
	flex-basis: 30%;
	height: var(--rpc-box);
	max-width: calc(var(--rpc-box) + 10px);
	text-align: center;
	padding: calc(var(--rpc-small) - 10px );
}
.rpc-audit .wp-block-group div {
	flex-basis: 100%;
}
.rpc-audit .wp-block-group div:nth-child(1) {
	font-family: 'Lato', sans-serif;
	font-size: 3.75rem;
}
.rpc-audit .wp-block-group div:nth-child(2) {
	font-weight: 600;
}
.rpc-audit .wp-block-group div:nth-child(3) {
	font-size: 10px;
	text-transform: uppercase;
}

/* block */
.rpc-block {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(var(--rpc-xl), auto));
	column-gap: 0;
	row-gap: 0;
}
.rpc-block .wp-block-group.rpc-image {
	padding: 0;
	width: 100%;
}
.rpc-block.right .rpc-image {
	order: 1;
}
.rpc-block .wp-block-group {
	padding: var(--rpc-medium) var(--rpc-large);
	display: flex;
	flex-wrap: wrap;
	align-content: center;
}
.rpc-block .wp-block-group h2 {
	margin-bottom: 0.75em;
}
.rpc-block .wp-block-group > *:not(ul) {
	width: 100%;
	margin-left: 0;
	margin-right: 0;
}
.rpc-block img {
	object-fit: cover;
	aspect-ratio: 2/1;
	width: 100%;
	height: 100%;
}
.rpc-block-no-image {
	max-width: 1060px;
	margin: 0 auto;
	text-align: center;
}
.rpc-block .rpc-block-no-image > p {
	width: 640px;
	margin: 0 auto 32px;
}
@media (max-width: 600px) {
	.rpc-block .rpc-block-no-image > p {
		width: 100%;
	}
}
.rpc-block-no-image .wp-block-buttons {
	justify-content: center;
}
.rpc-larger-content {
	width: 100%;
	font-size: 1.2em;
}
.rpc-strapline {
	font-weight: 600;
	font-size: 0.9em;
}
.rpc-email a {
	font-weight: 700;
}
.rpc-email i {
	color: var(--ast-global-color-5);
	background-color: var(--ast-global-color-0);
	border-radius: 50%;
	font-size: 20px;
	padding: 10px;
	margin-right: 10px;
}
.rpc-block.rpc-meet {
	padding: var(--rpc-large) var(--rpc-xl);
}
.rpc-meet h2 {
	margin-bottom: 0.5em;
}
.rpc-block.rpc-meet .wp-block-buttons > div {
	flex-basis: 100%;
}
.rpc-meet img {
	background-color: var(--ast-global-color-5);
	border-radius: 50%;
	padding: 1px 8px;
	height: var(--rpc-medium);
	width: var(--rpc-medium);
}
.rpc-meet .rpc-team-photos.is-nowrap {
	justify-content: space-around;
	gap: 0;
	flex-wrap: nowrap;
}
.rpc-meet .wp-block-buttons {
	row-gap: 10px;
	text-align: center;
}

/* beyond fcp */
.rpc-beyond {
	display: grid;
	gap: 0;
	grid-template-columns: 40% auto;
}
.rpc-beyond .wp-block-group:not(.rpc-image) {
	padding: var(--rpc-medium) var(--rpc-large);
	display: flex;
	flex-wrap: wrap;
	align-content: center;
	gap: 0.7em;
}
.rpc-beyond .rpc-image {
	max-height: 550px;
}
.rpc-beyond .rpc-image img {
	object-fit: cover;
	object-position: center;
	height: 100%;
}
.rpc-beyond .wp-block-group > * {
	width: 100%;
}
.rpc-beyond .wp-block-group ul {
	columns: 2;
}

/* quotes */
.rpc-with-quotes:before {
	content: '';
	background-repeat: no-repeat;
	width: 66px;
	height: 50px;
	margin-left: -80px;
	display: block;
}
.rpc-with-quotes:after {
	content: '';
	background-repeat: no-repeat;
	width: 66px;
	height: 50px;
	margin-top: -80px;
	margin-right: -80px;
	float: right;
	display: block;
} 

/* testimonials */
.rpc-testimonial {
  background: var(--light-silver);
  padding: var(--rpc-medium) var(--rpc-small);
}
.rpc-testimonial .section-label {
  color: var(--teal);
}
.rpc-testimonial h2 {
  font-size: 35px;
  color: var(--navy);
  margin-bottom: 16px;
}
.rpc-testimonial h2 em {
	color: var(--ast-global-color-0);
}
.testimonials-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 22px;
}

.testimonial-card::before {
  content: '\201C';
  position: absolute;
  top: -8px;
  left: 18px;
  font-family: 'Lora',serif;
  font-size: 6rem;
  color: var(--mint);
  line-height: 1;
  pointer-events: none;
}
.testimonial-card {
  background: #fff;
  border: 1px solid var(--light-gray);
  border-radius: 10px;
  padding: 30px 28px;
  display: flex;
  flex-direction: column;
  gap: 16px;
  position: relative;
  overflow: hidden;
  box-shadow: 0 2px 12px rgba(0,0,0,0.05);
  transition: box-shadow .25s, transform .25s;
}
.testimonial-card:hover {
  box-shadow: 0 12px 36px rgba(71,198,188,0.13);
  transform: translateY(-3px);
}
.testimonial-stars {
  color: var(--teal);
  font-size: 0.85rem;
  letter-spacing: 2px;
}
.testimonial-card blockquote {
  font-size: 0.9rem;
  color: var(--text);
  line-height: 1.75;
  font-style: italic;
  position: relative;
  z-index: 1;
  border: none;
  padding: 0;
  margin: 0;
}
.testimonial-meta {
  display: flex;
  flex-direction: column;
  gap: 2px;
}
.testimonial-name {
  font-weight: 700;
  font-size: 0.88rem;
  color: var(--navy);
}
.testimonial-role {
  font-size: 0.8rem;
  color: var(--teal);
}
.testimonials-grid > * {
  opacity: 0;
  transform: translateY(20px);
  animation: fadeUp .6s ease forwards;
}
/* Slider wrapper */
.testimonial-slider {
  position: relative;
  width: 100%;
  overflow: hidden;
  transition: height .4s ease;
}

.testimonial-page {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  opacity: 0;
  transition: opacity .6s ease;
  pointer-events: none;
}

.testimonial-page.active {
  opacity: 1;
  pointer-events: auto;
  position: relative;
}


.testimonial-controls {
  display: flex;
  justify-content: center;
  gap: 12px;
  margin-top: 20px;
}

.testimonial-controls button {
  background: var(--teal);
  color: #fff;
  border: none;
  padding: 10px 16px;
  border-radius: 6px;
  cursor: pointer;
  font-size: 1.2rem;
  transition: background .2s;
}

.testimonial-controls button:hover {
  background: var(--navy);
}


/* teal banner */
.rpc-teal {
	padding: var(--rpc-medium) var(--rpc-large);
	background-color: var(--teal-deeper);
}
.rpc-teal > div {
	width: 60%;
}
.rpc-teal h3 {
	text-transform: none;
	margin-bottom: 1.2rem;
	color: var(--ast-global-color-6);
	font-weight: 400;
	font-size: 1.5em;
}
.rpc-teal img {
	padding-left: 100px;
}

/* join our team */
.rpc-join {
	padding: var(--rpc-large);
}
.rpc-join > div {
	margin: 0 auto;
	justify-content: space-between;
	column-gap: 60px;
}
.rpc-join h3 {
	text-align: right;
	font-size: 1.75rem;
	flex-basis: 20%;
}
.rpc-join .wp-block-buttons {
	flex-basis: 20%;
}
.rpc-join a {
	white-space: nowrap;
}
.rpc-join .rpc-content {
	flex-basis: 60%;
}
.rpc-content p {
	margin-bottom: .5em;
}
.rpc-content strong {
	font-weight: 700;
	font-size: 1.1em;
}

/* why work for */
.rpc-why-work-for {
	padding: 80px 120px;
}
.rpc-why-work-for .wp-block-group:first-child {
	width: 50%;
	margin: 0 auto;
	text-align: center;
	padding-bottom: 30px;
}
.rpc-why-work-for h2 {
	font-size: 2rem;
	margin-bottom: 1.2rem;
}
.rpc-why-work-for .wp-block-group.has-background-color {
	border-radius: 30px;
	padding: 40px;
	grid-template-columns: repeat(3, 250px);
	justify-content: center;
}
.rpc-why-work-for img {
	background-color: var(--ast-global-color-0);	
	border-radius: 50%;
	padding: 10px;
	margin: 0 auto;
	width: 60px;
	height: 60px;
}
.rpc-why-work-for figure {
	text-align: center;
}
.rpc-why-work-for h6 {
	text-transform: uppercase;
	font-weight: 800;
}
.rpc-why-work-for figcaption {
	font-size: 0.8em;
}

/* contact */
.rpc-contact {
	padding: var(--rpc-medium);
  background-color: var(--ast-global-color-5);
}
.rpc-contact > div {
	flex-basis: 50%;
}
.rpc-contact p {
	margin: 2em 0;
}
.rpc-contact h2 {
	font-size: 2.2rem;
}
.rpc-contact h5{
	font-size: 1.75em;
	line-height: 1.2;
}
.rpc-contact h6 {
	font-size: 1.25em;
	line-height: 1.2;
	padding-top: 1rem;
}
div.wpcf7 {
	margin-top: 0;
}
form.wpcf7-form input,
form.wpcf7-form textarea {
	background-color: var(--ast-global-color-6);
	color: var(--ast-global-color-3);
	font-size: 0.9rem;
	border-radius: 4px;
}
form.wpcf7-form textarea {
	height: 8em;
}
form.wpcf7-form input::placeholder,
form.wpcf7-form textarea::placeholder {
	color: var(--ast-global-color-3);
}
form.wpcf7-form p {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin-top: 1em;
	margin-bottom: 0;
	gap: 10px;
}
form.wpcf7-form span {
	flex-basis: 100%;
}
form.wpcf7-form span[data-name="first-name"],
form.wpcf7-form span[data-name="last-name"] {
	flex-basis: 49%;
}
form.wpcf7-form input[type="submit"] {
	color: var(--ast-global-color-5);
	background-color: var(--ast-global-color-0);
	margin-left: auto;
	margin-right: 0;
}

/* contact form */
.rpc-contact-form {
	padding: var(--rpc-medium);
}
.rpc-contact-form > * {
	width: 60%;
	text-align: center;
	margin: 0 auto;
}
.rpc-contact-form > div {
	padding: var(--rpc-medium);
	padding-bottom: var(--rpc-small);
	margin: var(--rpc-small) auto;
	background-color: var(--ast-global-color-5);
	border-radius: 4px;
}
.rpc-contact-form h2 {
	text-align: left;
	font-style: italic;
	font-weight: 900;
	font-size: 1.75rem;
	margin-bottom: 0.5em;
}
.rpc-contact-form p {
	margin-bottom: 0.5em;
}
.rpc-contact-form form.wpcf7-form input[type="text"],
.rpc-contact-form form.wpcf7-form input[type="email"],
.rpc-contact-form form.wpcf7-form textarea {
	background-color: var(--ast-global-color-7);
}
.rpc-contact-form p.rpc-email a {
	color: var(--ast-global-color-0);
	font-size: 1.5em;
}

/* business information */
.rpc-business .wp-block-group > * {
	width: 100%;
}
.rpc-business h5 {
	font-weight: 900;
	margin-bottom: 0;
}
.rpc-business h5::first-letter {
	text-transform: uppercase;
}
.rpc-business p {
	font-weight: 500;
	font-size: 1.25em;
}
.rpc-business p.rpc-phone_number {
	font-size: 2em;
}
.rpc-business i.fa-solid {
	border-width: 1px;
	border-style: solid;
	border-radius: 50%;
	padding: 5px;
	margin-right: 1em;
}
.rpc-business i.fa-phone {
	border-color: var(--ast-global-color-3);
}
.rpc-business i.fa-envelope {
	border-color: var(--ast-global-color-5);
}
.rpc-business .wp-block-button a {
	padding: 10px 20px;
}

/* pale blue banner */
.rpc-blue {
	padding: var(--rpc-small);
}
.rpc-blue.rpc-contact {
	padding: var(--rpc-medium);
}
.rpc-blue .wp-block-group {
	max-width: 60%;
	text-align: center;
	margin: 0 auto;
}
.rpc-blue.rpc-contact h3 {
	font-size: 2rem;
	margin-bottom: 0.25em;
}
.rpc-blue.rpc-contact p {
	margin: 0;
}

/* rpc-stats */
.rpc-stats {
	background-color: var(--ast-global-color-7);
	padding: var(--rpc-small);
	padding-top: 0;
	display: flex;
	flex-wrap: wrap;
	text-align: center;
	gap: 1em;
}
.rpc-stats > * {
	width: 100%;
	margin: 0;
}

/* meet the team */
.rpc-the-team {
	padding: var(--rpc-large);
}
.rpc-the-team h2 {
	color: var(--ast-ast-global-color-5);
	text-align: center;
	margin: 0 auto 1em auto;
}
.rpc-divisions > div {
	display: flex;
	flex-wrap: wrap;
}
.rpc-divisions > div > div {
	flex-basis: 100%;
}
.rpc-divisions h3,
.rpc-divisions h4 {
	color: var(--ast-global-color-5);
}
.rpc-divisions h3 {
	font-weight: 900;
	font-style: italic;
	margin-top: -3.2rem;
	font-size: 2rem;
}
.rpc-divisions h4 {
	text-align: center;
	flex-basis: 100%;
	font-style: italic;
	margin: 0.5em;
}
.rpc-divisions h5 {
	text-transform: uppercase;
	font-weight: 500;
	letter-spacing: 0px;
	margin-top: 0.5em;
}
.rpc-divisions h6 {
	font-size: 12px;
	font-weight: 600;
	letter-spacing: 1px;;
	margin-top: 0.5em;
}
.rpc-divisions .director h3,
.rpc-divisions .director h4 {
	display: none;
}
.rpc-divisions .north,
.rpc-divisions .south,
.rpc-divisions .support {
	background-color: rgba(255, 255, 255, 0.2);
	border-radius: 30px;
	margin: 3rem 0;
	padding: 2rem;
}
.rpc-cards {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 2em;
}
.rpc-card {
	border-radius: 30px;
	padding: 2em;
	font-size: 12px;
	font-weight: 400;
	display: grid;
	column-gap: 2em;
}
.director .rpc-card {
	flex-basis: 20%;
}
.director .rpc-card {
	max-width: 275px;
	display: inline-block;
}
.director .rpc-card img {
	height: 200px;
}
.leadership .rpc-card {
	flex-basis: 30%;
	grid-template-columns: 180px auto;
}
.team .rpc-card {
	flex-basis: 25%;
	grid-template-columns: 150px auto;
}
.rpc-card img {
	border: 5px solid var(--ast-global-color-7);
	border-radius: 30px;
	object-fit: cover;
	height: 100%;
}
.rpc-card p {
	line-height: 1.2em;;
	margin-top: 0.5em;
}
.rpc-card ul {
	margin-left: 1.5em;
}
.rpc-card ul li {
	line-height: 1.2em;
}

/* icon bullet points */
.rpc-icon-bullet-points {
	padding: var(--rpc-large);
}
.rpc-icon-bullet-points > div {
	margin: 0 auto;
	text-align: center;
}
.rpc-icon-bullet-points h2 {
	margin-bottom: 0.5em;
}
.rpc-icon-bullet-points p strong {
	font-weight: 700;
	font-size: 1.05rem;
}
.rpc-icon-bullet-points > div.rpc-bullets {
	width: 70%;
	padding-top: 1em;
	display: grid;
	grid-template-columns: 1fr 1fr;
	grid-template-rows: 1fr 1fr;
	grid-auto-flow: column;
	column-gap: 60px;
}
.rpc-bullet {
	display: flex;
	flex-wrap: nowrap;
}
.rpc-bullet div {
	text-align: left;
}
.rpc-bullet h5 {
	color: var(--ast-global-color-5);
	font-size: 1.35rem;
}
.rpc-bullet i {
	line-height: 1.6;
	font-size: 1.5rem;
	padding-right: 0.5em;
}

/* centred image */
.rpc-centred-image .wp-block-cover.background-color.has-text-color {
	min-height: auto;
	padding: var(--rpc-large);
}
.rpc-centred-image .wp-block-cover__background {
	height: 100%;
	z-index: 1;
}
.rpc-centred-image .wp-block-cover__inner-container {
	width: 80%;
	z-index: 1;
}
.rpc-centred-image h2 {
	text-align: center;
	margin-bottom: 0.5em;
}
.rpc-centred-image ul {
	width: 60%;
	margin: 0 auto;
}

/* slideshow */
.rpc-slideshow h3 {
	font-size: 2rem;
	color: var(--ast-global-color-0);
	margin-bottom: 0.5em;
}
.rpc-slideshow > div {
	flex-basis: 50%;
}
.rpc-slideshow .wp-block-group {
	padding: 80px;
}

/* career */
.rpc-career {
	padding: 100px 120px;
	justify-content: space-around;
}
.rpc-career .wp-block-group {
	border-left: 1px solid var(--ast-global-color-3);
	margin-left: 60px;
	padding-left: 60px;
}
.rpc-career h2 {
	font-weight: 900;
	font-style: italic;
	font-size: 2.2rem;
	margin-bottom: 0.5em;
}
.rpc-career h3 {
	font-style: italic;
	font-size: 1.5rem;
	line-height: 1.3;
}

/* team testimonial */
.rpc-team-testimonial {
	text-align: center;
	padding: var(--rpc-large) var(--rpc-xl);
}
.rpc-team-testimonial h2 {
	color: var(--ast-global-color-5);
}
.rpc-team-testimonial hr {
	display: block;
	width: 20%;
	margin: 0 auto;
	color: var(--ast-global-color-5);
	border: none;
	clear: both;
	background-color: var(--ast-global-color-5);
	margin-bottom: 1em;
}
.rpc-team-testimonial .rpc-with-quotes:before {
	background-image: url('assets/images/left-quote-white.png');
}
.rpc-team-testimonial .rpc-with-quotes:after {
	background-image: url('assets/images/right-quote-white.png');
	margin-top: 10px;
	margin-right: -90px;
}
.rpc-team-testimonial .rpc-testimonial-content {
	margin: 0 100px;
	text-transform: none;
	width: 80%;
}
.rpc-team-testimonial p {
	text-transform: uppercase;
}
.rpc-team-testimonial p:last-child {
	font-size: 0.9rem;
}

/* available jobs */
.rpc-jobs {
	padding: 100px 120px;
	text-align: center;
}
.rpc-jobs > p {
	font-weight: 600;
	margin-top: 1em;
}
.rpc-job {
	background-color: var(--ast-global-color-0);
	color: var(--ast-global-color-5);
	border-radius: 30px;
	padding: 20px;
	margin-top: 2em;
	display: flex;
	align-content: space-between;
	text-align: left;
}
.rpc-job > div {
	flex-basis: 50%;
}
.rpc-job h6 {
	font-weight: 900;
	font-style: italic;
	color: var(--ast-global-color-5);
	font-size: 1.5rem;
}
.rpc-job p {
	text-transform: uppercase;
}
.rpc-job .wp-block-buttons {
	margin-top: 0;
	justify-content: flex-end;
}
.rpc-jobs > .wp-block-buttons .wp-block-button {
	margin: 0 auto;
}

/* FAQs */
.rpc-faqs {
	padding: 60px 120px;
}
.rpc-faqs h2 {
	font-size: 2rem;
}
.rpc-faq {
	background-color: var(--ast-global-color-5);
	color: var(--ast-global-color-3);
	margin-top: 2em;
	border-radius: 4px;
	border: 1px solid var(--mist-blue);
}
details > summary {
	background-color: var(--mist-blue);
	font-size: 1.25em;
	letter-spacing: -1px;
	border-radius: 4px;
	padding: 30px;
	list-style: none;
	overflow: auto;
}
details > summary > div:first-child {
	float: left;
	line-height: 40px;
}
details > summary > div:last-child {
	float: right;
}
details > div {
	padding: 30px;
}
details > summary i.fa-solid {
	cursor: pointer;
	color: var(--ast-global-color-5);
	background-color: var(--ast-global-color-3);
	border-radius: 50%;
	font-size: 20px;
	padding: 10px;	
}
details > summary i.fa-plus {
	display: inline-block;
}
details > summary i.fa-minus {
	display: none;
}
details[open] > summary i.fa-plus {
	display: none;
}
details[open] > summary i.fa-minus {
	display: inline-block;
}

/* our services */
.rpc-our-services {
  padding: 60px 40px;
}
.rpc-our-services > .wp-block-group {	
	max-width: 1060px;
  margin: 0 auto;
}
.rpc-our-services h2 {
	margin-bottom: 16px;
}
.rpc-our-services h2 em {
	color: var(--ast-global-color-0);
}
.rpc-our-services > p {
	max-width: 620px;
}


/* key benefits */
.rpc-benefits {
	padding-top: 1em;
	justify-content: center;
}
.rpc-benefits > div {
	align-self: stretch;
	flex-basis: 30%;
	background-color: var(--ast-global-color-5);
	border-radius: 30px;
	text-align: center;
	padding: 30px;
	row-gap: 10px;
}
.rpc-benefits i {
	color: var(--ast-global-color-0);
	font-size: 1.75em;
}
.rpc-benefits h5 {
	margin: 0.5em 0;
	font-weight: 600;
	font-size: 1.5rem;
	line-height: 1.1em;
	border-bottom: 1px solid var(--ast-global-color-3);
	padding-bottom: 0.5em;
}
.rpc-benefits p {
	margin-bottom: 0;
	font-weight: 500;
	font-size: 1rem;
}

/* single service */
.single-service .ast-container {
	padding: 0;
}
.single-service.ast-separate-container #primary {
	margin: 0;
}

/* download */
.rpc-download {
	padding: var(--rpc-xl) 0;
}
.rpc-download > div {
	max-width: 70%;
	margin: 0 auto;
	display: flex;
}
.rpc-download.rpc-block .wp-block-group {
	padding: 0;
}
.rpc-download h2 {
	margin-top: 0;
}
.rpc-download h4 {
	margin-top: 0;
	font-size: 1.4rem;
}
.rpc-download > .wp-block-group:first-child {
	padding-right: 0;
	flex-basis: 60%;
}
.rpc-download .wp-block-group:nth-child(2) {
	margin-top: 0;
	margin-left: var(--rpc-medium);
	border-left: 1px solid var(--ast-global-color-3);
	padding-left: var(--rpc-medium);
}
.rpc-download .wp-block-buttons > * {
	flex-basis: 100%;
}

/* benefit */
.rpc-benefit {
	padding: var(--rpc-xl);
}
.rpc-benefit > div {
	max-width: 70%;
	margin: 0 auto;
}
.rpc-benefit h2 {
	margin-bottom: 1.5em;
}
.rpc-benefit h6 {
	font-weight: 700;
}
.rpc-benefit .is-layout-flex {
	gap: 50px;
  display: grid;
  grid-template-columns: repeat(4, 250px);
	justify-content: center;
}
.rpc-benefit figure.wp-block-image {
	height: 250px;
	text-align: center;
	background-color: rgba(71, 198, 188, 0.7);
	padding: 1em;
	border-radius: 6px;
}
.rpc-benefit figure.wp-block-image:hover {
  box-shadow: 0 6px 28px rgba(10,138,120,0.11);
  transform: translateY(-2px);
  background-color: var(--teal);
}
.rpc-benefit figcaption {
	flex: 1;
}
.rpc-benefit figcaption p {
	text-transform: none;
	line-height: 1.2em;
}
@media(max-width: 921px ) {
  .rpc-benefit > div {
    max-width: unset;
  }
  .rpc-benefit .is-layout-flex {
    grid-template-columns: repeat(2, 250px);
  }
}

/* how we support */
.rpc-icon-bullet-points.rpc-support {
	max-width: 100%;
	margin: 0;
}
.rpc-support .rpc-bullets {
	column-count: 2;
	border-bottom: 1px solid var(--ast-global-color-0);
	padding-bottom: calc(var(--rpc-small) / 2);
	margin: calc(var(--rpc-small) / 2) 0;
	column-gap: var(--rpc-medium);
}
.rpc-support > div {
	width: 70%;
	text-align: left;
	margin: 0px auto;
}
.rpc-support h2 {
	margin-bottom: 0.5em;
}
.rpc-support h5 {
	color: var(--ast-global-color-0);
	font-weight: 600;
	font-style: italic;
}
.rpc-support .rpc-bullet {
	-webkit-column-break-inside: avoid;
	page-break-inside: avoid;
	break-inside: avoid;
}
.rpc-support .rpc-bullet p {
	font-size: 0.9em;
	font-weight: 600;
}
.rpc-support .rpc-footer p {
	font-size: 0.95em;
	font-style: italic;
	width: 100%;
	text-align: center;
	font-weight: 500;
	margin-bottom: var(--rpc-small);
}
.rpc-support .wp-block-button {
	margin-right: auto;
	margin-left: auto;
}

/* options */
.rpc-options h2 {
	margin-bottom: 0.25em;
}
.rpc-options p {
	text-align: center;
}
.rpc-options .rpc-options-content ul {
	margin-left: var(--rpc-xl);
	margin-top: var(--rpc-medium);
	padding-left: var(--rpc-xl);
}
.rpc-options .rpc-options-content ul li {
	padding-left: var(--rpc-small);
}
.rpc-options .rpc-options-content {
	width: 50%;
	margin-left: auto;
	margin-right: auto;
}
.rpc-options .rpc-cards {
	margin: 40px auto;
	column-gap: 4%;
}
.rpc-options .rpc-cards .rpc-card {
	flex-basis: 30%;
	display: inline-block;
	text-align: center;
	max-width: 300px;
}
.rpc-options .rpc-cards .rpc-card img {
	border: none;
	margin: 0 auto;
	max-height: 150px;
	max-width: 150px;
}
.rpc-options .rpc-cards .rpc-card h5 {
	font-weight: 600;
}
.rpc-options .rpc-cards .rpc-card h6 {
	margin: 1em 0 0.5em 0;
	text-transform: uppercase;
	font-weight: 600;
	letter-spacing: 0;
	font-size: 0.85em;
}
.rpc-options .rpc-cards .rpc-card ul {
	margin: 1.5em 0 0 1.5em;
	text-align: left;
}
.rpc-options .rpc-cards .rpc-card li {
	line-height: 1.1em;
	margin-bottom: 0.25em;
}
.rpc-options .wp-block-button {
	margin: 0 auto;
}

/* resources */
.rpc-resources {
	justify-content: center;
}
.rpc-resources i {
	padding-right: 20px;
}
.is-layout-grid.rpc-resources {
	grid-template-columns: repeat(4, 1fr);
	width: 100%;
	justify-content: center;
}
.is-layout-grid.rpc-resources .wp-block-button a {
	width: 100%;
	height: 100%;
}

/* leaflets */
#leaflets {
	padding: var(--rpc-large) 0;
}
#leaflets .is-layout-grid {
	grid-template-columns: 20% 20% 20%;
	column-gap: 20px;
	row-gap: 20px;
}
.rpc-leaflet {
	flex-basis: 20%;
	padding: 40px;
	border-radius: 30px;
	background-image: url('assets/images/bg-flash.png');
	background-repeat: no-repeat;
	background-size: cover;
	text-align: center;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-around;
}
.rpc-leaflet h5 {
	text-transform: uppercase;
	font-style: italic;
	font-weight: 900;
	color: var(--ast-global-color-5);
}
.rpc-leaflet h6 {
	text-transform: uppercase;
	color: var(--ast-global-color-5);
	font-size: 0.9em;
}
.rpc-leaflet p {
	font-size: 0.9em;
	margin: 1em 0;
}
.rpc-leaflet .wp-block-button {
	margin: 0 auto;
}

/* sidebar */
#secondary {
	background-color: var(--ast-global-color-8);
	flex-basis: 20%;
	padding: 35px;
}
.secondary .widget > :not(.widget-title) {
	font-size: 0.8rem;
}
#secondary .menu-item {
	margin-bottom: 0.25;
}
#secondary .menu-item a,
#secondary .wp-block-loginout a {
	color: var(--ast-global-color-4);
	text-decoration: none;
	text-transform: uppercase;
}

/* footer */
footer   {
	color: rgba(255,255,255,0.52);
  font-size: 0.85rem;
}
footer h2.widget-title {
	font-family: 'Source Sans 3', sans-serif;
	color: #fff;
  font-size: 0.74rem;
  text-transform: uppercase;
  letter-spacing: 1.5px;
  margin-bottom: 14px;
}
footer a, footer a:hover {
	color: var(--ast-global-color-4);
	font-size: 14px;
	text-decoration: none;
}
footer .widget_nav_menu h2.widgettitle {
	color: var(--ast-global-color-4);
	font-size: 16px;
	letter-spacing: 0px;
}
footer .has-background {
	padding: 0;
}
footer .wp-block-group figure.wp-block-image {
	padding-right: 40px;
}
footer .footer-brand-tagline {
  font-size: 0.72rem;
  text-transform: uppercase;
  letter-spacing: 1.5px;
  color: var(--teal);
  margin-bottom: 14px;
}
.footer-iso {
  display: flex;
  gap: 12px;
  margin-top: 16px;
}
.iso-badge {
  display: inline-block;
  border: 1px solid rgba(255,255,255,0.18);
  border-radius: 5px;
  padding: 4px 11px;
  font-size: 0.7rem;
  font-weight: 700;
  color: rgba(255,255,255,0.45);
}
footer .site-footer-above-section-3 .footer-widget-area {
	display: flex;
	justify-content: space-evenly;
}
footer .site-primary-footer-wrap[data-section="section-primary-footer-builder"] {
	border-top: 1px solid rgba(255,255,255,0.07);
	padding-top: 24px;
}

/* tablet - breakpoint 921px */
@media screen and (max-width: 921px) {
	:root {
	  --rpc-xl: 60px;
	  --rpc-large: 50px;
	  --rpc-medium: 40px;
	  --rpc-small: 30px;
	}
	/* header */
	.ast-builder-layout-element[data-section='section-header-mobile-trigger'] {
		display: flex;
	}

	.wp-block-group.is-nowrap {
		flex-wrap: wrap;
	}
	.rpc-nowrap {
		white-space: normal;
	}
	/* hero */
	.wp-block-cover {
		min-height: 65vh;
	}
	.wp-block-cover__background {
		background-color: var(--ast-global-color-5);
	}
	.entry-content[ast-blocks-layout] > .wp-block-cover .wp-block-cover__inner-container.right,
	.entry-content[ast-blocks-layout] > .wp-block-cover .wp-block-cover__inner-container.centre {
	  margin-right: auto;
	  width: 100%;
	}
	.wp-block-cover__inner-container.right h1.wp-block-heading,
	.wp-block-cover__inner-container.right p {
	  text-align: center;
	}
	.wp-block-cover__inner-container.right .wp-block-button {
		margin: 0 auto;
	}
	/* icons */
	.wp-block-group.rpc-icons {
		align-items: flex-start;
	}
	.rpc-icons .wp-block-image {
		flex-wrap: wrap;
		justify-content: center;
	}
	.rpc-icons .wp-block-image img {
		width: var(--rpc-small);
		height: var(--rpc-small);
		margin-bottom: 0.5em;
	}
	.rpc-icons .wp-block-image figcaption {
		font-size: 0.9em;
		text-align: center;
		line-height: 1.1em;
		margin: 0;
	}
	/* centred text */
	.rpc-centred-block p, .rpc-centred-block h2 {
		max-width: unset;
	}
	/* welcome */
	.rpc-welcome.wp-block-group > h2 {
		flex-basis: 15%;
	}
	.rpc-welcome.wp-block-group > .wp-block-group {
		flex-basis: 80%;
		margin-left: 0;
	}
	/* introduction */
	.wp-block-group.rpc-introduction .wp-block-group,
	.wp-block-group.rpc-introduction figure {
		flex-basis: 100%;
	}
	.wp-block-group.rpc-introduction .wp-block-group {
		padding: var(--rpc-medium);
	}
	/* why choose */
	.rpc-choose {
		max-width: unset;
		padding: var(--rpc-small);
	}
	/* testimonials */
	.rpc-with-quotes::before,
	.rpc-with-quotes::after {
	  width: 33px;
	  height: 25px;
	  background-size: cover;
	}
	.rpc-slide-inner h4 {
		margin-top: -30px;
		width: 90%;
	}
	/* meet the team */
	.rpc-block.rpc-meet .wp-block-group {
		padding: 0;
		padding-top: var(--rpc-small);
		margin: 0 auto;
	}
	.rpc-meet img {
		height: var(--rpc-large);
		width: var(--rpc-large);
	}
	.rpc-meet .rpc-team-photos.is-nowrap {
	  justify-content: center;
	  gap: var(--rpc-small);
	}
	/* join our team */
	.rpc-join h3 {
		flex-basis: 30%;
		text-align: left;
	}
	.rpc-join .wp-block-buttons {
		flex-basis: 100%;
		justify-content: center;
	}
	/* contact */
	.rpc-contact > div {
		flex-basis: 100%;
	}
	/* the team */
	.director .rpc-card {
		flex-basis: 35%;
		max-width: 350px;
	}
	.rpc-cards {
		row-gap: 1em;
	}
	.rpc-cards.leadership .rpc-card {
		flex-basis: 70%;
		grid-template-columns: 150px auto;
	}
	.rpc-cards.team .rpc-card {
		flex-basis: 60%;
		grid-template-columns: 120px auto;
	}

	/* primary care service */
	.rpc-service {
		flex-basis: 100%;
	}
	.rpc-our-services {
		margin: 0;
		padding: var(--rpc-medium);
	}

	/* centred image */
	.rpc-centred-image .wp-block-cover__inner-container {
	  width: 100%;
	}

	/* testimonial */
	.rpc-team-testimonial .rpc-testimonial-content {
		width: unset;
	}

	/* brochure download */
	.rpc-download.rpc-block:not(.rpc-full-width) {
		grid-template-columns: auto 300px;
	}


	/* how do pcns benefit */
	.rpc-choose.rpc-benefit figure.wp-block-image {
	  flex-basis: 20%;
	}

	/* support */
	.rpc-support > div {
	  width: 100%;
	}

	/* pale blue banner */
	.rpc-blue .wp-block-group {
	  max-width: unset
	}

	/* why work for */
	.rpc-why-work-for {
		padding: var(--rpc-medium);
	}
	.rpc-why-work-for .wp-block-group.has-background-color {
		padding: 30px;
		grid-template-columns: repeat(2, 300px);
		justify-content: center;
	}

	/* slideshow */
	.rpc-slideshow .wp-block-group {
		padding: var(--rpc-medium);
	}
	.rpc-slideshow > div {
		flex-basis: 45%;
	}

	.rpc-career,
	.rpc-jobs,
	.rpc-faqs {
		padding: var(--rpc-medium);
	}

	.wp-block-group.rpc-welcome {
		padding: var(--rpc-large);
	}

	/* resources */
	#leaflets {
		padding: var(--rpc-medium);
	}
	#leaflets .is-layout-grid {
		grid-template-columns: 1fr 1fr 1fr;
	}

	/* contact */
	.rpc-contact-form > *{
		width: 90%;
	}

	/* footer */
	.ast-builder-grid-row-container.ast-builder-grid-row-tablet-4-equal .ast-builder-grid-row {
	    grid-template-columns: repeat( 2,1fr );
	    padding: 0;
	 }
 	.footer-widget-area[data-section="sidebar-widgets-footer-widget-1"].footer-widget-area-inner,
 	.footer-widget-area[data-section="sidebar-widgets-footer-widget-2"].footer-widget-area-inner,
 	.footer-widget-area[data-section="sidebar-widgets-footer-widget-3"].footer-widget-area-inner,
 	.footer-widget-area[data-section="sidebar-widgets-footer-widget-4"].footer-widget-area-inner {
 		text-align: left;
	}
	.footer-widget-area h3 {
		margin-top: 1em;
	}

}
/* mobile - breakpoint 544px */
@media screen and (max-width: 544px) {
	:root {
		--rpc-xl: 40px;
		--rpc-large: 30px;
		--rpc-medium: 20px;
		--rpc-small: 10px;
 		--rpc-box: 200px;
	}

  .ast-separate-container #content .ast-container {
    padding-left: 0;
    padding-right: 0;
  }

	/* header */
	.ast-header-break-point #masthead .ast-primary-header-bar.main-header-bar {
		padding-left: var(--rpc-medium);
		padding-right: var(--rpc-medium);
	}
	.site-logo-img .custom-logo-link .custom-logo {
		width: 150px;
	}

	/* hero */
	.wp-block-cover {
		min-height: 50vh;
	}

	/* icons */
	.wp-block-group.rpc-icons {
		padding: var(--rpc-medium);
	}
	.rpc-icons .wp-block-group {
	  flex-basis: 20%;
	}
	.rpc-icons .wp-block-image figcaption {
		font-weight: 600;
	}
	.rpc-icons .wp-block-image img {
		width: var(--rpc-large);
		height: var(--rpc-large);
	}

	/* welcome */
	.rpc-welcome.wp-block-group > h2,
	.rpc-welcome.wp-block-group > .wp-block-group {
	   flex-basis: 100%;
	}

	/* why choose */
	.rpc-choose figure {
		flex-basis: 40%;
	}
	.rpc-choose img {
		width: var(--rpc-xl);
		height: var(--rpc-xl);
	}

	/* NHS banner */
	.rpc-nhs {
		gap: var(--rpc-small);
	}
	.rpc-nhs h3 {
		text-align: center;
	}

	/* audit results */
	.rpc-audit .wp-block-group {
	  flex-basis: 40%;
	  gap: 0;
	  padding: var(--rpc-small);
	}
	/* block */
	.rpc-block, .rpc-beyond {
	  grid-template-columns: 1fr;
	}

	/* beyond fcp */
	.rpc-beyond .wp-block-group ul {
		columns: 1;
	}

	/* teal banner */
	.rpc-teal > div {
	  width: 100%;
	}
	.rpc-teal img {
		padding-left: 0;
		max-width: 40%;
	}

	/* join our team */
	.rpc-join h3,
	.rpc-join .rpc-content {
		flex-basis: 100%;
	}
	.rpc-join .wp-block-buttons {
	    justify-content: left;
	}

	/* meet the team */	
	.rpc-meet img {
		width: 50px;
		height: 50px;
	}

	/* contact */
	form.wpcf7-form span[data-name="first-name"], form.wpcf7-form span[data-name="last-name"] {
		flex-basis: 47%;
	}

	/* the team */
	.rpc-cards .rpc-card img {
		height: 200px;
	}
	.director .rpc-card {
	    flex-basis: 100%;
	    max-width: unset;
  	}
  	.rpc-cards.leadership .rpc-card,
  	.rpc-cards.team .rpc-card  {
	    flex-basis: 100%;
	    grid-template-columns: 1fr;
	}

	/* primary care services */	
	.rpc-our-services > div:first-child > p {
		width: 100%;
	}
	.rpc-our-services .rpc-service {
		grid-template-columns: 1fr;
	}
	.rpc-our-services .is-layout-flex .rpc-service div {
		border-top-right-radius: 30px;
		border-bottom-left-radius: 0;
	}
	.rpc-our-services .is-layout-flex .rpc-service > img {
		border-top-right-radius: 0;
		border-bottom-left-radius: 30px;
	}

	/* benefits */
	.rpc-benefits > div {
		flex-basis: 100%;
	}

	/* team testimonial */
	.rpc-team-testimonial .rpc-testimonial-content {
		margin: 0 var(--rpc-medium);
	}
	.rpc-with-quotes::before {
		margin-left: -40px;
		margin-top: 10px;
	}
	.rpc-team-testimonial .rpc-with-quotes::after {
		margin-right: -40px;
		margin-top: 10px;
	}

	/* download */
	.rpc-download.rpc-block:not(.rpc-full-width) {
    	grid-template-columns: 1fr;
	}
	.rpc-download.rpc-block {
		padding: var(--rpc-medium);
	}

	/* benefit */
	.rpc-choose.rpc-benefit figure.wp-block-image {
	    flex-basis: 40%;
	}
  .rpc-benefit {
    padding: var(--rpc-medium);
  }
	.rpc-benefit .wp-block-group.is-layout-flex {
		grid-template-columns: repeat(1, 300px);
	}


	/* how we support */
	.rpc-support .rpc-bullets {
		column-count: 1;
	}

	/* options */
	.rpc-options p {
		width: 100%;
		margin-top: 1em;
	}
	.rpc-options .rpc-cards .rpc-card {
		flex-basis: 90%;
	}

	/* faqs */
	.rpc-faqs {
		padding: var(--rpc-medium);
	}
	.rpc-faqs details > summary > div:first-child {
		line-height: 1.2em;
	}

	/* why work */
	.rpc-why-work-for .wp-block-group:first-child {
		width: 100%;
	}

	/* primary care service */
	.rpc-why-work-for .wp-block-group.has-background-color {
		grid-template-columns: repeat(2, 150px);
	}
	.rpc-icon-bullet-points > div.rpc-bullets {
		width: 100%;
		grid-template-columns: unset;
		grid-template-rows: unset;
		grid-auto-flow: unset;
	}
	.rpc-centred-image ul {
		width: 100%;
	}
	.rpc-slideshow {
		gap: 0;
	}
	.rpc-slideshow > div {
	    flex-basis: 100%;
	}
	.rpc-career .wp-block-group {
		margin-left: 0px;
	}
	.rpc-job {
		flex-wrap: wrap;
	}
	.rpc-job > div {
		flex-basis: 100%;
	}

	/* resources */
	#leaflets .is-layout-grid {
		grid-template-columns: 1fr;
	}

	/* download */
	.rpc-download > div {
		max-width: unset;
		flex-wrap: wrap;
	} 

	/* contact */

	/* footer */
	.ast-builder-grid-row-container.ast-builder-grid-row-tablet-4-equal .ast-builder-grid-row {
	    grid-template-columns: 1fr;
	}
	footer.site-footer img {
		width: 175px !important;
	}
	.site-footer-section .wp-block-columns .wp-block-column:not(:last-child) {
	    margin-bottom: 0px;
	}
	.wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column {
    	flex-basis: 40% !important;
	}
	.site-footer-above-section-4 .widget_text p.has-text-align-left {
		text-align: center;
	}
	.site-footer-above-section-4 .widget_block .wp-block-button {
		margin: 0 auto;
	}
}
/* ── KEYFRAMES ── */
    @keyframes fadeUp { from{opacity:0;transform:translateY(22px)} to{opacity:1;transform:translateY(0)} }

/* ── MARQUEE STRIP ── */
.marquee-wrap { background: var(--teal-dark); overflow: hidden; border-top: 2px solid rgba(71,198,188,0.6); }
.marquee-track { display: flex; width: max-content; animation: marquee 34s linear infinite; }
.marquee-track:hover { animation-play-state: paused; }
@keyframes marquee { from{transform:translateX(0)} to{transform:translateX(-50%)} }
.marquee-item {
  display: flex; align-items: center; gap: 10px; white-space: nowrap;
  color: #fff; font-size: 0.79rem; font-weight: 600; letter-spacing: 0.8px;
  text-transform: uppercase; padding: 13px 30px;
  border-right: 1px solid rgba(255,255,255,0.14);
}
.marquee-item svg { opacity: 0.75; flex-shrink: 0; }

/* ── SCROLL REVEAL ── */
.reveal { opacity: 0; transform: translateY(26px); transition: opacity .6s ease, transform .6s ease; }
.reveal.in { opacity: 1; transform: translateY(0); }
.reveal-left { opacity: 0; transform: translateX(-26px); transition: opacity .65s ease, transform .65s ease; }
.reveal-left.in { opacity: 1; transform: translateX(0); }
.reveal-right { opacity: 0; transform: translateX(26px); transition: opacity .65s ease, transform .65s ease; }
.reveal-right.in { opacity: 1; transform: translateX(0); }
.d1{transition-delay:.08s} .d2{transition-delay:.16s} .d3{transition-delay:.24s} .d4{transition-delay:.32s} .d5{transition-delay:.4s}

/* ── FCP HEALTH CHECK ── */
.healthcheck-section { background: #f7f9fa; border-top: 1px solid #e2e8eb; border-bottom: 1px solid #e2e8eb; padding: 56px 60px 64px; }
.healthcheck-inner { max-width: 1000px; margin: 0 auto; }

/* ── RESPONSIVE ── */
@media (max-width: 921px) {
  .why-grid { grid-template-columns: repeat(2,1fr); }
  .charts-grid { grid-template-columns: repeat(3,1fr); gap:24px; }
  .testimonials-grid { grid-template-columns: 1fr; }
  .beyond-grid { grid-template-columns: repeat(3, 1fr); }
  .ast-builder-grid-row-container.ast-builder-grid-row-tablet-3-equal .ast-builder-grid-row { display: flex; flex-wrap: wrap; justify-content: space-between; }
  .ast-footer-social-1-wrap .ast-social-stack-desktop .ast-builder-social-element { justify-content: left; }
  .site-footer-above-section-3 { flex-basis: 100% }
  .ast-header-break-point .footer-widget-area[data-section="sidebar-widgets-footer-widget-2"] { display:flex; justify-content: space-between; gap: 20px; margin-top: 40px }
}
@media (max-width: 768px) {
  .rpc-hero-bg img { width: 100%; height: 100%; }
  .healthcheck-grid { grid-template-columns:1fr; gap:32px; }
  .healthcheck-section { padding:40px 20px 52px; }
  .healthcheck-card iframe { height:380px; }
  .why-grid { grid-template-columns:1fr; }
  .charts-grid { grid-template-columns:repeat(2,1fr); gap:20px; }
  .beyond-grid { grid-template-columns: repeat(2, 1fr); }
  .testimonials-grid { grid-template-columns: 1fr; }
  .ast-hfb-header .site-footer { padding: 28px 30px; }
}
@media (max-width: 544px) {
  .beyond-grid { grid-template-columns: 1fr; gap: 10px; max-width:100% }
  article .entry-content > .wp-block-cover.rpc-hero-bg { padding: 56px 20px 52px; max-width:100%; overflow: hidden; }
}

.entry-content[ast-blocks-layout] > .wp-block-cover .wp-block-cover__inner-container {
	max-width: 640px;
}

/* resources */
#resource-content.page-wrap {
  max-width: 1080px;
  margin: 0 auto;
  padding: 4rem 2rem 5rem;
}
#resource-content section[id] {
  padding-top: 170px;
  margin-bottom: 3.5rem;
  padding-bottom: 170px;
}
#resource-content section:not(:last-child) {
	border-bottom: 2px solid var(--light-gray);
}
#resource-content .section-eyebrow {
  font-size: 0.75rem;
  font-weight: 600;
  letter-spacing: 0.13em;
  text-transform: uppercase;
  color: var(--teal);
  margin-bottom: 0.4rem;
}
#resource-content section > p {
	max-width: 60%;
	margin-bottom: 1.75rem;
}
#resource-content .cards-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
  gap: 1.25rem;
}
#resource-content .resource-card {
  background: var(--white);
  border: 2px solid var(--teal);
  border-radius: 1rem;
  padding: 1.5rem;
  display: flex;
  flex-direction: column;
  gap: 0.65rem;
  transition: box-shadow 0.22s, transform 0.22s, border-color 0.22s;
}
#resource-content .resource-card > * {
	overflow-wrap: break-word;
}
.resource-card:hover {
  box-shadow: 0 6px 28px rgba(10,138,120,0.11);
  transform: translateY(-2px);
}
#resource-content .card-footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding-top: 0.6rem;
  border-top: 1px solid var(--teal-dark);
  margin-top: auto;
}
#resource-content .card-link {
  font-size: 0.85rem;
  font-weight: 600;
  color: var(--teal);
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  gap: 0.3rem;
  transition: gap 0.18s;
}
.section-divider {
  border: none;
  border-top-width: medium;
  border-top-style: none;
  border-top-color: currentcolor;
  border-top: 2px solid var(--mist-blue);
  margin: 3.5rem 0;
}
#summary-line {
  position: sticky;
  top: 0;
  z-index: 9999;
  background-color: rgba(30, 58, 74, .95);
 }
 #summary-line.is-stuck {
    box-shadow: 0 2px 6px rgba(30, 58, 74, .6);
}
#summary-line .wp-block-button__link.active {
	color: var(--teal-deeper) !important;
}
@media ( max-width: 921px ) {
	#summary-line.rpc-teal {
		padding: 20px 40px;
	}
}
@media ( max-width: 560px ) {
	#summary-line.rpc-teal .wp-block-buttons {
		grid-template-columns: repeat(2, 1fr);
	}
}

/* ─── ICON STRIP ──────────────────────────────────────────── */
.icon-strip {
  background: var(--teal-dark);
  padding: 22px 40px;
  display: flex;
  gap: 40px;
  justify-content: center;
  flex-wrap: wrap;
}
.icon-pill {
  display: flex;
  align-items: center;
  gap: 10px;
  color: #fff;
  font-size: 0.85rem;
  font-weight: 600;
  letter-spacing: 0.3px;
}
.icon-pill svg { flex-shrink: 0; }
@media (max-width: 640px) {
  .icon-strip {
    padding: 16px 20px;
    gap: 20px;
  }
}

/* ─── VALUE PROPS ─────────────────────────────────────────── */
.value-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
  gap: 24px;
  margin-top: 36px;
}
.value-card {
  background: var(--mint);
  border-left: 4px solid var(--teal);
  padding: 24px 22px;
  border-radius: 0 6px 6px 0;
  transition: box-shadow .2s, transform .2s;
}
.value-card:hover { box-shadow: 0 6px 20px rgba(26,140,140,0.12); transform: translateY(-2px); }
.value-card-title {
  font-weight: 700;
  font-size: 0.95rem;
  color: var(--teal-dark);
  text-transform: uppercase;
  letter-spacing: 0.5px;
  margin-bottom: 8px;
}
.value-card p { font-size: 0.9rem; color: var(--gray); line-height: 1.6; }

/* ─── WHAT WE DELIVER ─────────────────────────────────────── */
.delivers-section { background: var(--navy); padding: 60px 40px; }
.delivers-section h2, .delivers-section p { color: #fff; }
.delivers-section .section-label { color: var(--ast-global-color-0); }
.deliver-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: 20px;
  margin-top: 36px;
}
.deliver-item {
  background: rgba(255,255,255,0.06);
  border: 1px solid rgba(255,255,255,0.12);
  border-radius: 8px;
  padding: 22px 20px;
  display: flex;
  align-items: flex-start;
  gap: 14px;
  transition: background .2s;
}
.deliver-item:hover { background: rgba(255,255,255,0.10); }
.deliver-icon {
  width: 42px; height: 42px;
  background: #47C6BC;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  color: #fff;
  font-size: 1.2rem;
}
.deliver-item p { color: rgba(255,255,255,0.85); font-size: 0.9rem; line-height: 1.5; }

.delivers-section > .wp-block-group {
	width: 1060px;
	margin: 0 auto;
}
@media (max-width: 640px) {
  .delivers-section {
    padding: 44px 20px;
  }
  .delivers-section > .wp-block-group {
  	width: 100%;
  }
}

 /* ─── STATS ───────────────────────────────────────────────── */
.stats-section { background: var(--mint); padding: 60px 40px }
.stats-title { text-align: center; margin-bottom: 42px; }
.stats-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: 28px;
}
.stat-card {
  background: #fff;
  border-radius: 10px;
  padding: 32px 24px;
  text-align: center;
  box-shadow: 0 2px 12px rgba(26,140,140,0.08);
  border-top: 4px solid #47C6BC;
}
.stat-number {
  font-family: 'Lora', serif;
  font-size: 2.6rem;
  font-weight: 600;
  color: var(--teal-dark);
  line-height: 1;
  margin-bottom: 10px;
}
.stat-card p { font-size: 0.9rem; color: var(--gray); }

/* ─── CASE STUDIES ────────────────────────────────────────── */
.cases-section { background: var(--mist-blue); padding: 60px 40px }
.cases-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
  gap: 28px;
  margin-top: 36px;
}
.case-card {
  border: 1px solid var(--light-gray);
  border-radius: 10px;
  overflow: hidden;
  transition: box-shadow .2s, transform .2s;
}
.case-card:hover { box-shadow: 0 8px 24px rgba(26,140,140,0.14); transform: translateY(-3px); }
.case-card-head {
  background: linear-gradient(135deg, var(--teal-dark), var(--teal));
  padding: 22px 24px;
  color: #fff;
}
.case-card-head h3 { color: #fff; font-size: 1.05rem; margin-bottom: 4px; }
.case-tag {
  display: inline-block;
  background: rgba(255,255,255,0.2);
  font-size: 0.75rem;
  padding: 3px 10px;
  border-radius: 20px;
  color: #fff;
  margin-bottom: 8px;
}
.case-card-body { padding: 20px 24px; font-size: 0.9rem; color: var(--gray); line-height: 1.7; }

/* ─── KEY BENEFITS ────────────────────────────────────────── */
.benefits-section { background: var(--light-silver); padding: 60px 40px }
.benefits-title { text-align: center; margin-bottom: 10px; }
.benfits-section > p { text-align: center; color: var(--gray); margin-bottom: 42px; }
.benefits-list {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  gap: 28px;
}
.benefit-item {
  background: #fff;
  border-radius: 10px;
  padding: 28px 26px;
  box-shadow: 0 2px 10px rgba(0,0,0,0.05);
}
.benefit-num {
  font-family: 'Lora', serif;
  font-size: 2rem;
  color: var(--light-gray);
  font-weight: 600;
  margin-bottom: 1rem;
}
.benefit-item h3 { color: var(--teal-dark); margin-bottom: 10px; font-size: 1rem; font-weight: 600 }
.benefit-item p { font-size: 0.9rem; color: var(--gray); line-height: 1.7; }

.navy-background {
	background: linear-gradient(135deg, var(--navy) 0%, #0f3d4a 100%);
}

/* ── TWO-COL ── */
.two-col {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 4rem;
  align-items: center;
}
@media (max-width: 768px) {
  .two-col, .expertise-grid {
    grid-template-columns: 1fr;
    gap: 2rem;
  }
}
.two-col.flip { direction: rtl; }
.two-col.flip > * { direction: ltr; }

/* ── VISION PANEL ── */
#vision {
	padding: 60px 20px;
}
#vision h2 {
	margin-top: 0.6rem;
	margin-bottom: 0.6rem;
}
.vision-panel {
  background: linear-gradient(145deg, var(--navy), #1a4a5e);
  border-radius: 1.5rem;
  padding: 2.5rem;
  color: var(--white);
}
.vision-panel h3 {
  color: var(--teal);
  margin-bottom: 1rem;
}
.check-list { list-style: none; margin: 0 }
.check-list li {
  padding: 0.6rem 0;
  border-bottom: 1px solid rgba(255,255,255,0.08);
  display: flex;
  gap: 0.75rem;
  font-size: 0.93rem;
  color: rgba(255,255,255,0.82);
  align-items: flex-start;
}
.check-list li:last-child { border-bottom: none; }
.check-list li::before {
  content: '✓';
  color: var(--teal-lt);
  font-weight: 700;
  flex-shrink: 0;
  margin-top: 0.1rem;
}
