@import url('https://fonts.googleapis.com/css2?family=Teachers:ital,wght@0,400..800;1,400..800&display=swap');


@font-face {
  font-family: "Teachers", sans-serif;
  font-weight: 400;
  font-style: normal;
}
@font-face {
  font-family: "Teachers", sans-serif;
  font-weight: 400;
  font-style: italic;
}
@font-face {
  font-family: "Teachers", sans-serif;
  font-weight: 500;
  font-style: normal;
}
@font-face {
  font-family: "Teachers", sans-serif;
  font-weight: 500;
  font-style: italic;
}
@font-face {
  font-family: "Teachers", sans-serif;
  font-weight: 600;
  font-style: normal;
}
@font-face {
  font-family: "Teachers", sans-serif;
  font-weight: 600;
  font-style: italic;
}
@font-face {
  font-family: "Teachers", sans-serif;
  font-weight: 700;
  font-style: normal;
}
@font-face {
  font-family: "Teachers", sans-serif;
  font-weight: 700;
  font-style: italic;
}
@font-face {
  font-family: "Teachers", sans-serif;
  font-weight: 800;
  font-style: normal;
}
@font-face {
  font-family: "Teachers", sans-serif;
  font-weight: 800;
  font-style: italic;
}
:root {
  --transition-time: .3s;
  --transition-timing-function: ease-in-out;
  --transition-base: var(--transition-time) var(--transition-timing-function);
  --container-gutter-x: 2.0rem;
  --material-symbols: Material Symbols Rounded;
  --root-zoom: 1;
  --viewport-factor: 1;
  --scroll-padding-top: var(--header-height);
  --header-height-padding: var(--header-height);
  --box-shadow-opacity: 50%;
  
  --swiper-pagination-bullet-inactive-color: var(--color-darkgray);
  --swiper-pagination-bullet-color: var(--color-primary);
  --swiper-pagination-bullet-color-rgb: var(--color-primary-rgb);
}
/*
:root:has(#header_website[data-use-top-state]) {
  --header-height-padding: 0rem;
}*/

@media (min-width:768px) {
  :root {
    --container-gutter-x: 2.0rem;
  }
}


:root {--color-primary: #DB0B34;
    --color-primary-rgb: 219, 11, 52;--color-secondary: ;
    --color-secondary-rgb: #null;--color-tertiary: ;
    --color-tertiary-rgb: #null;--color-base: #000000;
    --color-base-rgb: 0, 0, 0;--color-background: #ffffff;
    --color-background-rgb: 255, 255, 255;--color-black: #000000;
    --color-black-rgb: 0, 0, 0;--color-gray: #E0E0E0;
    --color-gray-rgb: 224, 224, 224;--color-darkgray: #707070;
    --color-darkgray-rgb: 112, 112, 112;--color-lightgray: #fefefe;
    --color-lightgray-rgb: 254, 254, 254;--color-white: #ffffff;
    --color-white-rgb: 255, 255, 255;--color-danger: #DB0B34;
    --color-danger-rgb: 219, 11, 52;--color-primary-100: 



























#f5bbc7
;
      --color-primary-100-rgb: 
245, 187, 199
;--color-primary-200: 



























#ef8fa2
;
      --color-primary-200-rgb: 
239, 143, 162
;--color-primary-300: 



























#e8637d
;
      --color-primary-300-rgb: 
232, 99, 125
;--color-primary-400: 



























#e23759
;
      --color-primary-400-rgb: 
226, 55, 89
;--color-primary-500: #DB0B34;
      --color-primary-500-rgb: 219, 11, 52;--color-primary-600: 



























#b4092b
;
      --color-primary-600-rgb: 
180, 9, 43
;--color-primary-700: 



























#8c0721
;
      --color-primary-700-rgb: 
140, 7, 33
;--color-primary-800: 



























#650518
;
      --color-primary-800-rgb: 
101, 5, 24
;--color-primary-900: 



























#3d030f
;
      --color-primary-900-rgb: 
61, 3, 15
;--color-secondary-100: 



























#b8b8b8
;
      --color-secondary-100-rgb: 
184, 184, 184
;--color-secondary-200: 



























#8a8a8a
;
      --color-secondary-200-rgb: 
138, 138, 138
;--color-secondary-300: 



























#5c5c5c
;
      --color-secondary-300-rgb: 
92, 92, 92
;--color-secondary-400: 



























#2e2e2e
;
      --color-secondary-400-rgb: 
46, 46, 46
;--color-secondary-500: ;
      --color-secondary-500-rgb: #null;--color-secondary-600: 



























#000000
;
      --color-secondary-600-rgb: 
0, 0, 0
;--color-secondary-700: 



























#000000
;
      --color-secondary-700-rgb: 
0, 0, 0
;--color-secondary-800: 



























#000000
;
      --color-secondary-800-rgb: 
0, 0, 0
;--color-secondary-900: 



























#000000
;
      --color-secondary-900-rgb: 
0, 0, 0
;--color-tertiary-100: 



























#b8b8b8
;
      --color-tertiary-100-rgb: 
184, 184, 184
;--color-tertiary-200: 



























#8a8a8a
;
      --color-tertiary-200-rgb: 
138, 138, 138
;--color-tertiary-300: 



























#5c5c5c
;
      --color-tertiary-300-rgb: 
92, 92, 92
;--color-tertiary-400: 



























#2e2e2e
;
      --color-tertiary-400-rgb: 
46, 46, 46
;--color-tertiary-500: ;
      --color-tertiary-500-rgb: #null;--color-tertiary-600: 



























#000000
;
      --color-tertiary-600-rgb: 
0, 0, 0
;--color-tertiary-700: 



























#000000
;
      --color-tertiary-700-rgb: 
0, 0, 0
;--color-tertiary-800: 



























#000000
;
      --color-tertiary-800-rgb: 
0, 0, 0
;--color-tertiary-900: 



























#000000
;
      --color-tertiary-900-rgb: 
0, 0, 0
;--color-base-100: 



























#b8b8b8
;
      --color-base-100-rgb: 
184, 184, 184
;--color-base-200: 



























#8a8a8a
;
      --color-base-200-rgb: 
138, 138, 138
;--color-base-300: 



























#5c5c5c
;
      --color-base-300-rgb: 
92, 92, 92
;--color-base-400: 



























#2e2e2e
;
      --color-base-400-rgb: 
46, 46, 46
;--color-base-500: #000000;
      --color-base-500-rgb: 0, 0, 0;--color-base-600: 



























#000000
;
      --color-base-600-rgb: 
0, 0, 0
;--color-base-700: 



























#000000
;
      --color-base-700-rgb: 
0, 0, 0
;--color-base-800: 



























#000000
;
      --color-base-800-rgb: 
0, 0, 0
;--color-base-900: 



























#000000
;
      --color-base-900-rgb: 
0, 0, 0
;--color-background-100: 



























#ffffff
;
      --color-background-100-rgb: 
255, 255, 255
;--color-background-200: 



























#ffffff
;
      --color-background-200-rgb: 
255, 255, 255
;--color-background-300: 



























#ffffff
;
      --color-background-300-rgb: 
255, 255, 255
;--color-background-400: 



























#ffffff
;
      --color-background-400-rgb: 
255, 255, 255
;--color-background-500: #ffffff;
      --color-background-500-rgb: 255, 255, 255;--color-background-600: 



























#d1d1d1
;
      --color-background-600-rgb: 
209, 209, 209
;--color-background-700: 



























#a3a3a3
;
      --color-background-700-rgb: 
163, 163, 163
;--color-background-800: 



























#757575
;
      --color-background-800-rgb: 
117, 117, 117
;--color-background-900: 



























#474747
;
      --color-background-900-rgb: 
71, 71, 71
;--color-black-100: 



























#b8b8b8
;
      --color-black-100-rgb: 
184, 184, 184
;--color-black-200: 



























#8a8a8a
;
      --color-black-200-rgb: 
138, 138, 138
;--color-black-300: 



























#5c5c5c
;
      --color-black-300-rgb: 
92, 92, 92
;--color-black-400: 



























#2e2e2e
;
      --color-black-400-rgb: 
46, 46, 46
;--color-black-500: #000000;
      --color-black-500-rgb: 0, 0, 0;--color-black-600: 



























#000000
;
      --color-black-600-rgb: 
0, 0, 0
;--color-black-700: 



























#000000
;
      --color-black-700-rgb: 
0, 0, 0
;--color-black-800: 



























#000000
;
      --color-black-800-rgb: 
0, 0, 0
;--color-black-900: 



























#000000
;
      --color-black-900-rgb: 
0, 0, 0
;--color-gray-100: 



























#f7f7f7
;
      --color-gray-100-rgb: 
247, 247, 247
;--color-gray-200: 



























#f1f1f1
;
      --color-gray-200-rgb: 
241, 241, 241
;--color-gray-300: 



























#ebebeb
;
      --color-gray-300-rgb: 
235, 235, 235
;--color-gray-400: 



























#e6e6e6
;
      --color-gray-400-rgb: 
230, 230, 230
;--color-gray-500: #E0E0E0;
      --color-gray-500-rgb: 224, 224, 224;--color-gray-600: 



























#b8b8b8
;
      --color-gray-600-rgb: 
184, 184, 184
;--color-gray-700: 



























#8f8f8f
;
      --color-gray-700-rgb: 
143, 143, 143
;--color-gray-800: 



























#676767
;
      --color-gray-800-rgb: 
103, 103, 103
;--color-gray-900: 



























#3f3f3f
;
      --color-gray-900-rgb: 
63, 63, 63
;--color-darkgray-100: 



























#d7d7d7
;
      --color-darkgray-100-rgb: 
215, 215, 215
;--color-darkgray-200: 



























#bebebe
;
      --color-darkgray-200-rgb: 
190, 190, 190
;--color-darkgray-300: 



























#a4a4a4
;
      --color-darkgray-300-rgb: 
164, 164, 164
;--color-darkgray-400: 



























#8a8a8a
;
      --color-darkgray-400-rgb: 
138, 138, 138
;--color-darkgray-500: #707070;
      --color-darkgray-500-rgb: 112, 112, 112;--color-darkgray-600: 



























#5c5c5c
;
      --color-darkgray-600-rgb: 
92, 92, 92
;--color-darkgray-700: 



























#484848
;
      --color-darkgray-700-rgb: 
72, 72, 72
;--color-darkgray-800: 



























#343434
;
      --color-darkgray-800-rgb: 
52, 52, 52
;--color-darkgray-900: 



























#1f1f1f
;
      --color-darkgray-900-rgb: 
31, 31, 31
;--color-lightgray-100: 



























#ffffff
;
      --color-lightgray-100-rgb: 
255, 255, 255
;--color-lightgray-200: 



























#ffffff
;
      --color-lightgray-200-rgb: 
255, 255, 255
;--color-lightgray-300: 



























#ffffff
;
      --color-lightgray-300-rgb: 
255, 255, 255
;--color-lightgray-400: 



























#fefefe
;
      --color-lightgray-400-rgb: 
254, 254, 254
;--color-lightgray-500: #fefefe;
      --color-lightgray-500-rgb: 254, 254, 254;--color-lightgray-600: 



























#d0d0d0
;
      --color-lightgray-600-rgb: 
208, 208, 208
;--color-lightgray-700: 



























#a3a3a3
;
      --color-lightgray-700-rgb: 
163, 163, 163
;--color-lightgray-800: 



























#757575
;
      --color-lightgray-800-rgb: 
117, 117, 117
;--color-lightgray-900: 



























#474747
;
      --color-lightgray-900-rgb: 
71, 71, 71
;--color-white-100: 



























#ffffff
;
      --color-white-100-rgb: 
255, 255, 255
;--color-white-200: 



























#ffffff
;
      --color-white-200-rgb: 
255, 255, 255
;--color-white-300: 



























#ffffff
;
      --color-white-300-rgb: 
255, 255, 255
;--color-white-400: 



























#ffffff
;
      --color-white-400-rgb: 
255, 255, 255
;--color-white-500: #ffffff;
      --color-white-500-rgb: 255, 255, 255;--color-white-600: 



























#d1d1d1
;
      --color-white-600-rgb: 
209, 209, 209
;--color-white-700: 



























#a3a3a3
;
      --color-white-700-rgb: 
163, 163, 163
;--color-white-800: 



























#757575
;
      --color-white-800-rgb: 
117, 117, 117
;--color-white-900: 



























#474747
;
      --color-white-900-rgb: 
71, 71, 71
;--color-danger-100: 



























#f5bbc7
;
      --color-danger-100-rgb: 
245, 187, 199
;--color-danger-200: 



























#ef8fa2
;
      --color-danger-200-rgb: 
239, 143, 162
;--color-danger-300: 



























#e8637d
;
      --color-danger-300-rgb: 
232, 99, 125
;--color-danger-400: 



























#e23759
;
      --color-danger-400-rgb: 
226, 55, 89
;--color-danger-500: #DB0B34;
      --color-danger-500-rgb: 219, 11, 52;--color-danger-600: 



























#b4092b
;
      --color-danger-600-rgb: 
180, 9, 43
;--color-danger-700: 



























#8c0721
;
      --color-danger-700-rgb: 
140, 7, 33
;--color-danger-800: 



























#650518
;
      --color-danger-800-rgb: 
101, 5, 24
;--color-danger-900: 



























#3d030f
;
      --color-danger-900-rgb: 
61, 3, 15
;}*, ::before, ::after {
  box-sizing: border-box;
}

