/* Theme base styles */

/* Generic */

/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */
*, *:before, *:after {
  box-sizing: border-box;
}

/* Document
   ========================================================================== */

/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */

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

/* Sections
   ========================================================================== */

/**
 * Remove the margin in all browsers.
 */

body {
  margin: 0;
}

/**
 * Render the `main` element consistently in IE.
 */

main {
  display: block;
}

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */

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

/* Grouping content
   ========================================================================== */

/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */

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

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */

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

/* Text-level semantics
   ========================================================================== */

/**
 * Remove the gray background on active links in IE 10.
 */

a {
  background-color: transparent;
}

/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */

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

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */

b,
strong {
  font-weight: bolder;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */

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

/**
 * Add the correct font size in all browsers.
 */

small {
  font-size: 80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */

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

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/* Embedded content
   ========================================================================== */

/**
 * Remove the border on images inside links in IE 10.
 */

img {
  border-style: none;
}

/* Forms
   ========================================================================== */

/**
 * 1. Change the font styles in all browsers.
 * 2. Remove the margin in Firefox and Safari.
 */

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

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */

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

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */

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

/**
 * Correct the inability to style clickable types in iOS and Safari.
 */

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

/**
 * Remove the inner border and padding in Firefox.
 */

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

/**
 * Restore the focus styles unset by the previous rule.
 */

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

/**
 * Correct the padding in Firefox.
 */

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

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *    `fieldset` elements in all browsers.
 */

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

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */

progress {
  vertical-align: baseline;
}

/**
 * Remove the default vertical scrollbar in IE 10+.
 */

textarea {
  overflow: auto;
}

/**
 * 1. Add the correct box sizing in IE 10.
 * 2. Remove the padding in IE 10.
 */

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

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */

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

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */

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

/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */

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

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */

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

/* Interactive
   ========================================================================== */

/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */

details {
  display: block;
}

/*
 * Add the correct display in all browsers.
 */

summary {
  display: list-item;
}

/* Misc
   ========================================================================== */

/**
 * Add the correct display in IE 10+.
 */

template {
  display: none;
}

/**
 * Add the correct display in IE 10.
 */

[hidden] {
  display: none;
}

/* Objects */

/* Responsive grid */

.row-fluid {
    width: 100%;
    *zoom: 1;
}

.row-fluid:before, .row-fluid:after {
    display: table;
    content: "";
}

.row-fluid:after {
    clear: both;
}

.row-fluid [class*="span"] {
    display: block;
    float: left;
    width: 100%;
    min-height: 1px;
    margin-left: 2.127659574%;
    *margin-left: 2.0744680846382977%;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
}

.row-fluid [class*="span"]:first-child {
    margin-left: 0;
}

.row-fluid .span12 {
    width: 99.99999998999999%;
    *width: 99.94680850063828%;
}

.row-fluid .span11 {
    width: 91.489361693%;
    *width: 91.4361702036383%;
}

.row-fluid .span10 {
    width: 82.97872339599999%;
    *width: 82.92553190663828%;
}

.row-fluid .span9 {
    width: 74.468085099%;
    *width: 74.4148936096383%;
}

.row-fluid .span8 {
    width: 65.95744680199999%;
    *width: 65.90425531263828%;
}

.row-fluid .span7 {
    width: 57.446808505%;
    *width: 57.3936170156383%;
}

.row-fluid .span6 {
    width: 48.93617020799999%;
    *width: 48.88297871863829%;
}

.row-fluid .span5 {
    width: 40.425531911%;
    *width: 40.3723404216383%;
}

.row-fluid .span4 {
    width: 31.914893614%;
    *width: 31.8617021246383%;
}

.row-fluid .span3 {
    width: 23.404255317%;
    *width: 23.3510638276383%;
}

.row-fluid .span2 {
    width: 14.89361702%;
    *width: 14.8404255306383%;
}

.row-fluid .span1 {
    width: 6.382978723%;
    *width: 6.329787233638298%;
}

.container-fluid {
    *zoom: 1;
}

.container-fluid:before, .container-fluid:after {
    display: table;
    content: "";
}

.container-fluid:after {
    clear: both;
}

@media (max-width: 767px) {
    .row-fluid {
        width: 100%;
    }

    .row-fluid [class*="span"] {
        display: block;
        float: none;
        width: auto;
        margin-left: 0;
    }
}

@media (min-width: 768px) and (max-width: 1139px) {
    .row-fluid {
        width: 100%;
        *zoom: 1;
    }

    .row-fluid:before, .row-fluid:after {
        display: table;
        content: "";
    }

    .row-fluid:after {
        clear: both;
    }

    .row-fluid [class*="span"] {
        display: block;
        float: left;
        width: 100%;
        min-height: 1px;
        margin-left: 2.762430939%;
        *margin-left: 2.709239449638298%;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        -ms-box-sizing: border-box;
        box-sizing: border-box;
    }

    .row-fluid [class*="span"]:first-child {
        margin-left: 0;
    }

    .row-fluid .span12 {
        width: 99.999999993%;
        *width: 99.9468085036383%;
    }

    .row-fluid .span11 {
        width: 91.436464082%;
        *width: 91.38327259263829%;
    }

    .row-fluid .span10 {
        width: 82.87292817100001%;
        *width: 82.8197366816383%;
    }

    .row-fluid .span9 {
        width: 74.30939226%;
        *width: 74.25620077063829%;
    }

    .row-fluid .span8 {
        width: 65.74585634900001%;
        *width: 65.6926648596383%;
    }

    .row-fluid .span7 {
        width: 57.182320438000005%;
        *width: 57.129128948638304%;
    }

    .row-fluid .span6 {
        width: 48.618784527%;
        *width: 48.5655930376383%;
    }

    .row-fluid .span5 {
        width: 40.055248616%;
        *width: 40.0020571266383%;
    }

    .row-fluid .span4 {
        width: 31.491712705%;
        *width: 31.4385212156383%;
    }

    .row-fluid .span3 {
        width: 22.928176794%;
        *width: 22.874985304638297%;
    }

    .row-fluid .span2 {
        width: 14.364640883%;
        *width: 14.311449393638298%;
    }

    .row-fluid .span1 {
        width: 5.801104972%;
        *width: 5.747913482638298%;
    }
}

@media (min-width: 1280px) {
    .row-fluid {
        width: 100%;
        *zoom: 1;
    }

    .row-fluid:before, .row-fluid:after {
        display: table;
        content: "";
    }

    .row-fluid:after {
        clear: both;
    }

    .row-fluid [class*="span"] {
        display: block;
        float: left;
        width: 100%;
        min-height: 1px;
        margin-left: 2.564102564%;
        *margin-left: 2.510911074638298%;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        -ms-box-sizing: border-box;
        box-sizing: border-box;
    }

    .row-fluid [class*="span"]:first-child {
        margin-left: 0;
    }

    .row-fluid .span12 {
        width: 100%;
        *width: 99.94680851063829%;
    }

    .row-fluid .span11 {
        width: 91.45299145300001%;
        *width: 91.3997999636383%;
    }

    .row-fluid .span10 {
        width: 82.905982906%;
        *width: 82.8527914166383%;
    }

    .row-fluid .span9 {
        width: 74.358974359%;
        *width: 74.30578286963829%;
    }

    .row-fluid .span8 {
        width: 65.81196581200001%;
        *width: 65.7587743226383%;
    }

    .row-fluid .span7 {
        width: 57.264957265%;
        *width: 57.2117657756383%;
    }

    .row-fluid .span6 {
        width: 48.717948718%;
        *width: 48.6647572286383%;
    }

    .row-fluid .span5 {
        width: 40.170940171000005%;
        *width: 40.117748681638304%;
    }

    .row-fluid .span4 {
        width: 31.623931624%;
        *width: 31.5707401346383%;
    }

    .row-fluid .span3 {
        width: 23.076923077%;
        *width: 23.0237315876383%;
    }

    .row-fluid .span2 {
        width: 14.529914530000001%;
        *width: 14.4767230406383%;
    }

    .row-fluid .span1 {
        width: 5.982905983%;
        *width: 5.929714493638298%;
    }
}

/* Clearfix */

.clearfix {
    *zoom: 1;
}

.clearfix:before, .clearfix:after {
    display: table;
    content: "";
}

.clearfix:after {
    clear: both;
}

/* Visibilty Classes */

.hide {
    display: none;
}

.show {
    display: block;
}

.invisible {
    visibility: hidden;
}

.hidden {
    display: none;
    visibility: hidden;
}

/* Responsive Visibilty Classes */

.visible-phone {
    display: none !important;
}

.visible-tablet {
    display: none !important;
}

.hidden-desktop {
    display: none !important;
}

@media (max-width: 767px) {
    .visible-phone {
        display: inherit !important;
    }

    .hidden-phone {
        display: none !important;
    }

    .hidden-desktop {
        display: inherit !important;
    }

    .visible-desktop {
        display: none !important;
    }
}

@media (min-width: 768px) and (max-width: 1139px) {
    .visible-tablet {
        display: inherit !important;
    }

    .hidden-tablet {
        display: none !important;
    }

    .hidden-desktop {
        display: inherit !important;
    }

    .visible-desktop {
        display: none !important ;
    }
}

  




/* Content wrappers for blog post and system templates */

.content-wrapper {
  padding: 0 32px;
  margin: 0 auto;
}

.content-wrapper-full{
    max-width: 1440px64px;
    margin: 0 auto;
}

/* Drag and drop layout styles */

.dnd-section > .row-fluid {
  margin: 0 auto;
}

@media (max-width: 767px) {
  .dnd-section .dnd-column {
    padding: 0;
  }
}

/* Elements */
/* Insight Cards */
html {
  position: relative;
}

body {
  line-height: 1.4;
}

html[lang^='ja'] body,
html[lang^='zh'] body,
html[lang^='ko'] body {
  line-break: strict;
  overflow-wrap: normal;
  word-break: break-all;
}

/* Paragraphs */

p {
  margin: 0 0 24px;
  font-size: 1rem;
}

/* Anchors */

a {
  cursor: pointer;
}

/* Headings */

h1,
h2,
h3,
h4,
h5,
h6 {
  margin: 0 0 24px;
}

/* Lists */

ul,
ol {
  padding-left: 1rem;
  margin: 0 0 24px;
}

ul li,
ol li {
  margin: 0.7rem;
}

ul ul,
ol ul,
ul ol,
ol ol {
  margin: 24px 0;
}

.no-list {
  padding-left: 0;
  margin: 0;
  list-style: none;
}

.no-list li {
  margin: 0;
}

/* Code blocks */

pre {
  overflow: auto;
}

code {
  vertical-align: bottom;
}

/* Blockquotes */

blockquote {
  padding-left: 1rem;
  border-left: 10px solid;
  margin: 0 0 24px;
}

/* Horizontal rules */

hr {
  border: 0 none;
  border-bottom: 1px solid;
}

/* Subscripts and superscripts */

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

sup {
  top: -0.5em;
}

sub {
  bottom: -0.25em;
}

/* Image alt text */

img {
  font-size: 1rem;
  word-break: normal;
}
.primary-cta, 
.secondary-cta {
  font-size: 20px;
  font-weight: 600;
  line-height: 0.9!important;
  padding: 16px 32px;
  padding-top: 19px;
  border: 2px solid transparent;
  border-radius: 50px;
  transition: var(--transition);
  text-decoration: none;
  display: inline-block;
  text-align: center;
  cursor: pointer;
  max-width: max-content;
}

.primary-cta:hover, 
.secondary-cta:hover{
  font-weight: 600!important;
}

.primary-cta.inactive-cta, .secondary-cta.inactive-cta{
  opacity: 0.5;
  cursor: not-allowed;
  pointer-events: none;
}

/* Colourways */

/* Colourways -> Purple */

.primary-cta.purple-cta{
  background-color: var(--purple);
  border-color: var(--purple);
  color: white;
}

.primary-cta:hover.purple-cta{
  background-color: var(--orange);
  border-color: var(--orange);
  color: var(--white);
}

.secondary-cta.purple-cta{
  background-color: transparent;
  border-color: var(--purple);
  color: var(--purple);
}

.secondary-cta:hover.purple-cta{
  border-color: var(--orange);
  color: var(--orange);
}

/* Colourways -> Orange */

.primary-cta.orange-cta{
  background-color: var(--orange);
  border-color: var(--orange);
  color: white;
}

.primary-cta:hover.orange-cta{
  background-color: transparent;
  color: var(--orange);
}

.secondary-cta.orange-cta{
  background-color: transparent;
  border-color: var(--orange);
  color: var(--orange);
}

.secondary-cta:hover.orange-cta{
  background-color: var(--orange);
  color: white;
}


@media screen and (max-width: 767px){
  .cta_button.primary-cta, 
  .cta_button.secondary-cta{
    padding-left: 0px;
    padding-right: 0px;
    width: 100%;
  }

  .primary-cta, 
  .secondary-cta{
    width: 100%;
     max-width: unset;
  }
}

/* animations */

@keyframes pulse {
  0% {
    transform: scale(1);
  }
  33% {
    transform: scale(1.2); /* Scale up during first 1/3 of the 1s pulse */
  }
  66% {
    transform: scale(1);   /* Return to normal during the 1s pulse */
  }
  100% {
    transform: scale(1);   /* Stay at normal size during break */
  }
}

@media screen and (min-width: 560px) { 
  .cta--pulse {
    animation: pulse 3000ms cubic-bezier(.5,-0.25,.75,1) infinite;
  }
}





/* Labels */



/* Help text */

form legend {

}

/* Form fields */

.hs-form-field{
  position: relative;
  transition: var(--transition);
  margin-top: 10px;
  margin-bottom: 40px;
}

.hs-form-field.hs-form-field--active{
  
}

.hs-form-field:not(.hs-fieldtype-checkbox) label:not(.hs-error-msg):not(.hs-form-radio-display){
  position: absolute;
  top: calc(50%);
  transform: translateY(-50%);
  left: 16px;
  font-size: 16px;
  transition: var(--transition);
}

.hs-form-field:not(.hs-fieldtype-checkbox).hs-form-field--active label:not(.hs-error-msg){
  top: calc(0% - 10px);
  font-size: 10px;
  left: 0px;
}

.hs-error-msg{
  color: #F00;
  font-size: 12px;
  line-height: 1.5;
  margin-top: 8px;
}

.hs-form-field:has(.hs-error-msg) input{
  border-color: #F00;
}

form input[type='text'],
form input[type='email'],
form input[type='password'],
form input[type='tel'],
form input[type='number'],
form input[type='search'],
form select,
form textarea {
  width: 100%;
  padding: 10px 16px;
  border-radius: 5px;
  border-style: solid;
  border-left: 0px;
  border-right: 0px;
  border-top: 0px;
  border-bottom: 1px solid;
  background-color: transparent;
  min-height: 40px;
}
form textarea{
  border: 1px solid;
  min-height: 120px;
}

.form--dark form input{
  border-color: var(--dark-teal-green);
  color: var(--dark-teal-green);
}

form fieldset{
  max-width: unset!important;
}

form input::placeholder{
  display: none!important;
  opacity: 0!important;
}

/* Light Form Styles */

.form--light form input,
.form--light form select,
.form--light form textarea {
  border-color: var(--white);
  color: var(--white);
}

.form--light .hs-form-field label:not(.hs-error-msg){
  color: var(--white);
}



form textarea {
 
}
.legal-consent-container .hs-form-booleancheckbox-display input{
 
}
/* Form fields - placeholders */

::-webkit-input-placeholder {
  display: none;
}

::-moz-placeholder {
  display: none;
}

:-ms-input-placeholder {
  display: none;
}

:-moz-placeholder {
  display: none;
}

::placeholder {
  display: none;
}

/* Form fields - date picker */

form .hs-dateinput:before {
  
}

form .pika-table thead th {

}

form td.is-today .pika-button {
 
}

form .is-selected .pika-button {

}

form .pika-button:hover {

}

/* Headings and text */

form .hs-richtext,
form .hs-richtext *,
form .hs-richtext p,
form .hs-richtext h1,
form .hs-richtext h2,
form .hs-richtext h3,
form .hs-richtext h4,
form .hs-richtext h5,
form .hs-richtext h6 {

}

form .hs-richtext a {

}

/* GDPR */

form .legal-consent-container,
form .legal-consent-container .hs-richtext,
form .legal-consent-container .hs-richtext p {

}

/* Inline thank you message */

.submitted-message {

}

/* Custom checkbox */

input[type="checkbox"]{
  position: relative;
  cursor: pointer;
  appearance: none; 
  width: 20px;
  height: 20px;
}

input[type="checkbox"]::before {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  width: 20px;
  height: 20px;
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  transition: var(--transition);
}

.form--dark input[type="checkbox"]::before {
  background-image: url('data:image/svg+xml,<svg width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg"><rect x="0.5" y="0.5" width="19" height="19" rx="2.5" fill="white" stroke="%23003934"/></svg>');
}

.form--dark input[type="checkbox"]:checked::before {
  background-image: url('data:image/svg+xml,<svg width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg"><rect x="0.5" y="0.5" width="19" height="19" rx="2.5" fill="white" stroke="%23003934"/><rect x="4" y="4" width="12" height="12" rx="2" fill="%23008D7F"/></svg>');
}

.form--light input[type="checkbox"]::before {
  background-image: url('data:image/svg+xml,<svg width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg"><rect x="0.5" y="0.5" width="19" height="19" rx="2.5" stroke="white"/></svg>');
}

.form--light input[type="checkbox"]:checked::before {
  background-image: url('data:image/svg+xml,<svg width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg"><rect x="0.5" y="0.5" width="19" height="19" rx="2.5" stroke="white"/><rect x="4" y="4" width="12" height="12" rx="2" fill="white"/></svg>');
}

input[type="checkbox"] + span{
  padding-left: 16px;
}

/* Custom Radio Button Styling */

/* Target radio inputs inside any label with the common HubSpot structure */
.hs-form-radio-display input[type="radio"] {
  position: relative;
  cursor: pointer;
  appearance: none; /* Hide default radio button */
  -webkit-appearance: none;
  -moz-appearance: none;
  width: 20px;
  height: 20px;
  margin: 0;
  padding: 0;
  background-color: transparent;
}

.hs-form-radio-display input[type="radio"]::before {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  width: 20px;
  height: 20px;
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  transition: var(--transition, 0.3s ease);
  pointer-events: none;
}

.form--dark .hs-form-radio-display input[type="radio"]::before {
  background-image: url('data:image/svg+xml,<svg width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg"><rect x="0.5" y="0.5" width="19" height="19" rx="9.5" fill="white" stroke="%23003934"/></svg>');
}

.form--dark .hs-form-radio-display input[type="radio"]:checked::before {
  background-image: url('data:image/svg+xml,<svg width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg"><rect x="0.5" y="0.5" width="19" height="19" rx="9.5" fill="white" stroke="%23003934"/><rect x="4" y="4" width="12" height="12" rx="6" fill="%23008D7F"/></svg>');
}

.form--light .hs-form-radio-display input[type="radio"]::before {
  background-image: url('data:image/svg+xml,<svg width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg"><rect x="0.5" y="0.5" width="19" height="19" rx="9.5" stroke="white"/></svg>');
}

.form--light .hs-form-radio-display input[type="radio"]:checked::before {
  background-image: url('data:image/svg+xml,<svg width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg"><rect x="0.5" y="0.5" width="19" height="19" rx="9.5" stroke="white"/><rect x="4" y="4" width="12" height="12" rx="6" fill="white"/></svg>');
}


/* Position label text to the right of the custom radio */
.hs-form-radio-display input[type="radio"] + span {
  display: inline-block;
  padding-left: 16px; /* Leave room for the 20px icon and spacing */
  line-height: 20px;
  font-size: 16px;
  vertical-align: middle;
  position: relative;
}


.hs-form-radio-display{
  display: flex;
  flex-direction: row;
  align-items: center;
}

.hs-form-radio-display label span{
  font-size: 16px;
}

/* Buttons */

input[type="submit"].hs-button{
  font-size: 14px;
  font-weight: 500;
  line-height: 1;
  text-transform: uppercase;
  padding: 16px 60px;
  border: 1px solid transparent;
  border-radius: 50px;
  transition: var(--transition);
  text-decoration: none;
  display: inline-block;
  text-align: center;
  cursor: pointer;
  letter-spacing: 1px;
}

.form--dark input[type="submit"].hs-button{
  background-color: var(--teal);
  border-color: var(--teal);
  color: var(--white);
}

.form--dark input[type="submit"].hs-button:hover{
  background-color: var(--hunter-green);
}

.form--light input[type="submit"].hs-button{
  background-color: var(--grey);
  border-color: var(--grey);
  color: var(--dark-teal-green);
}

.form--light input[type="submit"].hs-button:hover{
  background-color: var(--dark-grey);
}
/* 

Need to make individual adjustments? -- Please use modifier classes e.g. slider-navigation--team-slider
inside of your modules respective css file 

*/


/* Slider Navigation */

.slider-navigation{
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 32px;
}

.slider-navigation__item{
    width: 50px;
    height: 50px;
    background-color: var(--white);
    border: 1px solid rgba(0, 141, 127, 0.1);
    border-radius: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    transition: var(--transition);
    cursor: pointer;
    opacity: 1;
}

.slider-navigation__item.swiper-button-disabled{
    opacity: 0.5;
    cursor: not-allowed;
}

.slider-navigation__item:hover{
    background-color: var(--teal);
    border-color: var(--teal);
}

.slider-navigation__item svg{
    width: 28px;
    max-width: 28px;
    height: auto;
}

.slider-navigation__item svg path{
    fill: var(--teal);
    transition: var(--transition);
}

.slider-navigation__item:hover svg path{
    fill: var(--white);
}

/* Logo Slider */

.logo-slider{
    position: relative;
}

.logo-slider::before{
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 240px;
    height: 100%;
    z-index: 5;
}

.logo-slider::after{
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    width: 100px;
    height: 100%;
    z-index: 5;
}


.logo-slider__logo{
    display: flex;
    justify-content: center;
    align-items: center;
}

.logo-slider.logo-slider--light .logo-slider__logo img {
    filter: brightness(0) saturate(100%) invert(1);
    -webkit-filter: brightness(0) saturate(100%) invert(1);
} 

.logo-slider.logo-slider--dark .logo-slider__logo img {
    filter: brightness(0) saturate(100%);
    -webkit-filter: brightness(0) saturate(100%);
}

.logo-slider__logo img{
    min-height: 70px;
    max-height: 70px;
    width: 100%;
    object-fit: contain;
}

@media screen and (max-width: 768px){

    .logo-slider__logo img{
        min-height: 30px;
        max-height: 30px;
    }
}

.no-delay .swiper-wrapper {
    transition-timing-function: linear;
}
/* Load spinner */

.lds-spinner {
  opacity: 0;
  position: relative;
  right: 0;
  left: 0;
  display: block;
  margin: 20px auto;
  transform: scale(0.5);
  transform: all 0.3s;
}
.lds-spinner.active {
  opacity: 1;
  width: 80px;
  height: 80px;
}
.lds-spinner div {
  transform-origin: 40px 40px;
  animation: lds-spinner 1.2s linear infinite;
}
.lds-spinner div:after {
  content: " ";
  display: block;
  position: absolute;
  top: 3px;
  left: 37px;
  width: 6px;
  height: 18px;
  border-radius: 20%;
  background: #202349;
}
.lds-spinner div:nth-child(1) {
  transform: rotate(0deg);
  animation-delay: -1.1s;
}
.lds-spinner div:nth-child(2) {
  transform: rotate(30deg);
  animation-delay: -1s;
}
.lds-spinner div:nth-child(3) {
  transform: rotate(60deg);
  animation-delay: -0.9s;
}
.lds-spinner div:nth-child(4) {
  transform: rotate(90deg);
  animation-delay: -0.8s;
}
.lds-spinner div:nth-child(5) {
  transform: rotate(120deg);
  animation-delay: -0.7s;
}
.lds-spinner div:nth-child(6) {
  transform: rotate(150deg);
  animation-delay: -0.6s;
}
.lds-spinner div:nth-child(7) {
  transform: rotate(180deg);
  animation-delay: -0.5s;
}
.lds-spinner div:nth-child(8) {
  transform: rotate(210deg);
  animation-delay: -0.4s;
}
.lds-spinner div:nth-child(9) {
  transform: rotate(240deg);
  animation-delay: -0.3s;
}
.lds-spinner div:nth-child(10) {
  transform: rotate(270deg);
  animation-delay: -0.2s;
}
.lds-spinner div:nth-child(11) {
  transform: rotate(300deg);
  animation-delay: -0.1s;
}
.lds-spinner div:nth-child(12) {
  transform: rotate(330deg);
  animation-delay: 0s;
}
@keyframes lds-spinner {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}

/* Icon wrapper */

.icon {
  display: inline-flex;
  border-radius: 50%;
}

.icon--square .icon {
  border-radius: 0;
}

/* Icon */

.icon svg {
  vertical-align: middle;
}
.pagination{
    display: flex;
    flex-direction: row;
    gap: 20px;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
}

.pagination__page, 
.pagination__arrow{
    max-width: 40px;
    max-height: 40px;
    width: 40px;
    height: 40px;
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 100%;
    color: inherit;
    background-color: transparent;
    transition: var(--transition);
    cursor: pointer;

}

.pagination__page:hover, 
.pagination__page.pagination__page--active{
    background-color: var(--tiber-green);
    color: white;
}

.pagination__arrow:hover{
    background-color: var(--tiber-green);
}

.pagination__arrow svg path{
    stroke: var(--tiber-green);
}

.pagination__arrow:hover svg path{
    stroke: var(--white);
}


.pagination__arrow svg{
    pointer-events: none;
}

.pagination__arrow.pagination__arrow--prev svg{
    transform: rotate(180deg);
}

.pagination__arrow.pagination__arrow--inactive{
    cursor: not-allowed;
    opacity: 0.3;
}

.pagination:has(.pagination__arrow.pagination__arrow--prev.pagination__arrow--inactive):has(.pagination__arrow.pagination__arrow--next.pagination__arrow--inactive) .pagination__arrow.pagination__arrow--inactive{
    display: none;
}
/* Table */

table {
  border-collapse: collapse;
  margin-bottom: 1.4rem;
  overflow-wrap: break-word;
}

/* Table cells */

th,
td {
  padding: 0.7rem;
  vertical-align: top;
}

/* Table header */

thead th,
thead td {
  vertical-align: bottom;
}


table {
	border-collapse: collapse;
}
table td {
	padding: 15px;
}
table thead td {
	background-color: #54585d;
	color: #ffffff;
	font-weight: bold;
	font-size: 13px;
	border: 1px solid #54585d;
}
table tbody td {
	color: #636363;
	border: 1px solid #dddfe1;
}
table tbody tr {
	background-color: #f9fafb;
}
table tbody tr:nth-child(odd) {
	background-color: #ffffff;
}
.video-media{
    position: relative;
    border-radius: var(--radius);
    overflow: hidden;
    width: 100%;
    height: 100%;
}

.video-media video{
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    z-index: 1;
    display: block;
}

.video-media .video-media__thumbnail{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    opacity: 0;
    pointer-events: none;
    z-index: 2;
    transition: var(--transition);
}

.video-media.video-media--paused .video-media__thumbnail{
    opacity: 1;
}

.video-media .video-media__controls{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    background-color: rgba(0, 0, 0, 0.2);
    cursor: pointer;
    opacity: 0;
    pointer-events: none;
    z-index: 3;
    transition: var(--transition);
}

.video-media:hover .video-media__controls{
    background-color: rgba(0, 0, 0, 0.3);
}

.video-media.video-media--paused .video-media__controls{
    opacity: 1;
    pointer-events: all;
}

.video-media__controls svg{
    transition: var(--transition);
    border: 0px solid rgba(255, 255, 255, 0);
    border-radius: 100%;
}

.video-media__controls:hover svg{
    border: 6px solid rgba(255, 255, 255, 0.5);
}

.video-media__controls svg circle{
    fill: var(--orange);
    transition: var(--transition);
}

.video-media__controls svg path{
    fill: var(--white);
    transition: var(--transition);
}

.video-media__controls:hover svg circle{
    fill: var(--purple);
}

.video-media__controls:hover svg path{
    fill: var(--white);
}

@media screen and (max-width: 767px){

    .video-media__controls svg{
        width: 50px;
        height: 50px;
    }

}
/* Missing Template at Path: \'expertunity-theme\/css\/elements\/_accordions.css\' */
.statistic{
    display: flex;
    flex-direction: column;
    gap: 20px;
    color: var(--hunter-green);
    position: relative;
}

.statistic-number{
    display: flex;
    flex-direction: row;
    align-items: flex-end;
    letter-spacing: 2px;
}

.statistic-number__prefix, 
.statistic-number__suffix{
    font-size: 64px;
    font-weight: 500;
    line-height: 1;
}

.statistic-number__number{
    font-size: 90px;
    font-weight: 500;
    line-height: 1;
}

.statistic-content p:last-of-type{
    margin-bottom: 0px;
}

@media screen and (max-width: 1023px){
    .statistic-number__prefix, 
    .statistic-number__suffix{
        font-size: 40px;
        font-weight: 500;
        line-height: 1;
    }

    .statistic-number__number{
        font-size: 60px;
        font-weight: 500;
        line-height: 1;
    }
}

/* Modules */
/* Rich text */

.widget-type-rich_text img {
  height: auto;
  max-width: 100%;
}
/* Global */

header.header-wrapper {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 100%;
  transition: 0.15s ease-in-out;
  z-index: 999;
  background-color: #FFFFFF;
  top: 0px;
  transition: var(--transition);
  box-shadow: 0 0 60px rgba(0, 0, 0, .15);
}

header.header-wrapper.position-fixed.scrolled {
  top: -100px;
}

header.header-wrapper.position-fixed.scrolled .content-wrapper {
  padding: 20px 0px;
}

header.header-wrapper .content-wrapper {
  display: flex;
  flex-direction: row;
  justify-content: flex-start;
  align-items: center;
  width: 100%;
  padding: 20px 0px;
  position: relative;
  gap: 44px;

}

header.header-wrapper.scrolled .content-wrapper {
  padding: 32px 0px;
}

header.header-wrapper .content-wrapper .header-column {
  display: flex;
}

header.header-wrapper .content-wrapper .header-column.logo {
  width: max-content;
  position: relative;
  min-width: 200px;
}

header.header-wrapper.scrolled .content-wrapper .header-column.logo {
  width: max-content;
  position: relative;
  min-height: 16px;
}

header.header-wrapper .content-wrapper .header-column.logo .desktop-logo {
  width: 100%;
  max-width: 200px;
  height: auto;
  object-fit: contain;
  opacity: 1;
}

header.header-wrapper .content-wrapper .header-column.logo .sticky-logo{
  width: 100%;
  max-width: 200px;
  height: auto;
  object-fit: contain;
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0;
}

header.header-wrapper.scrolled .content-wrapper .header-column.logo .sticky-logo{
  opacity: 1;
}

header.header-wrapper.scrolled .content-wrapper .header-column.logo .desktop-logo{
  opacity: 0;
}

header.header-wrapper .content-wrapper .header-column.logo .logo-cover-link {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 10;
}

header.header-wrapper .content-wrapper .header-column.navigation {
  justify-content: flex-start;
}

header.header-wrapper .content-wrapper .header-column.navigation nav ul.nav-ul {
  list-style: none;
  display: flex;
  gap: 44px;
  padding: 0px;
  margin: 0px;
}

header.header-wrapper
  .content-wrapper
  .header-column.navigation
  nav
  ul.nav-ul
  li.nav-li {
  list-style: none;
  padding: 0px;
  margin: 0px;
  position: relative;
}

header.header-wrapper
  .content-wrapper
  .header-column.navigation
  nav
  ul.nav-ul
  li.nav-li.mega {
  position: unset !important;
}

header.header-wrapper
  .content-wrapper
  .header-column.navigation
  nav
  ul.nav-ul
  li.nav-li
  a.nav-link {
  text-decoration: none;
  display: block;
  font-size: 18px;
  color: var(--black);
  text-decoration: none!important;
  position: relative;
  opacity: 1;
  font-weight: 600;
}

header.header-wrapper
  .content-wrapper
  .header-column.navigation
  nav
  ul.nav-ul
  li.nav-li
  a.top-menu-link.inactive{
    opacity: 1;
  }

header.header-wrapper
  .content-wrapper
  .header-column.navigation
  nav
  ul.nav-ul
  li.nav-li
  a.top-menu-link.inactive {
    opacity: 0.4;
  }

header.header-wrapper
  .content-wrapper
  .header-column.navigation
  nav
  ul.nav-ul
  li.nav-li
  a.nav-link::after{
    position: absolute;
    content: '';
    bottom: -2px;
    left: 0px;
    height: 1px;
    background-color: var(--gold);
    width: 0%;
    transition: 0.4s ease-in-out;
}

header.header-wrapper
  .content-wrapper
  .header-column.navigation
  nav
  ul.nav-ul
  li.nav-li
  a.nav-link:hover::after{
    width: 100%;
}

header.header-wrapper
  .content-wrapper
  .header-column.navigation
  nav
  ul.nav-ul
  li.nav-li
  a.nav-link.has-child {
  display: flex;
  flex-direction: row;
  gap: 12px; /* Increase this to change the gap between the menu item and indicator */
  justify-content: center;
  align-items: center;
}

header.header-wrapper
  .content-wrapper
  .header-column.navigation
  nav
  ul.nav-ul
  li.nav-li
  a.nav-link.has-child
  .indicator {
  width: 10px;
  height: auto;
  object-fit: contain;
}

header.header-wrapper
  .content-wrapper
  .header-column.navigation
  nav
  ul.nav-ul
  li.nav-li
  ul.nav-child-ul {
  position: absolute;
  top: calc(100% + 10px);
  left: 50%;
  transform: translateX(-50%);
  width: max-content;
  background-color: #f5f5f5;
  list-style: none;
  margin: 0;
  padding: 28px 24px;
  opacity: 0;
  visibility: hidden;
  transition: 0.15s ease-in-out;
  z-index: 99;
  border-radius: var(--radius);
  box-shadow: 0px 6px 40px rgba(0, 0, 0, 0.20);
  display: flex;
  flex-direction: column;
  gap: 0px;
}

header.header-wrapper
  .content-wrapper
  .header-column.navigation
  nav
  ul.nav-ul
  li.nav-li
  ul.nav-child-ul.visible {
  opacity: 1;
  visibility: visible;
}

header.header-wrapper
  .content-wrapper
  .header-column.navigation
  nav
  ul.nav-ul
  li.nav-li
  ul.nav-child-ul
  li.nav-child-li {
  padding: 0px 0px;
  margin: 0px;
  margin-bottom: 16px;
}


header.header-wrapper
  .content-wrapper
  .header-column.navigation
  nav
  ul.nav-ul
  li.nav-li
  ul.nav-child-ul
  li.nav-child-li:last-of-type{
  padding-top: 0px;
  margin: 0px;
  margin-bottom: 0px;
}

header.header-wrapper
  .content-wrapper
  .header-column.navigation
  nav
  ul.nav-ul
  li.nav-li
  ul.nav-child-ul
  li.nav-child-li:last-of-type{
  padding-bottom: 0px;
  margin: 0px;
}

header.header-wrapper
  .content-wrapper
  .header-column.navigation
  nav
  ul.nav-ul
  li.nav-li
  ul.nav-child-ul
  li.nav-child-li
  a.nav-link {
  color: var(--black);
  width: max-content;
  font-size: 18px;
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 12px;
}

header.header-wrapper
  .content-wrapper
  .header-column.navigation
  nav
  ul.nav-ul
  li.nav-li
  ul.nav-child-ul
  li.nav-child-li
  a.nav-link svg{
    opacity: 0;
    transition: var(--transition);
  }

header.header-wrapper
  .content-wrapper
  .header-column.navigation
  nav
  ul.nav-ul
  li.nav-li
  ul.nav-child-ul
  li.nav-child-li
  a.nav-link:hover svg{
    opacity: 1;
  }

header.header-wrapper
  .content-wrapper
  .header-column.navigation
  nav
  ul.nav-ul
  li.nav-li
  ul.nav-child-ul
  li.nav-child-li
  a.nav-link.inactive{
    opacity: 0.5;
  }

.nav-li .nav-link:hover{
  color: var(--orange)!important;
}



header.header-wrapper
  .content-wrapper
  .header-column.navigation
  nav
  ul.nav-ul
  li.nav-li
  ul.nav-child-ul.mega {
  display: flex;
  flex-direction: row;
  padding: 40px 64px;
  z-index: 99;
  position: absolute;
  top: 100%;
  left: 50%;
  transform: translateX(-50%);
  overflow: hidden;
  min-width: 950px;
  max-width: 100vw;
}

header.header-wrapper
  .content-wrapper
  .header-column.navigation
  nav
  ul.nav-ul
  li.nav-li
  ul.nav-child-ul.mega svg{
    position: absolute;
    bottom: -80px;
    right: 64px;
}



/* header.header-wrapper
  .content-wrapper
  .header-column.navigation
  nav
  ul.nav-ul
  li.nav-li
  ul.nav-child-ul.mega {
  display: flex;
  flex-direction: row;
  padding: 40px 64px;
  z-index: 99;
  position: absolute;
  top: 100%;
  left: calc(25%);
} */

header.header-wrapper
  .content-wrapper
  .header-column.navigation
  nav
  ul.nav-ul
  li.nav-li
  ul.nav-child-ul.mega .mega-column {
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  align-content: start;
  padding: 0px 40px;
  border-left: 1px solid var(--grey);
  position: relative;
}

header.header-wrapper
  .content-wrapper
  .header-column.navigation
  nav
  ul.nav-ul
  li.nav-li
  ul.nav-child-ul.mega
  .mega-column:first-of-type {
  padding-left: 0px;
  border-left: 0px solid transparent;
}

header.header-wrapper
  .content-wrapper
  .header-column.navigation
  nav
  ul.nav-ul
  li.nav-li
  ul.nav-child-ul.mega
  .mega-column:last-of-type {
  padding-right: 0px;
}

header.header-wrapper
  .content-wrapper
  .header-column.navigation
  nav
  ul.nav-ul
  li.nav-li
  ul.nav-child-ul.mega
  .mega-column
  .mega-column-title {
    font-size: 16px;
    font-weight: 500;
    display: inline-block;
    min-width: max-content;
    padding: 16px 0px;
}

header.header-wrapper
  .content-wrapper
  .header-column.navigation
  nav
  ul.nav-ul
  li.nav-li
  ul.nav-child-ul.mega
  .mega-column
  .mega-column-links-wrapper {
  display: flex;
  flex-direction: row;
  gap: 40px;
}

header.header-wrapper
  .content-wrapper
  .header-column.navigation
  nav
  ul.nav-ul
  li.nav-li
  ul.nav-child-ul.mega
  .mega-column
  .mega-column-links-wrapper
  .mega-column-links {
  display: flex;
  flex-direction: column;
  max-height: 165px;
  flex-wrap: wrap;
  width: auto;
}

.header-column.nav-cta-wrapper{
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  width: 100%;
}





/* Cart */

header.header-wrapper .content-wrapper .header-column.cta .cart{
  position: relative;
}

.cart__cover-link{
  display: none;
}

.cart__icon{
  cursor: pointer;
}

.cart__indicator{
  position: absolute;
  top: -16px;
  right: -16px;
  width: 16px;
  height: 16px;
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: var(--gold);
}

.cart__indicator__count{
  font-size: 12px;
  color: white;
}

.cart__contents{
  position: absolute;
  bottom: -100%;
  left: -50%;
  transform: translate(-50%, 100%);
  min-width: 400px;
  max-width: 500px;
  width: max-content;
  height: max-content;
  background-color: white;
  border: 1px solid #BBBBBB;
  padding: 20px;
  display: flex;
  flex-direction: column;
  gap: 10px;
  opacity: 0;
  pointer-events: none;
  transition: var(--transition);
  z-index: 99999;
}


.cart__contents.show-cart{
  opacity: 1;
  pointer-events: all;
}

.cart__item{
  display: flex;
  flex-direction: row;
  justify-content: flex-start;
  align-items: stretch;
  gap: 20px;
  border-bottom: 1px solid #BBBBBB;
  padding-bottom: 16px;
}

.cart__item:last-of-type{
  border-bottom-width: 0px;
  padding-bottom: 0px;
}

.cart__item__image{
  max-width: 60px;
  height: auto;
  aspect-ratio: 1 / 1;
}

.cart__item__title{
  display: block;
  width: 100%;
  font-family: loretta-display, serif !important;
}

.cart__item__quantity-indicator{
    min-width: 24px;
    min-height: 24px;
    background-color: var(--gold);
    color: white;
    display: flex;
    justify-content: center;
    align-items: center;
}

.cart__item__content{
  display: flex;
  flex-direction: row;
  gap: 20px;
  width: 100%;
  justify-content: space-between;
  align-items: center;
}

.cart__contents .primary-cta{
  width: 100%;
  max-width: unset;
}

/* CTA */

header.header-wrapper .content-wrapper .header-column.cta {
  display: flex;
  flex-direction: row;
  gap: 18px;
  justify-content: flex-end;
  align-items: center;
}

header.header-wrapper .content-wrapper .header-column.cta .cta .primary-cta,  
header.header-wrapper .content-wrapper .header-column.cta .cta .secondary-cta{
  padding: 16px 20px;
  padding-top: 19px;
  font-size: 18px;
}


/* Mobile Menu */

header.header-wrapper .content-wrapper .header-column.mobile-menu {
  display: none;
}

header.header-wrapper
  .content-wrapper
  .header-column.mobile-menu
  .hamburger
  .line {
  width: 24px;
  height: 2px;
  background-color: var(--orange); /* Change this setting to adjust the colour of the lines */
  display: block;
  margin: 5px auto; /* Change this setting to adjust the space between Hamburger Lines */
  -webkit-transition: all 0.3s ease-in-out;
  -o-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}

header.header-wrapper
  .content-wrapper
  .header-column.mobile-menu
  .hamburger:hover {
  cursor: pointer;
}

#hamburger-8.is-active .line:nth-child(2) {
  opacity: 0;
}

#hamburger-8.is-active .line:nth-child(1) {
  -webkit-transform: translateY(8px) rotate(-40deg);
  -ms-transform: translateY(8px) rotate(-40deg);
  -o-transform: translateY(8px) rotate(-40deg);
  transform: translateY(8px) rotate(-40deg);
}

