/*
Theme Name: AccessWaves
Description: Child theme for the AccessWaves website.
Author: AccessWaves
Template: ignition-technico
Version: 1.0.0
Text Domain: accesswaves
*/

/* Foundation tokens
--------------------------------------------- */
:root {
	--aw-color-graphite: #132026;
	--aw-color-teal: #0f766e;
	--aw-color-electric-lime: #a3e635;
	--aw-color-sand: #f3f0e8;
	--aw-color-white: #ffffff;
	--aw-color-near-black: #111827;
	--aw-color-steel: #58636d;
	--aw-color-border: #d6dce1;
	--aw-font-heading: "Sora", sans-serif;
	--aw-font-body: "Plus Jakarta Sans", sans-serif;
	/* Compatibility aliases keep component rules semantic during migration. */
	--aw-color-deep-navy: var(--aw-color-graphite);
	--aw-color-signal-blue: var(--aw-color-teal);
	--aw-color-cyan: var(--aw-color-electric-lime);
	--aw-color-off-white: var(--aw-color-sand);
	--aw-color-charcoal: var(--aw-color-near-black);
	--aw-color-slate: var(--aw-color-steel);
	--aw-radius-control: 5px;
	--aw-control-height: 52px;
	--aw-transition: 180ms ease;
	--aw-container: 1200px;
	--aw-section-space: clamp(4.5rem, 7vw, 7rem);
	--ignition-primary-font-family: var(--aw-font-body);
	--ignition-secondary-font-family: var(--aw-font-heading);
	--ignition-body-background-color: var(--aw-color-white);
	--ignition-primary-color: var(--aw-color-signal-blue);
	--ignition-secondary-color: var(--aw-color-deep-navy);
	--ignition-text-color: var(--aw-color-charcoal);
	--ignition-secondary-text-color: var(--aw-color-slate);
	--ignition-headings-color: var(--aw-color-deep-navy);
	--ignition-border-color: var(--aw-color-border);
	--ignition-forms-background-color: var(--aw-color-white);
	--ignition-forms-border-color: var(--aw-color-border);
	--ignition-forms-text-color: var(--aw-color-charcoal);
	--ignition-buttons-background-color: var(--aw-color-signal-blue);
	--ignition-buttons-border-color: var(--aw-color-signal-blue);
	--ignition-buttons-text-color: var(--aw-color-white);
	--ignition-top-bar-background-color: var(--aw-color-deep-navy);
	--ignition-top-bar-text-color: var(--aw-color-white);
	--ignition-top-bar-border-color: var(--aw-color-cyan);
	--ignition-header-background-color: var(--aw-color-white);
	--ignition-header-text-color: var(--aw-color-charcoal);
	--ignition-header-border-color: var(--aw-color-border);
	--ignition-header-submenu-background-color: var(--aw-color-white);
	--ignition-header-submenu-text-color: var(--aw-color-charcoal);
	--ignition-header-sticky-background-color: var(--aw-color-white);
	--ignition-header-sticky-text-color: var(--aw-color-charcoal);
	--ignition-header-sticky-border-color: var(--aw-color-border);
	--ignition-mobile-nav-background-color: var(--aw-color-deep-navy);
	--ignition-mobile-nav-text-color: var(--aw-color-white);
	--ignition-mobile-nav-border-color: rgba(214, 220, 225, 0.2);
	--ignition-hero-background-color: var(--aw-color-off-white);
	--ignition-hero-primary-text-color: var(--aw-color-deep-navy);
	--ignition-hero-secondary-text-color: var(--aw-color-slate);
	--ignition-footer-background-color: var(--aw-color-deep-navy);
	--ignition-footer-border-color: rgba(214, 220, 225, 0.2);
	--ignition-footer-title-color: var(--aw-color-white);
	--ignition-footer-text-color: var(--aw-color-border);
	--ignition-footer-credits-background-color: var(--aw-color-deep-navy);
	--ignition-footer-credits-text-color: var(--aw-color-border);
	--ignition-footer-credits-link-color: var(--aw-color-white);
	--ignition-footer-credits-border-color: rgba(214, 220, 225, 0.2);
	--ignition-technico-border-radius-base: var(--aw-radius-control);
	--ignition-technico-letter-spacing-base: 0;
}

/* Services landing page */
.page-id-9 .entry-content {
	color: var(--aw-color-charcoal);
}

.page-id-9 .entry-content > .wp-block-group {
	margin-bottom: 0;
}

.page-id-9 .aw-services-intro,
.page-id-9 .aw-services-listing,
.page-id-9 .aw-services-process,
.aw-services-cta {
	padding-block: clamp(4rem, 8vw, 7rem);
}

.page-id-9 .aw-section-inner {
	margin-inline: auto;
	max-width: 1180px;
	padding-inline: 20px;
}

.page-id-9 .aw-services-intro .aw-section-inner > .wp-block-group__inner-container {
	display: grid;
	gap: 2rem clamp(2rem, 7vw, 7rem);
	grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr);
}

.page-id-9 .aw-services-intro h2,
.page-id-9 .aw-services-listing h2,
.page-id-9 .aw-services-process h2,
.aw-services-cta h2 {
	margin-bottom: 0;
}

.page-id-9 .aw-services-intro p,
.page-id-9 .aw-services-listing-copy {
	color: var(--aw-color-slate);
	font-size: clamp(1.05rem, 1.5vw, 1.2rem);
	line-height: 1.75;
	margin-bottom: 0;
}

.page-id-9 .aw-section-label {
	color: var(--aw-color-signal-blue);
	font-size: 0.8125rem;
	font-weight: 600;
	letter-spacing: 0.14em;
	margin-bottom: 1rem;
	text-transform: uppercase;
}

.page-id-9 .aw-services-listing {
	background: var(--aw-color-off-white);
}

.page-id-9 .aw-services-listing-header > .wp-block-group__inner-container {
	display: grid;
	gap: 1.5rem clamp(2rem, 6vw, 6rem);
	grid-template-columns: minmax(0, 1.15fr) minmax(260px, 0.85fr);
	margin-bottom: clamp(3rem, 6vw, 5rem);
}

.page-id-9 .aw-services-grid .row-items {
	counter-reset: aw-service;
	row-gap: clamp(2.5rem, 5vw, 4rem);
}

.page-id-9 .aw-services-grid .entry-item {
	background: transparent;
	border-top: 2px solid var(--aw-color-border);
	box-shadow: none;
	counter-increment: aw-service;
	height: 100%;
	padding-top: 1.5rem;
}

.page-id-9 .aw-services-grid .entry-item-content {
	display: flex;
	flex-direction: column;
	height: 100%;
	padding: 0;
}

.page-id-9 .aw-services-grid .entry-item-content::before {
	color: var(--aw-color-signal-blue);
	content: "0" counter(aw-service);
	font-family: var(--aw-font-body);
	font-size: 0.8125rem;
	font-weight: 600;
	letter-spacing: 0.12em;
	margin-bottom: 1.25rem;
}

.page-id-9 .aw-services-grid .entry-item-title {
	font-size: clamp(1.35rem, 2vw, 1.7rem);
	line-height: 1.25;
	margin-bottom: 1rem;
}

.page-id-9 .aw-services-grid .entry-item-title::after {
	display: none;
}

.page-id-9 .aw-services-grid .entry-item-title a:hover,
.page-id-9 .aw-services-grid .entry-item-title a:focus {
	color: var(--aw-color-signal-blue);
}

.page-id-9 .aw-services-grid .entry-item-excerpt {
	color: var(--aw-color-slate);
	font-size: 1rem;
	line-height: 1.7;
	margin: 0 0 1.5rem;
}

.page-id-9 .aw-services-grid .btn-entry-more {
	align-self: flex-start;
	background: transparent;
	border: 0;
	color: var(--aw-color-deep-navy);
	font-size: 0.9375rem;
	margin-top: auto;
	min-height: auto;
	padding: 0;
}

.page-id-9 .aw-services-grid .btn-entry-more::after {
	color: var(--aw-color-signal-blue);
	content: " →";
}

.page-id-9 .aw-services-grid .btn-entry-more:hover,
.page-id-9 .aw-services-grid .btn-entry-more:focus {
	background: transparent;
	color: var(--aw-color-signal-blue);
}

.page-id-9 .aw-services-process {
	background: var(--aw-color-white);
}

