/*!
Theme Name: CognoCloud
Theme URI: https://cognocloud.ca/
Author: Sean Pearce
Author URI: https://cognocloud.ca/
Description: Theme for cognocloud.ca
Version: 2.0.0
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: cognocloud

CognoCloud is based on Underscores https://underscores.me/, (C) 2012-2017
Automattic, Inc. Underscores is distributed under the terms of the GNU GPL v2 or
later.

Normalizing styles have been helped along thanks to the fine work of
Nicolas Gallagher and Jonathan Neal https://necolas.github.io/normalize.css/

TABLE OF CONTENTS: -------------------------------------------------------------

# Normalization
# Base
  ## Variables
  ## Typography
  ## Elements
  ## Links
  ## Forms
# Navigation
  ## Menus
# Layout
# Clearings
# Components
  ## Navigation
  ## Buttons
  ## Footer
  ## Panels
  ## Item groups
  ## Sequence element
# Home page
  ## Top section
  ## Why section
  ## Services section
  ## Lifecycle section
  ## Industries section
  ## Panels section
  ## Conversation section
  ## Footer banner
# Interior pages
  ## Common elements
  ## Standard pages
  ## VMware Refuge page
  ## VMware Migration page
  ## DRaaS page
  ## VDI page
  ## Technologies page
  ## Support page
  ## Contact page
  ## Articles page
  ## Legal page
  ## Free DRaaS Test page
  ## Why page
  ## Wide template
  ## CF7 contact form
  ## Mailing list form
  ## Articles library
# Blog
  ## Posts
  ## Social links
  ## Sidebar
  ## Post ad feature
# Media
  ## Captions
  ## Galleries
# Utilities
  ## Accessibility
  ## Alignments
*/


/* -----------------------------------------------------------------------------
 # Normalization ------------------------------------------------------------ */

html {
	line-height: 1.15; /* 1 */
	-webkit-text-size-adjust: 100%; /* 2 */
}

body {
	margin: 0;
}

h1 {
	font-size: 2em;
	margin: 0.67em 0;
}

hr {
	box-sizing: content-box; /* 1 */
	height: 0; /* 1 */
	overflow: visible; /* 2 */
}

pre {
	font-family: monospace, monospace; /* 1 */
	font-size: 1em; /* 2 */
}

a {
	background-color: transparent;
}

abbr[title] {
	border-bottom: none; /* 1 */
	text-decoration: underline; /* 2 */
	text-decoration: underline dotted; /* 2 */
}

b,
strong {
	font-weight: 600;
}

code,
kbd,
samp {
	font-family: monospace, monospace; /* 1 */
	font-size: 1em; /* 2 */
}

small {
	font-size: 80%;
}

sub,
sup {
	font-size: 75%;
	line-height: 0;
	position: relative;
	vertical-align: baseline;
}

sub {
	bottom: -0.25em;
}

sup {
	top: -0.5em;
}

img {
	border-style: none;
}

button,
input,
optgroup,
select,
textarea {
	font-family: inherit; /* 1 */
	font-size: 100%; /* 1 */
	line-height: 1.15; /* 1 */
	margin: 0; /* 2 */
}

button,
input { /* 1 */
	overflow: visible;
}

button,
select { /* 1 */
	text-transform: none;
}

button,
[type="button"],
[type="reset"],
[type="submit"] {
	-webkit-appearance: button;
}

button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
	border-style: none;
	padding: 0;
}

button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
	outline: 1px dotted ButtonText;
}

fieldset {
	padding: 0.35em 0.75em 0.625em;
}

legend {
	box-sizing: border-box; /* 1 */
	color: inherit; /* 2 */
	display: table; /* 1 */
	max-width: 100%; /* 1 */
	padding: 0; /* 3 */
	white-space: normal; /* 1 */
}

progress {
	vertical-align: baseline;
}

textarea {
	overflow: auto;
}

[type="checkbox"],
[type="radio"] {
	box-sizing: border-box; /* 1 */
	padding: 0; /* 2 */
}

[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
	height: auto;
}

[type="search"] {
	-webkit-appearance: textfield; /* 1 */
	outline-offset: -2px; /* 2 */
}

[type="search"]::-webkit-search-decoration {
	-webkit-appearance: none;
}

::-webkit-file-upload-button {
	-webkit-appearance: button; /* 1 */
	font: inherit; /* 2 */
}

details {
	display: block;
}

summary {
	display: list-item;
}

template {
	display: none;
}

[hidden] {
	display: none;
}


/* -----------------------------------------------------------------------------
 # Base --------------------------------------------------------------------- */

/* ## Variables ------------------------------------------------------------- */