#hamburger-8.is-active .line:nth-child(3) {
  -webkit-transform: translateY(-6px) rotate(40deg);
  -ms-transform: translateY(-6px) rotate(40deg);
  -o-transform: translateY(-6px) rotate(40deg);
  transform: translateY(-6px) rotate(40deg);
}

.mobile-menu-content {
  opacity: 0;
  pointer-events: none;
  height: 0px;
}




.child-menu-description{
  font-size: 15px;
  font-style: normal;
  font-weight: 400;
  line-height: 24px; /* 160% */
  letter-spacing: 0.25px;
  opacity: 0.75;
  padding: 0;
  margin: 0;
}

.nav-child-li > ul{
  list-style: none;
  padding: 0px;
  margin: 0px;
  height: 0px;
  transition: var(--transition);
  overflow: hidden;
}
.nav-child-li .nav-child-ul{
  width: 100%;
}
.nav-child-li > ul.open{
  height: auto;
  margin: 12px 0 0 12px;
}
.nav-child-li > ul li{
  padding: 0px;
  margin: 0px;
}
.nav-child-li > ul li a{
  font-size: 16px !important;
  font-style: normal;
  font-weight: 500;
  line-height: 30px; /* 177.778% */
  letter-spacing: 1px;
} 

.nav-child-ul--large{
  max-width: 780px;
  flex-wrap: wrap;
  justify-content: space-between;
  flex-direction: row !important;
  left: -50% !important;
  transform: translateX(-50%);
}
.nav-child-ul--large li{
  width: 48%;
}