.page-id-9 .aw-process-heading {
	margin-bottom: clamp(2.5rem, 5vw, 4.5rem);
}

.page-id-9 .aw-process-grid {
	gap: 0;
}

.page-id-9 .aw-process-step {
	border-left: 1px solid var(--aw-color-border);
	padding: 0 clamp(1.25rem, 3vw, 2rem);
}

.page-id-9 .aw-process-step:first-child {
	border-left: 0;
	padding-left: 0;
}

.page-id-9 .aw-process-number {
	color: var(--aw-color-signal-blue);
	font-size: 0.8125rem;
	font-weight: 600;
	letter-spacing: 0.12em;
	margin-bottom: 1.25rem;
}

.page-id-9 .aw-process-step h3 {
	font-size: clamp(1.4rem, 2.2vw, 1.75rem);
	margin-bottom: 0.75rem;
}

.page-id-9 .aw-process-step p:last-child {
	color: var(--aw-color-slate);
	font-size: 0.95rem;
	line-height: 1.65;
	margin-bottom: 0;
}

.aw-services-cta {
	background: var(--aw-color-deep-navy);
	color: var(--aw-color-white);
}

.aw-services-cta .aw-section-inner > .wp-block-group__inner-container {
	align-items: center;
	display: flex;
	gap: 2rem;
	justify-content: space-between;
}

.aw-services-cta h2 {
	color: var(--aw-color-white);
	max-width: 760px;
}

.aw-services-cta .wp-block-button__link {
	background: var(--aw-color-signal-blue);
	white-space: nowrap;
}

.aw-services-cta .wp-block-button__link:hover,
.aw-services-cta .wp-block-button__link:focus {
	background: var(--aw-color-cyan);
	color: var(--aw-color-deep-navy);
}

@media (max-width: 991px) {
	.page-id-9 .aw-services-intro .aw-section-inner > .wp-block-group__inner-container,
	.page-id-9 .aw-services-listing-header > .wp-block-group__inner-container {
		grid-template-columns: 1fr;
	}

	.page-id-9 .aw-process-grid {
		flex-wrap: wrap;
	}

	.page-id-9 .aw-process-step {
		border-left: 0;
		border-top: 1px solid var(--aw-color-border);
		flex-basis: 50% !important;
		padding: 1.75rem 1.5rem;
	}

	.page-id-9 .aw-process-step:first-child {
		border-top: 1px solid var(--aw-color-border);
		padding-left: 1.5rem;
	}
}

@media (max-width: 767px) {
	.page-id-9 .aw-services-intro,
	.page-id-9 .aw-services-listing,
	.page-id-9 .aw-services-process,
	.aw-services-cta {
		padding-block: 3.5rem;
	}

	.page-id-9 .aw-process-step {
		flex-basis: 100% !important;
		padding-inline: 0;
	}

	.page-id-9 .aw-process-step:first-child {
		padding-left: 0;
	}

	.aw-services-cta .aw-section-inner > .wp-block-group__inner-container {
		align-items: flex-start;
		flex-direction: column;
	}
}

html {
	scroll-behavior: smooth;
}

body {
	background: var(--aw-color-white);
	font-size: 17px;
	line-height: 1.7;
}

::selection {
	background: var(--aw-color-cyan);
	color: var(--aw-color-deep-navy);
}

@media (min-width: 1230px) {
	.container {
		width: var(--aw-container);
	}
}

/* Typography and colour foundations
--------------------------------------------- */
body,
button,
input,
select,
textarea {
	color: var(--aw-color-charcoal);
	font-family: var(--aw-font-body);
}

h1,
h2,
h3,
h4,
h5,
h6,
.site-logo,
.page-hero-title,
.page-title,
.widget-title {
	color: var(--aw-color-deep-navy);
	font-family: var(--aw-font-heading);
	font-weight: 700;
	letter-spacing: -0.025em;
}

body .navigation-main,
body .navigation-mobile,
body .mobile-nav-trigger,
body .head-content-slot-item {
	font-family: var(--aw-font-body);
	font-weight: 600;
}

body .navigation-main {
	font-size: 0.9375rem;
	letter-spacing: 0;
	line-height: 1.3;
	text-transform: none;
}

p,
li {
	color: inherit;
}

a {
	color: var(--aw-color-signal-blue);
	transition: color var(--aw-transition);
}

a:hover,
a:focus {
	color: var(--aw-color-deep-navy);
}

:focus-visible {
	outline: 3px solid color-mix(in srgb, var(--aw-color-cyan) 65%, transparent);
	outline-offset: 3px;
}

hr,
table,
th,
td,
input,
select,
textarea {
	border-color: var(--aw-color-border);
}

/* Buttons and calls to action
--------------------------------------------- */
.btn,
.button,
.gutenbee-block-button-link,
.wp-block-button__link,
input[type="button"],
input[type="reset"],
input[type="submit"],
button[type="submit"] {
	align-items: center;
	background: var(--aw-color-signal-blue);
	border: 2px solid var(--aw-color-signal-blue);
	border-radius: var(--aw-radius-control);
	box-shadow: none;
	color: var(--aw-color-white);
	display: inline-flex;
	font-family: var(--aw-font-body);
	font-size: 0.9375rem;
	font-weight: 600;
	justify-content: center;
	letter-spacing: 0.01em;
	min-height: var(--aw-control-height);
	padding: 0.75rem 1.5rem;
	text-transform: none;
	transition: background-color var(--aw-transition), border-color var(--aw-transition), color var(--aw-transition);
}

body .btn,
body .button,
body .gutenbee-block-button-link,
body .wp-block-button__link,
body input[type="button"],
body input[type="reset"],
body input[type="submit"],
body button[type="submit"] {
	font-family: var(--aw-font-body);
	font-weight: 600;
	text-transform: none;
}

.btn:hover,
.btn:focus,
.button:hover,
.button:focus,
.gutenbee-block-button-link:hover,
.gutenbee-block-button-link:focus,
.wp-block-button__link:hover,
.wp-block-button__link:focus,
input[type="button"]:hover,
input[type="reset"]:hover,
input[type="submit"]:hover,
button[type="submit"]:hover {
	background: var(--aw-color-deep-navy);
	border-color: var(--aw-color-deep-navy);
	color: var(--aw-color-white);
}

.wp-block-button.is-style-outline .wp-block-button__link:not([class*="has-"]) {
	background: transparent;
	border: 2px solid var(--aw-color-deep-navy);
	color: var(--aw-color-deep-navy);
}

.wp-block-button.is-style-outline .wp-block-button__link:not([class*="has-"]):hover,
.wp-block-button.is-style-outline .wp-block-button__link:not([class*="has-"]):focus {
	background: var(--aw-color-deep-navy);
	border-color: var(--aw-color-deep-navy);
	color: var(--aw-color-white);
}

/* Native Technico shell
--------------------------------------------- */
.head-intro {
	background-color: var(--aw-color-deep-navy);
	border-bottom: 2px solid var(--aw-color-cyan);
	color: var(--aw-color-white);
	font-size: 0.8125rem;
}

.head-intro-inner {
	min-height: 38px;
	padding-block: 7px;
}

.head-intro a {
	color: inherit;
	font-weight: 500;
	text-decoration: none;
}

.head-mast {
	background: var(--aw-color-white);
	border-bottom: 1px solid var(--aw-color-border);
}

.head-mast-inner {
	min-height: 100px;
	padding-block: 22px;
}

.site-branding {
	flex: 0 0 auto;
	max-width: none;
}

.site-logo {
	font-size: clamp(1.4rem, 2vw, 1.75rem);
	line-height: 1.08;
	white-space: nowrap;
}

.site-logo a {
	color: var(--aw-color-deep-navy);
	text-decoration: none;
}

.navigation-main > li > a {
	padding-inline: 0.7rem;
}

.navigation-main > li:not(.nav-button) > a::before,
.navigation-main > li:not(.nav-button) > a::after {
	content: none !important;
	display: none !important;
}

.navigation-main > li:hover > a,
.navigation-main > li > a:focus,
.navigation-main > .current-menu-item > a,
.navigation-main > .current_page_item > a {
	color: var(--aw-color-signal-blue);
	text-decoration: none;
}

