.splide__container{
  box-sizing:border-box;
  position:relative
}

.splide__list{
  backface-visibility:hidden;
  display:flex;
  height:100%;
  margin:0!important;
  padding:0!important
}

.splide.is-initialized:not(.is-active) .splide__list{
  display:block
}

.splide__pagination{
  align-items:center;
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  margin:0;
  pointer-events:none
}

.splide__pagination li{
  display:inline-block;
  line-height:1;
  list-style-type:none;
  margin:0;
  pointer-events:auto
}

.splide:not(.is-overflow) .splide__pagination{
  display:none
}

.splide__progress__bar{
  width:0
}

.splide{
  position:relative;
  visibility:hidden
}

.splide.is-initialized,.splide.is-rendered{
  visibility:visible
}

.splide__slide{
  backface-visibility:hidden;
  box-sizing:border-box;
  flex-shrink:0;
  list-style-type:none!important;
  margin:0;
  position:relative
}

.splide__slide img{
  vertical-align:bottom
}

.splide__spinner{
  animation:splide-loading 1s linear infinite;
  border:2px solid #999;
  border-left-color:transparent;
  border-radius:50%;
  bottom:0;
  contain:strict;
  display:inline-block;
  height:20px;
  left:0;
  margin:auto;
  position:absolute;
  right:0;
  top:0;
  width:20px
}

.splide__sr{
  clip:rect(0 0 0 0);
  border:0;
  height:1px;
  margin:-1px;
  overflow:hidden;
  padding:0;
  position:absolute;
  width:1px
}

.splide__toggle.is-active .splide__toggle__play,.splide__toggle__pause{
  display:none
}

.splide__toggle.is-active .splide__toggle__pause{
  display:inline
}

.splide__track{
  overflow:hidden;
  position:relative;
  z-index:0
}

@keyframes splide-loading{
  0%{
    transform:rotate(0)
  }

  to{
    transform:rotate(1turn)
  }
}

.splide__track--draggable{
  -webkit-touch-callout:none;
  -webkit-user-select:none;
  -moz-user-select:none;
       user-select:none
}

.splide__track--fade>.splide__list>.splide__slide{
  margin:0!important;
  opacity:0;
  z-index:0
}

.splide__track--fade>.splide__list>.splide__slide.is-active{
  opacity:1;
  z-index:1
}

.splide--rtl{
  direction:rtl
}

.splide__track--ttb>.splide__list{
  display:block
}

.splide__arrow{
  align-items:center;
  background:#ccc;
  border:0;
  border-radius:50%;
  cursor:pointer;
  display:flex;
  height:2em;
  justify-content:center;
  opacity:.7;
  padding:0;
  position:absolute;
  top:50%;
  transform:translateY(-50%);
  width:2em;
  z-index:1
}

.splide__arrow svg{
  fill:#000;
  height:1.2em;
  width:1.2em
}

.splide__arrow:hover:not(:disabled){
  opacity:.9
}

.splide__arrow:disabled{
  opacity:.3
}

.splide__arrow:focus-visible{
  outline:3px solid #0bf;
  outline-offset:3px
}

.splide__arrow--prev{
  left:1em
}

.splide__arrow--prev svg{
  transform:scaleX(-1)
}

.splide__arrow--next{
  right:1em
}

.splide.is-focus-in .splide__arrow:focus{
  outline:3px solid #0bf;
  outline-offset:3px
}

.splide__pagination{
  bottom:.5em;
  left:0;
  padding:0 1em;
  position:absolute;
  right:0;
  z-index:1
}

.splide__pagination__page{
  background:#ccc;
  border:0;
  border-radius:50%;
  display:inline-block;
  height:8px;
  margin:3px;
  opacity:.7;
  padding:0;
  position:relative;
  transition:transform .2s linear;
  width:8px
}

.splide__pagination__page.is-active{
  background:#fff;
  transform:scale(1.4);
  z-index:1
}

.splide__pagination__page:hover{
  cursor:pointer;
  opacity:.9
}

.splide__pagination__page:focus-visible{
  outline:3px solid #0bf;
  outline-offset:3px
}

.splide.is-focus-in .splide__pagination__page:focus{
  outline:3px solid #0bf;
  outline-offset:3px
}

.splide__progress__bar{
  background:#ccc;
  height:3px
}

.splide__slide{
  -webkit-tap-highlight-color:rgba(0,0,0,0)
}

.splide__slide:focus{
  outline:0
}

@supports(outline-offset:-3px){
  .splide__slide:focus-visible{
    outline:3px solid #0bf;
    outline-offset:-3px
  }
}

@media screen and (-ms-high-contrast:none){
  .splide__slide:focus-visible{
    border:3px solid #0bf
  }
}

@supports(outline-offset:-3px){
  .splide.is-focus-in .splide__slide:focus{
    outline:3px solid #0bf;
    outline-offset:-3px
  }
}

@media screen and (-ms-high-contrast:none){
  .splide.is-focus-in .splide__slide:focus{
    border:3px solid #0bf
  }

  .splide.is-focus-in .splide__track>.splide__list>.splide__slide:focus{
    border-color:#0bf
  }
}

.splide__toggle{
  cursor:pointer
}

.splide__toggle:focus-visible{
  outline:3px solid #0bf;
  outline-offset:3px
}