:root {
	--colour-text-dark: #000;
	--colour-text-light: #fff;
	--colour-accent: #fd6c01;
	--colour-accent-hover: color-mix(in srgb, #fd6c01, #000 15%);
	--colour-blue-light: #009bdf;
	--colour-blue-light-dim: rgba(0, 155, 223, 0.5);
	--colour-blue-light-hover: hsl(198, 100%, 34%);
	--colour-blue-medium: #004bd3;
	--colour-blue-flat: #3658a7;
	--colour-heading-dark: #001840;
	--colour-bg-dark: #000f25;
	--colour-bg-light: #ecf2fe;
}

/* ## Typography ------------------------------------------------------------ */

body,
button,
input,
select,
optgroup,
textarea {
	color: #404040;
	font-family: 'Roboto', sans-serif;
	font-size: 16px;
	font-size: 1rem;
	line-height: 1.5;
}

h1, h2, h3, h4, h5, h6 {
	margin: 0 0 1.5rem 0;
	line-height: 1.2;
	clear: both;
}

p {
	margin-bottom: 1em;
}

dfn, cite, em, i {
	font-style: italic;
}

blockquote {
	margin: 0 1.5em;
}

address {
	margin: 0 0 1.5em;
}

pre {
	background: #eee;
	font-family: "Courier 10 Pitch", Courier, monospace;
	font-size: 15px;
	font-size: 0.9375rem;
	line-height: 1.6;
	margin-bottom: 1.6em;
	max-width: 100%;
	overflow: auto;
	padding: 1.6em;
}

code, kbd, tt, var {
	font-family: Monaco, Consolas, "Andale Mono", "DejaVu Sans Mono", monospace;
	font-size: 15px;
	font-size: 0.9375rem;
}

abbr, acronym {
	border-bottom: 1px dotted #666;
	cursor: help;
}

mark, ins {
	background: #fff9c0;
	text-decoration: none;
}

big {
	font-size: 125%;
}

.centered {
	text-align: center;
}

/* ## Elements -------------------------------------------------------------- */

html {
	box-sizing: border-box;
}

*,
*:before,
*:after {
	box-sizing: inherit;
}

body {
	background: var(--colour-bg-dark);
}

hr {
	background-color: #ccc;
	border: 0;
	height: 1px;
	margin-bottom: 1.5em;
}

ul, ol {
	margin: 0 0 1rem 0;
}

ul {
	list-style: disc;
}

ol {
	list-style: decimal;
}

li > ul,
li > ol {
	margin-bottom: 0;
	margin-left: 1.5em;
}

dt {
	font-weight: bold;
}

dd {
	margin: 0 1.5em 1.5em;
}

img {
	height: auto;
	max-width: 100%;
}

figure {
	margin: 1em 0;
}

table {
	margin: 0 0 1.5em;
	width: 100%;
}

/* ## Links ----------------------------------------------------------------- */

a {
	color: var(--colour-blue-light);
	transition: color 0.1s;
	outline: none;
	text-decoration: underline;
	border-radius: 0.5px;
}

a:hover {
	color: var(--colour-blue-light-hover);
}

a:focus,
a:focus-visible {
	outline: 2px solid var(--colour-blue-light);
}

a:focus:not(:focus-visible) {
	outline: none !important;
}

/* ## Forms ----------------------------------------------------------------- */

button,
input[type="button"],
input[type="reset"],
input[type="submit"] {
	border: 1px solid;
	border-color: #ccc #ccc #bbb;
	border-radius: 3px;
	background: #e6e6e6;
	color: rgba(0, 0, 0, 0.8);
	font-size: 12px;
	font-size: 0.75rem;
	line-height: 1;
	padding: .6em 1em .4em;
}

button:hover,
input[type="button"]:hover,
input[type="reset"]:hover,
input[type="submit"]:hover {
	border-color: #ccc #bbb #aaa;
}

button:active, button:focus,
input[type="button"]:active,
input[type="button"]:focus,
input[type="reset"]:active,
input[type="reset"]:focus,
input[type="submit"]:active,
input[type="submit"]:focus {
	border-color: #aaa #bbb #bbb;
}

input[type="text"],
input[type="email"],
input[type="url"],
input[type="password"],
input[type="search"],
input[type="number"],
input[type="tel"],
input[type="range"],
input[type="date"],
input[type="month"],
input[type="week"],
input[type="time"],
input[type="datetime"],
input[type="datetime-local"],
input[type="color"],
textarea {
	color: #666;
	border: 1px solid #ccc;
	border-radius: 3px;
	padding: 3px;
}

input[type="text"]:focus,
input[type="email"]:focus,
input[type="url"]:focus,
input[type="password"]:focus,
input[type="search"]:focus,
input[type="number"]:focus,
input[type="tel"]:focus,
input[type="range"]:focus,
input[type="date"]:focus,
input[type="month"]:focus,
input[type="week"]:focus,
input[type="time"]:focus,
input[type="datetime"]:focus,
input[type="datetime-local"]:focus,
input[type="color"]:focus,
textarea:focus {
	color: #111;
}

select {
	border: 1px solid #ccc;
}

textarea {
	width: 100%;
}


/* -----------------------------------------------------------------------------
 # Layout ------------------------------------------------------------------- */

.limiter {
	max-width: 85rem;
	margin: 0 auto;
	padding: 0 1rem;
}

section {
	margin: 0;
	padding: 0;
	width: 100%;
}

section.dark {
	background: var(--colour-bg-dark);
	color: var(--colour-text-light);
}

section.light {
	background: var(--colour-bg-light);
	color: var(--colour-text-dark);
}

section.white {
	background: #fff;
	color: var(--colour-text-dark);
}

section.has-panels .limiter.flex {
	display: flex;
	gap: 1rem;
}

.pt-0 {
	padding-top: 0;
}

.pt-05 {
	padding-top: 0.5rem;
}

.pt-1 {
	padding-top: 1rem;
}

.pt-2 {
	padding-top: 2rem;
}

.pt-3 {
	padding-top: 3rem;
}

.pt-4 {
	padding-top: 4rem;
}

.pb-0 {
	padding-bottom: 0;
}

.pb-05 {
	padding-bottom: 0.5rem;
}

.pb-1 {
	padding-bottom: 1rem;
}

.pb-2 {
	padding-bottom: 2rem;
}

.pb-3 {
	padding-bottom: 3rem;
}

.pb-4 {
	padding-bottom: 4rem;
}

@media screen and (max-width: 70em) {
	.pt-3 {
		padding-top: 2rem;
	}

	.pt-4 {
		padding-top: 3rem;
	}

	.pb-3 {
		padding-bottom: 2rem;
	}

	.pb-4 {
		padding-bottom: 3rem;
	}
}

@media screen and (max-width: 90em) {
	.limiter {
		overflow-x: hidden;
	}
}


/* -----------------------------------------------------------------------------
 # Clearings ---------------------------------------------------------------- */

.clear:before,
.clear:after,
.entry-content:before,
.entry-content:after,
.comment-content:before,
.comment-content:after,
.site-header:before,
.site-header:after,
.site-content:before,
.site-content:after,
.site-footer:before,
.site-footer:after {
	content: "";
	display: table;
	table-layout: fixed;
}

.clear:after,
.entry-content:after,
.comment-content:after,
.site-header:after,
.site-content:after,
.site-footer:after {
	clear: both;
}


/* -----------------------------------------------------------------------------
 # Components --------------------------------------------------------------- */

/* ## Navigation ------------------------------------------------------------ */

:root {
	--nav-colour-background: var(--colour-bg-dark);
	--nav-colour-primary: var(--colour-blue-light);
	--nav-height-above: 0em;
	--nav-height-primary: 6em;
	--nav-height-primary-mobile: 5.25em;
	--nav-height: calc(var(--nav-height-above) + var(--nav-height-primary));
	--nav-page-margin: 1em;
	--nav-width-inner: 85rem;
	--nav-width-outer: 100%;
	/* logo */
	--nav-logo-height-percent: 30%;
	--nav-logo-margin-adjustment: 0em;
	--nav-logo-max-width: 12em;
	--nav-logo-max-width-mobile: 10em;
	/* desktop parent menu */
	--nav-d-p-bg-hover-colour: transparent;
	--nav-d-p-font-size: 1em;
	--nav-d-p-font-weight: 500;
	--nav-d-p-padding-x: 0.875rem;
	--nav-d-p-text-colour: var(--colour-text-light);
	--nav-d-p-text-transform: none;
	--nav-d-p-underline-thickness: 1.5px;
	/* desktop child menu */
	--nav-d-c-bg-colour: var(--colour-blue-light);
	--nav-d-c-bg-hover-colour: color-mix(in srgb, var(--colour-blue-light) 75%, var(--colour-bg-dark) 25%);
	--nav-d-c-focus-outline-colour: #fff;
	--nav-d-c-item-width: auto;
	--nav-d-c-padding: 0.625rem 0.875rem;
	--nav-d-c-white-space: nowrap;
	/* mobile */
	--nav-m-left-border-thickness: 0.375rem;
}

.jump-anchor::before {
	content: '';
	display: block;
	height: var(--nav-height-primary);
	margin-top: calc(-1 * var(--nav-height-primary));
	visibility: hidden;
}

.site-content {
	padding-top: var(--nav-height);
}

.site-header {
	position: fixed;
	width: 100%;
	left: 0;
	top: 0;
	z-index: 100;
	/* prevent flicker in Chrome: */
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
	-webkit-transform: translateZ(0);
	transform: translateZ(0);
}

.site-header .nav-limiter {
	margin: 0 auto;
	max-width: var(--nav-width-inner);
}

.site-header a {
	text-decoration: none;
}

.nav-wrapper {
	max-width: var(--nav-width-outer);
	margin: 0 auto;
	background: var(--nav-colour-background);
}

.above-nav {
	height: var(--nav-height-above);
	background: var(--colour-header-stripe);
}

.primary-nav {
	width: 100%;
	height: var(--nav-height-primary);
	position: relative;
	z-index: 20;
	transition: 0.5s box-shadow;
}

.primary-nav.scrolled {
	box-shadow: 0 1px 1px 0 rgba(0, 155, 223, 0.25);
}

.primary-nav.sticky {
	position: fixed;
	left: 0;
	top: 0;
	z-index: 100;
	/* prevent flicker in Chrome: */
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
	-webkit-transform: translateZ(0);
	transform: translateZ(0);
	box-shadow: 0 1px 0 0 rgba(0, 155, 223, 0.25);
}

.primary-nav .nav-limiter {
	display: flex;
	flex-direction: row;
	align-items: center;
	justify-content: space-between;
}

.primary-nav a:focus,
.primary-nav a:focus-visible {
	border-radius: 0.25px;
	outline: 2px solid var(--nav-colour-primary);
}

.primary-nav a:focus:not(:focus-visible) {
	outline: none !important;
}

/* Nav logo ----------------------------------------------------------------- */

.primary-nav .logo-container {
	flex: 1;
	max-width: var(--nav-logo-max-width);
	margin-left: var(--nav-page-margin);
	margin-right: var(--nav-page-margin);
	display: flex;
	align-items: center;
	justify-content: flex-start;
}

.primary-nav .logo {
	display: block;
	width: 100%;
	height: 0;
	padding-bottom: var(--nav-logo-height-percent);
	margin: var(--nav-logo-margin-adjustment);
	background-image: url('./img/logo-cogno-cloud-2026.svg');
	background-size: contain;
	background-repeat: no-repeat;
	background-position: 50% 50%;
	border-radius: 0.5px;
	text-decoration: none;
	outline: none;
	transition: opacity 0.1s;
}

.primary-nav .logo:hover {
	opacity: 0.9;
}

.primary-nav .logo:focus,
.primary-nav .logo:focus-visible {
	outline: 2px solid var(--nav-colour-primary);
	outline-offset: 3px;
}

.primary-nav .logo:focus:not(:focus-visible) {
	outline: none;
}

/* Nav menu ----------------------------------------------------------------- */

.primary-nav .menu-container {
	position: relative;
	flex: initial;
	height: var(--nav-height-primary);
}

/* Parent menu */

.primary-nav .nav-menu {
	display: flex;
	align-items: center;
	margin: 0;
	margin-left: calc(var(--nav-page-margin) - var(--nav-d-p-padding-x));
	margin-right: calc(var(--nav-page-margin) - var(--nav-d-p-padding-x));
	padding: 0;
	list-style-type: none;
	text-align: right;
}

.primary-nav .nav-menu > .menu-item {
	display: flex;
	align-items: center;
	justify-content: center;
	position: relative;
	height: var(--nav-height-primary);
	padding: 0 var(--nav-d-p-padding-x);
	line-height: 1.125;
	text-align: center;
}

.primary-nav .nav-menu > .menu-item:hover {
	background: var(--nav-d-p-bg-hover-colour);
}

.primary-nav .nav-menu > .menu-item.current-menu-item,
.primary-nav .nav-menu > .menu-item.current-menu-ancestor {
	color: var(--nav-colour-primary);
}

.primary-nav .nav-link-parent {
	display: block;
	margin-top: 0.0625rem;
	padding-top: 0.1875rem;
	padding-bottom: 0.125rem;
	color: var(--nav-d-p-text-colour);
	font-size: var(--nav-d-p-font-size);
	font-weight: var(--nav-d-p-font-weight);
	text-transform: var(--nav-d-p-text-transform);
	border-bottom: var(--nav-d-p-underline-thickness) solid transparent;
}

.primary-nav .menu-item .nav-link-parent:focus,
.primary-nav .menu-item .nav-link-parent:hover,
.primary-nav .menu-item-has-children:hover .nav-link-parent {
	color: var(--nav-colour-primary);
}

.primary-nav .menu-item .nav-link-parent:focus,
.primary-nav .menu-item .nav-link-parent:focus-visible {
	outline-color: var(--nav-colour-primary);
	outline-offset: 2px;
}

.primary-nav .menu-item .nav-link-parent:focus:not(:focus:visible) {
	outline: none;
}

.primary-nav .menu-item.current-menu-item .nav-link-parent,
.primary-nav .menu-item.current-menu-parent .nav-link-parent {
	border-bottom-color: var(--nav-colour-primary);
}

.primary-nav .menu-item.current-menu-item.button .nav-link-parent,
.primary-nav .menu-item.current-menu-parent.button .nav-link-parent {
	border-bottom-color: #fff;
}

.primary-nav .menu-item-has-children .nav-link-parent {
	cursor: default;
}

.primary-nav .button .nav-link-parent {
	padding: 0.4375rem 0.75rem;
	border-radius: 0.375rem;
	transition: 0.15s color, 0.15s background-color, 0.15s border-color, 0.15s box-shadow;
	color: #fff;
	background-color: var(--colour-accent);
}

.primary-nav .button .nav-link-parent:hover {
	color: #fff;
	background-color: color-mix(in srgb, var(--colour-accent) 90%, #fff 10%);
	box-shadow: 0 0 0.75rem 0 color-mix(in srgb, var(--colour-accent) 75%, transparent 25%);
}

.primary-nav .button .nav-link-parent:focus,
.primary-nav .button .nav-link-parent:focus-visible {
	color: #fff;
	outline: 2px solid #fff;
	outline-offset: 0.5px;
}

/* Child menu */

.primary-nav .sub-menu {
	display: none;
	position: absolute;
	top: 100%;
	right: 0;
	margin: 0;
	padding: 0;
	z-index: 999;
	box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.3);
	list-style-type: none;
	text-align: right;
}

.primary-nav .sub-menu .menu-item {
	padding: 0;
	width: var(--nav-d-c-item-width);
	position: relative;
}

.primary-nav .sub-menu .menu-item:not(:first-child)::before {
	content: '';
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	height: 0.5px;
	background: rgba(255, 255, 255, 0.35);
}

.primary-nav .menu-item.expanded .sub-menu {
	display: block;
}

.primary-nav .nav-link-child {
	display: block;
	padding: var(--nav-d-c-padding);
	background: var(--nav-d-c-bg-colour);
	font-size: 0.875rem;
	line-height: 1.3;
	color: #fff;
	white-space: var(--nav-d-c-white-space);
}

.primary-nav .current-menu-item > .nav-link-child,
.primary-nav .nav-link-child:focus,
.primary-nav .nav-link-child:hover {
	background: var(--nav-d-c-bg-hover-colour);
}

.primary-nav .nav-link-child:focus,
.primary-nav .nav-link-child:focus-visible {
	outline: 2px solid var(--nav-d-c-focus-outline-colour);
	outline-offset: -4px;
}

.primary-nav .nav-link-child:focus:not(:focus-visible) {
	outline: none;
}

/* Nav menu toggle ---------------------------------------------------------- */

.nav-menu-toggle {
	display: none;
	flex: initial;
	width: 2.5em;
	height: 2.5em;
	margin: 0 var(--nav-page-margin);
	background-color: transparent;
	color: var(--nav-colour-primary);
	outline: none;
	cursor: pointer;
	align-items: center;
	justify-content: center;
	border-radius: 2px;
	border: none;
	font-size: 1em;
	padding: 0;
}

.nav-menu-toggle i {
	font-size: 1.375em;
}

.nav-menu-toggle:hover:not(:disabled) {
	background: transparent;
	color: var(--colour-text-light);
}

.nav-menu-toggle[aria-expanded="true"]:not(:disabled) {
	background: var(--nav-colour-primary);
	color: #fff;
}

.nav-menu-toggle:focus:not(:disabled),
.nav-menu-toggle:focus-visible:not(:disabled) {
	outline: 2px solid var(--nav-colour-primary);
	outline-offset: 2px;
	box-shadow: none;
}

.nav-menu-toggle:focus:not(:focus-visible) {
	outline: none !important;
}

.nav-link-parent .mobile-only {
	display: none;
}

/* Mobile styling ----------------------------------------------------------- */

@media screen and (max-width: 75em) {
	.primary-nav .nav-menu > .menu-item {
		padding: 2.25em 0.5em;
		padding: 0 calc(var(--nav-d-p-padding-x) * 0.75);
	}

	.primary-nav .nav-link-parent {
		font-size: 0.9375rem;
	}
}

@media (min-width: 64.01em) and (max-width: 75em) {
	.primary-nav .nav-link-parent .hide {
		display: none;
	}
}

@media screen and (min-width: 64.01em) {
	.primary-nav .menu-container {
		display: block !important;
	}
}

@media screen and (max-width: 64em) {
	.site-content {
		padding-top: calc(var(--nav-height-above) + var(--nav-height-primary-mobile));
	}

	.primary-nav {
		height: var(--nav-height-primary-mobile);
	}

	.primary-nav .nav-limiter {
		position: relative;
		height: var(--nav-height-primary-mobile);
	}

	/* Nav logo ------------------------------------------------------------- */

	.primary-nav .logo-container {
		flex: 1;
		max-width: var(--nav-logo-max-width-mobile);
	}

	/* Nav menu ------------------------------------------------------------- */

	.primary-nav .menu-container {
		display: none;
		position: absolute;
		left: 0;
		right: 0;
		height: auto;
		top: 100%;
		background: hsl(211, 70%, 15%);
		border-top: 1px solid rgba(0, 155, 223, 0.25);
		padding: 0.75rem 0;
	}

	.primary-nav .menu-container::after {
		content: '';
		display: block;
		position: absolute;
		top: 100%;
		left: 0;
		right: 0;
		height: 0.5px;
		background: rgba(0, 0, 0, 0.5);
	}

	.primary-nav .menu-container.expanded {
		display: block;
	}

	/* Parent menu */

	.primary-nav .nav-menu {
		display: block;
		margin: 0;
		text-align: left;
	}

	.primary-nav .nav-menu > .menu-item {
		display: block;
		width: auto;
		height: auto;
		padding: 0;
		text-align: left;
		border: none;
	}

	.primary-nav .nav-link-parent {
		margin-top: 0;
		padding: 0.625rem 1rem 0.625rem calc(var(--nav-page-margin) - var(--nav-m-left-border-thickness));
		font-size: 1rem;
		line-height: 1.3;
		border-bottom: none;
		border-top: none;
		border-left: var(--nav-m-left-border-thickness) solid transparent;
	}

	.primary-nav .menu-item.current-menu-item .nav-link-parent {
		background: var(--nav-colour-primary);
		color: #fff;
	}

	.primary-nav .menu-item.current-menu-ancestor:not(.expanded) .nav-link-parent {
		border-left-color: var(--nav-colour-primary);
	}

	.primary-nav .menu-item .nav-link-parent:focus,
	.primary-nav .menu-item .nav-link-parent:focus-visible {
		outline: 2px solid var(--colour-blue-light);
		outline-offset: -4px;
	}

	.primary-nav .menu-item.current-menu-item .nav-link-parent:focus,
	.primary-nav .menu-item.current-menu-item .nav-link-parent:focus-visible {
		outline-color: #fff;
	}

	.primary-nav .menu-item .nav-link-parent:focus:not(:focus-visible) {
		outline: none !important;
	}

	.primary-nav .menu-item-has-children .nav-link-parent::after {
		content: '';
		display: block;
		position: absolute;
		width: 1rem;
		height: 1rem;
		top: 1.125rem;
		right: 0.75rem;
		border-style: solid;
		border-width: 0.5rem;
		border-color: transparent;
		border-top-color: var(--colour-blue-light);
		transition: 150ms all ease;
		transform-origin: 50% 25%;
		transform: rotate(-90deg);
	}

	.primary-nav .menu-item-has-children.expanded .nav-link-parent::after {
		transform: rotate(0deg);
		border-top-color: var(--nav-colour-primary);
	}

	.primary-nav .menu-item-has-children .nav-link-parent {
		cursor: pointer;
	}

	/* Child menu */

	.primary-nav .sub-menu {
		position: static;
		top: auto;
		left: auto;
		border-top: none;
		box-shadow: none;
		text-align: left;
	}

	.primary-nav .sub-menu .menu-item {
		width: auto;
	}

	.primary-nav .sub-menu .menu-item:not(:first-child)::before {
		display: none;
	}

	.primary-nav .nav-link-child {
		padding: 0.625rem 1rem 0.625rem calc(1rem + var(--nav-page-margin) - var(--nav-m-left-border-thickness));
		background: inherit;
		font-size: 0.9375rem;
		color: var(--colour-text-light);
		border-left: var(--nav-m-left-border-thickness) solid transparent;
		white-space: normal;
	}

	.primary-nav .nav-link-child:hover {
		background: transparent;
		color: var(--colour-blue-light);
	}

	.primary-nav .nav-link-child:focus,
	.primary-nav .nav-link-child:focus-visible {
		background: transparent;
		outline-color: var(--nav-colour-primary);
		outline-offset: -4px;
		color: var(--colour-blue-light);
	}

	.primary-nav .nav-link-child:focus:not(:focus-visible) {
		outline: none !important;
	}

	.primary-nav .current-menu-item > .nav-link-child {
		background: var(--nav-colour-primary);
		color: #fff;
	}

	.primary-nav .current-menu-item > .nav-link-child:focus,
	.primary-nav .current-menu-item > .nav-link-child:focus-visible {
		outline-color: #fff;
	}

	.nav-link-parent .fas {
		margin-right: 0.75rem;
	}

	.nav-link-parent .mobile-only {
		display: inline;
	}

	/* Nav menu toggle ------------------------------------------------------ */
	
	.nav-menu-toggle {
		display: flex;
	}
}

/* ## Buttons --------------------------------------------------------------- */

.btn {
	display: inline-flex;
	align-items: center;
	gap: 0.4375rem;
	padding: 0.4375rem 0.875rem;
	font-size: 0.9375rem;
	font-weight: 500;
	line-height: 1.3;
	letter-spacing: 0.0125rem;
	text-decoration: none;
	border-radius: 0.375rem;
	transition: 0.15s color, 0.15s background-color, 0.15s border-color, 0.15s box-shadow;
}

.btn.large {
	padding: 0.75rem 1.5rem;
	font-size: 1.0625rem;
	line-height: 1.3;
	border-radius: 0.625rem;
}

.btn .label {
	flex: 1;
}

.btn .btn-icon {
	display: block;
	flex: initial;
	width: 1rem;
	height: 1rem;
	margin-right: -0.1875rem;
}

.btn.attention {
	color: #fff;
	background-color: var(--colour-accent);
	border: 1px solid transparent;
}

.btn.attention:hover {
	background-color: color-mix(in srgb, var(--colour-accent) 90%, #fff 10%);
	box-shadow: 0 0 0.75rem 0 color-mix(in srgb, var(--colour-accent) 75%, transparent 25%);
}

.btn.attention:focus,
.btn.attention:focus-visible {
	background-color: #f46601;
	outline: 2px solid #fff;
}

.btn.attention:not(:focus-visible) {
	background-color: var(--colour-accent);
}

.btn.primary {
	color: #fff;
	background-color: transparent;
	border: 1px solid #fff;
}

.btn.primary:hover {
	background-color: rgba(255, 255, 255, 0.05);
	box-shadow: 0 0 0.75rem 0 rgba(255, 255, 255, 0.25);
}

.btn.primary:focus,
.btn.primary:focus-visible {
	outline: 2px solid #fff;
	outline-offset: 0;
}

.btn.secondary {
	color: var(--colour-blue-light);
	background-color: transparent;
	border: 1px solid var(--colour-blue-light);
}

.btn.secondary:hover {
	color: #fff;
	border-color: #fff;
	box-shadow: 0 0 0.75rem 0 color-mix(in srgb, var(--colour-blue-light) 70%, transparent 30%);
}

.btn.secondary:focus,
.btn.secondary:focus-visible {
	color: #fff;
	border-color: #fff;
	outline: 2px solid #fff;
	outline-offset: 0;
}

.btn:not(:focus-visible) {
	outline: none !important;
}

.attention-link {
	display: inline-flex;
	align-items: center;
	gap: 0.4375rem;
	font-size: 1rem;
	font-weight: 600;
	line-height: 1.3;
	letter-spacing: 0.0125rem;
	text-decoration: none;
	transition: 0.15s color;
	color: var(--colour-accent);
}

.attention-link:hover {
	color: #fff;
}

.attention-link:focus,
.attention-link:focus-visible {
	outline: 2px solid var(--colour-accent);
	outline-offset: 2px;
}

.attention-link .label {
	flex: 1;
}

.attention-link .link-icon {
	display: block;
	flex: initial;
	width: 1rem;
	height: 1rem;
	margin-right: -0.1875rem;
}

/* ## Footer ---------------------------------------------------------------- */

/* Upper -------------------------------------------------------------------- */

.site-footer .upper {
	position: relative;
	background: var(--colour-bg-dark);
	padding: 1.625rem 0 1.25rem 0;
	border-top: 1px solid var(--colour-blue-light-dim);
	color: var(--colour-text-light);
}

.site-footer .upper::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	height: 0.375rem;
	background: linear-gradient(180deg, var(--colour-blue-light) 0%, var(--colour-bg-dark) 100%);
	opacity: 0.25;
}

.site-footer .upper .text,
.site-footer .upper li {
	padding-bottom: 0.1875em;
}

.site-footer .upper .section {
	flex: 1;
	line-height: 1.3;
}

.site-footer .section.capabilities {
	display: flex;
	align-items: center;
	margin: 0 -1rem 1.25rem -1rem;
	padding: 0 1rem 1.25rem 1rem;
	border-bottom: 1px solid var(--colour-blue-light-dim);
}

.site-footer .section.capabilities h2 {
	margin: 0 1.5rem 0 0;
	font-size: 1.1875rem;
	font-weight: 500;
	white-space: nowrap;
}

.site-footer .section.capabilities .items {
	width: 100%;
	justify-content: space-between;
	gap: 0;
}

.site-footer .section.capabilities .items .item {
	flex: initial;
	padding: 0;
	display: flex;
	align-items: center;
	justify-content: center;
}

.site-footer .section.capabilities .items .divider {
	flex: initial;
	border-right: 1px solid var(--colour-blue-light-dim);
	width: 0.25rem;
}

.site-footer .section.capabilities .items .icon {
	width: 2rem;
	margin-right: 0.5rem;
}

.site-footer .section.capabilities .items .label {
	font-size: 0.75rem;
}

@media (max-width: 67.5em) {
	.site-footer .section.capabilities h2 {
		font-size: 1.125rem;
		font-weight: 600;
	}

	.site-footer .section.capabilities .items {
		display: grid;
		grid-template-columns: repeat(auto-fit, minmax(8.25rem, 1fr));
		gap: 0.375rem;
	}

	.site-footer .section.capabilities .items .item {
		flex: 1;
		padding: 0.25rem 0.25rem;
		display: flex;
		align-items: center;
		justify-content: flex-start;
		flex-basis: calc(25% - 0.5rem * 3);
	}

	.site-footer .section.capabilities .items .divider {
		display: none;
	}

	.site-footer .section.capabilities .hide {
		display: none;
	}

}

@media (max-width: 45em) {
	.site-footer .section.capabilities {
		display: block;
	}

	.site-footer .section.capabilities h2 {
		margin-bottom: 0.75rem;
		font-size: 1.125rem;
		font-weight: 600;
	}

	.site-footer .section.capabilities .items .item {
		flex: 1;
		padding: 0.25rem 0.25rem;
		display: flex;
		align-items: center;
		justify-content: flex-start;
		flex-basis: calc(25% - 0.5rem * 3);
	}

	.site-footer .section.capabilities .items .divider {
		display: none;
	}
}

.site-footer .section.main {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 2.5rem;
	flex: 2;
}

.site-footer .section.main a {
	color: var(--colour-text-light);
}

.site-footer .section.main a:hover {
	color: var(--colour-blue-light);
}

.site-footer .section.main a:focus,
.site-footer .section.main a:focus-visible {
	outline-color: #fff;
}

.site-footer .section.main .logo {
	flex: initial;
	width: 22rem;
	display: flex;
	align-items: flex-start;
	gap: 2.5rem;
}

.site-footer .section.main .logo > * {
	flex: initial;
}

.site-footer .section.main .footer-logo {
	display: block;
	width: 100%;
	max-width: 11rem;
}

.site-footer .section.main .logo .text {
	font-size: 0.875rem;
	font-weight: 300;
}

.site-footer .section.main .items {
	flex: 1;
	max-width: 48rem;
	display: grid;
	grid-auto-flow: column;
	grid-template-rows: repeat(2, 1fr);
	gap: 0.375rem;
}

.site-footer .section.main .items .item {
	flex: initial;
	padding: 0;
	display: flex;
	align-items: center;
	justify-content: flex-start;
}

.site-footer .section.main .items .icon {
	width: 2rem;
	margin-right: 0.5rem;
}

.site-footer .section.main .items .label {
	font-size: 0.875rem;
	font-weight: 300;
}

.site-footer .section.main .items .label a {
	font-weight: 500;
	text-decoration: none;
}

@media (max-width: 67.5em) {
	.site-footer .section.main .items {
		grid-auto-flow: row;
		grid-template-columns: repeat(2, 1fr);
		grid-template-rows: unset;
		max-width: 30rem;
	}
}

@media (min-width: 30.001em) and (max-width: 52.5em) {
	.site-footer .section.main .logo {
		flex-direction: column;
		gap: 0.75rem;
		width: 12.5rem;
	}

	.site-footer .section.main .logo .text {
		width: 100%;
		padding-left: 3.625rem;
	}
}

@media (max-width: 42.5em) {
	.site-footer .section.main {
		align-items: flex-start;
	}

	.site-footer .section.main .items {
		max-width: 14rem;
		display: flex;
		flex-wrap: wrap;
		gap: 0.375rem;
	}

	.site-footer .section.main .items .item {
		flex-basis: 100%;
	}
}

@media (max-width: 30em) {
	.site-footer .section.main {
		flex-direction: column;
		row-gap: 1.5rem;
	}

	.site-footer .section.main .logo {
		gap: 2rem;
	}

	.site-footer .section.main .items {
		max-width: 100%;
	}

	.site-footer .section.main .items .item {
		flex-basis: calc(50% - (0.375rem / 2));
	}
}

@media (max-width: 27.5em) {
	.site-footer .section.main .items {
		padding-left: 0.3125rem;
	}

	.site-footer .section.main .items .item {
		flex-basis: 100%;
		column-gap: 0.375rem;
		min-height: 2rem;
	}
}

@media (max-width: 24em) {
	.site-footer .section.main {
		row-gap: 1rem;
	}

	.site-footer .section.main .footer-logo {
		max-width: 9rem;
	}
}

@media (max-width: 22em) {
	.site-footer .section.main .logo {
		flex-direction: column;
		gap: 0.75rem;
	}

	.site-footer .section.main .footer-logo {
		max-width: 11rem;
	}

	.site-footer .section.main .logo .text {
		padding-left: 3.625rem;
	}
}

/* Lower -------------------------------------------------------------------- */

.site-footer .lower {
	padding: 0.875rem 0;
	font-size: 0.875em;
	color: #fff;
	background: #000;
	border-top: 1px solid color-mix(in srgb, var(--colour-blue-light) 25%, #000 75%);
}

.site-footer .lower .limiter {
	display: flex;
	align-items: center;
}

.site-footer .lower .copyright {
	flex: 1;
	font-weight: 300;
}

.site-footer .lower .top-navigation {
	flex: initial;
}

.site-footer .lower .top-navigation .top-link {
	display: block;
	margin: 0.25rem 0;
	color: rgb(255, 255, 255, 0.5);
}

.site-footer .lower .top-navigation .top-link:hover {
	color: #fff;
}

.site-footer .lower .top-navigation .top-link:focus,
.site-footer .lower .top-navigation .top-link:focus-visible {
	color: #fff;
	outline-color: #fff;
}

.site-footer .lower .top-navigation svg {
	height: 1.5rem;
	width: 1.5rem;
}

/* ## Panels ---------------------------------------------------------------- */

section h2 {
	margin: 0 0 1rem 0;
	font-size: 1.875rem;
	font-weight: 600;
	line-height: 1.2;
}

@media (max-width: 35em) {
	section h2 {
		font-size: 1.5rem;
	}
}

.panel {
	padding: 1.75rem 1.25rem;
	border-radius: 1rem;
}

.panel.half {
	flex: 1;
	padding: 1.75rem 1.25rem;
}

.panel.half h2 {
	font-size: 1.375rem;
}

.panel.medium-gradient {
	padding: 1.75rem 1.25rem;
	color: #fff;
	background: #1373b8;
	background: linear-gradient(
		0deg,
		var(--colour-blue-light) 0%,
		#0a4d99 100%
	);
}

.panel.dark {
	color: #fff;
	background-color: var(--colour-bg-dark);
}

.panel.dark-gradient {
	color: #fff;
	background: #002247;
	box-shadow: 0 0 4rem 1.75rem var(--colour-bg-dark) inset;
}

.panel.white {
	background-color: #fff;
	box-shadow: 0 0 4.5px 0px rgba(0, 0, 0, 0.25);
}

/* ## Item groups ----------------------------------------------------------- */

.items {
	display: flex;
	flex-wrap: wrap;
	gap: 0.75em;
}

.items .item {
	flex-grow: 0;
	flex-shrink: 1;
	flex-basis: calc(25% - (2.25rem / 4));
	padding: 1rem;
}

.flex-wrap {
	display: flex;
	flex-wrap: wrap;
	gap: 0.75rem;
}

.flex-wrap.cols-3 .flex-item {
	flex-grow: 0;
	flex-shrink: 1;
	flex-basis: calc((100% / 3) - (1.5rem / 3));
}

.flex-wrap.cols-4 .flex-item {
	flex-grow: 0;
	flex-shrink: 1;
	flex-basis: calc(25% - (2.25rem / 4));
}

.flex-wrap.cols-5 .flex-item {
	flex-grow: 0;
	flex-shrink: 1;
	flex-basis: calc(20% - (3rem / 5));
}

.flex-wrap.cols-3.with-divider .flex-item {
	flex-basis: calc(100% / 3);
}

.flex-wrap.cols-4.with-divider .flex-item {
	flex-basis: 25%;
}

.flex-wrap.cols-5.with-divider .flex-item {
	flex-basis: 20%;
}

.flex-wrap.cols-3 .flex-item .icon-item,
.flex-wrap.cols-4 .flex-item .icon-item {
	margin: 0 auto;
}

.flex-wrap .flex-item {
	flex: 1;
}

.flex-wrap.fit .flex-item {
	flex: initial;
}

.flex-wrap.with-divider {
	gap: 0;
}

.flex-wrap.with-divider .flex-item {
	padding: 0.5rem 0.75rem;
	border-right: 1px solid var(--colour-blue-light-dim);
}

.flex-wrap.with-divider .flex-item:last-child {
	border-right: none;
}

.icon-item {
	display: flex;
	align-items: flex-start;
	gap: 0.75rem;
}

.flex-wrap.cols-4 .icon-item.limit-width {
	width: 100%;
	max-width: 18rem;
	margin: 0 auto;
}

.icon-item.vertical {
	flex-direction: column;
	align-items: center;
}

.icon-item .icon {
	flex: initial;
	display: block;
	width: 3.5rem;
}

.icon-item.small .icon {
	width: 2.5rem;
}

.icon-item.vertical .content {
	text-align: center;
}

.icon-item .content h3 {
	margin: 0;
	font-size: 0.9375rem;
	font-weight: 600;
	line-height: 1.3 !important;
}

.icon-item .content p {
	margin: 0.375rem 0 0 0;
	font-size: 0.875rem;
	font-weight: 300;
	line-height: 1.4 !important;
}

.icon-item.small .content h3 {
	font-size: 0.875rem;
}

.icon-item.vertical .content h3 {
	font-size: 1rem;
	font-weight: 600;
}

.icon-item.vertical .content p {
	margin: 0.5rem 0 0 0;
	font-size: 0.9375rem;
	font-weight: 400;
	line-height: 1.3 !important;
}

@media (max-width: 60em) {
	.flex-wrap.cols-4 {
		row-gap: 0.5rem;
	}

	.flex-wrap.cols-4 .flex-item {
		flex-basis: 50%;
	}

	.flex-wrap.with-divider .flex-item {
		border-right: none;
	}

	.flex-wrap.cols-4 .icon-item.limit-width {
		max-width: 24rem;
	}
}

@media (max-width: 30em) {
	.flex-wrap.cols-4 {
		row-gap: 0.5rem;
	}

	.flex-wrap.cols-4 .flex-item {
		flex-basis: 100%;
	}

	.flex-wrap.with-divider .flex-item {
		border-right: none;
	}

	.flex-wrap.cols-4 .icon-item.limit-width {
		max-width: 24rem;
	}
}

.icon-list {
	margin: 0;
	padding: 0;
	list-style-type: none;
}

.icon-list li {
	margin: 0.3125rem 0 0 0;
	padding-left: 1.5rem;
	background-image: url('./img/icon-list-check.svg');
	background-position: 0 0.125rem;
	background-repeat: no-repeat;
	background-size: 1.25rem 1.25rem;
	line-height: 1.25;
}

.icon-list.circle-check li {
	background-image: url('./img/icon-list-circle-check.svg');
	background-position: 0 0.0625rem;
	background-size: 1rem 1rem;
}

.icon-list.circle-check.hpe li {
	background-image: url('./img/icon-list-circle-check-hpe.svg');
}

.icon-list.circle-check.microsoft li {
	background-image: url('./img/icon-list-circle-check-microsoft.svg');
}

.icon-list.circle-check.proxmox li {
	background-image: url('./img/icon-list-circle-check-proxmox.svg');
}

.icon-list.circle-check.medium li {
	background-image: url('./img/icon-list-circle-check-medium.svg');
}

.icon-list.circle-check.outline li {
	background-image: url('./img/icon-list-circle-check-outline.svg');
}

.icon-list.green-check li {
	background-image: url('./img/icon-list-check.svg');
	background-position: 0 0.25rem;
	background-size: 1rem 1rem;
}

.card {
	border-radius: 0.75rem;
	box-shadow: 0 0 4.5px 0 rgba(0, 0, 0, 0.2);
}

.card h3 {
	margin: 0;
	font-weight: 500;
}

.dark .card {
	border: 1px solid var(--colour-blue-light-dim);
	box-shadow: none;
}

/* ## Sequence element ------------------------------------------------------ */

.flex-wrap.sequence {
	margin-top: 2.5rem;
	column-gap: 1.5rem;
	row-gap: 1.5rem;
	justify-content: center;
}

.flex-wrap.sequence .fixed-width {
	margin: 0 auto;
	max-width: 13rem;
}

.flex-wrap.sequence .flex-item {
	position: relative;
}

.flex-wrap.sequence .flex-item::after {
	position: absolute;
	content: '';
	right: calc(75.5% + 0.75rem);
	top: 2.625rem;
	height: 0.75rem;
	width: 49%;
	background-image: url('./img/arrow-default.svg');
	background-repeat: no-repeat;
	background-position: 100% 50%;
	background-size: cover;
}

.flex-wrap.sequence .flex-item:nth-child(1)::after {
	background-image: none;
}

@media (max-width: 65em) {
	.flex-wrap.sequence {
		max-width: 54rem;
		margin-left: auto;
		margin-right: auto;
	}

	.flex-wrap.sequence .flex-item {
		flex: initial;
	}

	.flex-wrap.sequence .flex-item::after {
		display: none;
	}
}

@media (max-width: 40em) {
	.flex-wrap.sequence .fixed-width {
		max-width: 12.5rem;
	}
}

@media (max-width: 30em) {
	.flex-wrap.sequence .fixed-width {
		max-width: 20rem;
	}
}


/* -----------------------------------------------------------------------------
 # Home page ---------------------------------------------------------------- */

/* ## Top section ----------------------------------------------------------- */

section.top {
	padding: 0;
}

section.top .limiter {
	padding-top: 0;
	padding-bottom: 1.5rem;
}

section.top .top-content {
	width: 100%;
	margin: 0 auto;
	position: relative;
}

section.top .top-image {
	position: absolute;
	top: 0;
	right: -2rem;
	bottom: -2rem;
	left: 25rem;
	background-image: url('./img/bg-home-top.jpg');
	background-position: 50% 50%;
	background-size: cover;
	background-repeat: no-repeat;
}

section.top .top-image .fade-top {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	height: 15%;
	background: linear-gradient(
		0deg,
		transparent 0%,
		var(--colour-bg-dark) 100%
	);
}

section.top .top-image .fade-right {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	width: 10%;
	background: linear-gradient(
		90deg,
		transparent 0%,
		var(--colour-bg-dark) 100%
	);
}

section.top .top-image .fade-bottom {
	position: absolute;
	right: 0;
	bottom: 0;
	left: 0;
	height: 15%;
	background: linear-gradient(
		180deg,
		transparent 0%,
		var(--colour-bg-dark) 100%
	);
}

section.top .top-image .fade-left {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	width: 30%;
	background: linear-gradient(
		270deg,
		transparent 0%,
		var(--colour-bg-dark) 100%
	);
}

section.top .content-wrapper {
	position: relative;
	padding: 3rem 1rem 0 1rem;
}

section.top .top-content p:not(.subheading) {
	max-width: 40%;
	font-size: 1.0625rem;
}

section.top h2 {
	margin-bottom: 1rem;
	font-size: 3.25rem;
	font-weight: 500;
	line-height: 1.05;
	letter-spacing: -0.02em;
}

section.top h2 span {
	display: block;
}

section.top h2 .third {
	color: var(--colour-blue-light);
}

section.top .buttons {
	display: flex;
	align-items: stretch;
	gap: 1.5rem;
	margin: 1.75rem 0;
}

@media (max-width: 70em) {
	section.top .content-wrapper {
		position: relative;
		padding: 1.5rem 1rem 0 1rem;
	}

	section.top h2 {
		font-size: 3rem;
	}

	section.top .top-content p:not(.subheading) {
		max-width: 29rem !important;
		font-size: 1rem;
	}
}

@media (max-width: 50em) {
	section.top .top-image {
		position: relative;
		left: 0;
		right: 0;
		margin: 0 -1rem;
		top: 0;
		bottom: unset;
		height: 0;
		padding-bottom: 50%;
		background-position: 50% 50%;
		background-size: cover;
		background-repeat: no-repeat;
	}

	section.top .top-image .fade-bottom {
		position: absolute;
		right: 0;
		bottom: 0;
		left: 0;
		height: 25%;
		background: linear-gradient(
			180deg,
			transparent 0%,
			var(--colour-bg-dark) 100%
		);
	}

	section.top .content-wrapper {
		padding-top: 0.5rem;
		padding-left: 0.5rem;
		padding-right: 0.5rem;
	}

	section.top hgroup .subheading {
		font-size: 2.5rem;
	}

	section.top .top-content p:not(.subheading) {
		max-width: 100% !important;
	}
}

section.top .items {
	position: relative;
	width: 100%;
	margin: 1.5rem 0 0 0;
	padding: 0 1rem;
	justify-content: space-between;
}

section.top .items .item {
	flex: initial;
	padding: 0.5rem 0;
	font-size: 1.0625rem;
	display: flex;
	align-items: center;
	gap: 0.75rem;
}

section.top .items .divider {
	flex: initial;
	border-left: 1px solid var(--colour-blue-light-dim);
	width: 0;
}

section.top .items .icon {
	width: 2rem;
}

.page-home section.top .item .div {
	display: inline-block;
	height: 1.125em;
	margin: 0 0.25rem -0.1875em 0.25rem;
	border-left: 1px solid rgba(255, 255, 255, 0.5);
}

.page-home section.top .top-image {
	background-position: 95% 50%;
}

.page-home section.top .top-image .fade-left {
	width: 40%;
}

@media (max-width: 70em) {
	.page-home section.top .top-image {
		background-position: 35% 50%;
	}

	.page-home section.top .items {
		column-gap: 0.5rem;
	}

	.page-home section.top .items .item {
		font-size: 0.9375rem;
		line-height: 1.2;
	}
}

@media (max-width: 60em) {
	.page-home section.top .items .item {
		padding: 0;
		flex-grow: 0;
		flex-shrink: 1;
		flex-basis: calc(25% - (2.25rem / 4));
	}

	.page-home section.top .items .divider {
		display: none;
	}
}

@media (max-width: 50em) {
	.page-home section.top .top-image .fade-top {
		display: none;
	}

	.page-home section.top .top-image .fade-left {
		display: none;
	}

	.page-home section.top .top-image .fade-right {
		display: none;
	}

	.page-home section.top .content-wrapper {
		padding-top: 0;
	}

	.page-home section.top .items {
		padding: 0 0.5rem;
	}

	.page-home section.top .items .item {
		flex-basis: calc(50% - (0.75rem / 2));
	}
}

@media (max-width: 35em) {
	section.top h2 {
		font-size: 2.375rem;
	}

	section.top .buttons {
		gap: 1rem;
		margin: 1.5rem 0 2rem 0;
	}
}

@media (max-width: 27.5em) {
	.page-home section.top .items .item {
		flex-basis: 100%;
	}
}

/* ## Why section ----------------------------------------------------------- */

.page-home section.why h2 {
	color: var(--colour-heading-dark);
}

.page-home section.why .flex-wrap {
	max-width: 80rem;
	margin: 2.5rem auto 1rem auto;
	gap: 1rem;
}

.page-home section.why .flex-wrap .flex-item {
	padding: 1.25rem 1rem;
	background: #fff;
}

.page-home section.why .icon-item {
	gap: 1rem;
}

.page-home section.why .icon-item .icon {
	width: 4rem;
}

.page-home section.why .icon-item .content h3 {
	max-width: 11rem;
	font-size: 1.25rem;
	line-height: 1.2 !important;
}

.page-home section.why .icon-item .content p {
	margin: 0.625rem 0 0 0;
	font-size: 0.9375rem;
	font-weight: 400;
	line-height: 1.4;
}

@media (max-width: 70em) {
	.page-home section.why .flex-wrap .flex-item {
		flex-basis: calc(50% - 0.5rem);
	}

	.page-home section.why .icon-item .icon {
		width: 3.5rem;
	}

	.page-home section.why .icon-item .content h3 {
		max-width: 100%;
		font-size: 1.25rem;
	}
}

@media (max-width: 50em) {
	.page-home section.why .icon-item .content h3 {
		font-size: 1.125rem;
	}
}

@media (max-width: 40em) {
	.page-home section.why .flex-wrap .flex-item {
		flex-basis: 100%;
		padding: 1rem;
	}
}

/* ## Services section ------------------------------------------------------ */

.page-home section.services .panel {
	padding-top: 2rem;
	padding-bottom: 1.5rem;
}

.page-home section.services .panel h2 {
	margin-bottom: 1.75rem;
}

.page-home section.services .items .item {
	flex-basis: calc(25% - (2.25rem / 4));
	display: flex;
	flex-direction: column;
	background-position: 100% 55%;
	background-size: 120% auto;
	background-repeat: no-repeat;
}

.page-home section.services .items .item.iaas {
	background-image: url('./img/bg-home-service-iaas.jpg');
}

.page-home section.services .items .item.refuge {
	background-image: url('./img/bg-home-service-refuge.jpg');
}

.page-home section.services .items .item.migration {
	background-image: url('./img/bg-home-service-migration.jpg');
}

.page-home section.services .items .item.draas {
	background-image: url('./img/bg-home-service-draas.jpg');
}

.page-home section.services .items .item hgroup {
	margin: 0.25rem 0 1rem 0;
	line-height: 1.2;
}

.page-home section.services .items .item hgroup p {
	margin: 0.375rem 0 0 0;
	font-size: 0.9375rem;
	font-weight: 600;
	color: var(--colour-blue-light);
}

.page-home section.services .items .item .item-content {
	flex: 1;
}

.page-home section.services .items .item .item-content p {
	max-width: 60%;
	margin: 0 0 1em 0;
	font-size: 0.9375rem;
	line-height: 1.4;
}

@media (max-width: 76em) {
	.page-home section.services .items .item {
		background-position: 100% 50%;
		background-size: cover;
	}
}

@media (max-width: 70em) {
	.page-home section.services .items .item {
		flex-basis: calc(50% - (0.75rem / 2));
		background-position: 100% 76.5%;
	}
}

@media (max-width: 40em) {
	.page-home section.services .items .item {
		flex-basis: 100%;
	}
}

/* ## Lifecycle section ----------------------------------------------------- */

.page-home section.lifecycle .limiter > p {
	font-size: 1.0625rem;
}

.page-home section.lifecycle .flex-wrap {
	max-width: 80rem;
	margin: 3rem auto 0 auto;
}

.page-home section.lifecycle .flex-wrap .flex-item {
	position: relative;
}

.page-home section.lifecycle .icon-item {
	gap: 1rem;
}

.page-home section.lifecycle .icon-item .icon {
	width: 100%;
	max-width: 6.5rem;
}

.page-home section.lifecycle .icon-item .content h3 {
	margin: 0 0 0.5rem 0;
	font-size: 1.125rem;
}

.page-home section.lifecycle .icon-item .content p {
	margin: 0 auto;
	max-width: 14.25rem;
	line-height: 1.4;
}

/* Arrows */

.page-home section.lifecycle .flex-wrap .flex-item::after {
	position: absolute;
	content: '';
	right: calc(70.5% + 0.75rem);
	top: 2.875rem;
	height: 0.75rem;
	width: 59%;
	background-repeat: no-repeat;
	background-position: 100% 50%;
	background-size: cover;
}

.page-home section.lifecycle .flex-wrap .flex-item:nth-child(2)::after {
	background-image: url('./img/arrow-green.svg');
}

.page-home section.lifecycle .flex-wrap .flex-item:nth-child(3)::after {
	background-image: url('./img/arrow-orange.svg');
}

.page-home section.lifecycle .flex-wrap .flex-item:nth-child(4)::after {
	background-image: url('./img/arrow-purple.svg');
}

@media (max-width: 60em) {
	.page-home section.lifecycle .flex-wrap {
		column-gap: 1rem;
	}

	.page-home section.lifecycle .flex-wrap .flex-item {
		flex-basis: calc(25% - (3rem / 4));
	}

	.page-home section.lifecycle .flex-wrap .flex-item::after {
		right: calc(71% + 0.5rem);
		top: 2.25rem;
		height: 0.5rem;
		width: 58%;
	}

	.page-home section.lifecycle .icon-item .icon {
		max-width: 5rem;
	}

	.page-home section.lifecycle .icon-item .content p {
		max-width: 11rem;
	}
}

@media (max-width: 45em) {
	.page-home section.lifecycle .flex-wrap {
		max-width: 27rem;
	}

	.page-home section.lifecycle .flex-wrap .flex-item {
		flex-basis: calc(50% - (1rem / 2));
	}

	.page-home section.lifecycle .flex-wrap .flex-item::after {
		display: none;
	}
}

@media (max-width: 22em) {
	.page-home section.lifecycle .flex-wrap .flex-item {
		flex-basis: 100%;
	}
}

/* ## Industries section ---------------------------------------------------- */

section.industries-section .items {
	list-style-type: none;
	margin: 2.5rem auto 1rem auto;
	padding: 0;
	justify-content: center;
	gap: 1rem;
}

section.industries-section .items .item {
	margin: 0;
	padding: 1.25rem 0.75rem 1rem 0.75rem;
	flex-basis: 9rem;
	line-height: 1.15;
}

section.industries-section .items .icon {
	display: block;
	width: 100%;
	max-width: 4.25rem;
	margin: 0 auto 0.75rem auto;
}

section.industries-section .items .label {
	font-size: 0.9375rem;
}

@media (max-width: 72em) {
	section.industries-section .items {
		max-width: 54em;
		margin-left: auto;
		margin-right: auto;
	}
}

@media (max-width: 45em) {
	section.industries-section .items .item {
		margin: 0;
		padding: 1rem 0.5rem 0.75rem 0.5rem;
		flex-basis: 8rem;
	}

	section.industries-section .items .icon {
		max-width: 4rem;
		margin: 0 auto 0.5rem auto;
	}
	
	section.industries-section .items .label {
		font-size: 0.875rem;
	}
}

/* ## Panels section -------------------------------------------------------- */

.page-home section.panels .flex {
	display: flex;
	flex-wrap: wrap;
	gap: 1rem;
}

.page-home section.panels .flex .panel.half-width {
	flex-basis: calc(50% - 1rem / 2);
}

.page-home section.panels h2 {
	font-size: 1.4375rem;
}

.page-home section.panels ul {
	margin: 0;
	padding: 0;
	list-style-type: none;
	font-weight: 300;
}

.page-home section.panels li {
	margin: 0;
	padding: 0;
}

.page-home section.panels .panel.full {
	flex-basis: 100%;
}

/* Why Is CognoCloud Different? */

.page-home section.panels .panel {
	padding: 1.5rem;
}

.page-home section.panels .panel.different .items {
	position: relative;
}

.page-home section.panels .panel.different .items::after {
	position: absolute;
	content: '';
	width: 5rem;
	height: 5rem;
	top: calc(40% - 2.5rem);
	left: calc(50% - 2.5rem);
	background-image: url('./img/vs.svg');
	background-repeat: no-repeat;
	background-position: 50% 50%;
	background-size: contain;
}

.page-home section.panels .panel.different .item {
	position: relative;
	flex-grow: 0;
	flex-shrink: 1;
	flex-basis: calc(50% - (0.75rem / 2));
	padding: 1rem;
	border: 1px solid var(--colour-blue-light-dim);
	box-shadow: none;
}

.page-home section.panels .panel.different .item.other::before,
.page-home section.panels .panel.different .item.other::after {
	position: absolute;
	content: '';
	top: 22.5%;
	bottom: 32.5%;
	right: -2.5px;
	width: 4.5px;
	background-image: url('./img/panel-border-end.svg');
	background-repeat: no-repeat;
	background-position: 50% 100%;
	background-size: contain;
}

.page-home section.panels .panel.different .item.other::before {
	background-color: #012341;
	background-position: 50% 0%;
}

.page-home section.panels .panel.different .item.cogno::before,
.page-home section.panels .panel.different .item.cogno::after {
	position: absolute;
	content: '';
	top: 12.5%;
	bottom: 42.5%;
	left: -2.5px;
	width: 4.5px;
	background-image: url('./img/panel-border-end.svg');
	background-repeat: no-repeat;
	background-position: 50% 100%;
	background-size: contain;
}

.page-home section.panels .panel.different .item.cogno::before {
	background-color: #012341;
	background-position: 50% 0%;
}

.page-home section.panels .panel.different h2 {
	margin: 0 0 1.25rem 0;
}

.page-home section.panels .panel.different h3 {
	margin: 0 0 0.625rem 0;
	font-size: 1.125rem;
}

.page-home section.panels .panel.different .other {
	padding-right: 2.5rem;
}

.page-home section.panels .panel.different .cogno {
	padding-left: 2.5rem;
}

.page-home section.panels .panel.different .other h3 {
	margin: 0.5rem 0 0.75rem 0;
}

.page-home section.panels .panel.different .logo {
	display: block;
	width: 7.5rem;
	margin-top: -0.25rem;
}

.page-home section.panels .panel.different li {
	margin: 0.3125rem 0 0 0;
	padding-left: 1.375rem;
	background-repeat: no-repeat;
	background-position: left center;
	background-size: 0.875rem 0.875rem;
	font-size: 0.9375rem;
	line-height: 1.25;
}

.page-home section.panels .panel.different .other li {
	background-image: url('./img/icon-list-x.svg');
	background-position: 0 0.0625rem;
}

.page-home section.panels .panel.different .cogno li {
	background-image: url('./img/icon-list-check.svg');
	background-position: 0 0.125rem;
}

@media (min-width: 60.001em) and (max-width: 70em) {
	.page-home section.panels .panel.different .other {
		padding: 1rem 1.5rem 1rem 1rem;
	}

	.page-home section.panels .panel.different .cogno {
		padding: 1rem 0.75rem 1rem 1.75rem;
	}

	.page-home section.panels .panel.different .items::after {
		width: 4rem;
		height: 4rem;
		top: calc(40% - 2rem);
		left: calc(50% - 2rem);
	}

	.page-home section.panels .panel.different li {
		font-size: 0.875rem;
	}
}

@media (max-width: 60em) {
	.page-home section.panels .flex .panel.half-width {
		flex: initial;
		width: 100%;
	}

	.page-home section.panels .panel.different .item h3,
	.page-home section.panels .panel.different .item ul {
		max-width: 13rem;
		margin-left: auto;
		margin-right: auto;
	}
}

@media (max-width: 40em) {
	.page-home section.panels .panel.different .other {
		padding: 1rem 1.5rem 1rem 1rem;
	}

	.page-home section.panels .panel.different .cogno {
		padding: 1rem 0.75rem 1rem 1.75rem;
	}

	.page-home section.panels .panel.different .items::after {
		width: 4rem;
		height: 4rem;
		top: calc(40% - 2rem);
		left: calc(50% - 2rem);
	}

	.page-home section.panels .panel.different li {
		font-size: 0.875rem;
	}
}

@media (max-width: 30em) {
	.page-home section.panels .panel.different .items {
		flex-direction: column;
	}

	.page-home section.panels .panel.different .other {
		padding: 1rem 1rem 1.75rem 1rem;
	}

	.page-home section.panels .panel.different .cogno {
		padding: 1.75rem 1rem 1rem 1rem;
	}

	.page-home section.panels .panel.different .items::after {
		display: none;
	}

	.page-home section.panels .panel.different .item.cogno::after {
		position: absolute;
		content: '';
		width: 4rem;
		height: 4rem;
		top: calc(-2.375rem);
		left: calc(50% - 2rem);
		background-image: url('./img/vs.svg');
		background-repeat: no-repeat;
		background-position: 50% 50%;
		background-size: contain;
	}

	.page-home section.panels .panel.different li {
		font-size: 0.875rem;
	}

	.page-home section.panels .panel.different .item.other::before,
	.page-home section.panels .panel.different .item.other::after {
		position: absolute;
		content: '';
		top: unset;
		bottom: -2.5px;
		left: 35%;
		right: 37.5%;
		width: auto;
		height: 4.5px;
		background-image: none;
		background-repeat: no-repeat;
		background-position: 100% 50%;
		background-size: contain;
	}

	.page-home section.panels .panel.different .item.other::before {
		background-color: #012341;
		background-image: url('./img/panel-border-end.svg');
		background-position: 100% 0%;
	}

	.page-home section.panels .panel.different .item.cogno::before {
		position: absolute;
		content: '';
		top: -2.5px;
		bottom: unset;
		left: 37.5%;
		right: 35%;
		width: auto;
		height: 4.5px;
		background-image: url('./img/panel-border-end.svg');
		background-repeat: no-repeat;
		background-position: 0% 50%;
		background-size: contain;
	}

	.page-home section.panels .panel.different .item.cogno::before {
		background-color: #012341;
		background-position: 0% 50%;
	}
}

/* Testimonial */

.page-home section.panels .panel.testimonial {
	display: flex;
	align-items: center;
	background-image: url('./img/bg-home-testimonial.jpg');
	background-position: calc(0% - 12rem) 75%;
	background-repeat: no-repeat;
	background-size: cover;
	position: relative;
}

.page-home section.panels .panel.testimonial::after {
	content: '';
	background: linear-gradient(
		90deg,
		transparent 0%,
		var(--colour-bg-dark) 35%
	);
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 35%;
	border-radius: 0 1rem 1rem 0;
}

.page-home section.panels .panel.testimonial .content {
	margin-left: auto;
	padding-left: 2.5rem;
	width: 50%;
	background-image: url('./img/quotes.svg');
	background-position: 0 0.125rem;
	background-repeat: no-repeat;
	background-size: 1.5rem auto;
	z-index: 10;
}

.page-home section.panels .panel.testimonial p,
.page-home section.panels .panel.testimonial li {
	margin: 0;
	font-size: 0.9375rem;
	font-weight: 300;
}

.page-home section.panels .panel.testimonial blockquote {
	margin: 0;
	font-style: italic;
	letter-spacing: 0.0125em;
}

.page-home section.panels .panel.testimonial .attribution {
	margin: 0.375rem 0 0 0;
	font-size: 1rem;
	font-weight: 500;
	color: var(--colour-blue-light);
	text-transform: uppercase;
	letter-spacing: 0.0125em;
	line-height: 1.25;
}

.page-home section.panels .panel.testimonial ul {
	margin: 1rem 0 1rem 0;
}

@media (min-width: 60.001em) and (max-width: 70em) {
	.page-home section.panels .panel.testimonial::after {
		left: 20%;
	}

	.page-home section.panels .panel.testimonial .content {
		width: 70%;
	}
}

@media (max-width: 37.5em) {
	.page-home section.panels .panel.testimonial {
		padding-top: 2rem;
		padding-bottom: 2rem;
		background-position: calc(100% + 8rem) 90%;
	}

	.page-home section.panels .panel.testimonial::after {
		content: '';
		background: var(--colour-bg-dark);
		position: absolute;
		top: 0;
		right: 0;
		bottom: 0;
		left: 0;
		border-radius: 1rem;
		opacity: 0.8;
	}

	.page-home section.panels .panel.testimonial .content {
		margin-left: 0;
		padding-left: 2.5rem;
		width: 100%;
		background-image: url('./img/quotes.svg');
		background-position: 0 0.125rem;
		background-repeat: no-repeat;
		background-size: 1.5rem auto;
		z-index: 10;
	}
}

/* CGP */

.page-home section.panels .panel.cgp {
	padding: 2rem;
	background-image: url('./img/bg-home-cgp.jpg');
	background-position: 50% 45%;
	background-repeat: no-repeat;
	background-size: 60% auto;
}

.page-home section.panels .panel.cgp h2 {
	margin: 0 0 1rem 0;
}

.page-home section.panels .panel.cgp h3 {
	margin: 0 0 1rem 0;
	font-size: 1.4375rem;
}

.page-home section.panels .panel.cgp .content {
	width: 100%;
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
}

.page-home section.panels .panel.cgp li,
.page-home section.panels .panel.cgp p {
	font-size: 0.9375rem;
	font-weight: 300;
	letter-spacing: 0.0125em;
}

.page-home section.panels .panel.cgp .left {
	width: 37.5%;
}

.page-home section.panels .panel.cgp .left p:first-child {
	margin-top: 0;
}

.page-home section.panels .panel.cgp .left p:last-child {
	margin-bottom: 0;
}

.page-home section.panels .panel.cgp .left li {
	margin: 0;
	padding: 0.375rem 0 0.375rem 1.875rem;
	background-image: url('./img/icon-list-circle-check-outline.svg');
	background-position: 0 0.25rem;
	background-repeat: no-repeat;
	background-size: 1.25rem 1.25rem;
	line-height: 1.25;
}

.page-home section.panels .panel.cgp .right {
	width: 37.5%;
	text-align: right;
}

.page-home section.panels .panel.cgp .right .items {
	margin: 1rem 0;
	justify-content: flex-end;
	text-align: center;
}

.page-home section.panels .panel.cgp .right .item {
	padding: 0;
	text-align: center;
	flex-basis: 7.5rem;
	line-height: 1.25;
}

.page-home section.panels .panel.cgp .right .item .icon {
	display: block;
	width: 100%;
	max-width: 4rem;
	margin: 1rem auto 0.5rem auto;
}

.page-home section.panels .panel.cgp .right .item .label {
	font-size: 0.875rem;
}

@media (max-width: 72em) {
	.page-home section.panels .panel.cgp .right .items {
		column-gap: 0.5rem;
		row-gap: 1rem;
	}

	.page-home section.panels .panel.cgp .right .item {
		flex-basis: calc((100% / 3) - (1rem / 3));
	}

	.page-home section.panels .panel.cgp .right .item .icon {
		max-width: 3.5rem;
		margin: 1rem auto 0.5rem auto;
	}
}

@media (max-width: 65em) {
	.page-home section.panels .panel.cgp h3 {
		font-size: 1.25rem;
	}

	.page-home section.panels .panel.cgp .right .item {
		flex-basis: calc(50% - (0.5rem / 2));
	}

	.page-home section.panels .panel.cgp .right .item .icon {
		max-width: 3.5rem;
		margin: 0.5rem auto;
	}
}

@media (max-width: 50em) {
	.page-home section.panels .panel.cgp {
		background-position: calc(100% + 4rem) 40%;
	}

	.page-home section.panels .panel.cgp .content {
		flex-direction: column;
		gap: 2rem;
	}

	.page-home section.panels .panel.cgp .left,
	.page-home section.panels .panel.cgp .right {
		width: 100%;
	}

	.page-home section.panels .panel.cgp .right {
		text-align: left;
	}

	.page-home section.panels .panel.cgp .right .items {
		row-gap: 0.5rem;
		margin-bottom: 0;
	}

	.page-home section.panels .panel.cgp .right .item {
		flex-basis: calc((100% / 3) - (1rem / 3));
		line-height: 1.15;
	}
}

@media (max-width: 40em) {
	.page-home section.panels .panel.cgp {
		background-position: calc(100% + 4rem) -3rem;
		background-repeat: no-repeat;
		background-size: 18rem auto;
	}

	.page-home section.panels .panel.cgp h2 {
		max-width: calc(100% - 7rem);
	}

	.page-home section.panels .panel.cgp .content .left p.first {
		max-width: calc(100% - 7rem);
	}
}

@media (max-width: 30em) {
	.page-home section.panels .panel.cgp {
		background-position: calc(100% + 3.5rem) -2.5rem;
		background-repeat: no-repeat;
		background-size: 15rem auto;
	}

	.page-home section.panels .panel.cgp h2 {
		max-width: calc(100% - 5.5rem);
		margin: 0.5rem 0 2rem 0;
	}

	.page-home section.panels .panel.cgp .content .left p.first {
		max-width: 100%;
	}
}

@media (max-width: 25em) {
	.page-home section.panels .panel.cgp {
		padding: 1.5rem 1.25rem;
	}

	.page-home section.panels .panel.cgp .right .item .icon {
		max-width: 2.75rem;
		margin: 0.5rem auto 0.25rem auto;
	}

	.page-home section.panels .panel.cgp .right .item .label {
		font-size: 0.75rem;
	}
}

/* ## Conversation section -------------------------------------------------- */

section.conversation .limiter {
	padding-top: 4rem;
	padding-bottom: 4rem;
	background-image: url('./img/bg-mail.jpg');
	background-position: 85% 50%;
	background-repeat: no-repeat;
	background-size: cover;
}

section.conversation .container {
	max-width: 80rem;
	margin: 0 auto;
	padding-left: 1rem;
}

section.conversation h2 {
	margin-bottom: 1rem;
	max-width: 12.5em;
	font-size: 2.5rem;
}

section.conversation ul {
	margin: 1rem 0 2.5rem 0;
	padding: 0;
	list-style-type: none;
}

section.conversation li {
	margin: 0;
	padding: 0.4375rem 0 0.4375rem 2.25rem;
	background-image: url('./img/icon-list-square-check.svg');
	background-position: 0 0.3125rem;
	background-repeat: no-repeat;
	background-size: 1.5rem 1.5rem;
	font-size: 1.125rem;
	font-weight: 300;
	line-height: 1.25;
}

section.conversation .button {
	width: fit-content;
	margin: 0 auto 0 0;
}

section.conversation .button p {
	margin: 1rem 0 0 0;
	text-align: center;
	line-height: 1.25;
	font-weight: 500;
}

@media (max-width: 60em) {
	section.conversation .limiter {
		background-position: 60% 50%;
		background-size: auto 100%;
	}
}

@media (max-width: 35em) {
	section.conversation .limiter {
		position: relative;
		padding-top: 2.5rem;
		padding-bottom: 2.5rem;
		background-position: 60% 50%;
		background-size: auto 100%;
	}

	section.conversation h2 {
		margin-bottom: 1.25rem;
		max-width: 100%;
		font-size: 2rem;
	}

	section.conversation ul {
		margin: 1rem 0 2rem 0;
	}

	section.conversation li {
		background-position: 0 0.375rem;
		background-repeat: no-repeat;
		background-size: 1.25rem 1.25rem;
		font-size: 1rem;
	}
}

@media (max-width: 27.5em) {
	section.conversation .limiter::after {
		content: '';
		background: var(--colour-bg-dark);
		position: absolute;
		top: 0;
		right: 0;
		bottom: 0;
		left: 0;
		opacity: 0.65;
	}

	section.conversation .container {
		position: relative;
		z-index: 20;
	}
}

/* ## Footer banner --------------------------------------------------------- */

.footer-banner {
	position: fixed;
	left: 0;
	right: 0;
	bottom: 0;
	width: 100%;
	max-height: 256px;
	color: #fff;
	z-index: 50;
}

.footer-banner .container {
	width: 100%;
	max-width: 1286px;
	margin: 0 auto;
	position: relative;
}

.footer-banner .container a {
	outline-offset: 2px;
}

.footer-banner .image {
	display: block;
	width: 100%;
	height: 0;
	padding-bottom: 20%;
	background-size: contain;
	background-repeat: no-repeat;
	background-position: 0 0;
	box-shadow: 0 0 4px 2px rgba(0, 0, 0, 0.2);
	border-radius: 2px;
	position: relative;
}

.footer-banner .notice {
	background: #1d76bb;
	color: #fff;
	font-size: 1.125rem;
	text-align: center;
	padding: 0.625rem 1rem;
	border: 1.5px solid #fff;
	border-radius: 1px 1px 0 0;
	border-bottom: none;
}

.footer-banner .dismiss-footer-banner {
	display: flex;
	align-items: center;
	justify-content: center;
	position: absolute;
	top: 0;
	right: 0;
	height: 2em;
	width: 2em;
	transition: all 0.1s;
	border-radius: 0 2px 0 0;
	text-decoration: none;
	color: rgba(127, 127, 127, 0.75);
	font-weight: 700;
	font-size: 1.5em;
	border: none;
	background: transparent;
	padding: 0;
}

.footer-banner .dismiss-footer-banner.text-only {
	color: rgba(255, 255, 255, 0.5);
}

.footer-banner .dismiss-footer-banner:hover {
	color: #000;
	background: rgba(255, 255, 255, 0.25);
}

.footer-banner .dismiss-footer-banner.text-only:hover {
	color: #fff;
	background: rgba(255, 255, 255, 0.25);
}

@media (max-width: 45em) {
	.footer-banner .image {
		background-size: cover;
	}

	.footer-banner .dismiss-footer-banner {
		text-shadow: -1px -1px 0 #fff, 1px -1px 0 #fff, -1px 1px 0 #fff, 1px 1px 0 #fff;
	}
}


/* -----------------------------------------------------------------------------
 # Interior pages ----------------------------------------------------------- */

/* ## Common elements ------------------------------------------------------- */

.sticky {
	display: block;
}

.post,
.page {
	margin: 0;
}

.updated:not(.published) {
	display: none;
}

.page-links {
	clear: both;
	margin: 0 0 1.5em;
}

.ready-to-talk {
	padding: 1em;
	border: 1px solid var(--colour-blue-light);
	border-radius: 1px;
	text-align: center;
}

.ready-to-talk h3 {
	color: var(--colour-blue-light);
	font-size: 1.4375em;
	line-height: 1.4;
	margin: 0;
	font-weight: 400;
	letter-spacing: -0.02em;
}

.ready-to-talk .btn-discuss {
	display: inline-block;
	margin: 1rem auto 0.75rem auto;
	width: auto;
	padding: 0.3125rem 1.3125rem;
	background: var(--colour-blue-light);
	color: #fff;
	font-size: 1.125em;
	line-height: 1.5rem;
	text-decoration: none;
	border-radius: 1.0625rem;
}

.ready-to-talk .btn-discuss:hover {
	background: var(--colour-blue-light-hover);
}

.ready-to-talk .btn-discuss .svg-inline--fa {
	margin-right: 0.625rem;
}

.svg-inline--fa {
	width: 1em;
	height: 1em;
	vertical-align: -0.125em;
}

/* Top section */

@media (max-width: 60em) {
	section.top .flex-wrap.gradient-panel.cols-4 .flex-item {
		flex-basis: 50%;
	}
}

@media (max-width: 40em) {
	section.top .flex-wrap.gradient-panel .icon-item .icon {
		width: 3rem;
	}
}

@media (max-width: 30em) {
	section.top .flex-wrap.gradient-panel.cols-4 .flex-item {
		flex-basis: 100%;
	}

	section.top .flex-wrap.gradient-panel .icon-item .icon {
		width: 2.5rem;
	}
}

/* Platform panels */

.flex-wrap.platform-panels {
	margin-top: 2.5rem;
}

.flex-wrap.platform-panels .platform-panel {
	display: flex;
	flex-direction: column;
	justify-content: stretch;
	gap: 1rem;
	background-repeat: no-repeat;
	background-size: cover;
}

.flex-wrap.platform-panels .platform-panel.microsoft {
	background-image: url('./img/bg-platform-microsoft.jpg');
	background-position: 100% 20%;
}

.flex-wrap.platform-panels .platform-panel.proxmox {
	background-image: url('./img/bg-platform-proxmox.jpg');
	background-position: 100% 20%;
}

.flex-wrap.platform-panels .platform-panel.hpe {
	background-image: url('./img/bg-platform-hpe.jpg');
	background-position: 100% 20%;
}

.flex-wrap.platform-panels .platform-panel .logo-wrapper {
	flex: initial;
	min-height: 3.75rem;
	display: flex;
	align-items: center;
}

.flex-wrap.platform-panels .platform-panel .logo {
	max-width: 50%;
}

.flex-wrap.platform-panels .platform-panel.microsoft .logo {
	width: 9rem;
}

.flex-wrap.platform-panels .platform-panel.proxmox .logo {
	width: 12rem;
}

.flex-wrap.platform-panels .platform-panel.hpe .logo {
	width: 10rem;
}

.flex-wrap.platform-panels .platform-panel p {
	max-width: 65%;
	margin: 0;
}

.flex-wrap.platform-panels .platform-panel .icon-list li {
	margin-top: 0.5rem;
	font-size: 0.9375rem;
}

@media (min-width: 60.001em) and (max-width: 70em) {
	.flex-wrap.platform-panels .platform-panel .logo-wrapper {
		min-height: 6rem;
	}

	.flex-wrap.platform-panels .platform-panel p {
		max-width: 100%;
	}
}

@media (max-width: 60em) {
	.flex-wrap.platform-panels {
		justify-content: center;
	}

	.flex-wrap.platform-panels .platform-panel {
		flex-basis: calc(50% - (0.75rem / 2));
	}

	.flex-wrap.platform-panels .platform-panel .logo-wrapper {
		min-height: 3.75rem;
	}

	.flex-wrap.platform-panels .platform-panel p {
		max-width: 65%;
	}
}

@media (min-width: 40em) and (max-width: 48.5em) {
	.flex-wrap.platform-panels .platform-panel .logo-wrapper {
		min-height: 6rem;
	}

	.flex-wrap.platform-panels .platform-panel p {
		max-width: 100%;
	}
}

@media (max-width: 40em) {
	.flex-wrap.platform-panels .platform-panel {
		flex-basis: 100%;
	}

	.flex-wrap.platform-panels .platform-panel.proxmox {
		background-position: 100% 15%;
	}

	.flex-wrap.platform-panels .platform-panel .logo-wrapper {
		min-height: 3.75rem;
	}

	.flex-wrap.platform-panels .platform-panel p {
		max-width: 60%;
	}
}

@media (max-width: 25em) {
	.flex-wrap.platform-panels .platform-panel .logo-wrapper {
		min-height: 5rem;
	}

	.flex-wrap.platform-panels .platform-panel p {
		max-width: 100%;
	}
}

/* Business Impact section */

.page-standard section.impact .flex-wrap {
	margin-top: 1.5rem;
	column-gap: 1.5rem;
	row-gap: 1.5rem;
	justify-content: space-evenly;
}

.page-standard section.impact .flex-item {
	max-width: 11rem;
}

.page-standard section.impact .flex-item .icon {
	width: 100%;
	max-width: 6.5rem;
	margin-bottom: -2.25rem;
	position: relative;
	mix-blend-mode: screen;
	opacity: 0.35;
}

.page-standard section.impact .flex-item .content {
	position: relative;
}

.page-standard section.impact .icon-item .content h3 .break {
	display: block;
}

.page-standard section.impact .icon-item .content p {
	font-weight: 300;
}

@media (max-width: 70em) {
	.page-standard section.impact .flex-wrap.items-6 {
		max-width: 60rem;
		margin-left: auto;
		margin-right: auto;
		justify-content: center;
	}

	.page-standard section.impact .flex-wrap.items-6 .flex-item {
		flex: initial;
		max-width: calc(25% - (4.5rem / 4));
	}

	.page-standard section.impact .flex-wrap.items-6 .flex-item .icon {
		max-width: 5.25rem;
		margin-bottom: -2rem;
	}
}

@media (max-width: 60em) {
	.page-standard section.impact .flex-wrap.items-5 {
		max-width: 48rem;
		margin-left: auto;
		margin-right: auto;
		justify-content: center;
	}

	.page-standard section.impact .flex-wrap.items-5 .flex-item {
		flex: initial;
		max-width: calc((100% / 3) - (3rem / 3));
	}

	.page-standard section.impact .flex-wrap.items-5 .flex-item .icon {
		max-width: 5.25rem;
		margin-bottom: -2rem;
	}
}

@media (max-width: 54em) {
	.page-standard section.impact .flex-wrap.items-6 .flex-item {
		max-width: calc((100% / 3) - (3rem / 3));
	}
}

@media (max-width: 40em) {
	.page-standard section.impact .flex-wrap.items-5 .flex-item,
	.page-standard section.impact .flex-wrap.items-6 .flex-item {
		max-width: 11rem;
	}
}

@media (max-width: 30em) {
	.page-standard section.impact .icon-item.vertical {
		flex-direction: row;
		align-items: flex-start;
	}

	.page-standard section.impact .icon-item.vertical .content {
		text-align: left;
	}

	.page-standard section.impact .icon-item .content h3 .break {
		display: inline;
	}

	.page-standard section.impact .flex-wrap .flex-item,
	.page-standard section.impact .flex-wrap.items-5 .flex-item,
	.page-standard section.impact .flex-wrap.items-6 .flex-item {
		width: 100%;
		max-width: 100%;
	}

	.page-standard section.impact .flex-wrap .flex-item .icon,
	.page-standard section.impact .flex-wrap.items-5 .flex-item .icon,
	.page-standard section.impact .flex-wrap.items-6 .flex-item .icon {
		max-width: 3.75rem;
		opacity: 0.75;
	}
}

/* Half-width panel, dark */

.panel.half.dark-gradient .flex-wrap {
	margin-top: 1.5rem;
	row-gap: 1.5rem;
}

@media (max-width: 76em) {
	.panel.half.dark-gradient .flex-wrap.cols-3 .flex-item {
		flex-basis: calc(50% - 0.75rem / 2);
	}
}

@media (max-width: 60em) {
	section.has-panels .limiter.flex {
		flex-wrap: wrap;
	}

	section.has-panels .limiter.flex .panel.half {
		flex: initial;
		width: 100%;
	}

	.panel.half.dark-gradient .flex-wrap.cols-3 .flex-item {
		flex-basis: calc((100% / 3) - (1.5rem / 3));
	}
}

@media (max-width: 40em) {
	.panel.half.dark-gradient .flex-wrap.cols-3 .flex-item {
		flex-basis: calc(50% - 0.75rem / 2);
	}
}

@media (max-width: 30em) {
	.panel.half.dark-gradient .flex-wrap.cols-3 {
		gap: 1.25rem;
	}

	.panel.half.dark-gradient .flex-wrap.cols-3 .flex-item {
		flex-basis: 100%;
	}
}

/* Half-width panel, white */

.panel.half.white .icon-list {
	margin-top: 1.25rem;
}

.panel.half.white .icon-list li {
	margin-top: 0.75rem;
}

.panel.half.white.maple-leaf {
	background-image: url('./img/bg-maple-leaf.svg');
	background-size: 25% auto;
	background-repeat: no-repeat;
	background-position: calc(100% - 2rem) calc(100% - 1.5rem);
}

@media (min-width: 60.001em) and (max-width: 75em) {
	.panel.half.white.maple-leaf {
		background-size: 10rem auto;
		background-position: 50% calc(100% - 1.5rem);
	}
}

@media (max-width: 60em) {
	.panel.half.white.maple-leaf {
		background-size: auto 75%;
		background-position: 90% 55%;
	}
}

@media (max-width: 42em) {
	.panel.half.white.maple-leaf {
		background-size: 5rem auto;
		background-position: calc(100% - 1.5rem) 1.5rem;
	}
}

/* Action section */

section.action .panel {
	display: flex;
	align-items: center;
	justify-content: space-evenly;
	width: 100%;
	padding: 1.75rem 1.5rem;
}

section.action .panel .left {
	flex: 3;
	max-width: 27rem;
}

section.action .panel .left h2 {
	margin-bottom: 0.75rem;
	font-size: 2.125rem;
	line-height: 1.15;
}

section.action .panel .left p {
	margin: 0.75rem 0 0 0;
}

section.action .panel .divider {
	margin: 0 1.25rem;
	height: 100%;
	border-right: 1px solid var(--colour-blue-light-dim);
}

section.action .panel .right {
	flex: 5;
	max-width: 45em;
}

section.action .panel .right .flex-wrap {
	gap: 1.5rem;
}

section.action .panel .right .icon-item .content h3 {
	font-size: 1.125rem;
}

section.action .panel .right .icon-item .content p:last-child {
	margin-top: 0.75rem;
}

@media (max-width: 60em) {
	section.action .panel {
		flex-direction: column;
	}

	section.action .panel .left {
		max-width: 100%;
		text-align: center;
	}

	section.action .panel .divider {
		width: 100%;
		height: auto;
		margin: 1.25rem 0;
		border-right: none;
		border-bottom: 1px solid var(--colour-blue-light-dim);
	}
}

@media (max-width: 40em) {
	section.action .panel .right .flex-wrap {
		flex-direction: column;
	}

	section.action .panel .left h2 {
		font-size: 1.75rem;
		line-height: 1.15;
	}
}

/* Clients section */

.section.clients {
	background: #fff;
	color: #949494;
	text-align: center;
}

.section.clients h2 {
	font-size: 1.25rem;
	margin: 0;
	font-weight: 600;
}

.section.clients .clients-container {
	display: flex;
	align-items: center;
	justify-content: space-evenly;
	margin: 1.5rem -1rem 0 -1rem;
}

.section.clients .client {
	flex: 1;
	margin: 0 2%;
	max-width: 10rem;
}

.section.clients .client img {
	display: block;
	width: 100%;
}

@media (max-width: 45em) {
	.section.clients {
		padding-bottom: 2.25rem;
	}

	.section.clients .clients-container {
		flex-wrap: wrap;
		justify-content: center;
		margin-top: 0.5rem;
	}

	.section.clients .client {
		flex: 1 0 33.333%;
		flex: 1 0 calc(100%/3);
		margin: 1em;
	}
}

/* ## Standard pages -------------------------------------------------------- */

.section.wide {
	background-color: #000;
	background-image: url('./img/bg-home.jpg');
	background-repeat: no-repeat;
	background-position: 50% 50%;
	background-size: auto 110%;
	height: 25em;
}

.page-standard .section.wide {
	background-color: #333;
	background-repeat: no-repeat;
	background-position: 50% 50%;
	background-size: cover;
	height: 25em;
}

.page-standard section.top hgroup h1,
.page-blog section.top hgroup h1 {
	margin: 0;
	font-size: 1.25rem;
	font-weight: 500;
	color: var(--colour-blue-light);
	text-transform: uppercase;
	letter-spacing: 0.075em;
}

.page-standard section.top hgroup .subheading,
.page-blog section.top hgroup .subheading {
	margin: 0.5rem 0 1rem 0;
	font-size: 3.25rem;
	font-weight: 500;
	line-height: 1.05;
	letter-spacing: -0.02em;
	text-align: left;
}

.page-standard section.top hgroup .subheading .accent,
.page-blog section.top hgroup .subheading .accent {
	color: var(--colour-blue-light);
}

.page-standard section.top p,
.page-blog section.top p {
	line-height: 1.6;
}

.page-standard section.top p.big,
.page-blog section.top p.big {
	font-size: 1.3125rem;
	line-height: 1.3;
}

@media (max-width: 70em) {
	.page-standard section.top hgroup h1,
	.page-blog section.top hgroup h1 {
		font-size: 1.1875rem;
	}

	.page-standard section.top hgroup .subheading,
	.page-blog section.top hgroup .subheading {
		font-size: 3rem;
	}
}

@media (max-width: 35em) {
	.page-standard section.top hgroup h1,
	.page-blog section.top hgroup h1 {
		font-size: 1.125rem;
	}

	.page-standard section.top hgroup .subheading,
	.page-blog section.top hgroup .subheading {
		font-size: 2.375rem;
	}

	.page-standard section.top p.big,
	.page-blog section.top p.big {
		font-size: 1.125rem;
		line-height: 1.4;
	}
}

.page-simple section.top hgroup.h1-below .superheading {
	margin: 0;
	font-size: 1.25rem;
	font-weight: 500;
	color: var(--colour-blue-light);
	text-transform: uppercase;
	line-height: 1.2;
	letter-spacing: 0.075em;
}

.page-simple section.top hgroup.h1-below h1 {
	max-width: 30rem;
	margin: 0.5rem 0 1rem 0;
	font-size: 3.25rem;
	font-weight: 500;
	line-height: 1.05;
	letter-spacing: -0.02em;
	text-align: left;
	color: #fff;
	text-transform: none;
}

@media (max-width: 70em) {
	.page-simple section.top hgroup.h1-below .superheading {
		font-size: 1.1875rem;
	}

	.page-simple section.top hgroup.h1-below h1 {
		font-size: 3rem;
	}
}

@media (max-width: 50em) {
	.page-simple section.top hgroup.h1-below h1 {
		margin-bottom: 0;
		max-width: 100%;
	}
}

@media (max-width: 35em) {
	.page-simple section.top hgroup.h1-below .superheading {
		font-size: 1.125rem;
	}

	.page-simple section.top hgroup.h1-below h1 {
		font-size: 2.375rem;
	}
}

.gradient-panel {
	margin: 2rem 0 0 0;
	padding: 0.75rem 0;
	border: 1px solid var(--colour-blue-light-dim);
	border-radius: 1rem;
	background: linear-gradient(
		0deg,
		color-mix(in srgb, var(--colour-bg-dark) 100%, #000 40%) 0%,
		#002247 100%
	);
}

@media (max-width: 86.5em) {
	.gradient-panel {
		margin: 2rem -0 0 0;
	}
}

.page-standard .section.wide {
	background-color: #333;
	background-repeat: no-repeat;
	background-position: 50% 50%;
	background-size: cover;
	height: 25em;
}

.page-404 .section.wide {
	background-color: #000;
	background-size: auto 110%;
}

.page-why-cognocloud .section.wide {
	background-image: url('./img/bg-why-2.jpg');
	background-position: 50% 46%;
}

.page-services .section.wide {
	background-image: url('./img/bg-services-2.jpg');
	background-position: 50% 75%;
}

.page-technologies .section.wide {
	background-image: url('./img/bg-technologies.jpg');
	background-position: 50% 60%;
}

.page-support .section.wide,
.page-contact .section.wide {
	background-image: url('./img/bg-support.jpg');
	background-position: 50% 28%;
}

.page-free-disaster-recovery-test .section.wide {
	background-image: url('./img/bg-drtest.jpg');
	background-position: 50% 100%;
}

.page-standard .section.blue-band {
	padding: 1.25em;
	background: var(--colour-blue-light);
	color: #fff;
}

.page-standard .section.blue-band p {
	margin: 0;
	font-size: 1.375em;
}

.page-standard .section.content {
	background: #fff;
}

.page-standard .section.content .limiter {
	display: flex;
	align-items: flex-start;
}

.page-standard .content-area {
	flex: 3;
	padding: 3em 1em 3em 0;
}

.page-standard .sidebar {
	flex: 2;
	padding: 6.5em 0 3em 1em;
}

.page-standard .sidebar .diagram {
	margin-bottom: 2em;
	padding: 0.125em;
	border: 1px solid var(--colour-blue-light);
	border-radius: 1px;
}

.page-standard .sidebar .diagram img {
	display: block;
	margin: 0 auto;
	width: 100%;
	max-width: 25em;
}

.page-standard .entry-title {
	color: var(--colour-blue-light);
	font-weight: 600;
	font-size: 1.875em;
	letter-spacing: -0.01em;
	margin: 0;
}

.page-standard .entry-content {
	margin: 0;
	padding-right: 1.5em;
}

.page-standard .entry-content h2 {
	color: var(--colour-blue-light);
	font-weight: 600;
	font-size: 1.375em;
	letter-spacing: -0.01em;
	margin: 1.5rem 0 0 0;
}

.page-standard .entry-content p {
	color: hsl(0, 0%, 42.5%);
	margin: 0.5rem 0 1rem 0;
}

.page-standard .entry-content .blue {
	color: var(--colour-blue-light);
}

@media (max-width: 60em) {
	.page-services .section.wide {
		background-position-x: 30%;
	}

	.page-support .section.wide,
	.page-contact .section.wide {
		background-position-x: 70%;
	}
}

@media (max-width: 45em) {
	.page-why-cognocloud .section.wide {
		background-position-x: 72%;
	}

	.page-technologies .section.wide {
		background-position-x: 40%;
	}

	.page-standard .content-area {
		padding-right: 0;
	}

	.page-standard .sidebar {
		padding-top: 0;
		padding-left: 0;
	}

	.page-standard .section.content .limiter {
		display: block;
	}

	.page-standard .section.blue-band {
		padding: 1.25em 0;
	}
	
	.page-standard .section.blue-band p {
		font-size: 1.25em;
	}
}

@media (max-width: 33.75em) {
	.page-why-cognocloud .section.wide {
		background-position-x: 65%;
	}
}

@media (max-width: 28.75em) {
	.page-support .section.wide,
	.page-contact .section.wide {
		background-position-x: 63%;
	}
}

.page-simple section.top .limiter {
	padding-bottom: 0;
}

.page-simple section.top .top-content {
	padding-bottom: 2rem;
	min-height: 23.25rem;
}

.page-simple section.top .top-image {
	bottom: 0;
}

@media (max-width: 50em) {
	.page-simple section.top .top-content {
		min-height: unset;
	}
}

/* ## VMware Refuge page ---------------------------------------------------- */

/* Top section */

.page-vmware-refuge section.top hgroup .subheading {
	max-width: 8.75em;
}

.page-vmware-refuge section.top p.big {
	max-width: 38%;
}

.page-vmware-refuge section.top .top-image {
	left: calc(30% + 4rem);
	background-image: url('./img/bg-vmr-top.jpg');
	background-position: 15% 50%;
}

.page-vmware-refuge section.top .top-image .fade-bottom {
	display: none;
}

.page-vmware-refuge section.top .top-image .overlay {
	position: absolute;
	right: 10%;
	bottom: 1.8125rem;
	z-index: 1;
}

.page-vmware-refuge section.top .top-image .overlay {
	align-items: center;
	line-height: 1.2;
}

.page-vmware-refuge section.top .top-image .overlay .icon {
	width: 3rem;
}

.page-vmware-refuge section.top .top-image .overlay .top {
	font-weight: 500;
}

.page-vmware-refuge section.top .top-image .overlay .bottom {
	font-weight: 300;
}

@media (max-width: 55em) {
	.page-vmware-refuge section.top .top-image {
		background-position: 85% 50%;
	}

	.page-vmware-refuge section.top .top-image .fade-left {
		width: 50%;
	}
}

@media (max-width: 50em) {
	.page-vmware-refuge section.top .top-image {
		left: 0;
		background-position: 45% 45%;
	}

	.page-vmware-refuge section.top .top-image .fade-top {
		height: 7.5%;
	}

	.page-vmware-refuge section.top .top-image .fade-bottom {
		display: block;
		height: 7.5%;
	}

	.page-vmware-refuge section.top .top-image .fade-left,
	.page-vmware-refuge section.top .top-image .fade-right {
		display: none;
	}

	.page-vmware-refuge section.top .top-image .overlay {
		display: none;
	}
}

/* About section */

.page-vmware-refuge section.about .icon-item {
	gap: 1rem;
}

.page-vmware-refuge section.about .icon-item .icon {
	width: 6rem;
}

.page-vmware-refuge section.about .limiter > p {
	max-width: 36em;
	margin-left: auto;
	margin-right: auto;
}

.page-vmware-refuge section.about .flex-wrap.sequence {
	margin-top: 2.5rem;
}

.page-vmware-refuge section.about .flex-wrap.sequence .fixed-width {
	max-width: 14rem;
}

@media (max-width: 70em) {
	.page-vmware-refuge section.about .flex-wrap.sequence .fixed-width {
		max-width: 13rem;
	}
}

@media (max-width: 65em) {
	.page-vmware-refuge section.about .icon-item {
		gap: 0.75rem;
	}

	.page-vmware-refuge section.about .icon-item .icon {
		width: 5rem;
	}
}

/* Panels section */

.page-vmware-refuge section.panels .panel h2 {
	margin-bottom: 0.75rem;
}

.page-vmware-refuge .panel.half.dark-gradient .flex-wrap {
	margin-top: 1.75rem;
	row-gap: 2.25rem;
}

.page-vmware-refuge section.panels .panel .divider {
	margin: 1.375rem 0 1.25rem 0;
	border-bottom: 1px solid #d9d9d9;
}

.page-vmware-refuge section.panels .panel.white {
	display: flex;
	flex-direction: column;
	justify-content: space-evenly;
}

.page-vmware-refuge section.panels .panel.white .icon-list {
	margin-top: 0;
}

.page-vmware-refuge section.panels .panel.white .icon-list li {
	font-size: 0.9375rem;
	margin-top: 0.25rem;
	background-size: 0.875rem 0.875rem;
}

.page-vmware-refuge section.panels .industries {
	row-gap: 1rem;
	margin-bottom: -0.25em;
}

.page-vmware-refuge section.panels .industries .icon-item {
	gap: 0.25rem;
	line-height: 1.15;
}

.page-vmware-refuge section.panels .industries .icon-item img {
	width: auto;
	height: 2.5rem;
}

.page-vmware-refuge section.panels .industries .label {
	font-size: 0.875rem;
}

@media (max-width: 76em) {
	.page-vmware-refuge section.panels .industries {
		justify-content: center;
	}

	.page-vmware-refuge .panel.half.dark-gradient .flex-wrap {
		row-gap: 1.5rem;
	}

	.page-vmware-refuge section.panels .industries .flex-item {
		flex-basis: calc((100% / 3) - (1.5rem / 3));
	}

	.page-vmware-refuge section.panels .industries .fixed-width {
		flex: initial;
		max-width: 8.75rem;
		margin: 0 auto;
	}
}

@media (min-width: 40.001em) and (max-width: 60em) {
	.page-vmware-refuge section.panels .panel.white .icon-list {
		columns: 2;
	}
}

@media (max-width: 60em) {
	.page-vmware-refuge section.panels .industries .flex-item {
		flex-basis: calc(25% - (2.25rem / 4));
	}
}

@media (max-width: 40em) {
	.page-vmware-refuge section.panels .industries .flex-item {
		flex-basis: calc((100% / 3) - (1.5rem / 3));
	}
}

@media (max-width: 30em) {
	.page-vmware-refuge section.panels .industries .flex-item {
		flex-basis: calc(50% - (0.75rem / 2));
	}
}

/* ## VMware Migration page ------------------------------------------------- */

/* Top section */

.page-vmware-migration section.top .top-image {
	left: 30%;
	background-image: url('./img/bg-vmm-top.jpg');
	background-position: 50% 50%;
}

.page-vmware-migration section.top .top-image .overlay {
	position: absolute;
	top: 15%;
	bottom: 15%;
	right: 5%;
	left: 35%;
	background-image: url('./img/bg-vmm-top-overlay.svg');
	background-position: 50% 50%;
	background-size: contain;
	background-repeat: no-repeat;
}

.page-vmware-migration section.top .subheading {
	max-width: 35rem;
}

.page-vmware-migration section.top .top-content p:not(.subheading) {
    max-width: 45%;
}

@media (max-width: 65em) {
	.page-vmware-migration section.top .flex-wrap.gradient-panel {
		justify-content: center;
	}

	.page-vmware-migration section.top .flex-wrap.gradient-panel .flex-item {
		flex-basis: calc(100% / 3);
		border: none;
	}
}

@media (max-width: 50em) {
	.page-vmware-migration section.top .top-image {
		left: 0;
		margin-right: 17.5%;
		padding-bottom: 50%;
	}

	.page-vmware-migration section.top .top-image .fade-top {
		display: block;
	}

	.page-vmware-migration section.top .flex-wrap.gradient-panel {
		justify-content: flex-start;
	}

	.page-vmware-migration section.top .flex-wrap.gradient-panel .flex-item {
		flex-basis: 50%;
	}
}

@media (max-width: 35em) {
	.page-vmware-migration section.top .flex-wrap.gradient-panel .flex-item {
		flex-basis: 100%;
	}
}

/* About section */

.page-vmware-migration section.about h2 {
	color: var(--colour-heading-dark);
}

.page-vmware-migration section.about .flex-wrap {
	margin-top: 2.5rem;
	max-width: 48rem;
	margin-right: auto;
	margin-left: auto;
}

.page-vmware-migration section.about .flex-wrap.with-divider .flex-item {
	border-color: rgba(54, 88, 167, 0.5);
}

.page-vmware-migration section.about .icon-item .content {
	line-height: 1.2;
}

.page-vmware-migration section.about .icon-item .content .label {
	font-weight: 500;
	color: var(--colour-heading-dark);
}

@media (max-width: 60em) {

	.page-vmware-migration section.about .flex-wrap.with-divider {
		justify-content: center;
		column-gap: 1rem;
		row-gap: 1.5rem;
	}

	.page-vmware-migration section.about .flex-wrap.with-divider .flex-item {
		flex: initial;
		padding: 0;
	}

	.page-vmware-migration section.about .flex-wrap.with-divider .fixed-width {
		max-width: 9rem;
		margin: 0 auto;
	}
}

@media (max-width: 30em) {
	.page-vmware-migration section.about .icon-item .icon {
		width: 3rem;
	}
}

/* Process section */

.page-vmware-migration .flex-wrap.sequence {
	margin: 2rem 0 0.5rem 0;
}

.page-vmware-migration .flex-wrap.sequence .fixed-width {
	max-width: 8.75rem;
}

.page-vmware-migration .flex-wrap.sequence .icon-item .icon {
	width: 4rem;
}

.page-vmware-migration .flex-wrap.sequence .flex-item::after {
	top: 1.625rem;
}

.page-vmware-migration .flex-wrap.sequence .icon-item .content p {
	font-size: 0.875rem;
}

@media (max-width: 86em) {
	.page-vmware-migration .flex-wrap.sequence {
		max-width: 70rem;
		margin-left: auto;
		margin-right: auto;
	}

	.page-vmware-migration .flex-wrap.sequence .flex-item {
		flex: initial;
	}

	.page-vmware-migration .flex-wrap.sequence .fixed-width {
		max-width: 12rem;
	}

	.page-vmware-migration .flex-wrap.sequence .flex-item::after {
		display: none;
	}
}

@media (max-width: 60em) {
	.page-vmware-migration .flex-wrap.sequence .fixed-width {
		max-width: 8.75rem;
	}
}

@media (max-width: 24.5em) {
	.page-vmware-migration .flex-wrap.sequence .fixed-width {
		max-width: 16rem;
	}
}

/* Panels section */

.page-vmware-migration section.panels .panel.white {
	background-image: url('./img/bg-cogno-icon.svg');
	background-size: 25% auto;
	background-repeat: no-repeat;
	background-position: calc(100% - 2rem) calc(100% - 1.5rem);
}

@media (min-width: 60.001em) and (max-width: 75em) {
	.page-vmware-migration section.panels .panel.white {
		background-size: 10rem auto;
		background-position: 50% calc(100% - 1.5rem);
	}
}

@media (max-width: 60em) {
	.page-vmware-migration section.panels .panel.white {
		background-size: auto 75%;
		background-position: 90% 55%;
	}
}

@media (max-width: 42em) {
	.page-vmware-migration section.panels .panel.white {
		background-size: 5rem auto;
		background-position: calc(100% - 1.5rem) 1.5rem;
	}
}

@media (max-width: 32em) {
	.page-vmware-migration section.panels .panel.white {
		background-image: none;
	}
}

/* Results section */

.page-vmware-migration section.results .panel {
	padding-top: 1.5rem;
	padding-bottom: 1.5rem;
	width: 100%;
	display: flex;
	align-items: center;
	gap: 1rem;
}

.page-vmware-migration section.results .left {
	flex: 4;
	padding-left: 0.75rem;
}

.page-vmware-migration section.results .left h2 {
	margin-bottom: 0.75rem;
	line-height: 1.15;
}

.page-vmware-migration section.results .left p {
	margin: 0.75rem 0 0 0;
}

.page-vmware-migration section.results .left .quote {
	font-size: 1.125rem;
	font-weight: 500;
	line-height: 1.3;
	color: var(--colour-blue-medium);
}

.page-vmware-migration section.results .left .attribution {
	line-height: 1.3;
}

.page-vmware-migration section.results .right {
	flex: 5;
}

.page-vmware-migration section.results .right .stats .content {
	line-height: 1.15;
}

.page-vmware-migration section.results .right .stats .flex-item {
	border-color: color-mix(in srgb, var(--colour-blue-medium), transparent 50%);
}

.page-vmware-migration section.results .right .stats .fixed-width {
	max-width: 8rem;
	margin: 0 auto;
	gap: 0.5rem;
}

.page-vmware-migration section.results .right .stats .stat {
	display: block;
	font-size: 1.625rem;
	font-weight: 600;
	line-height: 1.15;
}

.page-vmware-migration section.results .right .stats .label {
	font-size: 0.875rem;
}

@media (max-width: 70em) {
	.page-vmware-migration section.results .panel {
		flex-direction: column;
		gap: 1.5rem;
	}

	.page-vmware-migration section.results .left {
		flex: initial;
		width: 100%;
		text-align: center;
	}

	.page-vmware-migration section.results .left .quote {
		margin-right: auto;
		margin-left: auto;
		max-width: 44em;
	}

	.page-vmware-migration section.results .right {
		flex: initial;
		width: 100%;
	}
}

@media (max-width: 40em) {
	.page-vmware-migration section.results .right .stats {
		justify-content: center;
		column-gap: 0.75rem;
		row-gap: 1.5rem;
	}

	.page-vmware-migration section.results .right .stats .stat {
		font-size: 1.375rem;
	}

	.page-vmware-migration section.results .right .stats .flex-item {
		flex: initial;
		padding: 0;
		width: 8rem;
	}
}

@media (min-width: 60.001em) {
	.vmm-action-h2 {
		max-width: 24rem;
	}
}

/* ## IaaS page ------------------------------------------------------------- */

/* Top section */

.page-iaas section.top .top-image {
	background-image: url('./img/bg-iaas-top.jpg');
	left: 15rem;
	background-position: 80% 22.5%;
}

.page-iaas section.top .top-image .fade-top {
	height: 5%;
}

.page-iaas section.top .top-image .fade-bottom {
	display: none;
}

.page-iaas section.top .top-content p:not(.subheading) {
    max-width: 46%;
}

.page-iaas section.top hgroup .subheading {
	max-width: 36rem;
}

@media (max-width: 70em) {
	.page-iaas section.top hgroup .subheading {
		max-width: 34rem;
	}
}

@media (max-width: 50em) {
	.page-iaas section.top .top-image {
		left: -14%;
		background-position: 100% 10%;
		background-size: auto 155%;
	}

	.page-iaas section.top .top-image .fade-bottom {
		display: block;
		height: 12.5%;
	}
}

/* About section */

.page-iaas section.about .flex-wrap.with-divider {
	margin-top: 2.5rem;
	justify-content: center;
}

.page-iaas section.about .flex-wrap.with-divider .flex-item {
	border-color: rgba(54, 88, 167, 0.5);
}

.page-iaas section.about .flex-wrap.with-divider .fixed-width {
	max-width: 9rem;
	margin: 0 auto;
}

.page-iaas section.about .flex-wrap.with-divider .flex-item p {
	font-size: 0.875rem;
}

@media (max-width: 60em) {
	.page-iaas section.about .flex-wrap.with-divider {
		max-width: 45rem;
		margin-left: auto;
		margin-right: auto;
		column-gap: 1rem;
		row-gap: 1.5rem;
	}

	.page-iaas section.about .flex-wrap.with-divider .flex-item {
		flex: initial;
		padding: 0;
	}
}

/* Organizations section */

.page-iaas section.organizations .flex-wrap {
	margin-top: 2.5rem;
}

.page-iaas section.organizations .flex-wrap .flex-item {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	background-size: 25% auto;
	background-repeat: no-repeat;
	background-position: calc(100% - 1rem) calc(100% - 1rem);
}

.page-iaas section.organizations .flex-wrap .flex-item.smb {
	background-image: url('./img/icon-iaas-orgs-smb.svg');
}

.page-iaas section.organizations .flex-wrap .flex-item.mid {
	background-image: url('./img/icon-iaas-orgs-mid.svg');
}

.page-iaas section.organizations .flex-wrap .flex-item.enterprise {
	background-image: url('./img/icon-iaas-orgs-enterprise.svg');
}

.page-iaas section.organizations .flex-wrap .flex-item.remote {
	background-image: url('./img/icon-iaas-orgs-remote.svg');
}

@media (max-width: 70em) {
	.page-iaas section.organizations .flex-wrap .flex-item {
		background-size: auto 45%;
	}
}

@media (max-width: 50em) {
	.page-iaas section.organizations .flex-wrap .flex-item {
		background-size: auto 30%;
	}
}

@media (max-width: 40em) {
	.page-iaas section.organizations .flex-wrap .flex-item {
		background-size: auto 40%;
	}
}

@media (max-width: 25em) {
	.page-iaas section.organizations .flex-wrap .flex-item {
		background-size: auto 30%;
	}
}

.page-iaas section.organizations .panel h3 {
	margin-bottom: 0;
}

.page-iaas section.organizations .panel p {
	margin: 0.5rem 0 0 0;
	line-height: 1.4;
}

.page-iaas section.organizations .panel .icon-list {
	margin-top: 1.25rem;
}

.page-iaas section.organizations .panel .icon-list li {
	margin-top: 0.75rem;
}

@media (max-width: 70em) {
	.page-iaas section.organizations .flex-wrap.has-panels .flex-item {
		flex-basis: calc(50% - (0.75rem / 2));
	}
}

@media (max-width: 40em) {
	.page-iaas section.organizations .flex-wrap.has-panels .flex-item {
		flex-basis: 100%;
	}
}

/* Panels section */

.page-iaas section.panels .panel.dark-gradient {
	flex: 3;
}

.page-iaas section.panels .panel.dark-gradient .flex-wrap {
	gap: 0;
}

.page-iaas section.panels .panel.dark-gradient .flex-wrap .flex-item {
	position: relative;
}

.page-iaas section.panels .panel.dark-gradient .flex-wrap .flex-item:nth-child(even) {
	margin-top: 6.5rem;
}

.page-iaas section.panels .panel.dark-gradient .flex-wrap .flex-item::after {
	position: absolute;
	content: '';
	top: 1.625rem;
	right: -1.625rem;
	width: 3.25rem;
	height: 6.5rem;
	background-repeat: no-repeat;
	background-position: 50% 50%;
	background-size: contain;
}

.page-iaas section.panels .panel.dark-gradient .flex-wrap .flex-item:nth-child(odd)::after {
	right: -1.875rem;
	background-image: url('./img/arrow-curve-down.svg');
}

.page-iaas section.panels .panel.dark-gradient .flex-wrap .flex-item:nth-child(even)::after {
	top: -4.875rem;
	right: -1.375rem;
	background-image: url('./img/arrow-curve-up.svg');
}

.page-iaas section.panels .panel.dark-gradient .flex-wrap .flex-item:last-child::after {
	background-image: none;
}

.page-iaas section.panels .panel.dark-gradient .flex-wrap .icon-item {
	gap: 0.5rem;
}

.page-iaas section.panels .panel.dark-gradient .flex-wrap .icon-item .icon {
	width: 3rem;
}

.page-iaas section.panels .panel.dark-gradient .flex-wrap .icon-item .content p {
	font-size: 0.875rem;
	font-weight: 300;
}

.page-iaas section.panels .panel.white {
	flex: 2;
}

.page-iaas section.panels .panel.white h2 {
	max-width: 14em;
}

@media (max-width: 65em) {
	.page-iaas section.panels .panel.dark-gradient .flex-wrap {
		column-gap: 0.5rem;
		row-gap: 1.5rem;
		justify-content: center;
	}

	.page-iaas section.panels .panel.dark-gradient .flex-wrap .flex-item {
		flex: initial;
		flex-basis: calc((100% / 3) - (1rem / 3));
	}

	.page-iaas section.panels .panel.dark-gradient .flex-wrap .flex-item:nth-child(even) {
		margin-top: 0;
	}

	.page-iaas section.panels .panel.dark-gradient .flex-wrap .flex-item::after {
		display: none;
	}
}

@media (max-width: 40em) {
	.page-iaas section.panels .panel.dark-gradient .flex-wrap .flex-item {
		flex-basis: calc(50% - 0.25rem);
	}
}

@media (max-width: 25em) {
	.page-iaas section.panels .panel.dark-gradient .flex-wrap .flex-item {
		flex-basis: 100%;
	}

	.page-iaas section.panels .panel.dark-gradient .flex-wrap .icon-item {
		flex-direction: row;
		align-items: flex-start;
	}

	.page-iaas section.panels .panel.dark-gradient .flex-wrap .icon-item .content {
		text-align: left;
	}
}

/* ## DRaaS page ------------------------------------------------------------ */

/* Top section */

.page-draas section.top .top-image {
	background-image: url('./img/bg-draas-top.jpg');
	left: 25%;
	background-position: 60% 30%;
}

.page-draas section.top .top-image .fade-top {
	height: 10%;
}

.page-draas section.top .top-image .fade-bottom {
	display: none;
}

@media (max-width: 50em) {
	.page-draas section.top .top-image {
		left: -3%;
		background-position: 100% 15%;
		background-size: auto 160%;
	}

	.page-draas section.top .top-image .fade-bottom {
		display: block;
		height: 7.5%;
	}
}

.page-draas section.top hgroup .subheading {
	max-width: 40rem;
}

.page-draas section.top hgroup .subheading .accent {
	display: block;
}

.page-draas section.top .top-content p:not(.subheading) {
    max-width: 44%;
}

.page-draas section.top .flex-wrap.gradient-panel .icon-item {
	gap: 0.5rem;
}

.page-draas section.top .flex-wrap.gradient-panel .icon-item .content h3 {
	font-size: 0.9375rem;
}

.page-draas section.top .flex-wrap.gradient-panel .icon-item .content p {
	font-size: 0.875rem;
	font-weight: 300;
}

@media (max-width: 70em) {
	.page-draas section.top hgroup .subheading {
		max-width: 29rem;
	}

	.page-draas section.top hgroup .subheading .accent {
		display: inline;
	}
}

@media (max-width: 60em) {
	.page-draas section.top .flex-wrap.gradient-panel {
		justify-content: center;
	}

	.page-draas section.top .flex-wrap.gradient-panel .flex-item {
		flex-basis: calc(100% / 3);
		border: none;
	}
}

@media (max-width: 35em) {
	.page-draas section.top .flex-wrap.gradient-panel .flex-item {
		flex-basis: 50%;
	}

	.page-draas section.top .flex-wrap.gradient-panel .icon-item {
		flex-direction: row;
		align-items: flex-start;
		gap: 0.75rem;
	}

	.page-draas section.top .flex-wrap.gradient-panel .icon-item .content {
		text-align: left;
	}
}

@media (max-width: 30em) {
	.page-draas section.top .flex-wrap.gradient-panel .flex-item {
		flex-basis: 100%;
	}
}

/* How section */

.page-draas section.how .flex-wrap.sequence {
	margin: 2rem 0 0.5rem 0;
}

.page-draas section.how .icon-item {
	gap: 1rem;
}

.page-draas section.how .icon-item .icon {
	width: 6rem;
}

@media (max-width: 65em) {
	.page-draas section.how .icon-item {
		gap: 0.75rem;
	}

	.page-draas section.how .icon-item .icon {
		width: 5rem;
	}
}

/* ## VDI page -------------------------------------------------------------- */

/* Top section */

.page-vdi section.top .top-image {
	left: 35%;
	background-image: url('./img/bg-vdi-top.jpg');
	background-position: 25% 50%;
}

.page-vdi section.top .top-image .fade-top {
	height: 5%;
}

.page-vdi section.top .top-image .fade-left {
	width: 40%;
}

.page-vdi section.top .top-image .fade-bottom {
	display: none;
}

@media (max-width: 50em) {
	.page-vdi section.top .top-image {
		left: 0;
		background-position: 50% 15%;
	}

	.page-vdi section.top .top-image .fade-top {
		height: 2.5%;
	}

	.page-vdi section.top .top-image .fade-bottom {
		display: block;
		height: 12.5%;
	}

	.page-vdi section.top .top-image .fade-left,
	.page-vdi section.top .top-image .fade-right {
		display: none;
	}
}

.page-vdi section.top hgroup .subheading {
	max-width: 37rem;
}

.page-vdi section.top .top-content p:not(.subheading) {
	max-width: 45%;
}

@media (max-width: 70em) {
	.page-vdi section.top .top-content p:not(.subheading) {
		max-width: 31rem !important;
	}
}

@media (max-width: 50em) {
	.page-vdi section.top .top-content p:not(.subheading) {
		max-width: 100% !important;
	}
}

.page-vdi section.top .flex-wrap.small {
	max-width: 35rem;
	gap: 0.5rem;
}

.page-vdi section.top .flex-wrap.small .flex-item {
	flex: initial;
}

.page-vdi section.top .flex-wrap.small .flex-item:nth-child(1) {
	width: 6.5rem;
}

.page-vdi section.top .flex-wrap.small .flex-item:nth-child(2) {
	width: 7.125rem;
}

.page-vdi section.top .flex-wrap.small .flex-item:nth-child(3) {
	width: 5.5rem;
}

.page-vdi section.top .flex-wrap.small .flex-item:nth-child(4) {
	width: 7rem;
}

.page-vdi section.top .flex-wrap.small .flex-item {
	flex: 1;
}

.page-vdi section.top .flex-wrap.small .icon-item {
	align-items: flex-start;
	gap: 0.5rem;
}

.page-vdi section.top .flex-wrap.small .icon-item .icon {
	width: 2.75rem;
}

.page-vdi section.top .flex-wrap.small .icon-item .content {
	text-align: left;
}

.page-vdi section.top .flex-wrap.small .icon-item .content h3 {
	font-size: 0.8125rem;
}

.page-vdi section.top .flex-wrap.small .icon-item .content p {
	margin-top: 0.375rem;
	max-width: 100%;
	font-size: 0.8125rem;
	font-weight: 300;
}

.page-vdi section.top .flex-wrap.gradient-panel .flex-item {
	flex-basis: 14.5%;
}

.page-vdi section.top .flex-wrap.gradient-panel .flex-item.wide {
	flex-basis: 42%;
	display: flex;
	align-items: center;
}

.page-vdi section.top .flex-wrap.gradient-panel .flex-item.wide .icon-item {
	gap: 1rem;
}

.page-vdi section.top .flex-wrap.gradient-panel .flex-item .icon-item.vertical {
	gap: 0.5rem;
}

.page-vdi section.top .flex-wrap.gradient-panel .flex-item.wide .icon {
	padding: 0.5rem 0 0.5rem 0.75rem;
	width: 5.75rem;
}

.page-vdi section.top .flex-wrap.gradient-panel .flex-item.wide .content h3 {
	font-size: 1.25rem;
}

.page-vdi section.top .flex-wrap.gradient-panel .flex-item.wide .content p {
	max-width: 100%;
	font-size: 0.9375rem;
	font-weight: 400;
}

.page-vdi section.top .flex-wrap.gradient-panel .flex-item:not(.wide) .content p {
	font-size: 0.875rem;
	font-weight: 300;
}

@media (max-width: 60em) {
	.page-vdi section.top .flex-wrap.gradient-panel .flex-item {
		flex-basis: 25%;
	}

	.page-vdi section.top .flex-wrap.gradient-panel .flex-item.wide {
		flex-basis: 100%;
	}

	.page-vdi section.top .flex-wrap.gradient-panel .flex-item.wide .icon-item {
		padding-bottom: 1.25rem;
		border-bottom: 1px solid var(--colour-blue-light-dim);
	}

	.page-vdi section.top .flex-wrap.gradient-panel .flex-item.wide .icon {
		width: 4rem;
	}
}

@media (max-width: 40em) {
	.page-vdi section.top .flex-wrap.gradient-panel {
		padding: 1.25rem 0.75rem;
		column-gap: 0.75rem;
		row-gap: 1.25rem;
	}

	.page-vdi section.top .flex-wrap.gradient-panel .flex-item {
		padding: 0;
	}

	.page-vdi section.top .flex-wrap.gradient-panel .flex-item:not(.wide) {
		flex-basis: calc(50% - (0.75rem / 2));
	}

	.page-vdi section.top .flex-wrap.gradient-panel .flex-item:not(.wide) .icon-item {
		flex-direction: row;
	}

	.page-vdi section.top .flex-wrap.gradient-panel .flex-item:not(.wide) .icon-item .icon {
		width: 3rem;
	}

	.page-vdi section.top .flex-wrap.gradient-panel .flex-item:not(.wide) .content {
		text-align: left;
	}
}

@media (max-width: 30em) {
	.page-vdi section.top .flex-wrap.gradient-panel .flex-item:not(.wide) {
		flex-basis: 100%;
	}

	.page-vdi section.top .flex-wrap.gradient-panel .flex-item:not(.wide) .icon-item {
		flex-direction: row;
	}

	.page-vdi section.top .flex-wrap.gradient-panel .flex-item:not(.wide) .content {
		text-align: left;
	}
}

/* About section */

.page-vdi section.about .flex-wrap {
	margin-top: 2.5rem;
	justify-content: center;
}

.page-vdi section.about .flex-wrap .flex-item.card {
	padding: 1rem 0.75rem;
	background: #fff;
}

@media (max-width: 60em) {
	.page-vdi section.about .flex-wrap .flex-item {
		flex: initial;
		flex-basis: calc(25% - (2.25rem / 4));
	}

	.page-vdi section.about .flex-wrap .flex-item .icon-item .icon {
		width: 3rem;
	}
}

@media (max-width: 50em) {
	.page-vdi section.about .flex-wrap .flex-item {
		flex-basis: calc((100% / 3) - (1.5rem / 3));
	}
}

@media (max-width: 35em) {
	.page-vdi section.about .flex-wrap .flex-item {
		flex-basis: calc(50% - (0.75rem / 2));
	}
}

@media (max-width: 25em) {
	.page-vdi section.about .flex-wrap .flex-item {
		flex-basis: 100%;
		max-width: 16rem;
	}
}

/* Panels section */

.page-vdi section.panels .panel {
	padding-right: 1.75rem;
	padding-left: 1.75rem;
}

.page-vdi section.panels .panel.white {
	flex: 3;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
}

.page-vdi section.panels .panel.dark-gradient {
	flex: 2;
}

.page-vdi section.panels .panel.dark-gradient .flex-wrap {
	row-gap: 1.75rem;
}

.page-vdi section.panels .panel.dark-gradient .flex-wrap.stacked .flex-item {
	flex-basis: 100%;
}

.page-vdi section.panels .panel.dark-gradient .icon-item .icon {
	width: 3rem;
}

.vdi-graphic {
	display: flex;
	align-items: stretch;
	width: 100%;
	padding-top: 2rem;
}

.vdi-graphic .vdi-segment {
	display: flex;
	flex-direction: column;
	position: relative;
	flex: initial;
}

.vdi-graphic .vdi-segment h3 {
	position: absolute;
	top: -1.75rem;
	left: 0;
	right: 0;
	text-align: center;
	font-size: 0.875rem;
	font-weight: 500;
}

.vdi-graphic .vdi-segment.first {
	width: 5.625rem;
}

.vdi-graphic .vdi-segment.middle {
	width: 12.75rem;
}

.vdi-graphic .vdi-segment.last {
	width: 11.25rem;
}

.vdi-graphic .vdi-segment.cloud {
	display: flex;
	justify-content: center;
}

.vdi-graphic .vdi-segment.arrows {
	flex: 1;
	display: flex;
	justify-content: center;
	padding: 0 2.5px;
}

.vdi-graphic .connecting-arrows {
	position: relative;
	border-top: 1.5px dotted var(--colour-blue-flat);
}

.vdi-graphic .connecting-arrows::before {
	content: '';
	width: 0; 
	height: 0; 
	border-top: 3px solid transparent;
	border-bottom: 3px solid transparent;
	border-right: 4.5px solid var(--colour-blue-flat);
	position: absolute;
	left: -1.5px;
	top: -3px;
}

.vdi-graphic .connecting-arrows::after {
	content: '';
	width: 0; 
	height: 0; 
	border-top: 3px solid transparent;
	border-bottom: 3px solid transparent;
	border-left: 4.5px solid var(--colour-blue-flat);
	position: absolute;
	right: -1.5px;
	top: -3px;
}

.vdi-graphic .vdi-segment.middle h3 {
	color: var(--colour-blue-flat);
}

.vdi-graphic .group {
	display: flex;
	flex-direction: column;
	align-items: stretch;
	flex: 1;
	margin: 0;
	padding: 0.75rem;
	list-style-type: none;
	border: 1.5px dotted var(--colour-blue-flat);
	border-radius: 1rem;
	gap: 0.75rem;
}

.vdi-graphic .group-item {
	flex: 1;
	margin: 0;
	padding: 0;
	display: flex;
	align-items: center;
	gap: 0.5rem;
	line-height: 1.2;
}

.vdi-graphic .group-item .icon {
	width: 2.5rem;
}

.vdi-graphic .group-item .label {
	font-size: 0.8125rem;
}

.vdi-graphic .vdi-segment.first .group {
	padding-left: 0.5rem;
	padding-right: 0.5rem;
}

.vdi-graphic .vdi-segment.first .group-item {
	flex-direction: column;
	justify-content: center;
	gap: 0.125rem;
}

.vdi-graphic .vdi-segment.first .icon {
	width: 2.25rem;
}

.vdi-graphic .vdi-segment.first .label {
	text-align: center;
}

.vdi-graphic .vdi-segment.cloud .icon {
	width: 5rem;
}

.vdi-graphic .vdi-segment.middle .group {
	padding: 0.25rem 0.75rem;
	gap: 0;
}

.vdi-graphic .vdi-segment.middle .group-item {
	padding: 0.5rem 0;
}

.vdi-graphic .vdi-segment.middle .group-item {
	border-bottom: 1.5px dotted var(--colour-blue-flat);
}

.vdi-graphic .vdi-segment.middle .group-item:last-child {
	border-bottom: none;
}

.page-vdi section.panels .panel.white .flex-wrap {
	margin: 1.5rem 0 0 0;
	gap: 0.375rem;
	justify-content: space-between;
}

.page-vdi section.panels .panel.white .flex-wrap .flex-item {
	flex: initial;
}

.page-vdi section.panels .panel.white .flex-wrap .divider {
	flex: initial;
	border-right: 1px solid var(--colour-blue-flat);
}

.page-vdi section.panels .panel.white .icon-item {
	padding: 0.25rem 0;
	align-items: center;
	gap: 0.375rem;
}

.page-vdi section.panels .panel.white .icon-item .icon {
	width: 2.25rem;
}

.page-vdi section.panels .panel.white .icon-item .content {
	font-size: 0.8125rem;
	font-weight: 500;
	line-height: 1.2;
	color: var(--colour-blue-flat);
}

@media (min-width: 60.001em) and (max-width: 65em) {
	.page-vdi section.panels .panel.white .group-item .icon {
		width: 2rem;
	}

	.page-vdi section.panels .panel.dark-gradient .flex-wrap {
		gap: 0.5rem;
	}

	.page-vdi section.panels .panel.dark-gradient .icon {
		width: 2.5rem;
	}
}

@media (min-width: 60.001em) and (max-width: 75em) {
	.page-vdi section.panels .panel.white {
		min-width: 40rem;
	}

	.vdi-graphic {
		flex: 1;
	}
}

@media (min-width: 40.001em) and (max-width: 60em) {
	.page-vdi section.panels .panel.dark-gradient .flex-wrap.stacked .flex-item {
		flex: initial;
		flex-basis: calc(50% - (0.75rem / 2));
	}
}

@media (max-width: 60em) {
	.page-vdi section.panels .panel.dark-gradient .flex-wrap {
		row-gap: 1rem;
	}
}

@media (max-width: 45em) {
	.vdi-graphic .vdi-segment.middle .group,
	.vdi-graphic .vdi-segment.last .group {
		padding-left: 0.5rem;
		padding-right: 0.5rem;
	}

	.vdi-graphic .vdi-segment .group-item {
		flex-direction: column;
	}

	.vdi-graphic .vdi-segment.first {
		width: 5.625rem;
	}

	.vdi-graphic .vdi-segment.middle {
		width: 6rem;
	}

	.vdi-graphic .vdi-segment.last {
		width: 6rem;
	}

	.vdi-graphic .vdi-segment .group-item .label {
		text-align: center;
	}
}

@media (max-width: 45em) {
	.vdi-graphic {
		flex-direction: column;
	}

	.vdi-graphic .vdi-segment h3 {
		width: auto;
		right: unset;
		text-align: left;
		top: -1.375rem;
		left: 1rem;
		padding: 0.125rem;
		line-height: 1.1;
		background: #fff;
	}

	.vdi-graphic .vdi-segment.first .group,
	.vdi-graphic .vdi-segment.middle .group,
	.vdi-graphic .vdi-segment.last .group {
		flex-direction: row;
	}

	.vdi-graphic .vdi-segment.first,
	.vdi-graphic .vdi-segment.middle,
	.vdi-graphic .vdi-segment.last {
		width: 100%;
	}

	.vdi-graphic .vdi-segment.arrows {
		flex: initial;
		width: 100%;
		align-items: center;
		padding: 0;
		padding-top: 3px;
		padding-bottom: 3px;
	}

	.vdi-graphic .vdi-segment.cloud {
		flex: initial;
		width: 100%;
		align-items: center;
	}

	.vdi-graphic .vdi-segment.middle .group-item {
		border: none;
	}

	.vdi-graphic .vdi-segment .group-item .label {
		text-align: center;
	}

	.vdi-graphic .connecting-arrows {
		position: relative;
		border: none;
		border-left: 1.5px dotted var(--colour-blue-flat);
		height: 1.25rem;
	}

	.vdi-graphic .vdi-segment.arrows.last .connecting-arrows {
		height: 3rem;
	}

	.vdi-graphic .connecting-arrows::before {
		content: '';
		width: 0;
		height: 0;
		border-left: 3px solid transparent;
		border-right: 3px solid transparent;
		border-bottom: 4.5px solid var(--colour-blue-flat);
		position: absolute;
		top: -3px;
		left: -3px;
		right: unset;
		bottom: unset;
	}

	.vdi-graphic .connecting-arrows::after {
		content: '';
		width: 0;
		height: 0;
		border-left: 3px solid transparent;
		border-right: 3px solid transparent;
		border-top: 4.5px solid var(--colour-blue-flat);
		position: absolute;
		top: unset;
		right: unset;
		bottom: -3px;
		left: -3px;
	}

	.page-vdi section.panels .panel.white .flex-wrap {
		max-width: 22rem;
		margin: 1.5rem auto 0 auto;
		gap: 0.375rem;
		row-gap: 0.5rem;
		justify-content: space-around;
	}

	.page-vdi section.panels .panel.white .flex-wrap .flex-item {
		flex-basis: calc(50% - 0.375rem / 2);
	}

	.page-vdi section.panels .panel.white .flex-wrap .divider {
		display: none;
	}
}

@media (max-width: 31.5em) {
	.vdi-graphic .vdi-segment.middle h3 {
		top: -2.375rem;
	}

	.vdi-graphic .vdi-segment.middle h3 .break {
		display: block;
	}
}

@media (min-width: 27.501em) {
	.page-vdi section.panels .panel.white .icon-item .break {
		display: block;
	}
}

@media (max-width: 27.5em) {
	.vdi-graphic .vdi-segment.last h3 {
		top: -2.375rem;
	}

	.vdi-graphic .vdi-segment.last h3 .break {
		display: block;
	}

	.vdi-graphic .vdi-segment .group {
		flex-wrap: wrap;
	}

	.vdi-graphic .vdi-segment .group-item {
		flex: initial;
		flex-basis: calc(50% - 0.75rem / 2);
	}

	.page-vdi section.panels .panel.white .flex-wrap .flex-item {
		flex-basis: 100%;
	}

	.page-vdi section.panels .panel.white .icon-item {
		padding: 0;
	}
}

/* Why section */

.page-vdi section.why .why-panel {
	display: flex;
	align-items: flex-start;
	gap: 2.5rem;
	background-image: url('./img/bg-cogno-vdi.svg');
	background-size: auto calc(100% - 2rem);
	background-repeat: no-repeat;
	background-position: calc(100% - 1.5rem) 50%;
}

.page-vdi section.why .why-panel {
	display: flex;
	align-items: flex-start;
	gap: 2.5rem;
}

.page-vdi section.why .why-panel .left {
	flex: 2;
}

.page-vdi section.why .why-panel .left h2 {
	margin: 0;
	font-size: 1.375rem;
}

.page-vdi section.why .why-panel .left p {
	margin: 0.75rem 0 0 0;
	font-weight: 500;
	line-height: 1.3;
	color: var(--colour-blue-medium);
}

.page-vdi section.why .why-panel .right {
	flex: 5;
}

.page-vdi section.why .why-panel .columns {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 1.5rem;
	width: 100%;
	max-width: 40rem;
}

.page-vdi section.why .why-panel .right .columns {
	max-width: 75%;
}

.page-vdi section.why .why-panel .right li {
	margin-top: 0.75rem;
	font-size: 0.9375rem;
}

.page-vdi section.why .why-panel .right li:first-child {
	margin-top: 0;
}

@media (max-width: 70em) {
	.page-vdi section.why .why-panel {
		background-size: 9rem auto;
	}
}

@media (max-width: 60em) {
	.page-vdi section.why .why-panel .left {
		flex: 1;
	}

	.page-vdi section.why .why-panel .right {
		flex: 1;
	}

	.page-vdi section.why .why-panel .columns {
		display: block;
	}

	.page-vdi section.why .why-panel .right .columns {
		max-width: 100%;
	}

	.page-vdi section.why .why-panel .columns ul:last-child {
		margin-top: 0.75rem;
	}

	.page-vdi section.why .why-panel {
		background-position: calc(25% - 2rem) calc(100% - 1.75rem);
		background-size: 8rem auto;
	}
}

@media (max-width: 40em) {
	.page-vdi section.why .why-panel {
		flex-direction: column;
		gap: 1.5rem;
	}

	.page-vdi section.why .why-panel {
		background-position: calc(100% - 1.5rem) 75%;
		background-size: 8rem auto;
	}
}

@media (max-width: 35em) {
	.page-vdi section.why .why-panel {
		background-image: none;
	}
}

/* ## Technologies page ----------------------------------------------------- */

.page-technologies .content-area {
	padding-right: 0;
}

.page-technologies .entry-content {
	max-width: 70rem;
	margin: 0 auto;
	padding: 0;
}

.page-technologies section.top .top-image {
	background-image: url('./img/bg-top-technologies.jpg');
	background-position: 50% 50%;
	background-size: cover;
}

.page-technologies section.top .top-image .fade-top {
	display: none;
}

.page-technologies section.top .top-image .fade-bottom {
	display: none;
}

@media (max-width: 50em) {
	.page-technologies section.top .top-image {
		background-position: 50% 60%;
		background-size: 150% auto;
	}

	.page-technologies section.top .top-image .fade-bottom {
		display: block;
		height: 15%;
	}

	.page-technologies section.top .top-image .fade-left {
		display: none;
	}

	.page-technologies section.top .top-image .fade-right {
		display: none;
	}
}

.page-technologies .grid {
	display: flex;
	flex-flow: row wrap;
	margin: 0 -1.75%;
}

.page-technologies .tile-wrapper {
	flex: 0 0 25%;
	max-width: 25%;
	min-height: 17em;
	padding: 1.75%;
}

.page-technologies .tile {
	height: 100%;
	padding: 1.5em 1em;
	border: 1px solid var(--colour-blue-light);
	border-radius: 1px;
	text-align: center;
}

.page-technologies .tile .logo {
	margin: 0 auto 1em auto;
	max-width: 11.625em;
	height: 3.875em;
	display: flex;
	align-items: center;
	justify-content: center;
}

.page-technologies .tile .logo img {
	display: block;
	max-width: 100%;
	max-height: 100%;
}

.page-technologies .tile .description {
	font-size: 0.8125em;
	line-height: 1.3;
}

.page-technologies .testimonials .testimonial {
	flex: 2;
	margin-top: 0.75em;
}

.page-technologies .testimonials .testimonial.wide {
	flex: 3;
}

@media (max-width: 67.5em) {
	.page-technologies .grid {
		margin: 0 -0.5em;
	}

	.page-technologies .tile-wrapper {
		padding: 0.5em;
		min-height: auto;
		max-width: 17em;
	}
}

@media (max-width: 55em) {
	.page-technologies .grid {
		justify-content: center;
	}

	.page-technologies .tile-wrapper {
		flex: 0 0 calc(100%/3);
		max-width: 17em;
	}
}

@media (max-width: 42em) {
	.page-technologies .tile-wrapper {
		flex: 0 0 50%;
	}
}

@media (max-width: 28.75em) {
	.page-technologies .tile-wrapper {
		flex: 0 0 100%;
	}
}

/* ## Support page ---------------------------------------------------------- */

.page-support section.top .top-image {
	background-image: url('./img/bg-top-support.jpg');
	background-position: 75% 50%;
	background-size: cover;
}

.page-support section.top .top-image .fade-top {
	display: none;
}

.page-support section.top .top-image .fade-bottom {
	display: none;
}

.page-support section.top .top-image .fade-right {
	width: 20%;
}

@media (max-width: 50em) {
	.page-support section.top .top-image {
		background-position: 50% 50%;
		background-size: 120% auto;
	}

	.page-support section.top .top-image .fade-bottom {
		display: block;
		height: 15%;
	}

	.page-support section.top .top-image .fade-left {
		display: none;
	}

	.page-support section.top .top-image .fade-right {
		display: none;
	}
}

.page-support .limiter .container {
	background: #fff;
	max-width: 75rem;
	margin: 2.5rem auto 0 auto;
	padding: 1rem 3rem;
	display: flex;
	align-items: center;
	gap: 3rem;
}

.page-support .limiter .container .content-area {
	margin: 0;
	padding: 0;
}

.page-support .limiter .container .entry-content {
	margin: 0;
	padding: 0;
}

.page-support .limiter .container .sidebar {
	margin: 0;
	padding: 0;
}

@media (max-width: 60em) {
	.page-support .limiter .container {
		padding: 0.5rem 1.5rem 1.5rem 1.5rem;
		flex-direction: column;
		gap: 1rem;
	}
}

@media (max-width: 30em) {
	.page-support .limiter .container {
		margin-top: 2.5rem;
		padding: 0 1rem 1.25rem 1rem;
		gap: 1rem;
	}
}

/* ## Contact page ---------------------------------------------------------- */

.page-contact section.top .top-image {
	background-image: url('./img/bg-mail.jpg');
	background-position: 75% 57%;
	background-size: auto 200%;
}

.page-contact section.top .top-image .fade-top {
	display: none;
}

.page-contact section.top .top-image .fade-bottom {
	display: none;
}

@media (max-width: 50em) {
	.page-contact section.top .top-image {
		background-position: 86% 55%;
		background-size: auto 225%;
	}

	.page-contact section.top .top-image .fade-bottom {
		display: block;
		height: 15%;
	}

	.page-contact section.top .top-image .fade-left {
		display: none;
	}

	.page-contact section.top .top-image .fade-right {
		display: none;
	}
}

.page-contact section.contact-form .wsf-form {
	max-width: 60rem;
	margin: 0 auto;
	padding: 0 0.5rem;
}

.wsf-form {
	--wsf-field-button-border-radius: 0.375rem;
	--wsf-field-button-font-weight: 500;
	--wsf-field-button-padding: 0.4375rem 1rem;
	--wsf-field-button-text-transform: uppercase;
	--wsf-field-button-width: auto;
	--wsf-field-button-primary-color-background: var(--colour-accent);
	--wsf-field-button-primary-border-color: var(--colour-accent);
	--wsf-field-button-primary-color-background-focus: var(--colour-accent);
	--wsf-field-button-primary-border-color-focus: var(--colour-accent);
	--wsf-field-button-primary-color-background-hover: var(--colour-accent-hover);
	--wsf-field-button-primary-border-color-hover: var(--colour-accent-hover);
	--wsf-field-checkbox-checked-color-background: var(--colour-blue-light);
	--wsf-field-checkbox-gap-horizontal: 0.75rem;
	--wsf-field-checkbox-gap-vertical: 1.1875rem;
	--wsf-field-help-font-style: italic;
	--wsf-field-help-gap: 1rem;
	--wsf-field-label-font-weight: 500;
	--wsf-field-label-gap: 0.375rem;
	--wsf-field-radio-checked-color: var(--colour-blue-light);
	--wsf-form-color-primary: var(--colour-blue-light);
	--wsf-form-grid-gap: 3rem;
}

.wsf-form .wsf-field-wrapper {
	margin-bottom: 1.25rem !important;
}

.wsf-form .wsf-help-pre {
	opacity: 0.6;
}

.wsf-form input[type=checkbox].wsf-field + label.wsf-label {
	font-weight: 400;
}

.wsf-form button.wsf-button.wsf-button-primary:focus,
.wsf-form button.wsf-button.wsf-button-primary:focus-visible {
	box-shadow: none;
	outline: 2px solid var(--colour-accent);
	outline-offset: 1px;
}

.wsf-form button.wsf-button.wsf-button-primary:not(:focus-visible) {
	outline: none !important;
}

/* ## Articles page --------------------------------------------------------- */

.page-articles section.top hgroup.h1-below h1 .accent {
	color: var(--colour-blue-light);
}

.page-articles section.top .top-content p:not(.subheading) {
	max-width: 45%;
}

.page-articles section.top .top-image {
	left: 45%;
	background-image: url('./img/bg-top-articles.jpg');
	background-position: 50% 50%;
	background-size: cover;
}

.page-articles section.top .top-image .fade-top {
	display: none;
}

.page-articles section.top .top-image .fade-bottom {
	display: none;
}

@media (max-width: 50em) {
	.page-articles section.top .top-image {
		left: 0;
		background-position: 50% 60%;
	}

	.page-articles section.top .top-image .fade-bottom {
		display: block;
		height: 15%;
	}

	.page-articles section.top .top-image .fade-left {
		display: none;
	}

	.page-articles section.top .top-image .fade-right {
		display: none;
	}
}

/* ## Legal page ------------------------------------------------------------ */

.page-legal section.main .limiter {
	max-width: 70rem;
}

.page-legal section.top .top-image {
	background-image: url('./img/bg-top-terms.jpg');
	background-position: 50% 50%;
	background-size: cover;
}

.page-legal section.top .top-image .fade-top {
	display: none;
}

.page-legal section.top .top-image .fade-bottom {
	display: none;
}

@media (max-width: 50em) {
	.page-legal section.top .top-image {
		background-position: 50% 60%;
		background-size: 150% auto;
	}

	.page-legal section.top .top-image .fade-bottom {
		display: block;
		height: 15%;
	}

	.page-legal section.top .top-image .fade-left {
		display: none;
	}

	.page-legal section.top .top-image .fade-right {
		display: none;
	}
}

.page-legal h2,
.page-legal h3 {
	font-weight: 600;
	color: var(--colour-blue-light);
	line-height: 1.15;
	letter-spacing: -0.01em;
}

.page-legal h2 {
	margin: 2.5rem 0 1.75rem 0;
	font-size: 1.75em;
}

.page-legal h3 {
	margin: 1.5rem 0 1rem 0;
	font-size: 1.375em;
}

.page-legal p {
	margin: 0.75em 0;
}

.page-legal .entry-content,
.page-legal .entry-content p {
	color: #333;
	font-size: 1rem;
}

.page-legal ol {
	counter-reset: item;
	margin: 0.25em 0;
	/* padding-inline-start: 1.5em; */
	padding-left: 1.5em;
}

.page-legal li {
	margin: 0.25em 0;
}

.page-legal ol h4 {
	text-transform: uppercase;
	font-weight: 600;
	margin: 1em 0 0.5em 0;
	font-size: 1em;
}

.page-legal ol p {
	margin: 0.25em 0;
}

.page-legal .entry-content > ol > li {
	list-style: none;
}

.page-legal .entry-content > ol > li:before {
	content: counters(item, ".") ".";
	position: absolute;
	left: 0;
	margin-left: -1.5em;
	font-weight: 600;
}

.page-legal ol ol {
	/* padding-inline-start: 1.75em; */
	padding-left: 2.5em;
}

.page-legal .entry-content > ol > li,
.page-legal .entry-content > ol > li > ol > li {
	counter-increment: item;
	position: relative;
}

.page-legal ol ol li {
	list-style: none;
}

.page-legal ol ol > li:before {
	content: counters(item, ".") ". ";
	margin-left: -2.5em;
	position: absolute;
    left: 0;
}

.page-legal ol ol ol {
	counter-reset: alpha;
	/* padding-inline-start: 1.5em; */
	padding-left: 1.5em;
}

.page-legal ol ol ol > li {
	display: list-item;
	position: relative;
}

.page-legal ol ol ol > li:before {
	content: "(" counter(alpha, lower-alpha) ") ";
	counter-increment: alpha;
	position: absolute;
	margin-left: -1.5em;
    left: 0;
}

.page-legal ol table {
	border-spacing: 0;
	margin: 0.25em 0;
	border: 0.042em solid hsl(0, 0%, 42.5%);
}

.page-legal ol th,
.page-legal ol td {
	padding: 0.25em 0.5em;
}

.page-legal ol th {
	font-weight: 600;
}

.page-legal ol td {
	border-top: 0.042em solid hsl(0, 0%, 42.5%);
}

.page-legal ol th:not(:last-child),
.page-legal ol td:not(:last-child) {
	border-right: 0.042em solid hsl(0, 0%, 42.5%);
}

@media (max-width: 33.75em) {
	.page-legal ol table {
		margin-left: -4.5em;
		width: calc(100% + 5em);
	}
}

/* ## Free DRaaS Test page -------------------------------------------------- */

.page-free-disaster-recovery-test .blue-band h1 {
	margin: 0;
	text-align: center;
	font-size: 2.125em;
}

.page-free-disaster-recovery-test .blue {
	font-size: 1em;
}

.page-free-disaster-recovery-test .sidebar {
	padding-top: 3em;
}

.page-free-disaster-recovery-test .sidebar h2 {
	color: var(--colour-blue-light);
	font-weight: 600;
	font-size: 1.375em;
	letter-spacing: -0.01em;
	margin: 1.5rem 0 1rem 0;
}

.page-free-disaster-recovery-test .sidebar .container {
    padding: 0.375em 1em 0.125em 1em;
    border: 1px solid var(--colour-blue-light);
    border-radius: 1px;
}

.page-free-disaster-recovery-test .sidebar p {
	color: hsl(0, 0%, 42.5%);
	margin: 0.5rem 0 1rem 0;
}

.page-free-disaster-recovery-test .wpcf7-list-item.first {
	margin-left: 0.5rem;
}

@media (max-width: 45em) {
	.page-free-disaster-recovery-test .content-area {
		padding-bottom: 0;
	}

	.page-free-disaster-recovery-test .sidebar {
		padding-top: 0;
	}
}

/* ## Why page -------------------------------------------------------------- */

.page-standard .testimonials {
	background: var(--colour-blue-light);
	color: #fff;
	padding: 1.5em 0;
}

.page-standard .testimonials .container {
	display: flex;
	align-items: flex-start;
	margin: 0 -3%;
}

.page-standard .testimonials .testimonial {
	flex: 1;
	margin: 1.375em 2.85% 0.75em 2.85%;
}

.page-standard .testimonials h2 {
	margin: 0;
	font-size: 1.375em;
	font-weight: 400;
}

.page-standard .testimonials .quote {
	display: inline-block;
	font-size: 0.9375em;
	font-weight: 300;
	font-style: italic;
	line-height: 1.25rem;
	margin-bottom: 0.75rem;
	/* quotes: "\201C""\201D""\2018""\2019"; */
	quotes: "\201C""""""";
	position: relative;
}

.page-standard .testimonials .quote:before {
	position: relative;
	top: 0.375em;
	padding-right: 0.1875rem;
	font-size: 3em;
	line-height: 0;
}

.page-standard .testimonials .quote:after {
	position: relative;
	top: 0.375em;
	font-size: 3em;
	line-height: 0;
}

.page-standard .testimonials .attribution {
	font-size: 0.9375em;
	font-weight: 400;
	line-height: 1.23;
}

@media (max-width: 45em) {
	.page-standard .testimonials .container {
		display: block;
		margin: -0.5em 0 -1.5em 0;
	}

	.page-standard .testimonials .testimonial {
		margin: 2em 0;
	}
}

/* ## Wide template --------------------------------------------------------- */

.template-wide {
	background: #fff;
}

.template-wide .entry-content {
	padding-right: 0;
}

/* ## CF7 contact form ------------------------------------------------------ */

.wpcf7 {
	max-width: 30em;
}

.wpcf7 label .text {
	font-weight: 600;
	font-size: 0.9375em;
}

.wpcf7 label .required {
	color: var(--colour-blue-light);
	font-weight: 600;
	padding-left: 0.125rem;
}

.wpcf7 .wpcf7-text,
.wpcf7 .wpcf7-textarea {
	width: 100%;
	margin-top: 0.125rem;
	padding: 0.375rem 0.75rem;
	border: 0.0625rem solid #ccc;
	border-radius: 0.1875rem;
	transition: border-color 0.15s;
}

.wpcf7 .wpcf7-textarea {
	height: 8rem;
}

.wpcf7 .wpcf7-form-control:focus {
	border-color: var(--colour-blue-light);
	box-shadow: 0 0 0 0.0625rem var(--colour-blue-light);
}

.wpcf7 .wpcf7-submit {
	padding: 0.75rem 1rem;
	background: var(--colour-blue-light);
	color: #fff;
	font-size: 1em;
	text-decoration: none;
	border: none;
	border-radius: 0.1875rem;
}

.wpcf7 .wpcf7-submit:hover,
.wpcf7 .wpcf7-submit:focus {
	outline: none;
	background: var(--colour-blue-light-hover);
	cursor: pointer;
}

.wpcf7 .wpcf7-submit:active {
	background: var(--colour-blue-light);
	outline: none;
}

.wpcf7 .wpcf7-not-valid-tip {
	font-size: 0.875em;
	padding-top: 0.1875rem;
}

/* ## Mailing list form ----------------------------------------------------- */

.mc4wp-form {
	max-width: 30em;
}

.mc4wp-form label {
	font-weight: 600;
	font-size: 0.9375em;
}

.mc4wp-form label .required {
	color: var(--colour-blue-light);
	font-weight: 600;
	padding-left: 0.125rem;
}

.mc4wp-form input[type="email"],
.mc4wp-form input[type="text"] {
	width: 100%;
	margin-top: 0.125rem;
	padding: 0.375rem 0.75rem;
	border: 0.0625rem solid #ccc;
	border-radius: 0.1875rem;
	transition: border-color 0.15s;
}

.mc4wp-form .wpcf7-form-control:focus {
	border-color: var(--colour-blue-light);
	box-shadow: 0 0 0 0.0625rem var(--colour-blue-light);
}

.mc4wp-form .submit {
	padding: 0.75rem 1rem;
	background: var(--colour-blue-light);
	color: #fff;
	font-size: 1em;
	text-decoration: none;
	border: none;
	border-radius: 0.1875rem;
}

.mc4wp-form .submit:hover,
.mc4wp-form .submit:focus {
	outline: none;
	background: var(--colour-blue-light-hover);
	cursor: pointer;
}

.mc4wp-form .submit:active {
	background: var(--colour-blue-light);
	outline: none;
}

/* ## Articles library ------------------------------------------------------ */

.article-list .article {
	margin: 2em 0;
	line-height: 1.35;
	color: #6c6c6c;
}

.article-list h2.article-title {
	margin: 0;
	font-weight: 600;
	font-size: 1.5em;
	letter-spacing: -0.01em;
	color: var(--colour-blue-light);
}

.article-list .article-title a {
	text-decoration: none;
}

.article-list .article-date {
	margin: 0 0 0.875rem 0;
}

.article-list .article-description {
	margin: 0 0 0.875rem 0;
	font-size: 1.125rem;
	line-height: 1.4;
}

.article-list .article-link a {
	text-decoration: none;
}

.article-list .article-link .fas {
	margin-right: 0.5rem;
}

.article-list .btn-article {
	display: inline-block;
	padding: 0.3125rem 1rem 0.25rem 1rem;
	background: var(--colour-blue-light);
	color: #fff;
	border-radius: 0.9375rem;
	font-size: 1rem;
	text-decoration: none;
}

.article-list .btn-article:focus,
.article-list .btn-article:hover {
	background: var(--colour-blue-light-hover);
}

.article-list-compact {
	margin: 0;
}

.article-list-compact .article {
	margin: 0;
	padding: 1rem;
	line-height: 1.35;
	color: #6c6c6c;
	border-radius: 0.25rem;
	display: flex;
	align-items: flex-start;
}

.article-list-compact .article:nth-child(odd) {
	background: #f5f5f5;
}

.article-list-compact .article-main {
	flex: 1;
}

.article-list-compact .article-date-column {
	flex: initial;
	min-width: 6.5rem;
	margin-top: 0.125rem;
	text-align: right;
}

.article-list-compact h2.article-title {
	margin: 0;
	font-weight: 600;
	font-size: 1.25em;
	letter-spacing: -0.01em;
	line-height: 1.2;
	color: var(--colour-blue-light);
	display: flex;
	align-items: flex-start;
}

.article-list-compact .article-title .fas {
	margin-right: 0.5rem;
	margin-top: 0.25rem;
	min-width: 1rem;
	font-size: 1.125rem;
}

.article-list-compact .article-title-link {
	text-decoration: none;
}

.article-list-compact .article-title-link:hover,
.article-list-compact .article-title-link:focus {
	text-decoration: underline;
}

.article-list-compact .article-date-mobile {
	display: none;
	margin: 0 0 0.875rem 1.5rem;
}

.article-list-compact .article-description {
	margin: 0.25rem 0 0 1.5rem;
	font-size: 1.0625rem;
	line-height: 1.3;
}

@media all and (max-width: 32em) {
	.article-list-compact .article-date-column {
		display: none;
	}

	.article-list-compact .article-date-mobile {
		display: block;
	}
}


/* -----------------------------------------------------------------------------
 # Blog --------------------------------------------------------------------- */

.page-blog section.top .top-image {
	left: 35%;
	background-image: url('./img/bg-top-blog.jpg');
	background-position: 50% 50%;
	background-size: cover;
}

.page-blog section.top .top-image .fade-top {
	display: none;
}

.page-blog section.top .top-image .fade-bottom {
	display: none;
}

@media (max-width: 50em) {
	.page-blog section.top .top-image {
		left: 0;
		background-position: 0% 50%;
	}

	.page-blog section.top .top-image .fade-bottom {
		display: block;
		height: 15%;
	}

	.page-blog section.top .top-image .fade-left {
		display: none;
	}

	.page-blog section.top .top-image .fade-right {
		display: none;
	}
}

.page-blog .section.wide {
	background-position: 50% 65%;
	background-size: cover;
	height: 10em;
}

.page-blog .limiter {
	display: flex;
	align-items: flex-start;
	gap: 3rem;
}

.page-blog .content-area {
	flex: 3;
	padding: 0;
}

.page-blog .post-sidebar {
	flex: 1;
	padding: 0;
}

.page-blog .blog-header {
	margin-bottom: -0.5em;
}

.page-blog .blog-header .secondary {
	font-size: 1rem;
	font-weight: 400;
	color: hsl(0, 0%, 42.5%);
}

.page-blog .entry-meta {
	line-height: 1.25;
}

.page-blog:not(.post-standard) article {
	display: flex;
	align-items: flex-start;
	margin-top: 2.5em;
}

.page-blog:not(.post-standard) article:first-child {
	margin-top: 0;
}

.page-blog .excerpt-body .entry-content {
	margin-top: 0.5em;
}

.page-blog .excerpt-body {
	flex: 5;
	color: hsl(0, 0%, 42.5%);
}

.page-blog .excerpt-body h2 {
	margin: 0 0 0.375rem 0;
	color: var(--colour-blue-light);
	font-weight: 600;
	font-size: 1.375em;
	letter-spacing: -0.01em;
}

.page-blog .excerpt-body h2 a {
	text-decoration: none;
}
  
.page-blog .excerpt-image-wrapper {
	flex: 2;
	width: 100%;
	padding-bottom: 25%;
	position: relative;
	margin: 0 1.5em 0 0;
}

.page-blog .excerpt-image-wrapper img {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	height: 100%;
	width: 100%;
	object-fit: cover;
}

.page-blog .posts-navigation {
	margin: 1.5em 0;
}

@media screen and (min-width: 100.875em) {
	.page-blog  .section.wide {
		background-position: 50% 50%;
	}
}

@media screen and (max-width: 62em) {
	.page-blog .limiter {
		display: block;
	}

	.page-blog .post-sidebar {
		margin: 1.5em 0 0 0;
		padding: 2rem 0 0 0;
		width: auto;
		border-top: 0.75px solid #d9d9d9;
	}
}

@media (max-width: 26.25em) {
	.page-blog:not(.page-blog-single) article {
	  display: block;
	}
  
	.page-blog .excerpt-image-wrapper {
	  padding-bottom: 75%;
	  margin-bottom: 1.5em;
	}
}

/* ## Posts ----------------------------------------------------------------- */

.post-standard {
	background: #fff;
}

.post-standard .post-thumbnail {
	margin-bottom: 1.5em;
}

.post-standard .post-thumbnail img {
	display: block;
}

.post-standard .recent-post-tile {
	margin-top: 1.5em;
}

.post-standard .recent-post-tile .thumbnail {
	max-width: 10em;
	margin-bottom: 0.5em;
}

.post-standard .recent-post-tile .thumbnail img {
	display: block;
}

.post-standard .recent-post-tile .label {
	line-height: 1.25;
}

.post-standard .recent-post-tile .label a {
	text-decoration: none;
	font-weight: 600;
	transition: all 0.1s;
}

.post-standard .recent-post-tile .label a:hover,
.post-standard .recent-post-tile .label a:focus {
	text-decoration: underline;
}

.post-standard .content-area {
	color: hsl(0, 0%, 42.5%);
	padding: 0 1rem;
}

.post-standard .content-area h2 {
	color: var(--colour-blue-light);
	font-weight: 600;
	font-size: 1.375em;
	letter-spacing: -0.01em;
	margin: 1.5rem 0 0 0;
}

.post-standard .entry-content p {
	margin: 0.5rem 0 1rem 0;
	line-height: 1.6;
}

.post-standard .entry-content ul {
	margin: 0 0 1rem 0;
	padding-left: 1.5em;
}

.post-standard .entry-header {
	width: 100%;
	margin-bottom: 1em;
}

.post-standard section.top hgroup.h1-below .superheading a {
	text-decoration: none;
}

.post-standard .entry-meta {
	margin-top: 1rem;
	font-size: 1rem;
	font-weight: 300;
}

.post-standard .entry-meta .category {
	margin-bottom: 0.25rem;
	color: var(--colour-blue-light);
	font-weight: 500;
}

.post-standard h1 {
	margin: 0;
	font-size: 1.875em;
	font-weight: 600;
	color: var(--colour-blue-light);
	letter-spacing: -0.01em;
	line-height: 1.15;
}

.post-standard .wp-block-image img {
	display: block;
}

.post-standard .post-navigation {
	margin: 1.5em 0 0 0;
	line-height: 1.25;
}

.post-standard .post-navigation a {
	text-decoration: none;
	display: flex;
	align-items: center;
}

.post-standard .post-navigation .nav-next a {
	justify-content: flex-end;
}

.post-standard .post-navigation .nav-previous a {
	justify-content: flex-start;
}

.post-standard .post-navigation a:hover .full-label,
.post-standard .post-navigation a:hover .short-label {
	text-decoration: underline;
}

.post-standard .post-navigation .full-label,
.post-standard .post-navigation .short-label {
	font-size: 0.9375em;
}

.post-standard .post-navigation .short-label {
	display: none;
}

.post-standard .post-navigation .fa-arrow-left {
	margin-right: 0.5rem;
}

.post-standard .post-navigation .fa-arrow-right {
	margin-left: 0.5rem;
}

.post-standard .post-navigation .svg-inline--fa {
	color: #bfbfbf;
	color: var(--colour-blue-light);
}

.post-standard .post-navigation a:hover .svg-inline--fa {
	color: hsl(0, 0%, 42.5%);
	color: var(--colour-blue-light-hover);
}

.post-standard .wp-block-media-text {
	margin: 3em 0 2em 0;
}

@media (max-width: 40em) {
	.post-standard .content-area {
		padding-right: 0;
		width: 100%;
	}

	.post-standard .post-navigation {
		display: block;
	}
}

@media (max-width: 50em) {
	.post-standard .content-area {
		padding-left: 0.5rem;
	}

	.post-standard .post-navigation {
		display: block;
	}
}

@media (max-width: 33.75em) {
	.post-standard .wp-block-image.alignright {
		float: none;
		width: 100%;
		margin: 1em 0;
	}

	.post-standard .wp-block-image.alignright img {
		width: 100%;
	}
}

@media (max-width: 30em) {
	.post-standard .post-navigation .short-label {
		display: inline;
	}

	.post-standard .post-navigation .full-label {
		display: none;
	}
}

/* ## Social links ---------------------------------------------------------- */

.page-blog .social-share-links {
	display: flex;
	align-items: center;
	justify-content: flex-start;
	margin: 1.5em -0.25em 3em -0.25em;
}

.page-blog .social-share-links .svg-inline--fa {
	width: auto;
	color: #fff;
}

.page-blog .social-share-links .btn-social-share,
.page-blog .social-share-links .btn-social-share:visited {
	display: inline-block;
	background: #d9d9d9;
	border: none;
	border-radius: 0.3125em;
	font-size: 1em;
	margin: 0 0.25rem;
	padding: 0.5em 1.5em;
	font-weight: 400;
	color: #fff !important;
	outline: none;
	transition: all 0.15s;
	position: relative;
	text-decoration: none;
}

.page-blog .social-share-links .btn-social-share:focus,
.page-blog .social-share-links .btn-social-share:hover {
	box-shadow: inset 0 0 0 0.0625em rgba(0, 0, 0, 0.4);
	outline: none;
}

.page-blog .social-share-links .btn-social-share:active {
	top: 0.5px;
	outline: none;
}

.page-blog .social-share-links .btn-social-share.facebook {
	background: #3b5998;
}

.page-blog .social-share-links .btn-social-share.twitter {
	background: #1da1f2;
}

.page-blog .social-share-links .btn-social-share.linkedin {
	background: #0077b5;
}

/* ## Sidebar --------------------------------------------------------------- */

.page-blog .widget-area .widget {
	margin: 2.5rem 0 0 0;
	color: hsl(0, 0%, 42.5%);
}

.page-blog .widget-area .widget:first-child {
	margin-top: 0;
}

.page-blog .widget-area .widget a {
	text-decoration: none;
}

.page-blog .widget-area ul {
	margin: 0;
	padding: 0;
	list-style-type: none;
}

.page-blog .widget-area h2 {
	font-size: 1.25rem;
	margin-top: 0;
	color: #000;
	font-weight: 600;
}

.widget_categories a,
.widget_archive a,
.widget_recent_entries a {
	line-height: 1.5;
}

.widget_categories li,
.widget_archive li {
	margin: 0.5em 0;
}

.widget_recent_entries li {
	margin: 0.875em 0;
}

.widget_recent_entries .post-date {
	display: block;
	margin-top: 0.25rem;
	font-size: 0.9125em;
}

.widget_archive select {
	font-size: 1em;
	margin-top: 0.375em;
	padding: 0.5em 0.75em;
	border: 1px solid #d9d9d9;
	border-radius: 0.0625em;
}

/* ## Post ad feature ------------------------------------------------------- */

.post-ad {
	margin-top: 2.5em;
	padding: 1em;
	border: 1px solid var(--colour-blue-light);
	border-radius: 1px;
	text-align: center;
}

.post-ad h2 {
	margin: 0 !important;
	color: var(--colour-blue-light);
    font-weight: 600;
    font-size: 1.375em;
	letter-spacing: -0.01em;
}


/* -----------------------------------------------------------------------------
 # Media -------------------------------------------------------------------- */

.page-content .wp-smiley,
.entry-content .wp-smiley,
.comment-content .wp-smiley {
	border: none;
	margin-bottom: 0;
	margin-top: 0;
	padding: 0;
}

embed,
iframe,
object {
	max-width: 100%;
}

.custom-logo-link {
	display: inline-block;
}

/* ## Captions -------------------------------------------------------------- */

.wp-caption {
	margin-bottom: 1.5em;
	max-width: 100%;
}

.wp-caption img[class*="wp-image-"] {
	display: block;
	margin-left: auto;
	margin-right: auto;
}

.wp-caption .wp-caption-text {
	margin: 0.8075em 0;
}

.wp-caption-text {
	text-align: center;
}

/* ## Galleries ------------------------------------------------------------- */

.gallery {
	margin-bottom: 1.5em;
}

.gallery-item {
	display: inline-block;
	text-align: center;
	vertical-align: top;
	width: 100%;
}

.gallery-columns-2 .gallery-item {
	max-width: 50%;
}

.gallery-columns-3 .gallery-item {
	max-width: 33.33%;
}

.gallery-columns-4 .gallery-item {
	max-width: 25%;
}

.gallery-columns-5 .gallery-item {
	max-width: 20%;
}

.gallery-columns-6 .gallery-item {
	max-width: 16.66%;
}

.gallery-columns-7 .gallery-item {
	max-width: 14.28%;
}

.gallery-columns-8 .gallery-item {
	max-width: 12.5%;
}

.gallery-columns-9 .gallery-item {
	max-width: 11.11%;
}

.gallery-caption {
	display: block;
}


/* -----------------------------------------------------------------------------
 # Utilities ---------------------------------------------------------------- */

/* ## Accessibility --------------------------------------------------------- */

.screen-reader-text {
	border: 0;
	clip: rect(1px, 1px, 1px, 1px);
	clip-path: inset(50%);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute !important;
	width: 1px;
	word-wrap: normal !important;
}

.screen-reader-text:focus {
	background-color: #f1f1f1;
	border-radius: 3px;
	box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
	clip: auto !important;
	clip-path: none;
	color: var(--colour-blue-light-hover);
	display: block;
	font-size: 14px;
	font-size: 0.875rem;
	font-weight: bold;
	height: auto;
	left: 5px;
	line-height: normal;
	padding: 15px 23px 14px;
	text-decoration: none;
	top: 5px;
	width: auto;
	z-index: 100000;
}

#content[tabindex="-1"]:focus {
	outline: 0;
}

/* ## Alignments ------------------------------------------------------------ */

.alignleft {
	display: inline;
	float: left;
	margin-right: 1.5em;
}

.alignright {
	display: inline;
	float: right;
	margin-left: 1.5em;
}

.aligncenter {
	clear: both;
	display: block;
	margin-left: auto;
	margin-right: auto;
}
