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

/* Variables */




:root {
  
  
  
  /* Base colors */
  --base-color--1: #600087;
  --base-color--2: #B727F5;
  --base-color--3: #D9D9D5;
  --base-color--4: #BBBBB7;
  
  /* Primary Colours */
  --purple : #600087;
  --orange : #B727F5;
  --accent-1 : #D9D9D5;
  --accent-2 : #BBBBB7;
  --grey: #D9D9D5;
  --white: #EEEEEE;

  
  
  --transition: 0.3s ease-in-out;
  --radius: 20px;
  
  
  
  /* Custom design */
  
  --form-custom-input-background-color: #FFFFFF;
  --form-custom-input-border-color: #DCDCDC; 
  --form-custom-input-border-focus-color: #321432;   
  --form-custom-input-border-size: 0.125rem;
  --form-custom-input-border-radius: 0.3125rem; 
  --form-custom-input-padding-top: 1.25rem;
  --form-custom-input-padding-bottom: 1.25rem;
  --form-custom-input-padding-right: 1.25rem;
  --form-custom-input-padding-left: 1.25rem;

  /* Label text */

  --form-label-color: #321432;
  --form-label-font-family: {font=Bauziet, font_set=CUSTOM, styles={font-weight=500, text-decoration=none}, size=null, size_unit=null, color=null, variant=Semibold, fallback=Helvetica, sans-serif, line_height=null, letter_spacing=null, casing=null, style=font-weight: 500; text-decoration: none, css=font-weight: 500; font-family: Bauziet, Helvetica, sans-serif;};
  --form-label-font-size-desktop: 1.0rem;
  --form-label-font-size-mobile: 0.9375rem;
  --form-label-font-weight: Semibold;
  --form-label-transform: none;
  --form-label-spacing-bottom: 0.625rem;

  /* Input text */

  --form-input-color: #321432;
  --form-input-font-family: {font=Bauziet, font_set=CUSTOM, styles={font-weight=500, text-decoration=none}, size=null, size_unit=null, color=null, variant=Medium, fallback=Helvetica, sans-serif, line_height=null, letter_spacing=null, casing=null, style=font-weight: 500; text-decoration: none, css=font-weight: 500; font-family: Bauziet, Helvetica, sans-serif;};
  --form-input-font-size-desktop: 1.0rem;
  --form-input-font-size-mobile: 0.9375rem;
  --form-input-font-weight: Medium;
  --form-input-transform: none;

  /* Placeholder text */

  --form-placeholder-color: #847284;

  /* Error text */

  --form-error-color: #e85217;

  /* Input fields */

  --form-input-background-color: #FFFFFF;
  --form-input-border-color: #FFFFFF; 
  --form-input-border-focus-color: #00FFFF;   
  --form-input-border-size: 0.0rem;
  --form-input-border-radius: 0.0rem; 
  --form-input-padding-top: 0.0rem;
  --form-input-padding-bottom: 0.0rem;
  --form-input-padding-right: 1.25rem;
  --form-input-padding-left: 0.0rem;

  /* Misc text */

  --form-misc-size-desktop: 0.875rem;
  --form-misc-size-mobile: 0.875rem;

  /* Form fields */

  --form-field-spacing-top: 10px;
  --form-field-spacing-bottom: 40px;
  --form-field-gap: 32px;
  --placeholder-opacity: 1;
  --text-area-min-height: 120px;

  /* Multilists checkboxes and radio buttons */

  --multi-list-gap: 15px;
  --multi-list-spacing-top: 15px;

  /* Checkboxes and Radio buttons general spacing to label */

  --label-check-spacing: 16px;

  /* Date */
  --form-date-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none'%3E%3Cpath d='M6.8076 0C7.03038 0 7.24404 0.0884998 7.40157 0.24603C7.5591 0.403561 7.6476 0.617218 7.6476 0.84V2.4108H16.668V0.8508C16.668 0.628018 16.7565 0.414361 16.914 0.25683C17.0716 0.0992998 17.2852 0.0108 17.508 0.0108C17.7308 0.0108 17.9444 0.0992998 18.102 0.25683C18.2595 0.414361 18.348 0.628018 18.348 0.8508V2.4108H21.6C22.2363 2.4108 22.8466 2.66349 23.2966 3.11332C23.7467 3.56315 23.9997 4.17329 24 4.8096V21.6012C23.9997 22.2375 23.7467 22.8477 23.2966 23.2975C22.8466 23.7473 22.2363 24 21.6 24H2.4C1.76369 24 1.15342 23.7473 0.703368 23.2975C0.253315 22.8477 0.000318156 22.2375 0 21.6012L0 4.8096C0.000318156 4.17329 0.253315 3.56315 0.703368 3.11332C1.15342 2.66349 1.76369 2.4108 2.4 2.4108H5.9676V0.8388C5.96792 0.616226 6.05656 0.402877 6.21405 0.245606C6.37155 0.0883348 6.58503 -2.27116e-07 6.8076 0ZM1.68 9.2904V21.6012C1.68 21.6958 1.69862 21.7894 1.73481 21.8767C1.77099 21.9641 1.82403 22.0435 1.89088 22.1103C1.95774 22.1772 2.03711 22.2302 2.12447 22.2664C2.21182 22.3026 2.30545 22.3212 2.4 22.3212H21.6C21.6946 22.3212 21.7882 22.3026 21.8755 22.2664C21.9629 22.2302 22.0423 22.1772 22.1091 22.1103C22.176 22.0435 22.229 21.9641 22.2652 21.8767C22.3014 21.7894 22.32 21.6958 22.32 21.6012V9.3072L1.68 9.2904ZM8.0004 17.5428V19.542H6V17.5428H8.0004ZM12.9996 17.5428V19.542H11.0004V17.5428H12.9996ZM18 17.5428V19.542H15.9996V17.5428H18ZM8.0004 12.7704V14.7696H6V12.7704H8.0004ZM12.9996 12.7704V14.7696H11.0004V12.7704H12.9996ZM18 12.7704V14.7696H15.9996V12.7704H18ZM5.9676 4.0896H2.4C2.30545 4.0896 2.21182 4.10822 2.12447 4.14441C2.03711 4.18059 1.95774 4.23362 1.89088 4.30048C1.82403 4.36734 1.77099 4.44671 1.73481 4.53407C1.69862 4.62142 1.68 4.71505 1.68 4.8096V7.6116L22.32 7.6284V4.8096C22.32 4.71505 22.3014 4.62142 22.2652 4.53407C22.229 4.44671 22.176 4.36734 22.1091 4.30048C22.0423 4.23362 21.9629 4.18059 21.8755 4.14441C21.7882 4.10822 21.6946 4.0896 21.6 4.0896H18.348V5.2044C18.348 5.42718 18.2595 5.64084 18.102 5.79837C17.9444 5.9559 17.7308 6.0444 17.508 6.0444C17.2852 6.0444 17.0716 5.9559 16.914 5.79837C16.7565 5.64084 16.668 5.42718 16.668 5.2044V4.0896H7.6476V5.1936C7.6476 5.41638 7.5591 5.63004 7.40157 5.78757C7.24404 5.9451 7.03038 6.0336 6.8076 6.0336C6.58482 6.0336 6.37116 5.9451 6.21363 5.78757C6.0561 5.63004 5.9676 5.41638 5.9676 5.1936V4.0896Z' fill='black'/%3E%3C/svg%3E");

  /* Dropdown */
  --form-dropdown-icon: url("data:image/svg+xml,%3Csvg width='21' height='12' viewBox='0 0 21 12' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M10.243 8.74301L1.5 0L0 1.5L10.243 11.743L20.485 1.5L18.985 0L10.243 8.74301Z' fill='%23FF4A1F'/%3E%3C/svg%3E%0A");

  /* Checkbox buttons */

  --form-checkbox-bg-color: transparent;
  --form-checkbox-width: 24px;
  --form-checkbox-height: 24px;

  /* for the icon visit https://yoksel.github.io/url-encoder/ and paste your svg in and copy the ready for css part */
  --form-checkbox-icon: url("data:image/svg+xml,%3Csvg width='22' height='22' viewBox='0 0 22 22' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Crect x='1' y='1' width='20' height='20' rx='1' fill='white' stroke='%23DCDCDC' stroke-width='2'/%3E%3C/svg%3E%0A");
  --form-checkbox-checked-icon: url("data:image/svg+xml,%3Csvg width='22' height='22' viewBox='0 0 22 22' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Crect x='1' y='1' width='20' height='20' rx='1' fill='white' stroke='%23DCDCDC' stroke-width='2'/%3E%3Crect x='6' y='6' width='10' height='10' rx='1' fill='%23FF4A1F'/%3E%3C/svg%3E%0A");
  
  /* Radio buttons */
  --form-radio-bg-color: transparent;
  --form-radio-width: 24px;
  --form-radio-height: 24px;
  
  /* for the icon visit https://yoksel.github.io/url-encoder/ and paste your svg in and copy the ready for css part */
  --form-radio-icon: url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Ccircle cx='12' cy='12' r='11' fill='white' stroke='%23DCDCDC' stroke-width='2'/%3E%3C/svg%3E%0A");
  --form-radio-checked-icon: url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Ccircle cx='12' cy='12' r='11' fill='white' stroke='%23DCDCDC' stroke-width='2'/%3E%3Ccircle cx='12' cy='12' r='6' fill='%23FF4A1F'/%3E%3C/svg%3E%0A");
}