.navigation-main ul {
	border: 1px solid var(--aw-color-border);
	border-radius: var(--aw-radius-control);
	box-shadow: 0 12px 30px rgba(19, 32, 38, 0.1);
	padding-block: 0.5rem;
}

.navigation-main li li a {
	color: var(--aw-color-charcoal);
	font-family: var(--aw-font-body);
	font-weight: 500;
	padding: 0.7rem 1rem;
	text-transform: none;
}

.navigation-main li li a:hover,
.navigation-main li li a:focus {
	background: var(--aw-color-off-white);
	color: var(--aw-color-signal-blue);
}

.navigation-main .nav-button > a {
	background: var(--aw-color-signal-blue);
	border: 2px solid var(--aw-color-signal-blue);
	border-radius: var(--aw-radius-control);
	color: var(--aw-color-white);
	font-weight: 600;
	min-height: var(--aw-control-height);
	padding-inline: 1.4rem;
}

.navigation-main .nav-button > a:hover,
.navigation-main .nav-button > a:focus {
	background: var(--aw-color-deep-navy);
	border-color: var(--aw-color-deep-navy);
	color: var(--aw-color-white);
}

.page-title-wrap,
.page-hero {
	background-color: var(--aw-color-off-white);
	border-bottom: 1px solid var(--aw-color-border);
}

body .page-hero-title,
body .page-title {
	color: var(--aw-color-deep-navy);
	font-family: var(--aw-font-heading);
	font-weight: 700;
	letter-spacing: -0.025em;
}

.page-hero {
	min-height: 168px;
}

.page-hero .row {
	align-items: center;
	min-height: 168px;
}

.page-hero-content {
	padding-left: 20px;
	position: relative;
}

.page-hero-content::before {
	background: var(--aw-color-cyan);
	content: "";
	height: 34px;
	left: 0;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	width: 3px;
}

.main {
	padding-block: var(--aw-section-space);
}

.footer {
	background-color: var(--aw-color-deep-navy);
}

.footer .footer-info {
	background: var(--aw-color-deep-navy);
	border-top: 1px solid rgba(220, 227, 234, 0.18);
	color: var(--aw-color-border);
	padding-block: 28px;
}

.footer-content-slot {
	align-items: center;
}

.footer-content-slot-item {
	font-size: 0.8125rem;
	letter-spacing: 0;
	line-height: 1.65;
	text-transform: none;
}

body .footer-content-slot-item {
	letter-spacing: 0;
	text-transform: none;
}

.footer-content-slot-item strong {
	color: var(--aw-color-white);
	font-family: var(--aw-font-heading);
	font-size: 0.9375rem;
	font-weight: 700;
}

.footer .footer-info a {
	color: var(--aw-color-white);
	text-decoration: none;
}

.footer .footer-info a:hover,
.footer .footer-info a:focus {
	color: var(--aw-color-cyan);
}

.mobile-nav-trigger {
	border: 1px solid var(--aw-color-deep-navy);
	border-radius: var(--aw-radius-control);
	color: var(--aw-color-deep-navy);
	font-size: 0.8125rem;
	min-height: 44px;
	padding: 0.65rem 0.9rem;
}

.navigation-mobile-wrap {
	background: var(--aw-color-deep-navy);
	color: var(--aw-color-white);
	padding-inline: clamp(1.25rem, 5vw, 2.5rem);
}

.navigation-mobile-dismiss {
	border-color: rgba(214, 220, 225, 0.2);
	color: var(--aw-color-white);
	font-family: var(--aw-font-body);
	font-size: 0.9375rem;
	font-weight: 600;
	min-height: 72px;
	padding-inline: 0;
	text-transform: none;
}

.navigation-mobile > li > a {
	border-color: rgba(214, 220, 225, 0.2);
	color: var(--aw-color-white);
	font-family: var(--aw-font-body);
	font-size: 1rem;
	font-weight: 600;
	letter-spacing: 0;
	padding-block: 1.05rem;
	text-transform: none;
}

.navigation-mobile > li > a:hover,
.navigation-mobile > li > a:focus,
.navigation-mobile > .current-menu-item > a,
.navigation-mobile > .current_page_item > a {
	color: var(--aw-color-cyan);
}

.navigation-mobile .nav-button > a {
	background: var(--aw-color-signal-blue);
	border: 2px solid var(--aw-color-signal-blue);
	border-radius: var(--aw-radius-control);
	color: var(--aw-color-white);
	margin-top: 1.25rem;
	min-height: var(--aw-control-height);
	padding: 0.85rem 1.25rem;
	text-align: center;
}

.navigation-mobile .nav-button > a:hover,
.navigation-mobile .nav-button > a:focus {
	background: var(--aw-color-white);
	border-color: var(--aw-color-white);
	color: var(--aw-color-deep-navy);
}

@media (max-width: 575px) {
	.head-intro-inner {
		padding-block: 6px;
	}

	.head-mast-inner {
		justify-content: space-between;
		min-height: 84px;
		padding-block: 16px;
	}

	.header-full-nav-center .site-branding,
	.site-branding {
		max-width: calc(100% - 110px);
	}

	.head-mast .head-content-slot-end {
		display: flex;
		margin-left: auto;
	}

	.head-content-slot-mobile-nav {
		display: inline-block;
	}

	.site-logo {
		font-size: 1.25rem;
		white-space: normal;
	}

	.page-hero,
	.page-hero .row {
		min-height: 132px;
	}

	.page-hero-content {
		padding-left: 16px;
		text-align: left;
	}

	.page-hero-content::before {
		height: 28px;
	}

	.main {
		padding-block: 3.5rem;
	}

	.footer .footer-info {
		padding-block: 24px;
	}

	.footer-content-slot-item {
		flex: 1 1 auto;
		min-width: 0;
		overflow-wrap: anywhere;
	}
}

/* Brand normalization: native content and controls
--------------------------------------------- */
.entry-content,
.entry-content p,
.entry-content li,
.entry-content table,
.comment-content,
.widget,
.widget p,
.widget li {
	font-family: var(--aw-font-body);
}

.entry-content h1,
.entry-content h2,
.entry-content h3,
.entry-content h4,
.entry-content h5,
.entry-content h6,
.widget-title,
.entry-title,
.gutenbee-post-types-item-title {
	font-family: var(--aw-font-heading);
	text-transform: none;
}

h1 {
	font-size: clamp(3.25rem, 5.2vw, 4.25rem);
}

h2 {
	font-size: clamp(2.375rem, 4vw, 3rem);
}

h3 {
	font-size: clamp(1.625rem, 2.8vw, 2rem);
	font-weight: 700;
}

h4 {
	font-size: clamp(1.35rem, 2vw, 1.5rem);
	font-weight: 600;
}

h5 {
	font-size: 1.25rem;
	font-weight: 600;
}

h6 {
	font-size: 1rem;
	font-weight: 600;
}

body .page-hero-title,
body .page-title {
	font-size: clamp(2.25rem, 4vw, 3.25rem);
	line-height: 1.2;
	text-transform: none;
}

blockquote,
.wp-block-quote {
	border-left: 3px solid var(--aw-color-cyan);
	color: var(--aw-color-charcoal);
	font-family: var(--aw-font-heading);
	font-weight: 600;
}

small,
figcaption,
.wp-caption-text,
.entry-meta,
.entry-subtitle {
	color: var(--aw-color-slate);
}

/* Single service pages */
.single-ignition-service .page-hero,
.single-ignition-service .page-hero .row {
	min-height: 0;
}

.single-ignition-service .page-hero-content {
	padding-block: clamp(3rem, 5vw, 4.75rem);
}

.single-ignition-service .page-hero-title {
	max-width: 780px;
}

.single-ignition-service .main {
	padding-block: clamp(4.5rem, 7vw, 7rem);
}

.single-ignition-service #site-content.col-lg-9,
.single-ignition-service .page-hero .col-lg-9 {
	flex: 0 0 100%;
	max-width: 900px;
}

.single-ignition-service #site-content.col-lg-9 .entry-content {
	padding-inline: 20px;
}

.single-ignition-service .entry-content {
	color: var(--aw-color-charcoal);
	font-size: 1.0625rem;
	line-height: 1.8;
}

.single-ignition-service .entry-content > * {
	margin-bottom: 1.6rem;
}

.single-ignition-service .entry-content > :last-child {
	margin-bottom: 0;
}