.header-column.navigation .nav-ul .nav-li:last-of-type .nav-child-ul{
 left: auto !important;
 right: 0px !important;
}
.nav-child-li.has-child a{
  display: flex !important;
  justify-content: space-between;
  align-items: center;
  width: 100% !important;
}

.nav-child-ul .nav-child-li a.nav-link:hover{
  color: var(--red) !important;
}
/*  1400 MQ to account for L/R padding */

@media screen and (max-width: 1680px){
  header.header-wrapper .content-wrapper{
    padding: 20px 32px;
  }

  header.header-wrapper.position-fixed.scrolled .content-wrapper {
    padding: 20px 32px;
  }
}


/*  1300 MQ to account for size of CTA & Logo  container */

@media screen and (max-width: 1300px) {

  header.header-wrapper .content-wrapper .header-column.logo {
      min-height: 64px;
      min-width: 140px;
  }

  header.header-wrapper .content-wrapper .header-column.cta {
      gap: 20px;
  }

  header.header-wrapper .content-wrapper .header-column.cta .cta .primary-cta {
      font-size: 14px;
      padding: 20px;
  }

  header.header-wrapper .content-wrapper .header-column.logo .desktop-logo {
    max-width: 140px;
    width: 140px;
  }

  header.header-wrapper .content-wrapper .header-column.logo .sticky-logo {
    max-width: 140px;
    width: 140px;
  }
}