.splide.is-focus-in .splide__toggle:focus{
  outline:3px solid #0bf;
  outline-offset:3px
}

.splide__track--nav>.splide__list>.splide__slide{
  border:3px solid transparent;
  cursor:pointer
}

.splide__track--nav>.splide__list>.splide__slide.is-active{
  border:3px solid #000
}

.splide__arrows--rtl .splide__arrow--prev{
  left:auto;
  right:1em
}

.splide__arrows--rtl .splide__arrow--prev svg{
  transform:scaleX(1)
}

.splide__arrows--rtl .splide__arrow--next{
  left:1em;
  right:auto
}

.splide__arrows--rtl .splide__arrow--next svg{
  transform:scaleX(-1)
}

.splide__arrows--ttb .splide__arrow{
  left:50%;
  transform:translate(-50%)
}

.splide__arrows--ttb .splide__arrow--prev{
  top:1em
}

.splide__arrows--ttb .splide__arrow--prev svg{
  transform:rotate(-90deg)
}

.splide__arrows--ttb .splide__arrow--next{
  bottom:1em;
  top:auto
}

.splide__arrows--ttb .splide__arrow--next svg{
  transform:rotate(90deg)
}

.splide__pagination--ttb{
  bottom:0;
  display:flex;
  flex-direction:column;
  left:auto;
  padding:1em 0;
  right:.5em;
  top:0
}

.hero-slider .hero-slider-item {
  width: 100%;
  height: 100vh;
  background-size: cover;
  background-position: center;
}

.hero-slider .spacer{
  height:28.75rem;
  width:100%
}

@media (min-aspect-ratio: 4/2) or (max-aspect-ratio: 4/3) {
  .hero-slider .hero-slider-item {
    width: 100%;
    height: auto;
    aspect-ratio: 16/9;
  }

  .hero-slider .spacer{
    aspect-ratio:16/3;
    height:auto;
    width:100%
  }
}

.hero-slider .dots {
  .dot{
    cursor:pointer
  }
  .dot.selected{
    --tw-bg-opacity:1;
    background-color:rgb(255 255 255 / var(--tw-bg-opacity))
  }
}

.our-projects .project-grids{
  display:grid;
  grid-template-columns:repeat(4, minmax(0, 1fr));
  &.foreground{
    grid-template-rows:repeat(7, minmax(0, 1fr))
  }
  &.foreground{
    background-color:transparent
  }
  &.background{
    border-left-width:1px
  }
  &.background{
    --tw-border-opacity:1;
    border-color:rgb(10 34 64 / var(--tw-border-opacity))
  }
  &.background {
    .col-item{
      grid-column:span 1 / span 1
    }
    .col-item{
      border-right-width:1px
    }
    .col-item{
      --tw-border-opacity:1;
      border-color:rgb(10 34 64 / var(--tw-border-opacity))
    }
  }
}

.our-projects {
  .grid-row{
    display:grid
  }
  .grid-row{
    grid-template-columns:repeat(4, minmax(0, 1fr))
  }
  .grid-row{
    grid-template-rows:repeat(1, minmax(0, 1fr))
  }
  .grid-row{
    border-left-width:1px
  }
  .grid-row{
    --tw-border-opacity:1;
    border-color:rgb(10 34 64 / var(--tw-border-opacity))
  }
  .grid-row {
    &.no-border{
      border-style:none
    }
  }
  .col{
    border-right-width:1px
  }
  .col{
    --tw-border-opacity:1;
    border-color:rgb(10 34 64 / var(--tw-border-opacity))
  }
  .project-text, .project-text-1, .project-text-2{
    --tw-text-opacity:1;
    color:rgb(10 34 64 / var(--tw-text-opacity))
  }
  .project-text, .project-text-1, .project-text-2{
    transition-duration:150ms
  }
  .project-text, .project-text-1, .project-text-2{
    transition-timing-function:cubic-bezier(0.4, 0.14, 0.3, 1)
  }
  .project-text, .project-text-1, .project-text-2 {
    &:hover, &.hover{
      --tw-text-opacity:1;
      color:rgb(35 104 196 / var(--tw-text-opacity))
    }
  }
}

.why-us {
  .accordion {
    .accordion-item {
      .accordion-content{
        max-height:0px
      }
      .accordion-content{
        overflow:hidden
      }
      .accordion-content{
        transition-property:max-height;
        transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);
        transition-duration:150ms
      }
      .accordion-content{
        transition-duration:240ms
      }
      .accordion-content{
        transition-timing-function:cubic-bezier(0.4, 0.14, 0.3, 1)
      }
      .image-container .image-content{
        max-height:0px
      }
      .image-container .image-content{
        transition-property:max-height;
        transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);
        transition-duration:150ms
      }
      .image-container .image-content{
        transition-duration:240ms
      }
      .image-container .image-content{
        transition-timing-function:cubic-bezier(0.4, 0.14, 0.3, 1)
      }
      &.expanded {
        .accordion-content {
          /*@apply h-auto min-h-[8.75rem];*/
        }
        .image-container .image-content{
          max-height:17.25rem
        }
        .image-container .image-content{
          transition-property:max-height;
          transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);
          transition-duration:150ms
        }
        .image-container .image-content{
          transition-duration:400ms
        }
        .image-container .image-content{
          transition-timing-function:cubic-bezier(0.4, 0.14, 0.3, 1)
        }
      }
    }
  }
}

