/* GANTRY5 DEVELOPMENT MODE ENABLED.
 *
 * WARNING: This file is automatically generated by Gantry5. Any modifications to this file will be lost!
 *
 * For more information on modifying CSS, please read:
 *
 * http://docs.gantry.org/gantry5/configure/styles
 * http://docs.gantry.org/gantry5/tutorials/adding-a-custom-style-sheet
 */

@charset "UTF-8";
/* **************** */
/* CUSTOM VARIABLES */
/* **************** */
@media only all and (min-width: 75rem) {
  :root {
    --section-padding: 75px;
  }
}
@media only all and (min-width: 60rem) and (max-width: 74.99rem) {
  :root {
    --section-padding: 75px;
  }
}
@media only all and (min-width: 48rem) and (max-width: 59.99rem) {
  :root {
    --section-padding: 75px;
  }
}
@media only all and (min-width: 30.01rem) and (max-width: 47.99rem) {
  :root {
    --section-padding: 50px;
  }
}
@media only all and (max-width: 30rem) {
  :root {
    --section-padding: 50px;
  }
}
/* ***** */
/* FONTS */
/* ***** */
/*
// Font Family: CFAstyStd
// Light 
@font-face {
	font-family: 'CFAstyStd';
	//src: url('../fonts/cf-asty-std/light/CFAstyStd-Light.eot');
	src: url('../fonts/cf-asty-std/light/CFAstyStd-Light.eot?#iefix') format('embedded-opentype'),
		url('../fonts/cf-asty-std/light/CFAstyStd-Light.svg#CFAstyStd-Light') format('svg'),
		url('../fonts/cf-asty-std/light/CFAstyStd-Light.ttf') format('truetype'),
		url('../fonts/cf-asty-std/light/CFAstyStd-Light.woff') format('woff'),
		url('../fonts/cf-asty-std/light/CFAstyStd-Light.woff2') format('woff2');
	font-weight: 300;
	font-style: normal;
	font-display: swap;
}

// Normal
@font-face {
	font-family: 'CFAstyStd';
	//src: url('../fonts/cf-asty-std/book/CFAstyStd-Book.eot');
	src: url('../fonts/cf-asty-std/book/CFAstyStd-Book.eot?#iefix') format('embedded-opentype'),
		url('../fonts/cf-asty-std/book/CFAstyStd-Book.svg#CFAstyStd-Book') format('svg'),
		url('../fonts/cf-asty-std/book/CFAstyStd-Book.ttf') format('truetype'),
		url('../fonts/cf-asty-std/book/CFAstyStd-Book.woff') format('woff'),
		url('../fonts/cf-asty-std/book/CFAstyStd-Book.woff2') format('woff2');
	font-weight: 400;	// Normal.
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: 'CFAstyStd';
	//src: url('../fonts/cf-asty-std/book-oblique/CFAstyStd-BookOblique.eot');
	src: url('../fonts/cf-asty-std/book-oblique/CFAstyStd-BookOblique.eot?#iefix') format('embedded-opentype'),
		url('../fonts/cf-asty-std/book-oblique/CFAstyStd-BookOblique.svg#CFAstyStd-BookOblique') format('svg'),
		url('../fonts/cf-asty-std/book-oblique/CFAstyStd-BookOblique.ttf') format('truetype'),
		url('../fonts/cf-asty-std/book-oblique/CFAstyStd-BookOblique.woff') format('woff'),
		url('../fonts/cf-asty-std/book-oblique/CFAstyStd-BookOblique.woff2') format('woff2');
	font-weight: 400;	// Normal.
	font-style: italic;
	font-display: swap;
}

// Medium
@font-face {
	font-family: 'CFAstyStd';
	//src: url('../fonts/cf-asty-std/medium/CFAstyStd-Medium.eot');
	src: url('../fonts/cf-asty-std/medium/CFAstyStd-Medium.eot?#iefix') format('embedded-opentype'),
		url('../fonts/cf-asty-std/medium/CFAstyStd-Medium.svg#CFAstyStd-Medium') format('svg'),
		url('../fonts/cf-asty-std/medium/CFAstyStd-Medium.ttf') format('truetype'),
		url('../fonts/cf-asty-std/medium/CFAstyStd-Medium.woff') format('woff'),
		url('../fonts/cf-asty-std/medium/CFAstyStd-Medium.woff2') format('woff2');
	font-weight: 500;
	font-style: normal;
	font-display: swap;
}

// Bold
@font-face {
	font-family: 'CFAstyStd';
	//src: url('../fonts/cf-asty-std/bold/CFAstyStd-Bold.eot');
	src: url('../fonts/cf-asty-std/bold/CFAstyStd-Bold.eot?#iefix') format('embedded-opentype'),
		url('../fonts/cf-asty-std/bold/CFAstyStd-Bold.svg#CFAstyStd-Bold') format('svg'),
		url('../fonts/cf-asty-std/bold/CFAstyStd-Bold.ttf') format('truetype'),
		url('../fonts/cf-asty-std/bold/CFAstyStd-Bold.woff') format('woff'),
		url('../fonts/cf-asty-std/bold/CFAstyStd-Bold.woff2') format('woff2');
	font-weight: 700;
	font-style: normal;
	font-display: swap;
}

// Black
@font-face {
	font-family: 'CFAstyStd';
	//src: url('../fonts/cf-asty-std/black/CFAstyStd-Black.eot');
	src: url('../fonts/cf-asty-std/black/CFAstyStd-Black.eot?#iefix') format('embedded-opentype'),
		url('../fonts/cf-asty-std/black/CFAstyStd-Black.svg#CFAstyStd-Black') format('svg'),
		url('../fonts/cf-asty-std/black/CFAstyStd-Black.ttf') format('truetype'),
		url('../fonts/cf-asty-std/black/CFAstyStd-Black.woff') format('woff'),
		url('../fonts/cf-asty-std/black/CFAstyStd-Black.woff2') format('woff2');
	font-weight: 900;
	font-style: normal;
	font-display: swap;
}
*/
@font-face {
  font-family: "GoogleSans";
  src: url('../fonts/google-sans/regular/GoogleSans-Regular.woff2') format("woff2"), url('../fonts/google-sans/regular/GoogleSans-Regular.woff') format("woff") url('../fonts/google-sans/regular/GoogleSans-Regular.eot#iefix') format("embedded-opentype"), url('../fonts/google-sans/regular/GoogleSans-Regular.svg#GoogleSans-Regular') format("svg"), url('../fonts/google-sans/regular/GoogleSans-Regular.ttf') format("truetype");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "GoogleSans";
  src: url('../fonts/google-sans/italic/GoogleSans-Italic.woff2') format("woff2"), url('../fonts/google-sans/italic/GoogleSans-Italic.woff') format("woff"), url('../fonts/google-sans/italic/GoogleSans-Italic.eot#iefix') format("embedded-opentype"), url('../fonts/google-sans/italic/GoogleSans-Italic.svg#GoogleSans-Italic') format("svg"), url('../fonts/google-sans/italic/GoogleSans-Italic.ttf') format("truetype");
  font-weight: 400;
  font-style: italic;
  font-display: swap;
}
@font-face {
  font-family: "GoogleSans";
  src: url('../fonts/google-sans/medium/GoogleSans-Medium.woff2') format("woff2"), url('../fonts/google-sans/medium/GoogleSans-Medium.woff') format("woff"), url('../fonts/google-sans/medium/GoogleSans-Medium.eot#iefix') format("embedded-opentype"), url('../fonts/google-sans/medium/GoogleSans-Medium.svg#GoogleSans-Medium') format("svg"), url('../fonts/google-sans/medium/GoogleSans-Medium.ttf') format("truetype");
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "GoogleSans";
  src: url('../fonts/google-sans/medium-italic/GoogleSans-MediumItalic.woff2') format("woff2"), url('../fonts/google-sans/medium-italic/GoogleSans-MediumItalic.woff') format("woff"), url('../fonts/google-sans/medium-italic/GoogleSans-MediumItalic.eot#iefix') format("embedded-opentype"), url('../fonts/google-sans/medium-italic/GoogleSans-MediumItalic.svg#GoogleSans-MediumItalic') format("svg"), url('../fonts/google-sans/medium-italic/GoogleSans-MediumItalic.ttf') format("truetype");
  font-weight: 500;
  font-style: italic;
  font-display: swap;
}
@font-face {
  font-family: "GoogleSans";
  src: url('../fonts/google-sans/bold/GoogleSans-Bold.woff2') format("woff2"), url('../fonts/google-sans/bold/GoogleSans-Bold.woff') format("woff"), url('../fonts/google-sans/bold/GoogleSans-Bold.eot#iefix') format("embedded-opentype"), url('../fonts/google-sans/bold/GoogleSans-Bold.svg#GoogleSans-Bold') format("svg"), url('../fonts/google-sans/bold/GoogleSans-Bold.ttf') format("truetype");
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}
/*
// Font family: PFFuturaNeu
@font-face {
	font-family: 'PFFuturaNeu';
	//src: url('../fonts/pf-futura-neu/book/PFFuturaNeuBook-Regular.eot');
	src: url('../fonts/pf-futura-neu/book/PFFuturaNeuBook-Regular.eot?#iefix') format('embedded-opentype'),
			url('../fonts/pf-futura-neu/book/PFFuturaNeuBook-Regular.svg#PFFuturaNeuBook-Regular') format('svg'),
			url('../fonts/pf-futura-neu/book/PFFuturaNeuBook-Regular.ttf') format('truetype'),
			url('../fonts/pf-futura-neu/book/PFFuturaNeuBook-Regular.woff') format('woff'),
			url('../fonts/pf-futura-neu/book/PFFuturaNeuBook-Regular.woff2') format('woff2');
	font-weight: 300;
	font-style: normal;
}

@font-face {
	font-family: 'PFFuturaNeu';
	//src: url('../fonts/pf-futura-neu/medium/PFFuturaNeuMedium-Regular.eot');
	src: url('../fonts/pf-futura-neu/medium/PFFuturaNeuMedium-Regular.eot?#iefix') format('embedded-opentype'),
		 url('../fonts/pf-futura-neu/medium/PFFuturaNeuMedium-Regular.svg#PFFuturaNeuMedium-Regular') format('svg'),
		 url('../fonts/pf-futura-neu/medium/PFFuturaNeuMedium-Regular.ttf') format('truetype'),
		 url('../fonts/pf-futura-neu/medium/PFFuturaNeuMedium-Regular.woff') format('woff'),
		 url('../fonts/pf-futura-neu/medium/PFFuturaNeuMedium-Regular.woff2') format('woff2');
	font-weight: 400;
	font-style: normal;
}

@font-face {
	font-family: 'PFFuturaNeu';
	//src: url('../fonts/pf-futura-neu/semi-bold/PFFuturaNeuSemiBold-Regular.eot');
	src: url('../fonts/pf-futura-neu/semi-bold/PFFuturaNeuSemiBold-Regular.eot?#iefix') format('embedded-opentype'),
		 url('../fonts/pf-futura-neu/semi-bold/PFFuturaNeuSemiBold-Regular.svg#PFFuturaNeuSemiBold-Regular') format('svg'),
		 url('../fonts/pf-futura-neu/semi-bold/PFFuturaNeuSemiBold-Regular.ttf') format('truetype'),
		 url('../fonts/pf-futura-neu/semi-bold/PFFuturaNeuSemiBold-Regular.woff') format('woff'),
		 url('../fonts/pf-futura-neu/semi-bold/PFFuturaNeuSemiBold-Regular.woff2') format('woff2');
	font-weight: 600;
	font-style: normal;
}

@font-face {
	font-family: 'PFFuturaNeu';
	//src: url('../fonts/pf-futura-neu/bold/PFFuturaNeu-Bold.eot');
	src: url('../fonts/pf-futura-neu/bold/PFFuturaNeu-Bold.eot?#iefix') format('embedded-opentype'),
		 url('../fonts/pf-futura-neu/bold/PFFuturaNeu-Bold.svg#PFFuturaNeu-Bold') format('svg'),
		 url('../fonts/pf-futura-neu/bold/PFFuturaNeu-Bold.ttf') format('truetype'),
		 url('../fonts/pf-futura-neu/bold/PFFuturaNeu-Bold.woff') format('woff'),
		 url('../fonts/pf-futura-neu/bold/PFFuturaNeu-Bold.woff2') format('woff2');
	font-weight: 700;
	font-style: normal;
}
*/
/* ***** */
/* BASIC */
/* ***** */
html.g-offcanvas-css3 {
  scroll-behavior: smooth;
}
body {
  color: #111111;
  background: #ffffff;
  font-family: "GoogleSans";
  line-height: 1.5;
}
p {
  margin: 1rem 0;
}
blockquote {
  padding-top: 5px;
  padding-bottom: 5px;
  padding-left: 1rem;
  border-left: solid 7px #eceff3;
}
blockquote *:last-child:not(:first-child) {
  font-size: 90%;
  font-weight: bold;
}
blockquote:first-child {
  margin-top: 0 !important;
}
blockquote:last-child {
  margin-bottom: 0 !important;
}
figure {
  margin: 0;
}
hr {
  border-bottom: solid 2px #f4f4f9;
}
/* ********** */
/* HYPERLINKS */
/* ********** */
a:not(.button):not(.btn):not(.cc-trigger) {
  color: #0055a5;
  transition: all 0.2s;
}
a:not(.button):not(.btn):not(.cc-trigger):hover {
  color: #58585a;
}
.link-arrow {
  text-decoration: none;
}
.link-arrow:after {
  content: "";
  display: inline-block;
  width: 18px;
  height: 18px;
  margin-left: 10px;
  -webkit-mask-image: url('../../../../images/icons/arrow-right.svg');
  mask-image: url('../../../../images/icons/arrow-right.svg');
  background-color: currentColor;
  background-position: center center;
  background-size: contain;
  background-repeat: no-repeat;
  vertical-align: middle;
  transition: all 0.2s;
}
.link-arrow:hover {
  text-decoration: none;
  color: inherit;
}
.link-arrow:hover:after {
  transform: translateX(10px);
}
/* ******** */
/* HEADINGS */
/* ******** */
h1 {
  margin-top: 2rem;
  margin-bottom: 1rem;
  line-height: 1.25;
  font-family: "GoogleSans";
  font-size: 3rem;
  font-weight: normal;
  text-transform: none;
  text-wrap: balance;
}
@media only all and (min-width: 48rem) and (max-width: 59.99rem) {
  h1 {
    font-size: 2.6rem;
  }
}
@media only all and (min-width: 30.01rem) and (max-width: 47.99rem) {
  h1 {
    font-size: 2.15rem;
  }
}
@media only all and (max-width: 30rem) {
  h1 {
    font-size: 1.9rem;
  }
}
h2 {
  margin-top: 2rem;
  margin-bottom: 1rem;
  line-height: 1.25;
  font-family: "GoogleSans";
  font-size: 2.5rem;
  font-weight: normal;
  text-transform: none;
  text-wrap: balance;
}
@media only all and (min-width: 48rem) and (max-width: 59.99rem) {
  h2 {
    font-size: 2.15rem;
  }
}
@media only all and (min-width: 30.01rem) and (max-width: 47.99rem) {
  h2 {
    font-size: 1.85rem;
  }
}
@media only all and (max-width: 30rem) {
  h2 {
    font-size: 1.7rem;
  }
}
h3 {
  margin-top: 2rem;
  margin-bottom: 1rem;
  line-height: 1.5;
  font-family: "GoogleSans";
  font-size: 1.8rem;
  font-weight: 500;
  text-transform: none;
  text-wrap: balance;
}
@media only all and (min-width: 48rem) and (max-width: 59.99rem) {
  h3 {
    font-weight: 400;
  }
}
@media only all and (min-width: 30.01rem) and (max-width: 47.99rem) {
  h3 {
    font-size: 1.55rem;
  }
}
@media only all and (max-width: 30rem) {
  h3 {
    font-size: 1.45rem;
  }
}
h4 {
  margin-top: 1.75rem;
  margin-bottom: 1rem;
  line-height: 1.5;
  font-family: "GoogleSans";
  font-size: 1.35rem;
  font-weight: 500;
  text-transform: none;
  text-wrap: balance;
}
@media only all and (min-width: 30.01rem) and (max-width: 47.99rem) {
  h4 {
    font-size: 1.25rem;
  }
}
@media only all and (max-width: 30rem) {
  h4 {
    font-size: 1.25rem;
  }
}
h5 {
  margin-top: 1.75rem;
  margin-bottom: 1rem;
  line-height: 1.3;
  font-family: "GoogleSans";
  font-size: 1rem;
  font-weight: bold;
  text-transform: none;
  text-wrap: balance;
}
h6 {
  margin-top: 1.75rem;
  margin-bottom: 1rem;
  line-height: 1.5;
  font-family: "GoogleSans";
  font-size: 0.875rem;
  font-weight: bold;
  text-transform: none;
  text-wrap: balance;
}
/* ******* */
/* BUTTONS */
/* ******* */
.button, button:not(.joomla-alert--close):not(.jooa11y-btn):not(.f-button):not(.c-bn):not(.b-tl), .btn, .btn-primary, input[type="button"], input[type="submit"], input[type="reset"] {
  display: inline-block;
  box-sizing: border-box;
  padding: 8px 15px;
  margin: 0;
  font-family: "GoogleSans";
  font-size: 16px;
  font-weight: 500;
  color: #fff;
  line-height: 22px;
  letter-spacing: 0;
  text-transform: none;
  text-decoration: none;
  text-align: center;
  text-shadow: none;
  background: #0055a5;
  border-width: 1px;
  border-style: solid;
  border-color: #0055a5;
  border-radius: 8px;
  box-shadow: none;
  transition: all 0.2s;
}
.button:hover, .button:active, .button:focus, button:not(.joomla-alert--close):not(.jooa11y-btn):not(.f-button):not(.c-bn):not(.b-tl):hover, button:not(.joomla-alert--close):not(.jooa11y-btn):not(.f-button):not(.c-bn):not(.b-tl):active, button:not(.joomla-alert--close):not(.jooa11y-btn):not(.f-button):not(.c-bn):not(.b-tl):focus, .btn:hover, .btn:active, .btn:focus, .btn-primary:hover, .btn-primary:active, .btn-primary:focus, input[type="button"]:hover, input[type="button"]:active, input[type="button"]:focus, input[type="submit"]:hover, input[type="submit"]:active, input[type="submit"]:focus, input[type="reset"]:hover, input[type="reset"]:active, input[type="reset"]:focus {
  color: #fff;
  background: #58585a;
  border-color: #58585a;
  outline: 0;
}
.button:disabled, button:not(.joomla-alert--close):not(.jooa11y-btn):not(.f-button):not(.c-bn):not(.b-tl):disabled, .btn:disabled, .btn-primary:disabled, input[type="button"]:disabled, input[type="submit"]:disabled, input[type="reset"]:disabled {
  opacity: 0.25;
  cursor: not-allowed;
}
.button.fa[class*="fa-"]:before, .button.fa[class*="fa-"]:after, button:not(.joomla-alert--close):not(.jooa11y-btn):not(.f-button):not(.c-bn):not(.b-tl).fa[class*="fa-"]:before, button:not(.joomla-alert--close):not(.jooa11y-btn):not(.f-button):not(.c-bn):not(.b-tl).fa[class*="fa-"]:after, .btn.fa[class*="fa-"]:before, .btn.fa[class*="fa-"]:after, .btn-primary.fa[class*="fa-"]:before, .btn-primary.fa[class*="fa-"]:after, input[type="button"].fa[class*="fa-"]:before, input[type="button"].fa[class*="fa-"]:after, input[type="submit"].fa[class*="fa-"]:before, input[type="submit"].fa[class*="fa-"]:after, input[type="reset"].fa[class*="fa-"]:before, input[type="reset"].fa[class*="fa-"]:after {
  font-family: "Font Awesome 5 Pro", "Font Awesome 5 Free", FontAwesome;
  font-weight: 900;
}
.button.button-xsmall, button:not(.joomla-alert--close):not(.jooa11y-btn):not(.f-button):not(.c-bn):not(.b-tl).button-xsmall, .btn.button-xsmall, .btn-primary.button-xsmall, input[type="button"].button-xsmall, input[type="submit"].button-xsmall, input[type="reset"].button-xsmall {
  font-size: 12px;
  padding: 4px 11px;
}
.button.button-small, .button.btn-sm, button:not(.joomla-alert--close):not(.jooa11y-btn):not(.f-button):not(.c-bn):not(.b-tl).button-small, button:not(.joomla-alert--close):not(.jooa11y-btn):not(.f-button):not(.c-bn):not(.b-tl).btn-sm, .btn.button-small, .btn.btn-sm, .btn-primary.button-small, .btn-primary.btn-sm, input[type="button"].button-small, input[type="button"].btn-sm, input[type="submit"].button-small, input[type="submit"].btn-sm, input[type="reset"].button-small, input[type="reset"].btn-sm {
  font-size: 14px;
  padding: 6px 13px;
}
.button.button-large, .button.btn-lg, button:not(.joomla-alert--close):not(.jooa11y-btn):not(.f-button):not(.c-bn):not(.b-tl).button-large, button:not(.joomla-alert--close):not(.jooa11y-btn):not(.f-button):not(.c-bn):not(.b-tl).btn-lg, .btn.button-large, .btn.btn-lg, .btn-primary.button-large, .btn-primary.btn-lg, input[type="button"].button-large, input[type="button"].btn-lg, input[type="submit"].button-large, input[type="submit"].btn-lg, input[type="reset"].button-large, input[type="reset"].btn-lg {
  font-size: 18px;
  padding: 12px 19px;
}
.button.button-xlarge, button:not(.joomla-alert--close):not(.jooa11y-btn):not(.f-button):not(.c-bn):not(.b-tl).button-xlarge, .btn.button-xlarge, .btn-primary.button-xlarge, input[type="button"].button-xlarge, input[type="submit"].button-xlarge, input[type="reset"].button-xlarge {
  font-size: 20px;
  padding: 14px 21px;
}
.button.button-2, .button.btn-secondary, button:not(.joomla-alert--close):not(.jooa11y-btn):not(.f-button):not(.c-bn):not(.b-tl).button-2, button:not(.joomla-alert--close):not(.jooa11y-btn):not(.f-button):not(.c-bn):not(.b-tl).btn-secondary, .btn.button-2, .btn.btn-secondary, .btn-primary.button-2, .btn-primary.btn-secondary, input[type="button"].button-2, input[type="button"].btn-secondary, input[type="submit"].button-2, input[type="submit"].btn-secondary, input[type="reset"].button-2, input[type="reset"].btn-secondary {
  background: #58585a;
  border-color: #58585a;
}
.button.button-2:hover, .button.btn-secondary:hover, button:not(.joomla-alert--close):not(.jooa11y-btn):not(.f-button):not(.c-bn):not(.b-tl).button-2:hover, button:not(.joomla-alert--close):not(.jooa11y-btn):not(.f-button):not(.c-bn):not(.b-tl).btn-secondary:hover, .btn.button-2:hover, .btn.btn-secondary:hover, .btn-primary.button-2:hover, .btn-primary.btn-secondary:hover, input[type="button"].button-2:hover, input[type="button"].btn-secondary:hover, input[type="submit"].button-2:hover, input[type="submit"].btn-secondary:hover, input[type="reset"].button-2:hover, input[type="reset"].btn-secondary:hover {
  background: #0055a5;
  border-color: #0055a5;
}
.button.button-accent-2, button:not(.joomla-alert--close):not(.jooa11y-btn):not(.f-button):not(.c-bn):not(.b-tl).button-accent-2, .btn.button-accent-2, .btn-primary.button-accent-2, input[type="button"].button-accent-2, input[type="submit"].button-accent-2, input[type="reset"].button-accent-2 {
  color: #111111;
  background: #f9f871;
  border-color: #f9f871;
}
.button.button-accent-2:hover, button:not(.joomla-alert--close):not(.jooa11y-btn):not(.f-button):not(.c-bn):not(.b-tl).button-accent-2:hover, .btn.button-accent-2:hover, .btn-primary.button-accent-2:hover, input[type="button"].button-accent-2:hover, input[type="submit"].button-accent-2:hover, input[type="reset"].button-accent-2:hover {
  color: #111111;
  background: #fff;
  border-color: #fff;
}
.button.button-outline, .com_content.view-category.layout-blog.c-blog .com-content-category-blog .com-content-category-blog__items .com-content-category-blog__item p.readmore a.button.btn, button:not(.joomla-alert--close):not(.jooa11y-btn):not(.f-button):not(.c-bn):not(.b-tl).button-outline, .btn.button-outline, .com_content.view-category.layout-blog.c-blog .com-content-category-blog .com-content-category-blog__items .com-content-category-blog__item p.readmore a.btn, .btn-primary.button-outline, .com_content.view-category.layout-blog.c-blog .com-content-category-blog .com-content-category-blog__items .com-content-category-blog__item p.readmore a.btn-primary.btn, input[type="button"].button-outline, input[type="submit"].button-outline, input[type="reset"].button-outline {
  color: #0055a5;
  background: none;
  background-color: transparent;
  border-color: #0055a5;
}
.button.button-outline:hover, .com_content.view-category.layout-blog.c-blog .com-content-category-blog .com-content-category-blog__items .com-content-category-blog__item p.readmore a.button.btn:hover, button:not(.joomla-alert--close):not(.jooa11y-btn):not(.f-button):not(.c-bn):not(.b-tl).button-outline:hover, .btn.button-outline:hover, .com_content.view-category.layout-blog.c-blog .com-content-category-blog .com-content-category-blog__items .com-content-category-blog__item p.readmore a.btn:hover, .btn-primary.button-outline:hover, .com_content.view-category.layout-blog.c-blog .com-content-category-blog .com-content-category-blog__items .com-content-category-blog__item p.readmore a.btn-primary.btn:hover, input[type="button"].button-outline:hover, input[type="submit"].button-outline:hover, input[type="reset"].button-outline:hover {
  color: #fff;
  background: #0055a5;
  border-color: #0055a5;
}
.button.button-outline-2, button:not(.joomla-alert--close):not(.jooa11y-btn):not(.f-button):not(.c-bn):not(.b-tl).button-outline-2, .btn.button-outline-2, .btn-primary.button-outline-2, input[type="button"].button-outline-2, input[type="submit"].button-outline-2, input[type="reset"].button-outline-2 {
  color: #58585a;
  background: none;
  background-color: transparent;
  border-color: #58585a;
}
.button.button-outline-2:hover, button:not(.joomla-alert--close):not(.jooa11y-btn):not(.f-button):not(.c-bn):not(.b-tl).button-outline-2:hover, .btn.button-outline-2:hover, .btn-primary.button-outline-2:hover, input[type="button"].button-outline-2:hover, input[type="submit"].button-outline-2:hover, input[type="reset"].button-outline-2:hover {
  color: #fff;
  background: #58585a;
  border-color: #58585a;
}
.button.button-outline-3, button:not(.joomla-alert--close):not(.jooa11y-btn):not(.f-button):not(.c-bn):not(.b-tl).button-outline-3, .btn.button-outline-3, .btn-primary.button-outline-3, input[type="button"].button-outline-3, input[type="submit"].button-outline-3, input[type="reset"].button-outline-3 {
  color: #f9f871;
  background: none;
  background-color: transparent;
  border-color: #f9f871;
}
.button.button-outline-3:hover, button:not(.joomla-alert--close):not(.jooa11y-btn):not(.f-button):not(.c-bn):not(.b-tl).button-outline-3:hover, .btn.button-outline-3:hover, .btn-primary.button-outline-3:hover, input[type="button"].button-outline-3:hover, input[type="submit"].button-outline-3:hover, input[type="reset"].button-outline-3:hover {
  color: #111111;
  background: #f9f871;
  border-color: #f9f871;
}
.button.button-white, button:not(.joomla-alert--close):not(.jooa11y-btn):not(.f-button):not(.c-bn):not(.b-tl).button-white, .btn.button-white, .btn-primary.button-white, input[type="button"].button-white, input[type="submit"].button-white, input[type="reset"].button-white {
  color: #111111;
  background: #fff;
  border-color: #fff;
}
.button.button-white:hover, button:not(.joomla-alert--close):not(.jooa11y-btn):not(.f-button):not(.c-bn):not(.b-tl).button-white:hover, .btn.button-white:hover, .btn-primary.button-white:hover, input[type="button"].button-white:hover, input[type="submit"].button-white:hover, input[type="reset"].button-white:hover {
  color: #111111;
  background: #f9f871;
  border-color: #f9f871;
}
.button.button-white-outline, .moduletable.c-newsletter .acym_module_form .acysubbuttons .button, .com_content.view-category.layout-blog.c-ri-projects .com-content-category-blog .com-content-category-blog__items .com-content-category-blog__item .readmore a.button.btn, button:not(.joomla-alert--close):not(.jooa11y-btn):not(.f-button):not(.c-bn):not(.b-tl).button-white-outline, .moduletable.c-newsletter .acym_module_form .acysubbuttons button.button:not(.joomla-alert--close):not(.jooa11y-btn):not(.f-button):not(.c-bn):not(.b-tl), .btn.button-white-outline, .moduletable.c-newsletter .acym_module_form .acysubbuttons .btn.button, .com_content.view-category.layout-blog.c-ri-projects .com-content-category-blog .com-content-category-blog__items .com-content-category-blog__item .readmore a.btn, .btn-primary.button-white-outline, .moduletable.c-newsletter .acym_module_form .acysubbuttons .btn-primary.button, .com_content.view-category.layout-blog.c-ri-projects .com-content-category-blog .com-content-category-blog__items .com-content-category-blog__item .readmore a.btn-primary.btn, input[type="button"].button-white-outline, .moduletable.c-newsletter .acym_module_form .acysubbuttons input.button[type="button"], input[type="submit"].button-white-outline, .moduletable.c-newsletter .acym_module_form .acysubbuttons input.button[type="submit"], input[type="reset"].button-white-outline, .moduletable.c-newsletter .acym_module_form .acysubbuttons input.button[type="reset"] {
  color: #fff;
  background: none;
  background-color: transparent;
  border-color: #fff;
}
.button.button-white-outline:hover, .moduletable.c-newsletter .acym_module_form .acysubbuttons .button:hover, .com_content.view-category.layout-blog.c-ri-projects .com-content-category-blog .com-content-category-blog__items .com-content-category-blog__item .readmore a.button.btn:hover, button:not(.joomla-alert--close):not(.jooa11y-btn):not(.f-button):not(.c-bn):not(.b-tl).button-white-outline:hover, .moduletable.c-newsletter .acym_module_form .acysubbuttons button.button:not(.joomla-alert--close):not(.jooa11y-btn):not(.f-button):not(.c-bn):not(.b-tl):hover, .btn.button-white-outline:hover, .moduletable.c-newsletter .acym_module_form .acysubbuttons .btn.button:hover, .com_content.view-category.layout-blog.c-ri-projects .com-content-category-blog .com-content-category-blog__items .com-content-category-blog__item .readmore a.btn:hover, .btn-primary.button-white-outline:hover, .moduletable.c-newsletter .acym_module_form .acysubbuttons .btn-primary.button:hover, .com_content.view-category.layout-blog.c-ri-projects .com-content-category-blog .com-content-category-blog__items .com-content-category-blog__item .readmore a.btn-primary.btn:hover, input[type="button"].button-white-outline:hover, .moduletable.c-newsletter .acym_module_form .acysubbuttons input.button[type="button"]:hover, input[type="submit"].button-white-outline:hover, .moduletable.c-newsletter .acym_module_form .acysubbuttons input.button[type="submit"]:hover, input[type="reset"].button-white-outline:hover, .moduletable.c-newsletter .acym_module_form .acysubbuttons input.button[type="reset"]:hover {
  color: #111111;
  background: #fff;
  border-color: #fff;
}
.button.button-arrow:after, button:not(.joomla-alert--close):not(.jooa11y-btn):not(.f-button):not(.c-bn):not(.b-tl).button-arrow:after, .btn.button-arrow:after, .btn-primary.button-arrow:after, input[type="button"].button-arrow:after, input[type="submit"].button-arrow:after, input[type="reset"].button-arrow:after {
  content: "";
  display: inline-block;
  font-family: "Font Awesome 5 Free";
  font-size: inherit;
  font-weight: 900;
  line-height: normal;
  margin-left: 10px;
}
.button.button-download:before, button:not(.joomla-alert--close):not(.jooa11y-btn):not(.f-button):not(.c-bn):not(.b-tl).button-download:before, .btn.button-download:before, .btn-primary.button-download:before, input[type="button"].button-download:before, input[type="submit"].button-download:before, input[type="reset"].button-download:before {
  content: "";
  display: inline-block;
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  font-size: inherit;
  line-height: normal;
  margin-right: 10px;
}
/* ****** */
/* TABLES */
/* ****** */
table:not(.table) {
  border: 1px solid #dce2e9;
}
table:not(.table) th {
  background: #eceff3;
  padding: 0.5rem;
}
table:not(.table) td {
  padding: 0.5rem;
}
/* ****** */
/* COMMON */
/* ****** */
h1:first-child, h2:first-child, h3:first-child, h4:first-child, h5:first-child, h6:first-child, p:first-child, ul:first-child, ol:first-child {
  margin-top: 0 !important;
}
h1:last-child, h2:last-child, h3:last-child, h4:last-child, h5:last-child, h6:last-child, p:last-child, ul:last-child, ol:last-child {
  margin-bottom: 0 !important;
}
/* ********* */
/* BOOTSTRAP */
/* ********* */
.container, .container-fluid, .container-sm, .container-md, .container-lg, .container-xl, .container-xxl {
  padding: 0;
  margin: 0;
}
.container .row, .container-fluid .row, .container-sm .row, .container-md .row, .container-lg .row, .container-xl .row, .container-xxl .row {
  padding: 0;
  margin: 0;
}
.container .row .col, .container .row > *, .container-fluid .row .col, .container-fluid .row > *, .container-sm .row .col, .container-sm .row > *, .container-md .row .col, .container-md .row > *, .container-lg .row .col, .container-lg .row > *, .container-xl .row .col, .container-xl .row > *, .container-xxl .row .col, .container-xxl .row > * {
  padding: 0;
  margin: 0;
}
.list-group {
  border-radius: 0;
}
.input-group > * {
  border-radius: 0;
}
.input-group > *:first-child {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}
.input-group > *:last-child {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}
/* ****** */
/* GANTRY */
/* ****** */
.g-container {
  width: 100%;
}
@media only all and (min-width: 75rem) {
  .g-container {
    padding-left: 35px;
    padding-right: 35px;
  }
}
@media only all and (min-width: 60rem) and (max-width: 74.99rem) {
  .g-container {
    padding-left: 35px;
    padding-right: 35px;
  }
}
.g-content {
  margin: 10px;
  padding: 15px;
}
.g-title {
  margin-bottom: 15px;
  text-wrap: balance;
}
/* ********* */
/* UTILITIES */
/* ********* */
.com-content-article.c-narrow-content .com-content-article__body {
  max-width: 900px;
  margin-left: auto;
  margin-right: auto;
}
.c-bg-accent-1 {
  position: relative;
  background: #0055a5;
}
.c-bg-accent-1::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  width: calc(100vw + 2px);
  margin-left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  background: #0055a5;
  z-index: 1;
}
.c-bg-accent-1 > * {
  position: relative;
  z-index: 3;
  color: #fff;
}
.c-bg-accent-1 a {
  color: inherit;
}
.c-bg-accent-1 a:hover {
  color: #fff;
}
.c-bg-accent-2 {
  position: relative;
  background: #f9f871;
}
.c-bg-accent-2::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  width: calc(100vw + 2px);
  margin-left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  background: #f9f871;
  z-index: 1;
}
.c-bg-accent-2 > * {
  position: relative;
  z-index: 3;
}
.c-bg-grey {
  position: relative;
  background: #f4f4f9;
}
.c-bg-grey::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  width: calc(100vw + 2px);
  margin-left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  background: #f4f4f9;
  z-index: 1;
}
.c-bg-grey > * {
  position: relative;
  z-index: 3;
}
.c-bg-grey-dark {
  position: relative;
  background: #58585a;
}
.c-bg-grey-dark::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  left: calc(-50vw + 50%);
  right: calc(-50vw + 50%);
  width: calc(100vw + 2px);
  /*margin-left: 50%;
		-webkit-transform: translateX(-50%);
		transform: translateX(-50%);*/
  background: #58585a;
  z-index: 1;
}
.c-bg-grey-dark > * {
  position: relative;
  z-index: 3;
  color: rgba(255, 255, 255, 0.8);
}
.c-bg-white {
  position: relative;
  background: #fff;
}
.c-bg-white::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  left: calc(-50vw + 50%);
  right: calc(-50vw + 50%);
  background: #fff;
  z-index: 1;
}
.c-bg-white > * {
  position: relative;
  z-index: 3;
}
.c-section-separator-top {
  position: relative;
}
.c-section-separator-top::after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  bottom: auto;
  left: calc(-50vw + 50%);
  right: calc(-50vw + 50%);
  width: auto;
  height: 2px;
  background: #f4f4f9;
  z-index: 1;
}
[class*="c-section--"] {
  padding: var(--section-padding) 0;
  position: relative;
}
[class*="c-section--"] .c-title :is(h1, h2, h3, h4, h5, h6):has(+ :is(h1, h2, h3, h4, h5, h6)) {
  margin-bottom: 0;
}
[class*="c-section--"] .c-title :is(h1, h2, h3, h4, h5, h6) + :is(h1, h2, h3, h4, h5, h6) {
  margin-top: 10px;
}
[class*="c-section--"] .c-text:not(:first-child) {
  margin-top: 15px;
}
[class*="c-section--"] .c-list {
  margin-top: 15px;
  display: flex;
  flex-flow: column;
  gap: 15px;
}
[class*="c-section--"] .c-list p {
  margin: 0;
  display: flex;
  align-items: center;
  gap: 15px;
  font-size: 120%;
}
[class*="c-section--"] .c-list p::before {
  content: "";
  display: inline-block;
  width: 34px;
  height: 34px;
  padding: 5px;
  box-sizing: content-box;
  background-image: url('../../../../images/icons/check.svg');
  background-color: #f4f4f9;
  border: solid 1px rgba(0, 0, 0, 0.05);
  background-size: 20px;
  background-position: center center;
  background-repeat: no-repeat;
  border-radius: 50%;
  flex-shrink: 0;
}
[class*="c-section--"] .c-buttons {
  display: flex;
  gap: 10px 15px;
  flex-wrap: wrap;
}
[class*="c-section--"] .c-buttons:not(:first-child) {
  margin-top: 25px;
}
[class*="c-section--"] .c-buttons p:has(.button) {
  margin: 0;
}
[class*="c-section--"] .c-buttons p:not(:has(.button)) {
  width: 100%;
}
[class*="c-section--"] a:not(.button):not(.btn) {
  text-decoration: underline;
}
[class*="c-section--"] ol {
  display: inline-block;
  width: fit-content;
  margin-top: 0;
  margin-bottom: 0;
  text-align: left;
}
.c-section--common--intro {
  position: relative;
  background: #0055a5;
  position: relative;
}
.c-section--common--intro::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  width: calc(100vw + 2px);
  margin-left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  background: #0055a5;
  z-index: 1;
}
.c-section--common--intro > * {
  position: relative;
  z-index: 3;
  color: #fff;
}
.c-section--common--intro a {
  color: inherit;
}
.c-section--common--intro a:hover {
  color: #fff;
}
@media only all and (min-width: 75rem) {
  .c-section--common--intro {
    padding-top: 150px;
    padding-bottom: 150px;
  }
}
@media only all and (min-width: 60rem) and (max-width: 74.99rem) {
  .c-section--common--intro {
    padding-top: 75px;
    padding-bottom: 75px;
  }
}
@media only all and (min-width: 48rem) and (max-width: 59.99rem) {
  .c-section--common--intro {
    padding-top: 75px;
    padding-bottom: 75px;
  }
}
@media only all and (min-width: 30.01rem) and (max-width: 47.99rem) {
  .c-section--common--intro {
    padding-top: 50px;
    padding-bottom: 50px;
  }
}
@media only all and (max-width: 30rem) {
  .c-section--common--intro {
    padding-top: 50px;
    padding-bottom: 50px;
  }
}
.c-section--common--intro > *:not(.c-image) {
  position: relative;
  z-index: 2;
  margin-left: auto;
  margin-right: auto;
  text-align: center;
  color: #fff;
}
@media only all and (min-width: 75rem) {
  .c-section--common--intro .c-title h1 {
    font-size: 3.5rem;
  }
}
@media only all and (min-width: 60rem) and (max-width: 74.99rem) {
  .c-section--common--intro .c-title h1 {
    font-size: 3rem;
  }
}
@media only all and (min-width: 48rem) and (max-width: 59.99rem) {
  .c-section--common--intro .c-title h1 {
    font-size: 3rem;
  }
}
@media only all and (min-width: 30.01rem) and (max-width: 47.99rem) {
  .c-section--common--intro .c-title h1 {
    font-size: 2.25rem;
  }
}
@media only all and (max-width: 30rem) {
  .c-section--common--intro .c-title h1 {
    font-size: 2rem;
  }
}
.c-section--common--intro .c-title strong {
  font-weight: inherit;
  color: #f9f871;
}
.c-section--common--intro .c-text {
  text-wrap: balance;
}
@media only all and (min-width: 75rem) {
  .c-section--common--intro .c-text {
    font-size: 130%;
  }
}
@media only all and (min-width: 60rem) and (max-width: 74.99rem) {
  .c-section--common--intro .c-text {
    font-size: 120%;
  }
}
@media only all and (min-width: 48rem) and (max-width: 59.99rem) {
  .c-section--common--intro .c-text {
    font-size: 110%;
  }
}
.c-section--common--intro .c-text:not(:first-child) {
  margin-top: 25px;
}
.c-section--common--intro .c-buttons {
  margin-top: 35px !important;
  justify-content: center;
}
.c-section--common--intro .c-image {
  position: absolute;
  z-index: 1;
  top: 0;
  bottom: 0;
  left: calc(-50vw + 50%);
  right: calc(-50vw + 50%);
}
.c-section--common--intro .c-image::before {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.35);
  pointer-events: none;
  z-index: 3;
}
.c-section--common--intro .c-image img {
  object-fit: cover;
  object-position: center center;
  width: 100%;
  height: 100%;
  filter: contrast(1.1) brightness(0.9);
}
.c-section--common--problem-solution {
  display: grid;
  gap: calc(2 * var(--section-padding) + 50px);
  position: relative;
}
@media only all and (min-width: 75rem) {
  .c-section--common--problem-solution {
    grid-template-columns: 1fr 1fr;
  }
}
@media only all and (min-width: 60rem) and (max-width: 74.99rem) {
  .c-section--common--problem-solution {
    grid-template-columns: 1fr 1fr;
  }
}
@media only all and (min-width: 48rem) and (max-width: 59.99rem) {
  .c-section--common--problem-solution {
    grid-template-columns: 100%;
  }
}
@media only all and (min-width: 30.01rem) and (max-width: 47.99rem) {
  .c-section--common--problem-solution {
    grid-template-columns: 100%;
  }
}
@media only all and (max-width: 30rem) {
  .c-section--common--problem-solution {
    grid-template-columns: 100%;
  }
}
.c-section--common--problem-solution .c-problem > * {
  max-width: 600px;
}
.c-section--common--problem-solution .c-solution {
  position: relative;
}
.c-section--common--problem-solution .c-solution::before {
  content: "";
  position: absolute;
  background: #f4f4f9;
}
@media only all and (min-width: 75rem) {
  .c-section--common--problem-solution .c-solution::before {
    top: calc(-1 * var(--section-padding));
    bottom: calc(-1 * var(--section-padding));
    left: calc(-1 * (var(--section-padding) + 25px + 1px));
    right: auto;
    width: 2px;
    height: auto;
  }
}
@media only all and (min-width: 60rem) and (max-width: 74.99rem) {
  .c-section--common--problem-solution .c-solution::before {
    top: calc(-1 * var(--section-padding));
    bottom: calc(-1 * var(--section-padding));
    left: calc(-1 * (var(--section-padding) + 25px + 1px));
    right: auto;
    width: 2px;
    height: auto;
  }
}
@media only all and (min-width: 48rem) and (max-width: 59.99rem) {
  .c-section--common--problem-solution .c-solution::before {
    top: calc(-1 * (var(--section-padding) + 25px + 1px));
    bottom: auto;
    left: calc(-50vw + 50%);
    right: calc(-50vw + 50%);
    width: auto;
    height: 2px;
  }
}
@media only all and (min-width: 30.01rem) and (max-width: 47.99rem) {
  .c-section--common--problem-solution .c-solution::before {
    top: calc(-1 * (var(--section-padding) + 25px + 1px));
    bottom: auto;
    left: calc(-50vw + 50%);
    right: calc(-50vw + 50%);
    width: auto;
    height: 2px;
  }
}
@media only all and (max-width: 30rem) {
  .c-section--common--problem-solution .c-solution::before {
    top: calc(-1 * (var(--section-padding) + 25px + 1px));
    bottom: auto;
    left: calc(-50vw + 50%);
    right: calc(-50vw + 50%);
    width: auto;
    height: 2px;
  }
}
.c-section--common--problem-solution .c-solution::after {
  content: "";
  position: absolute;
  border: solid 2px #f4f4f9;
  border-radius: 50%;
  background-color: #fff;
  background-image: url('../../../../images/icons/arrow-right-grey.svg');
  background-position: center center;
  background-repeat: no-repeat;
}
@media only all and (min-width: 75rem) {
  .c-section--common--problem-solution .c-solution::after {
    width: 100px;
    height: 100px;
    background-size: 50px;
    top: calc(50% - 50px);
    bottom: auto;
    left: calc(-1 * (var(--section-padding) + 25px + 1px + 50px));
    right: auto;
  }
}
@media only all and (min-width: 60rem) and (max-width: 74.99rem) {
  .c-section--common--problem-solution .c-solution::after {
    width: 100px;
    height: 100px;
    background-size: 50px;
    top: calc(50% - 50px);
    bottom: auto;
    left: calc(-1 * (var(--section-padding) + 25px + 1px + 50px));
    right: auto;
  }
}
@media only all and (min-width: 48rem) and (max-width: 59.99rem) {
  .c-section--common--problem-solution .c-solution::after {
    width: 70px;
    height: 70px;
    background-size: 25px;
    top: calc(-1 * (var(--section-padding) + 25px + 1px + 35px));
    bottom: auto;
    left: calc(50% - 35px);
    right: auto;
    transform: rotate(90deg);
  }
}
@media only all and (min-width: 30.01rem) and (max-width: 47.99rem) {
  .c-section--common--problem-solution .c-solution::after {
    width: 70px;
    height: 70px;
    background-size: 25px;
    top: calc(-1 * (var(--section-padding) + 25px + 1px + 35px));
    bottom: auto;
    left: calc(50% - 35px);
    right: auto;
    transform: rotate(90deg);
  }
}
@media only all and (max-width: 30rem) {
  .c-section--common--problem-solution .c-solution::after {
    width: 70px;
    height: 70px;
    background-size: 25px;
    top: calc(-1 * (var(--section-padding) + 25px + 1px + 35px));
    bottom: auto;
    left: calc(50% - 35px);
    right: auto;
    transform: rotate(90deg);
  }
}
.c-section--common--problem-solution .c-solution > * {
  max-width: 600px;
}
.c-section--common--long-text {
  display: grid;
  column-gap: var(--section-padding);
}
@media only all and (min-width: 75rem) {
  .c-section--common--long-text {
    grid-template-columns: 1fr 2fr;
    grid-template-areas: "title text" "buttons buttons";
  }
}
@media only all and (min-width: 60rem) and (max-width: 74.99rem) {
  .c-section--common--long-text {
    grid-template-columns: 100%;
    grid-template-areas: "title" "text" "buttons";
  }
}
@media only all and (min-width: 48rem) and (max-width: 59.99rem) {
  .c-section--common--long-text {
    grid-template-columns: 100%;
    grid-template-areas: "title" "text" "buttons";
  }
}
@media only all and (min-width: 30.01rem) and (max-width: 47.99rem) {
  .c-section--common--long-text {
    grid-template-columns: 100%;
    grid-template-areas: "title" "text" "buttons";
  }
}
@media only all and (max-width: 30rem) {
  .c-section--common--long-text {
    grid-template-columns: 100%;
    grid-template-areas: "title" "text" "buttons";
  }
}
.c-section--common--long-text .c-title {
  grid-area: title;
}
.c-section--common--long-text .c-text {
  grid-area: text;
}
@media only all and (min-width: 75rem) {
  .c-section--common--long-text .c-text {
    margin-top: 0 !important;
    column-count: 2;
    column-gap: var(--section-padding);
  }
}
@media only all and (min-width: 60rem) and (max-width: 74.99rem) {
  .c-section--common--long-text .c-text {
    margin-top: 25px !important;
    column-count: 2;
    column-gap: var(--section-padding);
  }
}
@media only all and (min-width: 48rem) and (max-width: 59.99rem) {
  .c-section--common--long-text .c-text {
    margin-top: 25px !important;
    column-count: 2;
    column-gap: var(--section-padding);
  }
}
@media only all and (min-width: 30.01rem) and (max-width: 47.99rem) {
  .c-section--common--long-text .c-text {
    margin-top: 25px !important;
  }
}
@media only all and (max-width: 30rem) {
  .c-section--common--long-text .c-text {
    margin-top: 25px !important;
  }
}
.c-section--common--long-text .c-buttons {
  grid-area: buttons;
  margin-top: 35px !important;
}
@media only all and (min-width: 75rem) {
  .c-section--common--long-text .c-buttons {
    justify-content: end;
  }
}
.c-section--common--3-steps {
  display: grid;
  gap: 35px var(--section-padding);
}
@media only all and (min-width: 75rem) {
  .c-section--common--3-steps {
    grid-template-columns: 1fr 2.5fr;
    grid-template-rows: 1fr auto;
    grid-template-areas: "title steps" "buttons steps";
  }
}
@media only all and (min-width: 60rem) and (max-width: 74.99rem) {
  .c-section--common--3-steps {
    grid-template-columns: 100%;
    grid-template-areas: "title" "steps" "buttons";
  }
}
@media only all and (min-width: 48rem) and (max-width: 59.99rem) {
  .c-section--common--3-steps {
    grid-template-columns: 100%;
    grid-template-areas: "title" "steps" "buttons";
  }
}
@media only all and (min-width: 30.01rem) and (max-width: 47.99rem) {
  .c-section--common--3-steps {
    grid-template-columns: 100%;
    grid-template-areas: "title" "steps" "buttons";
  }
}
@media only all and (max-width: 30rem) {
  .c-section--common--3-steps {
    grid-template-columns: 100%;
    grid-template-areas: "title" "steps" "buttons";
  }
}
.c-section--common--3-steps .c-title {
  grid-area: title;
}
.c-section--common--3-steps .c-steps {
  grid-area: steps;
  display: grid;
  gap: 35px;
}
@media only all and (min-width: 75rem) {
  .c-section--common--3-steps .c-steps {
    grid-template-columns: 1fr 1fr 1fr;
  }
}
@media only all and (min-width: 60rem) and (max-width: 74.99rem) {
  .c-section--common--3-steps .c-steps {
    grid-template-columns: 1fr 1fr 1fr;
  }
}
@media only all and (min-width: 48rem) and (max-width: 59.99rem) {
  .c-section--common--3-steps .c-steps {
    grid-template-columns: 1fr 1fr 1fr;
  }
}
@media only all and (min-width: 30.01rem) and (max-width: 47.99rem) {
  .c-section--common--3-steps .c-steps {
    grid-template-columns: 1fr;
  }
}
@media only all and (max-width: 30rem) {
  .c-section--common--3-steps .c-steps {
    grid-template-columns: 1fr;
  }
}
.c-section--common--3-steps .c-steps .c-step {
  background: #fff;
  border: solid 2px rgba(0, 0, 0, 0.05);
  position: relative;
  display: grid;
  gap: 15px;
}
@media only all and (min-width: 75rem) {
  .c-section--common--3-steps .c-steps .c-step {
    padding: 35px;
    grid-template-columns: 100%;
    grid-template-rows: auto auto 1fr;
  }
}
@media only all and (min-width: 60rem) and (max-width: 74.99rem) {
  .c-section--common--3-steps .c-steps .c-step {
    padding: 35px;
    grid-template-columns: 100%;
    grid-template-rows: auto auto 1fr;
  }
}
@media only all and (min-width: 48rem) and (max-width: 59.99rem) {
  .c-section--common--3-steps .c-steps .c-step {
    padding: 35px;
    grid-template-columns: 100%;
    grid-template-rows: auto auto 1fr;
  }
}
@media only all and (min-width: 30.01rem) and (max-width: 47.99rem) {
  .c-section--common--3-steps .c-steps .c-step {
    padding: 35px;
    grid-template-columns: auto 1fr;
  }
}
@media only all and (max-width: 30rem) {
  .c-section--common--3-steps .c-steps .c-step {
    padding: 25px;
    grid-template-columns: auto 1fr;
  }
}
.c-section--common--3-steps .c-steps .c-step:not(:last-child)::before {
  content: "";
  display: block;
  width: 30px;
  height: 30px;
  position: absolute;
  z-index: 1;
  background: #fff;
  border: solid 2px rgba(0, 0, 0, 0.05);
  transform: rotate(45deg);
}
@media only all and (min-width: 75rem) {
  .c-section--common--3-steps .c-steps .c-step:not(:last-child)::before {
    top: calc(50% - 15px);
    bottom: auto;
    left: auto;
    right: -15px;
  }
}
@media only all and (min-width: 60rem) and (max-width: 74.99rem) {
  .c-section--common--3-steps .c-steps .c-step:not(:last-child)::before {
    top: calc(50% - 15px);
    bottom: auto;
    left: auto;
    right: -15px;
  }
}
@media only all and (min-width: 48rem) and (max-width: 59.99rem) {
  .c-section--common--3-steps .c-steps .c-step:not(:last-child)::before {
    top: calc(50% - 15px);
    bottom: auto;
    left: auto;
    right: -15px;
  }
}
@media only all and (min-width: 30.01rem) and (max-width: 47.99rem) {
  .c-section--common--3-steps .c-steps .c-step:not(:last-child)::before {
    top: auto;
    bottom: -15px;
    left: calc(50% - 15px);
    right: auto;
  }
}
@media only all and (max-width: 30rem) {
  .c-section--common--3-steps .c-steps .c-step:not(:last-child)::before {
    top: auto;
    bottom: -15px;
    left: calc(50% - 15px);
    right: auto;
  }
}
.c-section--common--3-steps .c-steps .c-step:not(:last-child)::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 2;
  background: #fff;
}
.c-section--common--3-steps .c-steps .c-step p {
  position: relative;
  z-index: 3;
  margin: 0;
}
.c-section--common--3-steps .c-steps .c-step p:first-child:not(:has(img)) {
  padding-bottom: 10px;
  font-size: 80%;
  text-transform: uppercase;
  letter-spacing: 1px;
  border-bottom: solid 1px rgba(0, 0, 0, 0.15);
  grid-column: 1 / -1;
}
.c-section--common--3-steps .c-steps .c-step img {
  width: 60px;
  height: 60px;
  margin: 5px 0;
  object-fit: contain;
  object-position: center center;
}
.c-section--common--3-steps .c-buttons {
  grid-area: buttons;
  margin-top: 0 !important;
}
.c-section--common--3-steps .c-buttons p {
  margin: 0;
}
.c-section--common--4-steps .c-title {
  grid-area: title;
}
.c-section--common--4-steps .c-steps {
  margin-top: 35px;
  grid-area: steps;
  display: grid;
  gap: 35px;
}
.c-section--common--4-steps .c-steps:not(:last-child) {
  margin-bottom: 35px;
}
@media only all and (min-width: 75rem) {
  .c-section--common--4-steps .c-steps {
    grid-template-columns: 1fr 1fr 1fr 1fr;
  }
}
@media only all and (min-width: 60rem) and (max-width: 74.99rem) {
  .c-section--common--4-steps .c-steps {
    grid-template-columns: 1fr 1fr;
  }
}
@media only all and (min-width: 48rem) and (max-width: 59.99rem) {
  .c-section--common--4-steps .c-steps {
    grid-template-columns: 1fr 1fr;
  }
}
@media only all and (min-width: 30.01rem) and (max-width: 47.99rem) {
  .c-section--common--4-steps .c-steps {
    grid-template-columns: 1fr;
  }
}
@media only all and (max-width: 30rem) {
  .c-section--common--4-steps .c-steps {
    grid-template-columns: 1fr;
  }
}
.c-section--common--4-steps .c-steps .c-step {
  background: #fff;
  border: solid 2px rgba(0, 0, 0, 0.05);
  position: relative;
  display: grid;
  gap: 15px;
}
@media only all and (min-width: 75rem) {
  .c-section--common--4-steps .c-steps .c-step {
    padding: 35px;
    grid-template-columns: 100%;
    grid-template-rows: auto auto 1fr;
  }
}
@media only all and (min-width: 60rem) and (max-width: 74.99rem) {
  .c-section--common--4-steps .c-steps .c-step {
    padding: 35px;
    grid-template-columns: 100%;
    grid-template-rows: auto auto 1fr;
  }
}
@media only all and (min-width: 48rem) and (max-width: 59.99rem) {
  .c-section--common--4-steps .c-steps .c-step {
    padding: 35px;
    grid-template-columns: 100%;
    grid-template-rows: auto auto 1fr;
  }
}
@media only all and (min-width: 30.01rem) and (max-width: 47.99rem) {
  .c-section--common--4-steps .c-steps .c-step {
    padding: 35px;
    grid-template-columns: auto 1fr;
  }
}
@media only all and (max-width: 30rem) {
  .c-section--common--4-steps .c-steps .c-step {
    padding: 25px;
    grid-template-columns: auto 1fr;
  }
}
.c-section--common--4-steps .c-steps .c-step:not(:last-child)::before {
  content: "";
  display: block;
  width: 30px;
  height: 30px;
  position: absolute;
  z-index: 1;
  background: #fff;
  border: solid 2px rgba(0, 0, 0, 0.05);
  transform: rotate(45deg);
}
@media only all and (min-width: 75rem) {
  .c-section--common--4-steps .c-steps .c-step:not(:last-child)::before {
    top: calc(50% - 15px);
    bottom: auto;
    left: auto;
    right: -15px;
  }
}
@media only all and (min-width: 60rem) and (max-width: 74.99rem) {
  .c-section--common--4-steps .c-steps .c-step:not(:last-child)::before {
    top: calc(50% - 15px);
    bottom: auto;
    left: auto;
    right: -15px;
  }
}
@media only all and (min-width: 48rem) and (max-width: 59.99rem) {
  .c-section--common--4-steps .c-steps .c-step:not(:last-child)::before {
    top: calc(50% - 15px);
    bottom: auto;
    left: auto;
    right: -15px;
  }
}
@media only all and (min-width: 30.01rem) and (max-width: 47.99rem) {
  .c-section--common--4-steps .c-steps .c-step:not(:last-child)::before {
    top: auto;
    bottom: -15px;
    left: calc(50% - 15px);
    right: auto;
  }
}
@media only all and (max-width: 30rem) {
  .c-section--common--4-steps .c-steps .c-step:not(:last-child)::before {
    top: auto;
    bottom: -15px;
    left: calc(50% - 15px);
    right: auto;
  }
}
.c-section--common--4-steps .c-steps .c-step:not(:last-child)::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 2;
  background: #fff;
}
.c-section--common--4-steps .c-steps .c-step p {
  position: relative;
  z-index: 3;
  margin: 0;
}
.c-section--common--4-steps .c-steps .c-step p:first-child:not(:has(img)) {
  padding-bottom: 10px;
  font-size: 80%;
  text-transform: uppercase;
  letter-spacing: 1px;
  border-bottom: solid 1px rgba(0, 0, 0, 0.15);
  grid-column: 1 / -1;
}
.c-section--common--4-steps .c-steps .c-step p strong {
  display: block;
  margin-bottom: 10px;
  font-size: 110%;
}
.c-section--common--4-steps .c-steps .c-step img {
  width: 60px;
  height: 60px;
  margin: 5px 0;
  object-fit: contain;
  object-position: center center;
}
.c-section--common--4-steps .c-buttons {
  grid-area: buttons;
}
.c-section--common--4-steps .c-buttons p {
  margin: 0;
}
.c-section--common--text-image {
  display: grid;
}
@media only all and (min-width: 75rem) {
  .c-section--common--text-image {
    grid-template-columns: 50% 50%;
    grid-template-areas: "other image";
  }
}
@media only all and (min-width: 60rem) and (max-width: 74.99rem) {
  .c-section--common--text-image {
    grid-template-columns: 50% 50%;
    grid-template-areas: "other image";
  }
}
@media only all and (min-width: 48rem) and (max-width: 59.99rem) {
  .c-section--common--text-image {
    grid-template-columns: 100%;
    grid-template-areas: "image" "other";
  }
}
@media only all and (min-width: 30.01rem) and (max-width: 47.99rem) {
  .c-section--common--text-image {
    grid-template-columns: 100%;
    grid-template-areas: "image" "other";
  }
}
@media only all and (max-width: 30rem) {
  .c-section--common--text-image {
    grid-template-columns: 100%;
    grid-template-areas: "image" "other";
  }
}
.c-section--common--text-image .c-other {
  grid-area: other;
}
@media only all and (min-width: 75rem) {
  .c-section--common--text-image .c-other {
    margin-right: var(--section-padding);
  }
}
@media only all and (min-width: 60rem) and (max-width: 74.99rem) {
  .c-section--common--text-image .c-other {
    margin-right: var(--section-padding);
  }
}
@media only all and (min-width: 48rem) and (max-width: 59.99rem) {
  .c-section--common--text-image .c-other {
    margin-top: var(--section-padding);
  }
}
@media only all and (min-width: 30.01rem) and (max-width: 47.99rem) {
  .c-section--common--text-image .c-other {
    margin-top: var(--section-padding);
  }
}
@media only all and (max-width: 30rem) {
  .c-section--common--text-image .c-other {
    margin-top: var(--section-padding);
  }
}
.c-section--common--text-image .c-image {
  grid-area: image;
  position: relative;
}
@media only all and (min-width: 48rem) and (max-width: 59.99rem) {
  .c-section--common--text-image .c-image {
    height: 300px;
  }
}
@media only all and (min-width: 30.01rem) and (max-width: 47.99rem) {
  .c-section--common--text-image .c-image {
    height: 250px;
  }
}
@media only all and (max-width: 30rem) {
  .c-section--common--text-image .c-image {
    height: 200px;
  }
}
.c-section--common--text-image .c-image p {
  position: absolute;
}
@media only all and (min-width: 75rem) {
  .c-section--common--text-image .c-image p {
    top: calc(-1 * var(--section-padding));
    bottom: calc(-1 * var(--section-padding));
    left: 0;
    right: calc(-1 * var(--section-padding));
  }
}
@media only all and (min-width: 60rem) and (max-width: 74.99rem) {
  .c-section--common--text-image .c-image p {
    top: calc(-1 * var(--section-padding));
    bottom: calc(-1 * var(--section-padding));
    left: 0;
    right: calc(-1 * var(--section-padding));
  }
}
@media only all and (min-width: 48rem) and (max-width: 59.99rem) {
  .c-section--common--text-image .c-image p {
    top: calc(-1 * var(--section-padding));
    bottom: 0;
    left: calc(-1 * var(--section-padding));
    right: calc(-1 * var(--section-padding));
  }
}
@media only all and (min-width: 30.01rem) and (max-width: 47.99rem) {
  .c-section--common--text-image .c-image p {
    top: calc(-1 * var(--section-padding));
    bottom: 0;
    left: calc(-1 * var(--section-padding));
    right: calc(-1 * var(--section-padding));
  }
}
@media only all and (max-width: 30rem) {
  .c-section--common--text-image .c-image p {
    top: calc(-1 * var(--section-padding));
    bottom: 0;
    left: calc(-1 * var(--section-padding));
    right: calc(-1 * var(--section-padding));
  }
}
.c-section--common--text-image .c-image p img {
  object-fit: cover;
  object-position: center center;
  width: 100%;
  height: 100%;
}
.c-section--common--image-text {
  display: grid;
}
@media only all and (min-width: 75rem) {
  .c-section--common--image-text {
    grid-template-columns: 50% 50%;
    grid-template-areas: "image other";
  }
}
@media only all and (min-width: 60rem) and (max-width: 74.99rem) {
  .c-section--common--image-text {
    grid-template-columns: 50% 50%;
    grid-template-areas: "image other";
  }
}
@media only all and (min-width: 48rem) and (max-width: 59.99rem) {
  .c-section--common--image-text {
    grid-template-columns: 100%;
    grid-template-areas: "image" "other";
  }
}
@media only all and (min-width: 30.01rem) and (max-width: 47.99rem) {
  .c-section--common--image-text {
    grid-template-columns: 100%;
    grid-template-areas: "image" "other";
  }
}
@media only all and (max-width: 30rem) {
  .c-section--common--image-text {
    grid-template-columns: 100%;
    grid-template-areas: "image" "other";
  }
}
.c-section--common--image-text .c-other {
  grid-area: other;
}
@media only all and (min-width: 75rem) {
  .c-section--common--image-text .c-other {
    margin-left: var(--section-padding);
  }
}
@media only all and (min-width: 60rem) and (max-width: 74.99rem) {
  .c-section--common--image-text .c-other {
    margin-left: var(--section-padding);
  }
}
@media only all and (min-width: 48rem) and (max-width: 59.99rem) {
  .c-section--common--image-text .c-other {
    margin-top: var(--section-padding);
  }
}
@media only all and (min-width: 30.01rem) and (max-width: 47.99rem) {
  .c-section--common--image-text .c-other {
    margin-top: var(--section-padding);
  }
}
@media only all and (max-width: 30rem) {
  .c-section--common--image-text .c-other {
    margin-top: var(--section-padding);
  }
}
.c-section--common--image-text .c-image {
  grid-area: image;
  position: relative;
}
@media only all and (min-width: 48rem) and (max-width: 59.99rem) {
  .c-section--common--image-text .c-image {
    height: 300px;
  }
}
@media only all and (min-width: 30.01rem) and (max-width: 47.99rem) {
  .c-section--common--image-text .c-image {
    height: 250px;
  }
}
@media only all and (max-width: 30rem) {
  .c-section--common--image-text .c-image {
    height: 200px;
  }
}
.c-section--common--image-text .c-image p {
  position: absolute;
}
@media only all and (min-width: 75rem) {
  .c-section--common--image-text .c-image p {
    top: calc(-1 * var(--section-padding));
    bottom: calc(-1 * var(--section-padding));
    left: calc(-1 * var(--section-padding));
    right: 0;
  }
}
@media only all and (min-width: 60rem) and (max-width: 74.99rem) {
  .c-section--common--image-text .c-image p {
    top: calc(-1 * var(--section-padding));
    bottom: calc(-1 * var(--section-padding));
    left: calc(-1 * var(--section-padding));
    right: 0;
  }
}
@media only all and (min-width: 48rem) and (max-width: 59.99rem) {
  .c-section--common--image-text .c-image p {
    top: calc(-1 * var(--section-padding));
    bottom: 0;
    left: calc(-1 * var(--section-padding));
    right: calc(-1 * var(--section-padding));
  }
}
@media only all and (min-width: 30.01rem) and (max-width: 47.99rem) {
  .c-section--common--image-text .c-image p {
    top: calc(-1 * var(--section-padding));
    bottom: 0;
    left: calc(-1 * var(--section-padding));
    right: calc(-1 * var(--section-padding));
  }
}
@media only all and (max-width: 30rem) {
  .c-section--common--image-text .c-image p {
    top: calc(-1 * var(--section-padding));
    bottom: 0;
    left: calc(-1 * var(--section-padding));
    right: calc(-1 * var(--section-padding));
  }
}
.c-section--common--image-text .c-image p img {
  object-fit: cover;
  object-position: center center;
  width: 100%;
  height: 100%;
}
.c-section--common--numbered-list {
  position: relative;
  background: #f4f4f9;
  display: grid;
  row-gap: 25px;
}
.c-section--common--numbered-list::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  width: calc(100vw + 2px);
  margin-left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  background: #f4f4f9;
  z-index: 1;
}
.c-section--common--numbered-list > * {
  position: relative;
  z-index: 3;
}
@media only all and (min-width: 75rem) {
  .c-section--common--numbered-list {
    grid-template-columns: 400px 1fr;
  }
}
@media only all and (min-width: 60rem) and (max-width: 74.99rem) {
  .c-section--common--numbered-list {
    grid-template-columns: 400px 1fr;
  }
}
@media only all and (min-width: 48rem) and (max-width: 59.99rem) {
  .c-section--common--numbered-list {
    grid-template-columns: 100%;
  }
}
@media only all and (min-width: 30.01rem) and (max-width: 47.99rem) {
  .c-section--common--numbered-list {
    grid-template-columns: 100%;
  }
}
@media only all and (max-width: 30rem) {
  .c-section--common--numbered-list {
    grid-template-columns: 100%;
  }
}
.c-section--common--numbered-list:has(.c-text) {
  padding-bottom: 0 !important;
}
.c-section--common--numbered-list .c-title {
  position: relative;
}
@media only all and (min-width: 75rem) {
  .c-section--common--numbered-list .c-title {
    padding-right: var(--section-padding);
  }
}
@media only all and (min-width: 60rem) and (max-width: 74.99rem) {
  .c-section--common--numbered-list .c-title {
    padding-right: var(--section-padding);
  }
}
@media only all and (min-width: 48rem) and (max-width: 59.99rem) {
  .c-section--common--numbered-list .c-title {
    text-align: center;
  }
}
@media only all and (min-width: 30.01rem) and (max-width: 47.99rem) {
  .c-section--common--numbered-list .c-title {
    text-align: center;
  }
}
@media only all and (max-width: 30rem) {
  .c-section--common--numbered-list .c-title {
    text-align: center;
  }
}
.c-section--common--numbered-list .c-title::before {
  content: "";
  position: absolute;
  top: calc(-1 * var(--section-padding));
  bottom: calc(-1 * var(--section-padding));
  left: auto;
  right: 0;
  width: 2px;
  height: auto;
  background: #fff;
}
@media only all and (min-width: 48rem) and (max-width: 59.99rem) {
  .c-section--common--numbered-list .c-title::before {
    display: none;
  }
}
@media only all and (min-width: 30.01rem) and (max-width: 47.99rem) {
  .c-section--common--numbered-list .c-title::before {
    display: none;
  }
}
@media only all and (max-width: 30rem) {
  .c-section--common--numbered-list .c-title::before {
    display: none;
  }
}
.c-section--common--numbered-list .c-numbered-list {
  margin: 0 !important;
  display: flex;
  flex-direction: column;
  counter-set: item;
}
.c-section--common--numbered-list .c-numbered-list p {
  max-width: 1000px;
  padding-bottom: 15px;
  margin: 0 0 15px 0 !important;
  position: relative;
  counter-increment: item;
  display: flex;
  align-items: center;
  gap: 5px 25px;
}
@media only all and (min-width: 75rem) {
  .c-section--common--numbered-list .c-numbered-list p {
    padding-left: 25px;
  }
}
@media only all and (min-width: 60rem) and (max-width: 74.99rem) {
  .c-section--common--numbered-list .c-numbered-list p {
    padding-left: 25px;
  }
}
.c-section--common--numbered-list .c-numbered-list p::before {
  content: counters(item, ".", decimal-leading-zero);
  display: inline-block;
  font-size: 30px;
  font-weight: 900;
  color: #0055a5;
}
.c-section--common--numbered-list .c-numbered-list p:not(:last-child)::after {
  content: "";
  position: absolute;
  top: auto;
  bottom: 0;
  right: -5000px;
  width: auto;
  height: 2px;
  background: #fff;
}
@media only all and (min-width: 75rem) {
  .c-section--common--numbered-list .c-numbered-list p:not(:last-child)::after {
    left: 0;
  }
}
@media only all and (min-width: 60rem) and (max-width: 74.99rem) {
  .c-section--common--numbered-list .c-numbered-list p:not(:last-child)::after {
    left: 0;
  }
}
@media only all and (min-width: 48rem) and (max-width: 59.99rem) {
  .c-section--common--numbered-list .c-numbered-list p:not(:last-child)::after {
    left: calc(-1 * var(--section-padding));
  }
}
@media only all and (min-width: 30.01rem) and (max-width: 47.99rem) {
  .c-section--common--numbered-list .c-numbered-list p:not(:last-child)::after {
    left: calc(-1 * var(--section-padding));
  }
}
@media only all and (max-width: 30rem) {
  .c-section--common--numbered-list .c-numbered-list p:not(:last-child)::after {
    left: calc(-1 * var(--section-padding));
  }
}
.c-section--common--numbered-list .c-numbered-list p strong {
  display: contents;
}
.c-section--common--numbered-list .c-numbered-list p img {
  width: 50px;
  height: 50px;
}
.c-section--common--numbered-list .c-text {
  position: relative;
  background: #fff;
  padding-top: 35px;
  padding-bottom: 35px;
  font-size: 24px;
  background: #fff;
  grid-column: 1 / -1;
}
.c-section--common--numbered-list .c-text::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  left: calc(-50vw + 50%);
  right: calc(-50vw + 50%);
  background: #fff;
  z-index: 1;
}
.c-section--common--numbered-list .c-text > * {
  position: relative;
  z-index: 3;
}
@media only all and (min-width: 75rem) {
  .c-section--common--numbered-list .c-text {
    text-wrap: balance;
  }
}
@media only all and (min-width: 60rem) and (max-width: 74.99rem) {
  .c-section--common--numbered-list .c-text {
    text-wrap: balance;
  }
}
@media only all and (min-width: 48rem) and (max-width: 59.99rem) {
  .c-section--common--numbered-list .c-text {
    text-align: center;
  }
}
@media only all and (min-width: 30.01rem) and (max-width: 47.99rem) {
  .c-section--common--numbered-list .c-text {
    text-align: center;
  }
}
@media only all and (max-width: 30rem) {
  .c-section--common--numbered-list .c-text {
    text-align: center;
  }
}
.c-section--common--numbered-list .c-text p:first-child::before {
  content: "";
  display: inline-block;
  width: 30px;
  height: 30px;
  margin-right: 10px;
  background: url('../../../../images/icons/arrow-down-and-right.svg');
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center center;
}
.c-section--common--cta {
  position: relative;
  color: #fff;
  background: #0055a5;
  display: flex;
  flex-direction: column;
}
@media only all and (min-width: 75rem) {
  .c-section--common--cta {
    height: clamp(450px, 45vw, 600px);
  }
}
@media only all and (min-width: 60rem) and (max-width: 74.99rem) {
  .c-section--common--cta {
    height: clamp(450px, 45vw, 600px);
  }
}
@media only all and (min-width: 48rem) and (max-width: 59.99rem) {
  .c-section--common--cta {
    height: clamp(450px, 45vw, 600px);
  }
}
@media only all and (min-width: 30.01rem) and (max-width: 47.99rem) {
  .c-section--common--cta {
    height: clamp(450px, 45vw, 600px);
  }
}
@media only all and (max-width: 30rem) {
  .c-section--common--cta {
    height: auto;
  }
}
.c-section--common--cta::before {
  content: "";
  position: absolute;
  z-index: 1;
  top: 0;
  bottom: 0;
  left: calc(-50vw + 50%);
  right: calc(-50vw + 50%);
  background: #0055a5;
}
.c-section--common--cta .c-title {
  position: relative;
  z-index: 2;
}
@media only all and (min-width: 75rem) {
  .c-section--common--cta .c-title h2 {
    font-size: 3.5rem;
  }
}
@media only all and (min-width: 60rem) and (max-width: 74.99rem) {
  .c-section--common--cta .c-title h2 {
    font-size: 3.25rem;
  }
}
@media only all and (min-width: 48rem) and (max-width: 59.99rem) {
  .c-section--common--cta .c-title h2 {
    font-size: 2.75rem;
  }
}
@media only all and (min-width: 30.01rem) and (max-width: 47.99rem) {
  .c-section--common--cta .c-title h2 {
    font-size: 2.25rem;
  }
}
@media only all and (max-width: 30rem) {
  .c-section--common--cta .c-title h2 {
    font-size: 2rem;
  }
}
.c-section--common--cta .c-text {
  position: relative;
  z-index: 2;
  text-wrap: balance;
}
@media only all and (min-width: 75rem) {
  .c-section--common--cta .c-text {
    font-size: 120%;
  }
}
@media only all and (min-width: 60rem) and (max-width: 74.99rem) {
  .c-section--common--cta .c-text {
    font-size: 120%;
  }
}
@media only all and (min-width: 48rem) and (max-width: 59.99rem) {
  .c-section--common--cta .c-text {
    font-size: 110%;
  }
}
.c-section--common--cta .c-buttons {
  position: relative;
  z-index: 2;
  flex-grow: 1;
  align-content: flex-end;
}
.c-section--common--cta .c-image {
  position: absolute;
  z-index: 1;
  top: 0;
  bottom: 0;
  left: calc(-50vw + 50%);
  right: calc(-50vw + 50%);
}
.c-section--common--cta .c-image::before {
  content: "";
  position: absolute;
  z-index: 1;
  inset: 0;
  backdrop-filter: brightness(0.45) contrast(0.9);
  pointer-events: none;
}
.c-section--common--cta .c-image p {
  position: absolute;
  inset: 0;
}
.c-section--common--cta .c-image img {
  object-fit: cover;
  object-position: center center;
  width: 100%;
  height: 100%;
}
.c-section--common--certificate {
  position: relative;
  color: #fff;
  background: #0055a5;
  display: grid;
  column-gap: var(--section-padding);
}
@media only all and (min-width: 75rem) {
  .c-section--common--certificate {
    height: clamp(450px, 45vw, 600px);
    grid-template-columns: 1fr 300px;
    grid-template-rows: auto auto 1fr;
    grid-template-areas: "title image" "text image" "buttons image";
  }
}
@media only all and (min-width: 60rem) and (max-width: 74.99rem) {
  .c-section--common--certificate {
    height: clamp(450px, 45vw, 600px);
    grid-template-columns: 1fr 250px;
    grid-template-rows: auto auto 1fr;
    grid-template-areas: "title image" "text image" "buttons image";
  }
}
@media only all and (min-width: 48rem) and (max-width: 59.99rem) {
  .c-section--common--certificate {
    height: clamp(450px, 45vw, 600px);
    grid-template-columns: 1fr 200px;
    grid-template-rows: auto auto 1fr;
    grid-template-areas: "title image" "text image" "buttons image";
  }
}
@media only all and (min-width: 30.01rem) and (max-width: 47.99rem) {
  .c-section--common--certificate {
    grid-template-areas: "title" "text" "image" "buttons";
  }
}
@media only all and (max-width: 30rem) {
  .c-section--common--certificate {
    grid-template-areas: "title" "text" "image" "buttons";
  }
}
.c-section--common--certificate::before {
  content: "";
  position: absolute;
  z-index: 1;
  top: 0;
  bottom: 0;
  left: calc(-50vw + 50%);
  right: calc(-50vw + 50%);
  background: #0055a5;
}
.c-section--common--certificate .c-title {
  grid-area: title;
  position: relative;
  z-index: 2;
}
@media only all and (min-width: 75rem) {
  .c-section--common--certificate .c-title h2 {
    font-size: 3.5rem;
  }
}
@media only all and (min-width: 60rem) and (max-width: 74.99rem) {
  .c-section--common--certificate .c-title h2 {
    font-size: 3.25rem;
  }
}
@media only all and (min-width: 48rem) and (max-width: 59.99rem) {
  .c-section--common--certificate .c-title h2 {
    font-size: 2.75rem;
  }
}
@media only all and (min-width: 30.01rem) and (max-width: 47.99rem) {
  .c-section--common--certificate .c-title h2 {
    font-size: 2.25rem;
  }
}
@media only all and (max-width: 30rem) {
  .c-section--common--certificate .c-title h2 {
    font-size: 2rem;
  }
}
.c-section--common--certificate .c-text {
  grid-area: text;
  position: relative;
  z-index: 2;
  text-wrap: balance;
}
@media only all and (min-width: 75rem) {
  .c-section--common--certificate .c-text {
    font-size: 120%;
  }
}
@media only all and (min-width: 60rem) and (max-width: 74.99rem) {
  .c-section--common--certificate .c-text {
    font-size: 120%;
  }
}
@media only all and (min-width: 48rem) and (max-width: 59.99rem) {
  .c-section--common--certificate .c-text {
    font-size: 110%;
  }
}
.c-section--common--certificate .c-buttons {
  grid-area: buttons;
  position: relative;
  z-index: 2;
  flex-grow: 1;
  align-content: flex-end;
}
.c-section--common--certificate .c-image {
  grid-area: image;
  height: 100%;
  margin-top: 25px;
  position: relative;
  z-index: 2;
}
@media only all and (min-width: 75rem) {
  .c-section--common--certificate .c-image {
    margin-top: 0;
  }
}
@media only all and (min-width: 60rem) and (max-width: 74.99rem) {
  .c-section--common--certificate .c-image {
    margin-top: 0;
  }
}
@media only all and (min-width: 48rem) and (max-width: 59.99rem) {
  .c-section--common--certificate .c-image {
    margin-top: 0;
  }
}
.c-section--common--certificate .c-image > p {
  height: 100%;
}
.c-section--common--certificate .c-image img {
  width: 100%;
  max-width: 350px;
}
.c-section--common--certificate .c-background {
  position: absolute;
  z-index: 1;
  top: 0;
  bottom: 0;
  left: calc(-50vw + 50%);
  right: calc(-50vw + 50%);
  overflow: hidden;
}
.c-section--common--certificate .c-background::before {
  content: "";
  position: absolute;
  z-index: 1;
  inset: 0;
  backdrop-filter: brightness(0.45) contrast(0.9) blur(5px);
  pointer-events: none;
}
.c-section--common--certificate .c-background p {
  position: absolute;
  inset: 0;
}
.c-section--common--certificate .c-background img {
  object-fit: cover;
  object-position: center center;
  width: 100%;
  height: 100%;
}
.c-section--common--certificate + .c-section--common--certificate::before {
  content: "";
  position: absolute;
  z-index: 2;
  top: 0;
  bottom: auto;
  left: calc(-50vw + 50%);
  right: calc(-50vw + 50%);
  width: auto;
  height: 1px;
  background: rgba(255, 255, 255, 0.25);
}
.c-faqs:not(:first-child) {
  margin-top: 35px;
}
.c-faqs .c-faq {
  display: grid;
  transition: 0.5s all;
}
.c-faqs .c-faq:not(:last-child) {
  padding-bottom: 15px;
  margin-bottom: 15px;
  border-bottom: solid 2px #f4f4f9;
}
.c-faqs .c-faq > *:first-child {
  margin: 0;
  display: flex;
  align-items: center;
  gap: 15px;
  cursor: pointer;
}
.c-faqs .c-faq > *:first-child::after {
  content: "";
  width: 22px;
  height: 22px;
  margin-left: auto;
  flex: 0 0 auto;
  background: url('../../../../images/icons/chevron-down-black.svg') center / contain no-repeat;
  background-size: 14px;
  transition: transform 0.2s;
}
.c-faqs .c-faq > *:not(:first-child) {
  margin-top: 15px;
  overflow: hidden;
  transition: 0.5s all;
}
body.site .c-faqs .c-faq {
  grid-template-rows: min-content 1fr;
}
body.site .c-faqs .c-faq:not(.c-faq-open) {
  grid-template-rows: min-content 0fr;
}
body.site .c-faqs .c-faq:not(.c-faq-open) > *:not(:first-child) {
  margin-top: 0px;
}
.com-content-article__body [class*="c-section--"]:first-child {
  margin-top: calc(-1 * var(--section-padding));
}
.com-content-article__body [class*="c-section--"]:last-child {
  margin-bottom: calc(-1 * var(--section-padding));
}
.complete-article-slider.c-testimonials .cas-articles {
  padding-left: 50px;
  padding-right: 50px;
}
.complete-article-slider.c-testimonials .cas-articles .cas-article {
  position: relative;
  padding: 35px;
  height: auto;
  box-sizing: border-box;
  display: grid;
  grid-template-rows: 1fr auto auto auto;
  grid-template-areas: "text" "image" "title" "fields";
}
.complete-article-slider.c-testimonials .cas-articles .cas-article::before {
  content: "";
  position: absolute;
  inset: 1px;
  border: solid 2px #f4f4f9;
  pointer-events: none;
}
.complete-article-slider.c-testimonials .cas-articles .cas-article .cas-article-image {
  grid-area: image;
  width: auto;
  height: 40px;
  box-sizing: content-box;
  margin-top: 35px;
}
.complete-article-slider.c-testimonials .cas-articles .cas-article .cas-article-image img {
  object-fit: contain;
  object-position: center center;
  height: 100%;
}
.complete-article-slider.c-testimonials .cas-articles .cas-article .cas-article-title {
  grid-area: title;
  margin-top: 10px;
  font-size: 80%;
  font-weight: 500;
  text-transform: uppercase;
  letter-spacing: 1px;
}
.complete-article-slider.c-testimonials .cas-articles .cas-article .cas-article-custom-fields {
  grid-area: fields;
  margin-top: 5px;
  font-style: normal;
  font-size: 90%;
}
.complete-article-slider.c-testimonials .cas-articles .cas-article .cas-article-intro-text {
  grid-area: text;
  font-style: oblique;
  overflow: hidden;
  display: -webkit-box;
  -webkit-line-clamp: 5;
  line-clamp: 5;
  -webkit-box-orient: vertical;
}
.complete-article-slider.c-testimonials .cas-articles .cas-article .cas-article-intro-text p {
  overflow: hidden;
  display: -webkit-box;
  -webkit-line-clamp: 5;
  line-clamp: 5;
  -webkit-box-orient: vertical;
}
.complete-article-slider.c-testimonials .swiper .swiper-button-prev::after {
  font-size: 30px;
}
.complete-article-slider.c-testimonials .swiper .swiper-button-prev svg {
  width: 30px;
  height: 30px;
}
.complete-article-slider.c-testimonials .swiper .swiper-button-next::after {
  font-size: 30px;
}
.complete-article-slider.c-testimonials .swiper .swiper-button-next svg {
  width: 30px;
  height: 30px;
}
/* ******** */
/* Sections */
/* ******** */
#g-page-surround {
  overflow: clip;
  background: #ffffff;
}
#g-above {
  background: #58585a;
  color: #ffffff;
  padding: 0;
  position: relative;
  z-index: 10;
}
#g-above > .g-container > .g-grid > .g-block > .g-content {
  padding-top: 0;
  padding-bottom: 0;
  margin-top: 0;
  margin-bottom: 0;
}
#g-above > .g-container > .g-grid > .g-block > .g-content > .platform-content {
  padding: 0;
  margin: 15px 0;
}
#g-above > .g-container > .g-grid > .g-block > .g-system-messages #system-message-container joomla-alert {
  margin: 15px 0;
}
#g-navigation {
  background: #ffffff;
  color: #111111;
  padding: 25px 0;
  position: relative;
}
@media only all and (max-width: 74.875rem) {
  #g-navigation {
    padding-right: 50px;
  }
}
#g-navigation::after {
  content: "";
  position: absolute;
  top: auto;
  bottom: 0;
  left: 0;
  right: 0;
  width: 100%;
  height: 1px;
  background: rgba(255, 255, 255, 0.15);
  z-index: 10;
  pointer-events: none;
}
#g-navigation > .g-container {
  position: relative;
  z-index: 100;
}
#g-navigation > .g-container > .g-grid {
  align-items: center;
}
#g-navigation > .g-container > .g-grid > .g-block > .g-content {
  padding-top: 0;
  padding-bottom: 0;
  margin-top: 0;
  margin-bottom: 0;
}
#g-navigation > .g-container > .g-grid > .g-block > .g-content > .platform-content {
  padding: 0;
  margin: 0;
}
#g-navigation > .g-container > .g-grid > .g-block.c-logo {
  max-width: 300px;
  width: 300px;
  flex: 0 0 fit-content;
}
#g-navigation > .g-container > .g-grid > .g-block.c-mainmenu {
  max-width: none;
  width: auto;
  flex: 1 1 auto;
  display: flex;
  justify-content: flex-end;
}
#g-navigation > .g-container > .g-grid > .g-block.c-navigation {
  max-width: none;
  width: fit-content;
  flex: 0 1 auto;
  display: flex;
  justify-content: flex-end;
}
@media only all and (min-width: 30.01rem) and (max-width: 47.99rem) {
  #g-navigation > .g-container > .g-grid > .g-block.c-navigation {
    display: none;
  }
}
@media only all and (max-width: 30rem) {
  #g-navigation > .g-container > .g-grid > .g-block.c-navigation {
    display: none;
  }
}
#g-breadcrumbs {
  background-color: #f4f4f9;
  color: #111111;
  padding: 5px 0;
}
#g-breadcrumbs > .g-container > .g-grid > .g-block > .g-content {
  padding-top: 0;
  padding-bottom: 0;
  margin-top: 0;
  margin-bottom: 0;
}
#g-breadcrumbs > .g-container > .g-grid > .g-block > .g-content > .platform-content {
  padding: 0;
  margin: 0;
}
#g-header {
  background-color: #0055a5;
  color: #ffffff;
  padding: 0;
}
#g-header > .g-container > .g-grid > .g-block > .g-content {
  padding-top: 0;
  padding-bottom: 0;
  margin-top: 0;
  margin-bottom: 0;
}
#g-header > .g-container > .g-grid > .g-block > .g-content > .platform-content {
  padding: 0;
  margin: 0;
}
#g-intro {
  background: #ffffff;
  color: #111111;
}
#g-intro .g-container > .g-grid > .g-block > .g-content {
  padding-top: 0;
  padding-bottom: 0;
  margin-top: 0;
  margin-bottom: 0;
}
#g-intro .g-container > .g-grid > .g-block > .g-content > .platform-content {
  padding: 0;
  margin: 0;
}
#g-intro .g-container > .g-grid > .g-block > .g-content > .platform-content > * {
  padding-top: var(--section-padding);
  padding-bottom: var(--section-padding);
}
#g-features {
  background: #ffffff;
  color: #111111;
}
#g-features .g-container > .g-grid > .g-block > .g-content {
  padding-top: 0;
  padding-bottom: 0;
  margin-top: 0;
  margin-bottom: 0;
}
#g-features .g-container > .g-grid > .g-block > .g-content > .platform-content {
  padding: 0;
  margin: 0;
}
#g-features .g-container > .g-grid > .g-block > .g-content > .platform-content > * {
  padding-top: var(--section-padding);
  padding-bottom: var(--section-padding);
}
#g-utility {
  background: #ffffff;
  color: #111111;
}
#g-utility .g-container > .g-grid > .g-block > .g-content {
  padding-top: 0;
  padding-bottom: 0;
  margin-top: 0;
  margin-bottom: 0;
}
#g-utility .g-container > .g-grid > .g-block > .g-content > .platform-content {
  padding: 0;
  margin: 0;
}
#g-utility .g-container > .g-grid > .g-block > .g-content > .platform-content > * {
  padding-top: var(--section-padding);
  padding-bottom: var(--section-padding);
}
#g-testimonials {
  background: #ffffff;
  color: #111111;
}
#g-testimonials .g-container > .g-grid > .g-block > .g-content {
  padding-top: 0;
  padding-bottom: 0;
  margin-top: 0;
  margin-bottom: 0;
}
#g-testimonials .g-container > .g-grid > .g-block > .g-content > .platform-content {
  padding: 0;
  margin: 0;
}
#g-testimonials .g-container > .g-grid > .g-block > .g-content > .platform-content > * {
  padding-top: var(--section-padding);
  padding-bottom: var(--section-padding);
}
#g-full .g-container {
  padding: 0 !important;
}
#g-expanded {
  background: #ffffff;
  color: #111111;
}
#g-expanded .g-container > .g-grid > .g-block > .g-content {
  padding-top: 0;
  padding-bottom: 0;
  margin-top: 0;
  margin-bottom: 0;
}
#g-expanded .g-container > .g-grid > .g-block > .g-content > .platform-content {
  padding: 0;
  margin: 0;
}
#g-expanded .g-container > .g-grid > .g-block > .g-content > .platform-content > * {
  padding-top: var(--section-padding);
  padding-bottom: var(--section-padding);
}
#g-expanded .g-container .g-grid:has(.c-contact), #g-expanded .g-container .g-grid:has(.c-newsletter) {
  position: relative;
  background: #0055a5;
}
#g-expanded .g-container .g-grid:has(.c-contact)::before, #g-expanded .g-container .g-grid:has(.c-newsletter)::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  width: calc(100vw + 2px);
  margin-left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  background: #0055a5;
  z-index: 1;
}
#g-expanded .g-container .g-grid:has(.c-contact) > *, #g-expanded .g-container .g-grid:has(.c-newsletter) > * {
  position: relative;
  z-index: 3;
  color: #fff;
}
#g-expanded .g-container .g-grid:has(.c-contact) a, #g-expanded .g-container .g-grid:has(.c-newsletter) a {
  color: inherit;
}
#g-expanded .g-container .g-grid:has(.c-contact) a:hover, #g-expanded .g-container .g-grid:has(.c-newsletter) a:hover {
  color: #fff;
}
@media only all and (min-width: 60rem) and (max-width: 74.99rem) {
  #g-expanded .g-container .g-grid:has(.c-contact) .g-block, #g-expanded .g-container .g-grid:has(.c-newsletter) .g-block {
    width: 100%;
    flex: 0 100%;
  }
}
@media only all and (min-width: 48rem) and (max-width: 59.99rem) {
  #g-expanded .g-container .g-grid:has(.c-contact) .g-block, #g-expanded .g-container .g-grid:has(.c-newsletter) .g-block {
    width: 100%;
    flex: 0 100%;
  }
}
@media only all and (min-width: 30.01rem) and (max-width: 47.99rem) {
  #g-expanded .g-container .g-grid:has(.c-contact) .g-block, #g-expanded .g-container .g-grid:has(.c-newsletter) .g-block {
    width: 100%;
    flex: 0 100%;
  }
}
@media only all and (max-width: 30rem) {
  #g-expanded .g-container .g-grid:has(.c-contact) .g-block, #g-expanded .g-container .g-grid:has(.c-newsletter) .g-block {
    width: 100%;
    flex: 0 100%;
  }
}
@media only all and (min-width: 60rem) and (max-width: 74.99rem) {
  #g-expanded .g-container .g-grid:has(.c-contact) .g-block:not(:first-child) > .g-content > .platform-content > *, #g-expanded .g-container .g-grid:has(.c-newsletter) .g-block:not(:first-child) > .g-content > .platform-content > * {
    padding-top: 15px;
  }
}
@media only all and (min-width: 48rem) and (max-width: 59.99rem) {
  #g-expanded .g-container .g-grid:has(.c-contact) .g-block:not(:first-child) > .g-content > .platform-content > *, #g-expanded .g-container .g-grid:has(.c-newsletter) .g-block:not(:first-child) > .g-content > .platform-content > * {
    padding-top: 15px;
  }
}
@media only all and (min-width: 30.01rem) and (max-width: 47.99rem) {
  #g-expanded .g-container .g-grid:has(.c-contact) .g-block:not(:first-child) > .g-content > .platform-content > *, #g-expanded .g-container .g-grid:has(.c-newsletter) .g-block:not(:first-child) > .g-content > .platform-content > * {
    padding-top: 15px;
  }
}
@media only all and (max-width: 30rem) {
  #g-expanded .g-container .g-grid:has(.c-contact) .g-block:not(:first-child) > .g-content > .platform-content > *, #g-expanded .g-container .g-grid:has(.c-newsletter) .g-block:not(:first-child) > .g-content > .platform-content > * {
    padding-top: 15px;
  }
}
@media only all and (min-width: 60rem) and (max-width: 74.99rem) {
  #g-expanded .g-container .g-grid:has(.c-contact) .g-block:not(:last-child) > .g-content > .platform-content > *, #g-expanded .g-container .g-grid:has(.c-newsletter) .g-block:not(:last-child) > .g-content > .platform-content > * {
    padding-bottom: 15px;
  }
}
@media only all and (min-width: 48rem) and (max-width: 59.99rem) {
  #g-expanded .g-container .g-grid:has(.c-contact) .g-block:not(:last-child) > .g-content > .platform-content > *, #g-expanded .g-container .g-grid:has(.c-newsletter) .g-block:not(:last-child) > .g-content > .platform-content > * {
    padding-bottom: 15px;
  }
}
@media only all and (min-width: 30.01rem) and (max-width: 47.99rem) {
  #g-expanded .g-container .g-grid:has(.c-contact) .g-block:not(:last-child) > .g-content > .platform-content > *, #g-expanded .g-container .g-grid:has(.c-newsletter) .g-block:not(:last-child) > .g-content > .platform-content > * {
    padding-bottom: 15px;
  }
}
@media only all and (max-width: 30rem) {
  #g-expanded .g-container .g-grid:has(.c-contact) .g-block:not(:last-child) > .g-content > .platform-content > *, #g-expanded .g-container .g-grid:has(.c-newsletter) .g-block:not(:last-child) > .g-content > .platform-content > * {
    padding-bottom: 15px;
  }
}
#g-expanded .g-title {
  font-weight: 300;
}
#g-container-main {
  background: #ffffff;
  color: #111111;
}
#g-container-main #g-mainbar {
  padding: var(--section-padding) 0;
}
#g-container-main #g-mainbar:has(.com-content-article > .c-header) {
  padding-top: 0 !important;
}
#g-container-main #g-mainbar:has(.com-content-article > .c-header) .com-content-article__body {
  margin-top: var(--section-padding);
}
#g-container-main #g-mainbar:has(.com-content-category-blog > .c-header) {
  padding-top: 0 !important;
}
#g-container-main #g-mainbar:has(.com-content-category-blog > .c-header) .category-desc {
  margin-top: var(--section-padding);
}
#g-container-main #g-mainbar .g-content {
  padding-top: 0;
  padding-bottom: 0;
  margin-top: 0;
  margin-bottom: 0;
}
#g-container-main #g-aside > .g-grid > .g-block > .g-content {
  padding-top: 0;
  padding-bottom: 0;
  margin-top: 0;
  margin-bottom: 0;
}
#g-container-main #g-aside > .g-grid > .g-block > .g-content > .platform-content {
  padding: 0;
  margin: 0;
}
#g-container-main #g-aside > .g-grid > .g-block > .g-content > .platform-content > * {
  padding-top: var(--section-padding);
  padding-bottom: var(--section-padding);
}
#g-container-main #g-sidebar > .g-grid > .g-block > .g-content {
  padding-top: 0;
  padding-bottom: 0;
  margin-top: 0;
  margin-bottom: 0;
}
#g-container-main #g-sidebar > .g-grid > .g-block > .g-content > .platform-content {
  padding: 0;
  margin: 0;
}
#g-container-main #g-sidebar > .g-grid > .g-block > .g-content > .platform-content > * {
  padding-top: var(--section-padding);
  padding-bottom: var(--section-padding);
}
#g-footer {
  padding-top: 45px;
  padding-bottom: 45px;
  background: #58585a;
  color: rgba(255, 255, 255, 0.8);
}
@media only all and (min-width: 48rem) and (max-width: 59.99rem) {
  #g-footer .g-container > .g-grid:not(:last-child) > .g-block, #g-footer .g-container > .g-grid:first-child:last-child > .g-block {
    flex: 0 50%;
    width: 50%;
  }
}
#g-footer .g-container > .g-grid:last-child:not(:first-child) {
  position: relative;
}
#g-footer .g-container > .g-grid:last-child:not(:first-child)::before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 25px;
  right: 25px;
  width: auto;
  height: 0.5px;
  background: rgba(255, 255, 255, 0.15);
}
#g-footer .g-container > .g-grid > .g-block > .g-content {
  padding-top: 15px;
  padding-bottom: 15px;
  margin-top: 0;
  margin-bottom: 0;
}
#g-footer .g-container > .g-grid > .g-block > .g-content > * {
  padding: 0;
  margin: 0;
}
#g-footer .g-container > .g-grid > .g-block > .g-content > * > * {
  padding-top: 15px;
  padding-bottom: 15px;
}
#g-footer a {
  color: inherit;
}
#g-footer a:hover {
  color: #fff;
  text-decoration: underline;
}
#g-footer .g-title {
  padding-bottom: 10px;
  margin-bottom: 25px;
  color: #fff;
  font-size: 80%;
  font-weight: 300;
  text-transform: uppercase;
  letter-spacing: 1px;
  border-bottom: solid 1px rgba(255, 255, 255, 0.15);
}
#g-offcanvas {
  background: #0055a5;
  width: 280px;
  color: #ffffff;
}
#g-offcanvas #offcanvas-top .g-content {
  margin: 0;
}
#g-offcanvas #offcanvas-top .g-content .offcanvas-top {
  all: unset;
}
#g-offcanvas #offcanvas-bottom .g-content {
  margin: 0;
}
#g-offcanvas #offcanvas-bottom .g-content .offcanvas-bottom {
  all: unset;
}
.g-offcanvas-right #g-offcanvas::before {
  content: "";
  position: absolute;
  z-index: 1;
  top: 0;
  bottom: 0;
  left: 0;
  right: auto;
  width: 0.5px;
  height: auto;
  background: rgba(255, 255, 255, 0.15);
}
/* ****** */
/* JOOMLA */
/* ****** */
.icons .float-end {
  float: none !important;
}
.com-content-category .content-category > h1 {
  margin: 0 0 50px 0;
}
.com-content-category-blog > .c-header {
  padding: var(--section-padding) 0;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
}
@media only all and (min-width: 75rem) {
  .com-content-category-blog > .c-header:has(.category-image) {
    min-height: 500px;
  }
}
@media only all and (min-width: 60rem) and (max-width: 74.99rem) {
  .com-content-category-blog > .c-header:has(.category-image) {
    min-height: 450px;
  }
}
@media only all and (min-width: 48rem) and (max-width: 59.99rem) {
  .com-content-category-blog > .c-header:has(.category-image) {
    min-height: 400px;
  }
}
@media only all and (min-width: 30.01rem) and (max-width: 47.99rem) {
  .com-content-category-blog > .c-header:has(.category-image) {
    min-height: 350px;
  }
}
@media only all and (max-width: 30rem) {
  .com-content-category-blog > .c-header:has(.category-image) {
    min-height: 300px;
  }
}
.com-content-category-blog > .c-header::before {
  content: "";
  position: absolute;
  z-index: 1;
  top: 0;
  bottom: 0;
  left: calc(-1 * var(--section-padding));
  right: calc(-1 * var(--section-padding));
  background: #0055a5;
}
.com-content-category-blog > .c-header > .page-header {
  max-width: 900px;
  margin: 0 auto;
  color: #fff;
  background: #0055a5;
  text-align: center;
  position: relative;
  z-index: 4;
}
.com-content-category-blog > .c-header > .page-header + .page-header {
  margin-top: 25px;
}
.com-content-category-blog > .c-header .category-image {
  position: absolute;
  z-index: 3;
  top: 0;
  bottom: 0;
  left: calc(-1 * var(--section-padding));
  right: calc(-1 * var(--section-padding));
}
.com-content-category-blog > .c-header .category-image::before {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.25);
  pointer-events: none;
  z-index: 1;
}
.com-content-category-blog > .c-header .category-image img {
  object-fit: cover;
  object-position: center center;
  width: 100%;
  height: 100%;
  filter: contrast(1.1) brightness(0.9);
}
.com-content-category-blog .com-content-category-blog__items {
  margin: 0;
  margin-top: var(--section-padding);
}
.com-content-category-blog .com-content-category-blog__navigation {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}
.com-content-category-blog .com-content-category-blog__navigation .com-content-category-blog__counter {
  padding: 0;
  margin: 0;
}
.com-content-article > .c-header {
  padding: var(--section-padding) 0;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
}
@media only all and (min-width: 75rem) {
  .com-content-article > .c-header:has(.item-image) {
    min-height: 500px;
  }
}
@media only all and (min-width: 60rem) and (max-width: 74.99rem) {
  .com-content-article > .c-header:has(.item-image) {
    min-height: 450px;
  }
}
@media only all and (min-width: 48rem) and (max-width: 59.99rem) {
  .com-content-article > .c-header:has(.item-image) {
    min-height: 400px;
  }
}
@media only all and (min-width: 30.01rem) and (max-width: 47.99rem) {
  .com-content-article > .c-header:has(.item-image) {
    min-height: 350px;
  }
}
@media only all and (max-width: 30rem) {
  .com-content-article > .c-header:has(.item-image) {
    min-height: 300px;
  }
}
.com-content-article > .c-header::before {
  content: "";
  position: absolute;
  z-index: 1;
  top: 0;
  bottom: 0;
  left: calc(-1 * var(--section-padding));
  right: calc(-1 * var(--section-padding));
  background: #0055a5;
}
.com-content-article > .c-header > .page-header {
  max-width: 900px;
  margin: 0 auto;
  color: #fff;
  background: #0055a5;
  text-align: center;
  position: relative;
  z-index: 4;
}
.com-content-article > .c-header > .page-header + .page-header {
  margin-top: 25px;
}
.com-content-article > .c-header .item-image {
  position: absolute;
  z-index: 3;
  top: 0;
  bottom: 0;
  left: calc(-1 * var(--section-padding));
  right: calc(-1 * var(--section-padding));
}
.com-content-article > .c-header .item-image::before {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.25);
  pointer-events: none;
  z-index: 1;
}
.com-content-article > .c-header .item-image img {
  object-fit: cover;
  object-position: center center;
  width: 100%;
  height: 100%;
  filter: contrast(1.1) brightness(0.9);
}
.mod-custom > *:first-child {
  margin-top: 0;
}
.mod-custom > *:last-child {
  margin-bottom: 0;
}
/* ********* */
/* MAIN MENU */
/* ********* */
.g-main-nav {
  font-family: "GoogleSans";
  font-weight: 400;
  line-height: 1.5;
}
.g-main-nav .g-menu-item:has(> .g-menu-item-container.c-hidden) {
  display: none;
}
.g-main-nav .g-toplevel {
  line-height: 3.125;
}
.g-main-nav .g-toplevel > li {
  margin: 0 0.5rem;
}
@media only all and (min-width: 48rem) and (max-width: 59.99rem) {
  .g-main-nav .g-toplevel > li {
    margin: 0 0.2rem;
  }
}
.g-main-nav .g-toplevel > li > .g-menu-item-container {
  color: #111111;
  padding: 3.75px 0;
  font-weight: inherit;
}
.g-main-nav .g-toplevel > li > .g-menu-item-container.button {
  display: inline-block;
  box-sizing: border-box;
  padding: 8px 15px;
  margin: 0;
  font-family: "GoogleSans";
  font-size: 16px;
  font-weight: 500;
  color: #fff;
  line-height: 22px;
  letter-spacing: 0;
  text-transform: none;
  text-decoration: none;
  text-align: center;
  text-shadow: none;
  background: #0055a5;
  border-width: 1px;
  border-style: solid;
  border-color: #0055a5;
  border-radius: 8px;
  box-shadow: none;
  transition: all 0.2s;
}
.g-main-nav .g-toplevel > li > .g-menu-item-container.button:hover, .g-main-nav .g-toplevel > li > .g-menu-item-container.button:active, .g-main-nav .g-toplevel > li > .g-menu-item-container.button:focus {
  color: #fff;
  background: #58585a;
  border-color: #58585a;
  outline: 0;
}
.g-main-nav .g-toplevel > li > .g-menu-item-container.button:disabled {
  opacity: 0.25;
  cursor: not-allowed;
}
.g-main-nav .g-toplevel > li > .g-menu-item-container.button.fa[class*="fa-"]:before, .g-main-nav .g-toplevel > li > .g-menu-item-container.button.fa[class*="fa-"]:after {
  font-family: "Font Awesome 5 Pro", "Font Awesome 5 Free", FontAwesome;
  font-weight: 900;
}
.g-main-nav .g-toplevel > li > .g-menu-item-container.button.button-xsmall {
  font-size: 12px;
  padding: 4px 11px;
}
.g-main-nav .g-toplevel > li > .g-menu-item-container.button.button-small, .g-main-nav .g-toplevel > li > .g-menu-item-container.button.btn-sm {
  font-size: 14px;
  padding: 6px 13px;
}
.g-main-nav .g-toplevel > li > .g-menu-item-container.button.button-large, .g-main-nav .g-toplevel > li > .g-menu-item-container.button.btn-lg {
  font-size: 18px;
  padding: 12px 19px;
}
.g-main-nav .g-toplevel > li > .g-menu-item-container.button.button-xlarge {
  font-size: 20px;
  padding: 14px 21px;
}
.g-main-nav .g-toplevel > li > .g-menu-item-container.button.button-2, .g-main-nav .g-toplevel > li > .g-menu-item-container.button.btn-secondary {
  background: #58585a;
  border-color: #58585a;
}
.g-main-nav .g-toplevel > li > .g-menu-item-container.button.button-2:hover, .g-main-nav .g-toplevel > li > .g-menu-item-container.button.btn-secondary:hover {
  background: #0055a5;
  border-color: #0055a5;
}
.g-main-nav .g-toplevel > li > .g-menu-item-container.button.button-accent-2 {
  color: #111111;
  background: #f9f871;
  border-color: #f9f871;
}
.g-main-nav .g-toplevel > li > .g-menu-item-container.button.button-accent-2:hover {
  color: #111111;
  background: #fff;
  border-color: #fff;
}
.g-main-nav .g-toplevel > li > .g-menu-item-container.button.button-outline, .g-main-nav .com_content.view-category.layout-blog.c-blog .com-content-category-blog .com-content-category-blog__items .com-content-category-blog__item p.readmore .g-toplevel > li > a.g-menu-item-container.button.btn, .com_content.view-category.layout-blog.c-blog .com-content-category-blog .com-content-category-blog__items .com-content-category-blog__item p.readmore .g-main-nav .g-toplevel > li > a.g-menu-item-container.button.btn {
  color: #0055a5;
  background: none;
  background-color: transparent;
  border-color: #0055a5;
}
.g-main-nav .g-toplevel > li > .g-menu-item-container.button.button-outline:hover, .g-main-nav .com_content.view-category.layout-blog.c-blog .com-content-category-blog .com-content-category-blog__items .com-content-category-blog__item p.readmore .g-toplevel > li > a.g-menu-item-container.button.btn:hover, .com_content.view-category.layout-blog.c-blog .com-content-category-blog .com-content-category-blog__items .com-content-category-blog__item p.readmore .g-main-nav .g-toplevel > li > a.g-menu-item-container.button.btn:hover {
  color: #fff;
  background: #0055a5;
  border-color: #0055a5;
}
.g-main-nav .g-toplevel > li > .g-menu-item-container.button.button-outline-2 {
  color: #58585a;
  background: none;
  background-color: transparent;
  border-color: #58585a;
}
.g-main-nav .g-toplevel > li > .g-menu-item-container.button.button-outline-2:hover {
  color: #fff;
  background: #58585a;
  border-color: #58585a;
}
.g-main-nav .g-toplevel > li > .g-menu-item-container.button.button-outline-3 {
  color: #f9f871;
  background: none;
  background-color: transparent;
  border-color: #f9f871;
}
.g-main-nav .g-toplevel > li > .g-menu-item-container.button.button-outline-3:hover {
  color: #111111;
  background: #f9f871;
  border-color: #f9f871;
}
.g-main-nav .g-toplevel > li > .g-menu-item-container.button.button-white {
  color: #111111;
  background: #fff;
  border-color: #fff;
}
.g-main-nav .g-toplevel > li > .g-menu-item-container.button.button-white:hover {
  color: #111111;
  background: #f9f871;
  border-color: #f9f871;
}
.g-main-nav .g-toplevel > li > .g-menu-item-container.button.button-white-outline, .g-main-nav .moduletable.c-newsletter .acym_module_form .acysubbuttons .g-toplevel > li > .g-menu-item-container.button, .moduletable.c-newsletter .acym_module_form .acysubbuttons .g-main-nav .g-toplevel > li > .g-menu-item-container.button, .g-main-nav .com_content.view-category.layout-blog.c-ri-projects .com-content-category-blog .com-content-category-blog__items .com-content-category-blog__item .readmore .g-toplevel > li > a.g-menu-item-container.button.btn, .com_content.view-category.layout-blog.c-ri-projects .com-content-category-blog .com-content-category-blog__items .com-content-category-blog__item .readmore .g-main-nav .g-toplevel > li > a.g-menu-item-container.button.btn {
  color: #fff;
  background: none;
  background-color: transparent;
  border-color: #fff;
}
.g-main-nav .g-toplevel > li > .g-menu-item-container.button.button-white-outline:hover, .g-main-nav .moduletable.c-newsletter .acym_module_form .acysubbuttons .g-toplevel > li > .g-menu-item-container.button:hover, .moduletable.c-newsletter .acym_module_form .acysubbuttons .g-main-nav .g-toplevel > li > .g-menu-item-container.button:hover, .g-main-nav .com_content.view-category.layout-blog.c-ri-projects .com-content-category-blog .com-content-category-blog__items .com-content-category-blog__item .readmore .g-toplevel > li > a.g-menu-item-container.button.btn:hover, .com_content.view-category.layout-blog.c-ri-projects .com-content-category-blog .com-content-category-blog__items .com-content-category-blog__item .readmore .g-main-nav .g-toplevel > li > a.g-menu-item-container.button.btn:hover {
  color: #111111;
  background: #fff;
  border-color: #fff;
}
.g-main-nav .g-toplevel > li > .g-menu-item-container.button.button-arrow:after {
  content: "";
  display: inline-block;
  font-family: "Font Awesome 5 Free";
  font-size: inherit;
  font-weight: 900;
  line-height: normal;
  margin-left: 10px;
}
.g-main-nav .g-toplevel > li > .g-menu-item-container.button.button-download:before {
  content: "";
  display: inline-block;
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  font-size: inherit;
  line-height: normal;
  margin-right: 10px;
}
.g-main-nav .g-toplevel > li > .g-menu-item-container .g-menu-parent-indicator {
  font-size: 0.8rem;
}
.g-main-nav .g-toplevel > li > .g-menu-item-container .g-menu-parent-indicator:after {
  content: "";
  padding: 0.25rem 0.25rem 0.25rem 0rem;
  opacity: 0.75;
  width: 1rem;
}
.g-main-nav .g-toplevel > li > .g-menu-item-container i {
  opacity: 1;
}
.g-main-nav .g-toplevel > li:hover > .g-menu-item-container {
  color: #111111;
}
.g-main-nav .g-toplevel > li:hover > .g-menu-item-container > .g-selected {
  color: #111111;
}
.g-main-nav .g-dropdown {
  padding-top: 5px;
  padding-bottom: 5px;
  background: #f4f4f9;
  border-radius: 0;
}
.g-main-nav .g-dropdown > .g-dropdown-column {
  border: 1px solid transparent;
}
.g-main-nav .g-dropdown a {
  color: #111111;
}
.g-main-nav .g-dropdown a:hover {
  color: #0055a5;
}
.g-main-nav .g-dropdown .g-dropdown-column {
  position: relative;
}
.g-main-nav .g-dropdown .g-dropdown {
  margin-left: 20px;
}
.g-main-nav .g-sublevel > li {
  padding: 0;
}
.g-main-nav .g-sublevel > li > .g-menu-item-container {
  color: #111111;
}
.g-main-nav .g-sublevel > li > .g-menu-item-container .g-menu-item-content {
  margin: 0;
}
.g-main-nav .g-sublevel > li > .g-menu-item-container > .g-selected {
  color: #111111;
}
.g-main-nav .g-sublevel > li:hover > .g-menu-item-container, .g-main-nav .g-sublevel > li.active > .g-menu-item-container {
  color: #0055a5;
}
.g-main-nav .g-sublevel > li:hover > .g-menu-item-container > .g-selected, .g-main-nav .g-sublevel > li.active > .g-menu-item-container > .g-selected {
  color: #0055a5;
}
.g-main-nav .g-sublevel > li.g-menu-item-type-particle > .g-menu-item-container {
  border: 0;
}
.g-main-nav .g-sublevel > li.g-menu-item-type-particle:hover > .g-menu-item-container, .g-main-nav .g-sublevel > li.g-menu-item-type-particle.active > .g-menu-item-container {
  border: 0;
}
.g-main-nav .g-sublevel > li.g-menu-item-type-particle:hover > .g-menu-item-container {
  background: inherit;
}
/* *********** */
/* MOBILE MENU */
/* *********** */
#g-offcanvas #g-mobilemenu-container ul {
  background: #0055a5;
}
#g-offcanvas #g-mobilemenu-container ul > li:has(.button) {
  padding-top: 15px;
  padding-bottom: 15px;
  margin-left: 10px;
}
#g-offcanvas #g-mobilemenu-container ul > li > .g-menu-item-container {
  color: #ffffff;
  padding: 15px;
}
#g-offcanvas #g-mobilemenu-container ul > li > .g-menu-item-container::before {
  opacity: 1;
}
#g-offcanvas #g-mobilemenu-container ul > li > .g-menu-item-container.button {
  font-size: 14px !important;
  padding: 6px 13px !important;
  color: #fff !important;
  background: none !important;
  background-color: transparent !important;
  border-color: #fff !important;
}
#g-offcanvas #g-mobilemenu-container ul > li > .g-menu-item-container.button:hover {
  color: #111111 !important;
  background: #fff !important;
  border-color: #fff !important;
}
#g-offcanvas #g-mobilemenu-container ul > li:not(.g-menu-item-type-particle):not(.g-menu-item-type-module):not(:has(.button)).active > .g-menu-item-container, #g-offcanvas #g-mobilemenu-container ul > li:not(.g-menu-item-type-particle):not(.g-menu-item-type-module):not(:has(.button)):hover > .g-menu-item-container {
  color: #111111;
}
#g-offcanvas #g-mobilemenu-container ul > li:not(.g-menu-item-type-particle):not(.g-menu-item-type-module):not(:has(.button)).active {
  background: #f9f871;
}
#g-offcanvas #g-mobilemenu-container ul > li:not(.g-menu-item-type-particle):not(.g-menu-item-type-module):not(:has(.button)):hover {
  background: #f9f871;
}
#g-offcanvas #g-mobilemenu-container ul > li:not(.g-menu-item-type-particle):not(.g-menu-item-type-module):not(:has(.button)) .g-menu-parent-indicator::after {
  opacity: 1;
}
#g-offcanvas #g-mobilemenu-container ul > li.g-menu-item-link-parent > .g-menu-item-container > .g-menu-parent-indicator {
  border: 1px solid #0065c4;
  background: #004a91;
  border-radius: 0;
  margin: -0.3rem 0 -0.2rem 0.5rem;
  padding: 0.2rem;
}
#g-offcanvas #g-mobilemenu-container ul > li.g-menu-item-link-parent > .g-menu-item-container > .g-menu-parent-indicator:hover {
  background: #00407c;
}
#g-offcanvas #g-mobilemenu-container ul .g-dropdown-column {
  width: 280px;
}
#g-offcanvas #g-mobilemenu-container ul i.fa {
  width: 1.5rem;
}
#g-mobilemenu-container {
  margin: -25px;
}
#g-mobilemenu-container .g-toplevel.g-slide-out > .g-menu-item > .g-menu-item-container, #g-mobilemenu-container .g-toplevel.g-slide-out > .g-go-back > .g-menu-item-container, #g-mobilemenu-container .g-sublevel.g-slide-out > .g-menu-item > .g-menu-item-container, #g-mobilemenu-container .g-sublevel.g-slide-out > .g-go-back > .g-menu-item-container {
  transform: translateX(calc(-100% - 50px));
}
.g-offcanvas-toggle {
  font-size: 2rem;
  color: #ffffff;
  width: 40px;
  height: 32px;
  top: 29px;
  z-index: 100001;
  display: none !important;
  display: none;
  box-shadow: inset 0 2px #ffffff;
}
@media only all and (min-width: 74.875rem) {
  .g-offcanvas-toggle {
    display: none !important;
  }
}
@media only all and (max-width: 74.875rem) {
  .g-offcanvas-toggle {
    display: block !important;
  }
}
.g-offcanvas-toggle.g-offcanvas-hide {
  display: block;
}
.g-offcanvas-open .g-offcanvas-toggle {
  color: rgba(255, 255, 255, 0.6);
}
@media only all and (max-width: 74.875rem) {
  .g-offcanvas-toggle {
    display: block;
  }
}
.g-offcanvas-toggle .fa {
  display: none;
}
.g-offcanvas-toggle::before {
  content: "";
  position: absolute;
  top: calc(50% - 1px);
  bottom: auto;
  left: 0;
  right: 0;
  width: 100%;
  height: 2px;
  background: #ffffff;
}
.g-offcanvas-toggle::after {
  content: "";
  position: absolute;
  top: auto;
  bottom: 0;
  left: 0;
  right: 0;
  width: 100%;
  height: 2px;
  background: #ffffff;
}
.g-offcanvas-open .g-nav-overlay {
  z-index: 100000;
}
.g-offcanvas-open .g-offcanvas-left #g-page-surround {
  left: 280px;
}
.g-offcanvas-open .g-offcanvas-right #g-page-surround {
  right: 280px;
}
.g-offcanvas-open .dir-rtl.g-offcanvas-left #g-offcanvas {
  right: auto;
}
.g-offcanvas-open .dir-rtl.g-offcanvas-right #g-offcanvas {
  left: auto;
}
/* ********** */
/* OTHER MENU */
/* ********** */
.nav {
  all: unset;
}
.nav.c-horizontal {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 0 15px;
}
.nav.c-footer li.parent {
  padding: 0;
}
.nav.c-footer li.parent .mod-menu__separator {
  display: none;
}
.nav.c-footer li.parent .mod-menu__sub {
  list-style: none;
  padding: 0;
  margin: 0;
}
.nav.c-footer li a {
  text-decoration: none !important;
  position: relative;
}
.nav.c-footer li a::before {
  content: "";
  position: absolute;
  top: auto;
  bottom: -1px;
  left: 0;
  right: auto;
  width: 0;
  height: 1px;
  background: currentColor;
  transition: 0.3s all;
}
.nav.c-footer li a:hover::before {
  width: 100%;
}
.nav.c-footer li button.mod-menu__toggle-sub {
  display: none !important;
}
.nav.c-footer li ul.mod-menu__sub {
  display: block !important;
}
.nav.c-contact {
  display: flex;
  flex-wrap: wrap;
  gap: 5px 35px;
}
@media only all and (min-width: 75rem) {
  .nav.c-contact {
    align-items: center;
  }
}
@media only all and (min-width: 60rem) and (max-width: 74.99rem) {
  .nav.c-contact {
    align-items: center;
  }
}
@media only all and (min-width: 48rem) and (max-width: 59.99rem) {
  .nav.c-contact {
    align-items: center;
  }
}
@media only all and (min-width: 30.01rem) and (max-width: 47.99rem) {
  .nav.c-contact {
    align-items: center;
  }
}
@media only all and (max-width: 30rem) {
  .nav.c-contact {
    flex-direction: column;
  }
}
.nav.c-contact li a {
  display: flex;
  align-items: center;
  gap: 10px;
  text-decoration: none;
}
.nav.c-contact li a:hover .image-title::before {
  width: 100%;
}
.nav.c-contact li a .image-title {
  position: relative;
}
.nav.c-contact li a .image-title::before {
  content: "";
  position: absolute;
  top: auto;
  bottom: 0;
  left: 0;
  right: auto;
  width: 0;
  height: 1px;
  background: currentColor;
  transition: 0.3s all;
}
.nav.c-contact li img {
  filter: brightness(0) invert(1);
  background: rgba(255, 255, 255, 0.15);
  border: solid 1px rgba(255, 255, 255, 0.25);
  border-radius: 8px;
}
@media only all and (min-width: 75rem) {
  .nav.c-contact li img {
    width: 20px;
    height: 20px;
    padding: 10px;
  }
}
@media only all and (min-width: 60rem) and (max-width: 74.99rem) {
  .nav.c-contact li img {
    width: 20px;
    height: 20px;
    padding: 10px;
  }
}
@media only all and (min-width: 48rem) and (max-width: 59.99rem) {
  .nav.c-contact li img {
    width: 15px;
    height: 15px;
    padding: 10px;
  }
}
@media only all and (min-width: 30.01rem) and (max-width: 47.99rem) {
  .nav.c-contact li img {
    width: 15px;
    height: 15px;
    padding: 5px;
  }
}
@media only all and (max-width: 30rem) {
  .nav.c-contact li img {
    width: 15px;
    height: 15px;
    padding: 5px;
  }
}
/* **** */
/* LOGO */
/* **** */
.c-logo img {
  width: 250px;
  height: 36px;
}
/* ***** */
/* FORMS */
/* ***** */
form#contact-form > * {
  margin: 0;
}
form#contact-form > * + * {
  margin-top: 20px;
}
form fieldset {
  padding: 0;
  margin: 0;
}
form fieldset > * {
  margin: 0;
}
form fieldset > *:not(:first-child) {
  margin-top: 20px;
}
form fieldset + fieldset {
  margin-top: 50px;
}
form legend {
  font-weight: bold;
}
form .control-group {
  margin: 0;
}
form .control-group:not(:first-child) {
  margin-top: 20px;
}
form .control-group > *:not(.control-label):not(.controls) {
  margin: 0;
}
form .control-group > *:not(.control-label):not(.controls):not(:first-child) {
  margin-top: 20px;
}
form .control-group .control-label label {
  display: block;
  margin-bottom: 5px;
}
form .visually-hidden:first-child + * {
  margin-top: 0;
}
form input[type="text"], form input[type="email"], form input[type="password"], form input[type="url"], form input[type="file"], form input[type="number"], form input[type="date"], form input[type="time"], form input[type="tel"], form input[type="search"], form select {
  box-sizing: border-box;
  padding: 8px 15px;
  margin: 0;
  width: 100%;
  max-width: 100%;
  height: 40px;
  color: #111111;
  font-size: 16px;
  font-weight: normal;
  line-height: normal;
  border: 1px solid #e0e0e0;
  border-radius: 0;
  background-color: #fafafa;
  box-shadow: none;
}
form input[type="text"]::placeholder, form input[type="email"]::placeholder, form input[type="password"]::placeholder, form input[type="url"]::placeholder, form input[type="file"]::placeholder, form input[type="number"]::placeholder, form input[type="date"]::placeholder, form input[type="time"]::placeholder, form input[type="tel"]::placeholder, form input[type="search"]::placeholder, form select::placeholder {
  color: #111111;
}
form input[type="file"] {
  height: auto;
  background: none;
}
form select[multiple="multiple"] {
  height: 120px;
}
form input[type="radio"], form input[type="checkbox"] {
  position: relative;
  box-sizing: border-box;
  padding: 0;
  margin: 5px 5px 5px 0;
  box-shadow: none;
}
form textarea, form textarea.form-control {
  box-sizing: border-box;
  padding: 8px 15px;
  width: 100%;
  color: #111111;
  font-size: 16px;
  font-weight: normal;
  line-height: normal;
  border: 1px solid #e0e0e0;
  border-radius: 0;
  background-color: #fafafa;
  box-shadow: none;
}
form textarea::placeholder, form textarea.form-control::placeholder {
  /* Firefox 18- */
  color: #111111;
}
/* ********** */
/* LOGIN FORM */
/* ********** */
.mod-login .mod-login__userdata > * {
  margin: 0;
}
.mod-login .mod-login__userdata > *:not(:first-child) {
  margin-top: 20px;
}
.mod-login .mod-login__options {
  list-style: none;
}
.mod-login .mod-login__options [class^="icon-"] {
  display: none;
}
/* ******* */
/* CONTACT */
/* ******* */
.com_contact.view-contact #g-mainbar {
  padding: 0 !important;
}
.com-contact {
  display: grid;
  gap: 0 var(--section-padding);
}
@media only all and (min-width: 75rem) {
  .com-contact {
    grid-template-columns: 1fr 1fr;
  }
}
@media only all and (min-width: 60rem) and (max-width: 74.99rem) {
  .com-contact {
    grid-template-columns: 1fr 1fr;
  }
}
.com-contact > h1:first-child {
  margin: 0;
  padding: var(--section-padding) 0;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  margin-left: calc(-1 * var(--section-padding));
  margin-right: calc(-1 * var(--section-padding));
  background: #0055a5;
  color: #fff;
  grid-column: 1 / -1;
}
.com-contact > .page-header {
  margin-top: var(--section-padding);
}
.com-contact > h3 {
  display: none;
}
.com-contact .com-contact__container {
  margin-top: var(--section-padding);
}
.com-contact .com-contact__container > h3 {
  display: none;
}
.com-contact .com-contact__container .com-contact__thumbnail {
  margin-bottom: var(--section-padding);
  display: none;
  /*img {
				width: 220px;
				height: 52px;
			}*/
}
.com-contact .com-contact__container .com-contact__position {
  margin: 0;
  overflow: auto;
  font-weight: 500;
}
.com-contact .com-contact__container .com-contact__position dt {
  margin: 2px 10px 2px 0;
  float: left;
  clear: left;
  text-align: center;
  display: none;
}
.com-contact .com-contact__container .com-contact__position dd {
  margin: 2px 0;
  float: left;
}
.com-contact .com-contact__container .com-contact__info .com-contact__address {
  margin: 0;
  overflow: auto;
}
.com-contact .com-contact__container .com-contact__info .com-contact__address dt {
  width: 20px;
  margin: 2px 10px 2px 0;
  float: left;
  clear: left;
  text-align: center;
}
.com-contact .com-contact__container .com-contact__info .com-contact__address dd {
  display: inline-flex;
  margin: 2px 0;
  float: left;
}
.com-contact .com-contact__container .com-contact__info .com-contact__address dd:has(+ dd)::after {
  content: ",";
  margin-right: 5px;
}
.com-contact .com-contact__form {
  position: relative;
}
@media only all and (min-width: 75rem) {
  .com-contact .com-contact__form {
    padding: var(--section-padding);
    grid-row-start: 2;
    grid-row-end: 10;
    grid-column-start: 2;
  }
}
@media only all and (min-width: 60rem) and (max-width: 74.99rem) {
  .com-contact .com-contact__form {
    padding: var(--section-padding);
    grid-row-start: 2;
    grid-row-end: 10;
    grid-column-start: 2;
  }
}
@media only all and (min-width: 48rem) and (max-width: 59.99rem) {
  .com-contact .com-contact__form {
    grid-row-start: 10;
    padding: var(--section-padding) 0;
    margin-top: var(--section-padding);
  }
}
@media only all and (min-width: 30.01rem) and (max-width: 47.99rem) {
  .com-contact .com-contact__form {
    grid-row-start: 10;
    padding: var(--section-padding) 0;
    margin-top: var(--section-padding);
  }
}
@media only all and (max-width: 30rem) {
  .com-contact .com-contact__form {
    grid-row-start: 10;
    padding: var(--section-padding) 0;
    margin-top: var(--section-padding);
  }
}
.com-contact .com-contact__form::before {
  content: "";
  position: absolute;
  z-index: 1;
  top: 0;
  bottom: 0;
  background: #f4f4f9;
}
@media only all and (min-width: 75rem) {
  .com-contact .com-contact__form::before {
    left: 0;
    right: calc(-1 * var(--section-padding));
  }
}
@media only all and (min-width: 60rem) and (max-width: 74.99rem) {
  .com-contact .com-contact__form::before {
    left: 0;
    right: calc(-1 * var(--section-padding));
  }
}
@media only all and (min-width: 48rem) and (max-width: 59.99rem) {
  .com-contact .com-contact__form::before {
    left: calc(-50vw + 50%);
    right: calc(-50vw + 50%);
  }
}
@media only all and (min-width: 30.01rem) and (max-width: 47.99rem) {
  .com-contact .com-contact__form::before {
    left: calc(-50vw + 50%);
    right: calc(-50vw + 50%);
  }
}
@media only all and (max-width: 30rem) {
  .com-contact .com-contact__form::before {
    left: calc(-50vw + 50%);
    right: calc(-50vw + 50%);
  }
}
.com-contact .com-contact__form #contact-form {
  position: relative;
  z-index: 3;
}
.com-contact .com-contact__form #contact-form fieldset + fieldset {
  margin-top: 20px !important;
}
.com-contact .com-contact__form #contact-form legend {
  display: none;
}
.com-contact .com-contact__form #contact-form .control-group.field-spacer {
  display: none;
}
.com-contact .com-contact__form #contact-form .control-group.field-spacer + .control-group {
  margin-top: 0;
}
.com-contact .com-contact__form #contact-form .star {
  display: none;
}
.com-contact .com-contact__miscinfo {
  margin-top: var(--section-padding);
}
@media only all and (min-width: 75rem) {
  .com-contact .com-contact__miscinfo {
    margin-bottom: var(--section-padding);
  }
}
@media only all and (min-width: 60rem) and (max-width: 74.99rem) {
  .com-contact .com-contact__miscinfo {
    margin-bottom: var(--section-padding);
  }
}
.com-contact .com-contact__miscinfo dl {
  margin: 0;
}
.com-contact .com-contact__miscinfo dt {
  display: none;
}
.com-contact .com-contact__miscinfo dd {
  margin: 0;
}
/* ****** */
/* SEARCH */
/* ****** */
.com-finder > h1:first-child {
  margin: 0 0 50px 0;
}
.com-finder #search-form .form-inline label {
  display: none;
}
.com-finder #search-form .form-inline .js-finder-search-query {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}
.com-finder #search-results #search-result-list {
  margin: var(--section-padding) 0;
  display: grid;
  gap: 50px;
}
@media only all and (min-width: 75rem) {
  .com-finder #search-results #search-result-list {
    grid-template-columns: 1fr 1fr 1fr;
  }
}
@media only all and (min-width: 60rem) and (max-width: 74.99rem) {
  .com-finder #search-results #search-result-list {
    grid-template-columns: 1fr 1fr 1fr;
  }
}
@media only all and (min-width: 48rem) and (max-width: 59.99rem) {
  .com-finder #search-results #search-result-list {
    grid-template-columns: 1fr 1fr;
  }
}
@media only all and (min-width: 30.01rem) and (max-width: 47.99rem) {
  .com-finder #search-results #search-result-list {
    grid-template-columns: 1fr;
  }
}
@media only all and (max-width: 30rem) {
  .com-finder #search-results #search-result-list {
    grid-template-columns: 1fr;
  }
}
.com-finder #search-results #search-result-list .result__item {
  border: none;
  padding: 0;
  margin: 0;
}
.com-finder #search-results #search-result-list .result__item:not(:has(.result__image))::before {
  margin-bottom: 25px;
  content: "";
  display: block;
  aspect-ratio: 1.7777777778;
  background-color: #f4f4f9;
  background-image: url('../../../../images/icons/none-white.svg');
  background-size: 25%;
  background-position: center center;
  background-repeat: no-repeat;
  border-radius: 0;
}
.com-finder #search-results #search-result-list .result__item > * {
  margin: 0;
}
.com-finder #search-results #search-result-list .result__item .result__image {
  margin-bottom: 25px;
  aspect-ratio: 1.7777777778;
  overflow: hidden;
  border-radius: 0;
}
.com-finder #search-results #search-result-list .result__item .result__image img {
  object-fit: cover;
  object-position: center center;
  width: 100%;
  height: 100%;
}
.com-finder #search-results #search-result-list .result__item .result__description {
  margin-top: 15px;
}
/* *********** */
/* BREADCRUMBS */
/* *********** */
.mod-breadcrumbs__wrapper {
  font-size: 80%;
}
.mod-breadcrumbs__wrapper .mod-breadcrumbs {
  margin: unset;
  background: unset;
  padding-left: unset !important;
  padding-right: unset !important;
}
.mod-breadcrumbs__wrapper .mod-breadcrumbs .mod-breadcrumbs__item {
  padding: unset;
}
.mod-breadcrumbs__wrapper .mod-breadcrumbs .mod-breadcrumbs__item::before {
  color: inherit;
}
.mod-breadcrumbs__wrapper .mod-breadcrumbs .mod-breadcrumbs__item:not(:last-child) {
  margin-right: 10px;
}
.mod-breadcrumbs__wrapper .mod-breadcrumbs .mod-breadcrumbs__item.active {
  color: inherit;
}
.mod-breadcrumbs__wrapper .mod-breadcrumbs .mod-breadcrumbs__item a {
  color: inherit;
}
/* ********* */
/* LANGUAGES */
/* ********* */
.mod-languages .mod-languages__list {
  line-height: 1;
}
.mod-languages .mod-languages__list li {
  margin: 0;
}
.mod-languages .mod-languages__list li.lang-active {
  background: none;
}
.mod-languages .mod-languages__list li.lang-active a {
  font-weight: bold;
}
.mod-languages .mod-languages__list li:first-child a {
  padding-left: 0;
}
.mod-languages .mod-languages__list li:last-child a {
  padding-right: 0;
}
.mod-languages .mod-languages__list li a {
  display: inline-flex;
  padding: 5px;
  color: inherit !important;
}
/* ***** */
/* ALERT */
/* ***** */
.alert {
  border-radius: 0;
  border: none;
}
joomla-alert {
  padding: 10px 35px 10px 10px;
  margin: 0;
  position: relative;
  border-radius: 0;
}
joomla-alert + .joomla-alert {
  margin-top: 1rem;
}
joomla-alert .joomla-alert--close {
  position: absolute;
  top: 0;
  right: 0;
  text-shadow: none;
}
joomla-alert .alert-heading {
  font-weight: bold;
}
/* ********** */
/* PAGINATION */
/* ********** */
[class*="__navigation"] {
  margin-top: var(--section-padding);
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 10px 50px;
}
.pagination__wrapper .pagination {
  margin: 0;
  list-style: none;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 5px 0;
}
.pagination__wrapper .pagination .page-item .page-link {
  display: block;
  padding: 5px 12px;
  text-decoration: none;
  background: #fff;
  border: 1px solid #111111;
  transition: all 0.3s;
}
.pagination__wrapper .pagination .page-item .page-link:hover {
  background: #111111;
  color: #fff;
}
.pagination__wrapper .pagination .page-item:first-child .page-link {
  border-top-left-radius: 8px;
  border-bottom-left-radius: 8px;
}
.pagination__wrapper .pagination .page-item:last-child .page-link {
  border-top-right-radius: 8px;
  border-bottom-right-radius: 8px;
}
.pagination__wrapper .pagination .page-item:not(:first-child) .page-link {
  margin-left: -1px;
}
.pagination__wrapper .pagination .page-item.active .page-link {
  background: #111111;
  color: #fff;
}
/* ******* */
/* SITEMAP */
/* ******* */
#osmap > .page-header {
  margin: 0 0 50px 0;
}
@media only all and (min-width: 75rem) {
  #osmap .osmap-items {
    column-count: 3;
    column-gap: 50px;
  }
  #osmap .osmap-items ul {
    break-inside: avoid;
  }
  #osmap .osmap-items ul:first-child {
    margin-top: 0;
  }
  #osmap .osmap-items ul:last-child {
    margin-bottom: 0;
  }
}
@media only all and (min-width: 60rem) and (max-width: 74.99rem) {
  #osmap .osmap-items {
    column-count: 3;
    column-gap: 50px;
  }
  #osmap .osmap-items ul {
    break-inside: avoid;
  }
  #osmap .osmap-items ul:first-child {
    margin-top: 0;
  }
  #osmap .osmap-items ul:last-child {
    margin-bottom: 0;
  }
}
@media only all and (min-width: 48rem) and (max-width: 59.99rem) {
  #osmap .osmap-items {
    column-count: 2;
    column-gap: 50px;
  }
  #osmap .osmap-items ul {
    break-inside: avoid;
  }
  #osmap .osmap-items ul:first-child {
    margin-top: 0;
  }
  #osmap .osmap-items ul:last-child {
    margin-bottom: 0;
  }
}
#osmap .osmap-items > ul {
  padding: 25px 0 25px 25px;
  margin: -2px 0 0 0;
  border-top: solid 2px #eceff3;
  border-bottom: solid 2px #eceff3;
}
/* ***** */
/* USERS */
/* ***** */
.com-users-login, .com-users-registration, .com-users-remind, .com-users-reset, .com-users-profile__edit {
  max-width: 650px;
  margin-left: auto;
  margin-right: auto;
}
.com-users-login > .page-header, .com-users-registration > .page-header, .com-users-remind > .page-header, .com-users-reset > .page-header, .com-users-profile__edit > .page-header {
  margin: 0 0 50px 0;
  text-align: center;
}
/* ************* */
/* ACCESSIBILITY */
/* ************* */
._access-icon {
  width: 40px !important;
  height: 40px !important;
  bottom: 15px !important;
  left: 15px !important;
  color: #000 !important;
  display: flex !important;
  justify-content: center !important;
  font-style: normal !important;
  transform: none !important;
  text-indent: unset !important;
  line-height: 40px !important;
}
div._access-menu {
  margin: 10px;
  border-radius: 0;
  box-shadow: 0 5px 10px rgba(0, 0, 0, 0.25);
}
div._access-menu ._menu-btn {
  width: 30px;
  font-style: normal;
}
div._access-menu h3 {
  font-size: 20px !important;
  margin-top: 10px;
  margin-bottom: 10px;
}
div._access-menu ul._access-scrollbar li {
  padding-left: 40px;
  background: none;
  border: none;
  border-radius: 0;
}
/* ***** */
/* ERROR */
/* ***** */
.g-error, .outline-_error {
  text-align: center;
}
.g-error .g-container, .outline-_error .g-container {
  max-width: 550px;
  margin-left: auto;
  margin-right: auto;
}
.g-error #g-header, .outline-_error #g-header {
  padding-top: var(--section-padding);
  padding-bottom: var(--section-padding);
}
.g-error .button-white-outline:hover, .g-error .moduletable.c-newsletter .acym_module_form .acysubbuttons .button:hover, .moduletable.c-newsletter .acym_module_form .acysubbuttons .g-error .button:hover, .g-error .com_content.view-category.layout-blog.c-ri-projects .com-content-category-blog .com-content-category-blog__items .com-content-category-blog__item .readmore a.btn:hover, .com_content.view-category.layout-blog.c-ri-projects .com-content-category-blog .com-content-category-blog__items .com-content-category-blog__item .readmore .g-error a.btn:hover, .outline-_error .button-white-outline:hover, .outline-_error .moduletable.c-newsletter .acym_module_form .acysubbuttons .button:hover, .moduletable.c-newsletter .acym_module_form .acysubbuttons .outline-_error .button:hover, .outline-_error .com_content.view-category.layout-blog.c-ri-projects .com-content-category-blog .com-content-category-blog__items .com-content-category-blog__item .readmore a.btn:hover, .com_content.view-category.layout-blog.c-ri-projects .com-content-category-blog .com-content-category-blog__items .com-content-category-blog__item .readmore .outline-_error a.btn:hover {
  color: #ffffff !important;
}
/* ******* */
/* OFFLINE */
/* ******* */
.g-offline, .outline-_offline {
  font-size: initial;
  background: #0055a5;
}
.g-offline .g-container, .outline-_offline .g-container {
  max-width: 550px;
  margin-left: auto;
  margin-right: auto;
}
.g-offline #g-page-surround > *, .outline-_offline #g-page-surround > * {
  padding: 0;
  background: none;
}
.g-offline #g-page-surround #g-navigation, .outline-_offline #g-page-surround #g-navigation {
  padding: 10px 0;
}
.g-offline #g-page-surround #g-mainbar, .outline-_offline #g-page-surround #g-mainbar {
  height: 100vh;
  background: none;
}
.g-offline #frame, .outline-_offline #frame {
  margin: 0 auto;
  border: none;
  border-radius: 0;
  box-shadow: 0 15px 30px rgba(0, 0, 0, 0.25);
}
.g-offline #frame > p, .outline-_offline #frame > p {
  font-size: 120%;
}
.g-offline #frame form, .outline-_offline #frame form {
  text-align: center;
}
.g-offline #frame form input, .outline-_offline #frame form input {
  text-align: center;
}
/* ************ */
/* WHITE HEADER */
/* ************ */
.site.c-white-header .g-main-nav .g-toplevel > li > .g-menu-item-container.button.button-white {
  border-color: #111111;
  background: #111111;
  color: #fff;
}
.site.c-white-header .g-main-nav .g-toplevel > li > .g-menu-item-container.button.button-white:hover {
  border-color: #111111;
  background: transparent;
  color: #111111;
}
.site.c-white-header .g-main-nav .g-toplevel > li > .g-menu-item-container.button.button-white-outline, .site.c-white-header .g-main-nav .moduletable.c-newsletter .acym_module_form .acysubbuttons .g-toplevel > li > .g-menu-item-container.button, .moduletable.c-newsletter .acym_module_form .acysubbuttons .site.c-white-header .g-main-nav .g-toplevel > li > .g-menu-item-container.button, .site.c-white-header .g-main-nav .com_content.view-category.layout-blog.c-ri-projects .com-content-category-blog .com-content-category-blog__items .com-content-category-blog__item .readmore .g-toplevel > li > a.g-menu-item-container.button.btn, .com_content.view-category.layout-blog.c-ri-projects .com-content-category-blog .com-content-category-blog__items .com-content-category-blog__item .readmore .site.c-white-header .g-main-nav .g-toplevel > li > a.g-menu-item-container.button.btn {
  border-color: #111111;
  background: transparent;
  color: #111111;
}
.site.c-white-header .g-main-nav .g-toplevel > li > .g-menu-item-container.button.button-white-outline:hover, .site.c-white-header .g-main-nav .moduletable.c-newsletter .acym_module_form .acysubbuttons .g-toplevel > li > .g-menu-item-container.button:hover, .moduletable.c-newsletter .acym_module_form .acysubbuttons .site.c-white-header .g-main-nav .g-toplevel > li > .g-menu-item-container.button:hover, .site.c-white-header .g-main-nav .com_content.view-category.layout-blog.c-ri-projects .com-content-category-blog .com-content-category-blog__items .com-content-category-blog__item .readmore .g-toplevel > li > a.g-menu-item-container.button.btn:hover, .com_content.view-category.layout-blog.c-ri-projects .com-content-category-blog .com-content-category-blog__items .com-content-category-blog__item .readmore .site.c-white-header .g-main-nav .g-toplevel > li > a.g-menu-item-container.button.btn:hover {
  border-color: #111111;
  background: #111111;
  color: #fff;
}
.site.c-white-header .g-main-nav .g-toplevel > li > .g-menu-item-container.button-accent-2:hover {
  border-color: #f9f871;
  background: #f9f871;
  color: #111111;
}
.site.c-white-header .g-offcanvas-toggle {
  box-shadow: inset 0 2px #111111;
}
.site.c-white-header .g-offcanvas-toggle::before {
  background: #111111;
}
.site.c-white-header .g-offcanvas-toggle::after {
  background: #111111;
}
.site.c-white-header #g-navigation::after {
  background: rgba(0, 85, 165, 0.25);
}
/* ******** */
/* HOMEPAGE */
/* ******** */
.site.c-homepage #g-container-main #g-mainbar {
  padding-top: 0;
}
.c-section--homepage--intro {
  position: relative;
  background: #0055a5;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  margin-top: 0 !important;
  margin-bottom: 0 !important;
  display: grid;
  position: relative;
}
.c-section--homepage--intro::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  width: calc(100vw + 2px);
  margin-left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  background: #0055a5;
  z-index: 1;
}
.c-section--homepage--intro > * {
  position: relative;
  z-index: 3;
  color: #fff;
}
.c-section--homepage--intro a {
  color: inherit;
}
.c-section--homepage--intro a:hover {
  color: #fff;
}
@media only all and (min-width: 75rem) {
  .c-section--homepage--intro {
    grid-template-columns: 1fr 1fr;
    grid-template-areas: "other image";
  }
}
@media only all and (min-width: 60rem) and (max-width: 74.99rem) {
  .c-section--homepage--intro {
    grid-template-columns: 1fr 1fr;
    grid-template-areas: "other image";
  }
}
@media only all and (min-width: 48rem) and (max-width: 59.99rem) {
  .c-section--homepage--intro {
    grid-template-columns: 100%;
    grid-template-areas: "other" "image";
  }
}
@media only all and (min-width: 30.01rem) and (max-width: 47.99rem) {
  .c-section--homepage--intro {
    grid-template-columns: 100%;
    grid-template-areas: "other" "image";
  }
}
@media only all and (max-width: 30rem) {
  .c-section--homepage--intro {
    grid-template-columns: 100%;
    grid-template-areas: "other" "image";
  }
}
.c-section--homepage--intro .c-other {
  grid-area: other;
  background: #0055a5;
}
@media only all and (min-width: 75rem) {
  .c-section--homepage--intro .c-other {
    padding-top: 150px;
    padding-bottom: 150px;
    padding-right: 50px;
  }
}
@media only all and (min-width: 60rem) and (max-width: 74.99rem) {
  .c-section--homepage--intro .c-other {
    padding-top: 75px;
    padding-bottom: 75px;
    padding-right: 50px;
  }
}
@media only all and (min-width: 48rem) and (max-width: 59.99rem) {
  .c-section--homepage--intro .c-other {
    padding-top: 75px;
    padding-bottom: 75px;
    padding-right: 50px;
  }
}
@media only all and (min-width: 30.01rem) and (max-width: 47.99rem) {
  .c-section--homepage--intro .c-other {
    padding-top: 50px;
    padding-bottom: 50px;
  }
}
@media only all and (max-width: 30rem) {
  .c-section--homepage--intro .c-other {
    padding-top: 50px;
    padding-bottom: 50px;
  }
}
.c-section--homepage--intro .c-other .c-title {
  color: #f9f871;
}
@media only all and (min-width: 75rem) {
  .c-section--homepage--intro .c-other .c-title h1 {
    font-size: 3.5rem;
  }
}
@media only all and (min-width: 60rem) and (max-width: 74.99rem) {
  .c-section--homepage--intro .c-other .c-title h1 {
    font-size: 3rem;
  }
}
@media only all and (min-width: 48rem) and (max-width: 59.99rem) {
  .c-section--homepage--intro .c-other .c-title h1 {
    font-size: 3rem;
  }
}
@media only all and (min-width: 30.01rem) and (max-width: 47.99rem) {
  .c-section--homepage--intro .c-other .c-title h1 {
    font-size: 2.25rem;
  }
}
@media only all and (max-width: 30rem) {
  .c-section--homepage--intro .c-other .c-title h1 {
    font-size: 2rem;
  }
}
.c-section--homepage--intro .c-other .c-text {
  text-wrap: balance;
}
@media only all and (min-width: 75rem) {
  .c-section--homepage--intro .c-other .c-text {
    font-size: 130%;
  }
}
@media only all and (min-width: 60rem) and (max-width: 74.99rem) {
  .c-section--homepage--intro .c-other .c-text {
    font-size: 120%;
  }
}
@media only all and (min-width: 48rem) and (max-width: 59.99rem) {
  .c-section--homepage--intro .c-other .c-text {
    font-size: 110%;
  }
}
.c-section--homepage--intro .c-other .c-text:not(:first-child) {
  margin-top: 25px;
}
.c-section--homepage--intro .c-image {
  grid-area: image;
  position: relative;
}
@media only all and (min-width: 75rem) {
  .c-section--homepage--intro .c-image .complete-image-slider {
    position: absolute;
    top: -110px;
    bottom: 0;
    left: 0;
    right: calc(-50vw + 100%);
  }
}
@media only all and (min-width: 60rem) and (max-width: 74.99rem) {
  .c-section--homepage--intro .c-image .complete-image-slider {
    position: absolute;
    top: -110px;
    bottom: 0;
    left: 0;
    right: calc(-50vw + 100%);
  }
}
@media only all and (min-width: 48rem) and (max-width: 59.99rem) {
  .c-section--homepage--intro .c-image .complete-image-slider {
    aspect-ratio: 1.7777777778;
    margin-left: calc(-50vw + 50%);
    margin-right: calc(-50vw + 50%);
  }
}
@media only all and (min-width: 30.01rem) and (max-width: 47.99rem) {
  .c-section--homepage--intro .c-image .complete-image-slider {
    aspect-ratio: 1.7777777778;
    margin-left: calc(-50vw + 50%);
    margin-right: calc(-50vw + 50%);
  }
}
@media only all and (max-width: 30rem) {
  .c-section--homepage--intro .c-image .complete-image-slider {
    aspect-ratio: 1.7777777778;
    margin-left: calc(-50vw + 50%);
    margin-right: calc(-50vw + 50%);
  }
}
.c-section--homepage--intro .c-image .complete-image-slider .cis-images {
  height: 100%;
}
.c-section--homepage--intro .c-image .complete-image-slider .cis-images .cis-image {
  position: relative;
}
.c-section--homepage--intro .c-image .complete-image-slider .cis-images .cis-image::before {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.15);
  background: linear-gradient(180deg, rgba(0, 0, 0, 0.5) 0%, rgba(255, 255, 255, 0) 30%);
  pointer-events: none;
  z-index: 3;
}
.c-section--homepage--intro .c-image .complete-image-slider .cis-images .cis-image img {
  object-fit: cover;
  object-position: center center;
  width: 100%;
  height: 100%;
  filter: contrast(1.1) brightness(0.9);
}
.mceContentBody .c-section--homepage--intro .c-image {
  display: flex;
  align-items: center;
  justify-content: center;
}
.c-section--homepage--cnc-reliability {
  position: relative;
  display: grid;
  gap: 35px var(--section-padding);
}
.c-section--homepage--cnc-reliability::after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  bottom: auto;
  left: calc(-50vw + 50%);
  right: calc(-50vw + 50%);
  width: auto;
  height: 2px;
  background: #f4f4f9;
  z-index: 1;
}
@media only all and (min-width: 75rem) {
  .c-section--homepage--cnc-reliability {
    grid-template-columns: 1fr 3fr;
  }
}
@media only all and (min-width: 60rem) and (max-width: 74.99rem) {
  .c-section--homepage--cnc-reliability {
    grid-template-columns: 100%;
  }
}
@media only all and (min-width: 48rem) and (max-width: 59.99rem) {
  .c-section--homepage--cnc-reliability {
    grid-template-columns: 100%;
  }
}
@media only all and (min-width: 30.01rem) and (max-width: 47.99rem) {
  .c-section--homepage--cnc-reliability {
    grid-template-columns: 100%;
  }
}
@media only all and (max-width: 30rem) {
  .c-section--homepage--cnc-reliability {
    grid-template-columns: 100%;
  }
}
.c-section--homepage--cnc-reliability .c-text {
  display: grid;
  gap: 15px 35px;
}
@media only all and (min-width: 75rem) {
  .c-section--homepage--cnc-reliability .c-text {
    grid-template-columns: 1fr 1fr 1fr;
  }
}
@media only all and (min-width: 60rem) and (max-width: 74.99rem) {
  .c-section--homepage--cnc-reliability .c-text {
    grid-template-columns: 1fr 1fr 1fr;
  }
}
@media only all and (min-width: 48rem) and (max-width: 59.99rem) {
  .c-section--homepage--cnc-reliability .c-text {
    grid-template-columns: 1fr 1fr 1fr;
  }
}
@media only all and (min-width: 30.01rem) and (max-width: 47.99rem) {
  .c-section--homepage--cnc-reliability .c-text {
    grid-template-columns: 1fr;
  }
}
@media only all and (max-width: 30rem) {
  .c-section--homepage--cnc-reliability .c-text {
    grid-template-columns: 1fr;
  }
}
.c-section--homepage--cnc-reliability .c-text p {
  margin: 0;
  background: #f4f4f9;
  display: grid;
  column-gap: 15px;
}
@media only all and (min-width: 75rem) {
  .c-section--homepage--cnc-reliability .c-text p {
    padding: 35px;
    grid-template-columns: 100%;
    grid-template-rows: auto auto 1fr;
  }
}
@media only all and (min-width: 60rem) and (max-width: 74.99rem) {
  .c-section--homepage--cnc-reliability .c-text p {
    padding: 25px;
    grid-template-columns: 100%;
    grid-template-rows: auto auto 1fr;
  }
}
@media only all and (min-width: 48rem) and (max-width: 59.99rem) {
  .c-section--homepage--cnc-reliability .c-text p {
    padding: 25px;
    grid-template-columns: 100%;
    grid-template-rows: auto auto 1fr;
  }
}
@media only all and (min-width: 30.01rem) and (max-width: 47.99rem) {
  .c-section--homepage--cnc-reliability .c-text p {
    padding: 25px;
    grid-template-columns: 60px 1fr;
  }
}
@media only all and (max-width: 30rem) {
  .c-section--homepage--cnc-reliability .c-text p {
    padding: 25px;
    grid-template-columns: 60px 1fr;
  }
}
.c-section--homepage--cnc-reliability .c-text p img {
  width: 60px;
  height: 60px;
  margin: 5px 0 15px 0;
  object-fit: contain;
  object-position: center center;
}
@media only all and (min-width: 30.01rem) and (max-width: 47.99rem) {
  .c-section--homepage--cnc-reliability .c-text p img {
    grid-row: 1 / 10;
  }
}
@media only all and (max-width: 30rem) {
  .c-section--homepage--cnc-reliability .c-text p img {
    grid-row: 1 / 10;
  }
}
.c-section--homepage--cnc-reliability .c-text p strong {
  display: block;
  margin-bottom: 10px;
  font-size: 130%;
}
.c-section--homepage--cnc-services {
  position: relative;
  background: #f4f4f9;
  display: flex;
  flex-wrap: wrap;
  gap: 35px var(--section-padding);
  position: relative;
}
.c-section--homepage--cnc-services::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  width: calc(100vw + 2px);
  margin-left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  background: #f4f4f9;
  z-index: 1;
}
.c-section--homepage--cnc-services > * {
  position: relative;
  z-index: 3;
}
@media only all and (min-width: 60rem) and (max-width: 74.99rem) {
  .c-section--homepage--cnc-services {
    flex-direction: column;
  }
}
@media only all and (min-width: 48rem) and (max-width: 59.99rem) {
  .c-section--homepage--cnc-services {
    flex-direction: column;
  }
}
@media only all and (min-width: 30.01rem) and (max-width: 47.99rem) {
  .c-section--homepage--cnc-services {
    flex-direction: column;
  }
}
@media only all and (max-width: 30rem) {
  .c-section--homepage--cnc-services {
    flex-direction: column;
  }
}
.c-section--homepage--cnc-services .c-needs {
  width: 100%;
  background: rgba(255, 255, 255, 0.75);
  backdrop-filter: blur(5px);
}
@media only all and (min-width: 75rem) {
  .c-section--homepage--cnc-services .c-needs {
    max-width: 500px;
    padding: 50px;
  }
}
@media only all and (min-width: 60rem) and (max-width: 74.99rem) {
  .c-section--homepage--cnc-services .c-needs {
    max-width: 600px;
    padding: 50px;
  }
}
@media only all and (min-width: 48rem) and (max-width: 59.99rem) {
  .c-section--homepage--cnc-services .c-needs {
    max-width: 500px;
    padding: 50px 35px;
  }
}
@media only all and (min-width: 30.01rem) and (max-width: 47.99rem) {
  .c-section--homepage--cnc-services .c-needs {
    max-width: 450px;
    padding: 35px;
  }
}
@media only all and (max-width: 30rem) {
  .c-section--homepage--cnc-services .c-needs {
    padding: 35px;
  }
}
.c-section--homepage--cnc-services .c-needs .c-title h3:has(+ h2) {
  margin-top: 1.75rem;
  margin-bottom: 1rem;
  line-height: 1.5;
  font-family: "GoogleSans";
  font-size: 1.35rem;
  font-weight: 500;
  text-transform: none;
  text-wrap: balance;
}
@media only all and (min-width: 30.01rem) and (max-width: 47.99rem) {
  .c-section--homepage--cnc-services .c-needs .c-title h3:has(+ h2) {
    font-size: 1.25rem;
  }
}
@media only all and (max-width: 30rem) {
  .c-section--homepage--cnc-services .c-needs .c-title h3:has(+ h2) {
    font-size: 1.25rem;
  }
}
.c-section--homepage--cnc-services .c-services {
  width: 100%;
  background: rgba(0, 85, 165, 0.75);
  color: #fff;
  backdrop-filter: blur(5px);
}
@media only all and (min-width: 75rem) {
  .c-section--homepage--cnc-services .c-services {
    max-width: 470px;
    padding: 50px;
  }
}
@media only all and (min-width: 60rem) and (max-width: 74.99rem) {
  .c-section--homepage--cnc-services .c-services {
    max-width: 600px;
    padding: 50px;
  }
}
@media only all and (min-width: 48rem) and (max-width: 59.99rem) {
  .c-section--homepage--cnc-services .c-services {
    max-width: 500px;
    padding: 50px 35px;
  }
}
@media only all and (min-width: 30.01rem) and (max-width: 47.99rem) {
  .c-section--homepage--cnc-services .c-services {
    max-width: 450px;
    padding: 35px;
  }
}
@media only all and (max-width: 30rem) {
  .c-section--homepage--cnc-services .c-services {
    padding: 35px;
  }
}
.c-section--homepage--cnc-services .c-services .c-text {
  margin-top: 25px;
}
.c-section--homepage--cnc-services .c-services .c-text ul {
  list-style: none;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.c-section--homepage--cnc-services .c-services .c-text ul li {
  display: flex;
  gap: 10px;
  font-size: 110%;
}
.c-section--homepage--cnc-services .c-services .c-text ul li::before {
  content: "";
  display: inline-block;
  width: 20px;
  height: 20px;
  -webkit-mask-image: url('../../../../images/icons/check.svg');
  mask-image: url('../../../../images/icons/check.svg');
  background-color: currentColor;
  background-position: center center;
  background-size: contain;
  background-repeat: no-repeat;
  vertical-align: text-bottom;
}
.c-section--homepage--cnc-services .c-services a:not(.button):not(.btn) {
  text-decoration: none;
  color: #fff;
}
.c-section--homepage--cnc-services .c-services a:not(.button):not(.btn):after {
  content: "";
  display: inline-block;
  width: 18px;
  height: 18px;
  margin-left: 10px;
  -webkit-mask-image: url('../../../../images/icons/arrow-right.svg');
  mask-image: url('../../../../images/icons/arrow-right.svg');
  background-color: currentColor;
  background-position: center center;
  background-size: contain;
  background-repeat: no-repeat;
  vertical-align: middle;
  transition: all 0.2s;
}
.c-section--homepage--cnc-services .c-services a:not(.button):not(.btn):hover {
  text-decoration: none;
  color: inherit;
}
.c-section--homepage--cnc-services .c-services a:not(.button):not(.btn):hover:after {
  transform: translateX(10px);
}
.c-section--homepage--cnc-services .c-services a:not(.button):not(.btn):hover {
  color: #f9f871;
}
.c-section--homepage--cnc-services .c-image {
  position: absolute;
  z-index: 1;
  top: 0;
  bottom: 0;
  left: calc(-50vw + 50% - 1px);
  right: calc(-50vw + 50% - 1px);
}
.c-section--homepage--cnc-services .c-image::before {
  content: "";
  display: block;
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.1);
}
.c-section--homepage--cnc-services .c-image p {
  margin: 0;
  display: block;
  position: absolute;
  inset: 0;
}
.c-section--homepage--cnc-services .c-image img {
  object-fit: cover;
  object-position: right center;
  width: 100%;
  height: 100%;
}
.c-section--homepage--machine-shop {
  position: relative;
  background: #f4f4f9;
}
.c-section--homepage--machine-shop::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  width: calc(100vw + 2px);
  margin-left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  background: #f4f4f9;
  z-index: 1;
}
.c-section--homepage--machine-shop > * {
  position: relative;
  z-index: 3;
}
.c-section--homepage--cta .c-title {
  max-width: 950px;
}
.c-section--homepage--cta .c-text {
  max-width: 700px;
}
/* ****** */
/* FOOTER */
/* ****** */
.moduletable.c-newsletter .acym_module_form {
  display: flex;
  gap: 10px;
}
@media only all and (min-width: 75rem) {
  .moduletable.c-newsletter .acym_module_form {
    flex-direction: column;
    align-items: start;
  }
}
@media only all and (min-width: 60rem) and (max-width: 74.99rem) {
  .moduletable.c-newsletter .acym_module_form {
    align-items: center;
  }
}
@media only all and (min-width: 48rem) and (max-width: 59.99rem) {
  .moduletable.c-newsletter .acym_module_form {
    align-items: center;
  }
}
@media only all and (min-width: 30.01rem) and (max-width: 47.99rem) {
  .moduletable.c-newsletter .acym_module_form {
    flex-direction: column;
    align-items: start;
  }
}
@media only all and (max-width: 30rem) {
  .moduletable.c-newsletter .acym_module_form {
    flex-direction: column;
    align-items: start;
  }
}
.moduletable.c-newsletter .acym_module_form .acym_form {
  display: flex;
  align-items: center;
  gap: 10px;
}
@media only all and (max-width: 30rem) {
  .moduletable.c-newsletter .acym_module_form .acym_form {
    flex-direction: column;
    align-items: start;
  }
}
.moduletable.c-newsletter .acym_module_form .acym_form .onefield {
  margin: 0;
  text-wrap: balance;
}
.moduletable.c-newsletter .acym_module_form .acym_form .onefield label {
  margin: 0;
}
.moduletable.c-newsletter .acym_module_form .acym_form .onefield input {
  max-width: 300px;
  background-color: rgba(255, 255, 255, 0.15);
  color: inherit;
}
.moduletable.c-newsletter .acym_module_form .acym_form .onefield input::placeholder {
  color: inherit;
}
.moduletable.c-newsletter .acym_module_form .acysubbuttons {
  margin: 0;
}
.moduletable.c-about-us .custom {
  font-size: 90%;
  text-wrap: balance;
}
.moduletable.c-about-us .custom img {
  filter: brightness(0) invert(1);
}
.g-copyright .symbol {
  position: relative;
  margin-bottom: -10px;
  bottom: -7px;
  font-size: 26px;
}
/* ********************** */
/* Complete Scroll To Top */
/* ********************** */
#complete-scroll-to-top {
  position: fixed;
  z-index: 9;
  top: auto;
  bottom: 20px;
  left: auto;
  right: 20px;
  width: 40px;
  height: 40px;
  color: #f9f871;
  background-color: #0055a5;
  background-image: url('../../../../images/icons/arrow-top.svg');
  background-repeat: no-repeat;
  background-position: center center;
  background-size: 16px;
  border-radius: 50%;
  cursor: pointer;
}
/* ******************* */
/* PAGE: CNC MACHINING */
/* ******************* */
.c-section--cnc-machining--intro .c-title {
  max-width: 1000px;
}
.c-section--cnc-machining--intro .c-text {
  max-width: 500px;
}
.c-section--cnc-machining--intro .c-buttons {
  max-width: 500px;
}
.c-section--cnc-machining--testimonials {
  position: relative;
}
.c-section--cnc-machining--testimonials::after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  bottom: auto;
  left: calc(-50vw + 50%);
  right: calc(-50vw + 50%);
  width: auto;
  height: 2px;
  background: #f4f4f9;
  z-index: 1;
}
.c-section--cnc-machining--testimonials .c-testimonials {
  margin-top: 25px;
}
.c-section--cnc-machining--service {
  position: relative;
  background: #f4f4f9;
  display: grid;
  gap: 15px var(--section-padding);
}
.c-section--cnc-machining--service::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  width: calc(100vw + 2px);
  margin-left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  background: #f4f4f9;
  z-index: 1;
}
.c-section--cnc-machining--service > * {
  position: relative;
  z-index: 3;
}
@media only all and (min-width: 75rem) {
  .c-section--cnc-machining--service {
    grid-template-columns: 1fr 500px;
    grid-template-areas: "title image" "text image" "buttons image";
  }
}
@media only all and (min-width: 60rem) and (max-width: 74.99rem) {
  .c-section--cnc-machining--service {
    grid-template-columns: 3fr 2fr;
    grid-template-areas: "title image" "text image" "buttons image";
  }
}
@media only all and (min-width: 48rem) and (max-width: 59.99rem) {
  .c-section--cnc-machining--service {
    grid-template-columns: 1fr;
    grid-template-areas: "image" "title" "text" "buttons";
  }
}
@media only all and (min-width: 30.01rem) and (max-width: 47.99rem) {
  .c-section--cnc-machining--service {
    grid-template-columns: 1fr;
    grid-template-areas: "image" "title" "text" "buttons";
  }
}
@media only all and (max-width: 30rem) {
  .c-section--cnc-machining--service {
    grid-template-columns: 1fr;
    grid-template-areas: "image" "title" "text" "buttons";
  }
}
.c-section--cnc-machining--service .c-title {
  grid-area: title;
  max-width: 700px;
  text-wrap: balance;
}
.c-section--cnc-machining--service .c-text {
  grid-area: text;
  margin-top: 35px !important;
  display: grid;
  gap: 35px var(--section-padding);
}
@media only all and (min-width: 75rem) {
  .c-section--cnc-machining--service .c-text {
    grid-template-columns: 1fr 1fr;
  }
}
@media only all and (min-width: 60rem) and (max-width: 74.99rem) {
  .c-section--cnc-machining--service .c-text {
    grid-template-columns: 1fr;
  }
}
@media only all and (min-width: 48rem) and (max-width: 59.99rem) {
  .c-section--cnc-machining--service .c-text {
    grid-template-columns: 1fr 1fr;
  }
}
@media only all and (min-width: 30.01rem) and (max-width: 47.99rem) {
  .c-section--cnc-machining--service .c-text {
    grid-template-columns: 100%;
  }
}
@media only all and (max-width: 30rem) {
  .c-section--cnc-machining--service .c-text {
    grid-template-columns: 100%;
  }
}
.c-section--cnc-machining--service .c-text p {
  margin: 0;
}
.c-section--cnc-machining--service .c-text p strong {
  display: block;
  padding-bottom: 10px;
  font-size: 80%;
  text-transform: uppercase;
  letter-spacing: 1px;
  border-bottom: solid 1px rgba(0, 0, 0, 0.15);
}
.c-section--cnc-machining--service .c-buttons {
  grid-area: buttons;
  max-width: 700px;
  margin-top: 35px !important;
}
.c-section--cnc-machining--service .c-image {
  grid-area: image;
  position: relative;
}
@media only all and (min-width: 75rem) {
  .c-section--cnc-machining--service .c-image {
    margin-top: calc(-1 * var(--section-padding));
    margin-bottom: calc(-1 * var(--section-padding));
    margin-right: calc(-1 * var(--section-padding));
  }
}
@media only all and (min-width: 60rem) and (max-width: 74.99rem) {
  .c-section--cnc-machining--service .c-image {
    margin-top: calc(-1 * var(--section-padding));
    margin-bottom: calc(-1 * var(--section-padding));
    margin-right: calc(-1 * var(--section-padding));
  }
}
@media only all and (min-width: 48rem) and (max-width: 59.99rem) {
  .c-section--cnc-machining--service .c-image {
    height: 500px;
    margin-top: calc(-1 * var(--section-padding));
    margin-left: calc(-50vw + 50%);
    margin-right: calc(-50vw + 50%);
    margin-bottom: 25px;
  }
}
@media only all and (min-width: 30.01rem) and (max-width: 47.99rem) {
  .c-section--cnc-machining--service .c-image {
    height: 400px;
    margin-top: calc(-1 * var(--section-padding));
    margin-left: calc(-50vw + 50%);
    margin-right: calc(-50vw + 50%);
    margin-bottom: 25px;
  }
}
@media only all and (max-width: 30rem) {
  .c-section--cnc-machining--service .c-image {
    height: 350px;
    margin-top: calc(-1 * var(--section-padding));
    margin-left: calc(-50vw + 50%);
    margin-right: calc(-50vw + 50%);
    margin-bottom: 25px;
  }
}
.c-section--cnc-machining--service .c-image p {
  position: absolute;
  inset: 0;
}
.c-section--cnc-machining--service .c-image img {
  object-fit: cover;
  object-position: top center;
  width: 100%;
  height: 100%;
}
@media only all and (min-width: 75rem) {
  .c-section--cnc-machining--3-steps .c-buttons {
    flex-direction: column;
  }
}
@media only all and (min-width: 60rem) and (max-width: 74.99rem) {
  .c-section--cnc-machining--3-steps .c-buttons {
    flex-direction: column;
  }
}
.c-section--cnc-machining--why-us {
  position: relative;
}
.c-section--cnc-machining--why-us::after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  bottom: auto;
  left: calc(-50vw + 50%);
  right: calc(-50vw + 50%);
  width: auto;
  height: 2px;
  background: #f4f4f9;
  z-index: 1;
}
.c-section--cnc-machining--why-us .c-text {
  margin-top: 25px !important;
  display: grid;
  gap: 25px;
}
@media only all and (min-width: 75rem) {
  .c-section--cnc-machining--why-us .c-text {
    grid-template-columns: 1fr 1fr 1fr;
  }
}
@media only all and (min-width: 60rem) and (max-width: 74.99rem) {
  .c-section--cnc-machining--why-us .c-text {
    grid-template-columns: 1fr 1fr 1fr;
  }
}
@media only all and (min-width: 48rem) and (max-width: 59.99rem) {
  .c-section--cnc-machining--why-us .c-text {
    grid-template-columns: 1fr 1fr;
  }
}
@media only all and (min-width: 30.01rem) and (max-width: 47.99rem) {
  .c-section--cnc-machining--why-us .c-text {
    grid-template-columns: 1fr;
  }
}
@media only all and (max-width: 30rem) {
  .c-section--cnc-machining--why-us .c-text {
    grid-template-columns: 1fr;
  }
}
.c-section--cnc-machining--why-us .c-text p {
  padding: 25px;
  margin: 0;
  background: #f4f4f9;
}
.c-section--cnc-machining--why-us .c-text strong {
  display: block;
  font-size: 110%;
  margin-bottom: 10px;
}
.c-section--cnc-machining--why-us .c-text img {
  width: 60px;
  height: 60px;
  margin-bottom: 15px;
}
.c-section--cnc-machining--cta .c-title {
  max-width: 900px;
}
.c-section--cnc-machining--cta .c-text {
  max-width: 700px;
}
/* ********************* */
/* PAGE: DESIGN ADVISORY */
/* ********************* */
.c-section--design-advisory--intro {
  background: none;
}
.c-section--design-advisory--intro::before {
  display: none;
}
.c-section--design-advisory--intro .c-title {
  max-width: 900px;
  color: inherit;
}
.c-section--design-advisory--intro .c-buttons {
  max-width: 800px;
}
.c-section--design-advisory--solution {
  position: relative;
  background: #0055a5;
  display: grid;
  gap: var(--section-padding);
  align-items: center;
}
.c-section--design-advisory--solution::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  width: calc(100vw + 2px);
  margin-left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  background: #0055a5;
  z-index: 1;
}
.c-section--design-advisory--solution > * {
  position: relative;
  z-index: 3;
  color: #fff;
}
.c-section--design-advisory--solution a {
  color: inherit;
}
.c-section--design-advisory--solution a:hover {
  color: #fff;
}
@media only all and (min-width: 75rem) {
  .c-section--design-advisory--solution {
    grid-template-columns: 1fr 1fr;
    grid-template-areas: "title image";
  }
}
@media only all and (min-width: 60rem) and (max-width: 74.99rem) {
  .c-section--design-advisory--solution {
    grid-template-areas: "image" "title";
  }
}
@media only all and (min-width: 48rem) and (max-width: 59.99rem) {
  .c-section--design-advisory--solution {
    grid-template-areas: "image" "title";
  }
}
@media only all and (min-width: 30.01rem) and (max-width: 47.99rem) {
  .c-section--design-advisory--solution {
    grid-template-areas: "image" "title";
  }
}
@media only all and (max-width: 30rem) {
  .c-section--design-advisory--solution {
    grid-template-areas: "image" "title";
  }
}
.c-section--design-advisory--solution .c-title {
  grid-area: title;
  max-width: 750px;
  margin-left: auto;
  margin-right: auto;
  text-align: center;
}
.c-section--design-advisory--solution .c-image {
  grid-area: image;
  position: relative;
}
@media only all and (min-width: 75rem) {
  .c-section--design-advisory--solution .c-image {
    height: 100%;
  }
}
@media only all and (min-width: 60rem) and (max-width: 74.99rem) {
  .c-section--design-advisory--solution .c-image {
    height: 300px;
  }
}
@media only all and (min-width: 48rem) and (max-width: 59.99rem) {
  .c-section--design-advisory--solution .c-image {
    height: 300px;
  }
}
@media only all and (min-width: 30.01rem) and (max-width: 47.99rem) {
  .c-section--design-advisory--solution .c-image {
    height: 250px;
  }
}
@media only all and (max-width: 30rem) {
  .c-section--design-advisory--solution .c-image {
    height: 200px;
  }
}
.c-section--design-advisory--solution .c-image p {
  position: absolute;
}
@media only all and (min-width: 75rem) {
  .c-section--design-advisory--solution .c-image p {
    top: calc(-1 * var(--section-padding));
    bottom: calc(-1 * var(--section-padding));
    left: 0;
    right: calc(-1 * var(--section-padding));
  }
}
@media only all and (min-width: 60rem) and (max-width: 74.99rem) {
  .c-section--design-advisory--solution .c-image p {
    top: calc(-1 * var(--section-padding));
    bottom: 0;
    left: calc(-1 * var(--section-padding));
    right: calc(-1 * var(--section-padding));
  }
}
@media only all and (min-width: 48rem) and (max-width: 59.99rem) {
  .c-section--design-advisory--solution .c-image p {
    top: calc(-1 * var(--section-padding));
    bottom: 0;
    left: calc(-1 * var(--section-padding));
    right: calc(-1 * var(--section-padding));
  }
}
@media only all and (min-width: 30.01rem) and (max-width: 47.99rem) {
  .c-section--design-advisory--solution .c-image p {
    top: calc(-1 * var(--section-padding));
    bottom: 0;
    left: calc(-1 * var(--section-padding));
    right: calc(-1 * var(--section-padding));
  }
}
@media only all and (max-width: 30rem) {
  .c-section--design-advisory--solution .c-image p {
    top: calc(-1 * var(--section-padding));
    bottom: 0;
    left: calc(-1 * var(--section-padding));
    right: calc(-1 * var(--section-padding));
  }
}
.c-section--design-advisory--solution .c-image img {
  object-fit: cover;
  object-position: center center;
  width: 100%;
  height: 100%;
}
.c-section--design-advisory--benefits {
  position: relative;
}
.c-section--design-advisory--benefits::after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  bottom: auto;
  left: calc(-50vw + 50%);
  right: calc(-50vw + 50%);
  width: auto;
  height: 2px;
  background: #f4f4f9;
  z-index: 1;
}
.c-section--design-advisory--benefits .c-title {
  max-width: 650px;
}
.c-section--design-advisory--benefits .c-text {
  margin-top: 25px !important;
  display: grid;
  gap: 35px;
}
@media only all and (min-width: 75rem) {
  .c-section--design-advisory--benefits .c-text {
    grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr;
  }
}
@media only all and (min-width: 60rem) and (max-width: 74.99rem) {
  .c-section--design-advisory--benefits .c-text {
    grid-template-columns: 1fr 1fr 1fr;
  }
}
@media only all and (min-width: 48rem) and (max-width: 59.99rem) {
  .c-section--design-advisory--benefits .c-text {
    grid-template-columns: 1fr 1fr;
  }
}
@media only all and (min-width: 30.01rem) and (max-width: 47.99rem) {
  .c-section--design-advisory--benefits .c-text {
    grid-template-columns: 1fr;
  }
}
@media only all and (max-width: 30rem) {
  .c-section--design-advisory--benefits .c-text {
    grid-template-columns: 1fr;
  }
}
.c-section--design-advisory--benefits .c-text p {
  margin: 0;
}
.c-section--design-advisory--benefits .c-text img {
  width: 60px;
  height: 60px;
  margin-bottom: 15px;
}
.c-section--design-advisory--projects {
  position: relative;
  background: #f4f4f9;
}
.c-section--design-advisory--projects::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  width: calc(100vw + 2px);
  margin-left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  background: #f4f4f9;
  z-index: 1;
}
.c-section--design-advisory--projects > * {
  position: relative;
  z-index: 3;
}
.c-section--design-advisory--hypermill {
  position: relative;
  background: #f9f871;
  display: grid;
  column-gap: var(--section-padding);
}
.c-section--design-advisory--hypermill::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  width: calc(100vw + 2px);
  margin-left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  background: #f9f871;
  z-index: 1;
}
.c-section--design-advisory--hypermill > * {
  position: relative;
  z-index: 3;
}
@media only all and (min-width: 75rem) {
  .c-section--design-advisory--hypermill {
    grid-template-columns: 3fr 4fr;
  }
}
@media only all and (min-width: 60rem) and (max-width: 74.99rem) {
  .c-section--design-advisory--hypermill {
    grid-template-columns: 3fr 4fr;
  }
}
@media only all and (min-width: 48rem) and (max-width: 59.99rem) {
  .c-section--design-advisory--hypermill {
    grid-template-columns: 100%;
  }
}
@media only all and (min-width: 30.01rem) and (max-width: 47.99rem) {
  .c-section--design-advisory--hypermill {
    grid-template-columns: 100%;
  }
}
@media only all and (max-width: 30rem) {
  .c-section--design-advisory--hypermill {
    grid-template-columns: 100%;
  }
}
.c-section--design-advisory--testimonials .c-testimonials {
  margin-top: 25px;
}
.c-section--design-advisory--cta {
  height: auto;
}
.c-section--design-advisory--cta .c-title {
  max-width: 900px;
}
.c-section--design-advisory--cta .c-text {
  max-width: 700px;
}
/* **************************** */
/* PAGE: RESEARCH & DEVELOPMENT */
/* **************************** */
.c-section--research-development--intro .c-title {
  max-width: 1100px;
}
.c-section--research-development--intro .c-text {
  max-width: 1000px;
}
.c-section--research-development--intro .c-buttons {
  max-width: 500px;
}
.c-section--research-development--problem-solution {
  /*@include breakpoint(large-desktop-range) {
		grid-template-columns: 1fr 1fr;
	}

	@include breakpoint(desktop-range) {
		grid-template-columns: 100%;
	}

	@include breakpoint(tablet-range) {
		grid-template-columns: 100%;
	}

	@include breakpoint(large-mobile-range) {
		grid-template-columns: 100%;
	}

	@include breakpoint(small-mobile-range) {
		grid-template-columns: 100%;
	}

	.c-solution {
		&::before {
			@include breakpoint(desktop-range) {
				top: calc(-1 * (var(--section-padding) + 25px + 1px));
				bottom: auto;
				left: calc(-50vw + 50%);
				right: calc(-50vw + 50%);
				width: auto;
				height: 2px;
			}
		}

		&::after {
			@include breakpoint(desktop-range) {
				width: 70px;
				height: 70px;
				background-size: 25px;
				top: calc(-1 * (var(--section-padding) + 25px + 1px + 35px));
				bottom: auto;
				left: calc(50% - 35px);
				right: auto;
				transform: rotate(90deg);
			}
		}

		.c-title {
			max-width: 700px;
		}
	}*/
}
.c-section--research-development--computational-simulation {
  position: relative;
  background: #f4f4f9;
}
.c-section--research-development--computational-simulation::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  width: calc(100vw + 2px);
  margin-left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  background: #f4f4f9;
  z-index: 1;
}
.c-section--research-development--computational-simulation > * {
  position: relative;
  z-index: 3;
}
.c-section--research-development--4-steps {
  position: relative;
  background: #f4f4f9;
}
.c-section--research-development--4-steps::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  width: calc(100vw + 2px);
  margin-left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  background: #f4f4f9;
  z-index: 1;
}
.c-section--research-development--4-steps > * {
  position: relative;
  z-index: 3;
}
.c-section--research-development--4-steps .c-text {
  max-width: 800px;
  text-wrap: balance;
}
.c-section--research-development--cta .c-title {
  max-width: 1000px;
}
/* *********************** */
/* PAGE: QUALITY & CONTROL */
/* *********************** */
.c-section--quality-control--intro .c-title {
  max-width: 1100px;
}
.c-section--quality-control--intro .c-text {
  max-width: 700px;
}
.c-section--quality-control--3-steps {
  position: relative;
  background: #58585a;
}
.c-section--quality-control--3-steps::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  left: calc(-50vw + 50%);
  right: calc(-50vw + 50%);
  width: calc(100vw + 2px);
  /*margin-left: 50%;
		-webkit-transform: translateX(-50%);
		transform: translateX(-50%);*/
  background: #58585a;
  z-index: 1;
}
.c-section--quality-control--3-steps > * {
  position: relative;
  z-index: 3;
  color: rgba(255, 255, 255, 0.8);
}
.c-section--quality-control--3-steps .c-steps {
  color: #111111;
}
.c-section--quality-control--3-steps .c-steps .c-step {
  background: #d6d6d6 !important;
  border: none !important;
}
.c-section--quality-control--3-steps .c-steps .c-step::before, .c-section--quality-control--3-steps .c-steps .c-step::after {
  background: #d6d6d6 !important;
  border: none !important;
}
.c-section--quality-control--3-steps .c-steps .c-step strong {
  font-size: 110%;
}
.c-section--quality-control--equipment .c-images {
  margin-top: 25px;
  grid-column: 1 / -1;
}
.c-section--quality-control--equipment .c-images .complete-image-folder-display {
  display: grid;
  gap: 25px;
}
@media only all and (min-width: 75rem) {
  .c-section--quality-control--equipment .c-images .complete-image-folder-display {
    grid-template-columns: 1fr 1fr 1fr 1fr;
  }
}
@media only all and (min-width: 60rem) and (max-width: 74.99rem) {
  .c-section--quality-control--equipment .c-images .complete-image-folder-display {
    grid-template-columns: 1fr 1fr 1fr 1fr;
  }
}
@media only all and (min-width: 48rem) and (max-width: 59.99rem) {
  .c-section--quality-control--equipment .c-images .complete-image-folder-display {
    grid-template-columns: 1fr 1fr;
  }
}
@media only all and (min-width: 30.01rem) and (max-width: 47.99rem) {
  .c-section--quality-control--equipment .c-images .complete-image-folder-display {
    grid-template-columns: 1fr 1fr;
  }
}
@media only all and (max-width: 30rem) {
  .c-section--quality-control--equipment .c-images .complete-image-folder-display {
    grid-template-columns: 1fr;
  }
}
.c-section--quality-control--equipment .c-images .complete-image-folder-display > div {
  border-radius: 8px;
  overflow: hidden;
}
@media only all and (min-width: 75rem) {
  .c-section--quality-control--equipment .c-images .complete-image-folder-display > div {
    height: 450px;
  }
}
@media only all and (min-width: 60rem) and (max-width: 74.99rem) {
  .c-section--quality-control--equipment .c-images .complete-image-folder-display > div {
    height: 400px;
  }
}
@media only all and (min-width: 48rem) and (max-width: 59.99rem) {
  .c-section--quality-control--equipment .c-images .complete-image-folder-display > div {
    height: 350px;
  }
}
@media only all and (min-width: 30.01rem) and (max-width: 47.99rem) {
  .c-section--quality-control--equipment .c-images .complete-image-folder-display > div {
    height: 300px;
  }
}
@media only all and (max-width: 30rem) {
  .c-section--quality-control--equipment .c-images .complete-image-folder-display > div {
    height: 250px;
  }
}
.c-section--quality-control--equipment .c-images .complete-image-folder-display > div img {
  object-fit: cover;
  object-position: center center;
  width: 100%;
  height: 100%;
}
.c-section--quality-control--cta .c-title {
  max-width: 1100px;
}
.c-section--quality-control--cta .c-text {
  max-width: 700px;
}
/* ****************** */
/* PAGE: CNC TRAINING */
/* ****************** */
.c-section--cnc-training--intro .c-title {
  max-width: 1050px;
}
.c-section--cnc-training--designed-for {
  position: relative;
  background: #58585a;
}
.c-section--cnc-training--designed-for::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  left: calc(-50vw + 50%);
  right: calc(-50vw + 50%);
  width: calc(100vw + 2px);
  /*margin-left: 50%;
		-webkit-transform: translateX(-50%);
		transform: translateX(-50%);*/
  background: #58585a;
  z-index: 1;
}
.c-section--cnc-training--designed-for > * {
  position: relative;
  z-index: 3;
  color: rgba(255, 255, 255, 0.8);
}
.c-section--cnc-training--team {
  position: relative;
  background: #f4f4f9;
}
.c-section--cnc-training--team::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  width: calc(100vw + 2px);
  margin-left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  background: #f4f4f9;
  z-index: 1;
}
.c-section--cnc-training--team > * {
  position: relative;
  z-index: 3;
}
.c-section--cnc-training--team .c-title {
  max-width: 600px;
}
.c-section--cnc-training--real-training {
  display: grid;
  gap: 25px var(--section-padding);
}
@media only all and (min-width: 75rem) {
  .c-section--cnc-training--real-training {
    grid-template-columns: 1fr 2fr;
  }
}
@media only all and (min-width: 60rem) and (max-width: 74.99rem) {
  .c-section--cnc-training--real-training {
    grid-template-columns: 1fr 2fr;
  }
}
@media only all and (min-width: 48rem) and (max-width: 59.99rem) {
  .c-section--cnc-training--real-training {
    grid-template-columns: 100%;
  }
}
@media only all and (min-width: 30.01rem) and (max-width: 47.99rem) {
  .c-section--cnc-training--real-training {
    grid-template-columns: 100%;
  }
}
@media only all and (max-width: 30rem) {
  .c-section--cnc-training--real-training {
    grid-template-columns: 100%;
  }
}
.c-section--cnc-training--real-training .c-various {
  max-width: 800px;
}
.c-section--cnc-training--real-training .c-images .complete-image-folder-display.c-training {
  display: grid;
  gap: 15px;
}
@media only all and (min-width: 75rem) {
  .c-section--cnc-training--real-training .c-images .complete-image-folder-display.c-training {
    grid-template-columns: 1fr 1fr 1fr;
  }
}
@media only all and (min-width: 60rem) and (max-width: 74.99rem) {
  .c-section--cnc-training--real-training .c-images .complete-image-folder-display.c-training {
    grid-template-columns: 1fr 1fr 1fr;
  }
}
@media only all and (min-width: 48rem) and (max-width: 59.99rem) {
  .c-section--cnc-training--real-training .c-images .complete-image-folder-display.c-training {
    grid-template-columns: 1fr 1fr 1fr;
  }
}
@media only all and (min-width: 30.01rem) and (max-width: 47.99rem) {
  .c-section--cnc-training--real-training .c-images .complete-image-folder-display.c-training {
    grid-template-columns: 1fr 1fr;
  }
}
@media only all and (max-width: 30rem) {
  .c-section--cnc-training--real-training .c-images .complete-image-folder-display.c-training {
    grid-template-columns: 1fr;
  }
}
.c-section--cnc-training--real-training .c-images .complete-image-folder-display.c-training > div {
  border-radius: 8px;
  overflow: hidden;
}
@media only all and (min-width: 75rem) {
  .c-section--cnc-training--real-training .c-images .complete-image-folder-display.c-training > div {
    height: 12vw;
  }
}
@media only all and (min-width: 60rem) and (max-width: 74.99rem) {
  .c-section--cnc-training--real-training .c-images .complete-image-folder-display.c-training > div {
    height: 12vw;
  }
}
@media only all and (min-width: 48rem) and (max-width: 59.99rem) {
  .c-section--cnc-training--real-training .c-images .complete-image-folder-display.c-training > div {
    height: 20vw;
  }
}
@media only all and (min-width: 30.01rem) and (max-width: 47.99rem) {
  .c-section--cnc-training--real-training .c-images .complete-image-folder-display.c-training > div {
    height: 25vw;
  }
}
@media only all and (max-width: 30rem) {
  .c-section--cnc-training--real-training .c-images .complete-image-folder-display.c-training > div {
    height: 40vw;
  }
}
.c-section--cnc-training--real-training .c-images .complete-image-folder-display.c-training > div img {
  object-fit: cover;
  object-position: center center;
  width: 100%;
  height: 100%;
  transition: all 0.3s;
}
.c-section--cnc-training--real-training .c-images .complete-image-folder-display.c-training > div img:hover {
  transform: scale(1.05);
}
.c-section--cnc-training--trusted-by {
  position: relative;
  display: grid;
  gap: 25px var(--section-padding);
}
.c-section--cnc-training--trusted-by::after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  bottom: auto;
  left: calc(-50vw + 50%);
  right: calc(-50vw + 50%);
  width: auto;
  height: 2px;
  background: #f4f4f9;
  z-index: 1;
}
@media only all and (min-width: 75rem) {
  .c-section--cnc-training--trusted-by {
    grid-template-columns: 1fr 2fr;
  }
}
@media only all and (min-width: 60rem) and (max-width: 74.99rem) {
  .c-section--cnc-training--trusted-by {
    grid-template-columns: 1fr 2fr;
  }
}
@media only all and (min-width: 48rem) and (max-width: 59.99rem) {
  .c-section--cnc-training--trusted-by {
    grid-template-columns: 100%;
  }
}
@media only all and (min-width: 30.01rem) and (max-width: 47.99rem) {
  .c-section--cnc-training--trusted-by {
    grid-template-columns: 100%;
  }
}
@media only all and (max-width: 30rem) {
  .c-section--cnc-training--trusted-by {
    grid-template-columns: 100%;
  }
}
.c-section--cnc-training--trusted-by .c-various {
  max-width: 800px;
}
.c-section--cnc-training--trusted-by .c-images .complete-image-folder-display.c-training {
  display: flex;
  flex-wrap: wrap;
  gap: 15px;
}
.c-section--cnc-training--trusted-by .c-images .complete-image-folder-display.c-training > div {
  padding: 10px;
  border: solid 1px rgba(0, 0, 0, 0.1);
  border-radius: 8px;
  background: #fff;
  overflow: hidden;
  width: 100px;
  height: 100px;
}
.c-section--cnc-training--trusted-by .c-images .complete-image-folder-display.c-training > div img {
  object-fit: contain;
  object-position: center center;
  width: 100%;
  height: 100%;
}
.c-section--cnc-training--cta {
  height: auto !important;
  color: #111111;
  text-align: center;
  background: #f9f871;
}
.c-section--cnc-training--cta::before {
  background: #f9f871;
}
.c-section--cnc-training--cta > * {
  margin-left: auto;
  margin-right: auto;
  max-width: 1050px;
}
.c-section--cnc-training--cta .c-buttons {
  justify-content: center;
}
/* **************************** */
/* PAGE: ADDITIVE MANUFACTURING */
/* **************************** */
.c-section--additive-manufacturing--intro .c-title {
  max-width: 950px;
}
.c-section--additive-manufacturing--intro .c-text {
  max-width: 650px;
}
.c-section--additive-manufacturing--intro .c-buttons {
  max-width: 650px;
}
.c-section--additive-manufacturing--3-steps {
  position: relative;
  background: #f4f4f9;
}
.c-section--additive-manufacturing--3-steps::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  width: calc(100vw + 2px);
  margin-left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  background: #f4f4f9;
  z-index: 1;
}
.c-section--additive-manufacturing--3-steps > * {
  position: relative;
  z-index: 3;
}
.c-section--additive-manufacturing--benefits {
  position: relative;
}
.c-section--additive-manufacturing--benefits::after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  bottom: auto;
  left: calc(-50vw + 50%);
  right: calc(-50vw + 50%);
  width: auto;
  height: 2px;
  background: #f4f4f9;
  z-index: 1;
}
@media only all and (min-width: 75rem) {
  .c-section--additive-manufacturing--benefits {
    grid-template-columns: 450px 1fr;
  }
}
@media only all and (min-width: 60rem) and (max-width: 74.99rem) {
  .c-section--additive-manufacturing--benefits {
    grid-template-columns: 400px 1fr;
  }
}
@media only all and (min-width: 48rem) and (max-width: 59.99rem) {
  .c-section--additive-manufacturing--benefits {
    grid-template-columns: 100%;
  }
}
@media only all and (min-width: 30.01rem) and (max-width: 47.99rem) {
  .c-section--additive-manufacturing--benefits {
    grid-template-columns: 100%;
  }
}
@media only all and (max-width: 30rem) {
  .c-section--additive-manufacturing--benefits {
    grid-template-columns: 100%;
  }
}
.c-section--additive-manufacturing--benefits::after {
  background: #fff;
}
.c-section--additive-manufacturing--benefits .c-numbered-list {
  display: grid;
  grid-auto-flow: dense;
  column-gap: 25px;
  font-size: 110%;
}
@media only all and (min-width: 75rem) {
  .c-section--additive-manufacturing--benefits .c-numbered-list {
    grid-template-columns: 1fr 1fr;
  }
}
@media only all and (min-width: 60rem) and (max-width: 74.99rem) {
  .c-section--additive-manufacturing--benefits .c-numbered-list {
    grid-template-columns: 100%;
  }
}
@media only all and (min-width: 48rem) and (max-width: 59.99rem) {
  .c-section--additive-manufacturing--benefits .c-numbered-list {
    grid-template-columns: 1fr 1fr;
  }
}
@media only all and (min-width: 30.01rem) and (max-width: 47.99rem) {
  .c-section--additive-manufacturing--benefits .c-numbered-list {
    grid-template-columns: 100%;
  }
}
@media only all and (max-width: 30rem) {
  .c-section--additive-manufacturing--benefits .c-numbered-list {
    grid-template-columns: 100%;
  }
}
.c-section--additive-manufacturing--benefits .c-numbered-list p:nth-child(-n + 4) {
  grid-column-start: 1;
  grid-column-end: 2;
}
.c-section--additive-manufacturing--for-me .c-title {
  max-width: 700px;
}
.c-section--additive-manufacturing--technologies {
  position: relative;
  background: #f4f4f9;
  display: grid;
  gap: 35px var(--section-padding);
}
.c-section--additive-manufacturing--technologies::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  width: calc(100vw + 2px);
  margin-left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  background: #f4f4f9;
  z-index: 1;
}
.c-section--additive-manufacturing--technologies > * {
  position: relative;
  z-index: 3;
}
@media only all and (min-width: 75rem) {
  .c-section--additive-manufacturing--technologies {
    grid-template-columns: 1fr 2fr 2fr;
  }
}
@media only all and (min-width: 60rem) and (max-width: 74.99rem) {
  .c-section--additive-manufacturing--technologies {
    grid-template-columns: 1fr 1fr;
  }
}
@media only all and (min-width: 48rem) and (max-width: 59.99rem) {
  .c-section--additive-manufacturing--technologies {
    grid-template-columns: 1fr 1fr;
  }
}
@media only all and (min-width: 30.01rem) and (max-width: 47.99rem) {
  .c-section--additive-manufacturing--technologies {
    grid-template-columns: 100%;
  }
}
@media only all and (max-width: 30rem) {
  .c-section--additive-manufacturing--technologies {
    grid-template-columns: 100%;
  }
}
.c-section--additive-manufacturing--technologies .c-title {
  max-width: 550px;
}
@media only all and (min-width: 60rem) and (max-width: 74.99rem) {
  .c-section--additive-manufacturing--technologies .c-title {
    grid-column: 1 / -1;
  }
}
@media only all and (min-width: 48rem) and (max-width: 59.99rem) {
  .c-section--additive-manufacturing--technologies .c-title {
    grid-column: 1 / -1;
  }
}
.c-section--additive-manufacturing--technologies .c-text {
  margin: 0;
}
.c-section--additive-manufacturing--technologies .c-text img {
  border-radius: 8px;
}
.c-section--additive-manufacturing--cta .c-title {
  max-width: 750px;
}
.c-section--additive-manufacturing--cta .c-buttons {
  max-width: 750px;
}
/* ****************************** */
/* PAGE: HYPERMILL GROWTH PACKAGE */
/* ****************************** */
.c-section--hypermill-growth-package--intro .c-title {
  max-width: 950px;
}
.c-section--hypermill-growth-package--intro .c-text {
  max-width: 950px;
}
.c-section--hypermill-growth-package--intro .c-buttons {
  max-width: 650px;
}
.c-section--hypermill-growth-package--intro .c-image::before {
  background: rgba(0, 0, 0, 0.5);
}
.c-section--hypermill-growth-package--the-problem .c-items {
  margin: 35px 0;
  display: grid;
  gap: 35px 50px;
}
@media only all and (min-width: 75rem) {
  .c-section--hypermill-growth-package--the-problem .c-items {
    grid-template-columns: 1fr 1fr 1fr 1fr;
  }
}
@media only all and (min-width: 60rem) and (max-width: 74.99rem) {
  .c-section--hypermill-growth-package--the-problem .c-items {
    grid-template-columns: 1fr 1fr;
  }
}
@media only all and (min-width: 48rem) and (max-width: 59.99rem) {
  .c-section--hypermill-growth-package--the-problem .c-items {
    grid-template-columns: 1fr 1fr;
  }
}
@media only all and (min-width: 30.01rem) and (max-width: 47.99rem) {
  .c-section--hypermill-growth-package--the-problem .c-items {
    grid-template-columns: 1fr 1fr;
  }
}
@media only all and (max-width: 30rem) {
  .c-section--hypermill-growth-package--the-problem .c-items {
    grid-template-columns: 1fr;
  }
}
.c-section--hypermill-growth-package--the-problem .c-items p {
  margin: 0;
}
.c-section--hypermill-growth-package--the-problem .c-items strong {
  display: block;
  font-size: 110%;
  margin-bottom: 10px;
}
.c-section--hypermill-growth-package--the-problem .c-items img {
  display: block;
  width: 50px;
  height: 50px;
  margin-bottom: 15px;
}
.c-section--hypermill-growth-package--the-problem .c-text {
  max-width: 700px;
}
.c-section--hypermill-growth-package--the-problem .c-text :is(h1, h2, h3, h4, h5, h6) strong {
  color: #0055a5;
}
.c-section--hypermill-growth-package--solutions {
  position: relative;
  background: #f4f4f9;
}
.c-section--hypermill-growth-package--solutions::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  width: calc(100vw + 2px);
  margin-left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  background: #f4f4f9;
  z-index: 1;
}
.c-section--hypermill-growth-package--solutions > * {
  position: relative;
  z-index: 3;
}
.c-section--hypermill-growth-package--solutions .c-intro {
  max-width: 700px;
}
.c-section--hypermill-growth-package--solutions .c-items {
  margin-top: 50px !important;
  display: grid;
  gap: 25px;
}
@media only all and (min-width: 75rem) {
  .c-section--hypermill-growth-package--solutions .c-items {
    grid-template-columns: 1fr 1fr 1fr 1fr;
  }
}
@media only all and (min-width: 60rem) and (max-width: 74.99rem) {
  .c-section--hypermill-growth-package--solutions .c-items {
    grid-template-columns: 1fr 1fr;
  }
}
@media only all and (min-width: 48rem) and (max-width: 59.99rem) {
  .c-section--hypermill-growth-package--solutions .c-items {
    grid-template-columns: 1fr 1fr;
  }
}
@media only all and (min-width: 30.01rem) and (max-width: 47.99rem) {
  .c-section--hypermill-growth-package--solutions .c-items {
    grid-template-columns: 1fr;
  }
}
@media only all and (max-width: 30rem) {
  .c-section--hypermill-growth-package--solutions .c-items {
    grid-template-columns: 1fr;
  }
}
.c-section--hypermill-growth-package--solutions .c-items .c-item {
  padding: 25px;
  margin: 0;
  background: rgba(0, 0, 0, 0.05);
  display: flex;
  flex-direction: column;
}
.c-section--hypermill-growth-package--solutions .c-items .c-item > * {
  margin-bottom: 0;
}
.c-section--hypermill-growth-package--solutions .c-items .c-item > *:has(a) {
  flex-grow: 1;
  display: flex;
  align-items: end;
}
.c-section--hypermill-growth-package--solutions .c-items img {
  width: 60px;
  height: 60px;
}
.c-section--hypermill-growth-package--proof {
  position: relative;
  background: #0055a5;
  display: grid;
  align-items: start;
  gap: 25px var(--section-padding);
}
.c-section--hypermill-growth-package--proof::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  width: calc(100vw + 2px);
  margin-left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  background: #0055a5;
  z-index: 1;
}
.c-section--hypermill-growth-package--proof > * {
  position: relative;
  z-index: 3;
  color: #fff;
}
.c-section--hypermill-growth-package--proof a {
  color: inherit;
}
.c-section--hypermill-growth-package--proof a:hover {
  color: #fff;
}
@media only all and (min-width: 75rem) {
  .c-section--hypermill-growth-package--proof {
    grid-template-columns: 1fr 1fr;
  }
}
@media only all and (min-width: 60rem) and (max-width: 74.99rem) {
  .c-section--hypermill-growth-package--proof {
    grid-template-columns: 1fr 1fr;
  }
}
@media only all and (min-width: 48rem) and (max-width: 59.99rem) {
  .c-section--hypermill-growth-package--proof {
    grid-template-columns: 100%;
  }
}
@media only all and (min-width: 30.01rem) and (max-width: 47.99rem) {
  .c-section--hypermill-growth-package--proof {
    grid-template-columns: 100%;
  }
}
@media only all and (max-width: 30rem) {
  .c-section--hypermill-growth-package--proof {
    grid-template-columns: 100%;
  }
}
.c-section--hypermill-growth-package--proof .c-list {
  gap: 25px;
}
.c-section--hypermill-growth-package--proof .c-list strong {
  display: inline-block;
  font-size: 2.5rem;
  font-weight: 700;
  line-height: 1;
  color: #f9f871;
}
.c-section--hypermill-growth-package--3-steps {
  position: relative;
  background: #f4f4f9;
  display: block;
}
.c-section--hypermill-growth-package--3-steps::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  width: calc(100vw + 2px);
  margin-left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  background: #f4f4f9;
  z-index: 1;
}
.c-section--hypermill-growth-package--3-steps > * {
  position: relative;
  z-index: 3;
}
.c-section--hypermill-growth-package--3-steps .c-title {
  max-width: 700px;
}
.c-section--hypermill-growth-package--3-steps .c-steps {
  margin-top: 35px;
  grid-area: steps;
  display: grid;
  gap: 35px;
}
@media only all and (min-width: 75rem) {
  .c-section--hypermill-growth-package--3-steps .c-steps {
    grid-template-columns: 1fr 1fr 1fr;
  }
}
@media only all and (min-width: 60rem) and (max-width: 74.99rem) {
  .c-section--hypermill-growth-package--3-steps .c-steps {
    grid-template-columns: 1fr;
  }
}
@media only all and (min-width: 48rem) and (max-width: 59.99rem) {
  .c-section--hypermill-growth-package--3-steps .c-steps {
    grid-template-columns: 1fr;
  }
}
@media only all and (min-width: 30.01rem) and (max-width: 47.99rem) {
  .c-section--hypermill-growth-package--3-steps .c-steps {
    grid-template-columns: 1fr;
  }
}
@media only all and (max-width: 30rem) {
  .c-section--hypermill-growth-package--3-steps .c-steps {
    grid-template-columns: 1fr;
  }
}
.c-section--hypermill-growth-package--3-steps .c-steps .c-step {
  background: #fff;
  border: solid 2px rgba(0, 0, 0, 0.05);
  position: relative;
  display: grid;
  gap: 15px;
}
@media only all and (min-width: 75rem) {
  .c-section--hypermill-growth-package--3-steps .c-steps .c-step {
    padding: 35px;
    grid-template-columns: 100%;
    grid-template-rows: auto auto 1fr;
  }
}
@media only all and (min-width: 60rem) and (max-width: 74.99rem) {
  .c-section--hypermill-growth-package--3-steps .c-steps .c-step {
    padding: 35px;
    grid-template-columns: 100%;
    grid-template-rows: auto auto 1fr;
  }
}
@media only all and (min-width: 48rem) and (max-width: 59.99rem) {
  .c-section--hypermill-growth-package--3-steps .c-steps .c-step {
    padding: 35px;
    grid-template-columns: 100%;
    grid-template-rows: auto auto 1fr;
  }
}
@media only all and (min-width: 30.01rem) and (max-width: 47.99rem) {
  .c-section--hypermill-growth-package--3-steps .c-steps .c-step {
    padding: 35px;
    grid-template-columns: auto 1fr;
  }
}
@media only all and (max-width: 30rem) {
  .c-section--hypermill-growth-package--3-steps .c-steps .c-step {
    padding: 25px;
    grid-template-columns: auto 1fr;
  }
}
.c-section--hypermill-growth-package--3-steps .c-steps .c-step:not(:last-child)::before {
  content: "";
  display: block;
  width: 30px;
  height: 30px;
  position: absolute;
  z-index: 1;
  background: #fff;
  border: solid 2px rgba(0, 0, 0, 0.05);
  transform: rotate(45deg);
}
@media only all and (min-width: 75rem) {
  .c-section--hypermill-growth-package--3-steps .c-steps .c-step:not(:last-child)::before {
    top: calc(50% - 15px);
    bottom: auto;
    left: auto;
    right: -15px;
  }
}
@media only all and (min-width: 60rem) and (max-width: 74.99rem) {
  .c-section--hypermill-growth-package--3-steps .c-steps .c-step:not(:last-child)::before {
    top: calc(50% - 15px);
    bottom: auto;
    left: auto;
    right: -15px;
  }
}
@media only all and (min-width: 48rem) and (max-width: 59.99rem) {
  .c-section--hypermill-growth-package--3-steps .c-steps .c-step:not(:last-child)::before {
    top: calc(50% - 15px);
    bottom: auto;
    left: auto;
    right: -15px;
  }
}
@media only all and (min-width: 30.01rem) and (max-width: 47.99rem) {
  .c-section--hypermill-growth-package--3-steps .c-steps .c-step:not(:last-child)::before {
    top: auto;
    bottom: -15px;
    left: calc(50% - 15px);
    right: auto;
  }
}
@media only all and (max-width: 30rem) {
  .c-section--hypermill-growth-package--3-steps .c-steps .c-step:not(:last-child)::before {
    top: auto;
    bottom: -15px;
    left: calc(50% - 15px);
    right: auto;
  }
}
.c-section--hypermill-growth-package--3-steps .c-steps .c-step:not(:last-child)::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 2;
  background: #fff;
}
.c-section--hypermill-growth-package--3-steps .c-steps .c-step p {
  position: relative;
  z-index: 3;
  margin: 0;
}
.c-section--hypermill-growth-package--3-steps .c-steps .c-step p:first-child:not(:has(img)) {
  padding-bottom: 10px;
  font-size: 80%;
  text-transform: uppercase;
  letter-spacing: 1px;
  border-bottom: solid 1px rgba(0, 0, 0, 0.15);
  grid-column: 1 / -1;
}
.c-section--hypermill-growth-package--3-steps .c-steps .c-step p strong {
  display: block;
  margin-bottom: 10px;
  font-size: 110%;
}
.c-section--hypermill-growth-package--3-steps .c-steps .c-step img {
  width: 60px;
  height: 60px;
  margin: 5px 0;
  object-fit: contain;
  object-position: center center;
}
@media only all and (min-width: 75rem) {
  .c-section--hypermill-growth-package--faq .c-faqs {
    column-count: 2;
    column-gap: var(--section-padding);
  }
}
@media only all and (min-width: 60rem) and (max-width: 74.99rem) {
  .c-section--hypermill-growth-package--faq .c-faqs {
    column-count: 2;
    column-gap: var(--section-padding);
  }
}
.c-section--hypermill-growth-package--cta {
  background: #f9f871;
  color: #111111;
  text-align: center;
  height: auto !important;
  background: #f9f871;
  color: #111111;
  text-align: center;
}
.c-section--hypermill-growth-package--cta::before {
  background: #f9f871;
}
.c-section--hypermill-growth-package--cta > .c-title {
  margin-left: auto;
  margin-right: auto;
  max-width: 1100px;
}
.c-section--hypermill-growth-package--cta > .c-text {
  margin-left: auto;
  margin-right: auto;
  max-width: 950px;
}
.c-section--hypermill-growth-package--cta .c-buttons {
  justify-content: center;
}
.c-section--hypermill-growth-package--cta::before {
  background: #f9f871;
}
.c-section--hypermill-growth-package--cta > .c-title {
  margin-left: auto;
  margin-right: auto;
  max-width: 1100px;
}
.c-section--hypermill-growth-package--cta > .c-text {
  margin-left: auto;
  margin-right: auto;
  max-width: 950px;
}
.c-section--hypermill-growth-package--cta .c-buttons {
  justify-content: center;
}
/* ****************** */
/* PAGE: CAM SOFTWARE */
/* ****************** */
.c-section--cam-software--intro .c-title {
  max-width: 1100px;
}
.c-section--cam-software--intro .c-text {
  max-width: 800px;
}
.c-section--cam-software--problem-solution .c-title strong {
  margin-top: 1.75rem;
  margin-bottom: 1rem;
  line-height: 1.5;
  font-family: "GoogleSans";
  font-size: 1.35rem;
  font-weight: 500;
  text-transform: none;
  text-wrap: balance;
}
@media only all and (min-width: 30.01rem) and (max-width: 47.99rem) {
  .c-section--cam-software--problem-solution .c-title strong {
    font-size: 1.25rem;
  }
}
@media only all and (max-width: 30rem) {
  .c-section--cam-software--problem-solution .c-title strong {
    font-size: 1.25rem;
  }
}
.c-section--cam-software--benefits {
  position: relative;
  background: #f4f4f9;
  display: grid;
}
.c-section--cam-software--benefits::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  width: calc(100vw + 2px);
  margin-left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  background: #f4f4f9;
  z-index: 1;
}
.c-section--cam-software--benefits > * {
  position: relative;
  z-index: 3;
}
@media only all and (min-width: 75rem) {
  .c-section--cam-software--benefits {
    grid-template-columns: 1fr 1fr;
  }
}
@media only all and (min-width: 60rem) and (max-width: 74.99rem) {
  .c-section--cam-software--benefits {
    grid-template-columns: 1fr 1fr;
  }
}
@media only all and (min-width: 48rem) and (max-width: 59.99rem) {
  .c-section--cam-software--benefits {
    grid-template-columns: 100%;
  }
}
@media only all and (min-width: 30.01rem) and (max-width: 47.99rem) {
  .c-section--cam-software--benefits {
    grid-template-columns: 100%;
  }
}
@media only all and (max-width: 30rem) {
  .c-section--cam-software--benefits {
    grid-template-columns: 100%;
  }
}
@media only all and (min-width: 75rem) {
  .c-section--cam-software--benefits .c-other {
    margin-right: var(--section-padding);
  }
}
@media only all and (min-width: 60rem) and (max-width: 74.99rem) {
  .c-section--cam-software--benefits .c-other {
    margin-right: var(--section-padding);
  }
}
@media only all and (min-width: 48rem) and (max-width: 59.99rem) {
  .c-section--cam-software--benefits .c-other {
    margin-bottom: var(--section-padding);
  }
}
@media only all and (min-width: 30.01rem) and (max-width: 47.99rem) {
  .c-section--cam-software--benefits .c-other {
    margin-bottom: var(--section-padding);
  }
}
@media only all and (max-width: 30rem) {
  .c-section--cam-software--benefits .c-other {
    margin-bottom: var(--section-padding);
  }
}
.c-section--cam-software--benefits .c-video {
  position: relative;
  background: #58585a;
}
@media only all and (min-width: 75rem) {
  .c-section--cam-software--benefits .c-video {
    padding-left: var(--section-padding);
  }
}
@media only all and (min-width: 60rem) and (max-width: 74.99rem) {
  .c-section--cam-software--benefits .c-video {
    padding-left: var(--section-padding);
  }
}
@media only all and (min-width: 48rem) and (max-width: 59.99rem) {
  .c-section--cam-software--benefits .c-video {
    padding-top: var(--section-padding);
  }
}
@media only all and (min-width: 30.01rem) and (max-width: 47.99rem) {
  .c-section--cam-software--benefits .c-video {
    padding-top: var(--section-padding);
  }
}
@media only all and (max-width: 30rem) {
  .c-section--cam-software--benefits .c-video {
    padding-top: var(--section-padding);
  }
}
.c-section--cam-software--benefits .c-video::before {
  content: "";
  position: absolute;
  background: #58585a;
}
@media only all and (min-width: 75rem) {
  .c-section--cam-software--benefits .c-video::before {
    top: calc(-1 * var(--section-padding));
    bottom: calc(-1 * var(--section-padding));
    left: 0;
    right: calc(-1 * var(--section-padding));
  }
}
@media only all and (min-width: 60rem) and (max-width: 74.99rem) {
  .c-section--cam-software--benefits .c-video::before {
    top: calc(-1 * var(--section-padding));
    bottom: calc(-1 * var(--section-padding));
    left: 0;
    right: calc(-1 * var(--section-padding));
  }
}
@media only all and (min-width: 48rem) and (max-width: 59.99rem) {
  .c-section--cam-software--benefits .c-video::before {
    top: 0;
    bottom: calc(-1 * var(--section-padding));
    left: calc(-1 * var(--section-padding));
    right: calc(-1 * var(--section-padding));
  }
}
@media only all and (min-width: 30.01rem) and (max-width: 47.99rem) {
  .c-section--cam-software--benefits .c-video::before {
    top: 0;
    bottom: calc(-1 * var(--section-padding));
    left: calc(-1 * var(--section-padding));
    right: calc(-1 * var(--section-padding));
  }
}
@media only all and (max-width: 30rem) {
  .c-section--cam-software--benefits .c-video::before {
    top: 0;
    bottom: calc(-1 * var(--section-padding));
    left: calc(-1 * var(--section-padding));
    right: calc(-1 * var(--section-padding));
  }
}
.c-section--cam-software--benefits .c-video > * {
  position: relative;
  z-index: 3;
  color: #fff;
}
.c-section--cam-software--benefits .c-video iframe {
  max-width: 1000px;
  width: 100%;
  height: auto;
  aspect-ratio: 1.7777777778;
}
.c-section--cam-software--advantages {
  position: relative;
}
.c-section--cam-software--advantages::after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  bottom: auto;
  left: calc(-50vw + 50%);
  right: calc(-50vw + 50%);
  width: auto;
  height: 2px;
  background: #f4f4f9;
  z-index: 1;
}
.c-section--cam-software--advantages::after {
  background: #fff;
}
.c-section--cam-software--advantages .c-numbered-list {
  display: grid;
  grid-auto-flow: dense;
  column-gap: 25px;
}
@media only all and (min-width: 75rem) {
  .c-section--cam-software--advantages .c-numbered-list {
    grid-template-columns: 1fr 1fr;
  }
}
@media only all and (min-width: 60rem) and (max-width: 74.99rem) {
  .c-section--cam-software--advantages .c-numbered-list {
    grid-template-columns: 100%;
  }
}
@media only all and (min-width: 48rem) and (max-width: 59.99rem) {
  .c-section--cam-software--advantages .c-numbered-list {
    grid-template-columns: 1fr 1fr;
  }
}
@media only all and (min-width: 30.01rem) and (max-width: 47.99rem) {
  .c-section--cam-software--advantages .c-numbered-list {
    grid-template-columns: 100%;
  }
}
@media only all and (max-width: 30rem) {
  .c-section--cam-software--advantages .c-numbered-list {
    grid-template-columns: 100%;
  }
}
.c-section--cam-software--advantages .c-numbered-list p:nth-child(-n + 5) {
  grid-column-start: 1;
  grid-column-end: 2;
}
.c-section--cam-software--3-steps {
  position: relative;
  background: #58585a;
}
.c-section--cam-software--3-steps::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  left: calc(-50vw + 50%);
  right: calc(-50vw + 50%);
  width: calc(100vw + 2px);
  /*margin-left: 50%;
		-webkit-transform: translateX(-50%);
		transform: translateX(-50%);*/
  background: #58585a;
  z-index: 1;
}
.c-section--cam-software--3-steps > * {
  position: relative;
  z-index: 3;
  color: rgba(255, 255, 255, 0.8);
}
.c-section--cam-software--3-steps .c-steps {
  color: #111111;
}
.c-section--cam-software--3-steps .c-steps .c-step {
  background: #d6d6d6 !important;
  border: none !important;
}
.c-section--cam-software--3-steps .c-steps .c-step::before, .c-section--cam-software--3-steps .c-steps .c-step::after {
  background: #d6d6d6 !important;
  border: none !important;
}
.c-section--cam-software--3-steps .c-steps .c-step strong {
  font-size: 110%;
}
.c-section--cam-software--trusted-by {
  position: relative;
  display: grid;
  gap: 25px var(--section-padding);
}
.c-section--cam-software--trusted-by::after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  bottom: auto;
  left: calc(-50vw + 50%);
  right: calc(-50vw + 50%);
  width: auto;
  height: 2px;
  background: #f4f4f9;
  z-index: 1;
}
@media only all and (min-width: 75rem) {
  .c-section--cam-software--trusted-by {
    grid-template-columns: 450px 1fr;
  }
}
@media only all and (min-width: 60rem) and (max-width: 74.99rem) {
  .c-section--cam-software--trusted-by {
    grid-template-columns: 350px 1fr;
  }
}
@media only all and (min-width: 48rem) and (max-width: 59.99rem) {
  .c-section--cam-software--trusted-by {
    grid-template-columns: 100%;
  }
}
@media only all and (min-width: 30.01rem) and (max-width: 47.99rem) {
  .c-section--cam-software--trusted-by {
    grid-template-columns: 100%;
  }
}
@media only all and (max-width: 30rem) {
  .c-section--cam-software--trusted-by {
    grid-template-columns: 100%;
  }
}
.c-section--cam-software--trusted-by .c-various {
  max-width: 800px;
}
.c-section--cam-software--trusted-by .c-images .complete-image-folder-display.c-trusted-by {
  display: grid;
  gap: 15px;
  grid-template-columns: repeat(auto-fit, minmax(190px, 1fr));
}
.c-section--cam-software--trusted-by .c-images .complete-image-folder-display.c-trusted-by > div {
  padding: 10px;
  border-radius: 8px;
  background: rgba(0, 0, 0, 0.05);
  overflow: hidden;
}
.c-section--cam-software--trusted-by .c-images .complete-image-folder-display.c-trusted-by > div img {
  object-fit: contain;
  object-position: center center;
  width: 100%;
  height: 100%;
}
.c-section--cam-software--cta .c-title {
  max-width: 1000px;
}
/* ******************** */
/* PAGE: CIMCO SOFTWARE */
/* ******************** */
.c-section--cimco-software--intro .c-title {
  max-width: 1100px;
}
.c-section--cimco-software--intro .c-text {
  max-width: 800px;
}
.c-section--cimco-software--intro .c-image {
  background: #0055a5;
}
.c-section--cimco-software--intro .c-image img {
  mix-blend-mode: multiply;
}
.c-section--cimco-software--problem {
  position: relative;
  background: #f4f4f9;
}
.c-section--cimco-software--problem::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  width: calc(100vw + 2px);
  margin-left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  background: #f4f4f9;
  z-index: 1;
}
.c-section--cimco-software--problem > * {
  position: relative;
  z-index: 3;
}
.c-section--cimco-software--problem .c-title :is(h1, h2, h3, h4, h5, h6) + :is(h1, h2, h3, h4, h5, h6) {
  margin-top: 25px;
}
.c-section--cimco-software--problem .c-text ul {
  break-inside: avoid;
}
.c-section--cimco-software--solution .c-title {
  max-width: 950px;
}
.c-section--cimco-software--solution .c-text {
  max-width: 950px;
  text-wrap: balance;
}
.c-section--cimco-software--solution .c-items {
  margin-top: var(--section-padding);
  display: grid;
  gap: 35px;
}
@media only all and (min-width: 75rem) {
  .c-section--cimco-software--solution .c-items {
    grid-template-columns: 1fr 1fr 1fr;
  }
}
@media only all and (min-width: 60rem) and (max-width: 74.99rem) {
  .c-section--cimco-software--solution .c-items {
    grid-template-columns: 1fr 1fr;
  }
}
@media only all and (min-width: 48rem) and (max-width: 59.99rem) {
  .c-section--cimco-software--solution .c-items {
    grid-template-columns: 1fr 1fr;
  }
}
@media only all and (min-width: 30.01rem) and (max-width: 47.99rem) {
  .c-section--cimco-software--solution .c-items {
    grid-template-columns: 1fr;
  }
}
@media only all and (max-width: 30rem) {
  .c-section--cimco-software--solution .c-items {
    grid-template-columns: 1fr;
  }
}
.c-section--cimco-software--solution .c-items .c-item {
  padding: 25px;
  background: #f4f4f9;
  position: relative;
  display: flex;
  flex-flow: column;
  gap: 15px;
}
.c-section--cimco-software--solution .c-items .c-item h4 {
  margin: 0;
}
.c-section--cimco-software--solution .c-items .c-item h4:first-child {
  padding-bottom: 10px;
  font-size: 90%;
  font-weight: bold;
  text-transform: uppercase;
  letter-spacing: 1px;
  border-bottom: solid 1px rgba(0, 0, 0, 0.15);
}
.c-section--cimco-software--solution .c-items .c-item p {
  margin: 0;
}
.c-section--cimco-software--solution .c-items .c-item p:nth-child(2) {
  display: flex;
  flex-wrap: wrap;
  gap: 15px;
  align-items: center;
}
.c-section--cimco-software--solution .c-items .c-item p:nth-child(2) img:first-child {
  width: 60px;
  height: 60px;
}
.c-section--cimco-software--solution .c-items .c-item p:nth-child(2) img:last-child {
  width: auto;
  height: 100%;
  max-height: 20px;
}
.c-section--cimco-software--solution .c-items .c-item p:nth-child(3) {
  flex-grow: 1;
}
.c-section--cimco-software--benefits {
  text-wrap: balance;
}
@media only all and (min-width: 75rem) {
  .c-section--cimco-software--benefits {
    grid-template-columns: 1fr 1fr;
  }
}
@media only all and (min-width: 60rem) and (max-width: 74.99rem) {
  .c-section--cimco-software--benefits {
    grid-template-columns: 1fr 1fr;
  }
}
@media only all and (min-width: 48rem) and (max-width: 59.99rem) {
  .c-section--cimco-software--benefits {
    grid-template-columns: 100%;
  }
}
@media only all and (min-width: 30.01rem) and (max-width: 47.99rem) {
  .c-section--cimco-software--benefits {
    grid-template-columns: 100%;
  }
}
@media only all and (max-width: 30rem) {
  .c-section--cimco-software--benefits {
    grid-template-columns: 100%;
  }
}
.c-section--cimco-software--benefits .c-title {
  text-align: left;
}
.c-section--cimco-software--benefits .c-numbered-list :is(h1, h2, h3, h4, h5, h6) {
  margin: 0 0 25px 0 !important;
}
@media only all and (min-width: 75rem) {
  .c-section--cimco-software--benefits .c-numbered-list :is(h1, h2, h3, h4, h5, h6) {
    padding-left: 25px;
  }
}
@media only all and (min-width: 60rem) and (max-width: 74.99rem) {
  .c-section--cimco-software--benefits .c-numbered-list :is(h1, h2, h3, h4, h5, h6) {
    padding-left: 25px;
  }
}
.c-section--cimco-software--benefits .c-text {
  text-align: left;
}
.c-section--cimco-software--3-steps {
  position: relative;
  background: #58585a;
  display: block !important;
}
.c-section--cimco-software--3-steps::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  left: calc(-50vw + 50%);
  right: calc(-50vw + 50%);
  width: calc(100vw + 2px);
  /*margin-left: 50%;
		-webkit-transform: translateX(-50%);
		transform: translateX(-50%);*/
  background: #58585a;
  z-index: 1;
}
.c-section--cimco-software--3-steps > * {
  position: relative;
  z-index: 3;
  color: rgba(255, 255, 255, 0.8);
}
.c-section--cimco-software--3-steps .c-steps {
  margin-top: 35px !important;
  color: #111111;
}
.c-section--cimco-software--3-steps .c-steps .c-step {
  background: #d6d6d6 !important;
  border: none !important;
}
.c-section--cimco-software--3-steps .c-steps .c-step::before, .c-section--cimco-software--3-steps .c-steps .c-step::after {
  background: #d6d6d6 !important;
  border: none !important;
}
.c-section--cimco-software--3-steps .c-steps .c-step strong {
  display: block;
  margin-bottom: 10px;
}
@media only all and (min-width: 75rem) {
  .c-section--cimco-software--3-steps .c-steps .c-step strong {
    font-size: 130%;
  }
}
@media only all and (min-width: 60rem) and (max-width: 74.99rem) {
  .c-section--cimco-software--3-steps .c-steps .c-step strong {
    font-size: 130%;
  }
}
@media only all and (min-width: 48rem) and (max-width: 59.99rem) {
  .c-section--cimco-software--3-steps .c-steps .c-step strong {
    font-size: 120%;
  }
}
@media only all and (min-width: 30.01rem) and (max-width: 47.99rem) {
  .c-section--cimco-software--3-steps .c-steps .c-step strong {
    font-size: 110%;
  }
}
@media only all and (max-width: 30rem) {
  .c-section--cimco-software--3-steps .c-steps .c-step strong {
    font-size: 110%;
  }
}
.c-section--cimco-software--3-steps .c-text {
  margin-top: 35px !important;
  max-width: 550px;
}
.c-section--cimco-software--cta .c-title {
  max-width: 1100px;
}
.c-section--cimco-software--cta .c-text {
  max-width: 700px;
}
/* ************** */
/* PAGE: ABOUT US */
/* ************** */
.c-section--about-us--intro .c-text {
  max-width: 900px;
}
.c-section--about-us--facilities {
  display: grid;
  gap: 25px var(--section-padding);
}
@media only all and (min-width: 75rem) {
  .c-section--about-us--facilities {
    grid-template-columns: 1fr 2fr;
  }
}
@media only all and (min-width: 60rem) and (max-width: 74.99rem) {
  .c-section--about-us--facilities {
    grid-template-columns: 100%;
  }
}
@media only all and (min-width: 48rem) and (max-width: 59.99rem) {
  .c-section--about-us--facilities {
    grid-template-columns: 100%;
  }
}
@media only all and (min-width: 30.01rem) and (max-width: 47.99rem) {
  .c-section--about-us--facilities {
    grid-template-columns: 100%;
  }
}
@media only all and (max-width: 30rem) {
  .c-section--about-us--facilities {
    grid-template-columns: 100%;
  }
}
.c-section--about-us--facilities .c-various {
  max-width: 800px;
}
.c-section--about-us--facilities .c-images .complete-image-folder-display.c-facilities {
  display: grid;
  gap: 15px;
}
@media only all and (min-width: 75rem) {
  .c-section--about-us--facilities .c-images .complete-image-folder-display.c-facilities {
    grid-template-columns: 1fr 1fr 1fr;
  }
}
@media only all and (min-width: 60rem) and (max-width: 74.99rem) {
  .c-section--about-us--facilities .c-images .complete-image-folder-display.c-facilities {
    grid-template-columns: 1fr 1fr 1fr;
  }
}
@media only all and (min-width: 48rem) and (max-width: 59.99rem) {
  .c-section--about-us--facilities .c-images .complete-image-folder-display.c-facilities {
    grid-template-columns: 1fr 1fr 1fr;
  }
}
@media only all and (min-width: 30.01rem) and (max-width: 47.99rem) {
  .c-section--about-us--facilities .c-images .complete-image-folder-display.c-facilities {
    grid-template-columns: 1fr 1fr;
  }
}
@media only all and (max-width: 30rem) {
  .c-section--about-us--facilities .c-images .complete-image-folder-display.c-facilities {
    grid-template-columns: 1fr;
  }
}
.c-section--about-us--facilities .c-images .complete-image-folder-display.c-facilities > div {
  border-radius: 8px;
  overflow: hidden;
}
@media only all and (min-width: 75rem) {
  .c-section--about-us--facilities .c-images .complete-image-folder-display.c-facilities > div {
    aspect-ratio: 1;
  }
}
@media only all and (min-width: 60rem) and (max-width: 74.99rem) {
  .c-section--about-us--facilities .c-images .complete-image-folder-display.c-facilities > div {
    aspect-ratio: 1;
  }
}
@media only all and (min-width: 48rem) and (max-width: 59.99rem) {
  .c-section--about-us--facilities .c-images .complete-image-folder-display.c-facilities > div {
    height: 20vw;
  }
}
@media only all and (min-width: 30.01rem) and (max-width: 47.99rem) {
  .c-section--about-us--facilities .c-images .complete-image-folder-display.c-facilities > div {
    height: 25vw;
  }
}
@media only all and (max-width: 30rem) {
  .c-section--about-us--facilities .c-images .complete-image-folder-display.c-facilities > div {
    height: 40vw;
  }
}
.c-section--about-us--facilities .c-images .complete-image-folder-display.c-facilities > div img {
  object-fit: cover;
  object-position: center center;
  width: 100%;
  height: 100%;
  transition: all 0.3s;
}
.c-section--about-us--facilities .c-images .complete-image-folder-display.c-facilities > div img:hover {
  transform: scale(1.05);
}
.c-section--about-us--features {
  position: relative;
  background: #f4f4f9;
  display: grid;
  gap: var(--section-padding);
}
.c-section--about-us--features::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  width: calc(100vw + 2px);
  margin-left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  background: #f4f4f9;
  z-index: 1;
}
.c-section--about-us--features > * {
  position: relative;
  z-index: 3;
}
@media only all and (min-width: 75rem) {
  .c-section--about-us--features {
    grid-template-columns: 3fr 2fr;
  }
}
@media only all and (min-width: 60rem) and (max-width: 74.99rem) {
  .c-section--about-us--features {
    grid-template-columns: 1fr 1fr;
  }
}
@media only all and (min-width: 48rem) and (max-width: 59.99rem) {
  .c-section--about-us--features {
    grid-template-columns: 1fr 1fr;
  }
}
@media only all and (min-width: 30.01rem) and (max-width: 47.99rem) {
  .c-section--about-us--features {
    grid-template-columns: 100%;
  }
}
@media only all and (max-width: 30rem) {
  .c-section--about-us--features {
    grid-template-columns: 100%;
  }
}
.c-section--about-us--features .c-features {
  display: grid;
  gap: var(--section-padding);
}
@media only all and (min-width: 75rem) {
  .c-section--about-us--features .c-features {
    grid-template-columns: 1fr 1fr;
  }
}
@media only all and (min-width: 60rem) and (max-width: 74.99rem) {
  .c-section--about-us--features .c-features {
    grid-template-columns: 100%;
  }
}
@media only all and (min-width: 48rem) and (max-width: 59.99rem) {
  .c-section--about-us--features .c-features {
    grid-template-columns: 100%;
  }
}
@media only all and (min-width: 30.01rem) and (max-width: 47.99rem) {
  .c-section--about-us--features .c-features {
    grid-template-columns: 100%;
  }
}
@media only all and (max-width: 30rem) {
  .c-section--about-us--features .c-features {
    grid-template-columns: 100%;
  }
}
.c-section--about-us--features .c-features .c-feature:nth-child(3) {
  grid-column: 1 / -1;
}
.c-section--about-us--features .c-features .c-feature .c-title {
  max-width: 600px;
}
.c-section--about-us--features .c-features .c-feature .c-title strong {
  color: #0055a5;
}
.c-section--about-us--features .c-image {
  position: relative;
}
@media only all and (min-width: 75rem) {
  .c-section--about-us--features .c-image > * {
    position: absolute;
    top: calc(-1 * var(--section-padding));
    bottom: calc(-1 * var(--section-padding));
    left: 0;
    right: calc(-1 * var(--section-padding));
  }
}
@media only all and (min-width: 60rem) and (max-width: 74.99rem) {
  .c-section--about-us--features .c-image > * {
    position: absolute;
    top: calc(-1 * var(--section-padding));
    bottom: calc(-1 * var(--section-padding));
    left: 0;
    right: calc(-1 * var(--section-padding));
  }
}
@media only all and (min-width: 48rem) and (max-width: 59.99rem) {
  .c-section--about-us--features .c-image > * {
    position: absolute;
    top: calc(-1 * var(--section-padding));
    bottom: calc(-1 * var(--section-padding));
    left: 0;
    right: calc(-1 * var(--section-padding));
  }
}
@media only all and (min-width: 30.01rem) and (max-width: 47.99rem) {
  .c-section--about-us--features .c-image > * {
    margin-left: calc(-1 * var(--section-padding));
    margin-right: calc(-1 * var(--section-padding));
    margin-bottom: calc(-1 * var(--section-padding)) !important;
  }
}
@media only all and (max-width: 30rem) {
  .c-section--about-us--features .c-image > * {
    margin-left: calc(-1 * var(--section-padding));
    margin-right: calc(-1 * var(--section-padding));
    margin-bottom: calc(-1 * var(--section-padding)) !important;
  }
}
.c-section--about-us--features .c-image img {
  object-fit: cover;
  object-position: center center;
  width: 100%;
  height: 100%;
}
@media only all and (min-width: 75rem) {
  .c-section--about-us--features .c-image img {
    height: 100vh;
    aspect-ratio: auto;
    position: -webkit-sticky;
    position: sticky;
    top: 0;
  }
}
@media only all and (min-width: 60rem) and (max-width: 74.99rem) {
  .c-section--about-us--features .c-image img {
    height: 100vh;
    aspect-ratio: auto;
    position: -webkit-sticky;
    position: sticky;
    top: 0;
  }
}
@media only all and (min-width: 48rem) and (max-width: 59.99rem) {
  .c-section--about-us--features .c-image img {
    height: 100vh;
    aspect-ratio: auto;
    position: -webkit-sticky;
    position: sticky;
    top: 0;
  }
}
.c-section--about-us--clients {
  position: relative;
  display: grid;
  gap: 25px var(--section-padding);
}
.c-section--about-us--clients::after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  bottom: auto;
  left: calc(-50vw + 50%);
  right: calc(-50vw + 50%);
  width: auto;
  height: 2px;
  background: #f4f4f9;
  z-index: 1;
}
@media only all and (min-width: 75rem) {
  .c-section--about-us--clients {
    grid-template-columns: 1fr 1fr;
  }
}
@media only all and (min-width: 60rem) and (max-width: 74.99rem) {
  .c-section--about-us--clients {
    grid-template-columns: 1fr 1fr;
  }
}
@media only all and (min-width: 48rem) and (max-width: 59.99rem) {
  .c-section--about-us--clients {
    grid-template-columns: 100%;
  }
}
@media only all and (min-width: 30.01rem) and (max-width: 47.99rem) {
  .c-section--about-us--clients {
    grid-template-columns: 100%;
  }
}
@media only all and (max-width: 30rem) {
  .c-section--about-us--clients {
    grid-template-columns: 100%;
  }
}
.c-section--about-us--clients .c-various {
  max-width: 800px;
}
.c-section--about-us--clients .c-images .complete-image-folder-display.c-clients {
  display: flex;
  flex-wrap: wrap;
  gap: 15px;
}
.c-section--about-us--clients .c-images .complete-image-folder-display.c-clients > div {
  padding: 10px;
  border: solid 1px rgba(0, 0, 0, 0.1);
  border-radius: 8px;
  background: #fff;
  overflow: hidden;
  width: 100px;
  height: 100px;
}
.c-section--about-us--clients .c-images .complete-image-folder-display.c-clients > div img {
  object-fit: contain;
  object-position: center center;
  width: 100%;
  height: 100%;
}
.c-section--about-us--partnerships {
  position: relative;
}
.c-section--about-us--partnerships::after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  bottom: auto;
  left: calc(-50vw + 50%);
  right: calc(-50vw + 50%);
  width: auto;
  height: 2px;
  background: #f4f4f9;
  z-index: 1;
}
.c-section--about-us--partnerships .c-title {
  max-width: 700px;
}
.c-section--about-us--partnerships .c-partnerships {
  margin-top: 25px;
  display: grid;
  gap: 35px;
}
@media only all and (min-width: 75rem) {
  .c-section--about-us--partnerships .c-partnerships {
    grid-template-columns: 1fr 1fr 1fr;
  }
}
@media only all and (min-width: 60rem) and (max-width: 74.99rem) {
  .c-section--about-us--partnerships .c-partnerships {
    grid-template-columns: 1fr 1fr 1fr;
  }
}
@media only all and (min-width: 48rem) and (max-width: 59.99rem) {
  .c-section--about-us--partnerships .c-partnerships {
    grid-template-columns: 1fr 1fr;
  }
}
@media only all and (min-width: 30.01rem) and (max-width: 47.99rem) {
  .c-section--about-us--partnerships .c-partnerships {
    grid-template-columns: 1fr;
  }
}
@media only all and (max-width: 30rem) {
  .c-section--about-us--partnerships .c-partnerships {
    grid-template-columns: 1fr;
  }
}
.c-section--about-us--partnerships .c-partnerships p {
  margin: 0;
  background: #f4f4f9;
}
@media only all and (min-width: 75rem) {
  .c-section--about-us--partnerships .c-partnerships p {
    padding: 35px;
  }
}
@media only all and (min-width: 60rem) and (max-width: 74.99rem) {
  .c-section--about-us--partnerships .c-partnerships p {
    padding: 35px;
  }
}
@media only all and (min-width: 48rem) and (max-width: 59.99rem) {
  .c-section--about-us--partnerships .c-partnerships p {
    padding: 25px;
  }
}
@media only all and (min-width: 30.01rem) and (max-width: 47.99rem) {
  .c-section--about-us--partnerships .c-partnerships p {
    padding: 25px 15px;
  }
}
@media only all and (max-width: 30rem) {
  .c-section--about-us--partnerships .c-partnerships p {
    padding: 25px 15px;
  }
}
.c-section--about-us--partnerships .c-partnerships img {
  width: 250px;
  height: 100px;
  margin-bottom: 15px;
  object-fit: contain;
  object-position: left center;
}
.c-section--about-us--partnerships .c-partnerships strong {
  display: block;
  margin-bottom: 5px;
  font-size: 115%;
}
.c-section--about-us--cta {
  height: auto !important;
  background: #f9f871;
  color: #111111;
  text-align: center;
}
.c-section--about-us--cta::before {
  background: #f9f871;
}
.c-section--about-us--cta > .c-title {
  margin-left: auto;
  margin-right: auto;
  max-width: 1100px;
}
.c-section--about-us--cta > .c-text {
  margin-left: auto;
  margin-right: auto;
  max-width: 950px;
}
.c-section--about-us--cta .c-buttons {
  justify-content: center;
}
/* ************* */
/* PAGE: DEFENSE */
/* ************* */
.c-section--defense--intro .c-icons {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 15px 25px;
  justify-content: center;
}
.c-section--defense--intro .c-icons img {
  width: 70px;
  height: 70px;
  padding: 10px;
  background-color: #fff;
  border-radius: 50%;
}
.c-section--defense--intro .c-title {
  margin-top: 35px;
}
.c-section--defense--intro .c-text {
  max-width: 900px;
}
.c-section--defense--intro .c-image img {
  filter: contrast(1.1) brightness(0.9) grayscale(1);
}
.c-section--defense--problem-solution {
  display: grid;
  gap: calc(2 * var(--section-padding) + 50px);
  position: relative;
}
@media only all and (min-width: 75rem) {
  .c-section--defense--problem-solution {
    grid-template-columns: 1fr 1fr;
  }
}
@media only all and (min-width: 60rem) and (max-width: 74.99rem) {
  .c-section--defense--problem-solution {
    grid-template-columns: 100%;
  }
}
@media only all and (min-width: 48rem) and (max-width: 59.99rem) {
  .c-section--defense--problem-solution {
    grid-template-columns: 100%;
  }
}
@media only all and (min-width: 30.01rem) and (max-width: 47.99rem) {
  .c-section--defense--problem-solution {
    grid-template-columns: 100%;
  }
}
@media only all and (max-width: 30rem) {
  .c-section--defense--problem-solution {
    grid-template-columns: 100%;
  }
}
.c-section--defense--problem-solution .c-solution {
  position: relative;
}
.c-section--defense--problem-solution .c-solution::before {
  content: "";
  position: absolute;
  background: #f4f4f9;
}
@media only all and (min-width: 75rem) {
  .c-section--defense--problem-solution .c-solution::before {
    top: calc(-1 * var(--section-padding));
    bottom: calc(-1 * var(--section-padding));
    left: calc(-1 * (var(--section-padding) + 25px + 1px));
    right: auto;
    width: 2px;
    height: auto;
  }
}
@media only all and (min-width: 60rem) and (max-width: 74.99rem) {
  .c-section--defense--problem-solution .c-solution::before {
    top: calc(-1 * (var(--section-padding) + 25px + 1px));
    bottom: auto;
    left: calc(-50vw + 50%);
    right: calc(-50vw + 50%);
    width: auto;
    height: 2px;
  }
}
@media only all and (min-width: 48rem) and (max-width: 59.99rem) {
  .c-section--defense--problem-solution .c-solution::before {
    top: calc(-1 * (var(--section-padding) + 25px + 1px));
    bottom: auto;
    left: calc(-50vw + 50%);
    right: calc(-50vw + 50%);
    width: auto;
    height: 2px;
  }
}
@media only all and (min-width: 30.01rem) and (max-width: 47.99rem) {
  .c-section--defense--problem-solution .c-solution::before {
    top: calc(-1 * (var(--section-padding) + 25px + 1px));
    bottom: auto;
    left: calc(-50vw + 50%);
    right: calc(-50vw + 50%);
    width: auto;
    height: 2px;
  }
}
@media only all and (max-width: 30rem) {
  .c-section--defense--problem-solution .c-solution::before {
    top: calc(-1 * (var(--section-padding) + 25px + 1px));
    bottom: auto;
    left: calc(-50vw + 50%);
    right: calc(-50vw + 50%);
    width: auto;
    height: 2px;
  }
}
.c-section--defense--problem-solution .c-solution::after {
  content: "";
  position: absolute;
  border: solid 2px #f4f4f9;
  border-radius: 50%;
  background-color: #fff;
  background-image: url('../../../../images/icons/arrow-right-grey.svg');
  background-position: center center;
  background-repeat: no-repeat;
}
@media only all and (min-width: 75rem) {
  .c-section--defense--problem-solution .c-solution::after {
    width: 100px;
    height: 100px;
    background-size: 50px;
    top: calc(50% - 50px);
    bottom: auto;
    left: calc(-1 * (var(--section-padding) + 25px + 1px + 50px));
    right: auto;
  }
}
@media only all and (min-width: 60rem) and (max-width: 74.99rem) {
  .c-section--defense--problem-solution .c-solution::after {
    width: 70px;
    height: 70px;
    background-size: 25px;
    top: calc(-1 * (var(--section-padding) + 25px + 1px + 35px));
    bottom: auto;
    left: calc(50% - 35px);
    right: auto;
    transform: rotate(90deg);
  }
}
@media only all and (min-width: 48rem) and (max-width: 59.99rem) {
  .c-section--defense--problem-solution .c-solution::after {
    width: 70px;
    height: 70px;
    background-size: 25px;
    top: calc(-1 * (var(--section-padding) + 25px + 1px + 35px));
    bottom: auto;
    left: calc(50% - 35px);
    right: auto;
    transform: rotate(90deg);
  }
}
@media only all and (min-width: 30.01rem) and (max-width: 47.99rem) {
  .c-section--defense--problem-solution .c-solution::after {
    width: 70px;
    height: 70px;
    background-size: 25px;
    top: calc(-1 * (var(--section-padding) + 25px + 1px + 35px));
    bottom: auto;
    left: calc(50% - 35px);
    right: auto;
    transform: rotate(90deg);
  }
}
@media only all and (max-width: 30rem) {
  .c-section--defense--problem-solution .c-solution::after {
    width: 70px;
    height: 70px;
    background-size: 25px;
    top: calc(-1 * (var(--section-padding) + 25px + 1px + 35px));
    bottom: auto;
    left: calc(50% - 35px);
    right: auto;
    transform: rotate(90deg);
  }
}
.c-section--defense--problem-solution .c-solution ul {
  list-style: none;
  margin-left: 0;
  display: grid;
  gap: 20px;
}
@media only all and (min-width: 75rem) {
  .c-section--defense--problem-solution .c-solution ul {
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
  }
}
@media only all and (min-width: 60rem) and (max-width: 74.99rem) {
  .c-section--defense--problem-solution .c-solution ul {
    grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
  }
}
@media only all and (min-width: 48rem) and (max-width: 59.99rem) {
  .c-section--defense--problem-solution .c-solution ul {
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
  }
}
@media only all and (min-width: 30.01rem) and (max-width: 47.99rem) {
  .c-section--defense--problem-solution .c-solution ul {
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
  }
}
@media only all and (max-width: 30rem) {
  .c-section--defense--problem-solution .c-solution ul {
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
  }
}
.c-section--defense--problem-solution .c-solution ul li img {
  display: block;
  width: 40px;
  height: 40px;
  margin-bottom: 10px;
}
.c-section--defense--design-deployment {
  position: relative;
}
.c-section--defense--design-deployment::after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  bottom: auto;
  left: calc(-50vw + 50%);
  right: calc(-50vw + 50%);
  width: auto;
  height: 2px;
  background: #f4f4f9;
  z-index: 1;
}
.c-section--defense--design-deployment .c-intro {
  max-width: 700px;
}
.c-section--defense--design-deployment .c-items {
  margin-top: var(--section-padding) !important;
  display: grid;
  gap: 25px;
}
@media only all and (min-width: 75rem) {
  .c-section--defense--design-deployment .c-items {
    grid-template-columns: 1fr 1fr 1fr;
  }
}
@media only all and (min-width: 60rem) and (max-width: 74.99rem) {
  .c-section--defense--design-deployment .c-items {
    grid-template-columns: 1fr 1fr 1fr;
  }
}
@media only all and (min-width: 48rem) and (max-width: 59.99rem) {
  .c-section--defense--design-deployment .c-items {
    grid-template-columns: 1fr 1fr;
  }
}
@media only all and (min-width: 30.01rem) and (max-width: 47.99rem) {
  .c-section--defense--design-deployment .c-items {
    grid-template-columns: 1fr;
  }
}
@media only all and (max-width: 30rem) {
  .c-section--defense--design-deployment .c-items {
    grid-template-columns: 1fr;
  }
}
.c-section--defense--design-deployment .c-items .c-item {
  padding: 25px;
  margin: 0;
  background: #f4f4f9;
  display: flex;
  flex-direction: column;
}
.c-section--defense--design-deployment .c-items .c-item > * {
  margin-bottom: 0;
}
.c-section--defense--design-deployment .c-items .c-item > *:has(a) {
  flex-grow: 1;
  display: flex;
  align-items: end;
}
.c-section--defense--design-deployment .c-items img {
  width: 60px;
  height: 60px;
  margin-bottom: 15px;
}
.c-section--defense--trusted-by {
  position: relative;
  background: #f9f871;
  display: grid;
  align-items: flex-end;
  gap: 35px var(--section-padding);
}
.c-section--defense--trusted-by::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  width: calc(100vw + 2px);
  margin-left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  background: #f9f871;
  z-index: 1;
}
.c-section--defense--trusted-by > * {
  position: relative;
  z-index: 3;
}
@media only all and (min-width: 75rem) {
  .c-section--defense--trusted-by {
    grid-template-columns: 1fr 2fr;
  }
}
@media only all and (min-width: 60rem) and (max-width: 74.99rem) {
  .c-section--defense--trusted-by {
    grid-template-columns: 100%;
  }
}
@media only all and (min-width: 48rem) and (max-width: 59.99rem) {
  .c-section--defense--trusted-by {
    grid-template-columns: 100%;
  }
}
@media only all and (min-width: 30.01rem) and (max-width: 47.99rem) {
  .c-section--defense--trusted-by {
    grid-template-columns: 100%;
  }
}
@media only all and (max-width: 30rem) {
  .c-section--defense--trusted-by {
    grid-template-columns: 100%;
  }
}
.c-section--defense--trusted-by .c-text {
  text-wrap: balance;
}
.c-section--defense--trusted-by .c-logos {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 35px;
}
.c-section--defense--trusted-by .c-logos p {
  margin: 0;
}
.c-section--defense--trusted-by .c-logos img {
  max-width: 120px;
  max-height: 50px;
  width: 100%;
  height: 100%;
}
.c-section--defense--cta {
  position: relative;
  background: #58585a;
  height: auto !important;
  text-align: center;
  /*&::before {
		background: $color-grey-dark;
	}*/
}
.c-section--defense--cta::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  left: calc(-50vw + 50%);
  right: calc(-50vw + 50%);
  width: calc(100vw + 2px);
  /*margin-left: 50%;
		-webkit-transform: translateX(-50%);
		transform: translateX(-50%);*/
  background: #58585a;
  z-index: 1;
}
.c-section--defense--cta > * {
  position: relative;
  z-index: 3;
  color: rgba(255, 255, 255, 0.8);
}
.c-section--defense--cta > .c-title {
  margin-left: auto;
  margin-right: auto;
  max-width: 1100px;
}
.c-section--defense--cta > .c-text {
  margin-left: auto;
  margin-right: auto;
  max-width: 950px;
}
.c-section--defense--cta .c-buttons {
  justify-content: center;
}
/* *************** */
/* PAGE: OUR STORY */
/* *************** */
.c-section--our-story--timeline .c-text {
  max-width: 750px;
  margin-left: auto;
  margin-right: auto;
  text-align: center;
  text-wrap: balance;
}
.c-section--our-story--timeline .c-timeline {
  margin-top: var(--section-padding);
}
.complete-article-slider.c-our-story .cas-articles .cas-article {
  height: auto;
  display: grid;
  grid-template-rows: auto auto 1fr;
  grid-template-areas: "title" "image" "text";
}
.complete-article-slider.c-our-story .cas-articles .cas-article .cas-article-image {
  grid-area: image;
  box-sizing: border-box;
  background: #f4f4f9;
  position: relative;
  border-radius: 8px;
}
@media only all and (min-width: 75rem) {
  .complete-article-slider.c-our-story .cas-articles .cas-article .cas-article-image {
    min-height: 250px;
  }
}
@media only all and (min-width: 60rem) and (max-width: 74.99rem) {
  .complete-article-slider.c-our-story .cas-articles .cas-article .cas-article-image {
    min-height: 250px;
  }
}
@media only all and (min-width: 48rem) and (max-width: 59.99rem) {
  .complete-article-slider.c-our-story .cas-articles .cas-article .cas-article-image {
    height: 250px;
  }
}
@media only all and (min-width: 30.01rem) and (max-width: 47.99rem) {
  .complete-article-slider.c-our-story .cas-articles .cas-article .cas-article-image {
    height: 250px;
  }
}
@media only all and (max-width: 30rem) {
  .complete-article-slider.c-our-story .cas-articles .cas-article .cas-article-image {
    height: 200px;
  }
}
.complete-article-slider.c-our-story .cas-articles .cas-article .cas-article-image img {
  object-fit: cover;
  object-position: center center;
  width: 100%;
  height: 100%;
  position: absolute;
  inset: 0;
  border-radius: 8px;
}
.complete-article-slider.c-our-story .cas-articles .cas-article .cas-article-title {
  grid-area: title;
  order: 10;
  width: 100%;
  padding-bottom: 10px;
  margin-bottom: 35px;
  text-align: center;
  font-size: 40px;
  color: #0055a5;
  position: relative;
}
.complete-article-slider.c-our-story .cas-articles .cas-article .cas-article-title::before {
  content: "";
  display: block;
  width: 14px;
  height: 14px;
  background: #0055a5;
  border-radius: 50%;
  position: absolute;
  top: auto;
  bottom: -6px;
  left: calc(50% - 7px);
  right: auto;
}
.complete-article-slider.c-our-story .cas-articles .cas-article .cas-article-title::after {
  content: "";
  display: block;
  width: auto;
  height: 2px;
  position: absolute;
  top: auto;
  bottom: 0;
  left: -25px;
  right: -25px;
  background: #0055a5;
}
.complete-article-slider.c-our-story .cas-articles .cas-article .cas-article-intro-text {
  grid-area: text;
  flex-grow: 1;
  padding-top: 25px;
  box-sizing: border-box;
  font-size: 110%;
}
.complete-article-slider.c-our-story .cas-articles .cas-article:first-child .cas-article-title::after {
  left: 30px;
}
.complete-article-slider.c-our-story .cas-articles .cas-article:first-child .cas-article-image {
  position: relative;
}
.complete-article-slider.c-our-story .cas-articles .cas-article:first-child .cas-article-image::before {
  content: "";
  display: block;
  width: 2px;
  height: 20px;
  background: #0055a5;
  position: absolute;
  top: -46px;
  bottom: auto;
  left: 29px;
  right: auto;
}
.complete-article-slider.c-our-story .cas-articles .cas-article:last-child .cas-article-title::after {
  right: 30px;
}
.complete-article-slider.c-our-story .cas-articles .cas-article:last-child .cas-article-image {
  position: relative;
}
.complete-article-slider.c-our-story .cas-articles .cas-article:last-child .cas-article-image::before {
  content: "";
  display: block;
  width: 2px;
  height: 20px;
  background: #0055a5;
  position: absolute;
  top: -46px;
  bottom: auto;
  left: auto;
  right: 29px;
}
.complete-article-slider.c-our-story .swiper-button-prev, .complete-article-slider.c-our-story .swiper-button-next {
  width: 40px;
  height: 40px;
  border-radius: 50%;
}
.complete-article-slider.c-our-story .swiper-button-prev::after, .complete-article-slider.c-our-story .swiper-button-next::after {
  display: block;
  width: 40px;
  height: 40px;
  font-size: 20px;
  padding: 10px;
  box-sizing: border-box;
  background: #111111;
  border-radius: 50%;
  color: #fff;
  text-align: center;
}
.complete-article-slider.c-our-story .swiper-button-prev svg, .complete-article-slider.c-our-story .swiper-button-next svg {
  width: 20px;
  height: 20px;
}
/* ***************** */
/* PAGE: CERTIFICATE */
/* ***************** */
.com-content-article.c-page-certificate .c-header::before {
  display: none;
}
.com-content-article.c-page-certificate .c-header .page-header {
  color: #111111;
  background: none;
}
/* ****************** */
/* PAGE: R&I PROJECTS */
/* ****************** */
.com_content.view-category.layout-blog.c-ri-projects .com-content-category-blog .category-desc {
  max-width: 900px;
  margin-left: auto;
  margin-right: auto;
  text-wrap: balance;
  text-align: center;
}
.com_content.view-category.layout-blog.c-ri-projects .com-content-category-blog .com-content-category-blog__items {
  display: grid;
  gap: var(--section-padding);
  align-items: stretch;
}
@media only all and (min-width: 75rem) {
  .com_content.view-category.layout-blog.c-ri-projects .com-content-category-blog .com-content-category-blog__items {
    grid-template-columns: 1fr 1fr;
  }
}
@media only all and (min-width: 60rem) and (max-width: 74.99rem) {
  .com_content.view-category.layout-blog.c-ri-projects .com-content-category-blog .com-content-category-blog__items {
    grid-template-columns: 1fr;
  }
}
@media only all and (min-width: 48rem) and (max-width: 59.99rem) {
  .com_content.view-category.layout-blog.c-ri-projects .com-content-category-blog .com-content-category-blog__items {
    grid-template-columns: 1fr;
  }
}
@media only all and (min-width: 30.01rem) and (max-width: 47.99rem) {
  .com_content.view-category.layout-blog.c-ri-projects .com-content-category-blog .com-content-category-blog__items {
    grid-template-columns: 1fr;
  }
}
@media only all and (max-width: 30rem) {
  .com_content.view-category.layout-blog.c-ri-projects .com-content-category-blog .com-content-category-blog__items {
    grid-template-columns: 1fr;
  }
}
.com_content.view-category.layout-blog.c-ri-projects .com-content-category-blog .com-content-category-blog__items .com-content-category-blog__item {
  position: relative;
  background: #58585a;
}
.com_content.view-category.layout-blog.c-ri-projects .com-content-category-blog .com-content-category-blog__items .com-content-category-blog__item .item-image {
  margin: 0;
  overflow: hidden;
  position: relative;
  pointer-events: none;
  aspect-ratio: 1.7777777778;
}
@media only all and (min-width: 75rem) {
  .com_content.view-category.layout-blog.c-ri-projects .com-content-category-blog .com-content-category-blog__items .com-content-category-blog__item .item-image {
    min-height: 450px;
  }
}
@media only all and (min-width: 60rem) and (max-width: 74.99rem) {
  .com_content.view-category.layout-blog.c-ri-projects .com-content-category-blog .com-content-category-blog__items .com-content-category-blog__item .item-image {
    min-height: 400px;
  }
}
@media only all and (min-width: 48rem) and (max-width: 59.99rem) {
  .com_content.view-category.layout-blog.c-ri-projects .com-content-category-blog .com-content-category-blog__items .com-content-category-blog__item .item-image {
    min-height: 450px;
  }
}
@media only all and (min-width: 30.01rem) and (max-width: 47.99rem) {
  .com_content.view-category.layout-blog.c-ri-projects .com-content-category-blog .com-content-category-blog__items .com-content-category-blog__item .item-image {
    min-height: 400px;
  }
}
@media only all and (max-width: 30rem) {
  .com_content.view-category.layout-blog.c-ri-projects .com-content-category-blog .com-content-category-blog__items .com-content-category-blog__item .item-image {
    min-height: 350px;
  }
}
.com_content.view-category.layout-blog.c-ri-projects .com-content-category-blog .com-content-category-blog__items .com-content-category-blog__item .item-image:hover img {
  transform: scale(1.05);
}
.com_content.view-category.layout-blog.c-ri-projects .com-content-category-blog .com-content-category-blog__items .com-content-category-blog__item .item-image::before {
  content: "";
  position: absolute;
  z-index: 1;
  inset: 0;
  backdrop-filter: brightness(0.45) contrast(0.9);
  pointer-events: none;
}
.com_content.view-category.layout-blog.c-ri-projects .com-content-category-blog .com-content-category-blog__items .com-content-category-blog__item .item-image img {
  object-fit: cover;
  object-position: center center;
  width: 100%;
  height: 100%;
  filter: contrast(1.1) brightness(0.9);
  transition: all 0.3s;
}
.com_content.view-category.layout-blog.c-ri-projects .com-content-category-blog .com-content-category-blog__items .com-content-category-blog__item .item-content {
  position: absolute;
  z-index: 3;
  top: auto;
  bottom: 0;
  left: 0;
  right: 0;
}
@media only all and (min-width: 75rem) {
  .com_content.view-category.layout-blog.c-ri-projects .com-content-category-blog .com-content-category-blog__items .com-content-category-blog__item .item-content {
    padding: 35px;
  }
}
@media only all and (min-width: 60rem) and (max-width: 74.99rem) {
  .com_content.view-category.layout-blog.c-ri-projects .com-content-category-blog .com-content-category-blog__items .com-content-category-blog__item .item-content {
    padding: 35px;
  }
}
@media only all and (min-width: 48rem) and (max-width: 59.99rem) {
  .com_content.view-category.layout-blog.c-ri-projects .com-content-category-blog .com-content-category-blog__items .com-content-category-blog__item .item-content {
    padding: 35px;
  }
}
@media only all and (min-width: 30.01rem) and (max-width: 47.99rem) {
  .com_content.view-category.layout-blog.c-ri-projects .com-content-category-blog .com-content-category-blog__items .com-content-category-blog__item .item-content {
    padding: 25px;
  }
}
@media only all and (max-width: 30rem) {
  .com_content.view-category.layout-blog.c-ri-projects .com-content-category-blog .com-content-category-blog__items .com-content-category-blog__item .item-content {
    padding: 25px;
  }
}
.com_content.view-category.layout-blog.c-ri-projects .com-content-category-blog .com-content-category-blog__items .com-content-category-blog__item .item-content .page-header h2 {
  margin-top: 2rem;
  margin-bottom: 1rem;
  line-height: 1.25;
  font-family: "GoogleSans";
  font-size: 2.5rem;
  font-weight: normal;
  text-transform: none;
  text-wrap: balance;
}
@media only all and (min-width: 48rem) and (max-width: 59.99rem) {
  .com_content.view-category.layout-blog.c-ri-projects .com-content-category-blog .com-content-category-blog__items .com-content-category-blog__item .item-content .page-header h2 {
    font-size: 2.15rem;
  }
}
@media only all and (min-width: 30.01rem) and (max-width: 47.99rem) {
  .com_content.view-category.layout-blog.c-ri-projects .com-content-category-blog .com-content-category-blog__items .com-content-category-blog__item .item-content .page-header h2 {
    font-size: 1.85rem;
  }
}
@media only all and (max-width: 30rem) {
  .com_content.view-category.layout-blog.c-ri-projects .com-content-category-blog .com-content-category-blog__items .com-content-category-blog__item .item-content .page-header h2 {
    font-size: 1.7rem;
  }
}
.com_content.view-category.layout-blog.c-ri-projects .com-content-category-blog .com-content-category-blog__items .com-content-category-blog__item .item-content .page-header h2 a {
  color: #fff;
}
.com_content.view-category.layout-blog.c-ri-projects .com-content-category-blog .com-content-category-blog__items .com-content-category-blog__item .readmore a.btn span {
  display: none;
}
.com_content.view-article.layout-blog.c-ri-projects .com-content-article:has(.com-content-article__body > .c-section--common--intro) .c-header {
  display: none;
}
/* ********* */
/* PAGE: G4M */
/* ********* */
.c-section--g4m--intro {
  background: none;
}
.c-section--g4m--intro::before {
  display: none;
}
.c-section--g4m--intro .c-title {
  max-width: 1100px;
  color: inherit;
}
.c-section--g4m--intro .c-buttons {
  max-width: 800px;
}
.c-section--g4m--problem-solution {
  position: relative;
}
.c-section--g4m--problem-solution::after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  bottom: auto;
  left: calc(-50vw + 50%);
  right: calc(-50vw + 50%);
  width: auto;
  height: 2px;
  background: #f4f4f9;
  z-index: 1;
}
.c-section--g4m--features {
  position: relative;
  background: #f4f4f9;
  display: grid;
}
.c-section--g4m--features::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  width: calc(100vw + 2px);
  margin-left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  background: #f4f4f9;
  z-index: 1;
}
.c-section--g4m--features > * {
  position: relative;
  z-index: 3;
}
@media only all and (min-width: 75rem) {
  .c-section--g4m--features {
    grid-template-columns: 1fr 1fr;
  }
}
@media only all and (min-width: 60rem) and (max-width: 74.99rem) {
  .c-section--g4m--features {
    grid-template-columns: 1fr 1fr;
  }
}
@media only all and (min-width: 48rem) and (max-width: 59.99rem) {
  .c-section--g4m--features {
    grid-template-columns: 100%;
  }
}
@media only all and (min-width: 30.01rem) and (max-width: 47.99rem) {
  .c-section--g4m--features {
    grid-template-columns: 100%;
  }
}
@media only all and (max-width: 30rem) {
  .c-section--g4m--features {
    grid-template-columns: 100%;
  }
}
@media only all and (min-width: 75rem) {
  .c-section--g4m--features .c-features .c-feature {
    margin-left: var(--section-padding);
  }
}
@media only all and (min-width: 60rem) and (max-width: 74.99rem) {
  .c-section--g4m--features .c-features .c-feature {
    margin-left: var(--section-padding);
  }
}
@media only all and (min-width: 48rem) and (max-width: 59.99rem) {
  .c-section--g4m--features .c-features .c-feature {
    margin-top: var(--section-padding);
  }
}
@media only all and (min-width: 30.01rem) and (max-width: 47.99rem) {
  .c-section--g4m--features .c-features .c-feature {
    margin-top: var(--section-padding);
  }
}
@media only all and (max-width: 30rem) {
  .c-section--g4m--features .c-features .c-feature {
    margin-top: var(--section-padding);
  }
}
.c-section--g4m--features .c-features .c-feature .c-title {
  max-width: 550px;
}
.c-section--g4m--features .c-features .c-feature .c-title strong {
  color: #0055a5;
}
.c-section--g4m--features .c-features .c-feature + .c-feature {
  margin-top: var(--section-padding);
}
.c-section--g4m--features .c-image {
  position: relative;
}
.c-section--g4m--features .c-image > * {
  overflow: hidden;
}
@media only all and (min-width: 75rem) {
  .c-section--g4m--features .c-image > * {
    position: absolute;
    top: calc(-1 * var(--section-padding));
    bottom: calc(-1 * var(--section-padding));
    left: calc(-1 * var(--section-padding));
    right: 0;
  }
}
@media only all and (min-width: 60rem) and (max-width: 74.99rem) {
  .c-section--g4m--features .c-image > * {
    position: absolute;
    top: calc(-1 * var(--section-padding));
    bottom: calc(-1 * var(--section-padding));
    left: calc(-1 * var(--section-padding));
    right: 0;
  }
}
@media only all and (min-width: 48rem) and (max-width: 59.99rem) {
  .c-section--g4m--features .c-image > * {
    margin-top: calc(-1 * var(--section-padding)) !important;
    margin-left: calc(-1 * var(--section-padding));
    margin-right: calc(-1 * var(--section-padding));
  }
}
@media only all and (min-width: 30.01rem) and (max-width: 47.99rem) {
  .c-section--g4m--features .c-image > * {
    margin-top: calc(-1 * var(--section-padding)) !important;
    margin-left: calc(-1 * var(--section-padding));
    margin-right: calc(-1 * var(--section-padding));
  }
}
@media only all and (max-width: 30rem) {
  .c-section--g4m--features .c-image > * {
    margin-top: calc(-1 * var(--section-padding)) !important;
    margin-left: calc(-1 * var(--section-padding));
    margin-right: calc(-1 * var(--section-padding));
  }
}
.c-section--g4m--features .c-image img {
  object-fit: cover;
  object-position: center center;
  width: 100%;
  height: 100%;
}
@media only all and (min-width: 75rem) {
  .c-section--g4m--features .c-image img {
    height: 100vh;
    aspect-ratio: auto;
    position: -webkit-sticky;
    position: sticky;
    top: 0;
  }
}
@media only all and (min-width: 60rem) and (max-width: 74.99rem) {
  .c-section--g4m--features .c-image img {
    height: 100vh;
    aspect-ratio: auto;
    position: -webkit-sticky;
    position: sticky;
    top: 0;
  }
}
@media only all and (min-width: 48rem) and (max-width: 59.99rem) {
  .c-section--g4m--features .c-image img {
    height: 100vh;
    aspect-ratio: auto;
    position: -webkit-sticky;
    position: sticky;
    top: 0;
  }
}
.c-section--g4m--espa {
  display: grid;
  gap: 25px var(--section-padding);
}
@media only all and (min-width: 75rem) {
  .c-section--g4m--espa {
    grid-template-columns: 1fr 1fr;
    grid-template-areas: "title title" "text image";
  }
}
@media only all and (min-width: 60rem) and (max-width: 74.99rem) {
  .c-section--g4m--espa {
    grid-template-columns: 1fr 1fr;
    grid-template-areas: "title title" "text image";
  }
}
@media only all and (min-width: 48rem) and (max-width: 59.99rem) {
  .c-section--g4m--espa {
    grid-template-columns: 100%;
    grid-template-areas: "title" "text" "image";
  }
}
@media only all and (min-width: 30.01rem) and (max-width: 47.99rem) {
  .c-section--g4m--espa {
    grid-template-columns: 100%;
    grid-template-areas: "title" "text" "image";
  }
}
@media only all and (max-width: 30rem) {
  .c-section--g4m--espa {
    grid-template-columns: 100%;
    grid-template-areas: "title" "text" "image";
  }
}
.c-section--g4m--espa .c-title {
  grid-area: title;
  max-width: 900px;
}
.c-section--g4m--espa .c-text {
  grid-area: text;
  max-width: 1000px;
  margin: 0 !important;
}
.c-section--g4m--espa .c-image {
  grid-area: image;
  text-align: center;
}
.c-section--g4m--espa .c-image img {
  max-height: 175px;
  width: auto;
}
.c-section--g4m--participants {
  position: relative;
  display: grid;
  gap: 25px;
}
.c-section--g4m--participants::after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  bottom: auto;
  left: calc(-50vw + 50%);
  right: calc(-50vw + 50%);
  width: auto;
  height: 2px;
  background: #f4f4f9;
  z-index: 1;
}
@media only all and (min-width: 75rem) {
  .c-section--g4m--participants {
    grid-template-columns: 1fr 1fr 1fr;
    grid-template-areas: "title title" "text image";
  }
}
@media only all and (min-width: 60rem) and (max-width: 74.99rem) {
  .c-section--g4m--participants {
    grid-template-columns: 1fr 1fr 1fr;
    grid-template-areas: "title title" "text image";
  }
}
@media only all and (min-width: 48rem) and (max-width: 59.99rem) {
  .c-section--g4m--participants {
    grid-template-columns: 100%;
    grid-template-areas: "title" "text" "image";
  }
}
@media only all and (min-width: 30.01rem) and (max-width: 47.99rem) {
  .c-section--g4m--participants {
    grid-template-columns: 100%;
    grid-template-areas: "title" "text" "image";
  }
}
@media only all and (max-width: 30rem) {
  .c-section--g4m--participants {
    grid-template-columns: 100%;
    grid-template-areas: "title" "text" "image";
  }
}
.c-section--g4m--participants .c-title {
  max-width: 900px;
  grid-column: 1 / -1;
}
.c-section--g4m--participants .c-participant {
  padding: 35px;
  background: #f4f4f9;
}
.c-section--g4m--participants .c-participant p:first-child {
  padding-bottom: 10px;
  font-size: 80%;
  text-transform: uppercase;
  letter-spacing: 1px;
  border-bottom: solid 1px rgba(0, 0, 0, 0.15);
}
.c-section--g4m--cta {
  height: auto !important;
}
.c-section--g4m--cta::before {
  background: #58585a;
}
.c-section--g4m--cta > * {
  margin-left: auto;
  margin-right: auto;
  text-align: center;
}
.c-section--g4m--cta .c-title {
  max-width: 900px;
}
/* *************** */
/* PAGE: ARXIMIDIS */
/* *************** */
.c-section--arximidis--intro {
  background: none;
}
.c-section--arximidis--intro::before {
  display: none;
}
.c-section--arximidis--intro .c-title {
  color: inherit;
}
.c-section--arximidis--intro .c-buttons {
  max-width: 800px;
}
.c-section--arximidis--specifications {
  position: relative;
  background: #f4f4f9;
  display: grid;
  gap: 0 var(--section-padding);
}
.c-section--arximidis--specifications::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  width: calc(100vw + 2px);
  margin-left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  background: #f4f4f9;
  z-index: 1;
}
.c-section--arximidis--specifications > * {
  position: relative;
  z-index: 3;
}
@media only all and (min-width: 75rem) {
  .c-section--arximidis--specifications {
    grid-template-columns: 1fr 1fr;
    grid-template-areas: "title title" "text list";
  }
}
@media only all and (min-width: 60rem) and (max-width: 74.99rem) {
  .c-section--arximidis--specifications {
    grid-template-columns: 1fr 1fr;
    grid-template-areas: "title title" "text list";
  }
}
@media only all and (min-width: 48rem) and (max-width: 59.99rem) {
  .c-section--arximidis--specifications {
    grid-template-columns: 1fr;
    grid-template-areas: "title" "text" "list";
  }
}
@media only all and (min-width: 30.01rem) and (max-width: 47.99rem) {
  .c-section--arximidis--specifications {
    grid-template-columns: 1fr;
    grid-template-areas: "title" "text" "list";
  }
}
@media only all and (max-width: 30rem) {
  .c-section--arximidis--specifications {
    grid-template-columns: 1fr;
    grid-template-areas: "title" "text" "list";
  }
}
.c-section--arximidis--specifications .c-title {
  grid-area: title;
  max-width: 700px;
}
.c-section--arximidis--specifications .c-text {
  grid-area: text;
}
.c-section--arximidis--specifications .c-specifications {
  grid-area: list;
  margin-top: 15px;
  display: flex;
  flex-flow: column;
  gap: 15px;
}
.c-section--arximidis--specifications .c-specifications > .c-specification {
  margin: 0;
  padding-top: 10px;
  padding-left: 60px;
  position: relative;
}
.c-section--arximidis--specifications .c-specifications > .c-specification::before {
  content: "";
  display: inline-block;
  width: 34px;
  height: 34px;
  padding: 5px;
  box-sizing: content-box;
  background-image: url('../../../../images/icons/check.svg');
  background-color: #f4f4f9;
  border: solid 1px rgba(0, 0, 0, 0.05);
  background-size: 20px;
  background-position: center center;
  background-repeat: no-repeat;
  border-radius: 50%;
  flex-shrink: 0;
  position: absolute;
  top: 0;
  bottom: auto;
  left: 0;
  right: auto;
}
.c-section--arximidis--specifications .c-specifications > .c-specification p:first-child {
  color: #0055a5;
  font-size: 120%;
  font-weight: 500;
  /*&::before {
						content: "";
						display: inline-block;
						width: 16px;
						height: 16px;
						margin-right: 10px;
						-webkit-mask-image: url(../../../../images/icons/arrow-right.svg);
						mask-image: url(../../../../images/icons/arrow-right.svg);
						background-color: currentColor;
						background-position: center center;
						background-repeat: no-repeat;
						background-size: contain;
						vertical-align: middle;
						transform: rotate(90deg);
					}*/
}
/*.com_content.view-article.layout-blog.c-ri-projects {
	.c-section--arximidis--specifications {
		.c-specifications {
			> .c-specification {
				&.active {
					p {
						&:first-child {
							&::before {
								transform: rotate(-90deg);
							}
						}

						&:not(:first-child) {
							display: block;
						}
					}
				}

				p {
					&:first-child {
						cursor: pointer;
					}

					&:not(:first-child) {
						display: none;
					}
				}
			}
		}
	}
}*/
.c-section--arximidis--problems {
  display: grid;
  gap: var(--section-padding);
}
@media only all and (min-width: 75rem) {
  .c-section--arximidis--problems {
    grid-template-columns: 1fr 1fr;
  }
}
@media only all and (min-width: 60rem) and (max-width: 74.99rem) {
  .c-section--arximidis--problems {
    grid-template-columns: 1fr 1fr;
  }
}
@media only all and (min-width: 48rem) and (max-width: 59.99rem) {
  .c-section--arximidis--problems {
    grid-template-columns: 100%;
  }
}
@media only all and (min-width: 30.01rem) and (max-width: 47.99rem) {
  .c-section--arximidis--problems {
    grid-template-columns: 100%;
  }
}
@media only all and (max-width: 30rem) {
  .c-section--arximidis--problems {
    grid-template-columns: 100%;
  }
}
.c-section--arximidis--problems .c-title {
  max-width: 700px;
}
.c-section--arximidis--solutions {
  position: relative;
  background: #58585a;
  display: grid;
  gap: var(--section-padding);
}
.c-section--arximidis--solutions::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  left: calc(-50vw + 50%);
  right: calc(-50vw + 50%);
  width: calc(100vw + 2px);
  /*margin-left: 50%;
		-webkit-transform: translateX(-50%);
		transform: translateX(-50%);*/
  background: #58585a;
  z-index: 1;
}
.c-section--arximidis--solutions > * {
  position: relative;
  z-index: 3;
  color: rgba(255, 255, 255, 0.8);
}
@media only all and (min-width: 75rem) {
  .c-section--arximidis--solutions {
    grid-template-columns: 1fr 1fr;
  }
}
@media only all and (min-width: 60rem) and (max-width: 74.99rem) {
  .c-section--arximidis--solutions {
    grid-template-columns: 1fr 1fr;
  }
}
@media only all and (min-width: 48rem) and (max-width: 59.99rem) {
  .c-section--arximidis--solutions {
    grid-template-columns: 100%;
  }
}
@media only all and (min-width: 30.01rem) and (max-width: 47.99rem) {
  .c-section--arximidis--solutions {
    grid-template-columns: 100%;
  }
}
@media only all and (max-width: 30rem) {
  .c-section--arximidis--solutions {
    grid-template-columns: 100%;
  }
}
.c-section--arximidis--solutions .c-title {
  max-width: 700px;
}
.c-section--arximidis--espa {
  display: grid;
  gap: 25px var(--section-padding);
}
@media only all and (min-width: 75rem) {
  .c-section--arximidis--espa {
    grid-template-columns: 1fr auto auto;
    grid-template-areas: "title title title" "text image1 image2";
  }
}
@media only all and (min-width: 60rem) and (max-width: 74.99rem) {
  .c-section--arximidis--espa {
    grid-template-columns: 1fr auto;
    grid-template-areas: "title title" "text image1" "image2 image2";
  }
}
@media only all and (min-width: 48rem) and (max-width: 59.99rem) {
  .c-section--arximidis--espa {
    grid-template-columns: 1fr auto;
    grid-template-areas: "title title" "text image1" "image2 image2";
  }
}
@media only all and (min-width: 30.01rem) and (max-width: 47.99rem) {
  .c-section--arximidis--espa {
    grid-template-columns: 100%;
    grid-template-areas: "title" "text" "image1" "image2";
  }
}
@media only all and (max-width: 30rem) {
  .c-section--arximidis--espa {
    grid-template-columns: 100%;
    grid-template-areas: "title" "text" "image1" "image2";
  }
}
.c-section--arximidis--espa .c-title {
  grid-area: title;
  max-width: 900px;
}
.c-section--arximidis--espa .c-text {
  grid-area: text;
  max-width: 1000px;
  margin: 0 !important;
}
.c-section--arximidis--espa .c-image-1 {
  grid-area: image1;
  text-align: center;
}
.c-section--arximidis--espa .c-image-1 img {
  max-height: 200px;
  width: auto;
}
.c-section--arximidis--espa .c-image-2 {
  grid-area: image2;
  text-align: center;
}
.c-section--arximidis--espa .c-image-2 img {
  max-height: 175px;
  width: auto;
}
.c-section--arximidis--cta {
  height: auto !important;
}
.c-section--arximidis--cta > * {
  margin-left: auto;
  margin-right: auto;
  text-align: center;
}
.c-section--arximidis--cta::before {
  background: #58585a;
}
.c-section--arximidis--cta .c-title {
  max-width: 900px;
}
/* *********** */
/* PAGE: i-CNC */
/* *********** */
.c-section--icnc--intro {
  background: none;
}
.c-section--icnc--intro::before {
  display: none;
}
.c-section--icnc--intro .c-title {
  color: inherit;
}
.c-section--icnc--intro .c-buttons {
  max-width: 800px;
}
.c-section--icnc--problem-solution {
  position: relative;
}
.c-section--icnc--problem-solution::after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  bottom: auto;
  left: calc(-50vw + 50%);
  right: calc(-50vw + 50%);
  width: auto;
  height: 2px;
  background: #f4f4f9;
  z-index: 1;
}
.c-section--icnc--specifications {
  position: relative;
  background: #f4f4f9;
  display: grid;
  gap: 0 var(--section-padding);
}
.c-section--icnc--specifications::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  width: calc(100vw + 2px);
  margin-left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  background: #f4f4f9;
  z-index: 1;
}
.c-section--icnc--specifications > * {
  position: relative;
  z-index: 3;
}
@media only all and (min-width: 75rem) {
  .c-section--icnc--specifications {
    grid-template-columns: 1fr 1fr;
    grid-template-areas: "title title" "text list";
  }
}
@media only all and (min-width: 60rem) and (max-width: 74.99rem) {
  .c-section--icnc--specifications {
    grid-template-columns: 1fr 1fr;
    grid-template-areas: "title title" "text list";
  }
}
@media only all and (min-width: 48rem) and (max-width: 59.99rem) {
  .c-section--icnc--specifications {
    grid-template-columns: 1fr;
    grid-template-areas: "title" "text" "list";
  }
}
@media only all and (min-width: 30.01rem) and (max-width: 47.99rem) {
  .c-section--icnc--specifications {
    grid-template-columns: 1fr;
    grid-template-areas: "title" "text" "list";
  }
}
@media only all and (max-width: 30rem) {
  .c-section--icnc--specifications {
    grid-template-columns: 1fr;
    grid-template-areas: "title" "text" "list";
  }
}
.c-section--icnc--specifications .c-title {
  grid-area: title;
  max-width: 700px;
}
.c-section--icnc--specifications .c-text {
  grid-area: text;
}
.c-section--icnc--specifications .c-specifications {
  grid-area: list;
  margin-top: 15px;
  display: flex;
  flex-flow: column;
  gap: 15px;
}
.c-section--icnc--specifications .c-specifications > .c-specification {
  margin: 0;
  padding-top: 10px;
  padding-left: 60px;
  position: relative;
}
.c-section--icnc--specifications .c-specifications > .c-specification::before {
  content: "";
  display: inline-block;
  width: 34px;
  height: 34px;
  padding: 5px;
  box-sizing: content-box;
  background-image: url('../../../../images/icons/check.svg');
  background-color: #f4f4f9;
  border: solid 1px rgba(0, 0, 0, 0.05);
  background-size: 20px;
  background-position: center center;
  background-repeat: no-repeat;
  border-radius: 50%;
  flex-shrink: 0;
  position: absolute;
  top: 0;
  bottom: auto;
  left: 0;
  right: auto;
}
.c-section--icnc--specifications .c-specifications > .c-specification p:first-child {
  color: #0055a5;
  font-size: 120%;
  font-weight: 500;
  /*&::before {
						content: "";
						display: inline-block;
						width: 16px;
						height: 16px;
						margin-right: 10px;
						-webkit-mask-image: url(../../../../images/icons/arrow-right.svg);
						mask-image: url(../../../../images/icons/arrow-right.svg);
						background-color: currentColor;
						background-position: center center;
						background-repeat: no-repeat;
						background-size: contain;
						vertical-align: middle;
						transform: rotate(90deg);
					}*/
}
.c-section--icnc--project {
  display: grid;
  gap: 25px var(--section-padding);
}
@media only all and (min-width: 75rem) {
  .c-section--icnc--project {
    grid-template-columns: 1fr 1fr;
    grid-template-areas: "title title" "text image";
  }
}
@media only all and (min-width: 60rem) and (max-width: 74.99rem) {
  .c-section--icnc--project {
    grid-template-columns: 1fr 1fr;
    grid-template-areas: "title title" "text image";
  }
}
@media only all and (min-width: 48rem) and (max-width: 59.99rem) {
  .c-section--icnc--project {
    grid-template-columns: 100%;
    grid-template-areas: "title" "text" "image";
  }
}
@media only all and (min-width: 30.01rem) and (max-width: 47.99rem) {
  .c-section--icnc--project {
    grid-template-columns: 100%;
    grid-template-areas: "title" "text" "image";
  }
}
@media only all and (max-width: 30rem) {
  .c-section--icnc--project {
    grid-template-columns: 100%;
    grid-template-areas: "title" "text" "image";
  }
}
.c-section--icnc--project .c-title {
  grid-area: title;
  max-width: 900px;
}
.c-section--icnc--project .c-text {
  grid-area: text;
  max-width: 1000px;
  margin: 0 !important;
}
.c-section--icnc--project .c-image {
  grid-area: image;
  text-align: center;
}
.c-section--icnc--project .c-image p {
  display: flex;
  gap: 25px;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
}
.c-section--icnc--project .c-image img {
  max-height: 50px;
  width: auto;
}
/* *************** */
/* PAGE: 5G-DiGITs */
/* *************** */
.c-section--5g-digits--intro {
  background: none;
}
.c-section--5g-digits--intro::before {
  display: none;
}
.c-section--5g-digits--intro .c-title {
  max-width: 1100px;
  color: inherit;
}
.c-section--5g-digits--intro .c-text {
  max-width: 1100px;
  margin-left: auto;
  margin-right: auto;
  text-align: center;
  text-wrap: balance;
  color: inherit;
}
.c-section--5g-digits--intro .c-buttons {
  max-width: 800px;
}
.c-section--5g-digits--objectives {
  position: relative;
}
.c-section--5g-digits--objectives::after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  bottom: auto;
  left: calc(-50vw + 50%);
  right: calc(-50vw + 50%);
  width: auto;
  height: 2px;
  background: #f4f4f9;
  z-index: 1;
}
.c-section--5g-digits--objectives .c-list {
  display: grid;
  gap: 25px var(--section-padding);
}
@media only all and (min-width: 75rem) {
  .c-section--5g-digits--objectives .c-list {
    grid-template-columns: 1fr 1fr;
  }
}
@media only all and (min-width: 60rem) and (max-width: 74.99rem) {
  .c-section--5g-digits--objectives .c-list {
    grid-template-columns: 1fr 1fr;
  }
}
@media only all and (min-width: 48rem) and (max-width: 59.99rem) {
  .c-section--5g-digits--objectives .c-list {
    grid-template-columns: 100%;
  }
}
@media only all and (min-width: 30.01rem) and (max-width: 47.99rem) {
  .c-section--5g-digits--objectives .c-list {
    grid-template-columns: 100%;
  }
}
@media only all and (max-width: 30rem) {
  .c-section--5g-digits--objectives .c-list {
    grid-template-columns: 100%;
  }
}
.c-section--5g-digits--courses .c-title {
  text-align: left;
}
.c-section--5g-digits--courses .c-numbered-list {
  display: grid;
  grid-auto-flow: dense;
  column-gap: 25px;
}
@media only all and (min-width: 75rem) {
  .c-section--5g-digits--courses .c-numbered-list {
    grid-template-columns: 1fr 1fr;
  }
}
@media only all and (min-width: 60rem) and (max-width: 74.99rem) {
  .c-section--5g-digits--courses .c-numbered-list {
    grid-template-columns: 100%;
  }
}
@media only all and (min-width: 48rem) and (max-width: 59.99rem) {
  .c-section--5g-digits--courses .c-numbered-list {
    grid-template-columns: 1fr 1fr;
  }
}
@media only all and (min-width: 30.01rem) and (max-width: 47.99rem) {
  .c-section--5g-digits--courses .c-numbered-list {
    grid-template-columns: 100%;
  }
}
@media only all and (max-width: 30rem) {
  .c-section--5g-digits--courses .c-numbered-list {
    grid-template-columns: 100%;
  }
}
.c-section--5g-digits--courses .c-text {
  padding-bottom: var(--section-padding);
}
.c-section--5g-digits--methodology-role {
  position: relative;
  display: grid;
  gap: calc(2 * var(--section-padding) + 50px);
  position: relative;
}
.c-section--5g-digits--methodology-role::after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  bottom: auto;
  left: calc(-50vw + 50%);
  right: calc(-50vw + 50%);
  width: auto;
  height: 2px;
  background: #f4f4f9;
  z-index: 1;
}
@media only all and (min-width: 75rem) {
  .c-section--5g-digits--methodology-role {
    grid-template-columns: 1fr 1fr;
  }
}
@media only all and (min-width: 60rem) and (max-width: 74.99rem) {
  .c-section--5g-digits--methodology-role {
    grid-template-columns: 1fr 1fr;
  }
}
@media only all and (min-width: 48rem) and (max-width: 59.99rem) {
  .c-section--5g-digits--methodology-role {
    grid-template-columns: 100%;
  }
}
@media only all and (min-width: 30.01rem) and (max-width: 47.99rem) {
  .c-section--5g-digits--methodology-role {
    grid-template-columns: 100%;
  }
}
@media only all and (max-width: 30rem) {
  .c-section--5g-digits--methodology-role {
    grid-template-columns: 100%;
  }
}
.c-section--5g-digits--methodology-role .c-title {
  max-width: 700px;
}
.c-section--5g-digits--methodology-role .c-role {
  position: relative;
}
.c-section--5g-digits--methodology-role .c-role::before {
  content: "";
  position: absolute;
  background: #f4f4f9;
}
@media only all and (min-width: 75rem) {
  .c-section--5g-digits--methodology-role .c-role::before {
    top: calc(-1 * var(--section-padding));
    bottom: calc(-1 * var(--section-padding));
    left: calc(-1 * (var(--section-padding) + 25px + 1px));
    right: auto;
    width: 2px;
    height: auto;
  }
}
@media only all and (min-width: 60rem) and (max-width: 74.99rem) {
  .c-section--5g-digits--methodology-role .c-role::before {
    top: calc(-1 * var(--section-padding));
    bottom: calc(-1 * var(--section-padding));
    left: calc(-1 * (var(--section-padding) + 25px + 1px));
    right: auto;
    width: 2px;
    height: auto;
  }
}
@media only all and (min-width: 48rem) and (max-width: 59.99rem) {
  .c-section--5g-digits--methodology-role .c-role::before {
    top: calc(-1 * (var(--section-padding) + 25px + 1px));
    bottom: auto;
    left: calc(-50vw + 50%);
    right: calc(-50vw + 50%);
    width: auto;
    height: 2px;
  }
}
@media only all and (min-width: 30.01rem) and (max-width: 47.99rem) {
  .c-section--5g-digits--methodology-role .c-role::before {
    top: calc(-1 * (var(--section-padding) + 25px + 1px));
    bottom: auto;
    left: calc(-50vw + 50%);
    right: calc(-50vw + 50%);
    width: auto;
    height: 2px;
  }
}
@media only all and (max-width: 30rem) {
  .c-section--5g-digits--methodology-role .c-role::before {
    top: calc(-1 * (var(--section-padding) + 25px + 1px));
    bottom: auto;
    left: calc(-50vw + 50%);
    right: calc(-50vw + 50%);
    width: auto;
    height: 2px;
  }
}
.c-section--5g-digits--impact-duration {
  position: relative;
  display: grid;
  gap: calc(2 * var(--section-padding) + 50px);
  position: relative;
}
.c-section--5g-digits--impact-duration::after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  bottom: auto;
  left: calc(-50vw + 50%);
  right: calc(-50vw + 50%);
  width: auto;
  height: 2px;
  background: #f4f4f9;
  z-index: 1;
}
@media only all and (min-width: 75rem) {
  .c-section--5g-digits--impact-duration {
    grid-template-columns: 1fr 1fr;
  }
}
@media only all and (min-width: 60rem) and (max-width: 74.99rem) {
  .c-section--5g-digits--impact-duration {
    grid-template-columns: 1fr 1fr;
  }
}
@media only all and (min-width: 48rem) and (max-width: 59.99rem) {
  .c-section--5g-digits--impact-duration {
    grid-template-columns: 100%;
  }
}
@media only all and (min-width: 30.01rem) and (max-width: 47.99rem) {
  .c-section--5g-digits--impact-duration {
    grid-template-columns: 100%;
  }
}
@media only all and (max-width: 30rem) {
  .c-section--5g-digits--impact-duration {
    grid-template-columns: 100%;
  }
}
.c-section--5g-digits--impact-duration .c-title {
  max-width: 700px;
}
.c-section--5g-digits--impact-duration .c-duration {
  position: relative;
}
.c-section--5g-digits--impact-duration .c-duration::before {
  content: "";
  position: absolute;
  background: #f4f4f9;
}
@media only all and (min-width: 75rem) {
  .c-section--5g-digits--impact-duration .c-duration::before {
    top: calc(-1 * var(--section-padding));
    bottom: calc(-1 * var(--section-padding));
    left: calc(-1 * (var(--section-padding) + 25px + 1px));
    right: auto;
    width: 2px;
    height: auto;
  }
}
@media only all and (min-width: 60rem) and (max-width: 74.99rem) {
  .c-section--5g-digits--impact-duration .c-duration::before {
    top: calc(-1 * var(--section-padding));
    bottom: calc(-1 * var(--section-padding));
    left: calc(-1 * (var(--section-padding) + 25px + 1px));
    right: auto;
    width: 2px;
    height: auto;
  }
}
@media only all and (min-width: 48rem) and (max-width: 59.99rem) {
  .c-section--5g-digits--impact-duration .c-duration::before {
    top: calc(-1 * (var(--section-padding) + 25px + 1px));
    bottom: auto;
    left: calc(-50vw + 50%);
    right: calc(-50vw + 50%);
    width: auto;
    height: 2px;
  }
}
@media only all and (min-width: 30.01rem) and (max-width: 47.99rem) {
  .c-section--5g-digits--impact-duration .c-duration::before {
    top: calc(-1 * (var(--section-padding) + 25px + 1px));
    bottom: auto;
    left: calc(-50vw + 50%);
    right: calc(-50vw + 50%);
    width: auto;
    height: 2px;
  }
}
@media only all and (max-width: 30rem) {
  .c-section--5g-digits--impact-duration .c-duration::before {
    top: calc(-1 * (var(--section-padding) + 25px + 1px));
    bottom: auto;
    left: calc(-50vw + 50%);
    right: calc(-50vw + 50%);
    width: auto;
    height: 2px;
  }
}
.c-section--5g-digits--partners {
  position: relative;
  background: #f4f4f9;
}
.c-section--5g-digits--partners::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  width: calc(100vw + 2px);
  margin-left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  background: #f4f4f9;
  z-index: 1;
}
.c-section--5g-digits--partners > * {
  position: relative;
  z-index: 3;
}
.c-section--5g-digits--partners > .c-logos {
  margin-top: 35px;
}
.c-section--5g-digits--partners > .c-logos .complete-image-folder-display.c-logos {
  display: grid;
  gap: 25px var(--section-padding);
  align-items: center;
  justify-content: center;
  justify-items: center;
}
@media only all and (min-width: 75rem) {
  .c-section--5g-digits--partners > .c-logos .complete-image-folder-display.c-logos {
    grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr;
  }
}
@media only all and (min-width: 60rem) and (max-width: 74.99rem) {
  .c-section--5g-digits--partners > .c-logos .complete-image-folder-display.c-logos {
    grid-template-columns: 1fr 1fr 1fr 1fr;
  }
}
@media only all and (min-width: 48rem) and (max-width: 59.99rem) {
  .c-section--5g-digits--partners > .c-logos .complete-image-folder-display.c-logos {
    grid-template-columns: 1fr 1fr 1fr;
  }
}
@media only all and (min-width: 30.01rem) and (max-width: 47.99rem) {
  .c-section--5g-digits--partners > .c-logos .complete-image-folder-display.c-logos {
    grid-template-columns: 1fr 1fr;
  }
}
@media only all and (max-width: 30rem) {
  .c-section--5g-digits--partners > .c-logos .complete-image-folder-display.c-logos {
    grid-template-columns: 1fr;
  }
}
.c-section--5g-digits--partners > .c-logos .complete-image-folder-display.c-logos img {
  max-width: 150px;
  max-height: 45px;
}
/* *** */
/* MAP */
/* *** */
.moduletable.c-map .custom {
  position: relative;
}
.moduletable.c-map .custom::before {
  content: "";
  position: absolute;
  inset: 0;
  background: #0055a5;
  mix-blend-mode: hue;
  pointer-events: none;
}
.moduletable.c-map .custom iframe {
  display: flex;
  width: 100%;
}
/* **** */
/* BLOG */
/* **** */
.com_content.view-category.layout-blog.c-blog .com-content-category-blog .category-desc {
  max-width: 900px;
  margin-left: auto;
  margin-right: auto;
  text-wrap: balance;
  text-align: center;
}
.com_content.view-category.layout-blog.c-blog .com-content-category-blog .com-content-category-blog__items {
  display: grid;
  gap: var(--section-padding);
  align-items: stretch;
}
@media only all and (min-width: 75rem) {
  .com_content.view-category.layout-blog.c-blog .com-content-category-blog .com-content-category-blog__items {
    grid-template-columns: 1fr 1fr 1fr;
  }
}
@media only all and (min-width: 60rem) and (max-width: 74.99rem) {
  .com_content.view-category.layout-blog.c-blog .com-content-category-blog .com-content-category-blog__items {
    grid-template-columns: 1fr 1fr;
  }
}
@media only all and (min-width: 48rem) and (max-width: 59.99rem) {
  .com_content.view-category.layout-blog.c-blog .com-content-category-blog .com-content-category-blog__items {
    grid-template-columns: 1fr 1fr;
  }
}
@media only all and (min-width: 30.01rem) and (max-width: 47.99rem) {
  .com_content.view-category.layout-blog.c-blog .com-content-category-blog .com-content-category-blog__items {
    grid-template-columns: 1fr;
  }
}
@media only all and (max-width: 30rem) {
  .com_content.view-category.layout-blog.c-blog .com-content-category-blog .com-content-category-blog__items {
    grid-template-columns: 1fr;
  }
}
.com_content.view-category.layout-blog.c-blog .com-content-category-blog .com-content-category-blog__items .com-content-category-blog__item {
  position: relative;
}
.com_content.view-category.layout-blog.c-blog .com-content-category-blog .com-content-category-blog__items .com-content-category-blog__item .item-image {
  margin: 0;
  overflow: hidden;
  aspect-ratio: 1.7777777778;
}
.com_content.view-category.layout-blog.c-blog .com-content-category-blog .com-content-category-blog__items .com-content-category-blog__item .item-image:hover img {
  transform: scale(1.05);
}
.com_content.view-category.layout-blog.c-blog .com-content-category-blog .com-content-category-blog__items .com-content-category-blog__item .item-image img {
  object-fit: cover;
  object-position: center center;
  width: 100%;
  height: 100%;
  filter: contrast(1.1) brightness(0.9);
  transition: all 0.3s;
}
.com_content.view-category.layout-blog.c-blog .com-content-category-blog .com-content-category-blog__items .com-content-category-blog__item .item-content {
  margin-top: 15px;
}
.com_content.view-category.layout-blog.c-blog .com-content-category-blog .com-content-category-blog__items .com-content-category-blog__item .item-content .page-header h2 {
  margin-top: 1.75rem;
  margin-bottom: 1rem;
  line-height: 1.5;
  font-family: "GoogleSans";
  font-size: 1.35rem;
  font-weight: 500;
  text-transform: none;
  text-wrap: balance;
}
@media only all and (min-width: 30.01rem) and (max-width: 47.99rem) {
  .com_content.view-category.layout-blog.c-blog .com-content-category-blog .com-content-category-blog__items .com-content-category-blog__item .item-content .page-header h2 {
    font-size: 1.25rem;
  }
}
@media only all and (max-width: 30rem) {
  .com_content.view-category.layout-blog.c-blog .com-content-category-blog .com-content-category-blog__items .com-content-category-blog__item .item-content .page-header h2 {
    font-size: 1.25rem;
  }
}
.com_content.view-category.layout-blog.c-blog .com-content-category-blog .com-content-category-blog__items .com-content-category-blog__item .item-content .page-header h2 a {
  color: inherit;
}
.com_content.view-category.layout-blog.c-blog .com-content-category-blog .com-content-category-blog__items .com-content-category-blog__item .item-content .page-header h2 a:hover {
  color: #0055a5;
}
.com_content.view-category.layout-blog.c-blog .com-content-category-blog .com-content-category-blog__items .com-content-category-blog__item p:not(.readmore) {
  margin: 10px 0 0 0;
  text-wrap: balance;
}
.com_content.view-category.layout-blog.c-blog .com-content-category-blog .com-content-category-blog__items .com-content-category-blog__item p.readmore {
  margin: 15px 0 0 0;
}
.com_content.view-category.layout-blog.c-blog .com-content-category-blog .com-content-category-blog__items .com-content-category-blog__item p.readmore a.btn span {
  display: none;
}
.com_content.view-article.layout-blog.c-blog .com-content-article__body {
  max-width: 900px;
  margin-left: auto;
  margin-right: auto;
}
/* Blog Latest */
.moduletable.c-blog-latest {
  position: relative;
  padding-top: var(--section-padding);
  margin-top: var(--section-padding);
}
.moduletable.c-blog-latest::after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  bottom: auto;
  left: calc(-50vw + 50%);
  right: calc(-50vw + 50%);
  width: auto;
  height: 2px;
  background: #f4f4f9;
  z-index: 1;
}
.moduletable.c-blog-latest .g-title {
  margin-bottom: 25px;
  text-align: center;
}
.moduletable.c-blog-latest .complete-article-slider .cas-articles .cas-article > *:first-child {
  margin-top: 0 !important;
}
.moduletable.c-blog-latest .complete-article-slider .cas-articles .cas-article > *:last-child {
  margin-bottom: 0 !important;
}
.moduletable.c-blog-latest .complete-article-slider .cas-articles .cas-article .cas-article-image {
  overflow: hidden;
  aspect-ratio: 1.7777777778;
}
.moduletable.c-blog-latest .complete-article-slider .cas-articles .cas-article .cas-article-image:hover img {
  transform: scale(1.05);
}
.moduletable.c-blog-latest .complete-article-slider .cas-articles .cas-article .cas-article-image img {
  object-fit: cover;
  object-position: center center;
  width: 100%;
  height: 100%;
  filter: contrast(1.1) brightness(0.9);
  transition: all 0.3s;
}
.moduletable.c-blog-latest .complete-article-slider .cas-articles .cas-article .cas-article-title {
  margin-top: 1.75rem;
  margin-bottom: 1rem;
  line-height: 1.5;
  font-family: "GoogleSans";
  font-size: 1.35rem;
  font-weight: 500;
  text-transform: none;
  text-wrap: balance;
}
@media only all and (min-width: 30.01rem) and (max-width: 47.99rem) {
  .moduletable.c-blog-latest .complete-article-slider .cas-articles .cas-article .cas-article-title {
    font-size: 1.25rem;
  }
}
@media only all and (max-width: 30rem) {
  .moduletable.c-blog-latest .complete-article-slider .cas-articles .cas-article .cas-article-title {
    font-size: 1.25rem;
  }
}
.moduletable.c-blog-latest .complete-article-slider .cas-articles .cas-article .cas-article-more-button {
  margin-top: 25px;
}
.moduletable.c-blog-latest .complete-article-slider .swiper:not(:has(.swiper-button-lock)) {
  padding-left: calc(50px - 1px);
  padding-right: calc(50px - 1px);
}
.moduletable.c-blog-latest .complete-article-slider .swiper .swiper-button-prev {
  top: calc(50% - 20px);
  left: 0;
  width: 40px;
  height: 40px;
  background: #0055a5;
  color: #fff;
  border-radius: 50%;
}
.moduletable.c-blog-latest .complete-article-slider .swiper .swiper-button-prev::after {
  font-size: 20px;
}
.moduletable.c-blog-latest .complete-article-slider .swiper .swiper-button-prev svg {
  width: 20px;
  height: 20px;
}
.moduletable.c-blog-latest .complete-article-slider .swiper .swiper-button-next {
  top: calc(50% - 20px);
  right: 0;
  width: 40px;
  height: 40px;
  background: #0055a5;
  color: #fff;
  border-radius: 50%;
}
.moduletable.c-blog-latest .complete-article-slider .swiper .swiper-button-next::after {
  font-size: 20px;
}
.moduletable.c-blog-latest .complete-article-slider .swiper .swiper-button-next svg {
  width: 20px;
  height: 20px;
}
/* ********** */
/* RSFORM PRO */
/* *********** */
.com_rsform.view-rsform #g-mainbar .platform-content .row .col {
  max-width: 900px;
  margin-left: auto;
  margin-right: auto;
}
.com_rsform.view-rsform #g-mainbar .platform-content .row .col > h1:first-child {
  margin-bottom: var(--section-padding);
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  text-align: center;
}
form .rsform-block.rsform-block-antispam label .formRequired {
  display: none;
}
/* ******* */
/* WRAPPER */
/* ******* */
.site.com_wrapper.view-wrapper.g-bodyonly #g-mainbar .g-content {
  padding-top: 0;
  padding-bottom: 0;
  margin-top: 0;
  margin-bottom: 0;
}
.site.com_wrapper.view-wrapper.g-bodyonly #g-mainbar .g-content .com-wrapper > .page-header {
  margin: 0 0 50px 0;
}
.site.com_wrapper.view-wrapper.g-bodyonly #g-mainbar .g-content .com-wrapper > .page-header > * {
  text-align: center;
}
.site.com_wrapper.view-wrapper.g-bodyonly #g-mainbar .g-content .com-wrapper > iframe {
  display: block;
  position: relative;
  max-width: 100vw;
  width: 100vw;
  height: 100vh;
  left: calc(-50vw + 50%);
  right: calc(-50vw + 50%);
}
/* **** */
/* ESPA */
/* **** */
.moduletable.c-espa {
  padding: 0 !important;
  position: fixed;
  z-index: 999999;
  top: auto;
  bottom: 10px;
  left: auto;
  right: 70px;
}
.moduletable.c-espa img {
  mix-blend-mode: darken;
  filter: drop-shadow(0px 0px 3px rgba(0, 0, 0, 0.15));
}
/*# sourceMappingURL=custom_14.css.map */