/* Search Styling */

.header-wrapper .search{
  cursor: pointer;
}

.header__search{
  position: absolute;
  top: 174px;
  left: 0;
  width: 100%;
  height: auto;
  display: flex;
  justify-content: center;
  z-index: 98;
  opacity: 0;
  pointer-events: none;
  transition: 0.15s linear;
}

.header__search.show-search{
  opacity: 1;
  pointer-events: all;
}

header.position-fixed .header__search{
  top: 94px;
}

.header__search__input{
  width: 100%;
  max-width: 80vw;
  position: relative;
  display: flex;
  justify-content: center;
}

.header__search input{
  font-weight: 100;
  background-image: url('https://143753826.fs1.hubspotusercontent-eu1.net/hubfs/143753826/Fitzroy%20Of%20London%20Theme%20Assets/Icons/icon__search.svg');
  background-size: 20px;
  background-position: left 20px center;
  background-repeat: no-repeat;
  padding: 32px 20px 32px 50px;
  border: 0px solid transparent;
  -moz-box-shadow: 10px 10px 48px -19px rgba(0,0,0,0.1);
  box-shadow: 10px 10px 48px -19px rgba(0,0,0,0.1);
  width: 100%;
}

.header__search a{
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 20px;
  width: 30%;
  height: 20px;
  transition: var(--transition);
}