.single-ignition-service .entry-content h2,
.single-ignition-service .entry-content h3,
.single-ignition-service .entry-content h4 {
	margin-top: clamp(2.5rem, 5vw, 4rem);
}

.single-ignition-service .entry-content p:first-child {
	font-size: clamp(1.1rem, 1.5vw, 1.2rem);
	line-height: 1.8;
}

@media (max-width: 767px) {
	.single-ignition-service .page-hero-content {
		padding-block: 2.75rem;
	}

	.single-ignition-service .main {
		padding-block: 3.5rem 4.5rem;
	}

	.single-ignition-service #site-content.col-lg-9 .entry-content {
		padding-inline: 0;
	}
}

/* Forms */
label,
legend {
	color: var(--aw-color-deep-navy);
	font-family: var(--aw-font-body);
	font-weight: 600;
}

input[type="text"],
input[type="email"],
input[type="number"],
input[type="password"],
input[type="date"],
input[type="datetime-local"],
input[type="time"],
input[type="search"],
input[type="url"],
input[type="tel"],
select,
textarea {
	background: var(--aw-color-white);
	border: 1px solid var(--aw-color-border);
	border-radius: var(--aw-radius-control);
	box-shadow: none;
	color: var(--aw-color-charcoal);
	font-family: var(--aw-font-body);
	font-size: 1rem;
	min-height: var(--aw-control-height);
	padding: 0.75rem 0.9rem;
	transition: border-color var(--aw-transition), box-shadow var(--aw-transition);
}

textarea {
	min-height: 160px;
	resize: vertical;
}

input::placeholder,
textarea::placeholder {
	color: var(--aw-color-slate);
	opacity: 0.85;
}

input[type="text"]:focus,
input[type="email"]:focus,
input[type="number"]:focus,
input[type="password"]:focus,
input[type="date"]:focus,
input[type="datetime-local"]:focus,
input[type="time"]:focus,
input[type="search"]:focus,
input[type="url"]:focus,
input[type="tel"]:focus,
select:focus,
textarea:focus {
	border-color: var(--aw-color-signal-blue);
	box-shadow: 0 0 0 3px rgba(34, 184, 207, 0.18);
	outline: 0;
}

input[type="checkbox"],
input[type="radio"] {
	accent-color: var(--aw-color-signal-blue);
}

/* Button variants omitted by Technico */
.comment-reply-link,
.ci-item-filter,
.added_to_cart,
.wp-block-file .wp-block-file__button {
	align-items: center;
	background: var(--aw-color-signal-blue);
	border: 2px solid var(--aw-color-signal-blue);
	border-radius: var(--aw-radius-control);
	box-shadow: none;
	color: var(--aw-color-white);
	display: inline-flex;
	font-family: var(--aw-font-body);
	font-weight: 600;
	justify-content: center;
	min-height: var(--aw-control-height);
	padding: 0.75rem 1.5rem;
	text-transform: none;
}

.comment-reply-link:hover,
.comment-reply-link:focus,
.added_to_cart:hover,
.added_to_cart:focus,
.wp-block-file .wp-block-file__button:hover,
.wp-block-file .wp-block-file__button:focus {
	background: var(--aw-color-deep-navy);
	border-color: var(--aw-color-deep-navy);
	color: var(--aw-color-white);
}

/* Widgets and sidebars */
.widget {
	color: var(--aw-color-charcoal);
	font-size: 0.9375rem;
	line-height: 1.65;
}

.widget + .widget {
	border-top: 1px solid var(--aw-color-border);
	padding-top: 1.75rem;
}

.widget-title {
	color: var(--aw-color-deep-navy);
	font-size: 1.125rem;
	font-weight: 700;
	letter-spacing: -0.01em;
	line-height: 1.3;
	margin-bottom: 1rem;
}

.widget a {
	color: var(--aw-color-charcoal);
	text-decoration: none;
}

.widget a:hover,
.widget a:focus {
	color: var(--aw-color-signal-blue);
}

.widget ul {
	list-style: none;
	margin: 0;
	padding: 0;
}

.widget li + li {
	border-top: 1px solid var(--aw-color-border);
	margin-top: 0.65rem;
	padding-top: 0.65rem;
}

/* GutenBee */
[class*="wp-block-gutenbee"],
[class*="gutenbee-block-"] {
	font-family: var(--aw-font-body);
}

[class*="wp-block-gutenbee"] h1,
[class*="wp-block-gutenbee"] h2,
[class*="wp-block-gutenbee"] h3,
[class*="wp-block-gutenbee"] h4,
[class*="wp-block-gutenbee"] h5,
[class*="wp-block-gutenbee"] h6,
.gutenbee-post-types-item-title {
	color: var(--aw-color-deep-navy);
	font-family: var(--aw-font-heading);
	text-transform: none;
}

.gutenbee-block-button-link {
	background: var(--aw-color-signal-blue);
	border: 2px solid var(--aw-color-signal-blue);
	border-radius: var(--aw-radius-control);
	color: var(--aw-color-white);
	font-size: 0.9375rem;
	font-weight: 600;
	min-height: var(--aw-control-height);
	padding: 0.75rem 1.5rem;
}

.gutenbee-block-button-link:hover,
.gutenbee-block-button-link:focus {
	background: var(--aw-color-deep-navy);
	border-color: var(--aw-color-deep-navy);
	color: var(--aw-color-white);
}

.gutenbee-block-button-link:visited {
	background: var(--aw-color-signal-blue);
	border-color: var(--aw-color-signal-blue);
	color: var(--aw-color-white);
}

.gutenbee-row .ci-item-filter {
	background: transparent;
	border: 1px solid var(--aw-color-border);
	border-radius: var(--aw-radius-control);
	color: var(--aw-color-charcoal);
	font-size: 0.9375rem;
	padding: 0.6rem 0.9rem;
}

.gutenbee-row .ci-item-filter:hover,
.gutenbee-row .ci-item-filter:focus,
.gutenbee-row .filter-active {
	background: var(--aw-color-signal-blue);
	border-color: var(--aw-color-signal-blue);
	color: var(--aw-color-white);
}

.gutenbee-post-types-item-thumb img,
.wp-block-gutenbee-image img,
.wp-block-gutenbee-banner,
.wp-block-gutenbee-video,
.wp-block-gutenbee-video-embed-wrapper {
	border-radius: var(--aw-radius-control);
}

.gutenbee-row .gutenbee-post-types-item-meta,
.gutenbee-row .ci-item-excerpt,
.gutenbee-block-testimonial__info {
	color: var(--aw-color-slate);
}

.wp-block-gutenbee-review-item-outer {
	background: var(--aw-color-off-white);
	border-radius: var(--aw-radius-control);
	overflow: hidden;
}

.wp-block-gutenbee-review-item-inner {
	background: var(--aw-color-signal-blue);
}

/* Pagination and utility controls */
.navigation a,
.navigation .page-numbers,
.woocommerce-pagination a,
.woocommerce-pagination .page-numbers,
.btn-to-top {
	border-color: var(--aw-color-border);
	border-radius: var(--aw-radius-control);
	box-shadow: none;
}

.navigation a:hover,
.navigation .page-numbers.current,
.woocommerce-pagination a:hover,
.woocommerce-pagination .page-numbers.current,
.btn-to-top:hover {
	background: var(--aw-color-signal-blue);
	border-color: var(--aw-color-signal-blue);
	color: var(--aw-color-white);
}

/* Homepage hero */
.home.page-id-7 .main {
	padding-block: 0;
}

.home.page-id-7 .entry-content > .aw-home-hero {
	margin-bottom: 0;
}

.home.page-id-7 .aw-home-hero {
	align-items: center;
	min-height: clamp(650px, 74vh, 760px) !important;
	padding-block: clamp(4.5rem, 9vw, 7.5rem);
}

.home.page-id-7 .aw-home-hero .wp-block-cover__image-background {
	object-position: center center;
}

.home.page-id-7 .aw-home-hero > .wp-block-cover__inner-container {
	width: 100%;
}

.home.page-id-7 .aw-home-hero-inner {
	margin-inline: auto;
	max-width: 1200px;
	padding-inline: 20px;
	width: 100%;
}

.home.page-id-7 .aw-home-hero-inner > .wp-block-group__inner-container {
	max-width: 720px;
}