.trusted-by {
  .plus-sign{
    --tw-scale-x:.75;
    --tw-scale-y:.75;
    transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))
  }
  .plus-sign{
    opacity:0
  }
  .plus-sign{
    display:inline-block
  }
  .plus-sign{
    transition-property:transform,opacity;
    transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);
    transition-duration:150ms
  }
  .plus-sign{
    transition-delay:2900ms
  }
  .plus-sign{
    transition-duration:700ms
  }
  .plus-sign{
    transition-timing-function:cubic-bezier(0, 0, 0.3, 1)
  }
  .plus-sign {
    &.show{
      --tw-scale-x:1;
      --tw-scale-y:1;
      transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))
    }
    &.show{
      opacity:1
    }
  }
}

*, ::before, ::after{
  --tw-border-spacing-x:0;
  --tw-border-spacing-y:0;
  --tw-translate-x:0;
  --tw-translate-y:0;
  --tw-rotate:0;
  --tw-skew-x:0;
  --tw-skew-y:0;
  --tw-scale-x:1;
  --tw-scale-y:1;
  --tw-pan-x: ;
  --tw-pan-y: ;
  --tw-pinch-zoom: ;
  --tw-scroll-snap-strictness:proximity;
  --tw-gradient-from-position: ;
  --tw-gradient-via-position: ;
  --tw-gradient-to-position: ;
  --tw-ordinal: ;
  --tw-slashed-zero: ;
  --tw-numeric-figure: ;
  --tw-numeric-spacing: ;
  --tw-numeric-fraction: ;
  --tw-ring-inset: ;
  --tw-ring-offset-width:0px;
  --tw-ring-offset-color:#fff;
  --tw-ring-color:rgb(59 130 246 / 0.5);
  --tw-ring-offset-shadow:0 0 #0000;
  --tw-ring-shadow:0 0 #0000;
  --tw-shadow:0 0 #0000;
  --tw-shadow-colored:0 0 #0000;
  --tw-blur: ;
  --tw-brightness: ;
  --tw-contrast: ;
  --tw-grayscale: ;
  --tw-hue-rotate: ;
  --tw-invert: ;
  --tw-saturate: ;
  --tw-sepia: ;
  --tw-drop-shadow: ;
  --tw-backdrop-blur: ;
  --tw-backdrop-brightness: ;
  --tw-backdrop-contrast: ;
  --tw-backdrop-grayscale: ;
  --tw-backdrop-hue-rotate: ;
  --tw-backdrop-invert: ;
  --tw-backdrop-opacity: ;
  --tw-backdrop-saturate: ;
  --tw-backdrop-sepia: ;
  --tw-contain-size: ;
  --tw-contain-layout: ;
  --tw-contain-paint: ;
  --tw-contain-style: 
}

::backdrop{
  --tw-border-spacing-x:0;
  --tw-border-spacing-y:0;
  --tw-translate-x:0;
  --tw-translate-y:0;
  --tw-rotate:0;
  --tw-skew-x:0;
  --tw-skew-y:0;
  --tw-scale-x:1;
  --tw-scale-y:1;
  --tw-pan-x: ;
  --tw-pan-y: ;
  --tw-pinch-zoom: ;
  --tw-scroll-snap-strictness:proximity;
  --tw-gradient-from-position: ;
  --tw-gradient-via-position: ;
  --tw-gradient-to-position: ;
  --tw-ordinal: ;
  --tw-slashed-zero: ;
  --tw-numeric-figure: ;
  --tw-numeric-spacing: ;
  --tw-numeric-fraction: ;
  --tw-ring-inset: ;
  --tw-ring-offset-width:0px;
  --tw-ring-offset-color:#fff;
  --tw-ring-color:rgb(59 130 246 / 0.5);
  --tw-ring-offset-shadow:0 0 #0000;
  --tw-ring-shadow:0 0 #0000;
  --tw-shadow:0 0 #0000;
  --tw-shadow-colored:0 0 #0000;
  --tw-blur: ;
  --tw-brightness: ;
  --tw-contrast: ;
  --tw-grayscale: ;
  --tw-hue-rotate: ;
  --tw-invert: ;
  --tw-saturate: ;
  --tw-sepia: ;
  --tw-drop-shadow: ;
  --tw-backdrop-blur: ;
  --tw-backdrop-brightness: ;
  --tw-backdrop-contrast: ;
  --tw-backdrop-grayscale: ;
  --tw-backdrop-hue-rotate: ;
  --tw-backdrop-invert: ;
  --tw-backdrop-opacity: ;
  --tw-backdrop-saturate: ;
  --tw-backdrop-sepia: ;
  --tw-contain-size: ;
  --tw-contain-layout: ;
  --tw-contain-paint: ;
  --tw-contain-style: 
}

/*! tailwindcss v3.4.14 | MIT License | https://tailwindcss.com*/

/*
1. Prevent padding and border from affecting element width. (https://github.com/mozdevs/cssremedy/issues/4)
2. Allow adding a border to an element by just adding a border-width. (https://github.com/tailwindcss/tailwindcss/pull/116)
*/

*,
::before,
::after {
  box-sizing: border-box;
  /* 1 */
  border-width: 0;
  /* 2 */
  border-style: solid;
  /* 2 */
  border-color: #e5e7eb;
  /* 2 */
}