/* Elements */
/* Insight Cards */
html {
  position: relative;
  font-size: 16px;
}

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

li > p {
  margin: 0 0 0px;
}

/* Anchors */

a {
  cursor: pointer;
}

/* Headings */

h1, .h1,
h2, .h2,
h3, .h3,
h4, .h4,
h5, .h5
h6, .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,
.custom-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,
.custom-cta:hover {
  font-weight: 600!important;
}

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

/* Colourways */

/* Colourways -> Purple */

.primary-cta.purple-cta {
  background-color: #600087;
  border-color: #600087;
  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: #600087;
  color: #600087;
}

.secondary-cta:hover.purple-cta{
  background-color: #600087;
  border-color: #600087;
  color: #ffffff;
}

/* Colourways -> White */

.primary-cta.white-cta {
  background-color: #ffffff;
  border-color: #ffffff;
  color: #600087;
}

.primary-cta:hover.white-cta {
  background-color: transparent;
  border-color: #ffffff;
  color: #ffffff;
}

.secondary-cta.white-cta {
  background-color: transparent;
  border: 2px solid #ffffff;
  border-color: #ffffff;
  color: #ffffff;
}

.secondary-cta:hover.white-cta {
  background-color: #ffffff;
  border-color: #ffffff;
  color: #600087;
}

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

/* Colourways -> Accent 1 */

.primary-cta.accent-one-cta {
  background-color: var(--accent-1);
  border-color: var(--accent-1);
  color: var(--purple);
}

.primary-cta:hover.accent-one-cta{
  background-color: transparent;
  color: var(--accent-1);
}

.secondary-cta.accent-one-cta{
  background-color: transparent;
  border-color: var(--accent-1);
  color: var(--accent-1);
}

.secondary-cta:hover.accent-one-cta{
  background-color: var(--accent-1);
  color: white;
}

/* Colourways -> Accent 2 */

.primary-cta.accent-two-cta {
  background-color: var(--accent-2);
  border-color: var(--accent-2);
  color: white;
}

.primary-cta:hover.accent-two-cta{
  background-color: transparent;
  color: var(--accent-2);
}

.secondary-cta.accent-two-cta{
  background-color: transparent;
  border-color: var(--accent-2);
  color: var(--accent-2);
}

.secondary-cta:hover.accent-two-cta{
  background-color: var(--accent-2);
  color: white;
}


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

  .primary-cta, 
  .secondary-cta,
  .custom-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;
  }
}
.custom-form [data-hsfc-id=Renderer] .hsfc-CheckboxField>*:not(:last-child) + .hsfc-ErrorAlert,
.custom-form [data-hsfc-id=Renderer] .hsfc-CheckboxField label,
.custom-form [data-hsfc-id=Renderer] .hsfc-RichText,
form .hs-richtext,
form .hs-richtext p {
    margin-bottom: 0.5rem;
    font-size: var(--form-misc-size-mobile) !important;
}

form label.hs-form-booleancheckbox-display {
    font-size: var(--form-misc-size-mobile) ;
    margin-top: 2px;
}

@media only screen and (min-width: 768px) {
    .custom-form .hsfc-CheckboxField [data-hsfc-id=Renderer] .hsfc-ErrorAlert,
    .custom-form [data-hsfc-id=Renderer] .hsfc-CheckboxField label,
    .custom-form [data-hsfc-id=Renderer] .hsfc-RichText,
    form label.hs-form-booleancheckbox-display,
    form .hs-richtext,
    form .hs-richtext p {
        font-size: var(--form-misc-size-desktop) !important;
    }
}

form .hs-richtext img {
    max-width: 100% !important;
}

.legal-consent-container {
    margin-bottom: 2rem;
    color: #988998;
}

form .legal-consent-container .hs-form-booleancheckbox-display>span {
  color: #988998;
}

.custom-form [data-hsfc-id=Renderer] .hsfc-CheckboxField label,
.custom-form [data-hsfc-id=Renderer] .hsfc-RichText {
  color: #988998 !important;
}

.custom-form [data-hsfc-id=Renderer] .hsfc-FieldLabel__RequiredIndicator {
  color: var(--orange) !important;
}

.legal-consent-container a {
  text-decoration: underline !important;
  color: var(--purple) !important;
}

form .legal-consent-container .hs-form-booleancheckbox-display>span {
    margin-left: 0;
    margin-top: 3px;
}

.custom-form [data-hsfc-id=Renderer] .hsfc-Step .hsfc-Step__Content {
  padding: 0 !important;
}

/* Fields */

form .hs-form-field {
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    float: none !important;
    width: 100% !important;
    margin-bottom: 1.4rem;
}

form .hs-form-field .input {
    margin-right: 0 !important;
}

form .hs-form-field ul {
    list-style-type: none;
    margin: 0;
    padding: 0;
}

form fieldset {
    border: none;
    max-width: 100% !important;
}

form fieldset:not(:last-of-type) {
    margin-bottom: 1.4rem;
}

form fieldset .hs-form-field {
    margin-bottom: 0;
}

form fieldset.form-columns-2,
form fieldset.form-columns-3 {
    display: grid;
    align-items: flex-start;
    grid-gap: 1.4rem 1.4rem;
    grid-template-columns: minmax(0, 1fr);
}