.header__search a:hover{
  right: 32px;
}

.header__search a img{
  width: 100%;
  height: 100%;
  max-height: 20px;
  object-fit: contain;
  object-position: right;
}


/*  1300 MQ to account for size of CTA & Logo  container */

@media screen and (max-width: 1150px) {
    header.header-wrapper .content-wrapper .header-column.cta .cta .primary-cta {
      display: none;
    }
}

/*  1000 MQ for Small Tablets/Mobile  */

@media screen and (max-width: 1000px) {
  .cart__contents{
    position: absolute;
    bottom: -100%;
    left: -50%;
    max-width: 320px;
    transform: unset;
  }

  header.header-wrapper .content-wrapper {
    padding: 24px 20px 24px 20px;
    justify-content: flex-start;
    gap: 30px;
  }

  header.header-wrapper.position-fixed.scrolled .content-wrapper {
    padding: 24px 20px 24px 20px;
    justify-content: flex-start;
  }

  header.header-wrapper .content-wrapper .header-column.logo, 
  header.header-wrapper.scrolled .content-wrapper .header-column.logo{
    width: 100%;
  }

  header.header-wrapper.scrolled .content-wrapper .header-column.logo .desktop-logo {
    opacity: 1;
  }

  header.header-wrapper.scrolled .content-wrapper .header-column.logo {
    min-height: 44px;
  }

  header.header-wrapper .content-wrapper .header-column.logo .sticky-logo{
    display: none;
  }

  .mobile-menu-content {
    display: flex;
    flex-direction: column;
    gap: 34px;
    width: 100%;
    position: fixed;
    top: 74px;
    left: 0px;
    height: 100%;
    z-index: 5;
    padding: 22px;
    background-color: white;
    opacity: 1;
    pointer-events: all;
    height: 100%;
  }

  .mobile-menu-content.hidden{
    opacity: 0;
    pointer-events: none;
    height: 0px;
  }

  .mobile-menu-content nav {
    width: 100%;
    max-width: 100vw;
    max-height: 90vh;
    overflow-y: scroll;
  }

  .mobile-menu-content nav .nav-ul {
    margin: 0px;
    padding: 0px;
    list-style: none;
  }

  .mobile-menu-content nav .nav-ul .nav-li {
    border-bottom: 1px solid var(--grey);
    padding: 0px 20px;
    font-size: 16px;
    padding: 20px 0px;
    margin: 0px;
    text-align: left;
  }

  .mobile-menu-content nav .nav-ul .nav-li.nav-accordion {
    flex-direction: column;
    justify-content: flex-start;
    width: 100%;
    align-items: flex-start;
  }

  .mobile-menu-content nav .nav-ul .nav-li.nav-accordion .accordion-content {
    max-height: 300px;
    overflow-y: scroll;
    overflow-x: hidden;
    padding: 20px;
    /* margin-top: 20px; */
    display: none;
  }

  .mobile-menu-content nav .nav-ul .nav-li.nav-accordion .accordion-content.open-accordion{
    display: flex;
  }

  .mobile-menu-content nav .nav-ul .nav-li a.nav-link {
    font-size: 18px;
    text-decoration: none!important;
    padding-right: 30px;
    color: var(--black);
    font-weight: 700;
  }

  .mobile-menu-content nav ul.nav-ul li.nav-li a.nav-link.has-child {
    gap: 20px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding-right: 0px;
    width: 100%;
  }

  .mobile-menu-content nav .nav-ul .nav-li .nav-child-ul {
    list-style: none;
    margin: 0;
    padding:0;
    display: flex;
    flex-direction: column;
    gap: 16px;
  }

  .mobile-menu-content nav .nav-ul .nav-li .nav-child-ul li a {
    text-decoration: none;
    padding-right: 0px;
  }

  .mobile-menu-content nav ul.nav-ul li.nav-li ul.nav-child-ul.mega {
    padding: 0px;
    margin: 0px;
    list-style: none;
    width: 100%;
  }

  .mobile-menu-content
    nav
    ul.nav-ul
    li.nav-li
    ul.nav-child-ul.mega
    .mega-column {
    padding-bottom: 20px;
  }

  .mobile-menu-content
    nav
    ul.nav-ul
    li.nav-li
    ul.nav-child-ul.mega
    .mega-column:last-of-type {
    padding-bottom: 0px;
  }

  .mobile-menu-content
    nav
    ul.nav-ul
    li.nav-li
    ul.nav-child-ul.mega
    .mega-column
    .mega-column-title {
    font-weight: 500;
    display: inline-block;
    min-width: max-content;
    padding-bottom: 16px;
    width: 100%;
    text-align: left;
    font-size: 16px;
    color: var(--black);
  }

  .mobile-menu-content
    nav
    ul.nav-ul
    li.nav-li
    ul.nav-child-ul
    .mega-columns-links {
    padding: 0px 20px;
  }

  .mobile-menu-content .mega-column-links{
    display: flex;
    flex-direction: column;
    gap: 16px;
  }

  .mobile-menu-content nav ul.nav-ul li.nav-li ul.nav-child-ul li.nav-child-li {
    padding: 0px;
    margin: 0px;
    text-align: left;
  }

  .mobile-menu-content
    nav
    ul.nav-ul
    li.nav-li
    ul.nav-child-ul
    li.nav-child-li:last-of-type {
    padding: 0px;
    padding-bottom: 0px;
  }

  .mobile-menu-content
    nav
    ul.nav-ul
    li.nav-li
    ul.nav-child-ul
    li.nav-child-li
    a.nav-link {
    font-size: 16px;
    text-decoration: none;
    width: 100%;
  }

  .mobile-menu-content
    nav
    .nav-ul
    .nav-li
    .accordion.active
    + .accordion-content,
  .mobile-menu-content nav .nav-ul .nav-li .accordion-content.show {
    display: block;
  }

  header.header-wrapper .content-wrapper .header-column.cta{
    width: 25%;
  }

  header.header-wrapper .content-wrapper .header-column.cta .search{
    display: flex;
    justify-content: center;
    align-items: center;
  }

  header.header-wrapper .content-wrapper .header-column.cta .cart{
    display: flex;
    justify-content: center;
    align-items: center;
  }

  header.header-wrapper .content-wrapper .header-column.cta .cta{
    display: none;
  }

  header.header-wrapper .content-wrapper .header-column.navigation {
    display: none;
  }

  header.header-wrapper .content-wrapper .header-column.mobile-menu {
    display: flex;
  }

  .cart__cover-link{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 10;
    display: flex;
  }
  
  .cart__icon{
    pointer-events: none;
  }

  .header__search{
    top: 92px!important;
  }

  .header__search input{
  padding: 16px 20px 16px 50px;
  }

.header__search a{
  height: 16px;
}

.header__search a:hover{
  right:20px;
}

.header__search a img{
  width: 100%;
  height: 100%;
  max-height: 20px;
  object-fit: contain;
  object-position: right;
}

.header__search__input{
  max-width: 90vw;
}

.nav-child-li > ul li a{
  font-size: 14px !important;
  font-style: normal;
  font-weight: 400;
  line-height: 30px; /* 177.778% */
}

.mobile-menu-content .mobile-cta{
  display: flex;
  flex-direction: column;
  gap: 16px;
  width: 100%;
}

    header.header-wrapper .content-wrapper .header-column.logo .desktop-logo {
        max-width: 200px;
        width: 190px;
    }

}