*:focus-visible {
  outline-color: currentColor;
}

html {
  scroll-padding-top: var(--scroll-padding-top);
}

body {
  position: relative;
  padding-top: var(--header-height-padding);
}

main {
  background-color: var(--color-background);
}

.material-symbols-rounded.filled {
  font-variation-settings: 'FILL' 1;
}

.fa-brands, .fab {
  font: var(--fa-font-brands);
}

#footer_website_scrollspy {
  width: 100%;
  display: block;
  height: 0rem;
}

.focus-ring:focus-visible {
  --focus-ring-size: .6rem;
  --focus-ring-color: currentColor;
  outline: none;
  box-shadow: 0rem 0rem 0rem var(--focus-ring-size) var(--focus-ring-color);
}

.editor-infobox {
  border: .1rem solid var(--color-primary);
  border-radius: 1.5rem;
  padding: 2rem;
  background-color: var(--color-white);
  color: var(--color-base);
}:root {
  --container-max: 155.6rem;
}

.dnd-section {
  padding-left: 2.0rem;
  padding-right: 2.0rem;
  padding-top: 6.0rem;
  padding-bottom: 6.0rem;
}
.dnd-section > .row-fluid {
  margin-left: auto;
  margin-right: auto;
  max-width: 155.6rem;
}
.dnd-section .row-fluid {
  display: flex;
  flex-flow: row wrap;
  width: 100%;
}
.dnd-section .row-fluid > .widget-span {
  flex-basis: 100%;
  width: inherit;
}
.dnd-section .dnd-column {
  display: flex;
  flex-direction: column;
}

@media (min-width:768px) {
  .dnd-section {
    padding-left: 2.0rem;
    padding-right: 2.0rem;
    padding-top: 14.0rem;
    padding-bottom: 14.0rem;
  }
  .dnd-section .row-fluid {
    flex-wrap: nowrap;
  }
  .dnd-section .row-fluid > .span1 {
    flex-basis: 8.333333333333334%;
  }
  .dnd-section .row-fluid > .span2 {
    flex-basis: 16.666666666666668%;
  }
  .dnd-section .row-fluid > .span3 {
    flex-basis: 25.0%;
  }
  .dnd-section .row-fluid > .span4 {
    flex-basis: 33.333333333333336%;
  }
  .dnd-section .row-fluid > .span5 {
    flex-basis: 41.666666666666664%;
  }
  .dnd-section .row-fluid > .span6 {
    flex-basis: 50.0%;
  }
  .dnd-section .row-fluid > .span7 {
    flex-basis: 58.333333333333336%;
  }
  .dnd-section .row-fluid > .span8 {
    flex-basis: 66.66666666666667%;
  }
  .dnd-section .row-fluid > .span9 {
    flex-basis: 75.0%;
  }
  .dnd-section .row-fluid > .span10 {
    flex-basis: 83.33333333333333%;
  }
  .dnd-section .row-fluid > .span11 {
    flex-basis: 91.66666666666667%;
  }
  .dnd-section .row-fluid > .span12 {
    flex-basis: 100.0%;
  }
  
}

.container {
  padding-left: var(--container-gutter-x);
  padding-right: var(--container-gutter-x);
}

.container > .container-max {
  margin-left: auto;
  margin-right: auto;
  max-width: 155.6rem;
}

.container > .container-max-lg {
  margin-left: auto;
  margin-right: auto;
  max-width: 0rem;
}

.row {
  --row-gutter-x: 1rem;
  --row-gutter-y: 1rem;
  display: flex;
  flex-wrap: wrap;
  column-gap: var(--row-gutter-x);
  row-gap: var(--row-gutter-y);
  width: 100%;
}

.col {
    flex: 1 0 0%;
  }
  .col-auto {
    flex: 0 0 auto;
  }.col-1 {
      --column-span: 12.0;
      flex: 0 0 calc(100% / var(--column-span) - var(--row-gutter-x) / var(--column-span) * (var(--column-span) - 1));
    }.col-2 {
      --column-span: 6.0;
      flex: 0 0 calc(100% / var(--column-span) - var(--row-gutter-x) / var(--column-span) * (var(--column-span) - 1));
    }.col-3 {
      --column-span: 4.0;
      flex: 0 0 calc(100% / var(--column-span) - var(--row-gutter-x) / var(--column-span) * (var(--column-span) - 1));
    }.col-4 {
      --column-span: 3.0;
      flex: 0 0 calc(100% / var(--column-span) - var(--row-gutter-x) / var(--column-span) * (var(--column-span) - 1));
    }.col-5 {
      --column-span: 2.4;
      flex: 0 0 calc(100% / var(--column-span) - var(--row-gutter-x) / var(--column-span) * (var(--column-span) - 1));
    }.col-6 {
      --column-span: 2.0;
      flex: 0 0 calc(100% / var(--column-span) - var(--row-gutter-x) / var(--column-span) * (var(--column-span) - 1));
    }.col-7 {
      --column-span: 1.7142857142857142;
      flex: 0 0 calc(100% / var(--column-span) - var(--row-gutter-x) / var(--column-span) * (var(--column-span) - 1));
    }.col-8 {
      --column-span: 1.5;
      flex: 0 0 calc(100% / var(--column-span) - var(--row-gutter-x) / var(--column-span) * (var(--column-span) - 1));
    }.col-9 {
      --column-span: 1.3333333333333333;
      flex: 0 0 calc(100% / var(--column-span) - var(--row-gutter-x) / var(--column-span) * (var(--column-span) - 1));
    }.col-10 {
      --column-span: 1.2;
      flex: 0 0 calc(100% / var(--column-span) - var(--row-gutter-x) / var(--column-span) * (var(--column-span) - 1));
    }.col-11 {
      --column-span: 1.0909090909090908;
      flex: 0 0 calc(100% / var(--column-span) - var(--row-gutter-x) / var(--column-span) * (var(--column-span) - 1));
    }.col-12 {
      --column-span: 1.0;
      flex: 0 0 calc(100% / var(--column-span) - var(--row-gutter-x) / var(--column-span) * (var(--column-span) - 1));
    }