@media (min-width: 768px) {
    form fieldset.form-columns-2 {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    form fieldset.form-columns-3 {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

/* Custom styles */

.custom-form [data-hsfc-id=Renderer] .hsfc-Row > div:not(.hsfc-DataPrivacyField, .hsfc-CheckboxField, .hsfc-RichText),
form .hs-form-field:not(.hs-fieldtype-booleancheckbox) {
    display: inline-block;
    width: 100%;
    border: var(--form-custom-input-border-size) solid var(--form-custom-input-border-color);
    border-radius: var(--form-custom-input-border-radius);
    background-color: var(--form-custom-input-background-color);
    padding: var(--form-custom-input-padding-top) var(--form-custom-input-padding-right) var(--form-custom-input-padding-bottom) var(--form-custom-input-padding-left);
}
/* Labels */

.custom-form [data-hsfc-id=Renderer] .hsfc-FieldLabel,
form label {
    display: block;
    margin-bottom: var(--form-label-spacing-bottom);
    color: var(--form-label-color);
    font-family: var(--form-label-font-family);
    font-size: var(--form-label-font-size-mobile);
    line-height: 1;
    font-weight: var(--form-label-font-weight);
    text-transform: var(--form-label-transform);
}

@media only screen and (min-width: 768px) {
    .custom-form [data-hsfc-id=Renderer] .hsfc-FieldLabel,
    form label {
        font-size: var(--form-label-font-size-desktop);
    }
}

form .inputs-list.multi-container label span,
form .hs-form-booleancheckbox label span {
    color: initial;
    margin-top: 3px;
}

.custom-form .hsfc-Row .hsfc-DropdownOptions__Search input[type=text] {
  padding: 5px 10px;
}

/* Form Title */
.form-title {
    margin-bottom: 0;
}

/* Help text */
form legend {
    font-size: 0.875rem;
}

/* Inputs */

.custom-form .hsfc-Row input[type=text],
.custom-form .hsfc-Row input[type=search],
.custom-form .hsfc-Row input[type=email],
.custom-form .hsfc-Row input[type=password],
.custom-form .hsfc-Row input[type=tel],
.custom-form .hsfc-Row input[type=number],
.custom-form .hsfc-Row input[type=file],
.custom-form .hsfc-Row select,
.custom-form .hsfc-Row textarea,
form input[type=text],
form input[type=search],
form input[type=email],
form input[type=password],
form input[type=tel],
form input[type=number],
form input[type=file],
form select,
form textarea {
    display: inline-block;
    width: 100%;
    border: var(--form-input-border-size) solid var(--form-input-border-color);
    border-radius: var(--form-input-border-radius);
    background-color: var(--form-input-background-color);
    padding: var(--form-input-padding-top) var(--form-input-padding-right) var(--form-input-padding-bottom) var(--form-input-padding-left);
    color: var(--form-input-color);

    font-family: var(--form-input-font-family);
    font-size: var(--form-input-font-size-mobile);
    line-height: 1.3;
    font-weight: var(--form-input-font-weight);
    text-transform: var(--form-input-transform);
}

@media only screen and (min-width: 768px) {
    .custom-form .hsfc-Row input[type=text],
    .custom-form .hsfc-Row input[type=search],
    .custom-form .hsfc-Row input[type=email],
    .custom-form .hsfc-Row input[type=password],
    .custom-form .hsfc-Row input[type=tel],
    .custom-form .hsfc-Row input[type=number],
    .custom-form .hsfc-Row input[type=file],
    .custom-form .hsfc-Row select,
    .custom-form .hsfc-Row textarea,
    form input[type=text],
    form input[type=search],
    form input[type=email],
    form input[type=password],
    form input[type=tel],
    form input[type=number],
    form input[type=file],
    form select,
    form textarea {
        font-size: var(--form-input-font-size-desktop);
    }
}

form textarea {
    resize: vertical;
    line-height: 1.2;
    border-radius: 10px;
}

.custom-form .hsfc-Row input::placeholder,
form input::placeholder,
form select::placeholder,
form textarea::placeholder {
    opacity: 1;
    color: var(--form-placeholder-color);
}

.custom-form .hsfc-Row input:focus,
.custom-form .hsfc-Row select:focus,
.custom-form .hsfc-Row textarea:focus,
.custom-form .hsfc-Row input:focus-visible,
.custom-form .hsfc-Row select:focus-visible,
.custom-form .hsfc-Row textarea:focus-visible,
.custom-form .hsfc-Row input:focus-within,
.custom-form .hsfc-Row select:focus-within,
.custom-form .hsfc-Row textarea:focus-within,
.custom-form .hsfc-Row input:target,
.custom-form .hsfc-Row select:target,
.custom-form .hsfc-Row textarea:target,
.custom-form .hsfc-Row input:active,
.custom-form .hsfc-Row select:active,
.custom-form .hsfc-Row textarea:active,
.custom-form .hsfc-Row input:hover,
.custom-form .hsfc-Row select:hover,
.custom-form .hsfc-Row textarea:hover,
form input:focus,
form input:focus-visible,
form input:focus-within,
form input:active,
form input:target,
form select:focus,
form select:focus-visible,
form select:focus-within,
form select:active,
form select:target,
form textarea:focus,
form textarea:focus-visible,
form textarea:focus-within,
form textarea:active,
form textarea:target {
    border-color: var(--form-input-border-focus-color);
    outline: none;
    box-shadow: none;
}

form legend.hs-field-desc {
    position: absolute;
    right: 0;
    width: auto !important;
}

/* Inputs - date picker */

.hs-dateinput {
    position: relative;
}

.hs-dateinput:before {
    content: '';
    position: absolute;
    right: var(--form-input-padding-right);
    top: 50%;
    transform: translateY(-50%);
    width: 24px;
    height: 24px;
    background-repeat: no-repeat;
    background-size: contain;
    background-image: var(--form-date-icon);
}

.fn-date-picker .pika-table thead th {
    color: #FFF;
}

.fn-date-picker td.is-selected .pika-button {
    border-radius: 0;
    box-shadow: none;
}

.fn-date-picker td .pika-button:hover,
.fn-date-picker td .pika-button:focus {
    border-radius: 0 !important;
    color: #FFF;
}

/* Inputs - file picker */

form input[type=file] {
    border-radius: 0;
    background-color: transparent;
    border: initial;
    padding: initial;
}

.hs-fieldtype-select .input {
    position: relative;
}

.custom-form [data-hsfc-id=Renderer] .hsfc-DropdownInput,
.hs-fieldtype-select .input select {
    position: relative;
}

.custom-form [data-hsfc-id=Renderer] .hsfc-DropdownInput::after,
.hs-fieldtype-select .input::after {
    content: "";
    display: block;
    position: absolute;
    width: 20px;
    height: 11px;
    right: var(--form-input-padding-right);
    top: 50%;
    transform: translateY(-50%);
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
    background-image: var(--form-dropdown-icon);
}

.hs-fieldtype-select .input::after {
  top: 46%;
}

select.hs-input {
    appearance: none;
}

.custom-form [data-hsfc-id=Renderer] .hsfc-DropdownInput .hsfc-DropdownInput__Caret {
  display: none;
}

/* Dropdown */

.custom-form [data-hsfc-id=Renderer] .hsfc-DropdownOptions__List__ListItem::before {
  content: none !important;
  display: none !important;
}

/* GDPR */

/* Validation */

.hs-form-required {
    color: var(--form-error-color);
}

.hs-input.invalid.error {
    border-color: var(--form-error-color);
}

ul.no-list.hs-error-msgs.inputs-list li::before {
  display: none;
  margin-bottom: 0;
  margin-top: 0.5rem;
}

.hs-error-msg {
  margin-top: 0.5rem;
  color: var(--form-error-color);
  margin-bottom: 0;
  font-style: italic;
}

form input.hs-input.invalid.error {
    border-color: var(--orange);
}

/* Submit button */

form input[type=submit],
form .hs-button {
    cursor: pointer;
    display: inline-block;
    text-align: center;
    transition: all 0.15s linear;
    white-space: normal;
}

/* Captcha */

.grecaptcha-badge {
    margin: 0 auto;
}

/* Position label text against custom radio and checkboxes */

ul.inputs-list.multi-container {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: var(--multi-list-gap);
    margin-top: var(--multi-list-spacing-top);
}

ul.inputs-list li::before {
  display: none;
  content: none;
}

label.hs-form-booleancheckbox-display,
label.hs-form-checkbox-display,
label.hs-form-radio-display {
    cursor: pointer;
    display: flex;
    align-items: center;
    gap: var(--label-check-spacing);
    margin-bottom: 0;
}

.custom-form [data-hsfc-id=Renderer] .hsfc-DataPrivacyField>*:not(:last-child) {
  margin-bottom: 0 !important;
}

.custom-form [data-hsfc-id=Renderer] .hsfc-RadioFieldGroup__Options label>input + span,
.custom-form [data-hsfc-id=Renderer] .hsfc-CheckboxInput + span {
  margin-left: 25px;
}

.custom-form [data-hsfc-id=Renderer] .hsfc-CheckboxField label > input + span {
  margin-left: 10px;
}

/* Custom checkbox */

.custom-form [data-hsfc-id=Renderer] .hsfc-CheckboxInput {
  border: none !important;
  background-color: transparent !important;
}

.custom-form [data-hsfc-id=Renderer] .hsfc-CheckboxInput:active,
.custom-form [data-hsfc-id=Renderer] .hsfc-CheckboxInput:focus,
.custom-form [data-hsfc-id=Renderer] .hsfc-CheckboxInput:hover {
  box-shadow: none !important;
}

.custom-form [data-hsfc-id=Renderer] .hsfc-CheckboxInput:checked:after {
  content: none !important;
  display: none !important;
  box-shadow: none !important;
}

.custom-form [data-hsfc-id=Renderer] .hsfc-CheckboxInput,
input[type="checkbox"] {
    position: relative;
    cursor: pointer;
    appearance: none;
    width: var(--form-checkbox-width) !important;
    height: var(--form-checkbox-height) !important;
}

.custom-form [data-hsfc-id=Renderer] .hsfc-CheckboxInput::before,
input[type="checkbox"]::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    width: var(--form-checkbox-width);
    height: var(--form-checkbox-height);
    background-image: var(--form-checkbox-icon);
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    transition: var(--transition);
}

.custom-form [data-hsfc-id=Renderer] .hsfc-CheckboxInput::before {
  top: 5px !important;
}

.custom-form [data-hsfc-id=Renderer] .hsfc-CheckboxInput:checked::before,
input[type="checkbox"]:checked::before {
    background-image: var(--form-checkbox-checked-icon);
}

/* Custom Radio Button Styling */

.custom-form [data-hsfc-id=Renderer] .hsfc-RadioInput {
  border: none !important;
  background-color: transparent !important;
}

.custom-form [data-hsfc-id=Renderer] .hsfc-RadioInput:active,
.custom-form [data-hsfc-id=Renderer] .hsfc-RadioInput:focus,
.custom-form [data-hsfc-id=Renderer] .hsfc-RadioInput:hover {
  box-shadow: none !important;
}

.custom-form [data-hsfc-id=Renderer] .hsfc-RadioInput:checked:after {
  content: none !important;
  display: none !important;
  box-shadow: none !important;
}

.custom-form [data-hsfc-id=Renderer] .hsfc-RadioInput,
.hs-form-radio-display input[type="radio"] {
    position: relative;
    cursor: pointer;
    appearance: none;
    /* Hide default radio button */
    -webkit-appearance: none;
    -moz-appearance: none;
    width: var(--form-radio-width);
    height: var(--form-radio-height);
    margin: 0;
    padding: 0;
    background-color: var(--form-radio-bg-color);
}

.custom-form [data-hsfc-id=Renderer] .hsfc-RadioInput::before,
.hs-form-radio-display input[type="radio"]::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    width: var(--form-radio-width);
    height: var(--form-radio-height);
    background-image: var(--form-radio-icon);
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    transition: var(--transition);
    pointer-events: none;
}

.custom-form [data-hsfc-id=Renderer] .hsfc-RadioInput::before {
  top: 5px !important;
}

.custom-form [data-hsfc-id=Renderer] .hsfc-RadioInput:checked::before,
.hs-form-radio-display input[type="radio"]:checked::before {
    background-image: var(--form-radio-checked-icon);
}

/* Buttons */

.custom-form [data-hsfc-id=Renderer] .hsfc-NavigationRow__Buttons:has(>*:only-child) {
  justify-content: flex-start;
}

.custom-form [data-hsfc-id=Renderer] .hsfc-NavigationRow {
  margin-top: 20px;
}

.hs-form-html [data-hsfc-id=Renderer] .hsfc-Button,
.hs_submit.hs-submit input[type="submit"].hs-button {
  font-size: 20px;
  font-weight: 600;
  line-height: 0.9!important;
  padding: 25px 45px;
  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;
}

.custom-form [data-hsfc-id=Renderer] .hsfc-Button,
.hs_submit.hs-submit input[type="submit"].hs-button {
  background-color: var(--purple) !important;
  border-color: var(--purple) !important;
  color: white !important;
}

.custom-form [data-hsfc-id=Renderer] .hsfc-Button:hover,
.hs_submit.hs-submit input[type="submit"].hs-button:hover {
  background-color: var(--orange) !important;
  border-color: var(--orange) !important;
  color: var(--white) !important;
  font-weight: 600!important;
}
/* 

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 */


.client-logo-slider .swiper-slide {
    height: auto;
}

.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;
    height: 100%;
}

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

}
.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;
    }
}
.custom-language.header__language-switcher.header--element {
    width: 25px;
    height: 25px;
}