/* Sections */

/* Missing Template at Path: \'expertunity-theme\/css\/modules\/sections\/_team-slider.css\' */

/* Components */

/* Missing Template at Path: \'expertunity-theme\/css\/modules\/components\/_insight-cards.css\' */
/* Missing Template at Path: \'expertunity-theme\/css\/modules\/components\/_locations.css\' */
/* Missing Template at Path: \'expertunity-theme\/css\/modules\/components\/_book-a-demo.css\' */
/* Looking for .video-media?  You can find this in css/elements/_video.css */

.switchback{
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    align-items: stretch;
    gap: 80px;
    overflow-y: clip;
}

.switchback.switchback--reverse{
    flex-direction: row-reverse;
}

.switchback-column{
    width: 50%;
}

.switchback-gradient{
   display: none; 
}

/* If full width */

.switchback.switchback--full-width{
    padding-top: 80px;
}

.switchback.switchback--full-width .switchback-gradient{
    display: block;
    position: absolute;
    bottom: -5px;
    left: 50%;
    height: 100%;
    width: 100%;
    z-index: 5;
    background: linear-gradient(0deg,rgba(255, 255, 255, 1) 15%, rgba(0, 0, 0, 0) 100%);
    pointer-events: none;
}

.switchback.switchback--full-width .video-media{
    box-shadow: 24px 0px 54px rgba(0, 57, 52, 0.08), -24px 0px 54px rgba(0, 57, 52, 0.08);
}