@media (max-width:768px) {
  .col-mb {
    flex: 1 0 0%;
  }
  .col-mb-auto {
    flex: 0 0 auto;
  }.col-mb-1 {
      --column-span: 12.0;
      flex: 0 0 calc(100% / var(--column-span) - var(--row-gutter-x) / var(--column-span) * (var(--column-span) - 1));
    }.col-mb-2 {
      --column-span: 6.0;
      flex: 0 0 calc(100% / var(--column-span) - var(--row-gutter-x) / var(--column-span) * (var(--column-span) - 1));
    }.col-mb-3 {
      --column-span: 4.0;
      flex: 0 0 calc(100% / var(--column-span) - var(--row-gutter-x) / var(--column-span) * (var(--column-span) - 1));
    }.col-mb-4 {
      --column-span: 3.0;
      flex: 0 0 calc(100% / var(--column-span) - var(--row-gutter-x) / var(--column-span) * (var(--column-span) - 1));
    }.col-mb-5 {
      --column-span: 2.4;
      flex: 0 0 calc(100% / var(--column-span) - var(--row-gutter-x) / var(--column-span) * (var(--column-span) - 1));
    }.col-mb-6 {
      --column-span: 2.0;
      flex: 0 0 calc(100% / var(--column-span) - var(--row-gutter-x) / var(--column-span) * (var(--column-span) - 1));
    }.col-mb-7 {
      --column-span: 1.7142857142857142;
      flex: 0 0 calc(100% / var(--column-span) - var(--row-gutter-x) / var(--column-span) * (var(--column-span) - 1));
    }.col-mb-8 {
      --column-span: 1.5;
      flex: 0 0 calc(100% / var(--column-span) - var(--row-gutter-x) / var(--column-span) * (var(--column-span) - 1));
    }.col-mb-9 {
      --column-span: 1.3333333333333333;
      flex: 0 0 calc(100% / var(--column-span) - var(--row-gutter-x) / var(--column-span) * (var(--column-span) - 1));
    }.col-mb-10 {
      --column-span: 1.2;
      flex: 0 0 calc(100% / var(--column-span) - var(--row-gutter-x) / var(--column-span) * (var(--column-span) - 1));
    }.col-mb-11 {
      --column-span: 1.0909090909090908;
      flex: 0 0 calc(100% / var(--column-span) - var(--row-gutter-x) / var(--column-span) * (var(--column-span) - 1));
    }.col-mb-12 {
      --column-span: 1.0;
      flex: 0 0 calc(100% / var(--column-span) - var(--row-gutter-x) / var(--column-span) * (var(--column-span) - 1));
    }
}

@media (min-width:768px) and (max-width:1200px) {
  .col-tb {
    flex: 1 0 0%;
  }
  .col-tb-auto {
    flex: 0 0 auto;
  }.col-tb-1 {
      --column-span: 12.0;
      flex: 0 0 calc(100% / var(--column-span) - var(--row-gutter-x) / var(--column-span) * (var(--column-span) - 1));
    }.col-tb-2 {
      --column-span: 6.0;
      flex: 0 0 calc(100% / var(--column-span) - var(--row-gutter-x) / var(--column-span) * (var(--column-span) - 1));
    }.col-tb-3 {
      --column-span: 4.0;
      flex: 0 0 calc(100% / var(--column-span) - var(--row-gutter-x) / var(--column-span) * (var(--column-span) - 1));
    }.col-tb-4 {
      --column-span: 3.0;
      flex: 0 0 calc(100% / var(--column-span) - var(--row-gutter-x) / var(--column-span) * (var(--column-span) - 1));
    }.col-tb-5 {
      --column-span: 2.4;
      flex: 0 0 calc(100% / var(--column-span) - var(--row-gutter-x) / var(--column-span) * (var(--column-span) - 1));
    }.col-tb-6 {
      --column-span: 2.0;
      flex: 0 0 calc(100% / var(--column-span) - var(--row-gutter-x) / var(--column-span) * (var(--column-span) - 1));
    }.col-tb-7 {
      --column-span: 1.7142857142857142;
      flex: 0 0 calc(100% / var(--column-span) - var(--row-gutter-x) / var(--column-span) * (var(--column-span) - 1));
    }.col-tb-8 {
      --column-span: 1.5;
      flex: 0 0 calc(100% / var(--column-span) - var(--row-gutter-x) / var(--column-span) * (var(--column-span) - 1));
    }.col-tb-9 {
      --column-span: 1.3333333333333333;
      flex: 0 0 calc(100% / var(--column-span) - var(--row-gutter-x) / var(--column-span) * (var(--column-span) - 1));
    }.col-tb-10 {
      --column-span: 1.2;
      flex: 0 0 calc(100% / var(--column-span) - var(--row-gutter-x) / var(--column-span) * (var(--column-span) - 1));
    }.col-tb-11 {
      --column-span: 1.0909090909090908;
      flex: 0 0 calc(100% / var(--column-span) - var(--row-gutter-x) / var(--column-span) * (var(--column-span) - 1));
    }.col-tb-12 {
      --column-span: 1.0;
      flex: 0 0 calc(100% / var(--column-span) - var(--row-gutter-x) / var(--column-span) * (var(--column-span) - 1));
    }
}

@media (min-width:1200px) {
  .col-ds {
    flex: 1 0 0%;
  }
  .col-ds-auto {
    flex: 0 0 auto;
  }.col-ds-1 {
      --column-span: 12.0;
      flex: 0 0 calc(100% / var(--column-span) - var(--row-gutter-x) / var(--column-span) * (var(--column-span) - 1));
    }.col-ds-2 {
      --column-span: 6.0;
      flex: 0 0 calc(100% / var(--column-span) - var(--row-gutter-x) / var(--column-span) * (var(--column-span) - 1));
    }.col-ds-3 {
      --column-span: 4.0;
      flex: 0 0 calc(100% / var(--column-span) - var(--row-gutter-x) / var(--column-span) * (var(--column-span) - 1));
    }.col-ds-4 {
      --column-span: 3.0;
      flex: 0 0 calc(100% / var(--column-span) - var(--row-gutter-x) / var(--column-span) * (var(--column-span) - 1));
    }.col-ds-5 {
      --column-span: 2.4;
      flex: 0 0 calc(100% / var(--column-span) - var(--row-gutter-x) / var(--column-span) * (var(--column-span) - 1));
    }.col-ds-6 {
      --column-span: 2.0;
      flex: 0 0 calc(100% / var(--column-span) - var(--row-gutter-x) / var(--column-span) * (var(--column-span) - 1));
    }.col-ds-7 {
      --column-span: 1.7142857142857142;
      flex: 0 0 calc(100% / var(--column-span) - var(--row-gutter-x) / var(--column-span) * (var(--column-span) - 1));
    }.col-ds-8 {
      --column-span: 1.5;
      flex: 0 0 calc(100% / var(--column-span) - var(--row-gutter-x) / var(--column-span) * (var(--column-span) - 1));
    }.col-ds-9 {
      --column-span: 1.3333333333333333;
      flex: 0 0 calc(100% / var(--column-span) - var(--row-gutter-x) / var(--column-span) * (var(--column-span) - 1));
    }.col-ds-10 {
      --column-span: 1.2;
      flex: 0 0 calc(100% / var(--column-span) - var(--row-gutter-x) / var(--column-span) * (var(--column-span) - 1));
    }.col-ds-11 {
      --column-span: 1.0909090909090908;
      flex: 0 0 calc(100% / var(--column-span) - var(--row-gutter-x) / var(--column-span) * (var(--column-span) - 1));
    }.col-ds-12 {
      --column-span: 1.0;
      flex: 0 0 calc(100% / var(--column-span) - var(--row-gutter-x) / var(--column-span) * (var(--column-span) - 1));
    }
}.modal {
  position: fixed;
  /*top: 0;*/
  left: 0;
  z-index: 5;
  display: none;
  width: 100%;
  height: 100%;
  overflow-x: hidden;
  overflow-y: auto;
  outline: 0;
}
.modal-dialog {
  position: relative;
  width: auto;
  margin-right: auto;
  margin-left: auto;
  max-width: var(--modal-width, 50rem);
  pointer-events: none;
}
.modal.fade {
  transform: translateY(-100%);
  transition: transform var(--transition-base);
}
@media (prefers-reduced-motion:reduce) {
  .modal.fade {
    transition: none
  }
}
.modal.show {
  transform: translateY(0);
}
.modal-dialog.modal-fullscreen {
  width: calc(100vw*var(--viewport-factor));
  max-width: unset;
  min-height: 100%;
  margin: 0;
}
.modal-dialog.modal-fullwidth {
  width: calc(100vw*var(--viewport-factor));
  max-width: unset;
  margin: 0;
}
.modal-content {
  pointer-events: auto;
}.offcanvas-backdrop {
  position: absolute;
  inset: 0;
  z-index: 4;
  background-color: rgba(var(--color-secondary-rgb), 44%);
  width: 100%;
  height: 100%;
  transition: opacity var(--transition-base), -webkit-backdrop-filter var(--transition-base), backdrop-filter var(--transition-base);
}

.offcanvas-backdrop.fade {
  opacity: 0;
  -webkit-backdrop-filter: blur(0rem);
  backdrop-filter: blur(0rem);
}

.offcanvas-backdrop.show {
  opacity: 1;
  -webkit-backdrop-filter: blur(8rem);
  backdrop-filter: blur(8rem);
}

.offcanvas {
  --offcanvas-zindex: 5;
  --offcanvas-width: 73.3rem;
  --offcanvas-height: 30vh;
  --offcanvas-padding-x: var(--container-gutter-x);
  --offcanvas-padding-y: var(--container-gutter-x);
  --offcanvas-text-color: var(--color-base);
  --offcanvas-background-color: var(--color-white);
  --offcanvas-transition: transform var(--transition-base);
}

.offcanvas {
  position: fixed;
  bottom: 0;
  z-index: var(--offcanvas-zindex);
  display: flex;
  flex-direction: column;
  max-width: 100%;
  background-color: var(--offcanvas-background-color);
  background-clip: padding-box;
  color: var(--offcanvas-text-color);
  outline: 0;
  transition: var(--offcanvas-transition);
  visibility: hidden;
}