.custom-language .globe_class {
    background-image: url(https://www.byggefakta.dk/hubfs/Expertunity%20Theme%20Assets/Icons/Language%20icon.svg);
    width: 25px;
    height: 25px;
}

.custom-language .lang_list_class {
    background-color: #F5F5F5;
    border-radius: 30px;
    position: absolute;
    top: calc(100% + 30px);
    left: -150px;
    transform: translateX(0);
    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;
}

.custom-language .globe_class:hover .lang_list_class {
    opacity: 1;
    visibility: visible;
    list-style-type: none;
    overflow: clip;
    display: flex;
    flex-direction: column;
    gap: 25px;
}

.custom-language .lang_list_class::before {
    content: none;
}

.custom-language .lang_list_class::after {
    top: -30px;
    left: 50%;
    transform: translateX(-50%);
    border-bottom-color: transparent;
    width: 100%;
    height: 30px;
    padding-top: 15px;
    padding-bottom: 15px;
}

.custom-language .lang_list_class li {
    display: flex;
    align-items: center;
    border: none !important;
    background-color: transparent;
    padding: 0 !important;
    margin: 0 !important;
    height: 25px;
    min-width: 150px;
}

.custom-language .lang_list_class li::before {
    content: '';
    display: block;
    min-width: 25px;
    min-height: 25px;
    position: absolute;
    left: 0;
    transform: translateX(-200%);
    background-image: url("data:image/svg+xml, %3Csvg width='32' height='33' viewBox='0 0 32 33' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M16 32.8C24.8366 32.8 32 25.6366 32 16.8C32 7.96349 24.8366 0.800049 16 0.800049C7.16344 0.800049 0 7.96349 0 16.8C0 25.6366 7.16344 32.8 16 32.8Z' fill='white'/%3E%3Cpath d='M22.6999 17.3002L17.3999 22.6002C17.0999 22.9002 16.4999 22.9002 16.1999 22.6002C15.8999 22.3002 15.8999 21.7002 16.1999 21.4002L19.9999 17.6002H9.7999C9.2999 17.6002 8.8999 17.2002 8.8999 16.7002C8.8999 16.2002 9.2999 15.8002 9.7999 15.8002H19.9999L16.1999 12.0002C15.8999 11.7002 15.8999 11.1002 16.1999 10.8002C16.4999 10.5002 17.0999 10.5002 17.3999 10.8002L22.6999 16.1002C22.9999 16.4002 22.9999 17.0002 22.6999 17.3002Z' fill='%23321432'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
    opacity: 0;
    transition: var(--transition);
}

.custom-language .lang_list_class li:hover::before {
    transform: translateX(0%);
    opacity: 1;
}

.custom-language .lang_list_class li:hover a {
    padding-left: 35px;
}

.custom-language .lang_list_class li a {
    text-decoration: none;
    display: block;
    font-size: 18px;
    color: var(--black);
    text-decoration: none!important;
    position: relative;
    opacity: 1;
    font-weight: 600;
    transition: var(--transition);
}

@media only screen and (min-width: 1001px) {
    .custom-language .lang_list_class {
        left: 50%;
        transform: translateX(-50%);
    }
}
.blog-cards .wrapper {
    gap: 60px;
}

.blog-cards__header {
    display: flex;
    flex-direction: column;
    gap: 20px;
    margin-bottom: 40px;
}

@media only screen and (min-width: 768px) {
    .blog-cards__header {
        flex-direction: row;
        align-items: center;
        justify-content: space-between;
    }
}

.blog-cards__header .h2 {
    margin-bottom: 0;
}

.blog-cards__body.grid {
    gap: 32px;
}

/* Base Modern Blog Card Styling */
.modern-blog-card {
  display: flex;
  flex-direction: column;
  background-color: #FFFFFF;
  border-radius: 20px;
  overflow: hidden;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.05);
  border: 1px solid rgba(0, 0, 0, 0.05);
  transition: transform 0.3s cubic-bezier(0.16, 1, 0.3, 1), box-shadow 0.3s cubic-bezier(0.16, 1, 0.3, 1);
  height: 100%;
}

.modern-blog-card:hover {
  transform: translateY(-6px);
  box-shadow: 0 16px 36px rgba(0, 0, 0, 0.1);
}

.modern-blog-card__media {
  position: relative;
  width: 100%;
  aspect-ratio: 16 / 10;
  overflow: hidden;
  background-color: #F3F4F6;
}

.modern-blog-card__media-link {
  display: block;
  width: 100%;
  height: 100%;
}

.modern-blog-card__img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.45s cubic-bezier(0.16, 1, 0.3, 1);
  display: block;
}