::before,
::after {
  --tw-content: '';
}

/*
1. Use a consistent sensible line-height in all browsers.
2. Prevent adjustments of font size after orientation changes in iOS.
3. Use a more readable tab size.
4. Use the user's configured `sans` font-family by default.
5. Use the user's configured `sans` font-feature-settings by default.
6. Use the user's configured `sans` font-variation-settings by default.
7. Disable tap highlights on iOS
*/

html,
:host {
  line-height: 1.5;
  /* 1 */
  -webkit-text-size-adjust: 100%;
  /* 2 */
  -moz-tab-size: 4;
  /* 3 */
  -o-tab-size: 4;
     tab-size: 4;
  /* 3 */
  font-family: ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  /* 4 */
  font-feature-settings: normal;
  /* 5 */
  font-variation-settings: normal;
  /* 6 */
  -webkit-tap-highlight-color: transparent;
  /* 7 */
}

/*
1. Remove the margin in all browsers.
2. Inherit line-height from `html` so users can set them as a class directly on the `html` element.
*/

body {
  margin: 0;
  /* 1 */
  line-height: inherit;
  /* 2 */
}

/*
1. Add the correct height in Firefox.
2. Correct the inheritance of border color in Firefox. (https://bugzilla.mozilla.org/show_bug.cgi?id=190655)
3. Ensure horizontal rules are visible by default.
*/

hr {
  height: 0;
  /* 1 */
  color: inherit;
  /* 2 */
  border-top-width: 1px;
  /* 3 */
}

/*
Add the correct text decoration in Chrome, Edge, and Safari.
*/

abbr:where([title]) {
  -webkit-text-decoration: underline dotted;
          text-decoration: underline dotted;
}

/*
Remove the default font size and weight for headings.
*/

h1,
h2,
h3,
h4,
h5,
h6 {
  font-size: inherit;
  font-weight: inherit;
}

/*
Reset links to optimize for opt-in styling instead of opt-out.
*/

a {
  color: inherit;
  text-decoration: inherit;
}

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

b,
strong {
  font-weight: bolder;
}

/*
1. Use the user's configured `mono` font-family by default.
2. Use the user's configured `mono` font-feature-settings by default.
3. Use the user's configured `mono` font-variation-settings by default.
4. Correct the odd `em` font sizing in all browsers.
*/

code,
kbd,
samp,
pre {
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
  /* 1 */
  font-feature-settings: normal;
  /* 2 */
  font-variation-settings: normal;
  /* 3 */
  font-size: 1em;
  /* 4 */
}

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

/*
1. Remove text indentation from table contents in Chrome and Safari. (https://bugs.chromium.org/p/chromium/issues/detail?id=999088, https://bugs.webkit.org/show_bug.cgi?id=201297)
2. Correct table border color inheritance in all Chrome and Safari. (https://bugs.chromium.org/p/chromium/issues/detail?id=935729, https://bugs.webkit.org/show_bug.cgi?id=195016)
3. Remove gaps between table borders by default.
*/

table {
  text-indent: 0;
  /* 1 */
  border-color: inherit;
  /* 2 */
  border-collapse: collapse;
  /* 3 */
}

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

button,
input,
optgroup,
select,
textarea {
  font-family: inherit;
  /* 1 */
  font-feature-settings: inherit;
  /* 1 */
  font-variation-settings: inherit;
  /* 1 */
  font-size: 100%;
  /* 1 */
  font-weight: inherit;
  /* 1 */
  line-height: inherit;
  /* 1 */
  letter-spacing: inherit;
  /* 1 */
  color: inherit;
  /* 1 */
  margin: 0;
  /* 2 */
  padding: 0;
  /* 3 */
}

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

button,
select {
  text-transform: none;
}

/*
1. Correct the inability to style clickable types in iOS and Safari.
2. Remove default button styles.
*/

button,
input:where([type='button']),
input:where([type='reset']),
input:where([type='submit']) {
  -webkit-appearance: button;
  /* 1 */
  background-color: transparent;
  /* 2 */
  background-image: none;
  /* 2 */
}

/*
Use the modern Firefox focus style for all focusable elements.
*/

:-moz-focusring {
  outline: auto;
}

/*
Remove the additional `:invalid` styles in Firefox. (https://github.com/mozilla/gecko-dev/blob/2f9eacd9d3d995c937b4251a5557d95d494c9be1/layout/style/res/forms.css#L728-L737)
*/

:-moz-ui-invalid {
  box-shadow: none;
}

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

progress {
  vertical-align: baseline;
}

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

::-webkit-inner-spin-button,
::-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.
*/

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

/*
Add the correct display in Chrome and Safari.
*/

summary {
  display: list-item;
}

/*
Removes the default spacing and border for appropriate elements.
*/

blockquote,
dl,
dd,
h1,
h2,
h3,
h4,
h5,
h6,
hr,
figure,
p,
pre {
  margin: 0;
}

fieldset {
  margin: 0;
  padding: 0;
}

legend {
  padding: 0;
}

ol,
ul,
menu {
  list-style: none;
  margin: 0;
  padding: 0;
}

/*
Reset default styling for dialogs.
*/

dialog {
  padding: 0;
}

/*
Prevent resizing textareas horizontally by default.
*/