.offcanvas.offcanvas-start {
  top: 0;
  left: 0;
  width: var(--offcanvas-width);
  transform: translateX(-100%);
}

.offcanvas.offcanvas-end {
  top: 0;
  right: 0;
  width: var(--offcanvas-width);
  transform: translateX(100%);
}

.offcanvas.show:not(.hiding),
.offcanvas.showing {
  transform: none;
}

.offcanvas.hiding,
.offcanvas.show,
.offcanvas.showing {
  visibility: visible;
}

.offcanvas-header {
  padding: var(--offcanvas-padding-y) var(--offcanvas-padding-x);
}

.offcanvas-body {
  overflow-y: auto;
  padding: calc(var(--offcanvas-padding-y)*2) var(--offcanvas-padding-y) var(--offcanvas-padding-x);
}:root {
--swiper-wrapper-transition-timing-function
}
.swiper {
  margin-left: auto;
  margin-right: auto;
  position: relative;
  overflow: hidden;
  list-style: none;
  padding: 0;
  z-index: 1;
  display: block
}

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

.swiper-wrapper {
  position: relative;
  width: 100%;
  height: 100%;
  z-index: 1;
  display: flex;
  transition-property: transform;
  transition-timing-function: var(--swiper-wrapper-transition-timing-function, initial);
  box-sizing: content-box
}
.swiper-android .swiper-slide,
.swiper-ios .swiper-slide,
.swiper-wrapper {
  transform: translate3d(0px, 0, 0)
}

.swiper-horizontal {
  touch-action: pan-y
}

.swiper-vertical {
  touch-action: pan-x
}

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

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

.swiper-autoheight,
.swiper-autoheight .swiper-slide {
  height: auto
}

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

.swiper-backface-hidden .swiper-slide {
  transform: translateZ(0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden
}

.swiper-pagination-bullets {
  display: flex;
  gap: 1.4rem;
}

.swiper-pagination-horizontal {
  justify-content: center;
  /*position: absolute;*/
  justify-content: center;
  bottom: 3rem;
  width: 100%;
  z-index:2;
}

.swiper-pagination-bullet {
  border: .1rem solid var(--swiper-pagination-bullet-inactive-color);
  background-color: #fff;
  border-radius: 50%;
  width: 2rem;
  height: 2rem;
  cursor: pointer;
}

.swiper-pagination-bullet-active {
  background-color: var(--swiper-pagination-bullet-color);
}

.swiper-pagination-bullet:focus-visible {
  outline: none;
  box-shadow: 0rem 0rem 0rem .4rem rgba(var(--swiper-pagination-bullet-color-rgb), var(--box-shadow-opacity));
}

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

.swiper-navigation .btn-next, 
.swiper-navigation .btn-prev {
  position: absolute;
  color: var(--color-darkgray);
  top: 50%;
  transform: translateY(-50%);
  z-index: 2
}  
.swiper-navigation .btn-prev {
  left: calc(var(--container-gutter-x) - 1rem);
}

.swiper-navigation .btn-next {
  right: calc(var(--container-gutter-x) - 1rem);
}
@media (any-hover: hover) {
  .swiper-navigation .btn-prev:hover {
    transform: translate(-20%, -50%);
  }
  .swiper-navigation .btn-next:hover {
    transform: translate(20%, -50%);
  }
}
/*
.swiper-navigation {
  position: absolute;
  color: var(--color-darkgray);
  top: 0;
  z-index: 2;
  width:100%;
  height:100%;
  display:flex;
  align-items:center;
  justify-content: space-between;
}  
.swiper-navigation .btn-prev {
  margin-left: calc(var(--container-gutter-x) - 1rem);
}

.swiper-navigation .btn-next {
  margin-right: calc(var(--container-gutter-x) - 1rem);
}
@media (any-hover: hover) {
  .swiper-navigation .btn-prev:hover {
    transform: translateX(-20%);
  }
  .swiper-navigation .btn-next:hover {
    transform: translateX(20%);
  }
}
*/
.swiper-vertical .swiper-navigation {
  position: absolute;
  color: var(--color-darkgray);
  top: 0;
  z-index: 2;
  width:100%;
  height:100%;
  display:flex;
  flex-direction: column;
  align-items:center;
  justify-content: space-between;
}  
.swiper-vertical .swiper-navigation .btn-prev,
.swiper-vertical .swiper-navigation .btn-next {
  position:unset; 
  transform: unset;
}
.swiper-vertical .swiper-navigation .btn-next:after {
  margin: 0;
  transform: rotate(90deg) translateX(1px);
}
.swiper-vertical .swiper-navigation .btn-prev:after {  
  margin: 0;
  transform: rotate(90deg) translateX(5px);
}
.swiper-vertical .swiper-navigation .btn-prev:hover {
    transform: translateY(10%);
}
.swiper-vertical .swiper-navigation .btn-next:hover {
    transform: translateY(-10%);
}html {
  font-family: "Hanken Grotesk", sans-serif;
  font-size: 10px;
  text-wrap: pretty;
  color: var(--color-base);;
}

body {
  font-size: 1.6rem;
  
}

::selection {
  color: var(--color-white);;
  background-color: var(--color-primary);;
}

h1, h2, h3, h4, h5, h6,
.h1, .h2, .h3, .h4, .h5, .h6 {
  margin: 0;
  margin-top: -0.15em;
  font-family: 'Teachers', sans-serif;
}

p {
  margin-top: 0.8em;
  margin-bottom: 0.8em;
}

p:first-child {
  margin-top: 0;
}

p:last-child {
  margin-bottom: 0;
}

ol:first-child,
ul:first-child {
  margin-top: 0;
}

ol:last-child,
ul:last-child {
  margin-bottom: 0;
}

a {
  color: var(--color-primary);;
}

h1,
.h1,
.h1-desktop,
.h1-mobile {
  font-size: clamp(4.2rem, 4.2rem + calc(2.333333333333333vw*var(--viewport-factor)), 7.0rem); 
  font-weight: 700;
  font-family: 'Teachers', sans-serif;
}
h2,
.h2,
.h2-desktop,
.h2-mobile  {
  font-size: clamp(2.9400000000000004rem, 2.9400000000000004rem + calc(1.633333333333333vw*var(--viewport-factor)), 4.9rem);
  font-weight: 700;
  font-family: 'Teachers', sans-serif;
}
h3,
.h3,
.h3-desktop,
.h3-mobile  {
  font-size: clamp(1.6799999999999997rem, 1.6799999999999997rem + calc(0.9333333333333335vw*var(--viewport-factor)), 2.8rem);
  font-weight: 700;
  font-family: 'Teachers', sans-serif;
}
h4,
.h4,
.h4-desktop,
.h4-mobile  {
  font-size: clamp(1.8rem, 1.8rem + calc(1.0vw*var(--viewport-factor)), 3.0rem);
  font-weight: 500;
  font-family: 'Teachers', sans-serif;
}
h5,
.h5,
.h5-desktop,
.h5-mobile  {
  font-size: clamp(1.56rem, 1.56rem + calc(0.8666666666666666vw*var(--viewport-factor)), 2.6rem);
  font-weight: 300;
  font-family: 'Teachers', sans-serif;
}
.base,
.base-desktop,
.base-mobile {
  font-size: 1.6rem;
  line-height: 1.4;
}
.b1,
.b1-desktop,
.b1-mobile {
  font-size: clamp(1.08rem, 1.08rem + calc(0.6vw*var(--viewport-factor)), 1.8rem);
  line-height: 1.4;
}
.b2,
.b2-desktop,
.b2-mobile {
  font-size: clamp(1.5rem, 1.5rem + calc(0.8333333333333334vw*var(--viewport-factor)), 2.5rem);
  line-height: 1.4;
}
.b3,
.b3-desktop,
.b3-mobile {
  font-size: clamp(2.16rem, 2.16rem + calc(1.2vw*var(--viewport-factor)), 3.6rem);
  line-height: 1.4;
}
.b4,
.b4-desktop,
.b4-mobile {
  font-size: clamp(3.0rem, 3.0rem + calc(1.6666666666666667vw*var(--viewport-factor)), 5.0rem);
  font-weight: 300;
  line-height: 1.4;
}
.b5,
.b5-desktop,
.b5-mobile {
  font-size: clamp(4.2rem, 4.2rem + calc(2.333333333333333vw*var(--viewport-factor)), 7.0rem);
  font-weight: 100;
  line-height: 1.4;
}


li:not(:last-child) {
  margin-bottom: 0.6em;
}

.fw-medium {
  font-weight: 500;
}
.fw-semibold {
  font-weight: 600;
}
.fw-bold {
  font-weight: 700;
}
.fw-extrabold {
  font-weight: 800;
}
.fw-black {
  font-weight: 900;
}.animate-img-load {
  position: relative;
}
.animate-img-load:after {
  content: '';
  position: absolute;
  inset: 0;
  transform: scaleY(1);
  transition: transform .5s var(--transition-timing-function);
  transform-origin: top center;
}
.animate-img-load.animated:after {
  transform: scaleY(0);
}
/* animation zoom in */
.animate-img-load.zoom-in img {
  transform: scale(0);
  transition: transform .5s var(--transition-timing-function);
}
.animate-img-load.zoom-in.animated img {
  transform: scale(1);
}
.animate-img-load.zoom-in:after {
  display:none;
}


.btn {
  overflow: hidden;
  z-index: 0;
  display: var(--btn-display, inline-block);
  margin: var(--btn-margin, 0);
  border-color: var(--btn-border-color);
  border-width: var(--btn-border-width);
  border-style: var(--btn-border-style);
  border-radius: var(--btn-border-radius);
  width: var(--btn-width, auto);
  height: var(--btn-height, auto);
  padding: var(--btn-padding);
  background-color: var(--btn-background);
  color: var(--btn-color);
  font-family: var(--btn-font-size);
  font-style: var(--btn-font-size);
  font-weight: var(--btn-font-weight);
  font-size: var(--btn-font-size);
  text-align: var(--btn-text-align, center);
  text-decoration: var(--btn-text-decoration, none);
  text-transform: var(--btn-text-transform, initial);
  letter-spacing: var(--btn-letter-spacing, 0);
  line-height: 1;
  cursor: pointer;
  transition: all var(--transition-base);
}
.btn:disabled,
.btn[disabled],
.btn[disabled=disabled],
.btn.disabled {
  cursor: not-allowed;
  pointer-events: none;
}
.btn:focus-visible {
  outline: none;
  box-shadow: 0 0 0 var(--btn-outline-width, .6rem) rgba(var(--btn-outline-color-rgb, currentColor), var(--box-shadow-opacity));
}



.btn {
  --btn-padding: clamp(1.2rem, 0.3766rem + 1.2987vw, 2.5rem) clamp(2rem, 0.7532rem + 2.5974vw, 4rem);
  --btn-border-width: .1rem;
  --btn-border-style: solid;
  --btn-border-radius: 4.5rem;
  --btn-font-size: clamp(1.6rem, 1.226rem + 0.7792vw, 2.2rem);
  --btn-font-weight: 700;
  --btn-text-transform: uppercase;
}



.btn-primary {
  --btn-border-color: var(--color-primary);
  --btn-background: var(--color-primary);
  --btn-color: var(--color-white);
}
.btn-primary:hover {
  --btn-border-color: var(--color-primary);
  --btn-background: var(--color-white);
  --btn-color: var(--color-primary);
}
.btn-primary-alt {
  --btn-border-color: var(--color-primary);
  --btn-background: transparent;
  --btn-color: var(--color-primary);
}
.btn-primary-alt:hover {
  --btn-border-color: var(--color-primary);
  --btn-background: var(--color-white);
  --btn-color: var(--color-primary);
}

.btn-outline {
  --btn-border-color: var(--color-darkgray);
  --btn-background: var(--color-white);
  --btn-color: var(--color-black);
}
.btn-outline:hover {
  --btn-border-color: var(--color-darkgray);
  --btn-background: var(--color-gray);
  --btn-color: var(--color-black);
}
.btn-outline.active {
  --btn-border-color: var(--color-gray);
  --btn-background: var(--color-gray);
  --btn-color: var(--color-black);
}
.btn-outline.active:hover {
  --btn-border-color: var(--color-darkgray);
  --btn-background: var(--color-darkgray);
  --btn-color: var(--color-white);
}
.btn-gray {
  --btn-border-color: var(--color-gray);
  --btn-background: var(--color-gray);
  --btn-color: var(--color-black);
}
.btn-gray:hover {
  --btn-border-color: var(--color-darkgray);
  --btn-background: var(--color-darkgray);
  --btn-color: var(--color-white);
}
.btn-white {
  --btn-border-color: var(--color-white);
  --btn-background: var(--color-white);
  --btn-color: var(--color-primary);
}
.btn-white:hover,
.btn-white:focus-visible {
  --btn-background: var(--color-primary);
  --btn-color: var(--color-white);
  --btn-outline-color-rgb:  var(--color-primary-500-rgb);
}
.btn-white-alt {
  --btn-border-color: var(--color-white);
  --btn-background: transparent;
  --btn-color: var(--color-white);
}
.btn-white-alt:hover,
.btn-white-alt:focus-visible {
  --btn-border-color: var(--color-black);
  --btn-background: var(--color-black);
  --btn-color: var(--color-white);
  --btn-outline-color-rgb:  var(--color-black-500-rgb);
}.btn:has(.icon) {
  --btn-display: flex;
  align-items: center;
}
.btn .icon {
  display: inline;
  font-size: 1.4em;
  font-weight: 200;
  line-height: 0.7;
  vertical-align: middle;
  transition: transform var(--transition-base);
  user-select: none;
}
.btn .icon.left {
  margin-right: .2em;
}
.btn .icon.right {
  order: 1;
  margin-left: .2em;
}
.btn .icon.hs_cos_wrapper_type_icon svg {
  width: 0.7em;
  fill: currentColor;
}
.btn:hover .icon.north {
    transform: translateY(-20%);
  }.btn:hover .icon.south {
    transform: translateY(20%);
  }.btn:hover .icon.west {
    transform: translateX(-20%);
  }.btn:hover .icon.east {
    transform: translateX(20%);
  }.btn:hover .icon.next {
    transform: translateX(20%);
  }.btn:hover .icon.prev {
    transform: translateX(-20%);
  }.btn:hover .icon.download {
    transform: translateY(20%);
  }.btn:hover .icon.phone {
    transform: rotate(20deg);
  }.btn:hover .icon.email {
    transform: translateY(-20%);
  }.btn:hover .icon.calendar {
    transform: translateY(-20%);
  }.btn:hover .icon.schedule {
    transform: translateY(-20%);
  }.btn:hover .icon.star {
    transform: translateY(-20%);
  }.btn:hover .icon.heart {
    transform: translateY(-20%);
  }.btn:hover .icon.search {
    transform: translateY(-20%);
  }
.btn:hover .icon.instagram {
    transform: translateY(-20%);
  }


.btn-close {
  cursor: pointer;
}
.btn-close-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  border: none;
  padding: 1rem;
  background: transparent;
  line-height: 1;
}
.btn-close-icon::after {
  content: '\e5cd';
  font-family: var(--material-symbols);
  font-size: 2.8rem;
  line-height: 1;
  transition: transform var(--transition-base);
}
@media (any-hover: hover) {
  .btn-close-icon:hover::after {
    transform: rotate(90deg);
  }
}