.modern-blog-card:hover .modern-blog-card__img {
  transform: scale(1.06);
}

.modern-blog-card__placeholder {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  background: #f7f0fa;
}

.modern-blog-card__badge-wrap {
  position: absolute;
  top: 16px;
  left: 16px;
  z-index: 2;
}

.modern-blog-card__badge {
  display: inline-block;
  padding: 6px 14px;
  background: rgba(17, 24, 39, 0.75);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  color: #FFFFFF;
  font-size: 14px;
  font-weight: 600;
  border-radius: 30px;
  letter-spacing: 0.3px;
}

.modern-blog-card__body {
  display: flex;
  flex-direction: column;
  flex-grow: 1;
  padding: 24px 28px 28px;
  background-color: #FFFFFF;
}

.modern-blog-card__meta {
  font-size: 16px;
  font-weight: 500;
  color: #8B949E;
  margin-bottom: 12px;
}

.modern-blog-card__title {
  margin: 0 0 14px;
  font-size: 24px;
  line-height: 1.3;
  font-weight: 700;
}

.modern-blog-card__title a {
  color: #1A1E24 !important;
  text-decoration: none !important;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
  transition: color 0.2s ease;
}

.modern-blog-card__title a:hover {
  color: #B727F5 !important;
}

.modern-blog-card__description {
  margin-bottom: 24px;
  flex-grow: 1;
}

.modern-blog-card__description p {
  color: #64748B;
  font-size: 16px;
  line-height: 1.55;
  margin: 0;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
}

.modern-blog-card__footer {
  margin-top: auto;
  padding-top: 12px;
}

.modern-blog-card__cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  background-color: #B727F5 !important;
  color: #FFFFFF !important;
  font-size: 16px;
  font-weight: 600;
  padding: 10px 22px;
  border-radius: 9999px;
  text-decoration: none !important;
  transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1);
  box-shadow: 0 4px 12px rgba(183, 39, 245, 0.25);
  border: none;
  cursor: pointer;
}

.modern-blog-card__cta:hover {
  background-color: #600087 !important;
  color: #FFFFFF !important;
  transform: translateY(-2px);
  box-shadow: 0 6px 18px rgba(96, 0, 135, 0.35);
}

.modern-blog-card__cta-icon {
  transition: transform 0.2s ease;
}

.modern-blog-card__cta:hover .modern-blog-card__cta-icon {
  transform: translateX(3px);
}
.tags {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 15px;
    margin-bottom: 45px;
}

a:not(.primary-cta):not(.secondary-cta):not(.text-cta).tag,
.tag {
    cursor: pointer;
    display: inline-flex;
    text-align: center;
    transition: var(--transition);
    white-space: normal;
    text-decoration: none;

    border: 2px solid var(--purple);
    border-radius: 30px;
    background-color: transparent;
    padding: 8px 30px;
    padding-top: 11px;
    font-size: 18px;
}

@media only screen and (min-width: 768px) {
    a:not(.primary-cta):not(.secondary-cta):not(.text-cta).tag,
    .tag {
        font-size: 18px;
    }
}

a:not(.primary-cta):not(.secondary-cta):not(.text-cta).tag:hover,
a:not(.primary-cta):not(.secondary-cta):not(.text-cta).tag.active {
    text-decoration: none;
    border: 2px solid var(--purple);
    background-color: var(--purple);
    color: var(--white);
}
.custom-language.header__language-switcher.header--element {
    width: 25px;
    height: 25px;
}

.custom-language .globe_class {
    background-image: url(https://www.byggefakta.dk/hubfs/Expertunity%20Theme%20Assets/Icons/Language%20icon.svg);
    width: 25px;
    height: 25px;
}

.custom-language .lang_list_class {
    background-color: #F5F5F5;
    border-radius: 30px;
    position: absolute;
    top: calc(100% + 30px);
    left: -150px;
    transform: translateX(0);
    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;
}

.custom-language .globe_class:hover .lang_list_class {
    opacity: 1;
    visibility: visible;
    list-style-type: none;
    overflow: clip;
    display: flex;
    flex-direction: column;
    gap: 25px;
}

.custom-language .lang_list_class::before {
    content: none;
}

.custom-language .lang_list_class::after {
    top: -30px;
    left: 50%;
    transform: translateX(-50%);
    border-bottom-color: transparent;
    width: 100%;
    height: 30px;
    padding-top: 15px;
    padding-bottom: 15px;
}

.custom-language .lang_list_class li {
    display: flex;
    align-items: center;
    border: none !important;
    background-color: transparent;
    padding: 0 !important;
    margin: 0 !important;
    height: 25px;
    min-width: 150px;
}

.custom-language .lang_list_class li::before {
    content: '';
    display: block;
    min-width: 25px;
    min-height: 25px;
    position: absolute;
    left: 0;
    transform: translateX(-200%);
    background-image: url("data:image/svg+xml, %3Csvg width='32' height='33' viewBox='0 0 32 33' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M16 32.8C24.8366 32.8 32 25.6366 32 16.8C32 7.96349 24.8366 0.800049 16 0.800049C7.16344 0.800049 0 7.96349 0 16.8C0 25.6366 7.16344 32.8 16 32.8Z' fill='white'/%3E%3Cpath d='M22.6999 17.3002L17.3999 22.6002C17.0999 22.9002 16.4999 22.9002 16.1999 22.6002C15.8999 22.3002 15.8999 21.7002 16.1999 21.4002L19.9999 17.6002H9.7999C9.2999 17.6002 8.8999 17.2002 8.8999 16.7002C8.8999 16.2002 9.2999 15.8002 9.7999 15.8002H19.9999L16.1999 12.0002C15.8999 11.7002 15.8999 11.1002 16.1999 10.8002C16.4999 10.5002 17.0999 10.5002 17.3999 10.8002L22.6999 16.1002C22.9999 16.4002 22.9999 17.0002 22.6999 17.3002Z' fill='%23321432'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
    opacity: 0;
    transition: var(--transition);
}

.custom-language .lang_list_class li:hover::before {
    transform: translateX(0%);
    opacity: 1;
}

.custom-language .lang_list_class li:hover a {
    padding-left: 35px;
}

.custom-language .lang_list_class li a {
    text-decoration: none;
    display: block;
    font-size: 18px;
    color: var(--black);
    text-decoration: none!important;
    position: relative;
    opacity: 1;
    font-weight: 600;
    transition: var(--transition);
}

@media only screen and (min-width: 1001px) {
    .custom-language .lang_list_class {
        left: 50%;
        transform: translateX(-50%);
    }
}

/* Modules */
/* Rich text */

.widget-type-rich_text img {
  height: auto;
  max-width: 100%;
}
/* Global */

header.header-wrapper {
  position: fixed !important;
  top: 0px !important;
  left: 0;
  width: 100%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  z-index: 999;
  background-color: transparent !important;
  box-shadow: none !important;
  border: none !important;
  padding: 12px 20px 0 20px;
  box-sizing: border-box;
  pointer-events: none;
  transition: padding 0.3s cubic-bezier(0.16, 1, 0.3, 1);
}

header.header-wrapper.position-fixed.scrolled,
header.header-wrapper.scrolled {
  top: 0px !important;
  padding: 8px 20px 0 20px;
}

header.header-wrapper.position-fixed.scrolled .content-wrapper {
  padding: 14px 28px !important;
}

header.header-wrapper .content-wrapper {
  pointer-events: auto;
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  width: 100%;
  max-width: 1320px;
  margin: 0 auto;
  padding: 14px 28px !important;
  position: relative;
  gap: 24px;
  background-color: #FFFFFF !important;
  border-radius: 9999px !important;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08) !important;
  border: 1px solid rgba(0, 0, 0, 0.06);
  box-sizing: border-box;
  transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1);
}