textarea {
  resize: vertical;
}

/*
1. Reset the default placeholder opacity in Firefox. (https://github.com/tailwindlabs/tailwindcss/issues/3300)
2. Set the default placeholder color to the user's configured gray 400 color.
*/

input::-moz-placeholder, textarea::-moz-placeholder {
  opacity: 1;
  /* 1 */
  color: #9ca3af;
  /* 2 */
}

input::placeholder,
textarea::placeholder {
  opacity: 1;
  /* 1 */
  color: #9ca3af;
  /* 2 */
}

/*
Set the default cursor for buttons.
*/

button,
[role="button"] {
  cursor: pointer;
}

/*
Make sure disabled buttons don't get the pointer cursor.
*/

:disabled {
  cursor: default;
}

/*
1. Make replaced elements `display: block` by default. (https://github.com/mozdevs/cssremedy/issues/14)
2. Add `vertical-align: middle` to align replaced elements more sensibly by default. (https://github.com/jensimmons/cssremedy/issues/14#issuecomment-634934210)
   This can trigger a poorly considered lint error in some tools but is included by design.
*/

img,
svg,
video,
canvas,
audio,
iframe,
embed,
object {
  display: block;
  /* 1 */
  vertical-align: middle;
  /* 2 */
}

/*
Constrain images and videos to the parent width and preserve their intrinsic aspect ratio. (https://github.com/mozdevs/cssremedy/issues/14)
*/

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

/* Make elements with the HTML hidden attribute stay hidden by default */

[hidden]:where(:not([hidden="until-found"])) {
  display: none;
}

.container{
  width:100%
}

@media (min-width: 640px){
  .container{
    max-width:640px
  }
}

@media (min-width: 768px){
  .container{
    max-width:768px
  }
}

@media (min-width: 1024px){
  .container{
    max-width:1024px
  }
}

@media (min-width: 1280px){
  .container{
    max-width:1280px
  }
}

@media (min-width: 1536px){
  .container{
    max-width:1536px
  }
}

.pointer-events-auto{
  pointer-events:auto
}

.absolute{
  position:absolute
}

.relative{
  position:relative
}

.bottom-0{
  bottom:0px
}

.left-0{
  left:0px
}

.right-0{
  right:0px
}

.right-\[1rem\]{
  right:1rem
}

.top-0{
  top:0px
}

.top-\[2\.5rem\]{
  top:2.5rem
}

.top-\[calc\(50\%-1rem\)\]{
  top:calc(50% - 1rem)
}

.z-50{
  z-index:50
}

.z-\[40\]{
  z-index:40
}

.col-span-1{
  grid-column:span 1 / span 1
}

.col-span-2{
  grid-column:span 2 / span 2
}

.col-span-3{
  grid-column:span 3 / span 3
}

.col-span-4{
  grid-column:span 4 / span 4
}

.m-0{
  margin:0px
}

.mx-\[6rem\]{
  margin-left:6rem;
  margin-right:6rem
}

.mx-auto{
  margin-left:auto;
  margin-right:auto
}

.my-\[1\.75rem\]{
  margin-top:1.75rem;
  margin-bottom:1.75rem
}

.mb-\[1\.5rem\]{
  margin-bottom:1.5rem
}

.mb-\[1rem\]{
  margin-bottom:1rem
}

.mb-\[22\.75rem\]{
  margin-bottom:22.75rem
}

.mb-\[3rem\]{
  margin-bottom:3rem
}

.mb-\[6\.625rem\]{
  margin-bottom:6.625rem
}

.mb-\[6rem\]{
  margin-bottom:6rem
}

.ml-\[-6rem\]{
  margin-left:-6rem
}

.mt-\[11\.75rem\]{
  margin-top:11.75rem
}

.mt-\[1rem\]{
  margin-top:1rem
}

.mt-\[3\.875rem\]{
  margin-top:3.875rem
}

.mt-\[3rem\]{
  margin-top:3rem
}

.mt-\[6\.75rem\]{
  margin-top:6.75rem
}

.block{
  display:block
}

.flex{
  display:flex
}

.inline-flex{
  display:inline-flex
}

.aspect-\[1290\/670\]{
  aspect-ratio:1290/670
}

.aspect-\[1720\/342\]{
  aspect-ratio:1720/342
}

.aspect-\[24\/24\]{
  aspect-ratio:24/24
}

.aspect-\[430\/460\]{
  aspect-ratio:430/460
}

.aspect-\[430\/610\]{
  aspect-ratio:430/610
}

.aspect-\[860\/565\]{
  aspect-ratio:860/565
}

.h-\[12\.25rem\]{
  height:12.25rem
}

.h-\[1px\]{
  height:1px
}

.h-\[1rem\]{
  height:1rem
}

.h-\[21\.25rem\]{
  height:21.25rem
}

.h-\[2rem\]{
  height:2rem
}

.h-\[45\.875rem\]{
  height:45.875rem
}

.h-\[4rem\]{
  height:4rem
}

.h-\[5\.4rem\]{
  height:5.4rem
}

.h-full{
  height:100%
}

.max-h-\[25rem\]{
  max-height:25rem
}

.min-h-\[16\.25rem\]{
  min-height:16.25rem
}

.min-h-\[17\.5rem\]{
  min-height:17.5rem
}