.btn-prev,
.btn-next {
  display: flex;
  align-items: center;
  justify-content: center;
  border: none;
  padding: 1rem;
  background: transparent;
  line-height: 1;
  color: var(--color-primary);
  cursor: pointer;
  transition: transform var(--transition-base);
  font-weight:600;
}
.btn-prev::after,
.btn-next::after {
  font-family: var(--material-symbols);
  font-size: 3rem;
  line-height: 1;
}

.btn-prev::after {
  content: '\e5e0';
}
.btn-next::after {
  content: '\e5e1';
}
@media (any-hover: hover) {
  .btn-prev:hover {
    transform: translateX(-20%);
  }
  .btn-next:hover {
    transform: translateX(20%);
  }
}

/*****************/
/* cookie botton */
/*****************/
.cookie-button {
  position:absolute;
  bottom:0;
  left:0;
  width:100%;
  text-align:center;
  margin-top:100px;
  padding:30px;
}
.cookie-button #hs_show_banner_button{
  padding: 10px 30px;
  font-weight: 500;
  font-size:1.8rem;
}.dropdown,
.dropdown-toggle-wrapper {
  --dropdown-border-radius: 2.4rem;
  --dropdown-toggle-padding-x: 2rem;
  --dropdown-toggle-padding-y: 1.5rem;
  --dropdown-toggle-font-size: 1.6rem;
  --dropdown-box-shadow: 0rem 0rem 0rem .6rem rgba(var(--color-secondary-rgb), var(--box-shadow-opacity));
  position: relative;
}
.dropdown-toggle {
  display: flex;
  gap: 4rem;
  border: .1rem solid var(--color-secondary);
  border-radius: var(--dropdown-border-radius);
  background-color: var(--color-white);
  padding: var(--dropdown-toggle-padding-y) var(--dropdown-toggle-padding-x);
  font-size: var(--dropdown-toggle-font-size);
  font-weight: 100;
  text-transform: uppercase;
  color: var(--color-base);
  line-height: 1;
  cursor: pointer;
  appearance: none;
}
select.dropdown-toggle {
  padding-inline-end: calc(2rem + 1.8em);
}
.dropdown-toggle:focus-visible {
  outline: none;
  box-shadow: var(--dropdown-box-shadow);
}
.dropdown-toggle.show {
  border-bottom-color: transparent;
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0;
}
.dropdown-toggle::after,
.dropdown-toggle-wrapper:has(select.dropdown-toggle)::after {
  content: '\e313';
  font-family: var(--material-symbols);
  font-size: 1.8em;
  line-height: 0.6;
  vertical-align: middle;
  transform: rotate(0deg);
  transition: transform var(--transition-base);
}
.dropdown-toggle-wrapper:has(select.dropdown-toggle) {
  position: relative;
}
.dropdown-toggle-wrapper:has(select.dropdown-toggle)::after {
  position: absolute;
  top: 50%;
  inset-inline-end: 2rem;
  transform: translateY(-50%) rotate(0deg);
}
.dropdown-toggle.show::after {
  transform: rotate(180deg);
}
.dropdown:has(.dropdown-menu.show) .dropdown-toggle:focus-visible {
  box-shadow: none;
}
.dropdown-menu {
  position: absolute;
  top: 100%;
  left: 0;
  z-index: 2;
  display: none;
  overflow: hidden;
  margin: 0;
  border: .1rem solid var(--color-secondary);
  border-top: none;
  border-radius: var(--dropdown-border-radius);
  border-top-left-radius: 0;
  border-top-right-radius: 0;
  width: 100%;
  padding: 0;
  background-color: var(--color-white);
  list-style: none;
}
.dropdown-menu.show {
  display: block;
}
.dropdown:has(.dropdown-toggle:focus-visible) .dropdown-menu {
  overflow: visible;
}
.dropdown:has(.dropdown-menu.show):has(.dropdown-toggle:focus-visible) .dropdown-menu::after {
  content: '';
  position: absolute;
  top: calc(-1*(var(--dropdown-toggle-font-size) + var(--dropdown-toggle-padding-y)*2 + .2rem));
  left: 0;
  border-radius: var(--dropdown-border-radius);
  width: 100%;
  height: calc(100% + var(--dropdown-toggle-font-size) + var(--dropdown-toggle-padding-y)*2 + .2rem);
  box-shadow: var(--dropdown-box-shadow);
}
.dropdown-menu li {
  margin: 0;
}
.dropdown-item {
  display: block;
  border: none;
  padding: 1rem 2rem;
  background: transparent;
  width: 100%;
  font-size: 1.6rem;
  font-weight: 100;
  text-align: start;
  text-transform: uppercase;
  text-decoration: none;
  color: var(--color-base);
  cursor: pointer;
}
@media (any-hover: hover) {
  .dropdown-item:hover {
    background-color: var(--color-secondary-200);
  }
}
.dropdown-item:focus-visible {
  outline: none;
  background-color: var(--color-secondary-200);
}.collapse:not(.show) {
  display: none;
}
.collapsing {
  height: 0;
  overflow: hidden;
  transition: height .35s ease;
}.hs-form {
  --form-input-accent-color: var(--color-primary);
  --form-input-border-color: var(--color-black-100);
  --form-input-border-style: solid;
  --form-input-border-width: .1rem;
  --form-input-border-radius: .2rem;
  --form-input-padding: 1rem;
  --form-input-background-color: transparent;
  --form-input-font-size: 1.6rem;
  --form-input-font-weight: 400;
  --form-input-focus-border-color: var(--color-primary);
  --form-input-focus-shadow-color: rgba(var(--color-primary-500-rgb), 50%);
  --form-input-checkbox-padding: 1rem;
  --form-label-font-size: 1.6rem;
  --form-input-text-color: var(--color-darkgray);
  --form-label-font-weight: 400;
  --form-label-text-color: var(--color-darkgray);
  --form-legal-font-size: 1.4rem;
  --form-legal-font-weight: 400;
  --form-legal-text-color: var(--color-base);
  --form-error-font-size: 1.6rem;
  --form-error-font-weight: 400;
  --form-error-text-color: var(--color-danger);
}