header.header-wrapper.scrolled .content-wrapper {
  padding: 14px 28px !important;
  box-shadow: 0 8px 30px rgba(0, 0, 0, 0.12) !important;
}

header.header-wrapper .content-wrapper .header-column {
  display: flex;
}

header.header-wrapper .content-wrapper .header-column.logo {
  width: max-content;
  position: relative;
  min-width: 180px;
}

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: 160px;
  height: auto;
  object-fit: contain;
  opacity: 1;
}

header.header-wrapper .content-wrapper .header-column.logo .sticky-logo {
  width: 100%;
  max-width: 160px;
  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 {
  display: flex;
  align-items: center;
  gap: 24px;
  justify-content: flex-start;
}

header.header-wrapper .content-wrapper .header-column.navigation nav ul.nav-ul {
  list-style: none;
  display: flex;
  gap: 24px;
  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: 16px;
  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;
  justify-content: center;
  align-items: center;
  position: relative;
}

header.header-wrapper .content-wrapper .header-column.navigation nav ul.nav-ul li.nav-li a.nav-link.has-child::before {
  content: '';
  position: absolute;
  top: -10px;
  bottom: -35px;
  left: -15px;
  right: -15px;
  background: transparent;
  pointer-events: auto;
  z-index: 10;
}

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: 16px;
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 12px;
  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 svg {
  opacity: 1 !important;
  width: 24px;
  height: 24px;
  flex-shrink: 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 {
  color: var(--orange) !important;
  transform: translateX(4px);
}

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 {
  transform: translateX(2px);
}

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: flex-end;
  gap: 25px;
  width: 100%;
}

@media only screen and (min-width: 1001px) {
  .header-column.nav-cta-wrapper {
    justify-content: space-between;
    gap: 18px;
  }
}


/* 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: 14px;
  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: 14px;
  font-size: 16px;
}


/* 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 {
    gap: 16px;
  }

  header.header-wrapper .content-wrapper .header-column.navigation nav ul.nav-ul {
    gap: 16px;
  }

  header.header-wrapper .content-wrapper .header-column.navigation nav ul.nav-ul li.nav-li a.nav-link {
    font-size: 16px;
  }

  header.header-wrapper .content-wrapper .header-column.cta {
    gap: 10px;
  }

  header.header-wrapper .content-wrapper .header-column.cta .cta .primary-cta,
  header.header-wrapper .content-wrapper .header-column.cta .cta .secondary-cta {
    font-size: 14px;
    padding: 12px 16px;
  }
}

/*  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: 16px;
    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 {
    list-style: none !important;
    padding: 8px 0 12px 0 !important;
    margin: 0 !important;
  }

  .mobile-menu-content nav ul.nav-ul li.nav-li ul.nav-child-ul li.nav-child-li {
    padding: 8px 0 !important;
    margin: 0 !important;
    text-align: left !important;
    list-style: none !important;
  }

  .mobile-menu-content nav ul.nav-ul li.nav-li ul.nav-child-ul li.nav-child-li::before,
  .mobile-menu-content li::before,
  header.header-wrapper li::before {
    content: none !important;
    display: none !important;
  }

  .mobile-menu-content nav ul.nav-ul li.nav-li ul.nav-child-ul li.nav-child-li a.nav-link {
    font-size: 16px !important;
    font-weight: 500 !important;
    color: #1B1B1B !important;
    text-decoration: none !important;
    width: 100% !important;
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    gap: 12px !important;
    transition: var(--transition);
  }

  .mobile-menu-content nav ul.nav-ul li.nav-li ul.nav-child-ul li.nav-child-li a.nav-link svg {
    width: 24px !important;
    height: 24px !important;
    flex-shrink: 0 !important;
    opacity: 1 !important;
  }

  .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: 160px;
    width: 190px;
  }

}

/* ==========================================================================
   Header Top Utility Bar (Search & Custom Menu)
   ========================================================================== */
.site-topbar,
.header-utility-bar {
  width: 100%;
  max-width: 1320px;
  margin: 0 auto 6px auto;
  padding: 0px;
  box-sizing: border-box;
  pointer-events: auto;
  transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1);
}

header.header-wrapper.scrolled .site-topbar,
header.header-wrapper.scrolled .header-utility-bar {
  max-height: 0;
  opacity: 0;
  margin-bottom: 0;
  padding-top: 0;
  padding-bottom: 0;
  overflow: hidden;
  pointer-events: none;
}

.site-topbar__inner,
.header-utility-bar__inner {
  display: flex;
  align-items: center;
  justify-content: flex-end;
}

.site-topbar__group,
.header-utility-bar__group {
  display: inline-flex;
  align-items: center;
  gap: 18px;
  background: transparent;
  padding: 5px 18px;
}

/* Search Trigger in Topbar */
.nav-search {
  display: inline-flex;
  align-items: center;
}

.nav-search__btn,
.header-search__toggle {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: transparent;
  border: none;
  padding: 5px;
  color: #111111;
  cursor: pointer;
  border-radius: 50%;
  transition: all 0.2s ease;
  line-height: 1;
}

.nav-search__btn svg,
.header-search__toggle svg {
  display: block;
  fill: black;
}

.nav-search__btn svg path,
.header-search__toggle svg path {
  fill: black;
}

.nav-search__btn:hover,
.header-search__toggle:hover {
  color: #600087;
  transform: scale(1.08);
}

.nav-search__btn svg,
.header-search__toggle svg {
  display: block;
}

/* Custom Menu Links in Topbar */
.sidebar-navigation,
.header-utility-menu {
  display: inline-flex;
  align-items: center;
  list-style: none;
  padding: 0;
  margin: 0;
  gap: 18px;
}

.sidebar-item,
.header-utility-menu__item {
  display: inline-flex;
  align-items: center;
}

.sidebar-link,
.header-utility-menu__link {
  font-size: 16px !important;
  font-weight: 600 !important;
  color: #1B1B1B !important;
  text-decoration: none !important;
  transition: color 0.2s ease;
  white-space: nowrap;
}

.sidebar-link:hover,
.header-utility-menu__link:hover {
  color: #1b1b1b !important;
}

/* ==========================================================================
   MEGA DROPDOWN - BASE CONTAINER & HOVER BEHAVIOR
   ========================================================================== */
header.header-wrapper .content-wrapper .header-column.navigation nav ul.nav-ul li.nav-li .main-nav__mega-dropdown {
  position: absolute;
  top: 100%;
  padding-top: 14px;
  left: 50%;
  transform: translateX(-50%) translateY(0);
  width: 100%;
  max-width: 1240px;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  z-index: 1000;
  transition: opacity 0.2s ease, visibility 0.2s;
}