.min-h-\[8\.75rem\]{
  min-height:8.75rem
}

.min-h-screen{
  min-height:100vh
}

.w-1\/3{
  width:33.333333%
}

.w-2\/5{
  width:40%
}

.w-3\/5{
  width:60%
}

.w-\[1rem\]{
  width:1rem
}

.w-\[20\%\]{
  width:20%
}

.w-\[2rem\]{
  width:2rem
}

.w-\[33\%\]{
  width:33%
}

.w-\[33\.3\%\]{
  width:33.3%
}

.w-\[34\.125rem\]{
  width:34.125rem
}

.w-\[8\.125rem\]{
  width:8.125rem
}

.w-\[calc\(100\%-12rem\)\]{
  width:calc(100% - 12rem)
}

.w-auto{
  width:auto
}

.w-full{
  width:100%
}

.flex-shrink-0{
  flex-shrink:0
}

.flex-shrink-\[1\]{
  flex-shrink:1
}

.flex-grow-0{
  flex-grow:0
}

.flex-grow-\[1\]{
  flex-grow:1
}

.flex-col{
  flex-direction:column
}

.items-center{
  align-items:center
}

.items-baseline{
  align-items:baseline
}

.items-stretch{
  align-items:stretch
}

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

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

.justify-center{
  justify-content:center
}

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

.gap-0{
  gap:0px
}

.gap-\[0\.75rem\]{
  gap:0.75rem
}

.gap-\[1\.25rem\]{
  gap:1.25rem
}

.gap-\[13rem\]{
  gap:13rem
}

.gap-\[1rem\]{
  gap:1rem
}

.gap-\[2rem\]{
  gap:2rem
}

.gap-\[3\.5rem\]{
  gap:3.5rem
}

.gap-\[3rem\]{
  gap:3rem
}

.gap-\[8rem\]{
  gap:8rem
}

.overflow-hidden{
  overflow:hidden
}

.whitespace-nowrap{
  white-space:nowrap
}

.whitespace-pre-line{
  white-space:pre-line
}

.rounded-\[3rem\]{
  border-radius:3rem
}

.rounded-full{
  border-radius:9999px
}

.border-\[1px\]{
  border-width:1px
}

.border-b{
  border-bottom-width:1px
}

.border-t{
  border-top-width:1px
}

.border-t-\[1px\]{
  border-top-width:1px
}

.border-solid{
  border-style:solid
}

.border-darkBlue{
  --tw-border-opacity:1;
  border-color:rgb(10 34 64 / var(--tw-border-opacity))
}

.border-white{
  --tw-border-opacity:1;
  border-color:rgb(255 255 255 / var(--tw-border-opacity))
}

.border-b-lightBlue{
  --tw-border-opacity:1;
  border-bottom-color:rgb(147 180 228 / var(--tw-border-opacity))
}

.border-t-lightBlue{
  --tw-border-opacity:1;
  border-top-color:rgb(147 180 228 / var(--tw-border-opacity))
}

.bg-darkBlue{
  --tw-bg-opacity:1;
  background-color:rgb(10 34 64 / var(--tw-bg-opacity))
}

.bg-white{
  --tw-bg-opacity:1;
  background-color:rgb(255 255 255 / var(--tw-bg-opacity))
}

.bg-opacity-50{
  --tw-bg-opacity:0.5
}

.bg-cover{
  background-size:cover
}

.bg-center{
  background-position:center
}

.bg-no-repeat{
  background-repeat:no-repeat
}

.object-cover{
  -o-object-fit:cover;
     object-fit:cover
}

.object-scale-down{
  -o-object-fit:scale-down;
     object-fit:scale-down
}

.p-0{
  padding:0px
}

.p-\[1rem\]{
  padding:1rem
}

.p-\[2rem\]{
  padding:2rem
}

.p-\[6rem\]{
  padding:6rem
}

.px-\[1\.5rem\]{
  padding-left:1.5rem;
  padding-right:1.5rem
}

.px-\[2rem\]{
  padding-left:2rem;
  padding-right:2rem
}

.px-\[6rem\]{
  padding-left:6rem;
  padding-right:6rem
}

.py-\[0\.25rem\]{
  padding-top:0.25rem;
  padding-bottom:0.25rem
}

.py-\[0\.75rem\]{
  padding-top:0.75rem;
  padding-bottom:0.75rem
}

.py-\[2\.5rem\]{
  padding-top:2.5rem;
  padding-bottom:2.5rem
}

.py-\[2\.75rem\]{
  padding-top:2.75rem;
  padding-bottom:2.75rem
}

.py-\[4\.5rem\]{
  padding-top:4.5rem;
  padding-bottom:4.5rem
}

.py-\[4rem\]{
  padding-top:4rem;
  padding-bottom:4rem
}

.pb-\[2\.5rem\]{
  padding-bottom:2.5rem
}

.pb-\[5\.5rem\]{
  padding-bottom:5.5rem
}

.pb-\[6\.75rem\]{
  padding-bottom:6.75rem
}

.pl-\[8\.125rem\]{
  padding-left:8.125rem
}

.pr-\[1rem\]{
  padding-right:1rem
}

.pr-\[4\.75rem\]{
  padding-right:4.75rem
}

.pr-\[5\.5rem\]{
  padding-right:5.5rem
}

.pr-\[6rem\]{
  padding-right:6rem
}