.home.page-id-7 .aw-home-hero-kicker {
	color: var(--aw-color-cyan);
	font-size: 0.8125rem;
	font-weight: 600;
	letter-spacing: 0.14em;
	margin-bottom: 1.4rem;
	text-transform: uppercase;
}

.home.page-id-7 .aw-home-hero-title {
	color: var(--aw-color-white);
	font-size: clamp(3.25rem, 5vw, 4.25rem);
	line-height: 1.07;
	margin-bottom: 1.5rem;
	max-width: 700px;
}

.home.page-id-7 .aw-home-hero-copy {
	color: var(--aw-color-white);
	font-size: clamp(1.0625rem, 1.6vw, 1.2rem);
	line-height: 1.75;
	margin-bottom: 2.25rem;
	max-width: 620px;
}

.home.page-id-7 .aw-home-hero-actions {
	gap: 0.875rem;
}

.home.page-id-7 .aw-home-hero-actions .wp-block-button__link {
	min-width: 174px;
	text-align: center;
}

.home.page-id-7 .aw-home-hero-actions .is-style-outline .wp-block-button__link {
	background: transparent;
	border-color: var(--aw-color-white);
	color: var(--aw-color-white);
}

.home.page-id-7 .aw-home-hero-actions .is-style-outline .wp-block-button__link:hover,
.home.page-id-7 .aw-home-hero-actions .is-style-outline .wp-block-button__link:focus {
	background: var(--aw-color-cyan);
	border-color: var(--aw-color-cyan);
	color: var(--aw-color-deep-navy);
}

@media (max-width: 991px) {
	.home.page-id-7 .aw-home-hero {
		min-height: 680px !important;
	}

	.home.page-id-7 .aw-home-hero .wp-block-cover__image-background {
		object-position: 58% center;
	}

	.home.page-id-7 .aw-home-hero .wp-block-cover__background {
		opacity: 0.52;
	}
}

@media (max-width: 767px) {
	.home.page-id-7 .aw-home-hero {
		min-height: 650px !important;
		padding-block: 4.5rem;
	}

	.home.page-id-7 .aw-home-hero .wp-block-cover__image-background {
		object-position: 62% center;
	}

	.home.page-id-7 .aw-home-hero .wp-block-cover__background {
		opacity: 0.64;
	}

	.home.page-id-7 .aw-home-hero-title {
		font-size: clamp(2.5rem, 11vw, 3.25rem);
	}

	.home.page-id-7 .aw-home-hero-actions {
		align-items: stretch;
		flex-direction: column;
	}

	.home.page-id-7 .aw-home-hero-actions .wp-block-button,
	.home.page-id-7 .aw-home-hero-actions .wp-block-button__link {
		width: 100%;
	}
}

/* Homepage capabilities */
.home.page-id-7 .aw-home-capabilities {
	background: var(--aw-color-white);
	padding-block: clamp(5rem, 9vw, 8rem);
}

.home.page-id-7 .aw-home-section-inner {
	margin-inline: auto;
	max-width: 1200px;
	padding-inline: 20px;
}

.home.page-id-7 .aw-home-capabilities-header > .wp-block-group__inner-container {
	align-items: end;
	display: grid;
	gap: 2rem clamp(3rem, 8vw, 8rem);
	grid-template-columns: minmax(0, 1.15fr) minmax(280px, 0.85fr);
	margin-bottom: clamp(3.5rem, 7vw, 5.5rem);
}

.home.page-id-7 .aw-home-section-label {
	color: var(--aw-color-signal-blue);
	font-size: 0.8125rem;
	font-weight: 600;
	letter-spacing: 0.14em;
	margin-bottom: 1rem;
	text-transform: uppercase;
}

.home.page-id-7 .aw-home-capabilities h2 {
	margin-bottom: 0;
	max-width: 720px;
}

.home.page-id-7 .aw-home-capabilities-intro {
	color: var(--aw-color-slate);
	font-size: clamp(1.05rem, 1.5vw, 1.15rem);
	line-height: 1.75;
	margin-bottom: 0;
}

.home.page-id-7 .aw-home-core-services .row-items {
	counter-reset: aw-home-service;
	row-gap: 2.5rem;
}

.home.page-id-7 .aw-home-core-services .entry-item {
	background: transparent;
	border-top: 2px solid var(--aw-color-border);
	box-shadow: none;
	counter-increment: aw-home-service;
	height: 100%;
	padding-top: 1.5rem;
}

.home.page-id-7 .aw-home-core-services .entry-item-content {
	display: flex;
	flex-direction: column;
	height: 100%;
	padding: 0;
}

.home.page-id-7 .aw-home-core-services .entry-item-content::before {
	color: var(--aw-color-signal-blue);
	content: "0" counter(aw-home-service);
	font-size: 0.8125rem;
	font-weight: 600;
	letter-spacing: 0.12em;
	margin-bottom: 1.25rem;
}

.home.page-id-7 .aw-home-core-services .entry-item-title {
	font-size: clamp(1.3rem, 1.8vw, 1.6rem);
	line-height: 1.25;
	margin-bottom: 1rem;
}

.home.page-id-7 .aw-home-core-services .entry-item-title::after {
	display: none;
}

.home.page-id-7 .aw-home-core-services .entry-item-title a:hover,
.home.page-id-7 .aw-home-core-services .entry-item-title a:focus {
	color: var(--aw-color-signal-blue);
}

.home.page-id-7 .aw-home-core-services .entry-item-excerpt {
	color: var(--aw-color-slate);
	font-size: 0.95rem;
	line-height: 1.7;
	margin: 0 0 1.5rem;
}

.home.page-id-7 .aw-home-core-services .btn-entry-more {
	align-self: flex-start;
	background: transparent;
	border: 0;
	color: var(--aw-color-deep-navy);
	font-size: 0.9375rem;
	margin-top: auto;
	min-height: auto;
	padding: 0;
}

.home.page-id-7 .aw-home-core-services .btn-entry-more::after {
	color: var(--aw-color-signal-blue);
	content: " →";
}

.home.page-id-7 .aw-home-core-services .btn-entry-more:hover,
.home.page-id-7 .aw-home-core-services .btn-entry-more:focus {
	background: transparent;
	color: var(--aw-color-signal-blue);
}

.home.page-id-7 .aw-home-capabilities-action {
	justify-content: flex-end;
	margin-top: clamp(3rem, 6vw, 4.5rem);
}

.home.page-id-7 .aw-home-capabilities-action .wp-block-button__link {
	background: transparent;
	border-color: var(--aw-color-deep-navy);
	color: var(--aw-color-deep-navy);
}

.home.page-id-7 .aw-home-capabilities-action .wp-block-button__link:hover,
.home.page-id-7 .aw-home-capabilities-action .wp-block-button__link:focus {
	background: var(--aw-color-deep-navy);
	border-color: var(--aw-color-deep-navy);
	color: var(--aw-color-white);
}

@media (max-width: 991px) {
	.home.page-id-7 .aw-home-capabilities-header > .wp-block-group__inner-container {
		align-items: start;
		grid-template-columns: 1fr;
	}
}

@media (max-width: 767px) {
	.home.page-id-7 .aw-home-capabilities {
		padding-block: 4.5rem;
	}

	.home.page-id-7 .aw-home-core-services .row-items {
		row-gap: 2rem;
	}

	.home.page-id-7 .aw-home-capabilities-action {
		justify-content: stretch;
	}

	.home.page-id-7 .aw-home-capabilities-action .wp-block-button,
	.home.page-id-7 .aw-home-capabilities-action .wp-block-button__link {
		width: 100%;
	}
}

/* Homepage industries */
.home.page-id-7 .aw-home-industries {
	background: var(--aw-color-deep-navy);
	color: var(--aw-color-white);
	padding-block: clamp(5rem, 9vw, 8rem);
}

.home.page-id-7 .aw-home-industries-layout > .wp-block-group__inner-container {
	align-items: start;
	display: grid;
	gap: clamp(3.5rem, 9vw, 9rem);
	grid-template-columns: minmax(0, 0.82fr) minmax(0, 1.18fr);
}

.home.page-id-7 .aw-home-industries .aw-home-section-label {
	color: var(--aw-color-cyan);
}

.home.page-id-7 .aw-home-industries h2 {
	color: var(--aw-color-white);
	margin-bottom: 1.75rem;
}