header.header-wrapper .content-wrapper .header-column.navigation nav ul.nav-ul li.nav-li .main-nav__mega-dropdown::before {
  content: '';
  position: absolute;
  top: -30px;
  left: 0;
  right: 0;
  height: 35px;
  background: transparent;
  pointer-events: auto;
}

header.header-wrapper .content-wrapper .header-column.navigation nav ul.nav-ul li.nav-li:hover .main-nav__mega-dropdown,
header.header-wrapper .content-wrapper .header-column.navigation nav ul.nav-ul li.nav-li .main-nav__mega-dropdown.visible {
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
  transform: translateX(-50%) translateY(0) !important;
}

/* ==========================================================================
   MEGA DROPDOWN - CARDS GRID (Icons 50px, Title, Description)
   ========================================================================== */
.mega-cards-dropdown .mega-dropdown__panel {
  background: #FFFFFF;
  border: 1px solid #D1D5DB;
  border-radius: 4px;
  box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05);
  overflow: hidden;
}

.mega-cards-body {
  background: #FFFFFF;
  padding: 32px;
  display: flex;
  flex-direction: column;
  gap: 32px;
}

.mega-cards-section {
  display: flex;
  flex-direction: column;
  gap: 16px;
  width: 100%;
}

.mega-category-title {
  font-size: 16px !important;
  font-weight: 600 !important;
  text-transform: uppercase !important;
  color: #737373 !important;
  margin: 0 !important;
  line-height: 1.5 !important;
  font-family: Bauziet, sans-serif !important;
}

.mega-cards-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}

.mega-card-item {
  display: flex;
  align-items: center;
  gap: 16px;
  padding: 16px;
  border-radius: 8px;
  text-decoration: none !important;
  background-color: transparent;
  transition: background-color 0.2s ease, transform 0.2s ease, box-shadow 0.2s ease;
  box-sizing: border-box;
}

.mega-card-item:hover {
  background-color: #F1DEF9 !important;
  transform: translateY(-2px);
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05);
}

.mega-card-item:hover .mega-card-title {
  color: #600087 !important;
}

.mega-card-item:hover .mega-card-icon-wrap {
  background-color: #E8CCF5 !important;
}

.mega-card-icon-wrap {
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 9999px;
  padding: 0 !important;
  width: 50px;
  height: 50px;
  min-width: 50px;
  overflow: hidden;
  flex-shrink: 0;
  background-color: #E5E7EB;
  box-sizing: border-box;
}

.mega-card-icon-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.mega-card-icon-placeholder {
  display: flex;
  align-items: center;
  justify-content: center;
  color: #600087;
}

.mega-card-content {
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 4px;
  min-width: 0;
  flex: 1;
}

.mega-card-title {
  margin: 0 !important;
  display: flex;
  align-items: center;
  gap: 16px;
  font-size: 16px !important;
  font-weight: 700 !important;
  color: #111827 !important;
  line-height: 1.5 !important;
}

.mega-card-badge {
  font-size: 11px;
  font-weight: 600;
  padding: 2px 8px;
  border-radius: 9999px;
  background: rgba(96, 0, 135, 0.1);
  color: #600087;
  white-space: nowrap;
}

.mega-card-desc {
  font-size: 14px !important;
  margin: 0 !important;
  font-weight: 500 !important;
  line-height: 1.2 !important;
  color: #111827 !important;
}

.mega-divider {
  height: 1px;
  width: 100%;
  background-color: #E5E7EB;
  border: none;
  margin: 4px 0;
}

.mega-dropdown-bottom-bar {
  background-color: #F9FAFB;
  padding: 16px 32px;
  display: flex;
  gap: 20px;
  align-items: center;
  border-top: 1px solid #E5E7EB;
}

.mega-bottom-link {
  font-size: 14px;
  font-weight: 700;
  color: #111827 !important;
  text-decoration: none !important;
  transition: color 0.2s ease;
}

.mega-bottom-link:hover {
  color: #600087 !important;
}

.mega-bottom-sep {
  width: 1px;
  height: 18px;
  background-color: #D1D5DB;
  display: inline-block;
}

/* ==========================================================================
   MEGA DROPDOWN - MULTI-COLUMN LAYOUT (Dividers & Category Headings)
   ========================================================================== */
.mega-columns-dropdown {
  width: auto !important;
  min-width: 580px;
}

.mega-columns-dropdown .mega-dropdown__panel {
  background: #FFFFFF;
  border: 1px solid #E5E7EB;
  border-radius: 18px;
  box-shadow: 0 20px 45px rgba(0, 0, 0, 0.12);
  overflow: hidden;
}

.mega-columns-wrapper {
  display: flex;
  gap: 32px;
  align-items: stretch;
  padding: 32px;
}

.mega-column {
  display: flex;
  flex-direction: column;
  gap: 14px;
  min-width: 160px;
}

.mega-column-title {
  margin: 0 !important;
  text-transform: uppercase !important;
  font-size: 13px !important;
  color: #9CA3AF !important;
  font-weight: 700 !important;
  letter-spacing: 0.06em !important;
  line-height: 1.4 !important;
}

.mega-column-links {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.mega-column-link {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  font-size: 15px !important;
  font-weight: 500 !important;
  color: #1F2937 !important;
  line-height: 1.4 !important;
  text-decoration: none !important;
  transition: color 0.2s ease, transform 0.15s ease;
  white-space: nowrap;
}

.mega-column-link:hover {
  color: #600087 !important;
  transform: translateX(2px);
}

.mega-column-divider {
  width: 1px;
  background-color: #E5E7EB;
  align-self: stretch;
  flex-shrink: 0;
}

/* ==========================================================================
   SEARCH POPUP MODAL (Dynamic Content & Popular Tags)
   ========================================================================== */
.search-modal-backdrop {
  position: fixed;
  inset: 0;
  z-index: 999999;
  background: rgba(17, 24, 39, 0.45);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  display: flex;
  align-items: flex-start;
  justify-content: center;
  padding-top: 10vh;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: opacity 0.25s cubic-bezier(0.16, 1, 0.3, 1), visibility 0.25s cubic-bezier(0.16, 1, 0.3, 1);
}

.search-modal-backdrop.is-open {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
}

.search-modal-container {
  width: 100%;
  max-width: 640px;
  padding: 0 16px;
  box-sizing: border-box;
}

.search-modal-card {
  background: #FFFFFF;
  border-radius: 20px;
  box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.25);
  border: 1px solid rgba(0, 0, 0, 0.08);
  overflow: hidden;
  transform: translateY(-16px) scale(0.97);
  transition: transform 0.25s cubic-bezier(0.16, 1, 0.3, 1);
}

.search-modal-backdrop.is-open .search-modal-card {
  transform: translateY(0) scale(1);
}

.search-modal-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 24px 28px 16px 28px;
}

.search-modal-title {
  font-size: 18px !important;
  font-weight: 700 !important;
  color: #111827 !important;
  margin: 0 !important;
}

.search-modal-close {
  background: #F3F4F6;
  border: none;
  border-radius: 50%;
  width: 36px;
  height: 36px;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  color: #6B7280;
  transition: background-color 0.2s, color 0.2s;
}

.search-modal-close:hover {
  background-color: #E5E7EB;
  color: #111827;
}

.search-modal-form {
  padding: 0 28px 24px 28px;
}

.search-modal-input-wrap {
  display: flex;
  align-items: center;
  gap: 12px;
  background: #F9FAFB;
  border: 2px solid #E5E7EB;
  border-radius: 14px;
  padding: 6px 14px;
  transition: border-color 0.2s, background-color 0.2s;
}

.search-modal-input-wrap:focus-within {
  border-color: #600087;
  background-color: #FFFFFF;
}

.search-modal-input-icon {
  color: #9CA3AF;
  flex-shrink: 0;
}

.search-modal-input {
  flex: 1;
  border: none;
  background: transparent;
  padding: 8px 0;
  font-size: 15px;
  outline: none;
  color: #111827;
}