.switchback.switchback--full-width .video-media video{
    object-position: top left;
}

.switchback.switchback--reverse.switchback.switchback--full-width .switchback-gradient{
    left: unset;
    right: 50%;
}

.switchback.switchback--full-width{
    position: relative;
    max-width: 1550px;
    margin: 0 auto;
}

.switchback.switchback--full-width .content-wrapper{
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    align-items: stretch;
    gap: 120px;
    padding: 0px;
    width: 100%;
}

.switchback.switchback--reverse.switchback.switchback--full-width .content-wrapper{
    flex-direction: row-reverse;
}

.switchback.switchback--dual-image .switchback-column.switchback-column--media{
    display: flex;
    flex-direction: row;
    align-items: stretch;
    gap: 24px;
}

.switchback.switchback--dual-image .switchback-column.switchback-column--media img{
    max-width: 50%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    min-height: 545px;
}

.switchback.switchback--dual-image .switchback-column.switchback-column--content{
    padding: 0px;
    width: 45%;
}

.switchback.switchback--dual-image .switchback-column.switchback-column--media{
    width: 55%;
}

/* If Full width -> Handle Media */

.switchback.switchback--full-width .switchback-column.switchback-column--media{
    min-height: 450px;
}

.switchback.switchback--full-width .switchback-column.switchback-column--media img:not(.video-media__thumbnail), 
.switchback.switchback--full-width .switchback-column.switchback-column--media .video-media{
    position: absolute;
    top: 50%;
    transform: translate(60px, -50%);
    left: 50%;
    max-width: 60%;
    object-fit: cover;
    object-position: top left;
    width: 100%;
    height: 100%;
    min-height: 450px;
    max-height: 500px;
    
}

.switchback.switchback--reverse.switchback--full-width .switchback-column.switchback-column--media img:not(.video-media__thumbnail), 
.switchback.switchback--reverse.switchback--full-width .switchback-column.switchback-column--media .video-media{
    left: unset;
    right: 50%;
    transform: translate(-60px, -50%);
    object-position: top left;
}


.switchback.switchback--full-width .switchback-column.switchback-column--content{
    padding: 80px 0px;
}

@media screen and (max-width: 1440px){
    .switchback.switchback--full-width .content-wrapper{
        padding: 100px 20px;
    }
}

@media screen and (max-width: 1100px){

    .switchback.switchback--full-width .content-wrapper{
        gap: 64px;
        padding: 64px 20px;
    }

    .switchback.switchback--full-width .switchback-column.switchback-column--content{
        padding: 40px 0px;
    }

    .switchback.switchback--full-width .switchback-column.switchback-column--media img:not(.video-media__thumbnail), 
    .switchback.switchback--full-width .switchback-column.switchback-column--media .video-media{
        transform: translate(32px, -50%);
        height: 100%;
    }

    .switchback.switchback--reverse.switchback--full-width .switchback-column.switchback-column--media img:not(.video-media__thumbnail), 
    .switchback.switchback--reverse.switchback--full-width .switchback-column.switchback-column--media .video-media{
        transform: translate(-32px, -50%);
    }

    .switchback.switchback--dual-image .switchback-column.switchback-column--content{
        width: 100%;
    }

    .switchback.switchback--dual-image .switchback-column.switchback-column--media{
        width: 100%;
    }
}


@media screen and (max-width: 900px){

    .switchback.switchback--full-width{
        padding-top: 40px;
    }

    .switchback.switchback--full-width .switchback-gradient{
        display: none;
    }

    .switchback.switchback--full-width .content-wrapper{
        flex-direction: column;
        gap: 40px;
        padding: 0px;
    }

    .switchback.switchback--full-width .switchback-column.switchback-column--media{
        padding-left: 20px;
        min-height: unset;
        position: relative;
    }

    .switchback.switchback--full-width .switchback-column.switchback-column--media::after{
        content: "";
        z-index: 5;
        position: absolute;
        bottom: -20%;
        left: 20px;
        height: 70%;
        width: 100%;
        z-index: 5;
        background: linear-gradient(0deg,rgba(255, 255, 255, 1) 15%, rgba(0, 0, 0, 0) 100%);
        pointer-events: none;
    }

    .switchback.switchback--full-width .switchback-column.switchback-column--content{
        padding: 0px 20px;
        position: relative;
        z-index: 6;
    }

    .switchback.switchback--full-width.switchback--media-top .content-wrapper{
        flex-direction: column-reverse!important;
    }

    .switchback.switchback--full-width.switchback--media-top .switchback-gradient{
        top: 0px;
        bottom: unset;
    }

    .switchback.switchback--full-width .switchback-column.switchback-column--media img, 
    .switchback.switchback--full-width .switchback-column.switchback-column--media .video-media{
        border-radius: 8px 0px 0px 8px; 
        min-height: unset;
    }

    .switchback.switchback--full-width .switchback-column.switchback-column--media img:not(.video-media__thumbnail), 
    .switchback.switchback--full-width .switchback-column.switchback-column--media .video-media, 
    .switchback.switchback--full-width.switchback--reverse .switchback-column.switchback-column--media img:not(.video-media__thumbnail), 
    .switchback.switchback--full-width.switchback--reverse .switchback-column.switchback-column--media .video-media{
        position: static;
        top: unset;
        transform: unset;
        left: unset;
        height: 100%;
        max-width: unset;
    }

    .switchback.switchback--full-width .switchback-column.switchback-column--media img:not(.video-media__thumbnail), 
    .switchback.switchback--full-width.switchback--reverse .switchback-column.switchback-column--media img:not(.video-media__thumbnail){
        position: static;
    }

    .switchback.switchback--full-width .switchback-column.switchback-column--media .video-media{
        position: relative;
    }

    .switchback.switchback--reverse.switchback--full-width .switchback-column.switchback-column--media img:not(.video-media__thumbnail), 
    .switchback.switchback--reverse.switchback--full-width .switchback-column.switchback-column--media .video-media{
        transform: unset;
    }

    .switchback.switchback--dual-image .switchback-column.switchback-column--media img {
        max-height: 300px;
        min-height: 300px!important;
    }

}