.home.page-id-7 .aw-home-industries-intro p:last-child {
	color: var(--aw-color-border);
	font-size: clamp(1.05rem, 1.5vw, 1.15rem);
	line-height: 1.75;
	margin-bottom: 0;
	max-width: 520px;
}

.home.page-id-7 .aw-home-industry-row {
	border-top: 1px solid rgba(214, 220, 225, 0.28);
}

.home.page-id-7 .aw-home-industry-row:last-child {
	border-bottom: 1px solid rgba(214, 220, 225, 0.28);
}

.home.page-id-7 .aw-home-industry-row > .wp-block-group__inner-container {
	display: grid;
	gap: 1.5rem;
	grid-template-columns: 54px minmax(0, 1fr);
	padding-block: clamp(1.6rem, 3vw, 2.25rem);
}

.home.page-id-7 .aw-home-industry-number {
	color: var(--aw-color-cyan);
	font-size: 0.8125rem;
	font-weight: 600;
	letter-spacing: 0.12em;
	margin: 0;
	padding-top: 0.35rem;
}

.home.page-id-7 .aw-home-industry-content h3 {
	color: var(--aw-color-white);
	font-size: clamp(1.35rem, 2vw, 1.75rem);
	line-height: 1.25;
	margin-bottom: 0.6rem;
}

.home.page-id-7 .aw-home-industry-content p {
	color: var(--aw-color-border);
	font-size: 0.95rem;
	line-height: 1.65;
	margin-bottom: 0;
	max-width: 560px;
}

@media (max-width: 991px) {
	.home.page-id-7 .aw-home-industries-layout > .wp-block-group__inner-container {
		grid-template-columns: 1fr;
	}

	.home.page-id-7 .aw-home-industries-intro {
		max-width: 660px;
	}
}

@media (max-width: 767px) {
	.home.page-id-7 .aw-home-industries {
		padding-block: 4.5rem;
	}

	.home.page-id-7 .aw-home-industry-row > .wp-block-group__inner-container {
		gap: 0.75rem;
		grid-template-columns: 40px minmax(0, 1fr);
		padding-block: 1.5rem;
	}
}

/* Homepage about */
.home.page-id-7 .aw-home-about {
	background: var(--aw-color-off-white);
	padding-block: clamp(5rem, 9vw, 8rem);
}

.home.page-id-7 .aw-home-about-layout > .wp-block-group__inner-container {
	align-items: center;
	display: grid;
	gap: clamp(3rem, 8vw, 7.5rem);
	grid-template-columns: minmax(0, 1.08fr) minmax(0, 0.92fr);
}

.home.page-id-7 .aw-home-about-image {
	margin-bottom: 0;
}

.home.page-id-7 .aw-home-about-image img {
	aspect-ratio: 4 / 3;
	border-radius: var(--aw-radius-control);
	display: block;
	height: 100%;
	object-fit: cover;
	width: 100%;
}

.home.page-id-7 .aw-home-about-content h2 {
	margin-bottom: 1.75rem;
}

.home.page-id-7 .aw-home-about-content p:not(.aw-home-section-label):not(.aw-home-about-link) {
	color: var(--aw-color-slate);
	font-size: clamp(1.025rem, 1.4vw, 1.125rem);
	line-height: 1.75;
	margin-bottom: 1.15rem;
}

.home.page-id-7 .aw-home-about-link {
	margin: 2rem 0 0;
}

.home.page-id-7 .aw-home-about-link a {
	align-items: center;
	border-bottom: 2px solid var(--aw-color-signal-blue);
	color: var(--aw-color-deep-navy);
	display: inline-flex;
	font-weight: 600;
	gap: 0.6rem;
	padding-bottom: 0.35rem;
	text-decoration: none;
}

.home.page-id-7 .aw-home-about-link a::after {
	color: var(--aw-color-signal-blue);
	content: "→";
}

.home.page-id-7 .aw-home-about-link a:hover,
.home.page-id-7 .aw-home-about-link a:focus {
	color: var(--aw-color-signal-blue);
}

@media (max-width: 991px) {
	.home.page-id-7 .aw-home-about-layout > .wp-block-group__inner-container {
		grid-template-columns: 1fr;
	}

	.home.page-id-7 .aw-home-about-content {
		max-width: 680px;
	}
}

@media (max-width: 767px) {
	.home.page-id-7 .aw-home-about {
		padding-block: 4.5rem;
	}
}

/* Homepage process */
.home.page-id-7 .aw-home-process {
	background: var(--aw-color-white);
	padding-block: clamp(5rem, 9vw, 8rem);
}

.home.page-id-7 .aw-home-process-header {
	margin-bottom: clamp(3rem, 6vw, 5rem);
	max-width: 820px;
}

.home.page-id-7 .aw-home-process-header h2 {
	margin-bottom: 0;
}

.home.page-id-7 .aw-home-process-grid {
	border-bottom: 1px solid var(--aw-color-border);
	border-top: 1px solid var(--aw-color-border);
	gap: 0;
}

.home.page-id-7 .aw-home-process-step {
	border-right: 1px solid var(--aw-color-border);
	padding: clamp(1.75rem, 3vw, 2.5rem);
}

.home.page-id-7 .aw-home-process-step:first-child {
	padding-left: 0;
}

.home.page-id-7 .aw-home-process-step:last-child {
	border-right: 0;
	padding-right: 0;
}

.home.page-id-7 .aw-home-process-number {
	color: var(--aw-color-signal-blue);
	font-size: 0.8125rem;
	font-weight: 600;
	letter-spacing: 0.12em;
	margin-bottom: 1.5rem;
}

.home.page-id-7 .aw-home-process-step h3 {
	font-size: clamp(1.4rem, 2vw, 1.75rem);
	margin-bottom: 0.75rem;
}

.home.page-id-7 .aw-home-process-step p:last-child {
	color: var(--aw-color-slate);
	font-size: 0.95rem;
	line-height: 1.65;
	margin-bottom: 0;
}

/* Shared Services-page closing CTA */
.aw-services-cta .aw-section-inner {
	margin-inline: auto;
	max-width: 1180px;
	padding-inline: 20px;
}

@media (max-width: 991px) {
	.home.page-id-7 .aw-home-process-grid {
		flex-wrap: wrap;
	}

	.home.page-id-7 .aw-home-process-step {
		border-bottom: 1px solid var(--aw-color-border);
		flex-basis: 50% !important;
	}

	.home.page-id-7 .aw-home-process-step:nth-child(2) {
		border-right: 0;
		padding-right: 0;
	}

	.home.page-id-7 .aw-home-process-step:nth-child(3) {
		padding-left: 0;
	}

	.home.page-id-7 .aw-home-process-step:nth-last-child(-n + 2) {
		border-bottom: 0;
	}
}

@media (max-width: 767px) {
	.home.page-id-7 .aw-home-process {
		padding-block: 4.5rem;
	}

	.home.page-id-7 .aw-home-process-step {
		border-bottom: 1px solid var(--aw-color-border) !important;
		border-right: 0;
		flex-basis: 100% !important;
		padding: 1.75rem 0;
	}

	.home.page-id-7 .aw-home-process-step:last-child {
		border-bottom: 0 !important;
	}
}

/* Request a Service page */
.page-id-11 .main {
	padding-block: 0;
}

.page-id-11 .aw-request-service {
	background: var(--aw-color-off-white);
	padding-block: clamp(5rem, 9vw, 8rem);
}

.page-id-11 .aw-request-service-inner {
	margin-inline: auto;
	max-width: 1180px;
	padding-inline: 20px;
}

.page-id-11 .aw-request-service-intro {
	margin-bottom: clamp(3rem, 6vw, 5rem);
	max-width: 800px;
}

.page-id-11 .aw-section-label {
	color: var(--aw-color-signal-blue);
	font-family: var(--aw-font-body);
	font-size: 0.8125rem;
	font-weight: 600;
	letter-spacing: 0.12em;
	margin-bottom: 1.25rem;
	text-transform: uppercase;
}

.page-id-11 .aw-request-service-intro h2 {
	margin-bottom: 1.25rem;
}

.page-id-11 .aw-request-service-intro p:last-child {
	color: var(--aw-color-slate);
	font-size: 1.0625rem;
	line-height: 1.75;
	margin-bottom: 0;
	max-width: 680px;
}