.pr-\[9\.125rem\]{
  padding-right:9.125rem
}

.pt-\[7\.25rem\]{
  padding-top:7.25rem
}

.pt-\[7rem\]{
  padding-top:7rem
}

.text-left{
  text-align:left
}

.text-center{
  text-align:center
}

.text-right{
  text-align:right
}

.text-\[1\.125rem\]{
  font-size:1.125rem
}

.text-\[1\.5rem\]{
  font-size:1.5rem
}

.text-\[2\.875rem\]{
  font-size:2.875rem
}

.text-\[5rem\]{
  font-size:5rem
}

.font-bold{
  font-weight:700
}

.uppercase{
  text-transform:uppercase
}

.leading-\[1\]{
  line-height:1
}

.leading-\[2\.5rem\]{
  line-height:2.5rem
}

.leading-\[3\.5rem\]{
  line-height:3.5rem
}

.leading-\[6rem\]{
  line-height:6rem
}

.leading-\[8rem\]{
  line-height:8rem
}

.leading-normal{
  line-height:1.5
}

.text-darkBlue{
  --tw-text-opacity:1;
  color:rgb(10 34 64 / var(--tw-text-opacity))
}

.text-lightBlue{
  --tw-text-opacity:1;
  color:rgb(147 180 228 / var(--tw-text-opacity))
}

.text-white{
  --tw-text-opacity:1;
  color:rgb(255 255 255 / var(--tw-text-opacity))
}

.opacity-0{
  opacity:0
}

.bg-blend-luminosity{
  background-blend-mode:luminosity
}

.outline-none{
  outline:2px solid transparent;
  outline-offset:2px
}

.transition-colors{
  transition-property:color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration:150ms
}

.transition-opacity{
  transition-property:opacity;
  transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration:150ms
}

.duration-fast02{
  transition-duration:110ms
}

.duration-moderate01{
  transition-duration:150ms
}

.ease-standard-expressive{
  transition-timing-function:cubic-bezier(0.4, 0.14, 0.3, 1)
}

.not-interactive{
  user-select:none;
  -webkit-user-drag:none;
  -webkit-touch-callout:none;
  -webkit-user-select:none;
  -moz-user-select:none;
  -ms-user-select:none;
  pointer-events:none
}

html, body{
  font-family:Archivo, sans-serif;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
  --tw-text-opacity:1;
  color:rgb(10 34 64 / var(--tw-text-opacity));
  --tw-bg-opacity:1;
  background-color:rgb(255 255 255 / var(--tw-bg-opacity));
  margin:0px;
  width:100%;
  font-size:0.833vw
}

body{
  position:relative;
  font-size:1.5rem;
  line-height:2.5rem
}

* {
  box-sizing: border-box;
}

.fixed-section{
  width:100%;
  margin-left:auto;
  margin-right:auto
}

.full-section{
  width:100%;
  margin-left:auto;
  margin-right:auto
}

@media (min-width: 1920px) {
  html, body{
    font-size:16px
  }
}

h2{
  font-size:5rem;
  line-height:6rem;
  font-weight:700;
  text-transform:uppercase
}

.vertical-text {
  writing-mode: vertical-lr;
  text-orientation: mixed;
  /*transform: scale(-1, -1);*/
  transform: rotate(180deg) translateX(-2rem);
  transform-origin: center left;
  direction: rtl;
}

.cta-btn{
  position:relative;
  overflow:hidden;
  z-index:1;
  --tw-text-opacity:1;
  color:rgb(255 255 255 / var(--tw-text-opacity));
  &.small {
    .arrow {
      height: 1rem;
    }
  }
  &::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: white;
    transform: translateX(-100%);
    z-index: -1 ;
  }
  &::before{
    transition-property:background-color,transform;
    transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);
    transition-duration:150ms
  }
  &::before{
    transition-duration:150ms
  }
  &::before{
    transition-timing-function:cubic-bezier(0, 0, 0.3, 1)
  }
  .arrow {
    transition: transform 0.3s ease;
  }
  &:hover{
    --tw-text-opacity:1;
    color:rgb(10 34 64 / var(--tw-text-opacity))
  }
  &:hover {
    .arrow {
      transform: translateX(0.5rem);
    }
    &::before {
      transform: translateX(0);
    }
  }
}