.hs-form {
  display: flex;
  flex-direction: column;
  row-gap: 1.8rem;
}
.hs-form fieldset {
  max-width:unset !important;
}
.hs-form input:not([type=submit]):not([type=reset]),
.hs-form select,
.hs-form textarea {
  margin: var(--form-input-margin);
  border-width: var(--form-input-border-width);
  border-style: var(--form-input-border-style);
  border-color: var(--form-input-border-color);
  border-radius: var(--form-input-border-radius);
  padding: var(--form-input-padding);
  background-color: var(--form-input-background-color);
  font-family: inherit;
  font-size: var(--form-input-font-size);
  font-weight: var(--form-input-font-weight);
  color: var(--form-input-text-color);
}

.hs-form input:not([type=checkbox]):not([type=radio]):not([type=submit]):not([type=reset]),
.hs-form select,
.hs-form textarea {
    width: 100%!important
}

.hs-form input:not([type=submit]):not([type=reset]):focus-visible,
.hs-form select:focus-visible,
.hs-form textarea:focus-visible {
  outline: none;
  border-color: var(--form-input-focus-border-color);
  box-shadow: 0rem 0rem 0rem .6rem var(--form-input-focus-shadow-color);
}

.hs-form input:not([type=submit]):not([type=reset])::placeholder,
.hs-form select::placeholder,
.hs-form textarea::placeholder {
  color: var(--form-input-text-color);
}

.hs-form input[type="checkbox"] {
  appearance: none;
  padding: var(--form-input-checkbox-padding) !important;
}

.hs-form input[type="checkbox"]:checked {
  background-color: var(--form-input-accent-color) !important;
}

.hs-form .hs-fieldtype-select .input:has(select) {
  position: relative;
}

.hs-form .hs-fieldtype-select .input:has(select)::after {
  content: '\e313';
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 2rem;
  font-family: var(--material-symbols);
  font-size: var(--form-input-font-size);
  color: var(--form-input-text-color);
  
}

.hs-form select {
  -webkit-appearance:none;
}

.hs-form select option {
  color: initial;
  font-weight: 200;
}

.hs-form .hs-form-field {
  display: flex;
  flex-flow: column nowrap;
  column-gap: 4rem;
  row-gap: 1rem;
}

.hs-form .hs-form-booleancheckbox-display {
  display: flex;
  align-items: center;
}

.hs-form .hs-form-booleancheckbox-display > span {
  margin-left: 0;
}

.hs-form label {
  font-size: var(--form-label-font-size);
  font-weight: var(--form-label-font-weight);
  color: var(--form-label-text-color);
}

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

.hs-form .hs-error-msg {
  font-size: var(--form-error-font-size);
  font-weight: var(--form-error-font-weight);
  color: var(--form-error-text-color);
}

.hs-form .legal-consent-container {
  display: flex;
  flex-direction: column;
  row-gap: 1rem;
}

.hs-form .legal-consent-container,
.hs-form .legal-consent-container label {
  font-size: var(--form-legal-font-size);
  font-weight: var(--form-legal-font-weight);
  color: var(--form-legal-text-color);
}

.hs-form .legal-consent-container .field.hs-form-field {
  margin-bottom: 0;
}

.hs-form .hs-submit .actions {
  display: flex;
  justify-content: flex-end;
}
.hs-form .hs_recaptcha .grecaptcha-badge {
  width: unset !important;
  box-shadow: unset !important;
} 
.hs-form .hs_recaptcha .grecaptcha-logo iframe {
  width: 100% !important;
  height: unset !important;
}

@media (min-width:768px) {
  .hs-form .hs-form-field {
    flex-flow: row wrap;
  }
  .hs-form .hs-form-field label:not(.hs-error-msg) {
    flex: 0 1 12rem;
  }
  .hs-form .hs-form-field .input {
    flex: 1;
  }
  .hs-form .hs-form-field .hs-error-msgs {
    width: 100%;
  }
  .hs-form .hs-form-field:not(.hs-fieldtype-booleancheckbox) .hs-error-msgs,
  .hs-form .legal-consent-container,
  .hs-form .hs-recaptcha {
    margin-left: 16rem;
  }
}
@media (max-width:768px) {
  .hs-form {
    --form-input-padding: 1.4rem;
    --form-input-font-size: 1.6rem;
    --form-label-font-size: 1.8rem;
  }
}:root {
  --header-height: calc(clamp(3rem, calc(3vw*var(--viewport-factor)), 5.4rem) + 3rem);
  /*--header-label-width: 22%;*/
  --header-label-width: 510px;
  --header-label-max-width: 100%;
  --header-label-bgcolor: var(--color-primary);
  --header-label-txtcolor: var(--color-white);
}
:root:has(#header_website.top) {
  --header-height: calc(clamp(4.2rem, calc(4vw*var(--viewport-factor)), 7.3rem) + 6.4rem);
}


/**************************************************/
/* TEMPORARY - REMOVE WHEN PAGE IN LANG PUBLISHED */
/**************************************************/
nav.buttons #header_website_language_dropdown {
  display:none;
}
/**************************************************/


#header_website .header {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  padding-top: 1.2rem;
  padding-bottom: 1.2rem;
  background-color: var(--color-gray);
  z-index: 4;
  transition: padding-top var(--transition-base), padding-bottom var(--transition-base), background var(--transition-base);
}
#header_website.top .header {
  padding-top: 3.2rem;
  padding-bottom: 3.2rem;
}
/*#header_website.top .header,
#header_website:has(#header_website_mobile_modal.show) .header {
  background: transparent;
}*/
#header_website .header .wrapper {
  position:relative;
  z-index:1;
  display: flex;
  align-items: center;
  justify-content: space-between;
  column-gap: clamp(2rem, calc(4vw*var(--viewport-factor)), 5rem);
  padding: 1rem 2rem;
}
#header_website .header .logo {
  display: block;
  height: clamp(3.6rem, calc(3vw*var(--viewport-factor)), 4.6rem);  
  transition: height var(--transition-base);
  color: var(--color-gray-200);
}
#header_website.top .header .logo {
  height: clamp(4.6rem, 4vw, 5.6rem);
}
#header_website .header .logo svg {
  width: auto;
  height: 100%;
}
#header_website .header .logo svg path {
  fill:var(--header-label-txtcolor);
}

#header_website .header .logo svg .logotype {
  fill: var(--color-tertiary);
  transition: fill var(--transition-base);
}
#header_website.top .header .logo svg .logotype {
  fill: var(--color-white)
}
#header_website .navigation {
  font-size: 1.8rem;
  text-transform: uppercase;
  text-decoration: none;
  color: var(--color-base);
  color: var(--color-base);
  transition: color var(--transition-base);
}
#header_website .header .navigation {
  flex: 1;
  display:flex;
  justify-content: flex-end;
  align-items: center;
  gap:2rem;
}
#header_website.top .header .navigation {
  color: var(--color-black);
}
#header_website .header .navigation ul {
  display: flex;
  flex-flow: row nowrap;
  justify-content: flex-end;
  gap: 3rem;
}
#header_website .header .navigation ul li {
  margin: 0;
}
#header_website .navigation .navigation-item,
#header_website .navigation-modal .modal-dialog ul a{
  --focus-ring-color: var(--color-gray-200);
  position: relative;
  display: inline-flex;
  align-items: center;
  border: none;
  padding: 0.8em;
  background-color: transparent;
  color: inherit;
  font-weight: 500;
  text-transform: lowercase;
  text-decoration: inherit;
  letter-spacing: .05rem;
  cursor: pointer;
  transition: inherit;
}
#header_website .navigation .navigation-item:focus-visible,
#header_website .navigation-modal .modal-dialog ul a:focus-visible {
  border-radius: .5rem;
}
#header_website .navigation .navigation-item::before,
#header_website .navigation-modal .modal-dialog ul a:before {
  content: '';
  position: absolute;
  top: calc(100% - 0.8em + 0.2em);
  left: 50%;
  width: calc(100% - 1.6em);
  height: .2rem;
  background-color: var(--color-primary);
  transform: translateX(-50%) scaleX(0);
  transition: transform var(--transition-base);
}
#header_website .navigation .navigation-item:hover::before,
#header_website .navigation .navigation-item.current::before,
#header_website .navigation-modal .modal-dialog ul a:hover::before,
#header_website .navigation-modal .modal-dialog ul a.current::before {
  transform: translateX(-50%) scaleX(1);
}

