/* 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: 1400px64px;
    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 */

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 1.4rem;
  font-size: 1rem;
}

/* Anchors */

a {
  cursor: pointer;
}

/* Headings */

h1,
h2,
h3,
h4,
h5,
h6 {
  margin: 0 0 1.4rem;
}

/* Lists */

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

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

ul ul,
ol ul,
ul ol,
ol ol {
  margin: 1.4rem 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 1.4rem;
}

/* 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;
}
/* Blanket Settings */

.primary-cta, 
.secondary-cta{
    display: inline-flex;
    flex-direction: row;
    align-items: center;
    gap: 16px;
    text-decoration: none;
    position: relative;
    line-height: 1;
    isolation: isolate;
}

.primary-cta svg, 
.secondary-cta svg{
    width: 12px;
    height: 12px;
}

.primary-cta.primary-cta--override-svg svg, 
.secondary-cta.primary-cta--override-svg svg{
    width: 20px;
    height: 20px;
}

/* Primary */

.primary-cta svg path{
    transition: var(--transition);
}

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

.primary-cta{
    padding: 16px 24px;
    border-radius: 40px;
    transition: var(--transition);
}

.primary-cta:hover{
    background-color: var(--dark-teal);
    color: var(--white);
}

/* Primary -> Colours  */ 

.primary-cta.yellow-cta{
    background-color: var(--yellow);
    color: var(--black);
}

.primary-cta.yellow-cta:hover{
    background-color: var(--dark-teal);
    color: var(--white);
}

.primary-cta.yellow-cta svg path{
    stroke: var(--black);
}

.primary-cta.yellow-cta:hover svg path{
    stroke: var(--white);
}

.primary-cta.dark-teal-cta{
    background-color: var(--dark-teal);
    color: var(--white);
}

.primary-cta.dark-teal-cta:hover{
    background-color: var(--yellow);
    color: var(--dark-teal);
}

.primary-cta.dark-teal-cta svg path{
    stroke: var(--yellow);
}

.primary-cta.dark-teal-cta:hover svg path{
    stroke: var(--black);
}

.primary-cta.dark-teal-cta.primary-cta--override-svg svg path{
    fill: var(--yellow);
}

.primary-cta.dark-teal-cta.primary-cta--override-svg:hover svg path{
    fill: var(--dark-teal);
}

/* Secondary */

.secondary-cta{
    padding-bottom: 12px;
}

.secondary-cta::after{
    content: "";
    position: absolute;
    bottom: 0px;
    left: 0px;
    width: 100%;
    height: 1px;
    background-color: var(--yellow);
    z-index: 1;
}

.secondary-cta::before{
    content: "";
    position: absolute;
    bottom: 0px;
    left: 0px;
    width: 0%;
    height: 1px;
    background-color: var(--black);
    z-index: 2;
    transition: var(--transition);
}

.secondary-cta:hover::before{
    width: 100%;
}





/* Labels */



/* Help text */

form legend {

}

/* Form fields */

.simple-form{
  position: relative;
}

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

@media screen and (max-width: 767px){
  .hs-form-field{
    margin-bottom: 24px;
  }
}

.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);
  pointer-events: none;
}

.hs-form-field:has(.hs-error-msgs):not(.hs-fieldtype-checkbox) label:not(.hs-error-msg):not(.hs-form-radio-display){
  top: 35%;
}

label[id*="message-"]{
  top: 20px!important;
}
 
.hs-form-field:not(.hs-fieldtype-checkbox).hs-form-field--active label[id*="message-"]{
  top: calc(0% - 10px)!important;
  font-size: 10px;
  left: 0px;
}

.hs-fieldtype-radio label:first-of-type:not(.hs-form-radio-display), 
.hs-fieldtype-checkbox label:first-of-type:not(.hs-form-checkbox-display){
  top: 0px!important;
  position: relative!important;
  left: 0px!important;
  margin-bottom: 10px!important;
  display: block;
}

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

.hs-form-booleancheckbox-display{
    position: relative !important;
    top: 0!important;
    transform: unset !important;
    font-size: 14px !important;
    pointer-events: all!important;
}

.hs-form-booleancheckbox-display a{
  color: var(--dark-teal)!important;
}

.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;
}

.inputs-list.multi-container li label{
  display: flex;
  flex-direction: row;
  align-items: center;
}

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!important;
  background-color: transparent;
  min-height: 40px;
}
form textarea{
  border: 1px solid;
  min-height: 120px;
}

.form--dark form input{
  border-color: #C9D6CE!important;
  color: var(--dark-teal);
}

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--light .hs-richtext{
  color: white;
}


.legal-consent-container .hs-form-booleancheckbox-display input{
 
}

/* Form -fields -> intl phone */

.hs-fieldtype-intl-phone{
  display: flex;
  flex-direction: row;
  gap: 10px;
}

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

/* 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="%23FFB84D"/><rect x="4" y="4" width="12" height="12" rx="2" fill="%23FFB84D"/></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:not(.legal-consent-container .hs-form-booleancheckbox-display>span){
  padding-left: 32px;
}

.legal-consent-container .hs-form-booleancheckbox-display>span {
    margin-left: 30px!important;
}



/* 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: 36px; /* 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{
    display: inline-flex;
    flex-direction: row;
    align-items: center;
    gap: 16px;
    text-decoration: none;
    position: relative;
    line-height: 1;
    isolation: isolate;
    background-color: var(--yellow);
    color: var(--black);
    padding: 16px 24px;
    border-radius: 40px;
    transition: var(--transition);
    border: none;
    cursor: pointer;
    margin-top: 40px;
}

input[type="submit"].hs-button:hover{
  background-color: var(--dark-teal);
  color: var(--white);
}
/* 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;
}

/* Modules */
/* Global */

.lp-header{
    padding: 20px 0px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    background-color: var(--white);
}

.lp-header .content-wrapper{
    width: 100%;
    padding: 0px;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    gap: 40px;
}

.lp-header__column.lp-header__column--logo{
    position: relative;
}

.lp-header__column.lp-header__column--logo img{
    position: relative;
    width: 100%;
    height: 100%;
    max-height: 80px;
    object-fit: contain;
}

.lp-header__column.lp-header__column--cta{
    display: flex;
    justify-content: flex-end;
    
}

@media screen and (max-width: 1440px){
    .lp-header .content-wrapper{
        padding: 0px 20px;
    }
}


/* Sections */

/* Components */
.switchback {
  display: flex;
  flex-direction: row;
  gap: 100px;
}

.switchback-column--content {
  width: 40%;
}

.switchback-column--media {
  width: 60%;
}

.switchback-column--media img {
  width: 100%;
  height: 100%;
  max-height: 500px;
  object-fit: cover;
  object-position: center;
}

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

@media (max-width: 767px) {
  .switchback {
    flex-direction: column !important;
    gap: 50px;
  }

  .switchback-column--content,
  .switchback-column--media {
    width: 100%;
  }

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

  .switchback.switchback--media-top .switchback-column--media {
    order: -1;
  }
}

/* Macros */

.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(--yellow);
    transition: var(--transition);
}

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

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

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

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

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

}

/* Settings */

:root {
  --white: #fff;
  --black: #000;
  --yellow: #FFB84D;
  --dark-teal: #203E4A;

  --transition: 0.35s ease-in-out;
}

html {
  scroll-behavior: smooth;
}

body{
  background-color: #FBF9F1;
}

/* Global Styling - Can be moved to somewhere more granular later, but for now whilst the footprint of the theme is small, it can live here - PC */

.cta-wrapper{
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 20px;
}

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

/* Utilities */

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