#site-header {
  .menu-hamburger {
    .menu-hamburger__line{
      transition-property:transform;
      transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);
      transition-duration:150ms
    }
    .menu-hamburger__line{
      transition-duration:150ms
    }
    .menu-hamburger__line{
      transition-timing-function:cubic-bezier(0.4, 0.14, 0.3, 1)
    }
    .menu-hamburger__line {
      &:nth-child(2){
        transition-property:opacity;
        transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);
        transition-duration:150ms
      }
    }
    &.active {
      .menu-hamburger__line {
        &:nth-child(1) {
          transform: rotate(-45deg) translate3d(-1.125rem, 1.25rem, 0);
          transform-origin: top left;
          width: 2.5rem;
        }
        &:nth-child(2) {
          opacity: 0;
        }
        &:nth-child(3) {
          transform: rotate(45deg) translate3d(-1.125rem, -1.25rem, 0);
          transform-origin: bottom left;
          width: 2.5rem;
        }
      }
    }
  }
  .site-logo{
    --tw-text-opacity:1;
    color:rgb(255 255 255 / var(--tw-text-opacity))
  }
  .site-logo {
    svg{
      height:5.4rem
    }
    svg{
      width:auto
    }
    svg {
      *{
        transition-property:color, background-color, border-color, text-decoration-color, fill, stroke;
        transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);
        transition-duration:150ms
      }
      *{
        transition-duration:150ms
      }
      *{
        transition-timing-function:cubic-bezier(0.4, 0.14, 0.3, 1)
      }
      *{
        fill:#fff
      }
    }
  }
  .contact-cta{
    transition-property:opacity;
    transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);
    transition-duration:150ms
  }
  .contact-cta{
    transition-duration:240ms
  }
  .contact-cta{
    transition-timing-function:cubic-bezier(0.4, 0.14, 0.3, 1)
  }
  .contact-cta {
    opacity: 1;
    pointer-events: all;
    .arrow {
      height: 1.5rem;
    }
  }
  .menu-container{
    transition-property:clip-path,height,max-height;
    transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);
    transition-duration:150ms
  }
  .menu-container{
    transition-duration:400ms
  }
  .menu-container{
    transition-timing-function:cubic-bezier(0.4, 0.14, 0.3, 1)
  }
  .menu-container{
    height:auto
  }
  .menu-container {
    clip-path: inset(0 0 100% 0);
    pointer-events: none;
    .menu-list{
      transition-property:opacity;
      transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);
      transition-duration:150ms
    }
    .menu-list{
      transition-duration:150ms
    }
    .menu-list{
      transition-timing-function:cubic-bezier(0.4, 0.14, 0.3, 1)
    }
    .menu-list {
      /*opacity: 0;*/
    }
  }
  &.active {
    .menu-container {
      /*@apply translate-y-0 h-auto;*/
      /*@apply min-h-0 max-h-screen;*/
      clip-path: inset(0 0 0 0);
      pointer-events: all;
      .menu-list {
        /*opacity: 1;*/
      }
    }
    .contact-cta {
      opacity: 0;
      pointer-events: none;
    }
    .site-logo {
      svg *{
        fill:#93b4e4
      }
    }
  }
}

#site-footer {
  .email-form .submit{
    fill:#0a2240
  }
  .email-form .submit:hover{
    fill:#2368c4
  }
  .email-form .submit{
    transition-duration:150ms
  }
  .email-form .submit{
    transition-timing-function:cubic-bezier(0.4, 0.14, 0.3, 1)
  }
  .footer-menu-link{
    display:block
  }
  .footer-menu-link{
    font-weight:700
  }
  .footer-menu-link{
    line-height:1.5
  }
  .footer-menu-link{
    transition-duration:150ms
  }
  .footer-menu-link{
    transition-timing-function:cubic-bezier(0.4, 0.14, 0.3, 1)
  }
  .footer-menu-link{
    white-space:nowrap
  }
  .footer-menu-link{
    position:relative
  }
  .footer-menu-link{
    color:transparent
  }
  .footer-menu-link {
    &:hover {
      /*@apply text-skyBlue;*/
      /*@apply font-bold;*/
      &::after{
        font-weight:700
      }
      &::after{
        --tw-text-opacity:1;
        color:rgb(35 104 196 / var(--tw-text-opacity))
      }
    }
    &::after {
      content: attr(title);
    }
    &::after{
      --tw-text-opacity:1;
      color:rgb(10 34 64 / var(--tw-text-opacity))
    }
    &::after{
      position:absolute
    }
    &::after{
      top:0px
    }
    &::after{
      left:0px
    }
    &::after{
      height:100%
    }
    &::after{
      width:100%
    }
    &::after{
      display:block
    }
    &::after{
      font-size:1.5rem
    }
    &::after{
      font-weight:400
    }
    &::after{
      line-height:1.5
    }
    &::after{
      transition-property:color,font-weight;
      transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);
      transition-duration:150ms
    }
    &::after{
      transition-duration:70ms
    }
    &::after{
      transition-timing-function:cubic-bezier(0.4, 0.14, 0.3, 1)
    }
    &::after{
      white-space:nowrap
    }
  }
  .social-media {
    svg{
      fill:#0a2240
    }
    svg{
      transition-duration:150ms
    }
    svg{
      transition-timing-function:cubic-bezier(0.4, 0.14, 0.3, 1)
    }
    a:hover svg{
      fill:#2368c4
    }
  }
}

.last-of-type\:border-b-\[1px\]:last-of-type{
  border-bottom-width:1px
}

.hover\:bg-darkBlue:hover{
  --tw-bg-opacity:1;
  background-color:rgb(10 34 64 / var(--tw-bg-opacity))
}

.hover\:bg-lightBlue:hover{
  --tw-bg-opacity:1;
  background-color:rgb(147 180 228 / var(--tw-bg-opacity))
}

.hover\:text-darkBlue:hover{
  --tw-text-opacity:1;
  color:rgb(10 34 64 / var(--tw-text-opacity))
}

.hover\:text-skyBlue:hover{
  --tw-text-opacity:1;
  color:rgb(35 104 196 / var(--tw-text-opacity))
}

.group:hover .group-hover\:text-skyBlue{
  --tw-text-opacity:1;
  color:rgb(35 104 196 / var(--tw-text-opacity))
}