#header_website  .navigation.mobile-navigation .navigation-item::before,
#header_website .navigation-modal.mobile-modal .modal-dialog ul a:before {
  width: 100%;
  top: calc(100% + 0.2em);
}

#header_website button.navigation-item::after{
  content: '\e313';
  font-family: var(--material-symbols);
  font-size: 1.2em;
  line-height: 0.6;
  vertical-align: middle;
  transform: rotate(0deg);
  transition: transform var(--transition-base);
}

#header_website button.navigation-item.open::after {
  transform: rotate(180deg);
}

@media (max-width:1580px){
  #header_website .header .navigation ul {
    gap: 2rem;
  }
}
@media (max-width:1350px){ 
  #header_website .header .navigation ul {
    gap: 0;
  }
}
@media (max-width:1250px){ 
  #header_website .header .navigation .navigation-item,
  #header_website .navigation-modal .modal-dialog ul a{
    padding-left: 0.4em;
    padding-right: 0.4em;
  }
}


/* MODAL MENU */
#header_website .navigation-modal.desktop-modal {
  z-index:3;
}

#header_website .navigation-modal .modal-dialog {
  background-color: var(--color-white);
  box-shadow: .8rem .3rem 1.5rem rgba(0,0,0,0.1);
 /* -webkit-backdrop-filter: blur(8rem);
  backdrop-filter: blur(8rem);*/
}
#header_website .navigation-modal.desktop-modal .modal-dialog {
  font-size: 1.8rem;
  width: calc(100% - var(--header-label-width));
  max-width: unset;
  margin-right:0;
}
#header_website .desktop-modal .modal-content {
  display: flex;
  align-items: center;
  padding-top: 6rem;
  padding-bottom: 6rem;
  height: 100%;
}
#header_website .desktop-modal .container {
  position: relative;
  width: 100%;
  height: 100%;
  display:flex;
  justify-content: flex-end;
}
/*#header_website .desktop-modal .btn-close {
  position: absolute;
  top: -2rem;
  right: calc(var(--container-gutter-x) - 2rem);
  border: none;
  padding: 2rem;
  background: transparent;
  font-size: 1.4rem;
  font-weight: 400;
  text-transform: uppercase;
  text-align: center;
  color: var(--color-white);
}
*/
#header_website .desktop-modal .modal-dialog ul {
  /*margin-top: clamp(8rem, 6vw, 16rem);
  font-size: 8rem;*/
  font-weight: 300;
  text-transform: uppercase;
  color: var(--color-black);
  display:flex;
  /*justify-content: space-between;*/
  gap:2rem;
  width:100%;
  padding: 3rem;
}
#header_website .desktop-modal .modal-dialog ul li {
  margin-bottom: .2em;
}
#header_website .desktop-modal .modal-dialog ul a {
  text-decoration: none;
  color: inherit;
  transition: color .3s;
  flex-direction: column;
  align-items:flex-start;
  gap: 1rem;
}
#header_website .desktop-modal .modal-dialog ul a img {
  width:100%;
}

#header_website_language_dropdown {
  --dropdown-border-radius: 1.5rem;
  --dropdown-toggle-padding-x: 1rem;
  --dropdown-toggle-padding-y: 1rem;
}
#header_website_language_dropdown .dropdown-toggle {
  gap: 0.2em;
  font-weight: 500;
  background: none;
  border: 0;
}
#header_website_language_dropdown .dropdown-toggle::after {
  font-size: 1.4em;
  line-height: .7; 
}
#header_website_language_dropdown .dropdown-item {
  padding: 1rem;
}
#header_website_mobile_modal {
  z-index: 3;
}
#header_website_mobile_modal .modal-content {
  padding-top: calc(var(--header-height) + 2rem);
  padding-bottom: 5rem;
}
#header_website_mobile_modal .navigation ul {
  display: flex;
  flex-direction: column;
  gap: 2rem;
}
#header_website_mobile_modal .navigation li {
  margin: 0;
  padding: .5rem 0;
}
#header_website_mobile_modal .navigation .navigation-collapse ul {
  padding: 2rem 1rem 0;
}
#header_website #header_website_mobile_modal .navigation .navigation-item,
#header_website #header_website_mobile_modal .navigation .navigation-item-sub,
#header_website #header_website_mobile_modal .modal-dialog ul a {
  padding: 0;  
}
#header_website_mobile_modal_toggle {
  display: flex;
  align-items: center;
  margin: 0;
  border: none;
  padding: 0;
  background: transparent;
  color: var(--color-primary);
}
#header_website_mobile_modal_toggle .material-symbols-rounded {
  font-size: 3rem;
  line-height: 0.8;
}
/*
#header_website.top #header_website_mobile_modal_toggle {
  color: var(--color-white);
}*/

@media (max-width:768px) {
  :root {
    --header-height: 5.4rem;
  }
  #header_website .header {
    background-color:var(--color-primary); 
  }
  #header_website .header:before {
    display:none;
  }
  #header_website .wrapper {
    justify-content: space-between;
  }
  #header_website .header .wrapper {
    padding:1rem;
  }
  #header_website_language_dropdown {
    --dropdown-toggle-padding-x: .8rem;
    --dropdown-toggle-padding-y: .8rem;
  }
  #header_website_language_dropdown .dropdown-item {
    padding: .8rem;
  }
  #header_website_mobile_modal_toggle {
    color: var(--color-white);
  }
}


#footer_website {
  padding-right: inherit;
}

@media (min-width:768px) {

  #header_website .header:before {
    content:'';
    max-width:var(--header-label-max-width);
    width:var(--header-label-width);
    height:100%;
    display:block;
    position:absolute;
    top:0;
    left:0;
    z-index:0;
    background-color:var(--header-label-bgcolor);
    color:var(--header-label-txtcolor);
  }
  
  [data-is-in-editor="false"]  main {
    position: relative;
    z-index: 2;
  }
  [data-is-in-editor="false"] #footer_website {
    /*position: sticky;
    bottom: 0;
    z-index: 1;*/
    position:relative;
  }
  /*[data-is-in-editor="false"] #footer_website .mod-image {
    margin-top:-40%;
  }*/
}.lace {
  content: '';
  position: absolute;
  left: -2em;
  top: 0.7em;
  width: 14.4rem;
  height: .1rem;
  background: var(--lace-color);
  transform: translateX(-100%) scaleX(0);
  transform-origin: left;
  transition: transform var(--transition-base);
}
.lace.animated {
  transform: translateX(-100%) scaleX(1);
}
[dir="rtl"] .lace {
  left: unset;
  right: -2em;
  transform: translateX(100%) scaleX(0);
  transform-origin: right;
}
[dir="rtl"] .lace.animated {
  transform: translateX(100%) scaleX(1);
}.breadcrumbs {
  font-weight: 100;
}
.breadcrumbs ol {
  display: flex;
  flex-flow: row nowrap;
  text-transform: lowercase;
}

.breadcrumbs ol li {
  margin-bottom: 0;
}

.breadcrumbs ol li:not(:last-child)::after {
  content: '|';
  margin: 0 0.6em;
}

.breadcrumbs a {
  text-decoration: none;
}.placeholder {
  display: block;
  width: 100%;
  height: 100%;
  background-color: var(--color-gray);
}

.placeholder-yacht {
  width: 100%;
  height: auto;
  color: var(--color-gray);
}

.placeholder-glow .placeholder-yacht {
  animation: placeholder-glow 2s ease-in-out infinite;
}

@keyframes placeholder-glow {
  50% {
    opacity: 50%;
  }
}/******** blog card ********/
.blog-card {
  position: relative;
  display: flex;
  flex-flow: column nowrap;
  row-gap: 1.5rem;
}

.blog-card .image {
  aspect-ratio: 1/1;
  overflow: hidden;
}

.blog-card .image picture {
  display: block;
  overflow: hidden;
  width: 100%;
  height: 100%;
}

.blog-card .image picture img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transform: scale(1);
  transition: transform .5s var(--transition-timing-function);
}

@media (any-hover: hover) {
  .blog-card:hover .image picture img {
    transform: scale(1.1);
  }
}

.blog-card .text {
  order: 1; 
  display: flex;
  flex-flow: column nowrap;
  row-gap: .8rem;
}

/*.blog-card .text .title {
  order: 1;
  font-weight: 500;
  text-transform: none;
}*/

.blog-card .text .title a {
  text-decoration: none;
  color: unset;
}

.blog-card .text .title a:focus-visible {
  outline: none;
}

.blog-card .text .summary {
  order: 2;
}

.blog-card .text .date {
  order: 0;
  font-size: 1.6rem;
  font-weight: 300;
}

.blog-card:focus-within .image picture img {
  transform: scale(1.1);
}

.blog-card:has(a:focus-visible)::after {
  content: '';
  position: absolute;
  top: 50%;
  left: 50%;
  z-index: -1;
  border-radius: 2rem;
  width: calc(100% + 2rem);
  height: calc(100% + 2rem);
  background-color: rgba(var(--color-secondary-rgb),var(--box-shadow-opacity));
  transform: translate(-50%, -50%);
}

/******* card with overlay (case history style) *******/
.post.overlay .blog-card {
  border: 1px solid #ddd;
}
.post.overlay .blog-card .text {
  transition: opacity .3s;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  align-items: CENTER;
  justify-content: flex-end;
  z-index:1;
  background-color: rgba(var(--color-black-500-rgb), 50%);
  padding:2rem;
}
.post.overlay .blog-card .text p {
  color: var(--color-white);
}
.post.overlay .blog-card:hover .text {
  opacity: 1;
}
.post.overlay .blog-card:hover .image picture img {
  transform: unset !important;
}

/********  featured post ********/
.featured-post {
  display: flex;
  flex-direction: row;
  overflow: hidden;
  
  background-color: var(--color-white);
}

.featured-post .text {
  order: 1;
  display: flex;
  flex-direction: column;
  padding: var(--container-gutter-x);
}