.page-id-11 .aw-request-service-layout > .wp-block-group__inner-container {
	display: grid;
	grid-template-columns: minmax(0, 1.45fr) minmax(300px, 0.75fr);
	gap: 0;
}

.page-id-11 .aw-request-service-form,
.page-id-11 .aw-request-service-details {
	padding: clamp(2rem, 5vw, 4rem);
}

.page-id-11 .aw-request-service-form {
	background: var(--aw-color-white);
	border: 1px solid var(--aw-color-border);
	border-radius: var(--aw-radius-control) 0 0 var(--aw-radius-control);
}

.page-id-11 .aw-request-service-form h3,
.page-id-11 .aw-request-service-details h3 {
	font-size: clamp(1.65rem, 3vw, 2rem);
	margin-bottom: 2rem;
}

.page-id-11 .aw-form-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 1.5rem;
}

.page-id-11 .aw-form-field,
.page-id-11 .aw-form-submit {
	margin: 0;
}

.page-id-11 .aw-form-field-wide {
	grid-column: 1 / -1;
}

.page-id-11 .aw-form-field label {
	color: var(--aw-color-near-black);
	display: block;
	font-size: 0.9375rem;
	font-weight: 600;
	line-height: 1.5;
}

.page-id-11 .aw-form-field .wpcf7-form-control-wrap {
	display: block;
	margin-top: 0.55rem;
}

.page-id-11 .aw-form-field input,
.page-id-11 .aw-form-field select,
.page-id-11 .aw-form-field textarea {
	background: var(--aw-color-white);
	border: 1px solid var(--aw-color-border);
	border-radius: var(--aw-radius-control);
	box-shadow: none;
	color: var(--aw-color-near-black);
	font-family: var(--aw-font-body);
	font-size: 1rem;
	margin: 0;
	width: 100%;
}

.page-id-11 .aw-form-field input,
.page-id-11 .aw-form-field select {
	min-height: 52px;
}

.page-id-11 .aw-form-field textarea {
	min-height: 170px;
	resize: vertical;
}

.page-id-11 .aw-form-field input:focus,
.page-id-11 .aw-form-field select:focus,
.page-id-11 .aw-form-field textarea:focus {
	border-color: var(--aw-color-signal-blue);
	box-shadow: 0 0 0 2px rgba(15, 118, 110, 0.14);
	outline: 0;
}

.page-id-11 .aw-form-submit .wpcf7-submit {
	min-width: 170px;
}

.page-id-11 .wpcf7-spinner {
	vertical-align: middle;
}

.page-id-11 .wpcf7-not-valid-tip {
	font-size: 0.875rem;
	margin-top: 0.4rem;
}

.page-id-11 .wpcf7 form .wpcf7-response-output {
	border-color: var(--aw-color-signal-blue);
	margin: 1.5rem 0 0;
	padding: 0.8rem 1rem;
}

.page-id-11 .aw-request-service-details {
	background: var(--aw-color-deep-navy);
	border-radius: 0 var(--aw-radius-control) var(--aw-radius-control) 0;
	color: var(--aw-color-white);
}

.page-id-11 .aw-request-service-details .aw-section-label {
	color: var(--aw-color-cyan);
}

.page-id-11 .aw-request-service-details h3 {
	color: var(--aw-color-white);
}

.page-id-11 .aw-contact-detail {
	border-top: 1px solid rgba(255, 255, 255, 0.2);
	padding-block: 1.5rem;
}

.page-id-11 .aw-contact-detail:last-child {
	padding-bottom: 0;
}

.page-id-11 .aw-contact-detail-label {
	color: var(--aw-color-cyan);
	font-size: 0.75rem;
	font-weight: 600;
	letter-spacing: 0.1em;
	margin-bottom: 0.45rem;
	text-transform: uppercase;
}

.page-id-11 .aw-contact-detail p:last-child {
	font-size: 1rem;
	line-height: 1.7;
	margin-bottom: 0;
}

.page-id-11 .aw-contact-detail a {
	color: var(--aw-color-white);
}

.page-id-11 .aw-contact-detail a:hover,
.page-id-11 .aw-contact-detail a:focus {
	color: var(--aw-color-cyan);
}

@media (max-width: 991px) {
	.page-id-11 .aw-request-service-layout > .wp-block-group__inner-container {
		grid-template-columns: 1fr;
	}

	.page-id-11 .aw-request-service-form {
		border-radius: var(--aw-radius-control) var(--aw-radius-control) 0 0;
	}

	.page-id-11 .aw-request-service-details {
		border-radius: 0 0 var(--aw-radius-control) var(--aw-radius-control);
	}
}

@media (max-width: 767px) {
	.page-id-11 .aw-request-service {
		padding-block: 4.5rem;
	}

	.page-id-11 .aw-request-service-inner {
		padding-inline: 15px;
	}

	.page-id-11 .aw-request-service-form,
	.page-id-11 .aw-request-service-details {
		padding: 1.75rem;
	}

	.page-id-11 .aw-form-grid {
		grid-template-columns: 1fr;
	}

	.page-id-11 .aw-form-field-wide {
		grid-column: auto;
	}

	.page-id-11 .aw-form-submit .wpcf7-submit {
		width: 100%;
	}
}

/* About Us page */
.page-id-8 .main {
	padding-block: 0;
}

.page-id-8 .entry-content > .aw-about-approach,
.page-id-8 .entry-content > .aw-about-ghana {
	margin-bottom: 0;
}

.page-id-8 .aw-about-inner {
	margin-inline: auto;
	max-width: 1180px;
	padding-inline: 20px;
}

.page-id-8 .aw-section-label {
	color: var(--aw-color-signal-blue);
	font-family: var(--aw-font-body);
	font-size: 0.8125rem;
	font-weight: 600;
	letter-spacing: 0.12em;
	margin-bottom: 1.25rem;
	text-transform: uppercase;
}

.page-id-8 .aw-about-intro {
	background: var(--aw-color-off-white);
	padding-block: clamp(5rem, 9vw, 8rem);
}

.page-id-8 .aw-about-intro-grid {
	gap: clamp(3rem, 7vw, 6rem);
}

.page-id-8 .aw-about-intro h2 {
	font-size: clamp(2.5rem, 4vw, 3rem);
	margin-bottom: 1.5rem;
}

.page-id-8 .aw-about-intro p:not(.aw-section-label):not(.aw-about-visual-index) {
	color: var(--aw-color-slate);
	line-height: 1.75;
}

.page-id-8 .aw-about-lead {
	color: var(--aw-color-near-black) !important;
	font-size: 1.125rem;
}

.page-id-8 .aw-about-visual {
	background-color: var(--aw-color-deep-navy);
	background-image:
		linear-gradient(rgba(163, 230, 53, 0.12) 1px, transparent 1px),
		linear-gradient(90deg, rgba(163, 230, 53, 0.12) 1px, transparent 1px);
	background-size: 56px 56px;
	border-radius: var(--aw-radius-control);
	min-height: clamp(420px, 42vw, 570px);
	overflow: hidden;
	padding: clamp(1.75rem, 4vw, 3rem);
	position: relative;
}

.page-id-8 .aw-about-visual::before,
.page-id-8 .aw-about-visual::after {
	content: "";
	position: absolute;
}

.page-id-8 .aw-about-visual::before {
	border: 2px solid var(--aw-color-cyan);
	border-radius: 50%;
	height: clamp(210px, 27vw, 360px);
	right: clamp(-100px, -7vw, -50px);
	top: 15%;
	width: clamp(210px, 27vw, 360px);
}

.page-id-8 .aw-about-visual::after {
	background: var(--aw-color-cyan);
	bottom: 0;
	height: 42%;
	right: 21%;
	transform: skewX(-16deg);
	transform-origin: bottom;
	width: 3px;
}

.page-id-8 .aw-about-visual-index {
	color: var(--aw-color-cyan);
	font-size: 0.75rem;
	font-weight: 600;
	letter-spacing: 0.14em;
}

.page-id-8 .aw-about-visual-caption {
	bottom: clamp(1.75rem, 4vw, 3rem);
	left: clamp(1.75rem, 4vw, 3rem);
	position: absolute;
	z-index: 1;
}

.page-id-8 .aw-about-visual-caption p {
	color: var(--aw-color-white) !important;
	font-family: var(--aw-font-heading);
	font-size: clamp(1.4rem, 3vw, 2rem);
	font-weight: 600;
	line-height: 1.3 !important;
	margin: 0;
}