/* Content */

.switchback-column.switchback-column--content{
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.switchback-column.switchback-column--content p:last-of-type{
    margin-bottom: 0px;
}

.switchback-column__cta-wrapper{
    margin-top: 32px;
}

/* Content -> List Items */

.switchback-column__list-item{
    display: flex;
    flex-direction: column;
}

.switchback ul li h5{
    margin-bottom: 12px;
}

.switchback ul li p:last-of-type{
    margin-bottom: 0px;
}

/* Media */

.switchback-column.switchback-column--media{
    display: flex;
    justify-content: center;
    align-items: center;
    min-height: 740px;
    border-radius: var(--radius);
}

.switchback-column.switchback-column--media img{
    border-radius: var(--radius);
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}

@media screen and (max-width: 1023px){

    .switchback{
        gap: 44px;
        flex-direction: column!important;
    }

    .switchback--media-top{
        flex-direction: column-reverse!important;
    }

    .switchback-column.switchback-column--content h2{
        margin-bottom: 32px;
    }

    .switchback-column{
        width: 100%;
    }

    .switchback-column.switchback-column--content{
        padding: 0px;
    }

    .switchback-column.switchback-column--media{
        min-height: unset;
    }

    .switchback-column__cta-wrapper{
        margin-top: 30px;
    }

}
/* Missing Template at Path: \'expertunity-theme\/css\/modules\/components\/_icon-cards.css\' */
/* Missing Template at Path: \'expertunity-theme\/css\/modules\/components\/_partners.css\' */

/* Macro */
/* Missing Template at Path: \'expertunity-theme\/css\/macros\/_filterable-card-listing.css\' */

/* Sections */



/* Settings */

:root {
/* Primary Colours */
--purple : #321432;
--orange : #FF4A1F;
--grey: #C8D2D2;
--white: #EEEEEE;

--transition: 0.3s ease-in-out;
--radius: 20px;
}

/* Helpers */

.hide-desktop{
  display: none;
}

@media screen and (max-width: 767px){

  .hide-desktop{
    display: flex!important;
  }
  .hide-mobile{
    display: none!important;
  }
}

/* All */

html {
  scroll-behavior: smooth;
}

.body-wrapper{
  overflow-x: clip;
  background: #eeeeee;
}

.cover-link{
    position: absolute!important;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 5;
}

a:not(.primary-cta):not(.secondary-cta):not(.text-cta) {
  color: var(--teal);
  position: relative;
  font-weight: 400;
  text-decoration: none;
  transition: var(--transition);
}

a:not(.primary-cta):not(.secondary-cta):not(.text-cta):hover {
  color: var(--purple);
}

a:not(.primary-cta):not(.secondary-cta):not(.text-cta):not(.cover-link):not(.nav-link)::before {
  content: '';
  position: absolute;
  bottom: -4px;
  left: 0;
  width: 0%;
  height: 1px;
  background-color: var(--purple);
  transition: var(--transition);
}

a:not(.primary-cta):not(.secondary-cta):not(.text-cta):hover::before {
  width: 100%;
}

.big-text{
  font-size: 32px;
  line-height: 1.5;
}

.small-text{
  font-size: 14px;
  line-height: 1.5;
}

blockquote {
  font-size: 22px;
  line-height: 1.4;
  border: 0px;
  padding: 0px;
  margin-bottom: 0px;
}

.label{
  font-size: 14px;
  line-height: 1.5;
  letter-spacing: 2px;
  text-transform: uppercase;
  font-weight: 600!important;
}

ul:not(nav ul){
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 10px;
  list-style: none;
}

ol{
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 10px;
  counter-reset: list;
}

ul li, 
ol li{
  position: relative;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 16px;
  line-height: 1.5;
}

ol li{
  counter-increment: list;
}

ol li::marker{
  display: none;
}

ol li::before{
  content: counter(list) "";
  color: var(--teal);
  font-size: 16px;
  font-style: normal;
  font-weight: 600;
  line-height: 1.3;
}

ul li:not(nav ul li)::before{
  content: '';
  display: block;
  min-width: 20px;
  min-height: 14px;
  background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="23" height="17" viewBox="0 0 23 17" fill="none"><path d="M2 10L7.5 15.5L21 2" stroke="%23008D7F" stroke-width="3" stroke-linejoin="round"/></svg>');
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
}

@media screen and (max-width: 768px) {

  .big-text{
    font-size: 20px;
    line-height: 1.4;
  }

  blockquote {
    font-size: 20px;
    line-height: 1.3;
  }

}

/* Utilities */

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

a,
a.button {
  transition: all 0.3s;
}

a.cover {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
}

.d-grid {
  display: grid;
}

.d-flex {
  display: flex;
}

.d-block {
  display: block;
}

.d-none {
  display: none;
}

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

.justify-content-start {
  justify-content: flex-start;
}

.justify-content-center {
  justify-content: center;
}

.justify-content-between {
  justify-content: space-between;
}

.justify-content-around {
  justify-content: space-around;
}

.justify-content-end {
  justify-content: flex-end;
}

.align-items-start {
  align-items: flex-start;
}

.align-items-end {
  align-items: flex-end;
}

.align-items-center {
  align-items: center;
}

.align-items-baseline {
  align-items: baseline;
}

.align-items-stretch {
  align-items: stretch;
}

.flex-row {
  flex-direction: row;
}

.flex-row-reverse {
  flex-direction: row-reverse;
}

.flex-col {
  flex-direction: column;
}

.flex-col-reverse {
  flex-direction: column-reverse;
}

.text-center {
  text-align: center;
}

.w-100 {
  width: 100%;
}

.position-fixed {
  position: fixed !important;
}

@media screen and (max-width: 767px) {
  .flex-phone {
    display: flex;
  }

  .flex-row-phone {
    flex-direction: row;
  }

  .flex-row-reverse-phone {
    flex-direction: row-reverse;
  }

  .flex-col-phone {
    flex-direction: column;
  }

  .flex-col-reverse-phone {
    flex-direction: column-reverse;
  }
}

@media screen and (min-width: 768px) and (max-width: 1024px) {
  .flex-row-tablet {
    flex-direction: row;
  }

  .flex-row-reverse-tablet {
    flex-direction: row-reverse;
  }

  .flex-col-tablet {
    flex-direction: column;
  }

  .flex-col-reverse-tablet {
    flex-direction: column-reverse;
  }
}

/* = box shadows -------------------- */
.shadow {
  box-shadow: 0 1px 3px 0 rgba(0, 0, 0, 0.1), 0 1px 2px 0 rgba(0, 0, 0, 0.06);
}

.shadow-md {
  box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1),
    0 2px 4px -1px rgba(0, 0, 0, 0.06);
}

.shadow-lg {
  box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1),
    0 4px 6px -2px rgba(0, 0, 0, 0.05);
}

.shadow-xl {
  box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.1),
    0 10px 10px -5px rgba(0, 0, 0, 0.04);
}

.shadow-2xl {
  box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.25);
}

/* For content that needs to be visually hidden but stay visible for screenreaders */

/* stylelint-disable declaration-no-important */
.show-for-sr {
  position: absolute !important;
  overflow: hidden !important;
  height: 1px !important;
  width: 1px !important;
  padding: 0 !important;
  border: 0 !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
}

@media (max-width: 767px) {
  .show-for-sr--mobile {
    position: absolute !important;
    overflow: hidden !important;
    height: 1px !important;
    width: 1px !important;
    padding: 0 !important;
    border: 0 !important;
    clip: rect(0, 0, 0, 0) !important;
    white-space: nowrap !important;
  }
}

/* stylelint-enable declaration-no-important */