.featured-post .text .date {
  order: 0;
  font-size: clamp(1.6rem, 1.600000023841858rem + calc(0.749999980131785vw*var(--viewport-factor)), 2.5rem);
  font-weight: 400;
  margin-bottom:1rem;
}


.featured-post .text .title ,
.featured-post .text .short-description {
  font-size: clamp(1.8rem, 1.7999999523162842rem + calc(0.5833333730697632vw*var(--viewport-factor)), 2.5rem);
  line-height:1.4;
  order: 2;
  font-weight: 400;
  text-transform: none;
  color: var(--color-black);
}
.featured-post .text .title {
  font-size: clamp(2.0rem, 2.0rem + calc(1.25vw*var(--viewport-factor)), 3.5rem);
  order: 1;
  font-weight: 700;
  margin-bottom: 2rem;
}
  
.featured-post .text .btn-wrapper {
  order: 2; 
  align-self: flex-start;
  margin-top: 3.5rem;
}

.featured-post .image {
  order: 0;
  flex: 0 0 50%;
  aspect-ratio: 1.42/1;
}
/*.news .featured-post .image {
  aspect-ratio: 1/1;
}*/

.featured-post .image img {
  display: block;
}

.featured-post .image picture {
  display: block;
  overflow: hidden;
  width: 100%;
  height: 100%;
}

.featured-post .image picture img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

@media (max-width:768px) {
  .featured-post {
    flex-direction: column;
    border-radius: 1.5rem;
  }
  .featured-post.as-hero {
    border: 0;
    border-radius: 0;
  }
  .featured-post.as-hero .text {
    padding: 0;
    padding-top: var(--container-gutter-x);
  }
}

@media (min-width:768px) {
  .featured-post .text {
    padding-left: 10rem;
    justify-content: center;
  }
/*  .featured-post .text .date {
    margin-top: 8.5rem;
  }*/
}

/******** listing pages (news - case studies) ********/
.listing.news {
  padding-bottom: 6rem;
  /*text-align:center;*/
}
.listing.news .post-listing {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  row-gap: 6rem;
  column-gap: 2rem;  
  padding: 3rem 0;
}
.listing.news .buttons {
  width: 100%;
  display: flex; 
  gap: 3rem;
  justify-content: space-between;
  align-items: center;
}
.listing.news .buttons .filters {
  display: flex; 
  gap: 3rem;
  align-items: center;
  padding: 0;
  margin: 0;
}

.listing.news .filters-mobile {
  display:none;
}
.listing.news .filters-mobile .accordion-item {
  border: 1px solid var(--color-gray);
  margin-bottom: 2rem;
}
.listing.news .filters-mobile .filters {
  display:flex;
  flex-direction:column;
  justify-content: center;
  gap: 0;
}
.listing.news .filters-mobile .accordion-item button {
  display:flex;
  align-items:center;
  width:100%;
  border:0;
  background: var(--color-white);
  border-bottom: 1px solid #eee;
  color: var(--color-black);
  font-size:1.8rem;
  text-transform:uppercase;
  padding:1rem 2rem;
  margin:0;
  transition: all .3s;
}
.listing.news .filters-mobile .accordion-item button:first-child {
  border-top: 1px solid #eee;
}
.listing.news .filters-mobile .filter.active {
  background: var(--color-primary);
  color:var(--color-white);
}
.listing.news .filters-mobile button:last-child {
  border:0;
}
.listing.news #loadMore{
  margin-top:2rem;
}

.form-news.hide {
  display:none;
}

@media (max-width:768px) {
  .listing.news .post-listing {
    grid-template-columns: repeat(1, 1fr);
  }
  .listing.news .buttons {
    display:none;
  }
  .listing.news .filters-mobile {
    display:block;
    width:100%;
  }
  
  .listing.news .btn {
    width:100%;
    text-align:center;
  }
}
  
/******** single post page ********/
.blog-post.news {
padding-top: 10rem;
}

.blog-post.news .divider {
  margin:3rem 0;
}
.blog-post .featured-post {
  margin-bottom: 4.4rem;
}

.blog-post article .post-body {
  /*max-width: 106rem;*/
  font-weight: 300;
  line-height: 1.5;
}
.blog-post.news article .post-body {
  font-size: clamp(1.8rem, 1.7999999523162842rem + calc(0.5833333730697632vw*var(--viewport-factor)), 2.5rem);
}
.blog-post article .post-body h2 {
  margin-top: 4rem;
  font-weight: 500;
  font-size: clamp(2.0rem, 2.0rem + calc(0.1666666666666668vw*var(--viewport-factor)), 2.2rem);
  font-weight: 500;
  text-transform: none;
  color: var(--color-primary);
}
.blog-post article .link {
  margin-top:6rem;
}
.blog-post article .mod-image {
  margin-top: 4rem;
  margin-bottom: 4rem;
}

.blog-post.news .related-posts {
  padding-bottom:4rem;
}

@media (min-width:768px) {
  .blog-post .hero .h1 {
    display: block;
    margin-top: .64em;
  }
  .blog-post.news article {
    padding-bottom: 16rem;
  }
  .blog-post article .post-body-wrapper {
    position: relative;
    /*display: flex;
    justify-content: space-between;*/
  }
  .blog-post article .post-body-wrapper .post-body {
    flex: 1;
  }
  .blog-post article .post-body h2 {
    margin-top: 6.6rem;
  }
  .blog-post article .mod-image {
    margin-top: 6.6rem;
    margin-bottom: 6.6rem;
  }
}
@media (max-width:768px) {
  .blog-post.news {
    padding-top: 7rem;
  }
}


/****************************/
/******* custom section *****/
/****************************/
.blog-post .custom-section {
  padding:9rem 2rem
}
.blog-post .custom-section.bg-gray {
  background-color:#E0E0E0; 
}
.blog-post .custom-section .custom-dflex .custom-full {
  width:100%;
}
.blog-post .custom-section.intro .custom-dflex .custom-half:last-child {
  padding:2rem;
}
.blog-post .custom-section .custom-link-back {
  margin-top:6rem;
  font-size: 2.8rem;
  color: var(--color-primary);
  font-weight: 500;
  display:inline-block;
  text-decoration:none;
  transition: color .3s; 
}
.blog-post .custom-section .custom-link-back:hover {
  color: var(--color-black);
}
@media (min-width:768px) {
  .blog-post .custom-section {
    padding:19rem 2rem
  }
  .blog-post .custom-section .custom-dflex {
    display:flex;
    gap:3rem;
  }
  .blog-post .custom-section .custom-dflex.align-center {
    align-items: center;
  }
  .blog-post .custom-section .custom-dflex .custom-half {
    width:50%;
  }
}

@media (max-width:768px) {
  .blog-post .custom-section .mod-simple-link {
    margin-top:2rem;
  }
  .blog-post .custom-section {
    padding: 4rem 0
  }
  .blog-post .custom-section.intro .custom-dflex .custom-half:last-child {
    padding:2rem 0 0;
  }
}/* _case-studies.css */
.blog-post.case-study .featured-post-case-study .text {
background-color: var(--color-primary);
  padding: 6rem 0;
  color:var(--color-white);
}
.blog-post.case-study .image {
  /*height: calc(100vh - var(--header-height) - 100px);*/
  height: calc(100vh - 240px);
}
.blog-post.case-study .image img {
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
}
.blog-post.case-study .credits {
  font-size: clamp(1.8rem, 1.7999999523162842rem + calc(0.5833333730697632vw*var(--viewport-factor)), 2.5rem);
  margin-top:1rem;
}
.blog-post.case-study article .post-body{
  margin:10rem 0;
}
@media (max-width:768px) {
  .blog-post.case-study .image  {
    height:calc(70vh - var(--header-height) - 100px);    
  }
  .blog-post.case-study .image img {
    height: 100%;
    object-fit:cover;
  }
  .blog-post.case-study .featured-post-case-study .text {
    padding: 4rem 0;
  }
  .blog-post.case-study article .post-body{
    margin:4rem 0;
  }
}
@media (min-width: 768px) {
    .blog-post.case-study .title {
        font-weight: 600 !important;
    }
}/* _products.css */
.blog-post.products .custom-section:not(.intro) {
  padding-top: 0;
  padding-bottom: 0;
}
.blog-post.products .image img {
  height: 100%;
  max-height: 56.6rem;
  object-fit: contain;
  width: 100%;
}
.blog-post.products .short-description {
  margin-top:.8em;
}
.blog-post.products .custom-link-back {
  margin-bottom: 19rem;
}
@media (max-width:768px) {
  .blog-post.products .custom-section .custom-dflex .custom-half:first-child {
    margin-bottom:2rem;
  }
}.hidden {
  display: none !important;
}

@media (max-width:768px) {
  .hidden-mobile {
    display: none !important;
  }
}

@media (min-width:768px) and (max-width:1200px) {
  .hidden-tablet {
    display: none !important;
  }
}

@media (min-width:1200px) {
  .hidden-desktop {
    display: none !important;
  }
}

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

.visually-hidden {
  position: absolute;
  overflow: hidden;
  margin: -1px;
  border: 0;
  width: 1px;
  height: 1px;
  padding: 0;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
}

.stretched-link::after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1;
}

.hide-scrollbar::-webkit-scrollbar { /* Hide scrollbar for Chrome, Safari and Opera */
  display: none;
}

.hide-scrollbar {
  -ms-overflow-style: none;  /* Hide scrollbar for IE and Edge */
  scrollbar-width: none;  /* Hide scrollbar for Firefox */
}@media (-webkit-device-pixel-ratio: 1.25) {
    :root {
      --root-zoom: 0.8;
      --viewport-factor: 1.25;
      zoom: var(--root-zoom);
    }
  }

  @media (device-pixel-ratio: 1.25) {
    :root {
      --root-zoom: 0.8;
      --viewport-factor: 1.25;
      zoom: var(--root-zoom);
    }
  }