@charset "UTF-8";
/* `XHTML, HTML4, HTML5 Reset
----------------------------------------------------------------------------------------------------*/
a,
abbr,
acronym,
address,
applet,
article,
aside,
audio,
b,
big,
blockquote,
body,
canvas,
caption,
center,
cite,
code,
dd,
del,
details,
dfn,
dialog,
div,
dl,
dt,
em,
embed,
fieldset,
figcaption,
figure,
font,
footer,
form,
h1,
h2,
h3,
h4,
h5,
h6,
header,
hgroup,
hr,
html,
i,
iframe,
img,
ins,
kbd,
label,
legend,
li,
main,
mark,
menu,
meter,
nav,
object,
ol,
output,
p,
pre,
progress,
q,
rp,
rt,
ruby,
s,
samp,
section,
small,
span,
strike,
strong,
sub,
summary,
sup,
table,
tbody,
td,
tfoot,
th,
thead,
time,
tr,
tt,
u,
ul,
var,
video,
xmp {
  border: 0;
  margin: 0;
  padding: 0;
  font-size: 100%;
}

html {
  height: 100%;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
menu,
nav,
section {
  display: block;
}

b,
strong {
  font-weight: bold;
}

img {
  color: transparent;
  font-size: 0;
  vertical-align: middle;
  -ms-interpolation-mode: bicubic;
}

ol,
ul {
  list-style: none;
}

li {
  display: list-item;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

th,
td,
caption {
  font-weight: normal;
  vertical-align: top;
  text-align: left;
}

q {
  quotes: none;
}

q:before,
q:after {
  content: "";
  content: none;
}

sub,
sup,
small {
  font-size: 75%;
}

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

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

svg {
  overflow: hidden;
}

:root {
  --mb:30px;
  --nav-height:280px;
  --outer:20px;
  --rw:672px;
  --gutter:1%;
  --max-width: inherit;
  --vh: 100vh;
  --rat: 56.25%;
  --rec: 177.2%;
}

@media (min-width: 678px) {
  :root {
    --outer:40px;
  }
}
@media (min-width: 1000px) {
  :root {
    --outer:5vw;
    --mb:35px;
  }
}
@media (min-width: 1280px) {
  :root {
    --outer:8vw;
  }
}
@media (min-width: 1680px) {
  :root {
    --outer:10vw;
  }
}
/*--------------------------------
	Media Queries
	used for outputting content either between media query tags
	example: basic usage
	.element {
		width: 50%;
		@include mq('tablet-small') {
			width: 20%;
		}
	}
	example: using max-width
	.element {
		width: 50%;
		@include mq('tablet-small', 'max') {
			width: 20%;
		}
	}
*/
/*--------------------------------
	Margin / Padding Quick Resets
	example: top & bottom margin set to $mb
	.element {
		@include push--ends;
	}
	example: left & right padding set to $mb--small
	.element {
		@include soft--sides($mb--small);
	}
*/
/*--------------------------------
	Helper mixins
*/
/*--------------------------------
	Form input placeholder text
	example:
	input,
	textarea {
		@include input-placeholder {
			color: $grey;
		}
	}
*/
/*--------------------------------
	Retina images
	example:
	.element {
		@include retina {
			background-image: url(https://glasgowvirtualoffices.co.uk/wp-content/themes/virtually/css/../img/background@2x.png);
		}
	}
*/
/*--------------------------------
	Content margins
	fore removing first/last child margins
	example: default
	.element {
		@include content-margins;
	}
	output:
	.element > *:first-child {
		margin-top: 0;
	}
	.element > *:last-child {
		margin-bottom: 0;
	}
	example: empty selector
	.element {
		@include content-margins('false');
	}
	output:
	.element:first-child {
		margin-top: 0;
	}
	.element:last-child {
		margin-bottom: 0;
	}
*/
/*--------------------------------
	CSS Triangle
	used for creating CSS only triangles
	example:
	.element {
		&::before {
			@include css-triangle(blue, down);
		}
	}
*/
/*--------------------------------
	Hide text
	example:
	.element {
		@include hide-text;
	}
*/
/*--------------------------------
	Responsive ratio
	Used for creating scalable elements that maintain the same ratio
	example:
	.element {
		@include responsive-ratio(400, 300);
	}
*/
/*--------------------------------
Font size
*/
/*
	.site-header {
    z-index: z('site-header');
}
*/
.animated.infinite {
  -webkit-animation-iteration-count: infinite;
  animation-iteration-count: infinite;
}

/*------------------------------------------------------------------------------------------------------------------------

								  Fade In   

--------------------------------------------------------------------------------------------------------------------------*/
@-webkit-keyframes fadeInKs {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes fadeInks {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@-webkit-keyframes fadeInUpKs {
  0% {
    opacity: 0;
    -ms-transform: translate3d(0, 60px, 0); /* IE 9 */
    -webkit-transform: translate3d(0, 60px, 0); /* Chrome, Safari, Opera */
    transform: translate3d(0, 60px, 0);
  }
  100% {
    opacity: 1;
    -ms-transform: translate3d(0, 0px, 0); /* IE 9 */
    -webkit-transform: translate3d(0, 0px, 0); /* Chrome, Safari, Opera */
    transform: translate3d(0, 0px, 0);
  }
}
@keyframes fadeInUpks {
  0% {
    opacity: 0;
    -ms-transform: translate3d(0, 60px, 0); /* IE 9 */
    -webkit-transform: translate3d(0, 60px, 0); /* Chrome, Safari, Opera */
    transform: translate3d(0, 60px, 0);
  }
  100% {
    opacity: 1;
    -ms-transform: translate3d(0, 0px, 0); /* IE 9 */
    -webkit-transform: translate3d(0, 0px, 0); /* Chrome, Safari, Opera */
    transform: translate3d(0, 0px, 0);
  }
}
@-webkit-keyframes fadeOutKs {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
@keyframes fadeOutKs {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
@-webkit-keyframes fadeOutLeftKs {
  0% {
    opacity: 1;
    -ms-transform: translateX(0); /* IE 9 */
    -webkit-transform: translateX(0); /* Chrome, Safari, Opera */
    transform: translateX(0);
  }
  100% {
    opacity: 0;
    -ms-transform: translateX(-30px); /* IE 9 */
    -webkit-transform: translateX(-30px); /* Chrome, Safari, Opera */
    transform: translateX(-30px);
  }
}
@keyframes fadeOutLeftKs {
  0% {
    opacity: 1;
    -ms-transform: translateX(0); /* IE 9 */
    -webkit-transform: translateX(0); /* Chrome, Safari, Opera */
    transform: translateX(0);
  }
  100% {
    opacity: 0;
    -ms-transform: translateX(-30px); /* IE 9 */
    -webkit-transform: translateX(-30px); /* Chrome, Safari, Opera */
    transform: translateX(-30px);
  }
}
@-webkit-keyframes fadeInRightKs {
  0% {
    opacity: 0;
    -ms-transform: translateX(50px); /* IE 9 */
    -webkit-transform: translateX(50px); /* Chrome, Safari, Opera */
    transform: translateX(50px);
  }
  100% {
    opacity: 1;
    -ms-transform: translateX(0); /* IE 9 */
    -webkit-transform: translateX(0); /* Chrome, Safari, Opera */
    transform: translateX(0);
  }
}
@keyframes fadeInRightKs {
  0% {
    opacity: 0;
    -ms-transform: translateX(50px); /* IE 9 */
    -webkit-transform: translateX(50px); /* Chrome, Safari, Opera */
    transform: translateX(50px);
  }
  100% {
    opacity: 1;
    -ms-transform: translateX(0); /* IE 9 */
    -webkit-transform: translateX(0); /* Chrome, Safari, Opera */
    transform: translateX(0);
  }
}
@-webkit-keyframes fadeOutRightKs {
  0% {
    opacity: 1;
    -ms-transform: translateX(0); /* IE 9 */
    -webkit-transform: translateX(0); /* Chrome, Safari, Opera */
    transform: translateX(0);
  }
  100% {
    opacity: 0;
    -ms-transform: translateX(30px); /* IE 9 */
    -webkit-transform: translateX(30px); /* Chrome, Safari, Opera */
    transform: translateX(30px);
  }
}
@keyframes fadeOutRightKS {
  0% {
    opacity: 1;
    -ms-transform: translateX(0); /* IE 9 */
    -webkit-transform: translateX(0); /* Chrome, Safari, Opera */
    transform: translateX(0);
  }
  100% {
    opacity: 0;
    -ms-transform: translateX(30px); /* IE 9 */
    -webkit-transform: translateX(30px); /* Chrome, Safari, Opera */
    transform: translateX(30px);
  }
}
@-webkit-keyframes fadeInLeftKs {
  0% {
    opacity: 0;
    -ms-transform: translateX(-50px); /* IE 9 */
    -webkit-transform: translateX(-50px); /* Chrome, Safari, Opera */
    transform: translateX(-50px);
  }
  100% {
    opacity: 1;
    -ms-transform: translateX(0); /* IE 9 */
    -webkit-transform: translateX(0); /* Chrome, Safari, Opera */
    transform: translateX(0);
  }
}
@keyframes fadeInLeftKs {
  0% {
    opacity: 0;
    -ms-transform: translateX(-50px); /* IE 9 */
    -webkit-transform: translateX(-50px); /* Chrome, Safari, Opera */
    transform: translateX(-50px);
  }
  100% {
    opacity: 1;
    -ms-transform: translateX(0); /* IE 9 */
    -webkit-transform: translateX(0); /* Chrome, Safari, Opera */
    transform: translateX(0);
  }
}
@-webkit-keyframes rotateKs {
  0% {
    -ms-transform: rotate(0deg); /* IE 9 */
    -webkit-transform: rotate(0deg); /* Chrome, Safari, Opera */
    transform: rotate(0deg);
  }
  100% {
    -ms-transform: rotate(90deg); /* IE 9 */
    -webkit-transform: rotate(90deg); /* Chrome, Safari, Opera */
    transform: rotate(90deg);
  }
}
@keyframes rotateKs {
  0% {
    -ms-transform: rotate(0deg); /* IE 9 */
    -webkit-transform: rotate(0deg); /* Chrome, Safari, Opera */
    transform: rotate(0deg);
  }
  100% {
    -ms-transform: rotate(90deg); /* IE 9 */
    -webkit-transform: rotate(90deg); /* Chrome, Safari, Opera */
    transform: rotate(90deg);
  }
}
.fade-in {
  -webkit-animation-duration: 0.5s;
  animation-duration: 0.5s;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
  animation-delay: 0.3s;
  -webkit-animation-delay: 0.3s;
  animation-timing-function: linear;
  -webkit-animation-timing-function: linear;
  -webkit-animation-name: fadeInKs;
  animation-name: fadeInKs;
}

.fade-in-up {
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
  animation-delay: 0.1s;
  -webkit-animation-delay: 0.1s;
  animation-timing-function: ease;
  -webkit-animation-timing-function: ease;
  -webkit-animation-name: fadeInUpKs;
  animation-name: fadeInUpKs;
}

.fade-out {
  -webkit-animation-duration: 0.5s;
  animation-duration: 0.5s;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
  animation-delay: 0;
  -webkit-animation-delay: 0;
  animation-timing-function: linear;
  -webkit-animation-timing-function: linear;
  -webkit-animation-name: fadeOutKs;
  animation-name: fadeOutKs;
}

p {
  margin-bottom: 20px;
}

h1 {
  font-weight: bold;
  line-height: 1em;
  font-family: "Source Serif Pro", serif;
  font-size: 30px;
  margin-bottom: var(--mb);
}
@media (min-width: 778.3783783784px) {
  h1 {
    font-size: calc(74 / 1920 * 100vw);
  }
}
@media (min-width: 1920px) {
  h1 {
    font-size: 74px;
  }
}

h2 {
  font-weight: bold;
  line-height: 1em;
  font-family: "Source Serif Pro", serif;
  font-size: 28px;
  margin-bottom: var(--mb);
}
@media (min-width: 1033.8461538462px) {
  h2 {
    font-size: calc(52 / 1920 * 100vw);
  }
}
@media (min-width: 1920px) {
  h2 {
    font-size: 52px;
  }
}

h3 {
  font-family: "Source Sans Pro", sans-serif;
  font-size: 18px;
  text-transform: uppercase;
  font-weight: bold;
}
@media (min-width: 1382.4px) {
  h3 {
    font-size: calc(25 / 1920 * 100vw);
  }
}
@media (min-width: 2304px) {
  h3 {
    font-size: 30px;
  }
}

h4 {
  font-family: "Source Sans Pro", serif;
  font-weight: normal;
  font-size: 16px;
  line-height: 1.3;
  font-weight: bold;
}
@media (min-width: 1280px) {
  h4 {
    font-size: calc(24 / 1920 * 100vw);
  }
}
@media (min-width: 2560px) {
  h4 {
    font-size: 32px;
  }
}

h5 {
  font-size: 16px;
  font-size: 1rem;
  line-height: 22.4px;
  line-height: 1.4;
  font-weight: bold;
}

.largefont {
  font-size: 22px;
  line-height: 1.2;
}
@media (min-width: 1242.3529411765px) {
  .largefont {
    font-size: calc(34 / 1920 * 100vw);
  }
}
@media (min-width: 2936.4705882353px) {
  .largefont {
    font-size: 52px;
  }
}

.smallfont {
  font-size: 16px;
  font-size: 1rem;
  line-height: 22.4px;
  line-height: 1.4;
}

blockquote > :last-child {
  margin-bottom: 0;
}
blockquote + figcaption {
  font-family: "Source Sans Pro", serif;
  font-weight: normal;
  font-size: 16px;
  line-height: 1.3;
  font-weight: bold;
  margin-top: var(--mb);
}
@media (min-width: 1280px) {
  blockquote + figcaption {
    font-size: calc(24 / 1920 * 100vw);
  }
}
@media (min-width: 2560px) {
  blockquote + figcaption {
    font-size: 32px;
  }
}

h1.title-404 {
  font-weight: normal;
  margin-bottom: calc(var(--mb) / 2);
  font-size: 24px;
}
@media (min-width: 153.6px) {
  h1.title-404 {
    font-size: calc(300 / 1920 * 100vw);
  }
}
@media (min-width: 3328px) {
  h1.title-404 {
    font-size: 520px;
  }
}

.kicker {
  font-size: 16px;
}
@media (min-width: 960px) {
  .kicker {
    font-size: calc(32 / 1920 * 100vw);
  }
}
@media (min-width: 1920px) {
  .kicker {
    font-size: 32px;
  }
}

.menu-button {
  display: block;
  position: absolute;
  background-color: rgba(255, 0, 0, 0.2);
  margin: 0;
  padding: 0;
  width: 70px;
  height: 70px;
  text-indent: 200%;
  text-align: left;
  font-size: 0;
  white-space: nowrap;
  overflow: hidden;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  box-shadow: none;
  border-radius: none;
  border: none;
  cursor: pointer;
  background: transparent;
  overflow: visible;
  transform-origin: center;
  transition: transform 0.3s ease-out;
}
.menu-button:focus {
  outline: none;
  border: none;
}
.menu-button span {
  display: block;
  position: absolute;
  top: calc((70px / 2) - 2px);
  left: calc(50% - 30px / 2);
  width: 30px;
  height: 3px;
  background-color: #000000;
  -webkit-transition: background-color 0.1s linear 0s;
  -moz-transition: background-color 0.1s linear 0s;
  -o-transition: background-color 0.1s linear 0s;
  transition: background-color 0.1s linear 0s;
}
.menu-button span::before,
.menu-button span::after {
  position: absolute;
  display: block;
  left: 0%;
  width: 100%;
  height: 3px;
  background-color: #000000;
  content: "";
}
.menu-button span::before {
  top: -10px;
  -webkit-transition: top 0.15s linear 0.15s, transform 0.15s linear 0s;
  -moz-transition: top 0.15s linear 0.15s, transform 0.15s linear 0s;
  -o-transition: top 0.15s linear 0.15s, transform 0.15s linear 0s;
  transition: top 0.15s linear 0.15s, transform 0.15s linear 0s;
}
.menu-button span::after {
  bottom: -10px;
  -webkit-transition: bottom 0.15s linear 0.15s, transform 0.15s linear 0s;
  -moz-transition: bottom 0.15s linear 0.15s, transform 0.15s linear 0s;
  -o-transition: bottom 0.15s linear 0.15s, transform 0.15s linear 0s;
  transition: bottom 0.15s linear 0.15s, transform 0.15s linear 0s;
}

.menu-visible .menu-button {
  transform: rotate(180deg);
}
.menu-visible .menu-button span {
  background-color: rgba(50, 235, 150, 0);
}
.menu-visible .menu-button span::before {
  top: 0px;
  -ms-transform: rotate(45deg); /* IE 9 */
  -webkit-transform: rotate(45deg); /* Chrome, Safari, Opera */
  transform: rotate(45deg);
  -webkit-transition: top 0.15s linear 0s, transform 0.15s linear 0.15s;
  -moz-transition: top 0.15s linear 0s, transform 0.15s linear 0.15s;
  -o-transition: top 0.15s linear 0s, transform 0.15s linear 0.15s;
  transition: top 0.15s linear 0s, transform 0.15s linear 0.15s;
}
.menu-visible .menu-button span::after {
  bottom: 0px;
  -ms-transform: rotate(-45deg); /* IE 9 */
  -webkit-transform: rotate(-45deg); /* Chrome, Safari, Opera */
  transform: rotate(-45deg);
  -webkit-transition: bottom 0.15s linear 0s, transform 0.15s linear 0.15s;
  -moz-transition: bottom 0.15s linear 0s, transform 0.15s linear 0.15s;
  -o-transition: bottom 0.15s linear 0s, transform 0.15s linear 0.15s;
  transition: bottom 0.15s linear 0s, transform 0.15s linear 0.15s;
}

a {
  color: #000000;
  text-decoration: none;
  -webkit-transition: background-color 0.3s, color 0.3s, opacity 0.3s, transform 0.3s, fill 0.3s;
  -moz-transition: background-color 0.3s, color 0.3s, opacity 0.3s, transform 0.3s, fill 0.3s;
  -o-transition: background-color 0.3s, color 0.3s, opacity 0.3s, transform 0.3s, fill 0.3s;
  transition: background-color 0.3s, color 0.3s, opacity 0.3s, transform 0.3s, fill 0.3s;
}

a:hover {
  text-decoration: none;
  color: #000000;
}

:focus {
  outline: none;
}

::-moz-focus-inner {
  border: 0;
}

.cta {
  font-family: "Source Sans Pro", sans-serif;
  text-transform: uppercase;
  font-size: 15px;
  font-weight: bold;
  background-color: #5538E1;
  line-height: 48px;
  padding: 0px 20px;
  display: inline-block;
  color: white;
  text-transform: uppercase;
  min-width: 15vw;
  text-align: center;
  margin-top: 20px;
  letter-spacing: 0.5px;
  font-weight: 600;
}
@media (min-width: 1600px) {
  .cta {
    font-size: calc(18 / 1920 * 100vw);
  }
}
@media (min-width: 1920px) {
  .cta {
    font-size: 18px;
  }
}
.cta::after {
  display: none;
}
.cta:hover {
  color: white;
  background-color: #2e179c;
}
@media (max-width: 1000px) {
  .cta {
    padding: 0 20px;
  }
}

.cta-alt {
  background-color: #B167C3;
  color: white;
}
.cta-alt:hover {
  background-color: #7c378d;
}

.secondary:not(.cta) {
  color: #5538E1;
  font-weight: bold;
  text-transform: uppercase;
  position: relative;
  padding-bottom: 5px;
}
.secondary:not(.cta)::after {
  content: "";
  position: absolute;
  width: 100%;
  height: 4px;
  bottom: 0px;
  left: 0;
  background-color: #5538E1;
}

.read-more {
  display: inline-block;
  border-bottom: 1px solid #000000;
  text-transform: none;
  transition: border-color, 0.3s;
}

/*----------------------------------------------------------------------------------------------------------------
                                    Forms
---------------------------------------------------------------------------------------------------------------*/
.nf-form-cont form {
  margin-bottom: var(--mb);
}
.nf-form-cont form input {
  border: none;
  padding: 0;
  margin: 0;
  font-weight: 300;
}
.nf-form-cont form input[type=submit], .nf-form-cont form input[type=button] {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  font-family: "Source Sans Pro", sans-serif;
  text-transform: uppercase;
  font-size: 15px;
  font-weight: bold;
  background-color: #5538E1;
  line-height: 48px;
  padding: 0px 20px;
  display: inline-block;
  color: white;
  text-transform: uppercase;
  min-width: 15vw;
  text-align: center;
  margin-top: 20px;
  letter-spacing: 0.5px;
  font-weight: 600;
  min-width: 15vw;
  margin-top: 0;
  border-radius: 0;
}
@media (min-width: 1600px) {
  .nf-form-cont form input[type=submit], .nf-form-cont form input[type=button] {
    font-size: calc(18 / 1920 * 100vw);
  }
}
@media (min-width: 1920px) {
  .nf-form-cont form input[type=submit], .nf-form-cont form input[type=button] {
    font-size: 18px;
  }
}
.nf-form-cont form input[type=submit]::after, .nf-form-cont form input[type=button]::after {
  display: none;
}
.nf-form-cont form input[type=submit]:hover, .nf-form-cont form input[type=button]:hover {
  color: white;
  background-color: #2e179c;
}
@media (max-width: 1000px) {
  .nf-form-cont form input[type=submit], .nf-form-cont form input[type=button] {
    padding: 0 20px;
  }
}
.nf-form-cont form input[type=submit]:hover, .nf-form-cont form input[type=button]:hover {
  cursor: pointer;
}
.nf-form-cont form textarea {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  font-family: "Source Sans Pro", serif;
  font-weight: normal;
  font-size: 16px;
  line-height: 1.3;
  padding: 10px 15px 15px 15px;
  border: 1px solid #666666;
  width: 100%;
  border-radius: 6px;
  line-height: 70px;
}
@media (min-width: 1280px) {
  .nf-form-cont form textarea {
    font-size: calc(24 / 1920 * 100vw);
  }
}
@media (min-width: 2560px) {
  .nf-form-cont form textarea {
    font-size: 32px;
  }
}
.nf-form-cont form input[type=tel], .nf-form-cont form input[type=text], .nf-form-cont form input[type=search], .nf-form-cont form input[type=password], .nf-form-cont form input[type=email], .nf-form-cont form input[type=number] {
  border-radius: 6px;
  height: 70px;
  line-height: 55px;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border: 1px solid #666666;
  padding-left: 15px;
  padding-right: 10px;
  padding-top: 15px;
  width: 100%;
  font-family: "Source Sans Pro", serif;
  font-weight: normal;
  font-size: 16px;
  line-height: 1.3;
  color: #000000;
}
@media (min-width: 1280px) {
  .nf-form-cont form input[type=tel], .nf-form-cont form input[type=text], .nf-form-cont form input[type=search], .nf-form-cont form input[type=password], .nf-form-cont form input[type=email], .nf-form-cont form input[type=number] {
    font-size: calc(24 / 1920 * 100vw);
  }
}
@media (min-width: 2560px) {
  .nf-form-cont form input[type=tel], .nf-form-cont form input[type=text], .nf-form-cont form input[type=search], .nf-form-cont form input[type=password], .nf-form-cont form input[type=email], .nf-form-cont form input[type=number] {
    font-size: 32px;
  }
}
.nf-form-cont form input[type=number] {
  min-width: inherit;
  padding-right: 5px;
}
.nf-form-cont form .list-multiselect-wrap select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  font-size: 16px;
  line-height: 1.3;
  border-radius: 6px;
  border: 1px solid #666666;
}
@media (min-width: 1536px) {
  .nf-form-cont form .list-multiselect-wrap select {
    font-size: calc(20 / 1920 * 100vw);
  }
}
@media (min-width: 2688px) {
  .nf-form-cont form .list-multiselect-wrap select {
    font-size: 28px;
  }
}
.nf-form-cont form .listselect-container select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  font-family: "Source Sans Pro", serif;
  font-weight: normal;
  font-size: 16px;
  line-height: 1.3;
  border-radius: 6px;
  border: 1px solid #666666;
  height: 70px;
  line-height: 70px;
  width: 100%;
  color: #000000;
  height: 70px;
  padding: 0 40px 0 15px;
  background: url(https://glasgowvirtualoffices.co.uk/wp-content/themes/virtually/css/../images/svg/arrow-down-select.svg) no-repeat right 25px center;
  background-size: 18px auto;
}
@media (min-width: 1280px) {
  .nf-form-cont form .listselect-container select {
    font-size: calc(24 / 1920 * 100vw);
  }
}
@media (min-width: 2560px) {
  .nf-form-cont form .listselect-container select {
    font-size: 32px;
  }
}
.nf-form-cont form textarea:focus, .nf-form-cont form input:focus, .nf-form-cont form select:focus {
  outline: none;
  border-color: #32EB96;
}
.nf-form-cont form label {
  position: absolute;
  z-index: 2;
  padding-left: 20px;
  line-height: 70px;
  font-weight: normal;
  transition: transform 0.3s, color 0.3s;
  color: #707070;
}
.nf-form-cont form label.focused {
  transform: scale(0.8) translate(-12%, -30%);
  color: #707070;
}
.nf-form-cont form .list-select-wrap label,
.nf-form-cont form .list-checkbox-wrap label,
.nf-form-cont form .list-radio-wrap label,
.nf-form-cont form .list-multiselect-wrap label,
.nf-form-cont form .listimage-wrap label,
.nf-form-cont form .checkbox-wrap label {
  position: relative;
  padding-left: 0;
  line-height: 20px;
}
.nf-form-cont form .list-select-wrap label.focused,
.nf-form-cont form .list-checkbox-wrap label.focused,
.nf-form-cont form .list-radio-wrap label.focused,
.nf-form-cont form .list-multiselect-wrap label.focused,
.nf-form-cont form .listimage-wrap label.focused,
.nf-form-cont form .checkbox-wrap label.focused {
  transform: scale(1) translate(0);
  color: #000000;
}

.nf-form-title {
  display: none !important;
}

.nf-after-field .nf-error-msg, .nf-after-form-content .nf-error-msg {
  color: #B54A4A;
  font-size: 16px;
  font-size: 1rem;
  line-height: 22.4px;
  line-height: 1.4;
}

.nf-form-fields-required {
  font-size: 16px;
  font-size: 1rem;
  line-height: 22.4px;
  line-height: 1.4;
  margin-bottom: var(--mb)/2;
  display: none;
}

.nf-form-title {
  display: block;
  margin-bottom: calc(0.5 * var(--mb));
}

.grecaptcha-badge {
  left: calc(50% - 128px) !important;
  bottom: -var(--mb) !important;
  position: relative !important;
  box-shadow: none !important;
}

@media (max-width: 678px) {
  .nf-form-cont {
    padding-top: 0px;
  }
  .nf-field {
    margin-bottom: 30px;
  }
  .nf-form-title {
    margin-bottom: 30px;
  }
}
.flatpickr-calendar {
  font-family: "Source Sans Pro", sans-serif;
}

.wp-caption-text, .gallery-caption {
  font-size: 16px;
  font-size: 1rem;
  line-height: 22.4px;
  line-height: 1.4;
}

.bypostauthor {
  font-size: 16px;
  font-size: 1rem;
  line-height: 22.4px;
  line-height: 1.4;
}

.alignright {
  float: right;
  margin-left: 2%;
  max-width: calc(100vw - 70px);
  height: auto;
  width: 49% !important;
}
.alignright img {
  width: 100%;
  height: auto;
}

.alignleft {
  float: left;
  margin-right: 2%;
  width: 49% !important;
  height: auto;
}
.alignleft img {
  width: 100%;
  height: auto;
}
.alignleft:first-of-type {
  margin-left: 0;
}

.alignleft + .alignleft {
  margin-right: 0;
}

.alignleft + .alignleft + h3, .alignleft + .alignleft + p, .alignleft + .alignleft + h2 {
  clear: both;
}

.aligncenter {
  clear: both;
  display: block;
  margin: var(--mb)/4 auto var(--mb) auto;
  max-width: 100%;
}
.aligncenter img {
  width: 100%;
  height: auto;
}

img.aligncenter {
  width: 100%;
  height: auto;
}

.alignnone {
  width: 100% !important;
  margin: calc(3 * var(--mb)) 0;
  max-width: 100%;
}
.alignnone img {
  width: 100%;
  height: auto;
}

img.alignnone {
  width: 100%;
  height: auto;
}

.wp-block-image {
  margin-bottom: var(--mb);
}
.wp-block-image figcaption {
  font-style: italic;
  margin-top: 0;
  line-height: 2rem;
  text-align: left;
  padding-left: 15px;
  padding-right: 15px;
}

/* WP admin bar */
#wpadminbar {
  opacity: 0;
  -webkit-transition: opacity 0.5s;
  -moz-transition: opacity 0.5s;
  -o-transition: opacity 0.5s;
  transition: opacity 0.5s;
}
#wpadminbar:hover {
  opacity: 1;
}

.logo {
  display: block;
  z-index: 2;
  transition: opacity 0.3s;
}
.logo img {
  width: 100%;
  height: auto;
}

.site-header {
  position: relative;
  width: 100%;
  z-index: 100;
}
.site-header .menu-item-has-children {
  position: relative;
}
.site-header .menu-item-has-children .dropdown-wrapper {
  padding-right: 35px;
  position: relative;
}
.site-header .menu-item-has-children span {
  position: absolute;
  right: 0;
  top: 0;
  height: 100%;
  width: 30px;
  background-image: url(https://glasgowvirtualoffices.co.uk/wp-content/themes/virtually/css/../images/svg/arrow-dropdown.svg);
  background-repeat: no-repeat;
  background-position: 50% 50%;
  background-size: 40%;
  transform-origin: center;
  transition: transform 0.3s;
  -webkit-animation-duration: 0.2s;
  animation-duration: 0.2s;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
  animation-delay: 0.3s;
  -webkit-animation-delay: 0.3s;
  animation-timing-function: linear;
  -webkit-animation-timing-function: linear;
  -webkit-animation-name: fadeInKs;
  animation-name: fadeInKs;
}

.main-nav {
  transition: opacity 0.3s;
}

.home .logo {
  opacity: 0;
}

.home .show-logo {
  opacity: 1;
}

/* -----------------------------------------------------------------------------------------------------------

												 DESKTOP 

------------------------------------------------------------------------------------------------------------- */
@media (min-width: 990px) {
  .menu-button {
    right: 30px;
    top: calc(50% - 35px);
    z-index: 5;
  }
  .site-header {
    background-color: #32EB96;
    position: fixed;
    top: 0;
    height: 105px;
  }
  .site-header .content {
    padding-left: 40px;
    padding-right: 40px;
  }
  .site-header .logo {
    width: 62px;
    position: absolute;
    margin-top: 15px;
  }
  .site-header .main-nav {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    width: 100%;
    height: 105px;
    position: relative;
    font-weight: bold;
    padding-left: 100px;
  }
  .site-header .main-nav .menu-item-has-children {
    padding-right: 35px;
  }
  .site-header .main-nav .menu-item-has-children .dropdown-wrapper {
    margin-right: -35px;
  }
  .site-header .main-nav li {
    position: relative;
    line-height: 30px;
  }
  .site-header .main-nav > li + li {
    margin-left: 50px;
  }
  .site-header .main-nav .sub-menu {
    position: absolute;
    background-color: white;
    font-weight: normal;
    font-size: 20px;
    font-size: 1.25rem;
    line-height: 28px;
    line-height: 1.4;
    padding: 20px 20px;
    border-radius: 10px;
    filter: drop-shadow(0px -3px 5px rgba(0, 0, 0, 0.3));
    transform: translateY(0px);
    opacity: 0;
    pointer-events: none;
    transition: transform 0.3s, opacity 0.3s;
    height: auto !important;
  }
  .site-header .main-nav .sub-menu a:hover {
    color: #5538E1;
  }
  .site-header .main-nav .sub-menu a {
    display: block;
    white-space: nowrap;
    padding: 3px 0;
  }
  .site-header .main-nav .sub-menu::before {
    content: "";
    width: 10px;
    height: 10px;
    position: absolute;
    display: block;
    top: -5px;
    left: calc(50% - 5px);
    background-color: white;
    transform: rotate(45deg);
  }
  .site-header .side-nav {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    overflow: hidden;
    opacity: 0;
    height: 0vh;
    transform: scale(0.95);
    transition: opacity 0.3s, transform 0.3s, height 0s 0.3s;
    background-color: #B167C3;
    display: flex;
    align-items: center;
    flex-direction: column;
    justify-content: center;
  }
  .site-header .side-nav ul {
    font-weight: bold;
    line-height: 1em;
    font-family: "Source Serif Pro", serif;
    font-size: 28px;
    margin-bottom: var(--mb);
    font-weight: bold;
    padding: 3vw 0;
    line-height: 9vh;
    display: flex;
    align-items: center;
    flex-direction: column;
    justify-content: center;
  }
}
@media (min-width: 990px) and (min-width: 1033.8461538462px) {
  .site-header .side-nav ul {
    font-size: calc(52 / 1920 * 100vw);
  }
}
@media (min-width: 990px) and (min-width: 1920px) {
  .site-header .side-nav ul {
    font-size: 52px;
  }
}
@media (min-width: 990px) {
  .site-header .side-nav .menu-item-has-children {
    position: relative;
  }
  .site-header .side-nav .menu-item-has-children .dropdown-wrapper {
    padding-right: 70px;
  }
  .site-header .side-nav .menu-item-has-children span {
    width: 70px;
  }
}
@media (min-width: 990px) {
  .site-header .side-nav .sub-menu {
    opacity: 0;
    pointer-events: none;
    height: 0px;
    overflow: hidden;
    padding: 0;
    margin: 0;
    transition: height 0.3s;
    font-size: 22px;
    line-height: 1.2;
  }
}
@media (min-width: 990px) and (min-width: 1242.3529411765px) {
  .site-header .side-nav .sub-menu {
    font-size: calc(34 / 1920 * 100vw);
  }
}
@media (min-width: 990px) and (min-width: 2936.4705882353px) {
  .site-header .side-nav .sub-menu {
    font-size: 52px;
  }
}
@media (min-width: 990px) {
  .site-header .side-nav .sub-menu a {
    display: block;
    padding: 5px 0;
  }
}
@media (min-width: 990px) {
  .side-nav .show-dropdown + .sub-menu {
    opacity: 1;
    height: auto;
    pointer-events: all;
  }
  .side-nav .show-dropdown span {
    transform: rotate(180deg);
  }
}
@media (min-width: 990px) {
  .main-nav .show-dropdown + .sub-menu {
    opacity: 1;
    height: auto !important;
    pointer-events: all;
    transform: translateY(10px);
  }
  .main-nav .show-dropdown span {
    transform: rotate(180deg);
  }
}
@media (min-width: 990px) {
  .menu-visible {
    overflow: hidden;
  }
}
@media (min-width: 990px) {
  .menu-visible .site-header .side-nav {
    opacity: 1;
    pointer-events: all;
    overflow: scroll;
    height: 100vh;
    transform: scale(1);
    transition: opacity 0.3s, transform 0.3s, height 0s;
    z-index: 4;
  }
}
@media (min-width: 990px) and (min-width: 1280px) {
  .site-header .main-nav {
    justify-content: center;
    padding-left: 0;
  }
}
@media (min-width: 1660px) {
  .site-header .menu-button {
    right: 50px;
  }
  .site-header .content {
    padding-left: 70px;
    padding-right: 70px;
  }
}
/* -----------------------------------------------------------------------------------------------------------

												!Mobile

------------------------------------------------------------------------------------------------------------- */
@media (max-width: 990px) {
  .site-header {
    background-color: #32EB96;
    height: 85px;
    position: fixed;
  }
  .site-header .logo {
    width: 50px;
    position: absolute;
    margin-top: 10px;
  }
  .site-header .desktop-only {
    display: none;
  }
  .site-header .menu-button {
    right: 0;
    top: 7px;
    pointer-events: all;
  }
  .site-header .main-nav, .site-header .side-nav .nav-list {
    font-weight: bold;
    text-align: center;
  }
  .site-header .main-nav li, .site-header .side-nav .nav-list li {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    width: 80vw;
  }
  .site-header .main-nav {
    font-size: 28px;
    font-size: 1.75rem;
    line-height: 39.2px;
    line-height: 1.4;
    margin-bottom: 30px;
  }
  .site-header .main-nav li {
    margin: 5px 0;
  }
  .site-header .main-nav .menu-item-has-children span {
    width: 35px;
  }
  .site-header .main-nav .menu-item-has-children .dropdown-wrapper {
    padding-right: 38px;
  }
  .site-header .side-nav {
    font-size: 20px;
    font-size: 1.25rem;
    line-height: 28px;
    line-height: 1.4;
  }
  .site-header .side-nav li {
    margin: 5px 0;
  }
  .site-header .side-nav .menu-item-has-children .dropdown-wrapper {
    padding-right: 30px;
  }
  .site-header .show-dropdown + .sub-menu {
    opacity: 1;
    pointer-events: all;
  }
  .site-header .show-dropdown span {
    transform: rotate(180deg);
  }
  .site-header .sub-menu {
    text-align: center;
    border-top: 1px solid rgba(0, 0, 0, 0);
    border-bottom: 1px solid rgba(0, 0, 0, 0);
    overflow: hidden;
    width: 100%;
    transition: height 0.3s, border-color 0.3s;
    display: flex;
    flex-direction: column;
    justify-content: center;
    display: block;
    font-family: "Source Sans Pro", serif;
    font-weight: normal;
    font-size: 16px;
    line-height: 1.3;
  }
}
@media (max-width: 990px) and (min-width: 1280px) {
  .site-header .sub-menu {
    font-size: calc(24 / 1920 * 100vw);
  }
}
@media (max-width: 990px) and (min-width: 2560px) {
  .site-header .sub-menu {
    font-size: 32px;
  }
}
@media (max-width: 990px) {
  .site-header .sub-menu a {
    display: block;
    padding: 7px 0;
  }
}
@media (max-width: 990px) {
  .site-header .sub-menu li {
    margin: 0;
  }
}
@media (max-width: 990px) {
  .site-header .site-navigation {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    display: flex;
    align-items: center;
    flex-direction: column;
    justify-content: flex-start;
    padding-top: 15vh;
    padding-bottom: 10vh;
    overflow: scroll;
    line-height: 2em;
    opacity: 0;
    height: 0vh;
    transform: scale(0.95);
    transition: opacity 0.3s, transform 0.3s, height 0s 0.3s;
    background-color: #B167C3;
    pointer-events: none;
  }
}
@media (max-width: 990px) {
  .menu-visible {
    overflow: hidden;
  }
  .menu-visible .site-header .site-navigation {
    opacity: 1;
    pointer-events: all;
    height: 100vh;
    transform: scale(1);
    transition: opacity 0.3s, transform 0.3s, height 0s;
  }
}
.site-footer {
  background-color: #000000;
  color: white;
  padding-top: 30px;
  padding-bottom: 30px;
}
@media (min-width: 960px) {
  .site-footer {
    padding-top: calc(60 / 1920 * 100vw);
  }
}
@media (min-width: 3840px) {
  .site-footer {
    padding-top: 120px;
  }
}
@media (min-width: 960px) {
  .site-footer {
    padding-bottom: calc(60 / 1920 * 100vw);
  }
}
@media (min-width: 3840px) {
  .site-footer {
    padding-bottom: 120px;
  }
}
.site-footer h4 {
  font-family: "Source Sans Pro", sans-serif;
  font-size: 16px;
  text-transform: uppercase;
  margin-bottom: 10px;
}
@media (min-width: 1706.6666666667px) {
  .site-footer h4 {
    font-size: calc(18 / 1920 * 100vw);
  }
}
@media (min-width: 2986.6666666667px) {
  .site-footer h4 {
    font-size: 28px;
  }
}
.site-footer .column a {
  color: white;
  display: block;
  font-size: 16px;
  font-size: 1rem;
  line-height: 22.4px;
  line-height: 1.4;
  line-height: 1.2rem;
}
.site-footer ul a {
  margin: 6px 0;
  font-family: "Source Sans Pro", sans-serif;
}
.site-footer .addressses {
  display: flex;
}
.site-footer .addressses address {
  font-style: normal;
  font-size: 16px;
  font-size: 1rem;
  line-height: 22.4px;
  line-height: 1.4;
  font-family: "Source Sans Pro", sans-serif;
  width: 50%;
}
.site-footer .addressses address:first-line {
  text-transform: uppercase;
  font-weight: bold;
}
.site-footer .contact-details {
  margin-bottom: 10px;
}
.site-footer .contact-details a {
  line-height: 1rem;
}
.site-footer .col-one ul, .site-footer .col-two ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.site-footer .col-one ul li, .site-footer .col-two ul li {
  width: 48%;
}
.site-footer .terms {
  text-align: center;
  width: 100%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  color: white;
  font-size: 14px;
  font-size: 0.875rem;
  line-height: 19.6px;
  line-height: 1.4;
}
.site-footer .terms a {
  color: white;
}
.site-footer .terms ul {
  display: flex;
  margin-bottom: 5px;
}
.site-footer .terms li {
  margin: 0 5px 0 0;
}
.site-footer .terms li::after {
  content: "|";
  margin-left: 5px;
}
.site-footer .terms li:last-child::after {
  display: none;
}
.site-footer .social-nav {
  display: flex;
}
.site-footer .social-nav li {
  margin-right: 5%;
}
.site-footer .social-nav a {
  display: block;
  width: 32px;
  height: 32px;
  font-size: 0;
  color: transparent;
}
.site-footer .social-nav a:hover {
  opacity: 0.6;
}
.site-footer .social-nav .facebook a {
  background-image: url(https://glasgowvirtualoffices.co.uk/wp-content/themes/virtually/css/../images/social/square-facebook.svg);
}
.site-footer .social-nav .linkedin a {
  background-image: url(https://glasgowvirtualoffices.co.uk/wp-content/themes/virtually/css/../images/social/square-linkedin.svg);
}
.site-footer .social-nav .instagram a {
  background-image: url(https://glasgowvirtualoffices.co.uk/wp-content/themes/virtually/css/../images/social/square-instagram.svg);
}
.site-footer .footer-logos {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
}
.site-footer .footer-logos .image {
  width: 8%;
  min-width: 100px;
  overflow: hidden;
  position: relative;
}
.site-footer .footer-logos .image img {
  position: absolute;
  min-width: 100%;
  min-height: 100%;
  object-fit: cover;
  top: 50%;
  left: 50%;
  -ms-transform: translate(-50%, -50%); /* IE 9 */
  -webkit-transform: translate(-50%, -50%); /* Chrome, Safari, Opera */
  transform: translate(-50%, -50%);
}
.site-footer .footer-logos .image:after {
  content: "";
  display: block;
  padding-top: 100%;
  width: 0;
  float: left;
  position: relative;
}
.site-footer .footer-logos .image img {
  object-fit: contain;
}
@media (max-width: 1000px) {
  .site-footer .column {
    margin-bottom: 20px;
  }
  .site-footer .contact-details {
    margin-bottom: 20px;
  }
}
@media (min-width: 678px) {
  .site-footer .column a {
    font-size: 18px;
    font-size: 1.125rem;
    line-height: 25.2px;
    line-height: 1.4;
    line-height: 1.2rem;
  }
  .site-footer .terms {
    font-size: 16px;
    font-size: 1rem;
    line-height: 22.4px;
    line-height: 1.4;
    flex-direction: row;
    margin-top: 20px;
  }
  .site-footer .terms ul {
    margin-bottom: 0;
    margin-right: 2%;
  }
}
@media (min-width: 1000px) {
  .site-footer .content {
    display: flex;
    flex-wrap: wrap;
  }
  .site-footer .column {
    width: 23.5%;
    margin-right: 2%;
  }
  .site-footer .column:nth-child(4n+4) {
    margin-right: 0;
  }
  .site-footer ul a {
    margin: 8px 0;
  }
  .site-footer .col-one ul li {
    width: 100%;
  }
}

.header--home {
  background-color: #32EB96;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  min-height: 46vw;
}
.header--home .copy {
  text-align: center;
}
.header--home .image {
  width: 15%;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 3vw;
}
.header--home p {
  font-size: 22px;
  line-height: 1.2;
}
@media (min-width: 1242.3529411765px) {
  .header--home p {
    font-size: calc(34 / 1920 * 100vw);
  }
}
@media (min-width: 2936.4705882353px) {
  .header--home p {
    font-size: 52px;
  }
}
@media (max-width: 375px) {
  .header--home h1 {
    font-size: 32px;
    font-size: 2rem;
    line-height: 44.8px;
    line-height: 1.4;
    line-height: 1.1;
  }
  .header--home .image {
    min-width: 180px;
  }
}
@media (max-width: 678px) {
  .header--home {
    min-height: 100vh;
    padding-bottom: 20px;
  }
  .header--home .image {
    margin-bottom: 70px;
  }
  .header--home .cta {
    margin-top: 0;
  }
}
@media (min-width: 678px) {
  .header--home {
    height: 100vh;
    min-height: 67vw;
  }
}
@media (min-width: 1000px) {
  .header--home {
    min-height: 56vw;
  }
}
@media (min-width: 1280px) {
  .header--home {
    min-height: 56vw;
  }
}
@media (orientation: portrait) {
  .header--home {
    max-height: 80vh;
  }
  .header--home .image {
    min-width: 220px;
  }
}
@media (max-width: 678px) and (orientation: portrait) {
  .header--home .image {
    min-width: 150px;
    margin-bottom: 40px;
  }
}

.header {
  display: flex;
}
.header.dark .content {
  color: white;
}
.header.dark .content .cta {
  background-color: #DEDEDE;
  color: #5538E1;
  background-color: white;
  color: #000000;
}
.header.dark .content .cta:hover {
  background-color: #ababab;
}
.header .kicker {
  font-weight: bold;
  font-family: "Source Serif Pro", serif;
}
.header .kicker span {
  font-weight: normal;
}
.header .content {
  padding-top: 15vw;
  padding-bottom: 50px;
}
@media (max-width: 678px) {
  .header .content {
    padding-top: 130px;
  }
}

.header--none {
  padding-top: 105px;
}
@media (max-width: 990px) {
  .header--none {
    padding-top: 85px;
  }
}

.header--home .content {
  padding-top: 15vw;
  padding-bottom: 10vw;
}
@media (min-width: 1000px) {
  .header--home .content {
    padding-top: 180px;
  }
}
@media (min-width: 1280px) {
  .header--home .content {
    padding-top: 15vw;
    padding-bottom: 15vw;
  }
}
@media (max-width: 678px) and (orientation: portrait) {
  .header--home .content {
    padding-top: 120px;
  }
}

.header--landing {
  background-color: #32EB96;
  min-height: 40vw;
  flex-direction: column;
  align-items: center;
  text-align: center;
  justify-content: flex-start;
}
.header--landing .cta {
  margin-top: var(--mb);
}
.header--landing .content {
  -webkit-animation-duration: 0.3s;
  animation-duration: 0.3s;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
  animation-delay: 0.3s;
  -webkit-animation-delay: 0.3s;
  animation-timing-function: linear;
  -webkit-animation-timing-function: linear;
  -webkit-animation-name: fadeInKs;
  animation-name: fadeInKs;
}
.header--landing .copy {
  width: 70%;
  margin-left: auto;
  margin-right: auto;
}
@media (max-width: 678px) {
  .header--landing .copy {
    width: 100%;
  }
}
@media (min-width: 678px) {
  .header--landing {
    padding-bottom: 10vw;
  }
  .header--landing .content {
    padding-top: 14vw;
  }
}
@media (min-width: 1280px) {
  .header--landing .copy {
    width: 50%;
  }
}

@media (min-width: 1000px) {
  .header--landing .kicker, .header--landing h1,
.header--image-full .kicker,
.header--image-full h1 {
    margin-bottom: calc(1 *var(--mb));
  }
  .header--landing h1,
.header--image-full h1 {
    margin-bottom: calc(1.2 *var(--mb));
  }
}
@media (min-width: 1280px) {
  .header--landing .copy,
.header--image-full .copy {
    width: 50%;
  }
}

.header--image-full {
  min-height: 80vw;
  flex-direction: column;
  align-items: center;
  text-align: center;
  position: relative;
  justify-content: flex-start;
  margin-bottom: 0;
}
.header--image-full .copy {
  width: 70%;
  margin-left: auto;
  margin-right: auto;
}
.header--image-full .content {
  -webkit-animation-duration: 0.3s;
  animation-duration: 0.3s;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
  animation-delay: 0.3s;
  -webkit-animation-delay: 0.3s;
  animation-timing-function: linear;
  -webkit-animation-timing-function: linear;
  -webkit-animation-name: fadeInKs;
  animation-name: fadeInKs;
}
.header--image-full .cta {
  margin-top: var(--mb);
  -webkit-animation-duration: 0.6s;
  animation-duration: 0.6s;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
  animation-delay: 0.6s;
  -webkit-animation-delay: 0.6s;
  animation-timing-function: linear;
  -webkit-animation-timing-function: linear;
  -webkit-animation-name: fadeInKs;
  animation-name: fadeInKs;
}
.header--image-full .cta:hover {
  background-color: #32EB96 !important;
  filter: none;
}
.header--image-full .image-bg {
  position: absolute;
  width: 100%;
  height: 100%;
  overflow: hidden;
  z-index: -1;
  background-color: #DEDEDE;
}
.header--image-full .image-bg img {
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  object-fit: cover;
  object-position: 50% 100%;
}
.header--image-full .image-bg img.landscape {
  height: 100%;
  width: 100%;
}
.header--image-full .image-bg img.portrait {
  height: 100%;
  width: 100%;
}
@media (max-width: 678px) {
  .header--image-full {
    min-height: 80vh;
  }
  .header--image-full .copy {
    width: 100%;
  }
}
@media (min-width: 678px) {
  .header--image-full {
    min-height: 62vw;
  }
}
@media (min-width: 1000px) {
  .header--image-full {
    min-height: 56vw;
  }
  .header--image-full .copy {
    width: 50%;
  }
}
@media (min-width: 1280px) {
  .header--image-full .copy {
    width: 40%;
  }
}

.header--image-contained {
  text-align: center;
}
.header--image-contained .kicker {
  color: #32EB96;
}
.header--image-contained h1 {
  margin-bottom: calc(.5 * var(--mb));
}
.header--image-contained .copy {
  width: 70%;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: var(--mb);
}
.header--image-contained .copy + .cta {
  margin-top: 0;
  margin-bottom: var(--mb);
}
.header--image-contained .image {
  width: 100%;
  overflow: hidden;
  position: relative;
}
.header--image-contained .image img {
  position: absolute;
  min-width: 100%;
  min-height: 100%;
  object-fit: cover;
  top: 50%;
  left: 50%;
  -ms-transform: translate(-50%, -50%); /* IE 9 */
  -webkit-transform: translate(-50%, -50%); /* Chrome, Safari, Opera */
  transform: translate(-50%, -50%);
}
.header--image-contained .image:after {
  content: "";
  display: block;
  padding-top: 50%;
  width: 0;
  float: left;
  position: relative;
}
@media (max-width: 678px) {
  .header--image-contained .copy {
    width: 100%;
  }
  .header--image-contained + .sections > .white-bg:first-child {
    padding-top: 0;
  }
}

.header--basic {
  min-height: 40vw;
}
.header--basic .copy, .header--basic h1 {
  width: 50%;
}
.header--basic .copy {
  font-size: 22px;
  line-height: 1.2;
}
@media (min-width: 1242.3529411765px) {
  .header--basic .copy {
    font-size: calc(34 / 1920 * 100vw);
  }
}
@media (min-width: 2936.4705882353px) {
  .header--basic .copy {
    font-size: 52px;
  }
}
.header--basic .kicker {
  color: #32EB96;
}
.header--basic .image {
  width: 40%;
  overflow: hidden;
  position: relative;
  position: absolute;
  top: 120px;
  right: var(--outer);
}
.header--basic .image img {
  position: absolute;
  min-width: 100%;
  min-height: 100%;
  object-fit: cover;
  top: 50%;
  left: 50%;
  -ms-transform: translate(-50%, -50%); /* IE 9 */
  -webkit-transform: translate(-50%, -50%); /* Chrome, Safari, Opera */
  transform: translate(-50%, -50%);
}
.header--basic .image:after {
  content: "";
  display: block;
  padding-top: 90%;
  width: 0;
  float: left;
  position: relative;
}
.header--basic .image img {
  object-fit: contain;
  width: 100%;
  height: 100%;
}
@media (max-width: 678px) {
  .header--basic .copy, .header--basic h1 {
    width: 100%;
    text-align: center;
  }
  .header--basic .kicker {
    text-align: center;
  }
  .header--basic .image {
    position: relative;
    top: 0;
    width: 80%;
    margin: 20px auto;
  }
  .header--basic + .sections > .white-bg:first-child {
    padding-top: 0;
  }
}

.header--default {
  text-align: center;
}
.header--default .kicker {
  color: #32EB96;
}
.header--default + .sections > .child-content {
  padding-top: 0;
}

.header--post .image {
  overflow: hidden;
  position: relative;
}
.header--post .image img {
  position: absolute;
  min-width: 100%;
  min-height: 100%;
  object-fit: cover;
  top: 50%;
  left: 50%;
  -ms-transform: translate(-50%, -50%); /* IE 9 */
  -webkit-transform: translate(-50%, -50%); /* Chrome, Safari, Opera */
  transform: translate(-50%, -50%);
}
.header--post .image:after {
  content: "";
  display: block;
  padding-top: 66%;
  width: 0;
  float: left;
  position: relative;
}
.header--post .image.illustration img {
  object-fit: contain;
  width: 100%;
  height: 100%;
  padding: 3%;
}
.header--post .image.illustration::before {
  content: "";
  z-index: -1;
  background-color: var(--bg);
  position: absolute;
  width: 100%;
  height: 100%;
  bottom: 0;
  left: 0;
}
@media (max-width: 678px) {
  .header--post .content {
    padding-bottom: 0;
  }
}
@media (min-width: 678px) {
  .header--post .image, .header--post h1 {
    width: 75%;
  }
}

.video-holder iframe, .video-poster iframe, .modal-video-holder iframe {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 50%;
  left: 50%;
  opacity: 0;
  transform: translate(-50%, -50%);
  transition: opacity 1s;
  background-color: transparent;
}
.video-holder iframe[data-ready=true], .video-poster iframe[data-ready=true], .modal-video-holder iframe[data-ready=true] {
  opacity: 1;
  visibility: visible;
}
.video-holder .close-video, .video-poster .close-video, .modal-video-holder .close-video {
  position: absolute;
  width: 40px;
  height: 40px;
  background-color: #32EB96;
  z-index: 10;
  right: 5px;
  top: 5px;
  border-radius: 5px;
  background: #32EB96 url(https://glasgowvirtualoffices.co.uk/wp-content/themes/virtually/css/../images/svg/cross.svg) no-repeat center;
  background-size: 20px;
  font-size: 0;
  color: transparent;
}
.video-holder .close-video:hover, .video-poster .close-video:hover, .modal-video-holder .close-video:hover {
  cursor: pointer;
  opacity: 0.8;
}

.modal-video-holder {
  overflow: hidden;
  position: relative;
  width: 80%;
  background-color: black;
  box-shadow: 0px 3px 12px 0px rgba(0, 0, 0, 0.4);
}
.modal-video-holder img {
  position: absolute;
  min-width: 100%;
  min-height: 100%;
  object-fit: cover;
  top: 50%;
  left: 50%;
  -ms-transform: translate(-50%, -50%); /* IE 9 */
  -webkit-transform: translate(-50%, -50%); /* Chrome, Safari, Opera */
  transform: translate(-50%, -50%);
}
.modal-video-holder:after {
  content: "";
  display: block;
  padding-top: var(--rat);
  width: 0;
  float: left;
  position: relative;
}

.video-holder, .video-poster, .audio-holder {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 0;
  overflow: hidden;
  transition: opacity 1s 0s;
  overflow: hidden;
  position: relative;
  background-size: cover;
}
.video-holder img, .video-poster img, .audio-holder img {
  position: absolute;
  min-width: 100%;
  min-height: 100%;
  object-fit: cover;
  top: 50%;
  left: 50%;
  -ms-transform: translate(-50%, -50%); /* IE 9 */
  -webkit-transform: translate(-50%, -50%); /* Chrome, Safari, Opera */
  transform: translate(-50%, -50%);
}
.video-holder:after, .video-poster:after, .audio-holder:after {
  content: "";
  display: block;
  padding-top: var(--rat);
  width: 0;
  float: left;
  position: relative;
}
.video-holder .play-video, .video-holder .play-audio, .video-poster .play-video, .video-poster .play-audio, .audio-holder .play-video, .audio-holder .play-audio {
  position: absolute;
  width: 18%;
  display: block;
  max-width: 200px;
  border-radius: 50%;
  background-color: #5538E1;
  z-index: 10;
  left: 50%;
  top: 50%;
  opacity: 0.9;
  transform: translate(-50%, -50%);
  background-image: url(https://glasgowvirtualoffices.co.uk/wp-content/themes/virtually/css/../images/svg/play.svg);
  background-repeat: no-repeat;
  background-position: 56% 50%;
  background-size: 30%;
  transition: opacity 0.3s, background-color 0.3s;
  box-shadow: 0px 3px 16px 0px rgba(0, 0, 0, 0.4);
}
.video-holder .play-video::after, .video-holder .play-audio::after, .video-poster .play-video::after, .video-poster .play-audio::after, .audio-holder .play-video::after, .audio-holder .play-audio::after {
  content: "";
  display: block;
  padding-top: 100%;
}
.video-holder .play-video:hover, .video-holder .play-video:active, .video-holder .play-audio:hover, .video-holder .play-audio:active, .video-poster .play-video:hover, .video-poster .play-video:active, .video-poster .play-audio:hover, .video-poster .play-audio:active, .audio-holder .play-video:hover, .audio-holder .play-video:active, .audio-holder .play-audio:hover, .audio-holder .play-audio:active {
  opacity: 1;
  background-color: #32EB96;
  cursor: pointer;
}
.video-holder .play-audio, .video-poster .play-audio, .audio-holder .play-audio {
  background-image: url(https://glasgowvirtualoffices.co.uk/wp-content/themes/virtually/css/../images/svg/audio.svg);
  background-size: 35%;
  background-position: 50% 50%;
  left: 5%;
  top: 10%;
  transform: translate(0%, 0%);
}
.video-holder.show-video .play-video, .video-poster.show-video .play-video, .audio-holder.show-video .play-video {
  display: none;
}
.video-holder.show-video .close-video, .video-poster.show-video .close-video, .audio-holder.show-video .close-video {
  display: block;
  -webkit-animation-duration: 0.5s;
  animation-duration: 0.5s;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
  animation-delay: 0.3s;
  -webkit-animation-delay: 0.3s;
  animation-timing-function: linear;
  -webkit-animation-timing-function: linear;
  -webkit-animation-name: fadeInKs;
  animation-name: fadeInKs;
  pointer-events: all;
}
.video-modal {
  position: fixed;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: 320;
  align-items: center;
  justify-content: center;
  opacity: 0;
  display: none;
}
.video-modal .shadow-close-video {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: 0;
  background-color: rgba(0, 0, 0, 0.9);
}
.video-modal .shadow-close-video:hover {
  cursor: pointer;
}
.video-modal iframe {
  z-index: 1;
}
.video-modal .close-video {
  position: absolute;
  width: 40px;
  height: 40px;
  z-index: 10;
  right: 2vw;
  top: 2vw;
  border-radius: 5px;
  background: #32EB96 url(https://glasgowvirtualoffices.co.uk/wp-content/themes/virtually/css/../images/svg/cross.svg) no-repeat center;
  background-size: 20px;
}
.video-modal .close-video:hover {
  cursor: pointer;
  opacity: 0.8;
}
@media (max-width: 678px) {
  .video-modal .modal-video-holder {
    width: 100%;
  }
}

.video-playing, .audio-playing {
  overflow: hidden;
}
.video-playing .video-modal, .audio-playing .video-modal {
  display: flex;
  -webkit-animation-duration: 0.2s;
  animation-duration: 0.2s;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
  animation-delay: 0;
  -webkit-animation-delay: 0;
  animation-timing-function: linear;
  -webkit-animation-timing-function: linear;
  -webkit-animation-name: fadeInKs;
  animation-name: fadeInKs;
}

.audio-playing .modal-video-holder iframe {
  height: auto;
  opacity: 1;
  position: relative;
  left: auto;
  top: auto;
  transform: translate(0, 0);
}
.audio-playing .modal-video-holder {
  padding: 20px;
  border-radius: 10px;
}
.audio-playing .modal-video-holder::after {
  padding-top: 0%;
}

.video-holder .close-video {
  opacity: 0;
  pointer-events: none;
}

.touch .close-video {
  display: none !important;
}

/**
 * Swiper 6.2.0
 * Most modern mobile touch slider and framework with hardware accelerated transitions
 * https://swiperjs.com
 *
 * Copyright 2014-2020 Vladimir Kharlampidi
 *
 * Released under the MIT License
 *
 * Released on: September 4, 2020
 */
@font-face {
  font-family: "swiper-icons";
  src: url("data:application/font-woff;charset=utf-8;base64, d09GRgABAAAAAAZgABAAAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAAAGRAAAABoAAAAci6qHkUdERUYAAAWgAAAAIwAAACQAYABXR1BPUwAABhQAAAAuAAAANuAY7+xHU1VCAAAFxAAAAFAAAABm2fPczU9TLzIAAAHcAAAASgAAAGBP9V5RY21hcAAAAkQAAACIAAABYt6F0cBjdnQgAAACzAAAAAQAAAAEABEBRGdhc3AAAAWYAAAACAAAAAj//wADZ2x5ZgAAAywAAADMAAAD2MHtryVoZWFkAAABbAAAADAAAAA2E2+eoWhoZWEAAAGcAAAAHwAAACQC9gDzaG10eAAAAigAAAAZAAAArgJkABFsb2NhAAAC0AAAAFoAAABaFQAUGG1heHAAAAG8AAAAHwAAACAAcABAbmFtZQAAA/gAAAE5AAACXvFdBwlwb3N0AAAFNAAAAGIAAACE5s74hXjaY2BkYGAAYpf5Hu/j+W2+MnAzMYDAzaX6QjD6/4//Bxj5GA8AuRwMYGkAPywL13jaY2BkYGA88P8Agx4j+/8fQDYfA1AEBWgDAIB2BOoAeNpjYGRgYNBh4GdgYgABEMnIABJzYNADCQAACWgAsQB42mNgYfzCOIGBlYGB0YcxjYGBwR1Kf2WQZGhhYGBiYGVmgAFGBiQQkOaawtDAoMBQxXjg/wEGPcYDDA4wNUA2CCgwsAAAO4EL6gAAeNpj2M0gyAACqxgGNWBkZ2D4/wMA+xkDdgAAAHjaY2BgYGaAYBkGRgYQiAHyGMF8FgYHIM3DwMHABGQrMOgyWDLEM1T9/w8UBfEMgLzE////P/5//f/V/xv+r4eaAAeMbAxwIUYmIMHEgKYAYjUcsDAwsLKxc3BycfPw8jEQA/gZBASFhEVExcQlJKWkZWTl5BUUlZRVVNXUNTQZBgMAAMR+E+gAEQFEAAAAKgAqACoANAA+AEgAUgBcAGYAcAB6AIQAjgCYAKIArAC2AMAAygDUAN4A6ADyAPwBBgEQARoBJAEuATgBQgFMAVYBYAFqAXQBfgGIAZIBnAGmAbIBzgHsAAB42u2NMQ6CUAyGW568x9AneYYgm4MJbhKFaExIOAVX8ApewSt4Bic4AfeAid3VOBixDxfPYEza5O+Xfi04YADggiUIULCuEJK8VhO4bSvpdnktHI5QCYtdi2sl8ZnXaHlqUrNKzdKcT8cjlq+rwZSvIVczNiezsfnP/uznmfPFBNODM2K7MTQ45YEAZqGP81AmGGcF3iPqOop0r1SPTaTbVkfUe4HXj97wYE+yNwWYxwWu4v1ugWHgo3S1XdZEVqWM7ET0cfnLGxWfkgR42o2PvWrDMBSFj/IHLaF0zKjRgdiVMwScNRAoWUoH78Y2icB/yIY09An6AH2Bdu/UB+yxopYshQiEvnvu0dURgDt8QeC8PDw7Fpji3fEA4z/PEJ6YOB5hKh4dj3EvXhxPqH/SKUY3rJ7srZ4FZnh1PMAtPhwP6fl2PMJMPDgeQ4rY8YT6Gzao0eAEA409DuggmTnFnOcSCiEiLMgxCiTI6Cq5DZUd3Qmp10vO0LaLTd2cjN4fOumlc7lUYbSQcZFkutRG7g6JKZKy0RmdLY680CDnEJ+UMkpFFe1RN7nxdVpXrC4aTtnaurOnYercZg2YVmLN/d/gczfEimrE/fs/bOuq29Zmn8tloORaXgZgGa78yO9/cnXm2BpaGvq25Dv9S4E9+5SIc9PqupJKhYFSSl47+Qcr1mYNAAAAeNptw0cKwkAAAMDZJA8Q7OUJvkLsPfZ6zFVERPy8qHh2YER+3i/BP83vIBLLySsoKimrqKqpa2hp6+jq6RsYGhmbmJqZSy0sraxtbO3sHRydnEMU4uR6yx7JJXveP7WrDycAAAAAAAH//wACeNpjYGRgYOABYhkgZgJCZgZNBkYGLQZtIJsFLMYAAAw3ALgAeNolizEKgDAQBCchRbC2sFER0YD6qVQiBCv/H9ezGI6Z5XBAw8CBK/m5iQQVauVbXLnOrMZv2oLdKFa8Pjuru2hJzGabmOSLzNMzvutpB3N42mNgZGBg4GKQYzBhYMxJLMlj4GBgAYow/P/PAJJhLM6sSoWKfWCAAwDAjgbRAAB42mNgYGBkAIIbCZo5IPrmUn0hGA0AO8EFTQAA") format("woff");
  font-weight: 400;
  font-style: normal;
}
:root {
  --swiper-theme-color: #007aff;
}

.swiper-container {
  margin-left: auto;
  margin-right: auto;
  position: relative;
  overflow: hidden;
  list-style: none;
  padding: 0;
  /* Fix of Webkit flickering */
  z-index: 1;
}

.swiper-container-vertical > .swiper-wrapper {
  flex-direction: column;
}

.swiper-wrapper {
  position: relative;
  width: 100%;
  height: 100%;
  z-index: 1;
  display: flex;
  transition-property: transform;
  box-sizing: content-box;
}

.swiper-container-android .swiper-slide,
.swiper-wrapper {
  transform: translate3d(0px, 0, 0);
}

.swiper-container-multirow > .swiper-wrapper {
  flex-wrap: wrap;
}

.swiper-container-multirow-column > .swiper-wrapper {
  flex-wrap: wrap;
  flex-direction: column;
}

.swiper-container-free-mode > .swiper-wrapper {
  transition-timing-function: ease-out;
  margin: 0 auto;
}

.swiper-slide {
  flex-shrink: 0;
  width: 100%;
  height: 100%;
  position: relative;
  transition-property: transform;
}

.swiper-slide-invisible-blank {
  visibility: hidden;
}

/* Auto Height */
.swiper-container-autoheight,
.swiper-container-autoheight .swiper-slide {
  height: auto;
}

.swiper-container-autoheight .swiper-wrapper {
  align-items: flex-start;
  transition-property: transform, height;
}

/* 3D Effects */
.swiper-container-3d {
  perspective: 1200px;
}

.swiper-container-3d .swiper-wrapper,
.swiper-container-3d .swiper-slide,
.swiper-container-3d .swiper-slide-shadow-left,
.swiper-container-3d .swiper-slide-shadow-right,
.swiper-container-3d .swiper-slide-shadow-top,
.swiper-container-3d .swiper-slide-shadow-bottom,
.swiper-container-3d .swiper-cube-shadow {
  transform-style: preserve-3d;
}

.swiper-container-3d .swiper-slide-shadow-left,
.swiper-container-3d .swiper-slide-shadow-right,
.swiper-container-3d .swiper-slide-shadow-top,
.swiper-container-3d .swiper-slide-shadow-bottom {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  z-index: 10;
}

.swiper-container-3d .swiper-slide-shadow-left {
  background-image: linear-gradient(to left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}

.swiper-container-3d .swiper-slide-shadow-right {
  background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}

.swiper-container-3d .swiper-slide-shadow-top {
  background-image: linear-gradient(to top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}

.swiper-container-3d .swiper-slide-shadow-bottom {
  background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}

/* CSS Mode */
.swiper-container-css-mode > .swiper-wrapper {
  overflow: auto;
  scrollbar-width: none;
  /* For Firefox */
  -ms-overflow-style: none;
  /* For Internet Explorer and Edge */
}

.swiper-container-css-mode > .swiper-wrapper::-webkit-scrollbar {
  display: none;
}

.swiper-container-css-mode > .swiper-wrapper > .swiper-slide {
  scroll-snap-align: start start;
}

.swiper-container-horizontal.swiper-container-css-mode > .swiper-wrapper {
  scroll-snap-type: x mandatory;
}

.swiper-container-vertical.swiper-container-css-mode > .swiper-wrapper {
  scroll-snap-type: y mandatory;
}

:root {
  --swiper-navigation-size: 62px;
  /*
  --swiper-navigation-color: var(--swiper-theme-color);
  */
}

.swiper-button-prev,
.swiper-button-next {
  z-index: 10;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--swiper-navigation-color, var(--swiper-theme-color));
}

.swiper-button-prev.swiper-button-disabled,
.swiper-button-next.swiper-button-disabled {
  opacity: 0.35;
  cursor: auto;
  pointer-events: none;
}

.swiper-button-prev:after,
.swiper-button-next:after {
  text-transform: none !important;
  letter-spacing: 0;
  text-transform: none;
  font-variant: initial;
  line-height: 1;
}

.swiper-button-prev,
.swiper-container-rtl .swiper-button-next {
  right: auto;
}

.swiper-button-prev:after,
.swiper-container-rtl .swiper-button-next:after {
  content: "";
}

.swiper-button-next,
.swiper-container-rtl .swiper-button-prev {
  left: auto;
}

.swiper-button-next:after,
.swiper-container-rtl .swiper-button-prev:after {
  content: "";
}

.swiper-button-prev.swiper-button-white,
.swiper-button-next.swiper-button-white {
  --swiper-navigation-color: #ffffff;
}

.swiper-button-prev.swiper-button-black,
.swiper-button-next.swiper-button-black {
  --swiper-navigation-color: #000000;
}

.swiper-button-lock {
  display: none;
}

:root {
  /*
  --swiper-pagination-color: var(--swiper-theme-color);
  */
}

.swiper-pagination {
  position: absolute;
  text-align: center;
  transition: 300ms opacity;
  transform: translate3d(0, 0, 0);
  z-index: 10;
}

.swiper-pagination.swiper-pagination-hidden {
  opacity: 0;
}

/* Common Styles */
.swiper-pagination-fraction,
.swiper-pagination-custom,
.swiper-container-horizontal > .swiper-pagination-bullets {
  bottom: 10px;
  left: 0;
  width: 100%;
}

/* Bullets */
.swiper-pagination-bullets-dynamic {
  overflow: hidden;
  font-size: 0;
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  transform: scale(0.33);
  position: relative;
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active {
  transform: scale(1);
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-main {
  transform: scale(1);
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev {
  transform: scale(0.66);
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev-prev {
  transform: scale(0.33);
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next {
  transform: scale(0.66);
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next-next {
  transform: scale(0.33);
}

.swiper-pagination-bullet {
  width: 8px;
  height: 8px;
  display: inline-block;
  border-radius: 100%;
  background: #000;
  opacity: 0.2;
}

button.swiper-pagination-bullet {
  border: none;
  margin: 0;
  padding: 0;
  box-shadow: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

.swiper-pagination-clickable .swiper-pagination-bullet {
  cursor: pointer;
}

.swiper-pagination-bullet-active {
  opacity: 1;
  background: var(--swiper-pagination-color, var(--swiper-theme-color));
}

.swiper-container-vertical > .swiper-pagination-bullets {
  right: 10px;
  top: 50%;
  transform: translate3d(0px, -50%, 0);
}

.swiper-container-vertical > .swiper-pagination-bullets .swiper-pagination-bullet {
  margin: 6px 0;
  display: block;
}

.swiper-container-vertical > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
  top: 50%;
  transform: translateY(-50%);
  width: 8px;
}

.swiper-container-vertical > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  display: inline-block;
  transition: 200ms transform, 200ms top;
}

.swiper-container-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet {
  margin: 0 4px;
}

.swiper-container-horizontal > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
  left: 50%;
  transform: translateX(-50%);
  white-space: nowrap;
}

.swiper-container-horizontal > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  transition: 200ms transform, 200ms left;
}

.swiper-container-horizontal.swiper-container-rtl > .swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  transition: 200ms transform, 200ms right;
}

/* Progress */
.swiper-pagination-progressbar {
  background: rgba(0, 0, 0, 0.25);
  position: absolute;
}

.swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
  background: var(--swiper-pagination-color, var(--swiper-theme-color));
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  transform: scale(0);
  transform-origin: left top;
}

.swiper-container-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
  transform-origin: right top;
}

.swiper-container-horizontal > .swiper-pagination-progressbar,
.swiper-container-vertical > .swiper-pagination-progressbar.swiper-pagination-progressbar-opposite {
  width: 100%;
  height: 4px;
  left: 0;
  top: 0;
}

.swiper-container-vertical > .swiper-pagination-progressbar,
.swiper-container-horizontal > .swiper-pagination-progressbar.swiper-pagination-progressbar-opposite {
  width: 4px;
  height: 100%;
  left: 0;
  top: 0;
}

.swiper-pagination-white {
  --swiper-pagination-color: #ffffff;
}

.swiper-pagination-black {
  --swiper-pagination-color: #000000;
}

.swiper-pagination-lock {
  display: none;
}

/* Scrollbar */
.swiper-scrollbar {
  border-radius: 10px;
  position: relative;
  -ms-touch-action: none;
  background: rgba(0, 0, 0, 0.1);
}

.swiper-container-horizontal > .swiper-scrollbar {
  position: absolute;
  left: 1%;
  bottom: 3px;
  z-index: 50;
  height: 5px;
  width: 98%;
}

.swiper-container-vertical > .swiper-scrollbar {
  position: absolute;
  right: 3px;
  top: 1%;
  z-index: 50;
  width: 5px;
  height: 98%;
}

.swiper-scrollbar-drag {
  height: 100%;
  width: 100%;
  position: relative;
  background: rgba(0, 0, 0, 0.5);
  border-radius: 10px;
  left: 0;
  top: 0;
}

.swiper-scrollbar-cursor-drag {
  cursor: move;
}

.swiper-scrollbar-lock {
  display: none;
}

.swiper-zoom-container {
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
}

.swiper-zoom-container > img,
.swiper-zoom-container > svg,
.swiper-zoom-container > canvas {
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
}

.swiper-slide-zoomed {
  cursor: move;
}

/* Preloader */
:root {
  /*
  --swiper-preloader-color: var(--swiper-theme-color);
  */
}

.swiper-lazy-preloader {
  width: 42px;
  height: 42px;
  position: absolute;
  left: 50%;
  top: 50%;
  margin-left: -21px;
  margin-top: -21px;
  z-index: 10;
  transform-origin: 50%;
  animation: swiper-preloader-spin 1s infinite linear;
  box-sizing: border-box;
  border: 4px solid var(--swiper-preloader-color, var(--swiper-theme-color));
  border-radius: 50%;
  border-top-color: transparent;
}

.swiper-lazy-preloader-white {
  --swiper-preloader-color: #fff;
}

.swiper-lazy-preloader-black {
  --swiper-preloader-color: #000;
}

@keyframes swiper-preloader-spin {
  100% {
    transform: rotate(360deg);
  }
}
/* a11y */
.swiper-container .swiper-notification {
  position: absolute;
  left: 0;
  top: 0;
  pointer-events: none;
  opacity: 0;
  z-index: -1000;
}

.swiper-container-fade.swiper-container-free-mode .swiper-slide {
  transition-timing-function: ease-out;
}

.swiper-container-fade .swiper-slide {
  pointer-events: none;
  transition-property: opacity;
}

.swiper-container-fade .swiper-slide .swiper-slide {
  pointer-events: none;
}

.swiper-container-fade .swiper-slide-active,
.swiper-container-fade .swiper-slide-active .swiper-slide-active {
  pointer-events: auto;
}

.swiper-container-cube {
  overflow: visible;
}

.swiper-container-cube .swiper-slide {
  pointer-events: none;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  z-index: 1;
  visibility: hidden;
  transform-origin: 0 0;
  width: 100%;
  height: 100%;
}

.swiper-container-cube .swiper-slide .swiper-slide {
  pointer-events: none;
}

.swiper-container-cube.swiper-container-rtl .swiper-slide {
  transform-origin: 100% 0;
}

.swiper-container-cube .swiper-slide-active,
.swiper-container-cube .swiper-slide-active .swiper-slide-active {
  pointer-events: auto;
}

.swiper-container-cube .swiper-slide-active,
.swiper-container-cube .swiper-slide-next,
.swiper-container-cube .swiper-slide-prev,
.swiper-container-cube .swiper-slide-next + .swiper-slide {
  pointer-events: auto;
  visibility: visible;
}

.swiper-container-cube .swiper-slide-shadow-top,
.swiper-container-cube .swiper-slide-shadow-bottom,
.swiper-container-cube .swiper-slide-shadow-left,
.swiper-container-cube .swiper-slide-shadow-right {
  z-index: 0;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}

.swiper-container-cube .swiper-cube-shadow {
  position: absolute;
  left: 0;
  bottom: 0px;
  width: 100%;
  height: 100%;
  background: #000;
  opacity: 0.6;
  -webkit-filter: blur(50px);
  filter: blur(50px);
  z-index: 0;
}

.swiper-container-flip {
  overflow: visible;
}

.swiper-container-flip .swiper-slide {
  pointer-events: none;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  z-index: 1;
}

.swiper-container-flip .swiper-slide .swiper-slide {
  pointer-events: none;
}

.swiper-container-flip .swiper-slide-active,
.swiper-container-flip .swiper-slide-active .swiper-slide-active {
  pointer-events: auto;
}

.swiper-container-flip .swiper-slide-shadow-top,
.swiper-container-flip .swiper-slide-shadow-bottom,
.swiper-container-flip .swiper-slide-shadow-left,
.swiper-container-flip .swiper-slide-shadow-right {
  z-index: 0;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}

* {
  -webkit-box-sizing: border-box; /* Safari/Chrome, other WebKit */
  -moz-box-sizing: border-box; /* Firefox, other Gecko */
  box-sizing: border-box;
  -webkit-tap-highlight-color: transparent;
}

.screen-reader-text {
  display: none;
}

body {
  font-family: "Source Sans Pro", serif;
  font-weight: normal;
  font-size: 16px;
  line-height: 1.3;
  color: #000000;
  background-color: white;
}
@media (min-width: 1280px) {
  body {
    font-size: calc(24 / 1920 * 100vw);
  }
}
@media (min-width: 2560px) {
  body {
    font-size: 32px;
  }
}

main {
  overflow: hidden;
  width: 100%;
  min-height: 100vh;
}

section, header {
  position: relative;
}

section {
  padding-top: 60px;
  padding-bottom: 60px;
}
@media (min-width: 960px) {
  section {
    padding-top: calc(120 / 1920 * 100vw);
  }
}
@media (min-width: 3200px) {
  section {
    padding-top: 200px;
  }
}
@media (min-width: 960px) {
  section {
    padding-bottom: calc(120 / 1920 * 100vw);
  }
}
@media (min-width: 3200px) {
  section {
    padding-bottom: 200px;
  }
}
@media (max-width: 400px) {
  section {
    padding-top: 30px;
    padding-bottom: 30px;
  }
}

.content {
  width: 100%;
  position: relative;
  margin-left: auto;
  margin-right: auto;
  padding-left: var(--outer);
  padding-right: var(--outer);
}

hr {
  border-bottom: 1px solid #32EB96;
  margin-bottom: calc(2 * var(--mb));
  margin-top: calc(2 * var(--mb));
}

.image {
  display: block;
}
.image img {
  display: block;
  position: relative;
  width: 100%;
  height: auto;
}

.column-size-2 {
  -webkit-column-count: 2;
  -moz-column-count: 2;
  column-count: 2;
  column-gap: 5%;
}

.noscroll {
  overflow: hidden !important;
}

img[data-normal] {
  opacity: 0;
}

img, .lazy-image {
  -webkit-transition: opacity 1s 0.3s;
  -moz-transition: opacity 1s 0.3s;
  -o-transition: opacity 1s 0.3s;
  transition: opacity 1s 0.3s;
}

.lazy__show {
  opacity: 1;
  -webkit-transition: opacity 1s 0.2s;
  -moz-transition: opacity 1s 0.2s;
  -o-transition: opacity 1s 0.2s;
  transition: opacity 1s 0.2s;
}
.lazy__show img {
  opacity: 1;
}

.fades {
  -webkit-transition: opacity 1s 0s;
  -moz-transition: opacity 1s 0s;
  -o-transition: opacity 1s 0s;
  transition: opacity 1s 0s;
  opacity: 0;
}

.el__show {
  opacity: 1;
}

figure {
  overflow: visible;
  position: relative;
}
figure .image {
  width: 100%;
  margin-bottom: 40px;
}
figure.nocaption .image {
  margin-bottom: 0;
}
figure figcaption {
  position: absolute;
  bottom: 0px;
  width: 100%;
  text-align: center;
}
figure .image:hover {
  cursor: pointer;
}

.child-content h1, .child-content h2 {
  font-weight: bold;
  line-height: 1em;
  font-family: "Source Serif Pro", serif;
  font-size: 28px;
  margin-bottom: var(--mb);
  margin-bottom: calc(.5 * var(--mb));
}
@media (min-width: 1033.8461538462px) {
  .child-content h1, .child-content h2 {
    font-size: calc(52 / 1920 * 100vw);
  }
}
@media (min-width: 1920px) {
  .child-content h1, .child-content h2 {
    font-size: 52px;
  }
}
.child-content h3 {
  font-family: "Source Serif Pro", serif;
  margin-bottom: calc(.5 * var(--mb));
  color: #32EB96;
}
.child-content p {
  margin-bottom: calc(.5 * var(--mb));
}
.child-content p + h1, .child-content p + h2, .child-content p + h3 {
  margin-top: var(--mb);
}
.child-content ul {
  margin-bottom: var(--mb);
  margin-left: 20px;
  list-style: none;
}
.child-content ul li::before {
  content: "•";
  position: absolute;
  color: #B167C3;
  padding-right: 0.5em;
  left: -20px;
}
.child-content ul > li {
  margin-bottom: 0.7em;
  position: relative;
}
.child-content ol {
  counter-reset: item;
  margin-top: 10px;
  margin-left: 20px;
}
.child-content ol li {
  display: block;
}
.child-content ol > li:before {
  content: counters(item, ".") ". ";
  counter-increment: item;
  position: absolute;
  left: -20px;
}
.child-content ol > li {
  margin-bottom: calc(var(--mb) / 2);
  position: relative;
}
.child-content ol > li > ol li {
  font-family: "Source Sans Pro", serif;
  font-weight: normal;
  font-size: 16px;
  line-height: 1.3;
  text-align: left;
  text-transform: none;
  font-weight: normal;
  margin-top: 0;
}
@media (min-width: 1280px) {
  .child-content ol > li > ol li {
    font-size: calc(24 / 1920 * 100vw);
  }
}
@media (min-width: 2560px) {
  .child-content ol > li > ol li {
    font-size: 32px;
  }
}
.child-content ol > li:before {
  font-weight: 500;
}
.child-content ol > li > ol > li > ol > li {
  padding-left: 50px;
}
.child-content ol li ul {
  margin-top: 10px;
}
.child-content table {
  margin-bottom: var(--mb);
}
.child-content table td {
  padding: 5px 10px;
  border: 1px solid rgba(255, 255, 255, 0.2);
}

.alt-price .section-intro .toggle-button {
  transform: translateX(39px);
}

.section-intro {
  z-index: 1;
}
.section-intro.central {
  text-align: center;
}
.section-intro .selector-anchor {
  position: absolute;
  top: -100px;
  left: 0;
  width: 100%;
  display: block;
}
.section-intro hr {
  margin: calc(.5 * var(--mb)) 0;
  border-color: #DEDEDE;
}
.section-intro .copy ul {
  margin-bottom: var(--mb);
  margin-left: 3ch;
  list-style: none;
  margin-bottom: 0;
}
.section-intro .copy ul li::before {
  content: "";
  position: absolute;
  background-image: url(https://glasgowvirtualoffices.co.uk/wp-content/themes/virtually/css/../images/svg/tick.svg);
  display: inline-block;
  background-position: center;
  background-size: auto 1.2ch;
  background-repeat: no-repeat;
  width: 3ch;
  height: 1.6ch;
  color: #B167C3;
  top: 0.2ch;
  left: -3ch;
}
.section-intro .copy ul > li {
  font-size: 20px;
  line-height: 1.2;
  font-weight: bold;
  font-family: "Source Serif Pro", serif;
  margin-bottom: 0.7em;
  position: relative;
}
@media (min-width: 1371.4285714286px) {
  .section-intro .copy ul > li {
    font-size: calc(28 / 1920 * 100vw);
  }
}
@media (min-width: 3291.4285714286px) {
  .section-intro .copy ul > li {
    font-size: 48px;
  }
}
.section-intro .copy ol {
  counter-reset: item;
  margin-left: 20px;
  margin-bottom: var(--mb);
  font-weight: bold;
}
.section-intro .copy ol li {
  list-style: none;
}
.section-intro .copy ol > li:before {
  position: absolute;
  content: counters(item, ".") ". ";
  counter-increment: item;
  left: -20px;
}
.section-intro .copy ol > li {
  margin-bottom: 0.7em;
  position: relative;
}
.section-intro .copy ol > li > ol > li > ol > li {
  padding-left: 50px;
}
.section-intro .copy ol li ul {
  margin-top: 0.5em;
}
.section-intro .call-us a {
  color: #B167C3;
  font-weight: bold;
}
.section-intro .illy {
  position: absolute;
  top: 0;
  margin-top: -100px;
  right: var(--outer);
  width: 39%;
  height: calc(100% + 100px);
  z-index: -1;
}
.section-intro .illy img {
  position: absolute;
  left: 50%;
  top: 0;
  transform: translate(-50%, 0%);
  object-fit: contain;
}
@media (max-width: 520px) {
  .section-intro.has-tile.white-bg {
    padding-bottom: 100px;
  }
  .section-intro .plan-tile .tile-caveat {
    padding: 10px 20px;
  }
  .section-intro .illy {
    display: none;
  }
  .section-intro .plan-tile {
    width: calc(100% + 20px);
    margin-left: 0px !important;
  }
  .section-intro .selector-anchor {
    top: -80px;
  }
}
@media (max-width: 678px) {
  .section-intro .illy {
    display: none;
  }
  .section-intro .call-us {
    display: none;
  }
}
@media (min-width: 520px) and (max-width: 1000px) {
  .section-intro .plan-tile {
    max-width: 350px;
    width: 100%;
    margin-left: auto !important;
    margin-left: auto;
    margin-right: auto;
  }
  .section-intro .plan-tile .cta {
    max-width: inherit;
  }
  .section-intro .tile-caveat {
    max-width: 350px;
  }
}
@media (min-width: 678px) {
  .section-intro .copy {
    width: 55%;
  }
  .section-intro .tile-holder {
    width: 42%;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    flex-direction: column;
  }
  .section-intro .tile-caveat {
    max-width: 350px;
  }
  .section-intro .plan-tile {
    position: relative;
    max-width: 350px;
    width: 100%;
    top: 0px;
    right: 0;
    box-shadow: 0px 3px 16px 0px rgba(0, 0, 0, 0.4);
  }
  .section-intro .plan-tile h3 {
    font-size: 24px;
  }
}
@media (min-width: 678px) and (min-width: 1280px) {
  .section-intro .plan-tile h3 {
    font-size: calc(36 / 1920 * 100vw);
  }
}
@media (min-width: 678px) and (min-width: 2880px) {
  .section-intro .plan-tile h3 {
    font-size: 54px;
  }
}
@media (min-width: 678px) {
  .section-intro .plan-tile .cta-alt {
    display: none;
  }
}
@media (min-width: 678px) {
  .section-intro.central h2 {
    width: 70%;
    margin-left: auto;
    margin-right: auto;
  }
  .section-intro.central .copy {
    width: 70%;
    margin-left: auto;
    margin-right: auto;
  }
}
@media (min-width: 1280px) {
  .section-intro .copy {
    width: 48%;
  }
}
@media (min-width: 2000px) {
  .section-intro .plan-tile {
    position: relative;
    max-width: inherit;
    width: auto;
    padding-left: 5%;
    padding-right: 5%;
  }
  .section-intro .tile-caveat {
    max-width: 450px;
  }
}

.section-intro.has-tile {
  /*   .plan-tile{
          //width:100%;
          .price-toggle{
            transform: translateY(-15px);
            margin-bottom: 0;
            .toggle-wrapper{
              height: 30px;
              width:70px;
            }
            .toggle-button{
              width:22px;
              height: 22px;
            }
            .label{
              @include smallfont;
            }
          }
          .price{
            margin-bottom: calc(.5 * var(--mb));
          }
          .cta-alt{
            margin-top: 5px;
          }
        }
      .tile-holder{

        width:100%;
        display: flex;
        align-items: center;
        justify-content: center;
        position: relative;
        flex-direction: column;
  // } */
}
.section-intro.has-tile .intro-kicker svg {
  height: 2ch;
  width: auto;
}
.section-intro.has-tile h2 {
  font-weight: bold;
  line-height: 1em;
  font-family: "Source Serif Pro", serif;
  font-size: 22px;
  margin-bottom: var(--mb);
  margin-bottom: calc(.5 * var(--mb));
  font-family: "Source Sans Pro", sans-serif;
}
@media (min-width: 1005.7142857143px) {
  .section-intro.has-tile h2 {
    font-size: calc(42 / 1920 * 100vw);
  }
}
@media (min-width: 1920px) {
  .section-intro.has-tile h2 {
    font-size: 42px;
  }
}
.section-intro.has-tile h2 hr {
  margin-top: calc(-1 * calc(.5 * var(--mb)));
}
.section-intro.has-tile .tile-caveat {
  font-size: 11px;
  font-size: 0.6875rem;
  line-height: 15.4px;
  line-height: 1.4;
  text-align: center;
  background-color: rgba(255, 255, 255, 0.9);
  width: 100%;
  padding: 10px 15px;
  margin-top: 10px;
}
.section-intro.has-tile .tile-caveat p {
  margin-bottom: 5px;
}
.section-intro.has-tile .tile-caveat > :last-child {
  margin-bottom: 0;
}
@media (min-width: 678px) {
  .section-intro.has-tile .content {
    display: flex;
    justify-content: space-between;
  }
  .section-intro.has-tile .content .copy {
    margin-left: 0%;
    width: 65%;
  }
  .section-intro.has-tile .content .buy-buttons {
    width: 30%;
  }
  .section-intro.has-tile .content .buy-buttons .cta {
    min-width: inherit;
    width: 100%;
  }
  .section-intro.has-tile .tile-caveat {
    text-align: left;
  }
}
@media (min-width: 1000px) {
  .section-intro.has-tile .image {
    width: 26%;
    left: var(--outer);
    top: 0;
    right: auto;
    margin-top: 0;
  }
  .section-intro.has-tile .image img {
    transform: none;
    left: 0;
    width: 100%;
    object-fit: contain;
  }
  .section-intro.has-tile .content {
    display: flex;
    justify-content: space-between;
  }
  .section-intro.has-tile .content .copy {
    margin-left: 35%;
    width: 42%;
    margin-right: 6%;
  }
  .section-intro.has-tile .content .buy-buttons {
    width: 25%;
  }
}
@media (max-width: 1000px) {
  .section-intro.has-tile .illy {
    display: none;
  }
  .section-intro.has-tile .call-us {
    display: none;
  }
}

.home .section-intro .content {
  position: relative;
}
.home .section-intro .illy {
  top: 0;
  right: var(--outer);
  width: 46%;
  height: calc(100px + 100% + 12vw);
  margin-top: -12vw;
}
@media (min-width: 1280px) {
  .home .section-intro .copy {
    width: 40%;
  }
}

.section-text-image {
  position: relative;
  min-height: 40vw;
  display: flex;
  align-items: center;
}
.section-text-image::before {
  content: "";
  z-index: -1;
  background-color: var(--bg);
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
}
.section-text-image .intro {
  color: white;
  font-size: 22px;
  line-height: 1.2;
  font-weight: 600;
  margin-bottom: var(--mb);
}
@media (min-width: 1242.3529411765px) {
  .section-text-image .intro {
    font-size: calc(34 / 1920 * 100vw);
  }
}
@media (min-width: 2936.4705882353px) {
  .section-text-image .intro {
    font-size: 52px;
  }
}
.section-text-image h2 span {
  font-weight: normal;
}
.section-text-image.light .intro {
  color: #000000;
}
.section-text-image .content {
  display: flex;
  flex-direction: column;
}
.section-text-image .video-holder, .section-text-image .image, .section-text-image .audio-holder {
  width: 100%;
  box-shadow: 0px 3px 16px 0px rgba(0, 0, 0, 0.4);
}
.section-text-image .video-holder .video-poster, .section-text-image .image .video-poster, .section-text-image .audio-holder .video-poster {
  position: absolute;
  box-shadow: 0px 3px 16px 0px rgba(0, 0, 0, 0.4);
}
.section-text-image.dark .copy {
  color: white;
}
.section-text-image .content {
  z-index: 1;
}
@media (max-width: 375px) {
  .section-text-image h2 {
    font-size: 26px;
  }
}
@media (max-width: 678px) {
  .section-text-image {
    display: flex;
    flex-direction: column;
  }
  .section-text-image.illustration {
    padding-bottom: 0;
  }
  .section-text-image .illy.vcentre {
    z-index: 2;
    margin-top: 30px;
  }
  .section-text-image .illy {
    width: 100%;
    position: relative;
  }
  .section-text-image .illy:after {
    content: "";
    display: block;
    padding-top: 80%;
    width: 0;
    float: left;
    position: relative;
  }
}
.section-text-image ul {
  margin-bottom: var(--mb);
  margin-left: 20px;
  list-style: none;
}
.section-text-image ul li::before {
  content: "•";
  position: absolute;
  color: #B167C3;
  padding-right: 0.5em;
  left: -20px;
}
.section-text-image ul > li {
  margin-bottom: 0.7em;
  position: relative;
}
@media (min-width: 678px) {
  .section-text-image .copy {
    width: 49%;
  }
  .section-text-image .copy > :last-child {
    margin-bottom: 0;
  }
  .section-text-image .content {
    align-items: center;
    justify-content: space-between;
    flex-direction: row;
  }
  .section-text-image.right .content {
    flex-direction: row-reverse;
  }
  .section-text-image .video-holder, .section-text-image .image, .section-text-image .audio-holder {
    width: 48%;
  }
  .section-text-image .video-holder .video-poster, .section-text-image .image .video-poster, .section-text-image .audio-holder .video-poster {
    position: absolute;
  }
  .section-text-image .image {
    overflow: hidden;
    position: relative;
  }
  .section-text-image .image img {
    position: absolute;
    min-width: 100%;
    min-height: 100%;
    object-fit: cover;
    top: 50%;
    left: 50%;
    -ms-transform: translate(-50%, -50%); /* IE 9 */
    -webkit-transform: translate(-50%, -50%); /* Chrome, Safari, Opera */
    transform: translate(-50%, -50%);
  }
  .section-text-image .image:after {
    content: "";
    display: block;
    padding-top: var(--rat);
    width: 0;
    float: left;
    position: relative;
  }
  .section-text-image .illy {
    position: absolute;
    top: 0;
    width: calc(var(--outer) + 35%);
    height: 100%;
  }
  .section-text-image .illy.vcentre {
    height: 90%;
    top: 5%;
  }
  .section-text-image .illy.overlap {
    height: 110%;
    top: -5%;
  }
  .section-text-image.right .illy {
    left: calc(var(--outer)/2);
  }
  .section-text-image.left .illy {
    right: calc(var(--outer)/2);
  }
}
@media (min-width: 1280px) {
  .section-text-image .copy {
    width: 49.5%;
  }
  .section-text-image .video-holder, .section-text-image .image, .section-text-image .audio-holder {
    width: 42%;
    margin-left: 3%;
  }
  .section-text-image .video-holder .video-poster, .section-text-image .image .video-poster, .section-text-image .audio-holder .video-poster {
    position: absolute;
  }
}

.section-icons {
  position: relative;
  display: flex;
  align-items: center;
}
.section-icons dl {
  display: flex;
  flex-wrap: wrap;
}
.section-icons dl div {
  position: relative;
  width: 49%;
  margin-right: 2%;
}
.section-icons dl div:nth-child(2n+2) {
  margin-right: 0;
}
.section-icons svg {
  width: 100%;
  height: auto;
}
.section-icons svg path {
  fill: #32EB96;
}
.section-icons dt {
  overflow: hidden;
  position: relative;
  width: 54%;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 20px;
}
.section-icons dt img {
  position: absolute;
  min-width: 100%;
  min-height: 100%;
  object-fit: cover;
  top: 50%;
  left: 50%;
  -ms-transform: translate(-50%, -50%); /* IE 9 */
  -webkit-transform: translate(-50%, -50%); /* Chrome, Safari, Opera */
  transform: translate(-50%, -50%);
}
.section-icons dt:after {
  content: "";
  display: block;
  padding-top: 100%;
  width: 0;
  float: left;
  position: relative;
}
.section-icons dt img {
  background-color: lightblue;
}
.section-icons dd {
  text-align: center;
  font-size: 16px;
  line-height: 1.3;
}
@media (min-width: 1536px) {
  .section-icons dd {
    font-size: calc(20 / 1920 * 100vw);
  }
}
@media (min-width: 2688px) {
  .section-icons dd {
    font-size: 28px;
  }
}
.section-icons dd span {
  display: block;
  font-family: "Source Sans Pro", sans-serif;
  font-size: 18px;
  text-transform: uppercase;
  font-weight: bold;
  line-height: 1.2rem;
  margin-bottom: 8px;
}
@media (min-width: 1382.4px) {
  .section-icons dd span {
    font-size: calc(25 / 1920 * 100vw);
  }
}
@media (min-width: 2304px) {
  .section-icons dd span {
    font-size: 30px;
  }
}
.section-icons.angled dl div::after {
  content: "";
  z-index: -1;
  background-color: var(--bg);
  position: absolute;
  width: 100%;
  padding-top: 100%;
  top: 0;
  left: 0;
  box-shadow: inset 0px 0px 0px 8px #DEDEDE;
  border-radius: 50%;
}
.section-icons.angled dt {
  width: 80%;
  margin-top: 10%;
  margin-bottom: calc(10% + 10px);
}
.section-icons.angled svg {
  width: 100%;
  height: auto;
}
.section-icons.angled svg path {
  fill: #32EB96;
}
@media (max-width: 678px) {
  .section-icons dl div {
    margin-bottom: 10px;
  }
  .section-icons dd span {
    font-size: 14px;
    font-size: 0.875rem;
    line-height: 19.6px;
    line-height: 1.4;
  }
  .section-icons .content {
    padding-bottom: 10vw;
  }
  .section-icons.angled dl div:nth-child(2), .section-icons.angled dl div:nth-child(4) {
    transform: translateY(20vw);
  }
}
@media (min-width: 678px) {
  .section-icons dl div {
    width: 22%;
  }
  .section-icons dl div:nth-child(n) {
    margin-right: 4%;
  }
  .section-icons dl div:nth-child(4n+4) {
    margin-right: 0;
  }
  .section-icons.angled dl div:nth-child(1) {
    margin-top: calc((1 - 1) * 8%);
  }
  .section-icons.angled dl div:nth-child(2) {
    margin-top: calc((2 - 1) * 8%);
  }
  .section-icons.angled dl div:nth-child(3) {
    margin-top: calc((3 - 1) * 8%);
  }
  .section-icons.angled dl div:nth-child(4) {
    margin-top: calc((4 - 1) * 8%);
  }
}
@media (min-width: 1280px) {
  .section-icons.angled dl div::after {
    box-shadow: inset 0px 0px 0px 11px #DEDEDE;
  }
  .section-icons dl div {
    width: 23%;
  }
  .section-icons dl div:nth-child(n) {
    margin-right: 2%;
  }
  .section-icons dl div:nth-child(4n+4) {
    margin-right: 0;
  }
  .section-icons dd span {
    margin-bottom: 12px;
  }
  .section-icons.angled dl div {
    width: 16%;
  }
  .section-icons.angled dl div:nth-child(n) {
    margin-right: 6.5%;
  }
  .section-icons.angled dl div:nth-child(1) {
    margin-left: 8%;
  }
}

.section-city-tiles {
  /* a:hover .text-panel,
      // .disabled .text-panel{
      //     height: calc(100% - 20px);
      //     span{
      //         display: none;
      //     }
      //     .rollover{
      //         display: block;
      //       @include fade-in(.5s,0s);
      //     }
  // }*/
}
.section-city-tiles ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}
.section-city-tiles li {
  width: 49%;
  margin-right: 2%;
  margin-bottom: 2%;
}
.section-city-tiles li:nth-of-type(2n + 2) {
  margin-right: 0%;
}
.section-city-tiles li a {
  position: relative;
  display: block;
}
.section-city-tiles .copy {
  margin-bottom: 50px;
}
@media (min-width: 800px) {
  .section-city-tiles .copy {
    margin-bottom: calc(120 / 1920 * 100vw);
  }
}
@media (min-width: 3200px) {
  .section-city-tiles .copy {
    margin-bottom: 200px;
  }
}
.section-city-tiles .image {
  overflow: hidden;
  position: relative;
  border: clamp(3px, 0.75vw, 7px) solid white;
  box-shadow: 0px 0px 6px 0px rgba(0, 0, 0, 0.2);
  transition: box-shadow 0.3s, border-color 0.3s;
  background-color: #DEDEDE;
}
.section-city-tiles .image img {
  position: absolute;
  min-width: 100%;
  min-height: 100%;
  object-fit: cover;
  top: 50%;
  left: 50%;
  -ms-transform: translate(-50%, -50%); /* IE 9 */
  -webkit-transform: translate(-50%, -50%); /* Chrome, Safari, Opera */
  transform: translate(-50%, -50%);
}
.section-city-tiles .image:after {
  content: "";
  display: block;
  padding-top: 75%;
  width: 0;
  float: left;
  position: relative;
}
.section-city-tiles .image img {
  top: auto;
  bottom: 0;
  transform: translate(-50%, 0);
}
.section-city-tiles a:hover .image {
  border-color: #32EB96;
  box-shadow: 0px 3px 12px 0px rgba(0, 0, 0, 0.4);
}
.section-city-tiles .text-panel {
  font-weight: bold;
  padding: calc(var(--mb) * .25) 0;
}
.section-city-tiles .text-panel span {
  font-weight: normal;
}
.section-city-tiles .text-panel .rollover {
  display: none;
}
.section-city-tiles .disabled {
  pointer-events: none;
  opacity: 0.6;
}
@media (min-width: 1280px) {
  .section-city-tiles .roundel {
    transform: translate(20%, -35%);
  }
}
@media (max-width: 520px) {
  .section-city-tiles li {
    width: 100%;
    margin-bottom: 35px;
  }
}
@media (max-width: 678px) {
  .section-city-tiles .text-panel {
    font-size: 15px;
    font-size: 0.9375rem;
    line-height: 21px;
    line-height: 1.4;
  }
  .section-city-tiles ul {
    width: calc(100% + 10px);
    margin-left: -5px;
  }
}
@media (min-width: 1020px) {
  .section-city-tiles .num-four li {
    width: 38%;
  }
}
@media (min-width: 678px) {
  .section-city-tiles .copy {
    width: 80%;
  }
  .section-city-tiles .num-centre {
    justify-content: center;
  }
  .section-city-tiles .num-centre li {
    width: 32%;
  }
  .section-city-tiles .num-centre li:nth-of-type(n) {
    margin-right: 2%;
  }
}
@media (min-width: 1000px) {
  .section-city-tiles .num-three li {
    width: 32%;
  }
  .section-city-tiles .num-three li:nth-of-type(n) {
    margin-right: 2%;
  }
  .section-city-tiles .num-three li:nth-of-type(3n + 3) {
    margin-right: 0%;
  }
}
@media (min-width: 1280px) {
  .section-city-tiles .num-four li {
    width: 23.5%;
  }
  .section-city-tiles .num-four li:nth-of-type(n) {
    margin-right: 2%;
  }
  .section-city-tiles .num-four li:nth-of-type(4n + 4) {
    margin-right: 0%;
  }
  .section-city-tiles .text-panel {
    width: calc(100% - 20px);
    height: 50px;
    bottom: 10px;
    left: 10px;
  }
}
@media (min-width: 1780px) {
  .section-city-tiles .copy {
    width: 60%;
  }
}

.home .section-city-tiles .copy {
  text-align: center;
}
@media (min-width: 678px) {
  .home .section-city-tiles .copy {
    width: 80%;
    margin-left: auto;
    margin-right: auto;
  }
}
@media (min-width: 1280px) {
  .home .section-city-tiles .copy h2 {
    width: 70%;
    margin-left: auto;
    margin-right: auto;
  }
}

/* -----------------------------------------------------------------------------------------------------------

												FAQS

------------------------------------------------------------------------------------------------------------- */
.concertina {
  margin-top: 40px;
  text-align: left;
  z-index: 1;
  position: relative;
  z-index: 2;
}
.concertina article {
  overflow: hidden;
  position: relative;
  background-color: #6DD5F9;
  -webkit-transition: height 0.2s ease-out;
  -moz-transition: height 0.2s ease-out;
  -o-transition: height 0.2s ease-out;
  transition: height 0.2s ease-out;
  margin-bottom: 15px;
}
.concertina article h3 {
  padding: 5px 60px 5px 10px;
  min-height: 66px;
  font-family: "Source Sans Pro", serif;
  font-weight: normal;
  font-size: 16px;
  line-height: 1.3;
  font-weight: bold;
  text-transform: none;
  margin-bottom: 0;
  position: relative;
  z-index: 2;
  display: flex;
  align-items: center;
}
@media (min-width: 1280px) {
  .concertina article h3 {
    font-size: calc(24 / 1920 * 100vw);
  }
}
@media (min-width: 2560px) {
  .concertina article h3 {
    font-size: 32px;
  }
}
.concertina article h3 > :last-child {
  margin-bottom: 0;
}
.concertina article h3:after, .concertina article h3:before {
  content: "";
  line-height: 50px;
  width: 20px;
  height: 2px;
  text-align: center;
  display: block;
  position: absolute;
  top: calc(50% - 1px);
  transform-origin: center;
  background-color: #000000;
  transform-origin: center;
  transition: transform 0.3s;
  right: 10px;
}
.concertina article h3:after {
  -ms-transform: rotateZ(90deg); /* IE 9 */
  -webkit-transform: rotateZ(90deg); /* Chrome, Safari, Opera */
  transform: rotateZ(90deg);
}
.concertina article h3:hover, .concertina article h3:active {
  cursor: pointer;
  cursor: hand;
}
.concertina article .answer {
  position: absolute;
  -webkit-transition: transform 0.2s ease-in, opacity 0.2s;
  -moz-transition: transform 0.2s ease-in, opacity 0.2s;
  -o-transition: transform 0.2s ease-in, opacity 0.2s;
  transition: transform 0.2s ease-in, opacity 0.2s;
  width: 100%;
  padding: 0 10px 20px 10px;
  font-size: 16px;
  font-size: 1rem;
  line-height: 22.4px;
  line-height: 1.4;
  opacity: 0;
  line-height: 1.5em;
}
.concertina article .answer > :last-child {
  margin-bottom: 0;
}
.concertina article .answer ul {
  margin-bottom: var(--mb);
  margin-left: 20px;
  list-style: none;
}
.concertina article .answer ul li::before {
  content: "•";
  position: absolute;
  color: #B167C3;
  padding-right: 0.5em;
  left: -20px;
}
.concertina article .answer ul > li {
  margin-bottom: 0.7em;
  position: relative;
}
.concertina article .answer .buttons {
  margin-top: calc(3 * var(--mb));
}
.concertina article .answer .buttons p {
  margin-bottom: var(--mb);
}
.concertina article + h2 {
  margin-top: calc(2*var(--mb));
}
.concertina article a {
  font-weight: normal;
  text-decoration: underline;
}
.concertina article a:hover {
  text-decoration: none;
}
.concertina article.open h3:after {
  -ms-transform: rotateZ(135deg); /* IE 9 */
  -webkit-transform: rotateZ(135deg); /* Chrome, Safari, Opera */
  transform: rotateZ(135deg);
}
.concertina article.open h3:before {
  -ms-transform: rotateZ(45deg); /* IE 9 */
  -webkit-transform: rotateZ(45deg); /* Chrome, Safari, Opera */
  transform: rotateZ(45deg);
}
.concertina article.open .answer {
  -ms-transform: translate3d(0, 0%, 0); /* IE 9 */
  -webkit-transform: translate3d(0, 0%, 0); /* Chrome, Safari, Opera */
  transform: translate3d(0, 0%, 0);
  -webkit-transition: transform 0.2s ease-out, opacity 0.5s;
  -moz-transition: transform 0.2s ease-out, opacity 0.5s;
  -o-transition: transform 0.2s ease-out, opacity 0.5s;
  transition: transform 0.2s ease-out, opacity 0.5s;
  opacity: 1;
}
.concertina .answer ul {
  margin-bottom: var(--mb);
  margin-left: 20px;
  list-style: none;
}
.concertina .answer ul li::before {
  content: "•";
  position: absolute;
  color: #B167C3;
  padding-right: 0.5em;
  left: -20px;
}
.concertina .answer ul > li {
  margin-bottom: 0.7em;
  position: relative;
}
.concertina .answer ol {
  counter-reset: item;
  margin-left: 20px;
  margin-bottom: var(--mb);
}
.concertina .answer ol li {
  list-style: none;
}
.concertina .answer ol > li:before {
  position: absolute;
  content: counters(item, ".") ". ";
  counter-increment: item;
  left: -20px;
}
.concertina .answer ol > li {
  margin-bottom: 0.7em;
  position: relative;
}
.concertina .answer ol > li > ol > li > ol > li {
  padding-left: 50px;
}
.concertina .answer ol li ul {
  margin-top: 0.5em;
}
@media (max-width: 678px) {
  .concertina article {
    width: calc(100% + 20px);
    margin-left: -10px;
    margin-bottom: 10px;
  }
  .concertina article h3 {
    padding: 10px 65px 10px 10px;
  }
  .concertina article h3:after, .concertina article h3:before {
    right: 15px;
  }
}
@media (min-width: 678px) {
  .concertina {
    width: 100%;
    margin-top: 50px;
  }
  .concertina article h3 {
    padding: 10px 65px 10px 20px;
  }
  .concertina article h3:after, .concertina article h3:before {
    right: 20px;
  }
  .concertina article .answer {
    padding: 0 65px 50px 20px;
  }
}
@media (min-width: 1000px) {
  .concertina {
    width: 66%;
  }
  .concertina article h3 {
    padding: 10px 80px 10px 30px;
    min-height: 85px;
  }
  .concertina article h3:after, .concertina article h3:before {
    right: 30px;
  }
  .concertina article .answer {
    padding: 0 80px 50px 30px;
  }
}

.section-faqs .content {
  z-index: 1;
  min-height: 36vw;
}
.section-faqs .content::after {
  content: "";
  width: 20%;
  position: absolute;
  background-color: gray;
  height: 8%;
  bottom: calc(2 * var(--mb));
  right: calc(var(--outer) + 4%);
  border-radius: 100%;
  z-index: 0;
}
.section-faqs .illy {
  overflow: hidden;
  position: relative;
  position: absolute;
  width: 28%;
  right: var(--outer);
  top: 50px;
  z-index: 1;
}
.section-faqs .illy img {
  position: absolute;
  min-width: 100%;
  min-height: 100%;
  object-fit: cover;
  top: 50%;
  left: 50%;
  -ms-transform: translate(-50%, -50%); /* IE 9 */
  -webkit-transform: translate(-50%, -50%); /* Chrome, Safari, Opera */
  transform: translate(-50%, -50%);
}
.section-faqs .illy:after {
  content: "";
  display: block;
  padding-top: 140%;
  width: 0;
  float: left;
  position: relative;
}
@media (max-width: 678px) {
  .section-faqs .cta {
    width: calc(100% + 20px);
    margin-left: -10px;
  }
}
@media (max-width: 1000px) {
  .section-faqs .illy {
    display: none;
  }
  .section-faqs .content::after {
    display: none;
  }
}
@media (min-width: 1280px) {
  .section-faqs .illy {
    width: 20%;
  }
  .section-faqs .content::after {
    width: 12%;
    height: 7%;
  }
  .section-faqs .illy img {
    animation: MoveUpDown 2s ease-in-out infinite;
  }
  @keyframes MoveUpDown {
    0%, 100% {
      bottom: 0;
    }
    50% {
      bottom: 20px;
    }
  }
}

.section-sign-off {
  background-color: #32EB96;
  padding-top: 30px;
  padding-bottom: 0;
}
@media (min-width: 960px) {
  .section-sign-off {
    padding-top: calc(60 / 1920 * 100vw);
  }
}
@media (min-width: 6400px) {
  .section-sign-off {
    padding-top: 200px;
  }
}
@media (max-width: 678px) {
  .section-sign-off .illy {
    position: relative;
    width: 70%;
    margin-left: auto;
    margin-right: auto;
    margin-top: var(--mb);
    overflow: hidden;
    position: relative;
  }
  .section-sign-off .illy img {
    position: absolute;
    min-width: 100%;
    min-height: 100%;
    object-fit: cover;
    top: 50%;
    left: 50%;
    -ms-transform: translate(-50%, -50%); /* IE 9 */
    -webkit-transform: translate(-50%, -50%); /* Chrome, Safari, Opera */
    transform: translate(-50%, -50%);
  }
  .section-sign-off .illy:after {
    content: "";
    display: block;
    padding-top: 50%;
    width: 0;
    float: left;
    position: relative;
  }
  .section-sign-off .illy img {
    bottom: 0;
    top: auto;
    transform: translate(-50%, 0);
  }
  .section-sign-off .copy {
    text-align: center;
  }
}
@media (min-width: 678px) {
  .section-sign-off {
    padding-bottom: 30px;
  }
}
@media (min-width: 678px) and (min-width: 960px) {
  .section-sign-off {
    padding-bottom: calc(60 / 1920 * 100vw);
  }
}
@media (min-width: 678px) and (min-width: 6400px) {
  .section-sign-off {
    padding-bottom: 200px;
  }
}
@media (min-width: 678px) {
  .section-sign-off .content {
    display: flex;
    align-items: center;
    z-index: 1;
    justify-content: center;
  }
}
@media (min-width: 678px) {
  .section-sign-off .copy {
    max-width: 45%;
    margin-right: 3%;
  }
}
@media (min-width: 678px) {
  .section-sign-off .cta {
    margin-top: 0;
  }
}
@media (min-width: 678px) {
  .section-sign-off .illy {
    position: absolute;
    width: 30%;
    height: 120%;
    top: -20%;
    right: 0;
    z-index: 0;
  }
  .section-sign-off .illy img {
    bottom: 0;
    top: auto;
    left: auto;
    right: 0;
    transform: translate(0%, 0%);
  }
}
.section-testimonials .video-wrapper {
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: var(--mb);
  margin-top: var(--mb);
  box-shadow: 0px 3px 12px 0px rgba(0, 0, 0, 0.4);
}
.section-testimonials .carousel {
  width: 100%;
  position: relative;
  overflow: hidden;
}
.section-testimonials::before {
  content: "";
  z-index: -1;
  background-color: var(--bg);
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
}
.section-testimonials .copy {
  text-align: center;
}
.section-testimonials .swiper-slide {
  opacity: 0 !important;
  transition: opacity 0.6s;
}
.section-testimonials .swiper-slide.swiper-slide-active {
  opacity: 1 !important;
}
.section-testimonials .stars {
  color: #FED02F;
  letter-spacing: 3px;
}
.section-testimonials .stars .off {
  color: #DEDEDE;
}
.section-testimonials .testimonial {
  position: relative;
  display: flex;
  margin-left: auto;
  margin-right: auto;
}
.section-testimonials .testimonial blockquote {
  width: 100%;
}
.section-testimonials .testimonial .figcaption {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
}
.section-testimonials .testimonial cite {
  font-family: "Source Sans Pro", sans-serif;
  font-size: 18px;
  text-transform: uppercase;
  font-weight: bold;
  font-style: normal;
  display: inline;
}
@media (min-width: 1382.4px) {
  .section-testimonials .testimonial cite {
    font-size: calc(25 / 1920 * 100vw);
  }
}
@media (min-width: 2304px) {
  .section-testimonials .testimonial cite {
    font-size: 30px;
  }
}
.section-testimonials .testimonial::before {
  content: "“";
  position: absolute;
  font-weight: bold;
  font-size: 70px;
}
@media (min-width: 948.3870967742px) {
  .section-testimonials .testimonial::before {
    font-size: calc(124 / 1680 * 100vw);
  }
}
@media (min-width: 2709.6774193548px) {
  .section-testimonials .testimonial::before {
    font-size: 200px;
  }
}
.section-testimonials .testimonial .copy {
  text-align: left;
  padding-left: 50px;
}
.section-testimonials .testimonial .stars {
  margin-top: 10px;
}
.section-testimonials .quote .image {
  overflow: hidden;
  overflow: hidden;
  position: relative;
  border-radius: 50%;
  border: 8px solid #5538E1;
}
.section-testimonials .quote .image img {
  position: absolute;
  min-width: 100%;
  min-height: 100%;
  object-fit: cover;
  top: 50%;
  left: 50%;
  -ms-transform: translate(-50%, -50%); /* IE 9 */
  -webkit-transform: translate(-50%, -50%); /* Chrome, Safari, Opera */
  transform: translate(-50%, -50%);
}
.section-testimonials .quote .image:after {
  content: "";
  display: block;
  padding-top: 100%;
  width: 0;
  float: left;
  position: relative;
}
.section-testimonials .arrows {
  display: flex;
  justify-content: space-between;
  position: absolute;
  width: calc(100% - 20px);
  top: calc(2 * var(--mb) + 52vw);
}
.section-testimonials .arrows div {
  height: 72px;
  width: 72px;
  box-shadow: 0px 3px 8px 0px rgba(0, 0, 0, 0.4);
  border-radius: 50%;
  background: #5538E1 url(https://glasgowvirtualoffices.co.uk/wp-content/themes/virtually/css/../images/svg/arrow-right.svg) no-repeat 55% 50%;
  background-size: 27%;
  transition: background-color 0.3s;
}
.section-testimonials .arrows div:first-of-type {
  transform: rotate(180deg);
  margin-left: 10px;
}
.section-testimonials .arrows div:hover {
  margin-right: 10px;
  background-color: #32EB96;
}
.section-testimonials .illy {
  display: none;
}
.section-testimonials.testimonial-text .testimonial {
  padding-top: 20px;
}
.section-testimonials.testimonial-text .arrows {
  top: calc(50% + 20px);
}
@media (max-width: 520px) {
  .section-testimonials .arrows div {
    height: 50px;
    width: 50px;
  }
  .section-testimonials .quote .image {
    max-width: 200px;
  }
}
@media (max-width: 678px) {
  .section-testimonials .content {
    padding: 0 5px;
  }
  .section-testimonials .testimonial .figcaption {
    text-align: center;
    padding: 0 110px;
    height: 100px;
    margin-bottom: 20px;
    display: flex;
    align-items: center;
  }
  .section-testimonials .testimonial::before {
    top: 140px;
  }
  .section-testimonials .testimonial .image {
    width: 50%;
    margin-left: auto;
    margin-right: auto;
    margin-top: 20px;
  }
  .section-testimonials .testimonial .copy {
    padding-left: 40px;
    padding-right: 20px;
  }
  .section-testimonials .video-wrapper {
    margin-bottom: 0;
  }
  .section-testimonials.testimonial-text .testimonial::before {
    top: 40px;
  }
  .section-testimonials.testimonial-text .arrows {
    top: calc(50% + 8px);
  }
}
@media (min-width: 678px) {
  .section-testimonials .content .copy h2 {
    margin-left: auto;
    margin-right: auto;
    width: 60%;
  }
  .section-testimonials .testimonial {
    width: 80%;
  }
  .section-testimonials .testimonial .figcaption {
    padding: 0 75px;
    height: 70px;
    margin-bottom: 60px;
  }
  .section-testimonials .testimonial .copy {
    padding-left: 9%;
    font-size: 22px;
    line-height: 1.2;
  }
}
@media (min-width: 678px) and (min-width: 1242.3529411765px) {
  .section-testimonials .testimonial .copy {
    font-size: calc(34 / 1920 * 100vw);
  }
}
@media (min-width: 678px) and (min-width: 2936.4705882353px) {
  .section-testimonials .testimonial .copy {
    font-size: 52px;
  }
}
@media (min-width: 678px) {
  .section-testimonials .testimonial::before {
    top: 160px;
  }
}
@media (min-width: 678px) {
  .section-testimonials .testimonial .stars {
    margin-top: 20px;
  }
}
@media (min-width: 678px) {
  .section-testimonials .quote {
    display: flex;
    align-items: flex-start;
  }
  .section-testimonials .quote .copy {
    width: 70%;
  }
  .section-testimonials .quote .image {
    width: 18%;
    margin-left: 2%;
    border: 8px solid #5538E1;
  }
}
@media (min-width: 678px) {
  .section-testimonials.testimonial-text .testimonial::before {
    top: 50px;
  }
}
@media (min-width: 1000px) {
  .section-testimonials .video-wrapper {
    width: 70%;
  }
  .section-testimonials .arrows {
    top: 27%;
  }
  .section-testimonials .arrows .swiper-button-next {
    margin-right: 10px;
  }
  .section-testimonials .arrows .swiper-button-prev {
    margin-left: 10px;
  }
  .section-testimonials .illy {
    position: absolute;
    top: 5%;
    width: 100%;
    height: 40vw;
    display: block;
    pointer-events: none;
  }
  .section-testimonials .illy img {
    position: absolute;
    top: 0;
    width: auto;
    height: 100%;
    transform: translate(0%, 0%);
  }
  .section-testimonials .illy .left-align {
    left: 0;
  }
  .section-testimonials .illy .right-align {
    right: 0;
    left: auto;
  }
  .section-testimonials.testimonial-text .arrows {
    top: 0;
    margin-top: calc(9% - 50px);
    margin-top: calc(8% - 31px);
  }
}
@media (min-width: 1280px) {
  .section-testimonials .video-wrapper {
    width: 50%;
  }
  .section-testimonials .quote .image {
    border-width: 10px;
  }
}

.search-box {
  pointer-events: none;
}
.search-box form {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.search-box form ::placeholder { /* Chrome, Firefox, Opera, Safari 10.1+ */
  color: #000000;
  opacity: 0.5; /* Firefox */
}
.search-box form :-ms-input-placeholder { /* Internet Explorer 10-11 */
  color: #000000;
}
.search-box form ::-ms-input-placeholder { /* Microsoft Edge */
  color: #000000;
}
.search-box form input[type=search] {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border: none;
  border-radius: 0;
  border-bottom: 1px solid black;
  background-color: transparent;
  min-width: inherit;
  padding: 0;
  line-height: 46px;
  height: 46px;
  font-family: "Source Sans Pro", serif;
  font-weight: normal;
  font-size: 16px;
  line-height: 1.3;
}
@media (min-width: 1280px) {
  .search-box form input[type=search] {
    font-size: calc(24 / 1920 * 100vw);
  }
}
@media (min-width: 2560px) {
  .search-box form input[type=search] {
    font-size: 32px;
  }
}
.search-box form input[type=search]::-webkit-search-cancel-button {
  position: relative;
  -webkit-appearance: none;
  height: 25px;
  width: 25px;
  border-radius: 20px;
  background: rgba(0, 0, 0, 0.1) url(https://glasgowvirtualoffices.co.uk/wp-content/themes/virtually/css/../images/svg/cross.svg) no-repeat center;
  background-size: 10px;
}
.search-box form input[type=submit] {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  font-family: "Source Sans Pro", sans-serif;
  text-transform: uppercase;
  font-size: 15px;
  font-weight: bold;
  background-color: #5538E1;
  line-height: 48px;
  padding: 0px 20px;
  display: inline-block;
  color: white;
  text-transform: uppercase;
  min-width: 15vw;
  text-align: center;
  margin-top: 20px;
  letter-spacing: 0.5px;
  font-weight: 600;
  margin: 0;
  margin-left: 10px;
  border: none;
  height: 46px;
  width: 60px;
  min-width: inherit;
  padding: 0;
  border-radius: 5px 5px;
  color: white;
  background-color: rgba(0, 0, 0, 0.8);
  transition: background-color 0.3s;
  border-radius: 0;
}
@media (min-width: 1600px) {
  .search-box form input[type=submit] {
    font-size: calc(18 / 1920 * 100vw);
  }
}
@media (min-width: 1920px) {
  .search-box form input[type=submit] {
    font-size: 18px;
  }
}
.search-box form input[type=submit]::after {
  display: none;
}
.search-box form input[type=submit]:hover {
  color: white;
  background-color: #2e179c;
}
@media (max-width: 1000px) {
  .search-box form input[type=submit] {
    padding: 0 20px;
  }
}
.search-box form input[type=submit]:hover, .search-box form input[type=submit]:active {
  background-color: #5538E1;
  cursor: pointer;
}
.search-box ul {
  display: flex;
  align-items: center;
}
.search-box ul li {
  font-family: "Source Sans Pro", sans-serif;
  font-size: 18px;
  font-size: 1.125rem;
  line-height: 25.2px;
  line-height: 1.4;
  font-weight: bold;
  pointer-events: all;
}
.search-box .toggle-search {
  width: 46px;
  height: 46px;
  background: url(https://glasgowvirtualoffices.co.uk/wp-content/themes/virtually/css/../images/svg/magnifying-glass.svg) no-repeat center;
  background-size: 20px;
  position: absolute;
  z-index: 2;
  border-radius: 5px;
  pointer-events: all;
}

/* -----------------------------------------------------------------------------------------------------------

												 DESKTOP 

------------------------------------------------------------------------------------------------------------- */
@media (min-width: 990px) {
  .search-box {
    display: flex;
    align-items: center;
    position: absolute;
    justify-content: flex-end;
    top: calc(50% - 12.5px);
    right: var(--outer);
    max-width: calc(100% - 2 * var(--outer));
    width: 100%;
  }
  .search-box .toggle-search {
    right: 200px;
    transition: right 0.3s, background-color 0.3s;
  }
  .search-box .toggle-search:hover {
    cursor: pointer;
    background-color: rgba(0, 0, 0, 0.1);
  }
  .search-box form {
    opacity: 0;
    position: relative;
    z-index: 1;
    margin: 0;
    padding-left: 46px;
    top: -300px;
    transition: opacity 0.2s, transform 0.2s, top 0s 0.3s;
    transform: translateX(50px);
  }
  .search-box form label {
    display: none;
  }
  .search-box form input[type=search] {
    width: 400px;
  }
  .search-box ul li {
    margin-left: 20px;
  }
}
@media (min-width: 990px) and (min-width: 1000px) {
  .search-box {
    max-width: calc(84% - (2 * var(--outer)));
    right: calc(8% + var(--outer));
  }
}
@media (min-width: 990px) and (min-width: 1280px) {
  .search-box {
    max-width: calc(96% - (2 * var(--outer)));
    right: calc(2% + var(--outer));
  }
}
@media (min-width: 990px) and (min-width: 1440px) {
  .search-box {
    max-width: calc(100% - (2 * var(--outer)));
    right: var(--outer);
  }
}
@media (min-width: 990px) {
  .show-search .search-box {
    pointer-events: all;
  }
  .show-search .search-box form {
    opacity: 1;
    top: 0px;
    transform: translateX(0);
    transition: opacity 0.3s 0.2s, transform 0.4s, top 0s 0s;
  }
  .show-search .toggle-search {
    right: 680px;
    background-image: url(https://glasgowvirtualoffices.co.uk/wp-content/themes/virtually/css/../images/svg/cross.svg);
  }
  .show-search .main-nav {
    opacity: 0;
  }
}
/* -----------------------------------------------------------------------------------------------------------

												 Mobile 

------------------------------------------------------------------------------------------------------------- */
@media (max-width: 989px) {
  .search-box {
    width: 80%;
    max-width: 500px;
    position: relative;
  }
  .search-box form {
    margin: 10px 0 20px 0;
    justify-content: flex-end;
    opacity: 0;
  }
  .search-box form label {
    display: none;
  }
  .search-box form input[type=submit] {
    height: 46px;
    width: 50px;
    padding: 0;
  }
  .search-box form input[type=search] {
    width: calc(100% - 100px);
  }
  .search-box ul {
    justify-content: flex-start;
  }
  .search-box ul li {
    margin: 0 20px 0 0;
    line-height: 1;
  }
  .search-box ul li + li {
    border-left: 1px solid #000000;
    padding-left: 20px;
  }
  .search-box .toggle-search {
    top: 10px;
    left: -10px;
    transition: left 0.3s, background-color 0.3s;
  }
  .show-search .search-box {
    pointer-events: all;
  }
  .show-search .search-box form {
    opacity: 1;
    transform: translateX(0);
    transition: opacity 0.3s 0.2s, transform 0.4s;
    pointer-events: all;
  }
  .show-search .toggle-search {
    left: -10px;
    background-image: url(https://glasgowvirtualoffices.co.uk/wp-content/themes/virtually/css/../images/svg/cross.svg);
  }
}
.section-table .table-wrapper {
  display: flex;
  width: 100%;
}
.section-table .table-wrapper.has-link {
  margin-bottom: 80px;
}
.section-table .column-entry {
  text-align: center;
  font-family: "Source Sans Pro", sans-serif;
  position: relative;
}
.section-table .column-entry.highlight {
  font-weight: bold;
  background-color: rgba(50, 235, 150, 0.2);
}
.section-table .column-entry.highlight .logo {
  background-color: #32EB96;
}
.section-table .row {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  line-height: 94px;
  user-select: none;
}
.section-table .intro {
  margin-bottom: var(--mb);
}
.section-table .logo {
  height: 94px;
  overflow: hidden;
  position: relative;
}
.section-table .logo img {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  object-fit: contain;
  width: 70%;
  height: 90%;
}
.section-table span.icon {
  font-size: 22px;
  line-height: 1.2;
}
@media (min-width: 1242.3529411765px) {
  .section-table span.icon {
    font-size: calc(34 / 1920 * 100vw);
  }
}
@media (min-width: 2936.4705882353px) {
  .section-table span.icon {
    font-size: 52px;
  }
}
.section-table span.icon.tick {
  color: #20BF76;
}
.section-table span.icon.cross {
  color: #B54A4A;
}
.section-table .dt-button {
  display: none;
  position: absolute;
  min-width: 100%;
  text-align: center;
  white-space: nowrap;
}
.section-table .mb-button {
  width: calc(100% - 2 * var(--outer));
  margin-left: var(--outer);
}
@media (max-width: 1000px) {
  .section-table .content-table {
    padding: 0;
  }
  .section-table .table-wrapper {
    flex-direction: column;
  }
  .section-table .column {
    display: flex;
    flex-wrap: wrap;
    border-bottom: 1px solid rgba(222, 222, 222, 0.6);
  }
  .section-table .column:first-of-type {
    border-top: 5px solid rgba(222, 222, 222, 0.6);
  }
  .section-table .column-one {
    text-align: center;
    font-weight: bold;
    font-size: 22px;
    line-height: 1.2;
  }
}
@media (max-width: 1000px) and (min-width: 1242.3529411765px) {
  .section-table .column-one {
    font-size: calc(34 / 1920 * 100vw);
  }
}
@media (max-width: 1000px) and (min-width: 2936.4705882353px) {
  .section-table .column-one {
    font-size: 52px;
  }
}
@media (max-width: 1000px) {
  .section-table .column-one .row {
    width: 100%;
  }
}
@media (max-width: 1000px) {
  .section-table .column-entry .row {
    width: 50%;
  }
}
@media (max-width: 1000px) {
  .section-table .logo {
    width: 50%;
  }
  .section-table .logo img {
    width: 50%;
    height: 90%;
  }
}
@media (max-width: 1000px) {
  .section-table .arrows {
    display: flex;
    justify-content: space-between;
    position: absolute;
    width: calc(100% - 40px);
    left: 20px;
    top: 22px;
  }
  .section-table .arrows div {
    height: 50px;
    width: 50px;
    box-shadow: 0px 3px 16px 0px rgba(0, 0, 0, 0.4);
    border-radius: 50%;
    background: #5538E1 url(https://glasgowvirtualoffices.co.uk/wp-content/themes/virtually/css/../images/svg/arrow-right.svg) no-repeat 55% 50%;
    background-size: 27%;
    transition: background-color 0.3s;
  }
  .section-table .arrows div:first-of-type {
    transform: rotate(180deg);
  }
  .section-table .arrows div:hover {
    background-color: #32EB96;
  }
}
@media (max-width: 1000px) {
  .section-table .row {
    display: none;
  }
}
@media (max-width: 1000px) {
  .section-table .active-row {
    display: block;
    -webkit-animation-duration: 0.2s;
    animation-duration: 0.2s;
    -webkit-animation-fill-mode: both;
    animation-fill-mode: both;
    animation-delay: 0.1s;
    -webkit-animation-delay: 0.1s;
    animation-timing-function: linear;
    -webkit-animation-timing-function: linear;
    -webkit-animation-name: fadeInKs;
    animation-name: fadeInKs;
  }
}
@media (max-width: 1000px) {
  .section-table .content-table[data-dir=prev] .column-one .active-row {
    -webkit-animation-duration: 0.3s;
    animation-duration: 0.3s;
    -webkit-animation-fill-mode: both;
    animation-fill-mode: both;
    animation-delay: 0s;
    -webkit-animation-delay: 0s;
    animation-timing-function: linear;
    -webkit-animation-timing-function: linear;
    -webkit-animation-name: fadeInLeftKs;
    animation-name: fadeInLeftKs;
    animation-timing-function: ease-out;
  }
}
@media (max-width: 1000px) {
  .section-table .content-table[data-dir=next] .column-one .active-row {
    -webkit-animation-duration: 0.3s;
    animation-duration: 0.3s;
    -webkit-animation-fill-mode: both;
    animation-fill-mode: both;
    animation-delay: 0s;
    -webkit-animation-delay: 0s;
    animation-timing-function: linear;
    -webkit-animation-timing-function: linear;
    -webkit-animation-name: fadeInRightKs;
    animation-name: fadeInRightKs;
    animation-timing-function: ease-out;
  }
}
@media (max-width: 1000px) {
  .section-table .content-table[data-disable=prev] .swiper-button-prev {
    opacity: 0.5;
    pointer-events: none;
  }
}
@media (max-width: 1000px) {
  .section-table .content-table[data-disable=next] .swiper-button-next {
    opacity: 0.5;
    pointer-events: none;
  }
}
@media (min-width: 1000px) {
  .section-table .table-wrapper {
    align-items: flex-end;
    width: calc(100% + 60px);
    margin-left: -30px;
    box-shadow: 0 3px 12px rgba(0, 0, 0, 0.2);
  }
  .section-table .column-entry {
    flex: 1;
  }
  .section-table .column-one {
    flex: 2;
  }
  .section-table .column-one .row {
    margin-left: 30px;
    padding-left: 20px;
    padding-right: 10px;
  }
  .section-table .column:last-of-type {
    margin-right: 30px;
  }
  .section-table .row {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    line-height: 84px;
    border-bottom: 1px solid rgba(222, 222, 222, 0.6);
  }
  .section-table .row:last-of-type {
    border-bottom: none;
    padding-bottom: 20px;
  }
  .section-table .row:first-of-type {
    border-top: 2px solid #707070;
  }
  .section-table .logo {
    height: 148px;
    border-bottom: 2px solid #707070;
  }
  .section-table .dt-button {
    display: block;
  }
  .section-table .mb-button {
    display: none;
  }
}

.alt-price .plan-tile .cta-yearly {
  display: block;
}
.alt-price .plan-tile .cta-monthly {
  display: none;
}

.plan-tile {
  border: 5px solid #B167C3;
  padding: 30px;
  padding: 20px;
  text-align: center;
  background-color: white;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  align-items: center;
  box-shadow: 0px 3px 8px 0px rgba(0, 0, 0, 0.2);
}
@media (min-width: 1280px) {
  .plan-tile {
    padding: calc(30 / 1920 * 100vw);
  }
}
@media (min-width: 3200px) {
  .plan-tile {
    padding: 50px;
  }
}
.plan-tile h3 {
  font-family: "Source Serif Pro", serif;
  font-size: 24px;
  text-transform: none;
  margin-bottom: 10px;
}
@media (min-width: 1440px) {
  .plan-tile h3 {
    font-size: calc(32 / 1920 * 100vw);
  }
}
@media (min-width: 3240px) {
  .plan-tile h3 {
    font-size: 54px;
  }
}
.plan-tile .included {
  font-family: "Source Sans Pro", serif;
  font-weight: normal;
  font-size: 16px;
  line-height: 1.3;
  line-height: 1.2rem;
  margin-bottom: 10px;
  font-weight: bold;
  font-family: "Source Sans Pro", sans-serif;
  text-transform: uppercase;
}
@media (min-width: 1280px) {
  .plan-tile .included {
    font-size: calc(24 / 1920 * 100vw);
  }
}
@media (min-width: 2560px) {
  .plan-tile .included {
    font-size: 32px;
  }
}
.plan-tile .description {
  font-size: 16px;
  line-height: 1.3;
  line-height: 1.2em;
}
@media (min-width: 1536px) {
  .plan-tile .description {
    font-size: calc(20 / 1920 * 100vw);
  }
}
@media (min-width: 2688px) {
  .plan-tile .description {
    font-size: 28px;
  }
}
.plan-tile .description p {
  margin-bottom: 6px;
}
.plan-tile .price {
  font-family: "Source Sans Pro", sans-serif;
  font-weight: bold;
  line-height: 1em;
  font-family: "Source Serif Pro", serif;
  font-size: 30px;
  margin-bottom: var(--mb);
}
@media (min-width: 778.3783783784px) {
  .plan-tile .price {
    font-size: calc(74 / 1920 * 100vw);
  }
}
@media (min-width: 1920px) {
  .plan-tile .price {
    font-size: 74px;
  }
}
.plan-tile .price span {
  font-size: 14px;
  font-size: 0.875rem;
  line-height: 19.6px;
  line-height: 1.4;
}
.plan-tile .cta {
  display: block;
  margin-left: auto;
  margin-right: auto;
}
.plan-tile .buttons {
  width: 100%;
}
.plan-tile .cta-secondary {
  margin-top: 5px;
  background-color: #DEDEDE;
  color: #5538E1;
}
.plan-tile .cta-secondary:hover {
  background-color: #ababab;
}
.plan-tile .cta-yearly {
  display: none;
}
@media (min-width: 678px) {
  .plan-tile .price span {
    display: block;
    font-size: 18px;
    font-size: 1.125rem;
    line-height: 25.2px;
    line-height: 1.4;
  }
}
.white-bg + .section-selector.white-bg:not(.single-office) {
  padding-top: 0 !important;
}

.section-selector .price-toggle {
  transform: translateY(-20px);
}
.section-selector .offices, .section-selector .add-ons {
  display: flex;
  flex-direction: column;
  position: relative;
}
.section-selector .office-tile, .section-selector .add-on {
  position: relative;
  transition: box-shadow 0.3s, border-color 0.3s;
}
.section-selector .office-tile p, .section-selector .add-on p {
  margin-bottom: 0;
}
.section-selector .office-tile.addon-active, .section-selector .office-tile.office-active, .section-selector .add-on.addon-active, .section-selector .add-on.office-active {
  box-shadow: 0px 3px 12px 0px rgba(0, 0, 0, 0.4);
  border-color: #B167C3;
}
.section-selector .add-on {
  border: 5px solid #DEDEDE;
  box-shadow: 0px 3px 12px 0px rgba(0, 0, 0, 0);
}
.section-selector .add-on:hover {
  cursor: pointer;
  border-color: #B167C3;
  box-shadow: 0px 3px 12px 0px rgba(0, 0, 0, 0.4);
}
.section-selector .add-on.addon-active {
  box-shadow: 0px 3px 12px 0px rgba(0, 0, 0, 0.4);
  border-color: #B167C3;
}
.section-selector .office-tile {
  margin-bottom: 30px;
}
.section-selector .office-tile .caveat {
  font-size: 14px;
  font-size: 0.875rem;
  line-height: 19.6px;
  line-height: 1.4;
}
.section-selector .office-tile.office-active {
  box-shadow: 0px 3px 12px 0px rgba(0, 0, 0, 0.4);
  border-color: white;
}
.section-selector .office-tile .tile-bg-link {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: transparent;
  z-index: 20;
}
.section-selector .office-tile .buttons {
  position: relative;
  z-index: 21;
}
.section-selector .office-tile .buttons .cta-alt {
  margin-top: 5px;
}
.section-selector .office-tile .buttons .cta {
  width: 100%;
}
.section-selector .office-tile .image {
  border: clamp(5px, 1vw, 10px) solid white;
  box-shadow: 0px 0px 6px 0px rgba(0, 0, 0, 0.2);
  transition: box-shadow 0.3s, border-color 0.3s;
}
.section-selector .office-tile:hover .image {
  border-color: #32EB96;
  box-shadow: 0px 3px 12px 0px rgba(0, 0, 0, 0.4);
}
.section-selector .image + .details {
  margin-top: 10px;
}
.section-selector .image img {
  filter: saturate(100%);
  transition: filter 0.3s;
}
.section-selector .image::before {
  content: "Select office";
  content: "";
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  position: absolute;
  top: 0;
  left: 0;
  color: white;
  font-family: "Source Sans Pro", sans-serif;
  font-size: 18px;
  text-transform: uppercase;
  font-weight: bold;
  z-index: 1;
  background-color: rgba(177, 103, 195, 0.7);
  opacity: 0;
  transition: opacity 0.3s;
}
@media (min-width: 1382.4px) {
  .section-selector .image::before {
    font-size: calc(25 / 1920 * 100vw);
  }
}
@media (min-width: 2304px) {
  .section-selector .image::before {
    font-size: 30px;
  }
}
.section-selector h3 {
  margin-bottom: 5px;
}
.section-selector address {
  font-style: normal;
}
.section-selector .add-ons-holder {
  text-align: center;
  position: relative;
}
.section-selector .add-ons-holder h2 {
  text-align: center;
  margin-top: 30px;
  margin-bottom: 30px;
}
@media (min-width: 1152px) {
  .section-selector .add-ons-holder h2 {
    margin-top: calc(50 / 1920 * 100vw);
  }
}
@media (min-width: 3456px) {
  .section-selector .add-ons-holder h2 {
    margin-top: 90px;
  }
}
@media (min-width: 1152px) {
  .section-selector .add-ons-holder h2 {
    margin-bottom: calc(50 / 1920 * 100vw);
  }
}
@media (min-width: 3456px) {
  .section-selector .add-ons-holder h2 {
    margin-bottom: 90px;
  }
}
.section-selector .add-ons-holder .cta {
  margin-top: 30px;
}
.section-selector .add-ons-holder .add-ons {
  text-align: left;
}
.section-selector .add-ons-holder .price-toggle {
  transform: translateY(0);
  margin-bottom: 0;
}
.section-selector .add-on {
  display: flex;
  flex-direction: column;
}
.section-selector .add-on.office-specific {
  display: none;
}
.section-selector .add-on .copy {
  font-size: 16px;
  font-size: 1rem;
  line-height: 22.4px;
  line-height: 1.4;
}
.section-selector .add-on .copy h3 {
  font-size: 16px;
  line-height: 1.3;
  font-family: "Source Sans Pro", sans-serif;
  font-weight: bold;
}
@media (min-width: 1536px) {
  .section-selector .add-on .copy h3 {
    font-size: calc(20 / 1920 * 100vw);
  }
}
@media (min-width: 2688px) {
  .section-selector .add-on .copy h3 {
    font-size: 28px;
  }
}
.section-selector .add-on .price {
  font-family: "Source Sans Pro", sans-serif;
  font-size: 47px;
  font-size: 2.9375rem;
  line-height: 42.3px;
  line-height: 0.9;
  font-weight: bold;
  text-transform: uppercase;
  margin-top: 10px;
}
.section-selector .add-on .price span {
  font-weight: normal;
  font-size: 14px;
  font-size: 0.875rem;
  line-height: 19.6px;
  line-height: 1.4;
  margin-left: 5px;
  white-space: nowrap;
}
.section-selector .office-anchor, .section-selector .selector-anchor {
  position: absolute;
  top: -180px;
  left: 0;
  width: 100%;
  display: block;
}
.section-selector .office-anchor {
  top: -40vh;
}
.section-selector .unavailable {
  opacity: 0.5;
  pointer-events: none;
}
.section-selector .unavailable .roundel {
  display: none;
}
.section-selector .unavailable .image::before {
  content: "Currently Unavailable";
  opacity: 1;
}
@media (max-width: 520px) {
  .section-selector .add-ons-holder, .section-selector .offices {
    width: calc(100% + 20px);
    margin-left: -10px;
  }
  .section-selector .add-ons-holder h2 {
    margin-top: 0;
    margin-bottom: 15px;
  }
  .section-selector .image {
    overflow: hidden;
    position: relative;
  }
  .section-selector .image img {
    position: absolute;
    min-width: 100%;
    min-height: 100%;
    object-fit: cover;
    top: 50%;
    left: 50%;
    -ms-transform: translate(-50%, -50%); /* IE 9 */
    -webkit-transform: translate(-50%, -50%); /* Chrome, Safari, Opera */
    transform: translate(-50%, -50%);
  }
  .section-selector .image:after {
    content: "";
    display: block;
    padding-top: 70%;
    width: 0;
    float: left;
    position: relative;
  }
  .section-selector .add-on {
    padding: 10px 10px 5px 10px;
    max-width: 600px;
    flex-direction: column;
    margin-bottom: 10px;
    border-width: 4px;
  }
  .section-selector .add-on .copy {
    padding-right: 0px;
    font-size: 14px;
    font-size: 0.875rem;
    line-height: 16.8px;
    line-height: 1.2;
  }
  .section-selector .add-on .price {
    margin-top: 0px;
    font-size: 28px;
    font-size: 1.75rem;
    line-height: 39.2px;
    line-height: 1.4;
  }
  .section-selector .add-on .price span {
    font-size: 11px;
    font-size: 0.6875rem;
    line-height: 15.4px;
    line-height: 1.4;
  }
}
@media (min-width: 520px) {
  .section-selector .add-ons {
    align-items: center;
  }
  .section-selector .image {
    overflow: hidden;
    position: relative;
  }
  .section-selector .image img {
    position: absolute;
    min-width: 100%;
    min-height: 100%;
    object-fit: cover;
    top: 50%;
    left: 50%;
    -ms-transform: translate(-50%, -50%); /* IE 9 */
    -webkit-transform: translate(-50%, -50%); /* Chrome, Safari, Opera */
    transform: translate(-50%, -50%);
  }
  .section-selector .image:after {
    content: "";
    display: block;
    padding-top: 80%;
    width: 0;
    float: left;
    position: relative;
  }
  .section-selector .image + .details {
    margin-top: 25px;
  }
  .section-selector .add-on {
    padding: 20px 15px;
    max-width: 600px;
    flex-direction: row;
    margin-bottom: 10px;
    width: 100%;
  }
  .section-selector .add-on .copy {
    padding-right: 20px;
  }
  .section-selector .add-on .price {
    margin-top: 0;
  }
  .section-selector .add-on .price span {
    display: block;
  }
}
@media (min-width: 678px) {
  .section-selector .office-tile {
    display: flex;
    justify-content: space-between;
    align-items: stretch;
  }
  .section-selector .office-tile .image, .section-selector .office-tile .details {
    width: 48%;
    margin-bottom: 0;
  }
  .section-selector .office-tile .details {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
  }
  .section-selector .office-tile .details h3 {
    margin-bottom: calc(.2 * var(--mb));
  }
  .section-selector .roundel {
    left: 0;
    transform: translate(-20%, -25px);
  }
}
@media (min-width: 1000px) {
  .section-selector .price-toggle {
    transform: translateY(-40px);
  }
  .section-selector .offices {
    flex-direction: row;
    justify-content: center;
    flex-wrap: wrap;
  }
  .section-selector .office-tile {
    display: block;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
  }
  .section-selector .office-tile .image + .details {
    margin-top: calc(.5 * var(--mb));
  }
  .section-selector .office-tile .image, .section-selector .office-tile .details {
    width: 100%;
  }
  .section-selector .office-tile .details {
    flex: 2;
  }
  .section-selector .num-2 .office-tile,
.section-selector .num-4 .office-tile {
    width: 37%;
    margin-right: 4%;
  }
  .section-selector .num-2 .office-tile:nth-child(2n+2),
.section-selector .num-4 .office-tile:nth-child(2n+2) {
    margin-right: 0;
  }
  .section-selector .num-3 .office-tile {
    width: 32%;
    margin-right: 2%;
  }
  .section-selector .num-3 .office-tile:nth-child(3n+3) {
    margin-right: 0;
  }
  .section-selector .add-ons {
    flex-direction: row;
    justify-content: space-between;
    flex-wrap: wrap;
    align-items: stretch;
  }
  .section-selector .add-on {
    padding: 20px 20px;
    width: 32%;
    flex-direction: column;
    margin-bottom: 20px;
  }
  .section-selector .add-on .price {
    margin-top: 10px;
  }
  .section-selector .add-on .price span {
    display: inline-block;
  }
  .section-selector .add-on .copy {
    padding-right: 0px;
  }
  .section-selector .num-4 .add-on {
    width: 40%;
    margin-left: 1%;
    margin-right: 1%;
  }
  .section-selector .num-4 .add-ons {
    justify-content: center;
  }
}
@media (min-width: 1280px) {
  .section-selector .num-2 .office-tile {
    width: 32%;
  }
  .section-selector .num-4 .office-tile {
    width: 23%;
  }
  .section-selector .num-4 .office-tile:nth-child(n) {
    margin-right: 2%;
  }
  .section-selector .num-4 .office-tile:nth-child(4n+4) {
    margin-right: 0;
  }
  .section-selector .add-on {
    padding: 25px 20px;
    flex-direction: row;
    justify-content: space-between;
  }
  .section-selector .add-on .price {
    margin-top: 0;
    text-align: right;
  }
  .section-selector .add-on .price span {
    display: block;
  }
  .section-selector .add-on .copy {
    padding-right: 10px;
  }
  .section-selector .roundel {
    left: auto;
    transform: translate(20%, -50%);
  }
}

.no-touch .caveat, .touch .caveat {
  font-size: 12px;
  margin-top: 5px;
  display: block;
}
@media (min-width: 1440px) {
  .no-touch .caveat, .touch .caveat {
    font-size: calc(16 / 1920 * 100vw);
  }
}
@media (min-width: 2040px) {
  .no-touch .caveat, .touch .caveat {
    font-size: 17px;
  }
}
.no-touch .orcall.touch-show, .touch .orcall.touch-show {
  text-align: center;
}
.no-touch .orcall.touch-show .cta-alt, .touch .orcall.touch-show .cta-alt {
  margin-top: 5px;
}
@media (min-width: 678px) {
  .no-touch .orcall.touch-show, .touch .orcall.touch-show {
    display: none;
  }
}
.no-touch .orcall, .touch .orcall {
  text-align: center;
}
.no-touch .orcall .cta, .touch .orcall .cta {
  margin-bottom: calc(.5 * var(--mb));
}
.no-touch .orcall .caveat, .touch .orcall .caveat {
  margin-bottom: calc(.2 * var(--mb));
}
.no-touch .orcall a:not(.cta), .touch .orcall a:not(.cta) {
  font-weight: bold;
}
@media (max-width: 1000px) {
  .no-touch .orcall, .touch .orcall {
    margin-top: calc(.5 * var(--mb));
  }
}
@media (min-width: 1000px) {
  .no-touch .orcall, .touch .orcall {
    margin-top: calc(.5 * var(--mb));
  }
}
@media (min-width: 1920px) {
  .no-touch .orcall a:not(.cta), .touch .orcall a:not(.cta) {
    font-family: "Source Sans Pro", serif;
    font-weight: normal;
    font-size: 16px;
    line-height: 1.3;
    font-weight: bold;
  }
}
@media (min-width: 1920px) and (min-width: 1280px) {
  .no-touch .orcall a:not(.cta), .touch .orcall a:not(.cta) {
    font-size: calc(24 / 1920 * 100vw);
  }
}
@media (min-width: 1920px) and (min-width: 2560px) {
  .no-touch .orcall a:not(.cta), .touch .orcall a:not(.cta) {
    font-size: 32px;
  }
}
@media (min-width: 1920px) {
  .no-touch .orcall .notouch-show, .touch .orcall .notouch-show {
    font-size: 16px;
    line-height: 1.3;
  }
}
@media (min-width: 1920px) and (min-width: 1536px) {
  .no-touch .orcall .notouch-show, .touch .orcall .notouch-show {
    font-size: calc(20 / 1920 * 100vw);
  }
}
@media (min-width: 1920px) and (min-width: 2688px) {
  .no-touch .orcall .notouch-show, .touch .orcall .notouch-show {
    font-size: 28px;
  }
}
@media (max-width: 678px) {
  .no-touch .buy-now, .touch .buy-now {
    width: 100%;
  }
}
.section-video-list .video-list {
  display: flex;
  flex-wrap: wrap;
}
.section-video-list .entry-video {
  margin-bottom: var(--mb);
}
.section-video-list .entry-video h3 {
  font-size: 22px;
  line-height: 1.2;
  font-family: "Source Serif Pro", serif;
  margin-top: var(--mb);
  margin-bottom: calc(0.5 * var(--mb));
  text-transform: none;
}
@media (min-width: 1242.3529411765px) {
  .section-video-list .entry-video h3 {
    font-size: calc(34 / 1920 * 100vw);
  }
}
@media (min-width: 2936.4705882353px) {
  .section-video-list .entry-video h3 {
    font-size: 52px;
  }
}
@media (max-width: 678px) {
  .section-video-list .cta {
    width: 100%;
  }
}
@media (min-width: 678px) {
  .section-video-list .entry-video {
    margin-bottom: calc(2 * var(--mb));
    width: 48%;
    margin-right: 4%;
  }
  .section-video-list .entry-video:nth-of-type(2n + 2) {
    margin-right: 0;
  }
}
@media (min-width: 1000px) {
  .section-video-list .entry-video {
    display: flex;
    align-items: center;
    justify-content: space-between;
  }
  .section-video-list .entry-video .image, .section-video-list .entry-video .copy, .section-video-list .entry-video .audio-holder, .section-video-list .entry-video .video-poster {
    width: 48%;
  }
  .section-video-list .entry-video .copy {
    font-size: 16px;
    line-height: 1.3;
  }
}
@media (min-width: 1000px) and (min-width: 1536px) {
  .section-video-list .entry-video .copy {
    font-size: calc(20 / 1920 * 100vw);
  }
}
@media (min-width: 1000px) and (min-width: 2688px) {
  .section-video-list .entry-video .copy {
    font-size: 28px;
  }
}
@media (min-width: 1000px) {
  .section-video-list .entry-video .copy h3 {
    margin-bottom: calc(var(--mb) / 4);
    margin-top: 0;
  }
}
@media (min-width: 1000px) {
  .section-video-list .entry-video .copy > :last-child {
    margin-bottom: 0;
  }
}

.section-plan-tiles .intro {
  font-family: "Source Sans Pro", serif;
  font-weight: normal;
  font-size: 16px;
  line-height: 1.3;
  margin-bottom: calc(1.5 * var(--mb));
}
@media (min-width: 1280px) {
  .section-plan-tiles .intro {
    font-size: calc(24 / 1920 * 100vw);
  }
}
@media (min-width: 2560px) {
  .section-plan-tiles .intro {
    font-size: 32px;
  }
}
.section-plan-tiles .plan-tile {
  margin-bottom: 10px;
}
.section-plan-tiles .plan-tile .cta-alt {
  margin-top: 5px;
}
.section-plan-tiles .tiles {
  position: relative;
  z-index: 1;
}
.section-plan-tiles .call-us {
  text-align: center;
  width: 100%;
  margin-top: 20px;
  display: none;
  font-size: 22px;
  line-height: 1.2;
}
@media (min-width: 1242.3529411765px) {
  .section-plan-tiles .call-us {
    font-size: calc(34 / 1920 * 100vw);
  }
}
@media (min-width: 2936.4705882353px) {
  .section-plan-tiles .call-us {
    font-size: 52px;
  }
}
.section-plan-tiles .call-us a {
  color: #B167C3;
  font-weight: bold;
}
.section-plan-tiles .plan-tiles-caveat {
  font-size: 12px;
  text-align: center;
  width: 100%;
}
@media (min-width: 1440px) {
  .section-plan-tiles .plan-tiles-caveat {
    font-size: calc(16 / 1920 * 100vw);
  }
}
@media (min-width: 2040px) {
  .section-plan-tiles .plan-tiles-caveat {
    font-size: 17px;
  }
}
.section-plan-tiles .plan-tiles-caveat p {
  margin-bottom: 5px;
}
.section-plan-tiles .plan-tiles-caveat > :last-child {
  margin-bottom: 0;
}
@media (min-width: 678px) {
  .section-plan-tiles .plan-tile {
    margin-bottom: 2%;
    width: 32%;
    margin-right: 1%;
  }
  .section-plan-tiles .plan-tile:n-th-of-type(3n + 3) {
    margin-right: 0;
  }
  .section-plan-tiles .plan-tile .cta-alt {
    display: none;
  }
  .section-plan-tiles .tiles {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
  }
  .section-plan-tiles.no-illustration .tiles {
    margin-left: auto;
    margin-right: auto;
  }
  .section-plan-tiles .call-us {
    display: block;
  }
}
.section-plan-tiles .illy {
  position: absolute;
  display: none;
  height: 95%;
  width: 30%;
  right: var(--outer);
  bottom: -10%;
  z-index: 0;
}
@media (min-width: 1000px) {
  .section-plan-tiles .intro {
    width: 70%;
  }
}
@media (min-width: 1280px) {
  .section-plan-tiles .tiles, .section-plan-tiles .plan-tiles-caveat, .section-plan-tiles .call-us {
    width: 75%;
  }
  .section-plan-tiles .intro {
    width: 55%;
  }
  .section-plan-tiles .illy {
    display: block;
    height: 95%;
    width: 30%;
    bottom: 0%;
  }
}

.section-reasons .intro {
  font-size: 22px;
  line-height: 1.2;
  font-weight: bold;
  margin-bottom: calc(0.5 * var(--mb));
}
@media (min-width: 1242.3529411765px) {
  .section-reasons .intro {
    font-size: calc(34 / 1920 * 100vw);
  }
}
@media (min-width: 2936.4705882353px) {
  .section-reasons .intro {
    font-size: 52px;
  }
}
.section-reasons .copy {
  margin-bottom: var(--mb);
}
.section-reasons .reasons h3 {
  margin-bottom: calc(0.5 * var(--mb));
  color: #B167C3;
}
.section-reasons .reason {
  margin-bottom: var(--mb);
  break-inside: avoid;
}
@media (min-width: 678px) {
  .section-reasons .reasons {
    column-count: 2;
    column-gap: 7%;
  }
}
@media (min-width: 1000px) {
  .section-reasons .copy {
    width: 60%;
  }
  .section-reasons .reasons {
    width: 95%;
    column-count: 2;
    column-gap: 7%;
  }
}

.section-contact {
  width: 100%;
}
.section-contact .content {
  display: flex;
  justify-content: space-between;
  flex-direction: column;
}
.section-contact .entry-office {
  display: flex;
  justify-content: space-between;
  margin-bottom: 40px;
}
.section-contact .entry-office .image {
  width: 66%;
  overflow: hidden;
  position: relative;
  background-color: #32EB96;
}
.section-contact .entry-office .image img {
  position: absolute;
  min-width: 100%;
  min-height: 100%;
  object-fit: cover;
  top: 50%;
  left: 50%;
  -ms-transform: translate(-50%, -50%); /* IE 9 */
  -webkit-transform: translate(-50%, -50%); /* Chrome, Safari, Opera */
  transform: translate(-50%, -50%);
}
.section-contact .entry-office .image:after {
  content: "";
  display: block;
  padding-top: 56%;
  width: 0;
  float: left;
  position: relative;
}
.section-contact .entry-office .copy {
  width: 31%;
}
.section-contact .entry-office address {
  font-style: normal;
}
.section-contact .entry-office h3 {
  margin-bottom: 5px;
}
.section-contact .entry-office a {
  font-family: "Source Sans Pro", sans-serif;
  text-transform: uppercase;
  font-size: 15px;
  font-weight: bold;
  font-size: 16px;
  font-size: 1rem;
  line-height: 22.4px;
  line-height: 1.4;
  background-color: #5538E1;
  line-height: 35px;
  padding: 0px 20px;
  display: inline-block;
  color: white;
  text-transform: uppercase;
  min-width: 10vw;
  text-align: center;
  margin-top: 20px;
  letter-spacing: 0.5px;
  font-weight: 600;
  width: 100%;
}
@media (min-width: 1600px) {
  .section-contact .entry-office a {
    font-size: calc(18 / 1920 * 100vw);
  }
}
@media (min-width: 1920px) {
  .section-contact .entry-office a {
    font-size: 18px;
  }
}
.section-contact .entry-office a::after {
  display: none;
}
.section-contact .entry-office a:hover {
  color: white;
  background-color: #2e179c;
}
@media (max-width: 1000px) {
  .section-contact .entry-office a {
    padding: 0 20px;
  }
}
.section-contact .contact-details {
  margin-bottom: calc(.5 * var(--mb));
}
.section-contact .contact-details p {
  margin-bottom: 0;
}
.section-contact .contact-details a {
  font-weight: bold;
}
.section-contact .form-intro {
  margin-bottom: var(--mb);
}
@media (max-width: 678px) {
  .section-contact .content .entry-office {
    flex-direction: column-reverse;
    margin-left: auto;
    margin-right: auto;
    max-width: 380px;
    margin-bottom: 50px;
  }
  .section-contact .content .entry-office > div {
    width: 100%;
    margin-bottom: 10px;
  }
}
@media (min-width: 678px) {
  .section-contact .entry-office {
    max-width: 560px;
  }
}
@media (min-width: 1000px) {
  .section-contact .content {
    flex-direction: row;
  }
  .section-contact .content .offices {
    width: 40%;
  }
  .section-contact .content .form {
    width: 50%;
  }
  .section-contact .content .entry-office {
    flex-direction: column-reverse;
  }
  .section-contact .content .entry-office > div {
    width: 100%;
    margin-bottom: 10px;
  }
}
@media (min-width: 1280px) {
  .section-contact .content .offices {
    width: 49%;
  }
  .section-contact .content .form {
    width: 41%;
  }
  .section-contact .content .entry-office {
    flex-direction: row;
    max-width: inherit;
  }
  .section-contact .content .entry-office .image {
    width: 66%;
    margin-bottom: 0;
  }
  .section-contact .content .entry-office .copy {
    margin-bottom: 0;
    width: 31%;
  }
}

.page-template-template_faqs .sections {
  display: flex;
  flex-direction: column;
  width: 100%;
  position: relative;
}
.page-template-template_faqs .sections .question-column, .page-template-template_faqs .sections .menu-column {
  width: 100%;
}
.page-template-template_faqs .sections .concertina {
  width: 100%;
}
.page-template-template_faqs .sections .menu ul a:hover, .page-template-template_faqs .sections .menu ul a:active {
  color: #8759E2;
}
@media (max-width: 1000px) {
  .page-template-template_faqs .sections .question-column, .page-template-template_faqs .sections .menu-column {
    padding-left: var(--outer);
    padding-right: var(--outer);
  }
  .page-template-template_faqs .sections .menu h3 {
    width: 100%;
    background-color: #B167C3;
    color: white;
    padding: 20px 25px;
    font-size: 22px;
    font-size: 1.375rem;
    line-height: 30.8px;
    line-height: 1.4;
    font-weight: normal;
    position: relative;
  }
  .page-template-template_faqs .sections .menu h3::after {
    content: "+";
    position: absolute;
    right: 20px;
    font-size: 30px;
    font-size: 1.875rem;
    line-height: 27px;
    line-height: 0.9;
    transition: transform 0.3s;
  }
  .page-template-template_faqs .sections .menu ul {
    position: absolute;
    background-color: white;
    font-weight: normal;
    font-size: 20px;
    font-size: 1.25rem;
    line-height: 28px;
    line-height: 1.4;
    padding: 20px;
    min-width: calc(100% - 80px);
    border-radius: 10px;
    z-index: 2;
    filter: drop-shadow(0px -3px 5px rgba(0, 0, 0, 0.3));
    transform: translateY(0px);
    opacity: 0;
    pointer-events: none;
    transition: transform 0.3s, opacity 0.3s;
    height: auto !important;
  }
  .page-template-template_faqs .sections .menu ul a:hover {
    color: #5538E1;
  }
  .page-template-template_faqs .sections .menu ul a {
    display: block;
    padding: 3px 0;
  }
  .page-template-template_faqs .sections .menu ul a:hover, .page-template-template_faqs .sections .menu ul a:active {
    color: #B167C3;
  }
  .page-template-template_faqs .sections .menu ul::before {
    content: "";
    width: 10px;
    height: 10px;
    position: absolute;
    display: block;
    top: -5px;
    left: calc(50% - 5px);
    background-color: white;
    transform: rotate(45deg);
  }
  .page-template-template_faqs .sections .menu h3.show-list + ul {
    opacity: 1;
    transform: translateY(15px);
    pointer-events: all;
  }
  .page-template-template_faqs .sections .menu h3.show-list::after {
    transform: rotate(45deg);
  }
}
@media (max-width: 678px) {
  .page-template-template_faqs .sections .menu h3 {
    width: 100%;
    background-color: #B167C3;
    color: white;
    padding: 15px 20px;
    font-size: 20px;
    font-size: 1.25rem;
    line-height: 28px;
    line-height: 1.4;
    font-weight: normal;
  }
}
@media (min-width: 1000px) {
  .page-template-template_faqs .sections {
    flex-direction: row;
    justify-content: space-between;
    padding-top: 60px;
  }
}
@media (min-width: 1000px) and (min-width: 960px) {
  .page-template-template_faqs .sections {
    padding-top: calc(120 / 1920 * 100vw);
  }
}
@media (min-width: 1000px) and (min-width: 3200px) {
  .page-template-template_faqs .sections {
    padding-top: 200px;
  }
}
@media (min-width: 1000px) {
  .page-template-template_faqs .sections .question-column {
    width: 70%;
  }
}
@media (min-width: 1000px) {
  .page-template-template_faqs .sections .menu-column {
    width: 30%;
  }
}
@media (min-width: 1000px) {
  .page-template-template_faqs .sections .section-faqs-section {
    margin-right: var(--outer);
    position: relative;
    padding-top: 0;
    padding-bottom: 60px;
  }
}
@media (min-width: 1000px) and (min-width: 960px) {
  .page-template-template_faqs .sections .section-faqs-section {
    padding-bottom: calc(120 / 1920 * 100vw);
  }
}
@media (min-width: 1000px) and (min-width: 3200px) {
  .page-template-template_faqs .sections .section-faqs-section {
    padding-bottom: 200px;
  }
}
@media (min-width: 1000px) {
  .page-template-template_faqs .sections .menu {
    position: sticky;
    margin-left: var(--outer);
    top: 200px;
  }
  .page-template-template_faqs .sections .menu h3 {
    font-family: "Source Sans Pro", serif;
    font-weight: normal;
    font-size: 16px;
    line-height: 1.3;
    font-size: 22px;
    line-height: 1.2;
    text-transform: none;
    font-weight: bold;
    color: #B167C3;
    margin-bottom: 10px;
  }
}
@media (min-width: 1000px) and (min-width: 1280px) {
  .page-template-template_faqs .sections .menu h3 {
    font-size: calc(24 / 1920 * 100vw);
  }
}
@media (min-width: 1000px) and (min-width: 2560px) {
  .page-template-template_faqs .sections .menu h3 {
    font-size: 32px;
  }
}
@media (min-width: 1000px) and (min-width: 1242.3529411765px) {
  .page-template-template_faqs .sections .menu h3 {
    font-size: calc(34 / 1920 * 100vw);
  }
}
@media (min-width: 1000px) and (min-width: 2936.4705882353px) {
  .page-template-template_faqs .sections .menu h3 {
    font-size: 52px;
  }
}
@media (min-width: 1000px) {
  .page-template-template_faqs .sections .menu li {
    margin-bottom: 10px;
  }
}
@media (min-width: 1000px) {
  .page-template-template_faqs .sections .anchor {
    position: absolute;
    top: -200px;
  }
}

.mosiac-section {
  margin-bottom: 50px;
}
.mosiac-section:first-of-type {
  margin-top: 10px;
}
.mosiac-section .content {
  display: flex;
  flex-direction: column;
}
.mosiac-section .panels {
  display: flex;
  flex-direction: column;
  position: relative;
}
.mosiac-section .image, .mosiac-section .illustration {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  overflow: hidden;
  z-index: 0;
}
.mosiac-section .illustration img {
  object-fit: contain;
  height: 90%;
  width: 90%;
  margin-top: 5%;
  margin-left: 5%;
}
.mosiac-section .image img {
  object-fit: cover;
  height: 100%;
  width: 100%;
}
.mosiac-section .panel {
  background-color: #F2F2F2;
  height: 120vw;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 20px;
  position: relative;
  background-color: var(--bg);
}
.mosiac-section .panel + .panel {
  margin-top: 2%;
}
.mosiac-section .panel .cta {
  margin-top: 0;
  z-index: 1;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.mosiac-section .two-panels .panel {
  height: 56vw;
}
.mosiac-section .text {
  padding: 7%;
  background-color: #F2F2F2;
  margin-bottom: 2%;
}
.mosiac-section .text h2 {
  color: #B167C3;
}
@media (max-width: 678px) {
  .mosiac-section .text {
    width: calc(100% + 20px);
    margin-left: -10px;
    padding: 40px 10px;
  }
  .mosiac-section .panel {
    width: calc(100% + 20px);
    margin-left: -10px;
  }
}
@media (min-width: 1000px) {
  .mosiac-section {
    margin-bottom: 60px;
  }
  .mosiac-section:first-of-type {
    margin-top: 20px;
  }
  .mosiac-section .content {
    flex-direction: row;
    justify-content: space-between;
  }
  .mosiac-section.right .content {
    flex-direction: row-reverse;
  }
  .mosiac-section .text {
    width: 66.5%;
    margin-bottom: 0;
  }
  .mosiac-section .panels {
    width: 32.5%;
  }
  .mosiac-section .panel {
    height: 100%;
  }
  .mosiac-section .two-panels .panel {
    height: 50%;
  }
}

.page-template-template_subpage .sections {
  padding-bottom: 60px;
}
@media (min-width: 960px) {
  .page-template-template_subpage .sections {
    padding-bottom: calc(120 / 1920 * 100vw);
  }
}
@media (min-width: 3200px) {
  .page-template-template_subpage .sections {
    padding-bottom: 200px;
  }
}

.single-post .byline, .single-job .byline {
  font-size: 16px;
  font-size: 1rem;
  line-height: 22.4px;
  line-height: 1.4;
  margin-bottom: var(--mb);
  width: 100%;
}
.single-post .marketing, .single-job .marketing {
  background-color: #6DD5F9;
  padding: 40px 250px 40px 40px;
  font-weight: normal;
  background-image: url(https://glasgowvirtualoffices.co.uk/wp-content/themes/virtually/css/../placeholders/hi-five.png);
  background-size: 320px auto;
  background-repeat: no-repeat;
  background-position: right -20px top 20px;
}
.single-post .marketing h1, .single-post .marketing h2, .single-post .marketing h3, .single-job .marketing h1, .single-job .marketing h2, .single-job .marketing h3 {
  font-size: 22px;
  line-height: 1.2;
  font-family: "Source Serif Pro", serif;
  margin-bottom: calc(0.5 * var(--mb));
  color: white;
}
@media (min-width: 1242.3529411765px) {
  .single-post .marketing h1, .single-post .marketing h2, .single-post .marketing h3, .single-job .marketing h1, .single-job .marketing h2, .single-job .marketing h3 {
    font-size: calc(34 / 1920 * 100vw);
  }
}
@media (min-width: 2936.4705882353px) {
  .single-post .marketing h1, .single-post .marketing h2, .single-post .marketing h3, .single-job .marketing h1, .single-job .marketing h2, .single-job .marketing h3 {
    font-size: 52px;
  }
}
.single-post .marketing > :last-child, .single-job .marketing > :last-child {
  margin-bottom: 0;
}
.single-post .pull-out, .single-job .pull-out {
  border-left: 4px solid #32EB96;
  font-size: 22px;
  line-height: 1.2;
  font-weight: bold;
  padding: 2% 5%;
  margin-bottom: calc(2 * var(--mb));
  margin-top: calc(1.5 * var(--mb));
}
@media (min-width: 1242.3529411765px) {
  .single-post .pull-out, .single-job .pull-out {
    font-size: calc(34 / 1920 * 100vw);
  }
}
@media (min-width: 2936.4705882353px) {
  .single-post .pull-out, .single-job .pull-out {
    font-size: 52px;
  }
}
.single-post .pull-out > :last-child, .single-job .pull-out > :last-child {
  margin-bottom: 0;
}
.single-post .author, .single-job .author {
  padding: 15px;
  background-color: #6DD5F9;
  display: flex;
  justify-content: space-between;
  width: 88%;
  margin-top: clamp(20px, 3vw, 3vw);
}
.single-post .author .headshot, .single-job .author .headshot {
  width: 20%;
}
.single-post .author .headshot img, .single-job .author .headshot img {
  width: 100%;
  height: auto;
}
.single-post .author .copy, .single-job .author .copy {
  padding: 0;
  margin: 0;
  width: 76%;
}
.single-post .author .copy h3, .single-job .author .copy h3 {
  font-size: 22px;
  line-height: 1.2;
  margin-bottom: 6px;
  color: white;
  text-transform: none;
}
@media (min-width: 1242.3529411765px) {
  .single-post .author .copy h3, .single-job .author .copy h3 {
    font-size: calc(34 / 1920 * 100vw);
  }
}
@media (min-width: 2936.4705882353px) {
  .single-post .author .copy h3, .single-job .author .copy h3 {
    font-size: 52px;
  }
}
.single-post .author .copy p, .single-job .author .copy p {
  margin-bottom: 0;
}
.single-post .author .copy .position, .single-job .author .copy .position {
  margin-bottom: 6px;
  font-weight: bold;
}
.single-post .child-content, .single-job .child-content {
  padding-top: 0;
}
.single-post .share-bar .bar, .single-job .share-bar .bar {
  display: flex;
  margin-bottom: var(--mb);
}
.single-post .share-bar a, .single-job .share-bar a {
  width: clamp(40px, 5.5vw, 50px);
  height: clamp(40px, 5.5vw, 50px);
  display: block;
  border-radius: 50%;
  background-color: #F2F2F2;
  fill: #5538E1;
  margin-right: clamp(5px, 1.5vw, 10px);
}
.single-post .share-bar a:hover, .single-job .share-bar a:hover {
  background-color: #5538E1;
  fill: white;
}
.single-post .kicker, .single-job .kicker {
  color: #32EB96;
  display: block;
  margin-bottom: 5px;
}
.single-post a.kicker:hover, .single-job a.kicker:hover {
  color: #5538E1;
}
.single-post p, .single-job p {
  line-height: 1.4;
}
@media (max-width: 520px) {
  .single-post .author, .single-job .author {
    width: 100%;
  }
}
@media (min-width: 1000px) {
  .single-post .child-content .content, .single-job .child-content .content {
    display: flex;
    flex-wrap: wrap;
  }
  .single-post .share-bar .bar, .single-job .share-bar .bar {
    display: flex;
    flex-direction: column;
  }
  .single-post .share-bar, .single-job .share-bar {
    width: 8.5%;
  }
  .single-post .share-bar a, .single-job .share-bar a {
    margin-bottom: 16px;
  }
  .single-post .copy, .single-job .copy {
    width: 66%;
  }
  .single-post .marketing, .single-job .marketing {
    padding: 40px 250px 40px 40px;
    width: calc(100% + 80px);
    margin-left: -40px;
    margin-bottom: calc(2 * var(--mb));
    margin-top: calc(1.5 * var(--mb));
  }
}

.job-meta {
  font-size: 16px;
  line-height: 1.3;
}
@media (min-width: 1536px) {
  .job-meta {
    font-size: calc(20 / 1920 * 100vw);
  }
}
@media (min-width: 2688px) {
  .job-meta {
    font-size: 28px;
  }
}
.job-meta span {
  font-weight: bold;
  display: block;
  font-size: 16px;
  line-height: 1.3;
}
@media (min-width: 1536px) {
  .job-meta span {
    font-size: calc(20 / 1920 * 100vw);
  }
}
@media (min-width: 2688px) {
  .job-meta span {
    font-size: 28px;
  }
}
.job-meta li {
  font-size: 16px;
  font-size: 1rem;
  line-height: 22.4px;
  line-height: 1.4;
  margin-bottom: calc(.5 * var(--mb));
}
@media (min-width: 678px) {
  .job-meta {
    display: flex;
    flex-wrap: wrap;
    width: 51%;
  }
  .job-meta li {
    width: 50%;
  }
}

.apply {
  margin-top: var(--mb);
}
.apply a {
  font-weight: bold;
  color: #5538E1;
}
.prevnext {
  padding: 0;
}
.prevnext .navigation {
  display: flex;
  justify-content: space-between;
}
.prevnext .navigation a {
  font-family: "Source Sans Pro", sans-serif;
  text-transform: uppercase;
  font-size: 15px;
  font-weight: bold;
  background-color: #5538E1;
  line-height: 48px;
  padding: 0px 20px;
  display: inline-block;
  color: white;
  text-transform: uppercase;
  min-width: 15vw;
  text-align: center;
  margin-top: 20px;
  letter-spacing: 0.5px;
  font-weight: 600;
}
@media (min-width: 1600px) {
  .prevnext .navigation a {
    font-size: calc(18 / 1920 * 100vw);
  }
}
@media (min-width: 1920px) {
  .prevnext .navigation a {
    font-size: 18px;
  }
}
.prevnext .navigation a::after {
  display: none;
}
.prevnext .navigation a:hover {
  color: white;
  background-color: #2e179c;
}
@media (max-width: 1000px) {
  .prevnext .navigation a {
    padding: 0 20px;
  }
}
.prevnext .navigation .disabled {
  opacity: 0.4;
  pointer-events: none;
}
@media (max-width: 678px) {
  .prevnext .navigation {
    padding-bottom: 20px;
  }
  .prevnext .navigation a, .prevnext .navigation span {
    min-width: 48%;
  }
  .prevnext .navigation span a {
    width: 100%;
  }
}
.entry {
  background-color: var(--bg);
  position: relative;
  width: 100%;
}
.entry .entry-content {
  padding: 25px;
}
.entry .kicker {
  color: white;
  font-family: "Source Sans Pro", sans-serif;
  font-size: 18px;
  text-transform: uppercase;
  font-weight: bold;
  font-size: 16px;
  font-size: 1rem;
  line-height: 22.4px;
  line-height: 1.4;
  margin-bottom: 5px;
  display: block;
}
@media (min-width: 1382.4px) {
  .entry .kicker {
    font-size: calc(25 / 1920 * 100vw);
  }
}
@media (min-width: 2304px) {
  .entry .kicker {
    font-size: 30px;
  }
}
.entry h3 {
  font-family: "Source Sans Pro", serif;
  font-weight: normal;
  font-size: 16px;
  line-height: 1.3;
  font-size: 22px;
  line-height: 1.2;
  text-transform: none;
  font-weight: bold;
  margin-bottom: calc(2 * var(--mb));
}
@media (min-width: 1280px) {
  .entry h3 {
    font-size: calc(24 / 1920 * 100vw);
  }
}
@media (min-width: 2560px) {
  .entry h3 {
    font-size: 32px;
  }
}
@media (min-width: 1242.3529411765px) {
  .entry h3 {
    font-size: calc(34 / 1920 * 100vw);
  }
}
@media (min-width: 2936.4705882353px) {
  .entry h3 {
    font-size: 52px;
  }
}
.entry .read-more {
  font-family: "Source Sans Pro", sans-serif;
  text-transform: uppercase;
  font-size: 15px;
  font-weight: bold;
  background-color: #5538E1;
  line-height: 48px;
  padding: 0px 20px;
  display: inline-block;
  color: white;
  text-transform: uppercase;
  min-width: 15vw;
  text-align: center;
  margin-top: 20px;
  letter-spacing: 0.5px;
  font-weight: 600;
  font-family: "Source Sans Pro", sans-serif;
  text-transform: uppercase;
  font-size: 15px;
  font-weight: bold;
  font-size: 16px;
  font-size: 1rem;
  line-height: 22.4px;
  line-height: 1.4;
  background-color: #5538E1;
  line-height: 35px;
  padding: 0px 20px;
  display: inline-block;
  color: white;
  text-transform: uppercase;
  min-width: 10vw;
  text-align: center;
  margin-top: 20px;
  letter-spacing: 0.5px;
  font-weight: 600;
  position: absolute;
  bottom: 25px;
}
@media (min-width: 1600px) {
  .entry .read-more {
    font-size: calc(18 / 1920 * 100vw);
  }
}
@media (min-width: 1920px) {
  .entry .read-more {
    font-size: 18px;
  }
}
.entry .read-more::after {
  display: none;
}
.entry .read-more:hover {
  color: white;
  background-color: #2e179c;
}
@media (max-width: 1000px) {
  .entry .read-more {
    padding: 0 20px;
  }
}
@media (min-width: 1600px) {
  .entry .read-more {
    font-size: calc(18 / 1920 * 100vw);
  }
}
@media (min-width: 1920px) {
  .entry .read-more {
    font-size: 18px;
  }
}
.entry .read-more::after {
  display: none;
}
.entry .read-more:hover {
  color: white;
  background-color: #2e179c;
}
@media (max-width: 1000px) {
  .entry .read-more {
    padding: 0 20px;
  }
}
.entry.no-image .entry-thumb {
  background-color: rgba(0, 0, 0, 0.2);
}
.entry .image {
  overflow: hidden;
  position: relative;
}
.entry .image img {
  position: absolute;
  min-width: 100%;
  min-height: 100%;
  object-fit: cover;
  top: 50%;
  left: 50%;
  -ms-transform: translate(-50%, -50%); /* IE 9 */
  -webkit-transform: translate(-50%, -50%); /* Chrome, Safari, Opera */
  transform: translate(-50%, -50%);
}
.entry .image:after {
  content: "";
  display: block;
  padding-top: 62%;
  width: 0;
  float: left;
  position: relative;
}
.entry .image.illustration {
  overflow: hidden;
  position: relative;
  margin-top: -20px;
}
.entry .image.illustration img {
  position: absolute;
  min-width: 100%;
  min-height: 100%;
  object-fit: cover;
  top: 50%;
  left: 50%;
  -ms-transform: translate(-50%, -50%); /* IE 9 */
  -webkit-transform: translate(-50%, -50%); /* Chrome, Safari, Opera */
  transform: translate(-50%, -50%);
}
.entry .image.illustration:after {
  content: "";
  display: block;
  padding-top: calc(62% + 20px);
  width: 0;
  float: left;
  position: relative;
}
.entry .image.illustration img {
  object-fit: contain;
  width: 100%;
  height: 100%;
}

.load-more {
  width: 100%;
  display: flex;
  font-size: 22px;
  line-height: 1.2;
  align-items: center;
  justify-content: center;
  padding-top: 20px;
  padding-bottom: 60px;
}
@media (min-width: 1242.3529411765px) {
  .load-more {
    font-size: calc(34 / 1920 * 100vw);
  }
}
@media (min-width: 2936.4705882353px) {
  .load-more {
    font-size: 52px;
  }
}
@media (min-width: 480px) {
  .load-more {
    padding-top: calc(80 / 1920 * 100vw);
  }
}
@media (min-width: 4800px) {
  .load-more {
    padding-top: 200px;
  }
}
@media (min-width: 960px) {
  .load-more {
    padding-bottom: calc(120 / 1920 * 100vw);
  }
}
@media (min-width: 3200px) {
  .load-more {
    padding-bottom: 200px;
  }
}
.load-more a, .load-more span {
  width: 62px;
  height: 62px;
  display: inline-block;
}
.load-more a .arrow, .load-more span .arrow {
  fill: #000000;
  transition: transform 0.3s ease-out;
}
.load-more a .circle, .load-more span .circle {
  fill: #32EB96;
  stroke: none;
  stroke-width: 3;
  transition: fill 0.3s;
}
.load-more a:hover .circle {
  fill: #5538E1;
}
.load-more a:hover .arrow {
  fill: white;
}
.load-more a:hover .arrow-left .arrow {
  transform: translateX(-3px);
}
.load-more a:hover .arrow-right .arrow {
  transform: translateX(3px);
}
.load-more span {
  opacity: 0.5;
  pointer-events: none;
}
.load-more .numbers {
  padding: 0 30px;
  font-weight: bold;
}
.load-more .slash {
  display: inline-block;
  position: relative;
  font-weight: 100;
  margin: 0 10px;
}

.post-list {
  display: flex;
  flex-wrap: wrap;
}
.post-list .entry {
  margin-bottom: 40px;
}
@media (min-width: 678px) {
  .post-list .entry {
    width: 32%;
    margin-right: 2%;
  }
  .post-list .entry:nth-child(3n+3) {
    margin-right: 0;
  }
}

.section-single-tile .intro {
  color: white;
  font-size: 22px;
  line-height: 1.2;
  font-weight: 600;
  margin-bottom: var(--mb);
}
@media (min-width: 1242.3529411765px) {
  .section-single-tile .intro {
    font-size: calc(34 / 1920 * 100vw);
  }
}
@media (min-width: 2936.4705882353px) {
  .section-single-tile .intro {
    font-size: 52px;
  }
}
.section-single-tile.light .intro {
  color: #000000;
}
.section-single-tile::before {
  content: "";
  z-index: -1;
  background-color: var(--bg);
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
}
.section-single-tile .tile-caveat {
  background-color: transparent;
  position: relative;
}
.section-single-tile .tile-caveat p {
  position: relative;
  z-index: 1;
}
.section-single-tile .tile-caveat::after {
  content: "";
  position: absolute;
  background-color: var(--bg);
  opacity: 0.8;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 0;
}
.section-single-tile .illy {
  margin-top: -50px;
  height: 100%;
  top: 0;
}
@media (min-width: 678px) {
  .section-single-tile .copy {
    margin-top: 50px;
  }
}

.single-office .copy ul {
  margin-bottom: var(--mb);
  margin-left: 3ch;
  list-style: none;
}
.single-office .copy ul li::before {
  content: "";
  position: absolute;
  background-image: url(https://glasgowvirtualoffices.co.uk/wp-content/themes/virtually/css/../images/svg/tick.svg);
  display: inline-block;
  background-position: center;
  background-size: auto 1.2ch;
  background-repeat: no-repeat;
  width: 3ch;
  height: 1.6ch;
  color: #B167C3;
  top: 0.2ch;
  left: -3ch;
}
.single-office .copy ul > li {
  font-size: 20px;
  line-height: 1.2;
  font-weight: bold;
  font-family: "Source Serif Pro", serif;
  margin-bottom: 0.7em;
  position: relative;
}
@media (min-width: 1371.4285714286px) {
  .single-office .copy ul > li {
    font-size: calc(28 / 1920 * 100vw);
  }
}
@media (min-width: 3291.4285714286px) {
  .single-office .copy ul > li {
    font-size: 48px;
  }
}
.single-office .office-text {
  display: flex;
  flex-direction: column;
}
.single-office h2 {
  margin-bottom: calc(.5 * var(--mb));
  font-family: "Source Sans Pro", sans-serif;
}
.single-office h2 hr {
  margin-top: calc(-1 * calc(.5 * var(--mb)));
}
.single-office hr {
  margin: calc(.5 * var(--mb)) 0;
  border-color: #DEDEDE;
}
.single-office h2 span {
  font-family: "Source Sans Pro", serif;
  font-weight: normal;
  font-size: 16px;
  line-height: 1.3;
}
@media (min-width: 1280px) {
  .single-office h2 span {
    font-size: calc(24 / 1920 * 100vw);
  }
}
@media (min-width: 2560px) {
  .single-office h2 span {
    font-size: 32px;
  }
}
.single-office .virtual-office-logo {
  background-image: url(https://glasgowvirtualoffices.co.uk/wp-content/themes/virtually/css/../images/svg/virtual-office.svg);
  color: transparent;
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
}

@media (max-width: 520px) {
  .page-template-template_single-office .section-selector .selector-anchor {
    top: -80px;
  }
}
@media (min-width: 678px) and (max-width: 1000px) {
  .single-office .copy, .single-office .office-tile {
    width: 100%;
    max-width: 600px;
    margin-left: auto;
    margin-right: auto;
  }
  .single-office .copy {
    padding: 0 15px;
  }
  .single-office .office-tile .image, .single-office .office-tile .details {
    width: 100%;
    margin-bottom: 0;
  }
  .single-office .office-tile .image {
    overflow: hidden;
    position: relative;
  }
  .single-office .office-tile .image img {
    position: absolute;
    min-width: 100%;
    min-height: 100%;
    object-fit: cover;
    top: 50%;
    left: 50%;
    -ms-transform: translate(-50%, -50%); /* IE 9 */
    -webkit-transform: translate(-50%, -50%); /* Chrome, Safari, Opera */
    transform: translate(-50%, -50%);
  }
  .single-office .office-tile .image:after {
    content: "";
    display: block;
    padding-top: 56%;
    width: 0;
    float: left;
    position: relative;
  }
}
@media (min-width: 1000px) {
  .single-office .office-text {
    flex-direction: row;
    justify-content: flex-start;
    align-items: flex-start;
  }
  .single-office .copy {
    width: 42%;
    margin-right: 6%;
  }
  .single-office .offices {
    width: 32%;
    margin-right: 3%;
  }
  .single-office .office-tile {
    width: 100%;
  }
}
.portal-logo-image {
  display: inline-block;
  margin-left: 0.2ch;
}
.portal-logo-image svg {
  height: 1.8ch;
  width: auto;
}

.single-office .orcall .cta, .section-intro .orcall .cta {
  background-color: #32EB96;
  color: #000000;
  text-transform: none;
  box-shadow: 0px 0px 6px 0px rgba(0, 0, 0, 0.1);
  margin-top: 0;
}
.single-office .orcall .cta:hover, .section-intro .orcall .cta:hover {
  background-color: #5538E1;
  color: white;
}
.single-office .buy-buttons p, .section-intro .buy-buttons p {
  margin-bottom: 0;
}
.single-office .buy-buttons .from, .section-intro .buy-buttons .from {
  display: block;
}
.single-office .buy-buttons .price-full, .section-intro .buy-buttons .price-full {
  display: inline-block;
}
.single-office .buy-buttons .price-full span, .section-intro .buy-buttons .price-full span {
  font-weight: bold;
  line-height: 1em;
  font-family: "Source Serif Pro", serif;
  font-size: 28px;
  margin-bottom: var(--mb);
  font-family: "Source Sans Pro", sans-serif;
  padding-left: 0.07ch;
}
@media (min-width: 1033.8461538462px) {
  .single-office .buy-buttons .price-full span, .section-intro .buy-buttons .price-full span {
    font-size: calc(52 / 1920 * 100vw);
  }
}
@media (min-width: 1920px) {
  .single-office .buy-buttons .price-full span, .section-intro .buy-buttons .price-full span {
    font-size: 52px;
  }
}
@media (min-width: 1000px) {
  .single-office .buy-buttons, .section-intro .buy-buttons {
    width: 17%;
  }
  .single-office .buy-buttons .cta, .section-intro .buy-buttons .cta {
    min-width: inherit;
    width: 100%;
  }
}

@media (max-width: 1000px) {
  .single-office .buy-buttons {
    text-align: center;
  }
}

@media (max-width: 678px) {
  .section-intro .buy-buttons {
    text-align: center;
  }
}

.post-section {
  margin-top: var(--mb);
  margin-bottom: var(--mb);
}
.post-section .copy, .post-section h2, .post-section h3 {
  width: 100%;
}
@media (min-width: 678px) {
  .post-section.layout-left, .post-section.layout-right {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  .post-section.layout-right {
    flex-direction: row-reverse;
  }
  .post-section.size-half figure {
    width: 48%;
  }
  .post-section.size-half .copy {
    width: 48%;
  }
  .post-section.size-quarter figure {
    width: 25%;
  }
  .post-section.size-quarter .copy {
    width: 70%;
  }
}

.section--code {
  background-color: #F2F2F2;
}
.section--code .copy {
  margin-bottom: calc(1.5 * var(--mb));
}
.section--code .copy h2 {
  margin-bottom: calc(.5 * var(--mb));
}
.section--code .hbspt-form {
  width: 100%;
}
.section--code .flex {
  display: flex;
  justify-content: space-between;
}
.section--code .illy {
  position: relative;
  width: 32%;
}
.section--code .illy img {
  position: relative;
}
@media (max-width: 678px) {
  .section--code .illy {
    display: none;
  }
}
@media (min-width: 678px) {
  .section--code .hbspt-form {
    width: 58%;
  }
}

#breadcrumbs {
  position: absolute;
  z-index: 20;
  font-size: 16px;
  line-height: 1.3;
  padding-top: calc(var(--mb)/2);
  color: #B167C3;
}
@media (min-width: 1536px) {
  #breadcrumbs {
    font-size: calc(20 / 1920 * 100vw);
  }
}
@media (min-width: 2688px) {
  #breadcrumbs {
    font-size: 28px;
  }
}
#breadcrumbs .breadcrumb_last {
  color: #707070;
}
#breadcrumbs a {
  color: #000000;
}
#breadcrumbs a:hover {
  color: #5538E1;
}
@media (max-width: 400px) {
  #breadcrumbs + .sections section:first-of-type {
    padding-top: 60px;
  }
}

.white-bg + .white-bg {
  padding-top: 20px;
}

.illy {
  pointer-events: none;
}
.illy img {
  top: 50%;
  left: 50%;
  position: absolute;
  transform: translate(-50%, -50%);
}
.illy.bottom img {
  bottom: 0;
  object-position: bottom;
  top: auto;
}
.illy.bottom img.portrait {
  height: 95%;
}
.illy.top img {
  top: 0;
  object-position: top;
  bottom: auto;
}
.illy.left img {
  object-position: left;
  left: 0;
  right: auto;
}
.illy.right img {
  object-position: right;
  right: 0;
  left: auto;
}
.illy.top.left img, .illy.top.right img, .illy.bottom.left img, .illy.bottom.right img {
  transform: translate(0, 0);
}
.illy.vcentre.left img, .illy.vcentre.right img, .illy.overlap.left img, .illy.overlap.right img {
  transform: translate(0, -50%);
}
.illy.hcentre.top img, .illy.hcentre.bottom img {
  transform: translate(-50%, 0%);
}

.illy img {
  object-fit: contain;
  max-width: 100%;
  max-height: 100%;
}

.portrait {
  height: 100%;
  width: auto;
}

.landscape {
  height: auto;
  width: 100%;
}

.entry-search {
  margin-bottom: 20px;
}
.entry-search .entry-link {
  padding: 25px 20px;
  background-color: #6DD5F9;
  display: block;
  box-shadow: 0px 3px 8px 0px rgba(0, 0, 0, 0);
}
.entry-search .entry-link .entry-summary > :last-child {
  margin-bottom: 0;
}
.entry-search .entry-link:hover, .entry-search .entry-link:active {
  background-color: #32EB96;
  cursor: pointer;
  box-shadow: 0px 3px 8px 0px rgba(0, 0, 0, 0.2);
}
.entry-search h3 {
  margin-bottom: 10px;
}

.section-reviews .content {
  text-align: center;
}

.price-toggle {
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
  max-width: 300px;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: var(--mb);
  z-index: 3;
}
.price-toggle .label {
  transition: opacity 0.3s;
  font-size: 18px;
}
@media (min-width: 1440px) {
  .price-toggle .label {
    font-size: calc(24 / 1920 * 100vw);
  }
}
@media (min-width: 2080px) {
  .price-toggle .label {
    font-size: 26px;
  }
}
.price-toggle .label:hover {
  cursor: pointer;
}
.price-toggle .label:last-of-type {
  position: relative;
}
.price-toggle .label:last-of-type::before {
  content: "SAVE";
  position: absolute;
  background-color: #8759E2;
  padding: 0 8px;
  border-radius: 3px;
  right: 0;
  transform: translate(calc(100% + 10px), -50%);
  font-size: 16px;
  font-size: 1rem;
  line-height: 22.4px;
  line-height: 1.4;
  font-family: "Source Sans Pro", sans-serif;
  top: 50%;
  color: white;
}
.price-toggle .label-right {
  opacity: 0.4;
}
.price-toggle .label-left {
  opacity: 1;
}
.price-toggle .toggle-wrapper {
  width: 94px;
  height: 36px;
  border: 1px solid #B167C3;
  border-radius: 20px;
  position: relative;
  margin: 10px 10px;
  display: flex;
  justify-content: center;
  align-items: center;
}
.price-toggle .toggle-button {
  width: 26px;
  height: 26px;
  background-color: #B167C3;
  background: linear-gradient(0deg, rgb(193, 120, 211) 0%, rgb(177, 103, 195) 100%);
  border-radius: 20px;
  position: absolute;
  left: 3px;
  box-shadow: 1px 1px 3px 0px rgba(0, 0, 0, 0.3);
  transition: transform 0.4s;
}

body:not(.alt-price) .show-yearly {
  display: none !important;
}

.show-monthly {
  -webkit-animation-duration: 0.2s;
  animation-duration: 0.2s;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
  animation-delay: 0;
  -webkit-animation-delay: 0;
  animation-timing-function: linear;
  -webkit-animation-timing-function: linear;
  -webkit-animation-name: fadeInKs;
  animation-name: fadeInKs;
}

.alt-price .show-yearly {
  -webkit-animation-duration: 0.2s;
  animation-duration: 0.2s;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
  animation-delay: 0;
  -webkit-animation-delay: 0;
  animation-timing-function: linear;
  -webkit-animation-timing-function: linear;
  -webkit-animation-name: fadeInKs;
  animation-name: fadeInKs;
}
.alt-price .show-monthly {
  display: none !important;
}
.alt-price .toggle-button {
  transform: translateX(59px);
}
.alt-price .price-toggle .label-right {
  opacity: 1;
}
.alt-price .price-toggle .label-left {
  opacity: 0.4;
}

.anchor-link {
  position: absolute;
  top: -105px;
  left: 0;
  width: 100%;
  display: block;
}

.touch .notouch-show {
  display: none;
}

.no-touch .touch-show {
  display: none;
}

.roundel {
  position: absolute;
  background-color: white;
  top: 0;
  right: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  color: #000000;
  z-index: 2;
  width: clamp(90px, 6vw, 150px);
  height: clamp(90px, 6vw, 150px);
  border-radius: 70px;
  transform: translate(15px, -25%);
  box-shadow: 0px 3px 16px 0px rgba(0, 0, 0, 0.4);
  padding-bottom: 2%;
}
.roundel .price-reduced {
  font-size: 16px;
  font-size: 1rem;
  line-height: 22.4px;
  line-height: 1.4;
  margin-bottom: 0;
  display: inline-block;
  position: relative;
}
.roundel .price-reduced::after {
  content: "";
  position: absolute;
  top: 50%;
  left: -15%;
  width: 130%;
  height: 1px;
  background-color: white;
  transform: rotate(10deg);
}
.roundel .price-full {
  font-family: "Source Sans Pro", sans-serif;
  font-weight: bold;
  margin-bottom: 0;
  display: block;
  font-size: 18px;
  font-size: 1.125rem;
  line-height: 25.2px;
  line-height: 1.4;
}
.roundel .price-full span {
  font-size: 36px;
  font-size: 2.25rem;
  line-height: 36px;
  line-height: 1;
  font-size: 26px;
}
@media (min-width: 1337.1428571429px) {
  .roundel .price-full span {
    font-size: calc(28 / 1440 * 100vw);
  }
}
@media (min-width: 2314.2857142857px) {
  .roundel .price-full span {
    font-size: 45px;
  }
}
.roundel .monthly {
  font-family: "Source Sans Pro", sans-serif;
  font-size: 18px;
  font-size: 1.125rem;
  line-height: 25.2px;
  line-height: 1.4;
  margin-bottom: 10px;
}
.roundel .from {
  font-family: "Source Sans Pro", sans-serif;
  font-size: 10px;
  font-weight: bolder;
}
@media (min-width: 1028.5714285714px) {
  .roundel .from {
    font-size: calc(14 / 1440 * 100vw);
  }
}
@media (min-width: 2880px) {
  .roundel .from {
    font-size: 28px;
  }
}
@media (min-width: 1000px) {
  .roundel {
    left: auto;
    transform: translate(30px, -30%);
  }
}
@media (min-width: 1280px) {
  .roundel {
    left: auto;
    border-radius: 100px;
    transform: translate(20%, -50%);
  }
  .roundel .price-full {
    font-size: 20px;
    font-size: 1.25rem;
    line-height: 28px;
    line-height: 1.4;
  }
  .roundel .price-full em {
    letter-spacing: -1px;
  }
  .roundel .monthly {
    margin-bottom: 10px;
  }
}

#modal-get {
  position: fixed;
  width: 100%;
  height: 100%;
  z-index: 999;
  top: 0;
  left: 0;
  display: flex;
  justify-content: center;
  align-items: center;
}
#modal-get .shadow {
  background-color: rgba(0, 0, 0, 0.8);
  position: absolute;
  width: 100%;
  height: 100%;
  z-index: 999;
  top: 0;
  left: 0;
  z-index: 1;
}
#modal-get .shadow:hover {
  cursor: pointer;
}
#modal-get .content {
  background-color: white;
  width: calc(100% - 2 * var(--outer));
  max-width: 600px;
  padding: 160px var(--mb) var(--mb) var(--mb);
  z-index: 2;
  background-image: url(https://glasgowvirtualoffices.co.uk/wp-content/themes/virtually/css/../placeholders/rec-logo.png);
  background-size: auto 80px;
  background-repeat: no-repeat;
  background-position: center top var(--mb);
}
#modal-get .close-modal {
  position: absolute;
  width: 40px;
  height: 40px;
  background-color: #32EB96;
  z-index: 10;
  right: 5px;
  top: 5px;
  border-radius: 5px;
  background: #32EB96 url(https://glasgowvirtualoffices.co.uk/wp-content/themes/virtually/css/../images/svg/cross.svg) no-repeat center;
  background-size: 20px;
  font-size: 0;
  color: transparent;
}
#modal-get .close-modal:hover {
  cursor: pointer;
  opacity: 0.8;
}
@media (max-width: 520px) {
  #modal-get .content {
    background-position: center top 60px;
    background-size: auto 60px;
  }
}

.sections .section-selector:first-of-type {
  margin-top: calc(var(--mb));
}

@media (max-width: 678px) {
  .cta {
    width: 100%;
  }
  .anchor-link {
    top: -80px;
  }
}
@media (min-width: 1000px) {
  .results-search {
    width: 66%;
    margin-left: auto;
    margin-right: auto;
  }
  .entry-search {
    width: calc(100% + 40px);
    margin-left: -20px;
  }
  .no-results .illy {
    width: 40%;
  }
}
.section-text-image.banded {
  padding-bottom: 60px;
  margin-top: 60px;
  min-height: auto;
  --top: 40px;
  margin-bottom: 40px;
  padding-top: 60px;
}
@media (min-width: 768px) {
  .section-text-image.banded {
    --top: calc(100 / 1920 * 100vw);
  }
}
@media (min-width: 4224px) {
  .section-text-image.banded {
    --top: 220px;
  }
}
@media (min-width: 768px) {
  .section-text-image.banded {
    margin-bottom: calc(100 / 1920 * 100vw);
  }
}
@media (min-width: 4224px) {
  .section-text-image.banded {
    margin-bottom: 220px;
  }
}
@media (min-width: 720px) {
  .section-text-image.banded {
    padding-top: calc(160 / 1920 * 100vw);
  }
}
@media (min-width: 2880px) {
  .section-text-image.banded {
    padding-top: 240px;
  }
}
.section-text-image.banded::before {
  width: calc(96% - var(--outer));
  height: calc(100% - var(--top));
  bottom: 0;
  top: auto;
}
.section-text-image.banded .copy {
  width: 40%;
}
.section-text-image.banded.left::before {
  right: 0;
  left: auto;
}
.section-text-image.banded.left .copy {
  width: 40%;
  margin-right: 0%;
  margin-left: 10%;
}
.section-text-image.banded .illy {
  width: calc(var(--outer) + 40%);
}
.section-text-image.banded .illy img {
  height: 100%;
}
.section-text-image.banded.right .copy {
  margin-right: 9%;
}
.section-text-image.banded.right .illy {
  left: 0;
}
.section-text-image.banded.left .copy {
  margin-left: 9%;
}
.section-text-image.banded.left .illy {
  right: 0;
}
@media (max-width: 375px) {
  .section-text-image.banded.left .copy, .section-text-image.banded.right .copy {
    width: 100% !important;
    margin-left: 0;
    margin-right: 0;
  }
  .section-text-image.banded::before {
    width: 100% !important;
    height: 100% !important;
  }
}
@media (max-width: 678px) {
  .section-text-image.banded {
    margin-top: 20px;
    margin-bottom: 20px;
  }
  .section-text-image.banded.left .copy {
    width: 90%;
  }
  .section-text-image.banded.right .copy {
    width: 90%;
  }
  .section-text-image.banded.illustration {
    padding-bottom: 0;
  }
  .section-text-image.banded .illy.vcentre {
    margin-top: 30px;
    z-index: 2;
  }
  .section-text-image.banded .illy {
    width: 100%;
    position: relative;
  }
  .section-text-image.banded .illy:after {
    content: "";
    display: block;
    padding-top: 80%;
    width: 0;
    float: left;
    position: relative;
  }
}

:root {
  --mb:30px;
  --nav-height:280px;
  --outer:20px;
  --rw:672px;
  --gutter:1%;
  --max-width: inherit;
  --vh: 100vh;
  --rat: 56.25%;
  --rec: 177.2%;
}

@media (min-width: 678px) {
  :root {
    --outer:40px;
  }
}
@media (min-width: 1000px) {
  :root {
    --outer:5vw;
    --mb:35px;
  }
}
@media (min-width: 1280px) {
  :root {
    --outer:8vw;
  }
}
@media (min-width: 1680px) {
  :root {
    --outer:10vw;
  }
}
/*--------------------------------
	Media Queries
	used for outputting content either between media query tags
	example: basic usage
	.element {
		width: 50%;
		@include mq('tablet-small') {
			width: 20%;
		}
	}
	example: using max-width
	.element {
		width: 50%;
		@include mq('tablet-small', 'max') {
			width: 20%;
		}
	}
*/
/*--------------------------------
	Margin / Padding Quick Resets
	example: top & bottom margin set to $mb
	.element {
		@include push--ends;
	}
	example: left & right padding set to $mb--small
	.element {
		@include soft--sides($mb--small);
	}
*/
/*--------------------------------
	Helper mixins
*/
/*--------------------------------
	Form input placeholder text
	example:
	input,
	textarea {
		@include input-placeholder {
			color: $grey;
		}
	}
*/
/*--------------------------------
	Retina images
	example:
	.element {
		@include retina {
			background-image: url(https://glasgowvirtualoffices.co.uk/wp-content/themes/virtually-city/css/../img/background@2x.png);
		}
	}
*/
/*--------------------------------
	Content margins
	fore removing first/last child margins
	example: default
	.element {
		@include content-margins;
	}
	output:
	.element > *:first-child {
		margin-top: 0;
	}
	.element > *:last-child {
		margin-bottom: 0;
	}
	example: empty selector
	.element {
		@include content-margins('false');
	}
	output:
	.element:first-child {
		margin-top: 0;
	}
	.element:last-child {
		margin-bottom: 0;
	}
*/
/*--------------------------------
	CSS Triangle
	used for creating CSS only triangles
	example:
	.element {
		&::before {
			@include css-triangle(blue, down);
		}
	}
*/
/*--------------------------------
	Hide text
	example:
	.element {
		@include hide-text;
	}
*/
/*--------------------------------
	Responsive ratio
	Used for creating scalable elements that maintain the same ratio
	example:
	.element {
		@include responsive-ratio(400, 300);
	}
*/
/*--------------------------------
Font size
*/
/*
	.site-header {
    z-index: z('site-header');
}
*/
p {
  margin-bottom: 20px;
}

h1 {
  font-weight: bold;
  line-height: 1em;
  font-size: 38px;
  margin-bottom: var(--mb);
}
@media (min-width: 985.9459459459px) {
  h1 {
    font-size: calc(74 / 1920 * 100vw);
  }
}
@media (min-width: 1920px) {
  h1 {
    font-size: 74px;
  }
}

h2 {
  font-weight: bold;
  line-height: 1em;
  font-size: 36px;
  margin-bottom: var(--mb);
}
@media (min-width: 1329.2307692308px) {
  h2 {
    font-size: calc(52 / 1920 * 100vw);
  }
}
@media (min-width: 1920px) {
  h2 {
    font-size: 52px;
  }
}

h3 {
  font-family: "Source Sans Pro", sans-serif;
  font-size: 18px;
  text-transform: uppercase;
  font-weight: bold;
}
@media (min-width: 1329.2307692308px) {
  h3 {
    font-size: calc(26 / 1920 * 100vw);
  }
}
@media (min-width: 2067.6923076923px) {
  h3 {
    font-size: 28px;
  }
}

h4 {
  font-family: "Source Serif Pro", serif;
  font-weight: normal;
  font-size: 18px;
  line-height: 1.3em;
  font-weight: bold;
}
@media (min-width: 1440px) {
  h4 {
    font-size: calc(24 / 1920 * 100vw);
  }
}
@media (min-width: 2240px) {
  h4 {
    font-size: 28px;
  }
}

h5 {
  font-size: 16px;
  font-size: 1rem;
  line-height: 22.4px;
  line-height: 1.4;
  font-weight: bold;
}

.largefont {
  font-size: 24px;
  line-height: 1.2em;
}
@media (min-width: 1355.2941176471px) {
  .largefont {
    font-size: calc(34 / 1920 * 100vw);
  }
}
@media (min-width: 2597.6470588235px) {
  .largefont {
    font-size: 46px;
  }
}

.smallfont {
  font-size: 16px;
  font-size: 1rem;
  line-height: 22.4px;
  line-height: 1.4;
}

blockquote > :last-child {
  margin-bottom: 0;
}
blockquote + figcaption {
  font-family: "Source Serif Pro", serif;
  font-weight: normal;
  font-size: 18px;
  line-height: 1.3em;
  font-weight: bold;
  margin-top: var(--mb);
}
@media (min-width: 1440px) {
  blockquote + figcaption {
    font-size: calc(24 / 1920 * 100vw);
  }
}
@media (min-width: 2240px) {
  blockquote + figcaption {
    font-size: 28px;
  }
}

h1.title-404 {
  font-weight: normal;
  margin-bottom: calc(var(--mb) / 2);
  font-size: 24px;
}
@media (min-width: 153.6px) {
  h1.title-404 {
    font-size: calc(300 / 1920 * 100vw);
  }
}
@media (min-width: 3328px) {
  h1.title-404 {
    font-size: 520px;
  }
}

.kicker {
  font-size: 24px;
}
@media (min-width: 1355.2941176471px) {
  .kicker {
    font-size: calc(34 / 1920 * 100vw);
  }
}
@media (min-width: 1920px) {
  .kicker {
    font-size: 34px;
  }
}

.animated.infinite {
  -webkit-animation-iteration-count: infinite;
  animation-iteration-count: infinite;
}

/*------------------------------------------------------------------------------------------------------------------------

								  Fade In   

--------------------------------------------------------------------------------------------------------------------------*/
@-webkit-keyframes fadeInKs {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes fadeInks {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@-webkit-keyframes fadeInUpKs {
  0% {
    opacity: 0;
    -ms-transform: translate3d(0, 60px, 0); /* IE 9 */
    -webkit-transform: translate3d(0, 60px, 0); /* Chrome, Safari, Opera */
    transform: translate3d(0, 60px, 0);
  }
  100% {
    opacity: 1;
    -ms-transform: translate3d(0, 0px, 0); /* IE 9 */
    -webkit-transform: translate3d(0, 0px, 0); /* Chrome, Safari, Opera */
    transform: translate3d(0, 0px, 0);
  }
}
@keyframes fadeInUpks {
  0% {
    opacity: 0;
    -ms-transform: translate3d(0, 60px, 0); /* IE 9 */
    -webkit-transform: translate3d(0, 60px, 0); /* Chrome, Safari, Opera */
    transform: translate3d(0, 60px, 0);
  }
  100% {
    opacity: 1;
    -ms-transform: translate3d(0, 0px, 0); /* IE 9 */
    -webkit-transform: translate3d(0, 0px, 0); /* Chrome, Safari, Opera */
    transform: translate3d(0, 0px, 0);
  }
}
@-webkit-keyframes fadeOutKs {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
@keyframes fadeOutKs {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
@-webkit-keyframes fadeOutLeftKs {
  0% {
    opacity: 1;
    -ms-transform: translateX(0); /* IE 9 */
    -webkit-transform: translateX(0); /* Chrome, Safari, Opera */
    transform: translateX(0);
  }
  100% {
    opacity: 0;
    -ms-transform: translateX(-30px); /* IE 9 */
    -webkit-transform: translateX(-30px); /* Chrome, Safari, Opera */
    transform: translateX(-30px);
  }
}
@keyframes fadeOutLeftKs {
  0% {
    opacity: 1;
    -ms-transform: translateX(0); /* IE 9 */
    -webkit-transform: translateX(0); /* Chrome, Safari, Opera */
    transform: translateX(0);
  }
  100% {
    opacity: 0;
    -ms-transform: translateX(-30px); /* IE 9 */
    -webkit-transform: translateX(-30px); /* Chrome, Safari, Opera */
    transform: translateX(-30px);
  }
}
@-webkit-keyframes fadeInRightKs {
  0% {
    opacity: 0;
    -ms-transform: translateX(50px); /* IE 9 */
    -webkit-transform: translateX(50px); /* Chrome, Safari, Opera */
    transform: translateX(50px);
  }
  100% {
    opacity: 1;
    -ms-transform: translateX(0); /* IE 9 */
    -webkit-transform: translateX(0); /* Chrome, Safari, Opera */
    transform: translateX(0);
  }
}
@keyframes fadeInRightKs {
  0% {
    opacity: 0;
    -ms-transform: translateX(50px); /* IE 9 */
    -webkit-transform: translateX(50px); /* Chrome, Safari, Opera */
    transform: translateX(50px);
  }
  100% {
    opacity: 1;
    -ms-transform: translateX(0); /* IE 9 */
    -webkit-transform: translateX(0); /* Chrome, Safari, Opera */
    transform: translateX(0);
  }
}
@-webkit-keyframes fadeOutRightKs {
  0% {
    opacity: 1;
    -ms-transform: translateX(0); /* IE 9 */
    -webkit-transform: translateX(0); /* Chrome, Safari, Opera */
    transform: translateX(0);
  }
  100% {
    opacity: 0;
    -ms-transform: translateX(30px); /* IE 9 */
    -webkit-transform: translateX(30px); /* Chrome, Safari, Opera */
    transform: translateX(30px);
  }
}
@keyframes fadeOutRightKS {
  0% {
    opacity: 1;
    -ms-transform: translateX(0); /* IE 9 */
    -webkit-transform: translateX(0); /* Chrome, Safari, Opera */
    transform: translateX(0);
  }
  100% {
    opacity: 0;
    -ms-transform: translateX(30px); /* IE 9 */
    -webkit-transform: translateX(30px); /* Chrome, Safari, Opera */
    transform: translateX(30px);
  }
}
@-webkit-keyframes fadeInLeftKs {
  0% {
    opacity: 0;
    -ms-transform: translateX(-50px); /* IE 9 */
    -webkit-transform: translateX(-50px); /* Chrome, Safari, Opera */
    transform: translateX(-50px);
  }
  100% {
    opacity: 1;
    -ms-transform: translateX(0); /* IE 9 */
    -webkit-transform: translateX(0); /* Chrome, Safari, Opera */
    transform: translateX(0);
  }
}
@keyframes fadeInLeftKs {
  0% {
    opacity: 0;
    -ms-transform: translateX(-50px); /* IE 9 */
    -webkit-transform: translateX(-50px); /* Chrome, Safari, Opera */
    transform: translateX(-50px);
  }
  100% {
    opacity: 1;
    -ms-transform: translateX(0); /* IE 9 */
    -webkit-transform: translateX(0); /* Chrome, Safari, Opera */
    transform: translateX(0);
  }
}
@-webkit-keyframes rotateKs {
  0% {
    -ms-transform: rotate(0deg); /* IE 9 */
    -webkit-transform: rotate(0deg); /* Chrome, Safari, Opera */
    transform: rotate(0deg);
  }
  100% {
    -ms-transform: rotate(90deg); /* IE 9 */
    -webkit-transform: rotate(90deg); /* Chrome, Safari, Opera */
    transform: rotate(90deg);
  }
}
@keyframes rotateKs {
  0% {
    -ms-transform: rotate(0deg); /* IE 9 */
    -webkit-transform: rotate(0deg); /* Chrome, Safari, Opera */
    transform: rotate(0deg);
  }
  100% {
    -ms-transform: rotate(90deg); /* IE 9 */
    -webkit-transform: rotate(90deg); /* Chrome, Safari, Opera */
    transform: rotate(90deg);
  }
}
.fade-in {
  -webkit-animation-duration: 0.5s;
  animation-duration: 0.5s;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
  animation-delay: 0.3s;
  -webkit-animation-delay: 0.3s;
  animation-timing-function: linear;
  -webkit-animation-timing-function: linear;
  -webkit-animation-name: fadeInKs;
  animation-name: fadeInKs;
}

.fade-in-up {
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
  animation-delay: 0.1s;
  -webkit-animation-delay: 0.1s;
  animation-timing-function: ease;
  -webkit-animation-timing-function: ease;
  -webkit-animation-name: fadeInUpKs;
  animation-name: fadeInUpKs;
}

.fade-out {
  -webkit-animation-duration: 0.5s;
  animation-duration: 0.5s;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
  animation-delay: 0;
  -webkit-animation-delay: 0;
  animation-timing-function: linear;
  -webkit-animation-timing-function: linear;
  -webkit-animation-name: fadeOutKs;
  animation-name: fadeOutKs;
}

.home .logo {
  opacity: 1;
}

.header--home, .site-header, .header--landing {
  background-color: #B167C3;
}
.header--home h1, .site-header h1, .header--landing h1 {
  color: white;
}

.header--image-full {
  color: white;
}
.header--image-full h1, .header--image-full p {
  color: white;
}
.header--image-full .content {
  filter: drop-shadow(1px 0px 5px rgba(0, 0, 0, 0.4));
}
.header--image-full .image::before {
  width: 100%;
  height: 100%;
  background: linear-gradient(to bottom, rgb(0, 0, 0) 0%, rgba(0, 0, 0, 0) 60%);
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0;
  z-index: 1;
  transition: opacity 0.6s 1.3s;
  pointer-events: none;
}
.header--image-full .image.lazy__show::before {
  opacity: 1;
}
.header--image-full .cta {
  background-color: white;
  color: #000000;
}
.header--image-full .cta:hover, .header--image-full .cta:active {
  background-color: #32EB96;
}

.title-logo img {
  margin-left: auto;
  margin-right: auto;
  width: auto;
  height: 20px;
  margin-bottom: calc(.5 * var(--mb));
}
@media (min-width: 1000px) {
  .title-logo img {
    height: 30px;
  }
}

.link-to-parent {
  position: absolute;
  height: 105px;
  display: flex;
  margin-left: 85px;
  top: 0;
  align-items: center;
}
.link-to-parent p {
  margin-bottom: 0;
  font-size: 16px;
  line-height: 1.2em;
}
@media (min-width: 1280px) {
  .link-to-parent p {
    font-size: calc(24 / 1920 * 100vw);
  }
}
@media (min-width: 1920px) {
  .link-to-parent p {
    font-size: 24px;
  }
}
.link-to-parent a {
  font-weight: bold;
}
.link-to-parent a:hover {
  text-decoration: underline;
}
@media (max-width: 989px) {
  .link-to-parent {
    height: 85px;
    margin-left: 65px;
  }
}

.search-box {
  top: 0;
  height: 105px;
}
.search-box ul li {
  font-family: "Source Serif Pro", serif;
  font-weight: normal;
  font-size: 18px;
  line-height: 1.3em;
  font-weight: bold;
  margin-left: 30px;
}
@media (min-width: 1440px) {
  .search-box ul li {
    font-size: calc(24 / 1920 * 100vw);
  }
}
@media (min-width: 2240px) {
  .search-box ul li {
    font-size: 28px;
  }
}
@media (max-width: 989px) {
  .search-box {
    height: 85px;
    margin-top: var(--mb);
  }
  .search-box ul li {
    margin-left: 0;
  }
}

.home .section-intro.central .copy {
  width: 80%;
}
@media (max-width: 678px) {
  .home .section-intro.central .copy {
    width: 100%;
  }
}
@media (min-width: 1000px) {
  .home .section-intro.central .copy {
    width: 60%;
  }
}

.home .section-intro {
  padding-bottom: 20px;
}
@media (min-width: 768px) {
  .home .section-intro {
    padding-bottom: calc(50 / 1920 * 100vw);
  }
}
@media (min-width: 3840px) {
  .home .section-intro {
    padding-bottom: 100px;
  }
}
.home .section-intro + .section-city-tiles {
  padding-top: 0;
}

@media (min-width: 990px) {
  .site-header .content {
    height: 100%;
  }
}