.page-id-8 .aw-about-capabilities {
	background: var(--aw-color-white);
	padding-block: clamp(5rem, 9vw, 8rem);
}

.page-id-8 .aw-about-capabilities-grid {
	gap: clamp(3rem, 8vw, 7rem);
}

.page-id-8 .aw-about-capabilities h2 {
	font-size: clamp(2.25rem, 3.5vw, 2.75rem);
	margin-bottom: 0;
}

.page-id-8 .aw-about-capabilities-grid > .wp-block-column:last-child {
	border-left: 1px solid var(--aw-color-border);
	padding-left: clamp(2rem, 5vw, 4.5rem);
}

.page-id-8 .aw-about-capabilities-grid > .wp-block-column:last-child p {
	color: var(--aw-color-slate);
	line-height: 1.8;
}

.page-id-8 .aw-about-capability-copy {
	color: var(--aw-color-near-black) !important;
	font-family: var(--aw-font-heading);
	font-size: clamp(1.35rem, 2.5vw, 1.8rem);
	font-weight: 600;
	line-height: 1.5 !important;
}

.page-id-8 .aw-about-approach {
	background: var(--aw-color-deep-navy);
	color: var(--aw-color-white);
	padding-block: clamp(5rem, 9vw, 8rem);
}

.page-id-8 .aw-about-approach .aw-section-label,
.page-id-8 .aw-about-principle-number {
	color: var(--aw-color-cyan);
}

.page-id-8 .aw-about-approach-header {
	margin-bottom: clamp(3rem, 6vw, 5rem);
}

.page-id-8 .aw-about-approach-header h2 {
	color: var(--aw-color-white);
	margin-bottom: 0;
}

.page-id-8 .aw-about-principles {
	border-bottom: 1px solid rgba(255, 255, 255, 0.2);
	border-top: 1px solid rgba(255, 255, 255, 0.2);
	gap: 0;
}

.page-id-8 .aw-about-principle {
	border-right: 1px solid rgba(255, 255, 255, 0.2);
	padding: clamp(1.75rem, 3vw, 2.5rem);
}

.page-id-8 .aw-about-principle:first-child {
	padding-left: 0;
}

.page-id-8 .aw-about-principle:last-child {
	border-right: 0;
	padding-right: 0;
}

.page-id-8 .aw-about-principle-number {
	font-size: 0.75rem;
	font-weight: 600;
	letter-spacing: 0.12em;
	margin-bottom: 1.5rem;
}

.page-id-8 .aw-about-principle h3 {
	color: var(--aw-color-white);
	font-size: clamp(1.35rem, 2vw, 1.65rem);
	margin-bottom: 0.75rem;
}

.page-id-8 .aw-about-principle p:last-child {
	color: var(--aw-color-border);
	font-size: 0.9375rem;
	line-height: 1.7;
	margin-bottom: 0;
}

.page-id-8 .aw-about-ghana {
	background: var(--aw-color-off-white);
	padding-block: clamp(5rem, 9vw, 8rem);
}

.page-id-8 .aw-about-ghana-grid {
	gap: clamp(3rem, 7vw, 6rem);
}

.page-id-8 .aw-about-ghana-mark {
	color: transparent;
	font-family: var(--aw-font-heading);
	font-size: clamp(7rem, 13vw, 10rem);
	font-weight: 700;
	letter-spacing: -0.09em;
	line-height: 0.8;
	margin: 0;
	white-space: nowrap;
	-webkit-text-stroke: 1px var(--aw-color-signal-blue);
}

.page-id-8 .aw-about-ghana h2 {
	font-size: clamp(2.25rem, 3.5vw, 2.75rem);
	margin-bottom: 1.25rem;
}

.page-id-8 .aw-about-ghana p:last-child {
	color: var(--aw-color-slate);
	line-height: 1.75;
	margin-bottom: 0;
	max-width: 760px;
}

@media (max-width: 991px) {
	.page-id-8 .aw-about-intro-grid,
	.page-id-8 .aw-about-capabilities-grid,
	.page-id-8 .aw-about-ghana-grid {
		flex-wrap: wrap;
	}

	.page-id-8 .aw-about-intro-grid > .wp-block-column,
	.page-id-8 .aw-about-capabilities-grid > .wp-block-column,
	.page-id-8 .aw-about-ghana-grid > .wp-block-column {
		flex-basis: 100% !important;
	}

	.page-id-8 .aw-about-intro-grid > .wp-block-column:first-child {
		max-width: 760px;
	}

	.page-id-8 .aw-about-visual {
		min-height: 430px;
	}

	.page-id-8 .aw-about-capabilities-grid > .wp-block-column:last-child {
		border-left: 0;
		border-top: 1px solid var(--aw-color-border);
		padding-left: 0;
		padding-top: 2.5rem;
	}

	.page-id-8 .aw-about-principles {
		flex-wrap: wrap;
	}

	.page-id-8 .aw-about-principle {
		border-bottom: 1px solid rgba(255, 255, 255, 0.2);
		flex-basis: 50% !important;
	}

	.page-id-8 .aw-about-principle:nth-child(2) {
		border-right: 0;
		padding-right: 0;
	}

	.page-id-8 .aw-about-principle:nth-child(3) {
		padding-left: 0;
	}

	.page-id-8 .aw-about-principle:nth-last-child(-n + 2) {
		border-bottom: 0;
	}

	.page-id-8 .aw-about-ghana-mark {
		font-size: 8rem;
	}
}

@media (max-width: 767px) {
	.page-id-8 .aw-about-inner {
		padding-inline: 15px;
	}

	.page-id-8 .aw-about-intro,
	.page-id-8 .aw-about-capabilities,
	.page-id-8 .aw-about-approach,
	.page-id-8 .aw-about-ghana {
		padding-block: 4.5rem;
	}

	.page-id-8 .aw-about-visual {
		min-height: 360px;
	}

	.page-id-8 .aw-about-principle {
		border-bottom: 1px solid rgba(255, 255, 255, 0.2) !important;
		border-right: 0;
		flex-basis: 100% !important;
		padding: 1.75rem 0;
	}

	.page-id-8 .aw-about-principle:last-child {
		border-bottom: 0 !important;
	}

	.page-id-8 .aw-about-ghana-mark {
		font-size: 6.5rem;
	}
}

/* Our Team page */
.accesswaves-team {
    padding: 80px 0;
}

.accesswaves-team__container {
    width: min(1200px, calc(100% - 48px));
    margin: 0 auto;
}

.accesswaves-team__eyebrow {
    margin: 0 0 12px;
    font-size: 13px;
    font-weight: 600;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

.accesswaves-team__heading,
.accesswaves-team__intro {
    max-width: 760px;
}

.accesswaves-team__intro {
    margin-bottom: 48px;
}

.accesswaves-team__grid {
    gap: 28px;
    margin-bottom: 36px;
}

.accesswaves-team__portrait {
    margin: 0 0 20px;
    overflow: hidden;
    border-radius: 6px;
}

.accesswaves-team__portrait img {
    display: block;
    width: 100%;
    aspect-ratio: 4 / 5;
    object-fit: cover;
    object-position: center top;
}

.accesswaves-team__grid h3 {
    margin: 0 0 6px;
    font-size: 24px;
    line-height: 1.25;
}

.accesswaves-team__grid h3 + p {
    margin: 0;
    font-size: 15px;
    font-weight: 600;
}

@media (max-width: 991px) {
    .accesswaves-team {
        padding: 64px 0;
    }

    .accesswaves-team__container {
        width: min(100% - 36px, 1200px);
    }
}

@media (max-width: 767px) {
    .accesswaves-team {
        padding: 48px 0;
    }

    .accesswaves-team__container {
        width: min(100% - 28px, 1200px);
    }

    .accesswaves-team__grid {
        display: block;
        margin-bottom: 0;
    }

    .accesswaves-team__grid .wp-block-column {
        margin-bottom: 36px;
    }
}

/* Header logo sizing */
.custom-logo-link {
    display: inline-flex;
    align-items: center;
}

.custom-logo {
    width: auto;
    max-width: 220px;
    height: auto;
    max-height: 72px;
    object-fit: contain;
}

@media (max-width: 767px) {
    .custom-logo {
        max-width: 180px;
        max-height: 58px;
    }
}