.search-modal-submit-btn {
  background-color: #600087;
  color: #FFFFFF;
  border: none;
  border-radius: 10px;
  padding: 9px 18px;
  font-weight: 600;
  font-size: 14px;
  cursor: pointer;
  transition: opacity 0.2s;
  flex-shrink: 0;
}

.search-modal-submit-btn:hover {
  opacity: 0.9;
}

.search-modal-quick-links {
  padding: 16px 28px 22px 28px;
  border-top: 1px solid #F3F4F6;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
}

.search-modal-quick-label {
  font-size: 13px;
  font-weight: 600;
  color: #6B7280;
  margin-right: 4px;
}

.search-modal-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.search-modal-tag {
  background: #F3F4F6;
  border-radius: 9999px;
  padding: 5px 14px;
  font-size: 13px;
  font-weight: 500;
  color: #374151 !important;
  text-decoration: none !important;
  transition: all 0.2s ease;
}

.search-modal-tag:hover {
  background: rgba(96, 0, 135, 0.1);
  color: #600087 !important;
}

body.search-open {
  overflow: hidden;
}

/* ==========================================================================
   MOBILE DRAWER & RESPONSIVE ADAPTATIONS
   ========================================================================== */
.header-column.mobile-menu {
  display: flex;
  align-items: center;
  gap: 14px;
}

.header-search--mobile {
  display: none;
}

@media only screen and (max-width: 1000px) {
  header.header-wrapper {
    padding: 10px 14px 0 14px !important;
  }

  header.header-wrapper.scrolled,
  header.header-wrapper.position-fixed.scrolled {
    padding: 6px 14px 0 14px !important;
  }

  header.header-wrapper .content-wrapper {
    padding: 8px 18px !important;
    border-radius: 9999px !important;
    max-width: 100% !important;
  }

  .site-topbar,
  .header-utility-bar {
    display: none !important;
  }

  .header-search--mobile {
    display: inline-flex;
  }

  .mobile-menu-content {
    pointer-events: auto;
    position: fixed;
    top: 72px;
    left: 14px;
    right: 14px;
    width: calc(100% - 28px);
    max-height: calc(100vh - 90px);
    overflow-y: auto;
    border-radius: 24px;
    border: 1px solid rgba(0, 0, 0, 0.08);
    box-shadow: 0 16px 48px rgba(0, 0, 0, 0.16);
    padding: 24px;
    box-sizing: border-box;
    background: #FFFFFF;
  }

  .mobile-search-box {
    margin-bottom: 20px;
  }

  .mobile-search-trigger-btn {
    width: 100%;
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 12px 16px;
    background: #F9FAFB;
    border: 1px solid #E5E7EB;
    border-radius: 12px;
    color: #6B7280;
    font-size: 14px;
    font-weight: 500;
    cursor: pointer;
    text-align: left;
    transition: all 0.2s ease;
  }

  .mobile-search-trigger-btn:hover {
    background: #F3F4F6;
    color: #111827;
  }

  .mobile-mega-cards {
    display: flex;
    flex-direction: column;
    gap: 10px;
    padding: 12px 0;
  }

  .mobile-mega-heading {
    font-size: 12px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    color: #9CA3AF !important;
    letter-spacing: 0.05em !important;
    margin: 12px 0 4px 0 !important;
  }

  .mobile-mega-card {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 10px 14px;
    border-radius: 12px;
    background: #F9FAFB;
    border: 1px solid #E5E7EB;
    text-decoration: none !important;
  }

  .mobile-mega-card-icon {
    width: 38px;
    height: 38px;
    min-width: 38px;
    border-radius: 50%;
    background: #FFFFFF;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    padding: 6px;
    box-sizing: border-box;
    flex-shrink: 0;
  }

  .mobile-mega-card-icon img {
    width: 100%;
    height: 100%;
    object-fit: contain;
  }

  .mobile-mega-card-text {
    display: flex;
    flex-direction: column;
    gap: 2px;
    min-width: 0;
  }

  .mobile-mega-card-title {
    font-size: 14px;
    font-weight: 700;
    color: #111827;
  }

  .mobile-mega-card-desc {
    font-size: 12px;
    color: #6B7280;
    line-height: 1.3;
  }

  .mobile-mega-bottom-bar {
    display: flex;
    flex-direction: column;
    gap: 8px;
    margin-top: 8px;
    padding-top: 10px;
    border-top: 1px solid #E5E7EB;
  }

  .mobile-mega-bottom-link {
    font-size: 13px;
    font-weight: 600;
    color: #600087 !important;
    text-decoration: none !important;
  }

  .mobile-mega-columns {
    display: flex;
    flex-direction: column;
    gap: 12px;
    padding: 12px 0;
  }

  .mobile-mega-column-links {
    display: flex;
    flex-direction: column;
    gap: 8px;
  }

  .mobile-mega-column-link {
    font-size: 14px;
    font-weight: 500;
    color: #374151 !important;
    text-decoration: none !important;
    padding: 4px 0;
    display: block;
  }

  .mobile-utility-nav {
    padding: 16px 0;
    margin-top: 16px;
    border-top: 1px solid #E5E7EB;
  }

  .mobile-utility-nav__list {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 12px;
  }

  .mobile-utility-nav__link {
    font-size: 15px;
    font-weight: 600;
    color: #4B5563 !important;
    text-decoration: none !important;
  }
}


/* Sections */

/* Components */

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

}

/* Sections */



/* Settings */

/* 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(.custom-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(.custom-cta):not(.text-cta):hover {
  color: var(--purple);
}

a:not(.primary-cta):not(.secondary-cta):not(.custom-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(.custom-cta):not(.text-cta):hover::before {
  width: 100%;
}

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

h2+.big-text,
.h2+.big-text {
  font-size: 30px;
  line-height: 1.3;
}

p+h2,
p+.h2 {
  padding-top: 60px;
}

.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: flex-start;
  gap: 16px;
  align-items: center;
  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:not(.nav-ul):not(.nav-child-ul):not(.sidebar-navigation):not(.header-utility-menu):not(.mobile-utility-nav__list) li:not(nav ul li):not(header *):not(.mobile-menu-content *)::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;
}

.hs-tools-menu li::before,
.hs-private.hs-private.hs-private li::before,
.sidebar-navigation li::before,
.header-utility-menu li::before,
.sidebar-item::before,
.header-utility-menu__item::before,
header.header-wrapper li::before,
header.header-wrapper ul li::before,
.header-wrapper li::before,
.mobile-menu-content li::before,
.mobile-menu-content ul li::before,
.mobile-menu-content .nav-child-li::before,
.nav-child-li::before,
.nav-child-ul li::before,
.nav-ul li::before,
.accordion-content li::before,
.mobile-utility-nav li::before {
  content: none !important;
  display: none !important;
}

.dnd-section>.row-fluid,
.header-wrapper .content-wrapper {
  max-width: 1140px !important;
}

header.header-wrapper .content-wrapper {
  max-width: 1440px !important;
}

@media screen and (max-width: 768px) {
  .big-text {
    font-size: 20px;
    line-height: 1.4;
  }

  h2+.big-text,
  .h2+.big-text {
    font-size: 20px;
    line-height: 1.3;
  }

  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 */

/* 
* Grids
*/

.grid {
  display: grid;
  grid-template-columns: 1fr;
}

@media only screen and (min-width: 768px) {
  .grid-2 {
      grid-template-columns: repeat(2, 1fr);
  }
  
  .grid-3 {
      grid-template-columns: repeat(2, 1fr);
  }
  
  .grid-4 {
      grid-template-columns: repeat(2, 1fr);
  }
}

@media only screen and (min-width: 1080px) {
  
  .grid-3 {
      grid-template-columns: repeat(3, 1fr);
  }
  
  .grid-4 {
      grid-template-columns: repeat(4, 1fr);
  }
}