/*
Theme Name: Geo
Author: We Are Flourish
Author URI: https://weareflourish.com/
Version: 2.5
*/

/* resets
--------------------------------------------------------------------------
*/

:root {
--fluid-14: clamp(0.4375rem, -0.125rem + 0.8333vw, 0.875rem);
--fluid-17: clamp(0.5625rem, -0.0804rem + 0.9524vw, 1.0625rem);
--fluid-18: clamp(0.5625rem, -0.1607rem + 1.0714vw, 1.125rem);
--fluid-19: clamp(0.5938rem, -0.1696rem + 1.131vw, 1.1875rem);
--fluid-20: clamp(0.625rem, -0.1786rem + 1.1905vw, 1.25rem);
--fluid-21: clamp(0.6563rem, -0.1875rem + 1.25vw, 1.3125rem);
--fluid-22: clamp(0.6875rem, -0.1964rem + 1.3095vw, 1.375rem);
--fluid-25: clamp(0.7813rem, -0.2232rem + 1.4881vw, 1.5625rem);
--fluid-29: clamp(0.9063rem, -0.2589rem + 1.7262vw, 1.8125rem);
--fluid-30: clamp(0.9375rem, -0.2679rem + 1.7857vw, 1.875rem);
--fluid-31: clamp(0.9688rem, -0.2768rem + 1.8452vw, 1.9375rem);
--fluid-33: clamp(1.0313rem, -0.2946rem + 1.9643vw, 2.0625rem);
--fluid-34: clamp(1.0625rem, -0.3036rem + 2.0238vw, 2.125rem);
--fluid-35: clamp(1.0938rem, -0.3125rem + 2.0833vw, 2.1875rem);
--fluid-38: clamp(1.1875rem, -0.3393rem + 2.2619vw, 2.375rem);
--fluid-39: clamp(1.2188rem, -0.3482rem + 2.3214vw, 2.4375rem);
--fluid-40: clamp(1.25rem, -0.3571rem + 2.381vw, 2.25rem);
--fluid-45: clamp(1.4063rem, -0.4018rem + 2.6786vw, 2.8125rem);
--fluid-46: clamp(1.4375rem, -0.4107rem + 2.7381vw, 2.875rem);
--fluid-50: clamp(1.5625rem, -0.4464rem + 2.9762vw, 3.125rem);
--fluid-51: clamp(1.5938rem, -0.4554rem + 3.0357vw, 3.1875rem);
--fluid-55: clamp(1.7188rem, -0.4911rem + 3.2738vw, 3.4375rem);
--fluid-59: clamp(1.8438rem, -0.5268rem + 3.5119vw, 3.6875rem);
--fluid-61: clamp(1.9063rem, -0.5446rem + 3.631vw, 3.8125rem);
--fluid-65: clamp(2.0313rem, -0.5804rem + 3.869vw, 4.0625rem);
--fluid-69: clamp(2.1563rem, -0.6161rem + 4.1071vw, 4.3125rem);
--fluid-80: clamp(2.5rem, -0.7143rem + 4.7619vw, 5rem);
--fluid-82: clamp(2.5625rem, -0.7321rem + 4.881vw, 5.125rem);
--fluid-83: clamp(2.5938rem, -0.7411rem + 4.9405vw, 5.1875rem);
--fluid-86: clamp(2.6875rem, -0.7679rem + 5.119vw, 5.375rem);
--fluid-90: clamp(2.8125rem, -0.8036rem + 5.3571vw, 5.625rem);
--fluid-102: clamp(3.1875rem, -0.9107rem + 6.0714vw, 6.375rem);
--fluid-110: clamp(3.4375rem, -0.9821rem + 6.5476vw, 6.875rem);
--fluid-117: clamp(3.6563rem, -1.0446rem + 6.9643vw, 7.3125rem);
--fluid-136: clamp(4.25rem, -1.2143rem + 8.0952vw, 8.5rem);
--fluid-280: clamp(8.75rem, -2.5rem + 16.6667vw, 17.5rem);
--fluid-283: clamp(8.8438rem, -2.5268rem + 16.8452vw, 17.6875rem);
--fluid-hero: clamp(3.6563rem, -1.0446rem + 6.9643vw, 5rem);
}

html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary, time, mark, audio, video { margin: 0; padding: 0; border: 0; font-size: 100%; font: inherit; vertical-align: baseline; }

html { font-size: 100%; -webkit-text-size-adjust: 100%; line-height: 1; overflow-y: scroll; box-sizing: border-box; }
*, *:before, *:after { box-sizing: inherit; }

article, aside, details, div, figcaption, figure, footer, header, hgroup, main, menu, nav, section, summary { position: relative; display: block; }
audio, canvas, progress, video { display: inline-block; vertical-align: baseline; }
audio:not([controls]) { display: none; height: 0; }
progress { vertical-align: baseline; }
[hidden], template { display: none; }

svg:not(:root) { overflow: hidden; }

img, iframe { border: 0; vertical-align: middle; }

strong { font-weight: bolder; font-variation-settings: "opsz" 500, "wght" 700; }
em { font-style: italic; }
sub, sup { font-size: 75%; line-height: 0; position: relative; vertical-align: baseline; }
sup { top: -0.5em; }
sub { bottom: -0.25em; }

button, input, optgroup, select, textarea { margin: 0; font: inherit; font-size: 100%; line-height: 1; vertical-align: baseline; color: inherit; outline: 0; border-radius: 0; }
button, input, textarea { padding: 0; }
button, input { overflow: visible; }
button, select { text-transform: none; }
textarea { overflow: auto; vertical-align: top; resize: vertical; }
legend { box-sizing: border-box; color: inherit; display: table; max-width: 100%; padding: 0; white-space: normal; }
input[type="radio"] { vertical-align: text-bottom; }
input[type="checkbox"] { vertical-align: bottom; }
input[type="checkbox"], input[type="radio"] { box-sizing: border-box; padding: 0; }
label, button, input[type="button"], input[type="reset"], input[type="submit"] { cursor: pointer; }
button, input[type="button"], input[type="reset"], input[type="submit"] { vertical-align: bottom; -webkit-appearance: button; }
button[disabled], input[disabled] { cursor: default; }
button { width: auto; }
button::-moz-focus-inner, [type="button"]::-moz-focus-inner, [type="reset"]::-moz-focus-inner, [type="submit"]::-moz-focus-inner { border: 0; padding: 0; }
input[type="search"] { -webkit-appearance: textfield; outline-offset: -2px; }
input[type="search"]::-ms-clear,
input[type="search"]::-ms-reveal { display: none; width: 0; height: 0; }
input[type="search"]::-webkit-search-decoration,
input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-results-button,
input[type="search"]::-webkit-search-results-decoration { -webkit-appearance: none; }
::-webkit-file-upload-button { -webkit-appearance: button; font: inherit; }

table { border-collapse: collapse; border-spacing: 0; }
th, td { vertical-align: top; }
th { font-weight: normal; text-align: left; }

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

ul, ol { list-style: none; }
li { display: list-item; }

hr { box-sizing: content-box; height: 0; overflow: visible; }

a { color: #4C331C; background: transparent; text-decoration: none; cursor: pointer; text-decoration-skip: ink; }
a:focus { outline: thin dotted; }
a:active, a:hover { outline: 0; }

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

a, span, button { transition: color 0.4s ease, background-color 0.4s ease, border-color 0.4s ease, opacity 0.4s ease, text-decoration-color 0.4s ease; }

/* global
--------------------------------------------------------------------------
*/

body { font: 62.5%/1 sole-serif-small-variable, 'Helvetica Neue', Arial, Helvetica, sans-serif; font-variation-settings: "opsz" 500, "wght" 200; background: var(--background); color: #4C331C; }

.anim,
.animc > * { position: relative; transform: translateY(100px); opacity: 0; transition: all 0.6s ease; }
.anim.inview,
.animc > *.inview { transition-delay: 0.4s; transform: translateY(0); opacity: 1; }

.navbar { position: fixed; top: 0; left: 0; z-index: 99; width: 100%; }
.navbar header { width: 100%; padding: 19px 0 0; display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; pointer-events: none;  }
.navbar header > ul li button { width: 30px; height: 30px; background: none; border: 0; position: relative; display: block; -webkit-appearance: none; appearance: none; pointer-events: auto; }
.navbar header > ul li button span { width: 100%; height: 2px; background: #4C331C; position: absolute; top: calc( 50% - 1px ); left: 0; transition: all 0.4s ease; display: block; }
.navbar header > ul li button span::before,
.navbar header > ul li button span::after { width: 100%; height: 2px; background: #4C331C; position: absolute; top: -7px; left: 0; transition: all 0.4s ease; content: " "; display: block; }
.navbar header > ul li button span::after { top: 7px; }
.navbar header h1 a { position: relative; display: inline-flex; pointer-events: auto; }
.navbar header h1 a img { width: auto; height: 36px; transition: opacity 0.4s ease; }
.navbar header h1 a::before,
.navbar header h1 a::after { width: 100%; height: 100%; background: url(images/logo-brown.svg) 50% 50% / contain no-repeat; position: absolute; top: 0; left: 0; opacity: 0; transition: opacity 0.4s ease; z-index: 2; content: " "; display: block; }
.navbar header h1 a::after { background-image: url(images/logo-white.svg) }
.navbar header nav ul { display: flex; flex-wrap: wrap; justify-content: flex-end; pointer-events: auto; gap: 0.25rem;}
.navbar header nav ul li { display: none; }
.navbar header nav ul li:last-child { display: block; }
.navbar header nav ul li a { padding: 8px 12px 9px; font-family: stratos, sans-serif; font-size: 15px; color: #4C331C; background: #FFFFFF; border-radius: 5px; display: inline-flex; }
.navbar header nav ul li:last-child a { color: var(--highlight-text); background: var(--highlight); }
.navbar header nav ul li a:hover span { opacity: 0.45; }

html.light .navbar header > ul li button span,
html.light .navbar header > ul li button span::before,
html.light .navbar header > ul li button span::after { background: #FFFFFF; }
html.light .navbar header h1 a img { opacity: 0; }
html.light .navbar header h1 a::after { opacity: 1; }

@media only screen and (max-width: 1023px) {
	html.menu .navbar header > ul li button span { background: #F1EFE8; }
	html.menu .navbar header > ul li button span::before,
	html.menu .navbar header > ul li button span::after { background: #4C331C; }
	html.menu .navbar header > ul li button span::before { top: 0; transform: rotate(-45deg); }
	html.menu .navbar header > ul li button span::after { top: 0; transform: rotate(45deg); }
	html.menu .navbar header h1 a::before { opacity: 1; }
	html.menu .navbar header h1 a::after { opacity: 0; }
	html.menu .navbar header nav ul li:last-child a { color: #FFFFFF; background: #4C331C; }
}

@media only screen and (min-width: 1024px) {
  .navbar header { padding: 3.5rem 0 0; gap: 5rem; }
  .navbar header > ul { display: none; }
  .navbar header h1 { grid-column: 2; }
  .navbar header h1 a img { height: 3rem; }
  .navbar header nav ul li { display: block; }
  .navbar header nav ul li a { padding: 0.353em 0.882em 0.471em; font-size: var(--fluid-17); border: 0.059em solid #F1EFE8; border-radius: 0.588em; }
  .navbar header nav ul li:last-child a { border-color: var(--highlight); }
}

html.services .navbar header > ul li button span,
html.services .navbar header > ul li button span::before,
html.services .navbar header > ul li button span::after,
html.sectors .navbar header > ul li button span,
html.sectors .navbar header > ul li button span::before,
html.sectors .navbar header > ul li button span::after { background: #4C331C; }
html.services .navbar header h1 a::before,
html.sectors .navbar header h1 a::before { opacity: 1; }
html.services .navbar header h1 a::after,
html.sectors .navbar header h1 a::after { opacity: 0; }
html.services .navbar header nav ul li:last-child a,
html.sectors .navbar header nav ul li:last-child a { color: #FFFFFF; background: #4C331C; }

body > .menu { width: 100%; height: 100%; padding: 16px; background: #F1EFE8; position: fixed; top: 0; left: -100%; display: flex; align-items: end; transition: left 0.4s ease; z-index: 98; }
html.menu body > .menu { left: 0; }
body > .menu ul { display: flex; flex-wrap: wrap; gap: 5px; }
body > .menu ul li a { padding: 12px 24px; font-family: stratos, sans-serif; font-size: 25px; color: #4C331C; background: #FFFFFF; border-radius: 10px; display: inline-flex; }
body > .menu ul li:last-child a { color: #FFFFFF; background: #4C331C; }

@media only screen and (min-width: 1024px) {
	body > .menu { display: none; }
}

main { overflow: hidden; }
main img { width: 100%; height: auto; }

main .btn { font-size: 13px; background: none; border: 0; -webkit-appearance: none; appearance: none; position: relative; display: inline-flex; }
main .btn > span { padding: 14px 14px 14px 21px; font-family: stratos, sans-serif; color: #4C331C; background: #FFFFFF; border: 1px solid #4C331C; border-radius: 7px; position: relative; top: 0; left: 0; display: inline-flex; align-items: center; gap: 30px; transition: top 0.4s ease, left 0.4s ease; }
main .btn svg { width: auto; height: 10px; }
main .btn::before { width: 100%; height: 100%; background: #4C331C; border-radius: 7px; position: absolute; top: 0; left: 0; content: " "; display: block; }
main .btn:hover > span,
main a:hover .btn > span,
.gform_drop_area:hover .btn > span { top: -2px; left: -2px; }

@media only screen and (min-width: 1024px) {
	main .btn { font-size: 18px; }
	main .btn > span { padding: 0.789em 0.8em 0.9em 1.356em; border-width: 0.056em; border-radius: 0.556em; gap: 2.333em; }
	main .btn svg { height: 0.667em; }
	main .btn::before { border-radius: 0.556em; }
	main .btn:hover > span,
	main a:hover .btn > span,
	.gform_drop_area:hover .btn > span { top: -0.167em; left: -0.167em; }
}

@media only screen and (min-width: 1024px) {
	main .btn { font-size: var(--fluid-18); }
}

main .home-header-wrapper::before { width: 622px; height: 678px; position: absolute; top: -42px; left: -262px; background: url(images/home-header-g.svg) no-repeat 50% 50% / contain; content: " "; display: block; }
main .home-header { padding: 100px 0 18px; display: grid; gap: 1.5rem;}
main .home-header .heading h1 { font-family: stratos, sans-serif; font-weight: 500; font-size: 32px; line-height: 40px; }
main .home-header .slide-wrapper { overflow-x: auto; }
main .home-header .slider { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0.25rem; width: 200vw;}
main .home-header .slider .card { border-radius: 10px; overflow: hidden; position: relative; aspect-ratio: 11 / 16; cursor: pointer;}
main .home-header .slider .card img { object-fit: cover; object-position: top center; height: 100%; }
main .home-header .slider .copy { position: absolute; inset: 0; padding: 1rem; background-image: linear-gradient(to bottom, transparent, transparent, rgba(0,0,0,0.6) ); color: white; display: flex; align-items: end;}
main .home-header .slider .card h3 { font-family: stratos, sans-serif; font-size: 20px; line-height: 23px; }
main .home-header .slider .overview p { font-size: 13px; line-height: 19px; }
main .home-header .slider .left { opacity: 0; }
main .home-header .slider .bottom {
	position: absolute;
	bottom: 0;
	left: 40px;
	width: 400px;
	height: 80px;
}
@media only screen and (min-width: 767px) {
	main .home-header .slider { width: 100%; }
}

@media only screen and (min-width: 1024px) {
  main .home-header-wrapper::before { width: 95.31vw; height: 103.96vw; top: -7.5vw; left: -11.88vw; }
	main .home-header { grid-template-columns: 27% 1fr; gap: 2rem; padding: 14rem 0 8rem 0; }
	main .home-header .heading h1 { font-size: var(--fluid-hero); line-height: 1.026; }
	main .home-header .slider { grid-template-columns: 60% 1fr 1fr; gap: 2rem; }
	main .home-header .slider .card { border-radius: 1.2rem; aspect-ratio: unset; height: 37rem; }
	main .home-header .slider .card h3 { font-size: var(--fluid-45); line-height: 1.026 }
	main .home-header .slider .card p { font-size: var(--fluid-25); line-height: 1.026 }
	main .home-header .slider .left {
		position: absolute;
    bottom: -20px;
		left: 52px;
    display: flex;
    width: 400px;
    height: 80px;
    justify-content: flex-start;
    transform: rotate(-90deg);
		transform-origin: top left;
	}
	main .home-header .slider .bottom {
		bottom: 40px;
		left: 56px;
	}
}

main .home-overview { margin: 0 4px; padding: 52px 12px 44px; background: #FFFFFF; border-radius: 10px; }
main .home-overview h2 { font-family: stratos, sans-serif; font-size: 16px; line-height: 20px; }
main .home-overview .text-1 { padding: 20px 0 0; }
main .home-overview .text-1 p { margin: 25px 0 0; font-family: stratos, sans-serif; font-weight: 500; font-size: 18px; line-height: 25px; }
main .home-overview .text-1 p:first-child { margin: 0; }
main .home-overview .text-2 { padding: 30px 0 0; }
main .home-overview .text-2 p { margin: 19px 0 0; font-size: 13px; line-height: 19px; }
main .home-overview .text-2 p:first-child { margin: 0; }
main .home-overview .text-2 ul { margin: 64px 0 0; }

@media only screen and (min-width: 1024px) {
  main .home-overview { margin: 0; padding: 6rem 6rem 6rem; border-radius: 1.2rem; display: grid; grid-template-columns: 1fr 37%; gap: 1.82rem 7rem; }
  main .home-overview h2 { font-size: var(--fluid-30); line-height: 1.167; grid-column: span 2; }
  main .home-overview .text-1 { padding: 0; }
  main .home-overview .text-1 p { margin: 1.316em 0 0; font-size: var(--fluid-38); line-height: 1.316; }
  main .home-overview .text-1 p:first-child { margin: 0; }
  main .home-overview .text-2 { padding: 0; }
  main .home-overview .text-2 p { margin: 1.474em 0 0; font-size: var(--fluid-19); line-height: 1.474; }
  main .home-overview .text-2 p:first-child { margin: 0; }
  main .home-overview .text-2 ul { margin: 3.75rem 0 0; }
}

main .home-sectors { padding: 62px 0 0 16px; }
main .home-sectors h2 { width: 200px; font-family: stratos, sans-serif; font-weight: 500; font-size: 29px; line-height: 26px; }
main .home-sectors .slides { display: grid; gap: 1rem; margin-top: 2rem;}
main .home-sectors .slides .slide { }
main .home-sectors .slides .slide a {height: 100%; padding: 0 0 18px; border-radius: 10px; display: flex; flex-direction: column; }
main .home-sectors .slides .slide.blue a { background: #6CC2C6; }
main .home-sectors .slides .slide.orange a { background: #F7BCA3; }
main .home-sectors .slides .slide.yellow a { background: #FAEB68 }
main .home-sectors .slides .slide.green a { background: #B7ED8B; }
main .home-sectors .slides .slide a h3 { min-height: 86px; padding: 20px 18px 19px; font-family: stratos, sans-serif; font-size: 20px; line-height: 23px; text-wrap: balance; border: 1px solid #4C331C; border-width: 0 0 1px; }
main .home-sectors .slides .slide a p { padding: 6px 18px; font-size: 13px; line-height: 19px; }
main .home-sectors .slides .slide a figure { display: none; }
main .home-sectors .slides .slide a .btn { margin: 10px 18px 0; align-self: start; }
main .home-sectors .slides .slide.blue a .btn > span { background: #6CC2C6; }
main .home-sectors .slides .slide.orange a .btn > span { background: #F7BCA3; }
main .home-sectors .slides .slide.yellow a .btn > span { background: #FAEB68 }
main .home-sectors .slides .slide.green a .btn > span { background: #B7ED8B; }
main .home-sectors .slides .slick-arrow { width: 42px; height: 13px; position: absolute; top: -32px; background: none; border: 0; -webkit-appearance: none; appearance: none; z-index: 50; }
main .home-sectors .slides .slick-arrow::before { width: 100%; height: 100%; position: absolute; top: 0; left: 0; background: url(images/arrow-brown.svg) no-repeat 50% 50% / contain; content: " "; display: block; }
main .home-sectors .slides .slick-prev { right: 64px; transform: rotate(180deg); }
main .home-sectors .slides .slick-next { right: 16px; }

@media only screen and (min-width: 768px) {
	main .home-sectors .slides { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media only screen and (min-width: 1024px) {
  main .home-sectors { padding: 9rem 0 0 0; }
  main .home-sectors h2 { width: 100%; font-size: var(--fluid-90); line-height: 1; }
	main .home-sectors .slides { grid-template-columns: repeat(4, minmax(0, 1fr)); margin-top: 3rem; }
  main .home-sectors .slides .slide { }
  main .home-sectors .slides .slide a { padding: 1.5rem; border-radius: 1.2rem; }
  main .home-sectors .slides .slide a h3 { min-height: 2.8em; padding: 0; font-size: var(--fluid-35); line-height: 1.143; border-width: 0 0 0.05vw; }
  main .home-sectors .slides .slide a p { padding: 0.8em 0 0 0; font-size: var(--fluid-19); line-height: 1.250; }
  main .home-sectors .slides .slide a figure { padding: 0; margin-top: 1.7em; margin-bottom: 2em; width: 100%; height: auto; display: block; align-self: end; }
  main .home-sectors .slides .slide a .btn { margin: auto 0 0 0; }
  main .home-sectors .slides .slick-arrow { width: 5rem; height: 1.5rem; top: -1.67rem; }
  main .home-sectors .slides .slick-prev { right: 8.85rem; }
  main .home-sectors .slides .slick-next { right: 2.4rem; }
}

main .home-services { padding: 74px 16px 8px; overflow: hidden; }
main .home-services .header h2 { font-family: stratos, sans-serif; font-size: 16px; line-height: 20px; }
main .home-services .slides .slide { padding: 20px 0 32px; }
main .home-services .slides .slide h3 { font-family: stratos, sans-serif; font-weight: 600; font-size: 28px; line-height: 31px; }
main .home-services .slides .slide p { margin: 20px 0 0; font-size: 13px; line-height: 19px; }
main .home-services .button ul li a.btn > span { background: #F1EFE8; }
main .home-services .links { padding: 120px 0 0; }
main .home-services .links ul { position: relative; }
main .home-services .links ul li a { padding: 12px; font-family: stratos, sans-serif; font-size: 17px; background: #FFFFFF; border-radius: 12px; display: inline-flex; }
main .home-services .links ul li:nth-of-type(1) { position: relative; top: -15px; left: 5px; transform: rotate(-21deg); transform-origin: bottom left; }
main .home-services .links ul li:nth-of-type(2) { position: absolute; top: -67px; left: 136px; transform: rotate(48deg); }
main .home-services .links ul li:nth-of-type(3) { position: absolute; top: 0; left: 112px; }
main .home-services .links ul li:nth-of-type(4) { position: absolute; top: -35px; left: 226px; transform: rotate(31deg); }
main .home-services .links ul li.on a { background: #F7BCA3; }

@media only screen and (min-width: 1024px) {
  main .home-services { padding: 0 2rem; }
  main .home-services .header { padding: 9rem 0 0 0; }
  main .home-services .header h2 { font-size: var(--fluid-30); line-height: 1.167; max-width: 33rem;  }
  main .home-services .slides .slide { padding: 2rem 0 3rem 0; }
  main .home-services .slides .slide h3 { font-size: var(--fluid-61); line-height: 1.082; max-width: 33rem; }
  main .home-services .slides .slide p { margin: 2.182em 0 0; font-size: var(--fluid-22); line-height: 1.364; max-width: 33rem; }
  main .home-services .button {  }
  main .home-services .links { padding: 11rem 0 0 0; position: relative; }
  main .home-services .links ul li a { padding: 0.707em 0.829em; font-size: var(--fluid-69); border-radius: 0.671em; }
  main .home-services .links ul li:nth-of-type(1) { top: 0; left: 5%; }
  main .home-services .links ul li:nth-of-type(2) { top: -15rem; left: 40%; }
  main .home-services .links ul li:nth-of-type(3) { top: 20%; left: 40%; }
  main .home-services .links ul li:nth-of-type(4) { top: -10rem; left: 68%; }
}

main .home-languages-wrapper { background: #4C331C; }
main .home-languages { padding: 73px 16px 212px; color: #FFFFFF; }
main .home-languages .header h2 { font-family: stratos, sans-serif; font-size: 16px; line-height: 20px; }
main .home-languages .header p { margin: 30px 0 0; font-family: stratos, sans-serif; font-size: 28px; line-height: 32px; }
main .home-languages .header p strong { font-family: sole-serif-small-variable; font-style: italic; font-weight: 400; font-variation-settings: "opsz" 500, "wght" 400; font-size: 30px; line-height: 32px; }
main .home-languages .stats { padding: 70px 0 0; }
main .home-languages .stats table { width: 100%; }
main .home-languages .stats table tr { border: 1px solid #FFFFFF; border-width: 1px 0 0; }
main .home-languages .stats table tr th { padding: 5px 52px 10px 0; font-family: stratos, sans-serif; font-weight: 800; font-size: 32px; line-height: 40px; }
main .home-languages .stats table tr td { width: 100%; padding: 13px 0; font-family: stratos, sans-serif; font-size: 16px; line-height: 20px; }
main .home-languages .text { padding: 63px 0 0; }
main .home-languages .text p { margin: 29px 0 0; font-size: 24px; line-height: 29px; }
main .home-languages .text p:first-child { margin: 0; }
main .home-languages .text ul { margin: 44px 0 0; }
main .home-languages .text ul li a.btn > span { color: #FFFFFF; background: #4C331C; border-color: #FFFFFF; }
main .home-languages .text ul li a.btn svg g { stroke: #FFFFFF; }
main .home-languages .text ul li a.btn::before { background: #FFFFFF; }

@media only screen and (min-width: 1024px) {
  main .home-languages { padding: 9rem 10rem 28rem 0; display: grid; grid-template-columns: 34% 1fr; gap: 8rem 7rem; }
  main .home-languages .header { grid-column: span 2; }
  main .home-languages .header h2 { font-size: var(--fluid-30); line-height: 1.167; }
  main .home-languages .header p { margin: 0.667em 0 0; font-size: var(--fluid-69); line-height: 1.130; text-wrap: balance; }
  main .home-languages .header p strong { font-size: 1.087em; line-height: 1.040; }
  main .home-languages .stats { padding: 0; }
  main .home-languages .stats table tr { border-width: 0.05vw 0 0; }
  main .home-languages .stats table tr th { padding: 0.275em 1.294em 0.314em 0; font-size: var(--fluid-51); line-height: 1; }
  main .home-languages .stats table tr td { padding: 0; font-size: var(--fluid-22); line-height: 1; vertical-align: middle; }
  main .home-languages .text { padding: 0; margin-top: -0.85rem; }
  main .home-languages .text p { margin: 1.231em 0 0; font-size: var(--fluid-39); line-height: 1.231; }
  main .home-languages .text p:first-child { margin: 0; }
  main .home-languages .text ul { margin: 3rem 0 0; }
}

main .home-technology { margin: -108px 4px 0; background: #FAEB68; border-radius: 10px; }
main .home-technology .header { padding: 40px 12px 0; }
main .home-technology .header h2 { font-family: stratos, sans-serif; font-weight: 800; font-size: 35px; line-height: 29px; text-wrap: balance; text-transform: uppercase; }
main .home-technology .text { padding: 39px 12px 0; }
main .home-technology .text p { margin: 19px 0 0; font-size: 13px; line-height: 19px; }
main .home-technology .text p:first-child { margin: 0; font-family: stratos, sans-serif; font-size: 20px; line-height: 23px; }
main .home-technology .text p:first-child + p { margin: 24px 0 0; }
main .home-technology .text ul { margin: 54px 0 0; }
main .home-technology .text ul li a.btn > span { background: #FAEB68; }
main .home-technology figure { padding: 70px 0 0; }
main .home-technology figure img { border-radius: 0 0 10px 10px; }

@media only screen and (min-width: 1024px) {
  main .home-technology { margin: -18rem 0 0; background: #FAEB68; border-radius: 1.2rem; display: grid; grid-template-columns: 58% 1fr; grid-template-rows: 18rem 1fr; gap: 0 7rem; }
  main .home-technology .header { padding: 6rem 8rem 0; grid-column: 1; grid-row: 1; }
  main .home-technology .header h2 { font-size: var(--fluid-69); line-height: 0.841; }
  main .home-technology .text { padding: 12rem 6rem 0 0; grid-column: 2; grid-row: 1 / span 2; }
  main .home-technology .text p { margin: 1.474em 0 0; font-size: var(--fluid-19); line-height: 1.474; }
  main .home-technology .text p:first-child { margin: 0; font-size: var(--fluid-30); line-height: 1.167; }
  main .home-technology .text p:first-child + p { margin: 3.474em 0 0; }
  main .home-technology .text ul { margin: 3.75rem 0 0; }
  main .home-technology figure { padding: 0; grid-column: 1; grid-row: 2; }
  main .home-technology figure img { border-radius: 0 1.15vw; }
}

main .about-header-wrapper { background: #6CC2C6; }
main .about-header { padding: 134px 16px 132px; text-align: center; }
main .about-header h1 { font-family: stratos, sans-serif; font-weight: 500; font-size: 35px; line-height: 40px; text-wrap: balance; }
main .about-header figure { padding: 34px 0 0; }
main .about-header figure img { width: 120px; transform: rotate(7deg); }
main .about-header .text-1 { padding: 42px 0 0; }
main .about-header .text-1 p { margin: 22px 0 0; font-size: 18px; line-height: 22px; }
main .about-header .text-1 p:first-child { margin: 0; }
main .about-header .text-1 p strong { font-family: stratos, sans-serif; font-weight: 500; }
main .about-header .text-2 { padding: 80px 0 0; }
main .about-header .text-2 p { margin: 24px 0 0; font-family: stratos, sans-serif; font-weight: 500; font-size: 21px; line-height: 24px; text-wrap: balance; }
main .about-header .text-2 p:first-child { margin: 0; }

@media only screen and (min-width: 1024px) {
  main .about-header { padding: 15rem 5rem 11rem; display: grid; grid-template-columns: 1fr 55%; }
	main .about-header h1 { font-size: var(--fluid-110); line-height: 1.091; grid-column: span 2; }
	main .about-header figure { padding: 6rem 0 0 8rem; text-align: left; }
	main .about-header figure img { width: 17rem; }
	main .about-header .text-1 { padding: 6.88rem 2.71rem 0 0; text-align: left; }
	main .about-header .text-1 p { margin: 1.206em 0 0; font-size: var(--fluid-34); line-height: 1.206; }
	main .about-header .text-1 p:first-child { margin: 0; }
	main .about-header .text-2 { padding: 13rem 0 0; grid-column: span 2; }
	main .about-header .text-2 p { margin: 0.725em 0 0; font-size: var(--fluid-69); line-height: 0.725; }
	main .about-header .text-2 p:first-child { margin: 0; }
}

main .about-overview-1 { margin: -61px 4px 0; padding: 52px 12px 84px; background: #FFFFFF; border-radius: 10px; display: grid; grid-template-columns: 1fr; gap: 94px; counter-reset: counter; }
main .about-overview-1 .col h2 { padding: 0 0 0 84px; font-style: italic; font-size: 26px; position: relative; }
main .about-overview-1 .col h2::before { font-style: normal; position: absolute; top: 0; left: 0; counter-increment: counter; content: counter(counter, decimal-leading-zero); display: block; }
main .about-overview-1 .col h2 strong { font-family: stratos, sans-serif; font-weight: 500; font-style: normal; }
main .about-overview-1 .col p { margin: 19px 0 0; font-size: 13px; line-height: 19px; }
main .about-overview-1 .col h2 + p { margin: 36px 0 0; font-family: stratos, sans-serif; font-size: 20px; line-height: 23px; }
main .about-overview-1 .col h2 + p + p { margin: 30px 0 0; }

@media only screen and (min-width: 1024px) {
  main .about-overview-1 { margin: -5.2rem 0 0; padding: 6rem 6rem; border-radius: 1.2rem; grid-template-columns: 1fr 1fr; gap: 21%; }
  main .about-overview-1 .col h2 { padding: 0 0 0 2.000em; font-size: var(--fluid-38); }
  main .about-overview-1 .col p { margin: 1.474em 0 0; font-size: var(--fluid-19); line-height: 1.474; }
  main .about-overview-1 .col h2 + p { margin: 1.900em 0 0; font-size: var(--fluid-30); line-height: 1.167; }
  main .about-overview-1 .col h2 + p + p { margin: 1.895em 0 0; }
}

main .about-overview-2 { padding: 74px 16px 44px; text-align: center; }
main .about-overview-2 p { margin: 22px 0 0; font-family: stratos, sans-serif; font-size: 17px; line-height: 22px; }
main .about-overview-2 p:first-child { margin: 0; }
main .about-overview-2 p strong { font-weight: 600; font-variation-settings: "opsz" 500, "wght" 600; }
main .about-overview-2 ul { margin: 62px 0 0; }
main .about-overview-2 ul li a.btn > span { background: var(--background); }

@media only screen and (min-width: 1024px) {
  main .about-overview-2 { padding: 12rem 15rem 5rem; }
  main .about-overview-2 p { margin: 1.316em 0 0; font-size: var(--fluid-38); line-height: 1.316; }
  main .about-overview-2 p:first-child { margin: 0; }
  main .about-overview-2 ul { margin: 4rem 0 0; }
}
main .about-principles-wrapper { background: #4C331C; }
main .about-principles { padding: 60px 16px 196px; color: #FFFFFF; }
main .about-principles .header h2 { font-family: stratos, sans-serif; font-size: 29px; line-height: 32px; text-wrap: balance; }
main .about-principles .header p { margin: 29px 0 0; font-size: 24px; line-height: 29px; }
main .about-principles .header h2 + p { margin: 33px 0 0; }
main .about-principles .principles { padding: 71px 0 0; }
main .about-principles .principles h3 { margin: 52px 0 0; font-family: stratos, sans-serif; font-size: 20px; line-height: 23px; }
main .about-principles .principles h3:first-child { margin: 0; }
main .about-principles .principles h3::before { padding: 0 5px 0 0; content: "—"; display: inline-block; }
main .about-principles .principles p { margin: 19px 0 0; font-size: 13px; line-height: 19px; }
main .about-principles .stats { padding: 88px 0 0; }
main .about-principles .stats table { width: 100%; }
main .about-principles .stats table tr { border-top: 1px solid #FFFFFF; }
main .about-principles .stats table tr th { padding: 10px 20px 9px 0; font-family: stratos, sans-serif; font-weight: 800; font-size: 25px; line-height: 32px; }
main .about-principles .stats table tr td { width: 100%; padding: 17px 0 9px; font-family: stratos, sans-serif; font-size: 16px; line-height: 20px; }

@media only screen and (min-width: 1024px) {
	main .about-principles { padding: 72px 292px 647px 45px; display: grid; grid-template-columns: 1fr 599px; grid-template-rows: 1fr auto; gap: 0 262px; }
	main .about-principles .header { padding: 30px 0 0 123px; grid-column: 1; grid-row: 1; }
	main .about-principles .header h2 { font-size: 55px; line-height: 1; }
	main .about-principles .header p { margin: 1.286em 0 0; font-size: 35px; line-height: 1.286; text-wrap: balance; }
	main .about-principles .header h2 + p { margin: 1.486em 0 0; }
	main .about-principles .principles { padding: 0; grid-column: 2; grid-row: 1 / span 2; }
	main .about-principles .principles h3 { margin: 3.000em 0 0; font-size: 30px; line-height: 1.167; }
	main .about-principles .principles h3:first-child { margin: 0; }
	main .about-principles .principles h3::before { padding: 0 0.267em 0 0; }
	main .about-principles .principles p { margin: 1.474em 0 0; font-size: 19px; line-height: 1.474; }
	main .about-principles .principles h3 + p { margin: 1.053em 0 0; } 
	main .about-principles .stats { padding: 0; grid-column: 1; grid-row: 2; }
	main .about-principles .stats table tr { border-top-width: 1px; }
	main .about-principles .stats table tr th { width: 8em; padding: 0.200em 0.667em 0.200em 0; font-size: 30px; line-height: 1.267; }
	main .about-principles .stats table tr td { width: auto; padding: 0.524em 0; font-size: 21px; line-height: 1.238; }
}

@media only screen and (min-width: 1024px) {
	main .about-principles { padding: 7rem 2rem; grid-template-columns: 1fr 1fr; gap: 0 16%; }
	main .about-principles .header { padding: 0; }
	main .about-principles .header h2 { font-size: var(--fluid-55); }
	main .about-principles .header p { font-size: var(--fluid-35); }
	main .about-principles .principles h3 { font-size: var(--fluid-30); }
	main .about-principles .principles p { font-size: var(--fluid-19); } 
	main .about-principles .stats table tr { border-top-width: 0.05vw; }
	main .about-principles .stats table tr th { font-size: var(--fluid-30); }
	main .about-principles .stats table tr td { font-size: var(--fluid-21); }
}

main .testimonials { margin: 56px 4px 0; background: transparent; border-radius: 10px; }
main .about-principles + .testimonials { margin-top: -67px; }
main .testimonials header { padding: 34px 12px 0; }
main .testimonials header h2 { font-family: stratos, sans-serif; font-size: 16px; line-height: 20px; }
main .testimonials header p { width: 250px; margin: 20px 0 0; font-family: stratos, sans-serif; font-weight: 800; font-size: 35px; line-height: 29px; text-transform: uppercase; text-wrap: balance; }
main .testimonials .quotes .quote .wrap { padding: 88px 2px 78px; transition: padding 0.4s ease; transition-delay: 500ms; }
main .testimonials .quotes .quote blockquote { width: calc( 100vw - 32px ); height: 356px; padding: 20px 16px 32px; border-radius: 10px; text-align: center; display: flex; flex-direction: column; justify-content: center; }
main .testimonials .quotes .quote.blue blockquote { background: #6CC2C6; }
main .testimonials .quotes .quote.orange blockquote { background: #F7BCA3; }
main .testimonials .quotes .quote.yellow blockquote { background: #FAEB68 }
main .testimonials .quotes .quote.green blockquote { background: #B7ED8B; }
main .testimonials .quotes .quote blockquote q { font-family: stratos, sans-serif; font-size: 16px; line-height: 19px; margin-bottom: 1.5rem; }
main .testimonials .quotes .quote blockquote cite strong { font-weight: 400; font-variation-settings: "opsz" 500, "wght" 400; font-size: 16px; line-height: 22px; display: block; }
main .testimonials .quotes .quote blockquote cite span { padding: 2px 0 0; font-family: stratos, sans-serif; font-weight: 400; font-size: 13px; line-height: 16px; display: block; }
main .testimonials .quotes .slick-arrow { width: 42px; height: 13px; position: absolute; top: -32px; background: none; border: 0; -webkit-appearance: none; appearance: none; z-index: 50; }
main .testimonials .quotes .slick-arrow::before { width: 100%; height: 100%; position: absolute; top: 0; left: 0; background: url(images/arrow-brown.svg) no-repeat 50% 50% / contain; content: " "; display: block; }
main .testimonials .quotes .slick-prev { right: 64px; transform: rotate(180deg); }
main .testimonials .quotes .slick-next { right: 16px; }

main .testimonials.brown { color: #FFFFFF; background: #2F1F10; }
main .testimonials.brown .quotes { color: #4C331C; }
main .testimonials.brown .quotes .slick-arrow::before { background-image: url(images/arrow-white.svg); }

@media only screen and (min-width: 1024px) {
  main .testimonials { margin: 6rem 0 2rem; border-radius: 1.2rem; }
  main .about-principles + .testimonials { margin-top: -22.14vw; }
  main .testimonials header { padding: 2rem 2rem 0; }
  main .testimonials header h2 { font-size: var(--fluid-30); line-height: 1.167; }
  main .testimonials header p { width: 100%; margin: 0.5em 0 0; font-size: var(--fluid-69); line-height: 1.130; }
  main .testimonials .quotes .quote .wrap { padding: 4rem 0.26rem 6rem; }
  main .testimonials .quotes .quote.slick-center .wrap { padding-top: 8rem; padding-bottom: 4rem; }
  main .testimonials .quotes .quote blockquote { width: 48rem; height: 19rem; padding: 2.25rem; border-radius: 0.52vw; }
  main .testimonials .quotes .quote blockquote q { font-size: var(--fluid-25); line-height: 1.375; }
  main .testimonials .quotes .quote blockquote cite strong { font-size: var(--fluid-25); line-height: 1.364; }
  main .testimonials .quotes .quote blockquote cite span { padding: 0.111em 0 0; font-size: var(--fluid-18); line-height: 1.278; }
  main .testimonials .quotes .slick-arrow { width: 5rem; height: 1.51rem; top: -2.2rem; }
  main .testimonials .quotes .slick-prev { right: calc(50vw - 600px); }
  main .testimonials .quotes .slick-next { right: calc(50vw - 700px); }
}

.content { max-width: 1400px; margin-left: auto; margin-right: auto; }
.content-padding { padding-left: 1rem; padding-right: 1rem; }

@media only screen and (min-width: 1024px) {
  .content-padding { padding-left: 1.5rem; padding-right: 1.5rem; }
}

main .sectors-header { padding: 120px 0 133px; }
main .sectors-header-wrapper.blue { background: #6CC2C6; }
main .sectors-header-wrapper.orange { background: #F7BCA3; }
main .sectors-header-wrapper.yellow { background: #FAEB68 }
main .sectors-header-wrapper.green { background: #B7ED8B; }
main .sectors-header .overview p { font-family: stratos, sans-serif; font-weight: 500; font-size: 32px; line-height: 36px; }
main .sectors-header .text { padding: 70px 0 0; }
main .sectors-header .text h1 { font-family: stratos, sans-serif; font-weight: 800; font-size: 23px; line-height: 19px; text-transform: uppercase; }
main .sectors-header .text p { margin: 29px 0 0; font-size: 24px; line-height: 29px; }
main .sectors-header .text h1 + p { margin: 28px 0 0; }
main .sectors-header .explore { padding: 55px 0 0; }
main .sectors-header .explore h2 { margin: 0 22px 26px; font-family: stratos, sans-serif; font-weight: 600; font-size: 18px; line-height: 25px; }
main .sectors-header .explore ul { display: flex; flex-wrap: wrap; gap: 7px; }
main .sectors-header-wrapper.blue .explore ul li a.btn > span { background: #6CC2C6; }
main .sectors-header-wrapper.orange .explore ul li a.btn > span { background: #F7BCA3; }
main .sectors-header-wrapper.yellow .explore ul li a.btn > span { background: #FAEB68 }
main .sectors-header-wrapper.green .explore ul li a.btn > span { background: #B7ED8B; }

@media only screen and (min-width: 1024px) {
  main .sectors-header { padding: 12.5rem 0 13rem; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); grid-template-rows: 1fr auto; gap: 5rem 3rem; }
  main .sectors-header .overview { padding: 0 9rem; text-align: center; grid-column: 1 / span 2; grid-row: 1; }
  main .sectors-header .overview p { font-size: var(--fluid-80); line-height: 1.063; }
  main .sectors-header .text { padding: 1rem 0 0; text-align: right; grid-column: 2; grid-row: 2; align-self: end; }
  main .sectors-header .text h1 { font-size: var(--fluid-38); line-height: 0.842; }
  main .sectors-header .text p { margin: 1.200em 0 0; font-size: var(--fluid-40); line-height: 1.200; }
  main .sectors-header .text h1 + p { margin: 0.475em 0 0; }
  main .sectors-header .explore { padding: 0; align-self: end; }
  main .sectors-header .explore h2 { margin: 0 1.133em 1.600em; font-size: var(--fluid-30); line-height: 1.167; }
  main .sectors-header .explore ul { gap: 0.63vw; }
  main .sectors-header .explore ul li a.btn { font-size: var(--fluid-22); }
}

main .sectors-overview-1 { margin: -62px 4px 0; padding: 22px 12px 12px; background: #FFFFFF; border-radius: 10px; }
main .sectors-overview-1 .text p { margin: 22px 0 0; font-family: stratos, sans-serif; font-size: 17px; line-height: 22px; }
main .sectors-overview-1 .text p:first-child { margin: 0; }
main .sectors-overview-1 .text p strong { font-weight: 600; font-variation-settings: "opsz" 500, "wght" 600; }
main .sectors-overview-1 .text p em { font-weight: 500; }
main .sectors-overview-1 figure { padding: 85px 0 0; }
main .sectors-overview-1 figure img { border-radius: 10px; }

@media only screen and (min-width: 1024px) {
  main .sectors-overview-1 { margin: -5.2rem 0 0; padding: 0.63vw 0.63vw 0.63vw 2rem; border-radius: 1.2rem; display: grid; grid-template-columns: 1fr 38%; gap: 0 10rem; align-items: center; }
  main .sectors-overview-1 .text { padding: 2rem 0 0; }
  main .sectors-overview-1 .text p { margin: 1.167em 0 0; font-size: var(--fluid-30); line-height: 1.375; }
  main .sectors-overview-1 .text p:first-child { margin: 0; }
  main .sectors-overview-1 figure { padding: 0; }
  main .sectors-overview-1 figure img { border-radius: 1.2rem; }
}

main .sectors-overview-2 { margin: 4px 0 0; padding: 19px 12px 51px; background: #4C331C; border-radius: 10px; }
main .sectors-header-wrapper.blue ~ .sectors-overview-2-wrapper { color: #6CC2C6; }
main .sectors-header-wrapper.orange ~ .sectors-overview-2-wrapper { color: #F7BCA3; }
main .sectors-header-wrapper.yellow ~ .sectors-overview-2-wrapper { color: #FAEB68 }
main .sectors-header-wrapper.green ~ .sectors-overview-2-wrapper { color: #B7ED8B; }
main .sectors-overview-2 .text-1 p { margin: 29px 0 0; font-family: stratos, sans-serif; font-size: 29px; line-height: 29px; }
main .sectors-overview-2 .text-1 p:first-child { margin: 0; }
main .sectors-overview-2 .text-2 { padding: 120px 0 0; }
main .sectors-overview-2 .text-2 p { margin: 19px 0 0; font-size: 13px; line-height: 19px; }
main .sectors-overview-2 .text-2 p:first-child { margin: 0; }

@media only screen and (min-width: 1024px) {
  main .sectors-overview-2 { margin: 3rem 0 0; padding: 2.25rem 6rem 2.25rem 2rem; border-radius: 1.2rem; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 4rem;}
  main .sectors-overview-2 .text-1 p { margin: 1.066em 0 0; font-size: var(--fluid-61); line-height: 1.066; }
  main .sectors-overview-2 .text-1 p:first-child { margin: 0; }
  main .sectors-overview-2 .text-2 { padding-top: 0; }
  main .sectors-overview-2 .text-2 p { margin: 1.474em 0 0; font-size: var(--fluid-25); line-height: 1.8; }
  main .sectors-overview-2 .text-2 p:first-child { margin: 0; }
}

main .sectors-explore { margin: 4px 0; padding: 24px 12px 70px; border-radius: 10px; }
main .sectors-header-wrapper.blue ~ .sectors-explore-wrapper .sectors-explore { background: #6CC2C6; }
main .sectors-header-wrapper.orange ~ .sectors-explore-wrapper .sectors-explore { background: #F7BCA3; }
main .sectors-header-wrapper.yellow ~ .sectors-explore-wrapper .sectors-explore { background: #FAEB68 }
main .sectors-header-wrapper.green ~ .sectors-explore-wrapper .sectors-explore { background: #B7ED8B; }
main .sectors-explore h2 { margin: 0 0 98px; font-family: stratos, sans-serif; font-weight: 800; font-size: 27px; line-height: 22px; text-transform: uppercase; }
main .sectors-explore ul { display: flex; flex-wrap: wrap; gap: 7px; }
main .sectors-header-wrapper.blue ~ .sectors-explore-wrapper .sectors-explore ul li a.btn > span { background: #6CC2C6; }
main .sectors-header-wrapper.orange ~ .sectors-explore-wrapper .sectors-explore ul li a.btn > span { background: #F7BCA3; }
main .sectors-header-wrapper.yellow ~ .sectors-explore-wrapper .sectors-explore ul li a.btn > span { background: #FAEB68 }
main .sectors-header-wrapper.green ~ .sectors-explore-wrapper .sectors-explore ul li a.btn > span { background: #B7ED8B; }

@media only screen and (min-width: 1024px) {
  main .sectors-explore { margin: 3rem 0 0; padding: 2.25rem 2rem 2.25rem; border-radius: 1.2rem; }
  main .sectors-explore h2 { width: 60%; margin: 0 0 7rem; font-size: var(--fluid-102); line-height: 0.843; text-wrap: balance; }
  main .sectors-explore ul { flex-wrap: wrap; gap: 1.125rem; }
  main .sectors-explore ul li a.btn { font-size: var(--fluid-35); }
}

main .client-logos { padding: 100px 0 68px; }
main .client-logos header { padding: 0 12px; }
main .client-logos header h2 { font-family: stratos, sans-serif; font-weight: 500; font-size: 24px; line-height: 26px; text-wrap: balance; }
main .client-logos header p { margin: 23px 0 0; font-family: stratos, sans-serif; font-size: 18px; line-height: 25px; }
main .client-logos .logos .logo { padding: 34px 6px 0 0; }
main .client-logos .logos .logo .wrap { width: 190px; height: 112px; background: #FFFFFF; border-radius: 10px; text-align: center; display: flex; justify-content: center; align-items: center; }
main .client-logos .logos .logo .wrap img { width: 104px; height: 36px; object-fit: contain; }

@media only screen and (min-width: 1024px) {
  main .client-logos { padding: 8rem 0 8rem; }
  main .client-logos header { padding: 0 2rem; }
  main .client-logos header h2 { font-size: var(--fluid-55); line-height: 1.091; }
  main .client-logos header p { margin: 1.000em 0 0; font-size: var(--fluid-30); line-height: 1.167; }
  main .client-logos .logos .logo { padding: 4rem 0.5rem 0 0; }
  main .client-logos .logos .logo .wrap { width: 18.13vw; height: 6.68vw; border-radius: 0.52vw; }
  main .client-logos .logos .logo .wrap img { width: 8.75vw; height: 3.44vw; }
}

main .client-quotes header { padding: 76px 0 0; text-align: center; }
main .client-quotes header h2 { font-family: stratos, sans-serif; font-weight: 500; font-size: 24px; line-height: 26px; }
main .client-quotes .quotes .quote { width: calc( 100vw - 32px + 2px + 2px ); padding: 82px 2px 0; }
main .client-quotes .quotes .quote blockquote { height: 356px; padding: 20px 16px 32px; background: #FFFFFF; border-radius: 10px; text-align: center; display: flex; flex-direction: column; justify-content: center; transition: color 0.4s ease, background-color 0.4s ease; }
main .client-quotes .quotes .quote.blue.slick-active blockquote { background: #6CC2C6; }
main .client-quotes .quotes .quote.orange.slick-active blockquote { background: #F7BCA3; }
main .client-quotes .quotes .quote.yellow.slick-active blockquote { background: #FAEB68 }
main .client-quotes .quotes .quote.green.slick-active blockquote { background: #B7ED8B; }
main .client-quotes .quotes .quote blockquote q { margin-bottom: 2rem; font-family: stratos, sans-serif; font-size: 16px; line-height: 19px; }
main .client-quotes .quotes .quote blockquote cite strong { font-weight: 400; font-variation-settings: "opsz" 500, "wght" 400; font-size: 16px; line-height: 22px; display: block; }
main .client-quotes .quotes .quote blockquote cite span { padding: 2px 0 0; font-family: stratos, sans-serif; font-weight: 400; font-size: 13px; line-height: 16px; display: block; }
main .client-quotes .quotes .slick-arrow { width: 42px; height: 13px; position: absolute; top: 28px; background: none; border: 0; -webkit-appearance: none; appearance: none; z-index: 50; }
main .client-quotes .quotes .slick-arrow::before { width: 100%; height: 100%; position: absolute; top: 0; left: 0; background: url(images/arrow-brown.svg) no-repeat 50% 50% / contain; content: " "; display: block; }
main .client-quotes .quotes .slick-prev { left: 19px; transform: rotate(180deg); }
main .client-quotes .quotes .slick-next { right: 19px; }

@media only screen and (min-width: 1024px) {
  main .client-quotes header { padding: 8rem 2rem 0; text-align: left; }
  main .client-quotes header h2 { font-size: var(--fluid-55); line-height: 1.091; }
  main .client-quotes .quotes .slick-track { display: flex !important; }
  main .client-quotes .quotes .quote { width: 82.969vw; padding: 4rem 0.31vw 3rem; }
  main .client-quotes .quotes .quote blockquote { min-height: 30rem; padding: 1.88vw 12.71vw 1vw; border-radius: 0.52vw; }
  main .client-quotes .quotes .quote blockquote q { font-size: var(--fluid-35); line-height: 1.325; text-wrap: balance; }
  main .client-quotes .quotes .quote blockquote cite strong { font-size: var(--fluid-31); line-height: 1.387; }
  main .client-quotes .quotes .quote blockquote cite span { padding: 0.080em 0 0; font-size: var(--fluid-25); line-height: 1.280; }
  main .client-quotes .quotes .slick-arrow { width: 5.1vw; height: 1.51vw; top: calc(50% - 0.78vw); }
  main .client-quotes .quotes .slick-prev { left: 6.35vw; }
  main .client-quotes .quotes .slick-next { right: 6.35vw; }
}

main .standards { padding: 70px 0 0; }
main .standards header h2 { font-family: stratos, sans-serif; font-size: 29px; line-height: 32px; }
main .standards header p { margin: 38px 0 0; font-size: 24px; line-height: 29px; }
main .standards table { width: 100%; margin: 82px 0 0; font-size: 16px; line-height: 20px; }
main .standards table tr { border-top: 1px solid #4B331C; }
main .standards table tr th { padding: 11px 0 0; font-weight: 400; font-variation-settings: "opsz" 500, "wght" 400; }
main .standards table tr td { padding: 20px 0 38px; font-family: stratos, sans-serif; }

@media only screen and (max-width: 1023px) {
	main .standards table tr th,
	main .standards table tr td { display: block; }
}

@media only screen and (min-width: 1024px) {
  main .standards { padding: 5rem 2rem 6rem; }
  main .standards header { display: grid; grid-template-columns: 1fr 52.5%; gap: 10rem; }
  main .standards header h2 { font-size: var(--fluid-55); line-height: 1; }
  main .standards header p { margin: 0; font-size: var(--fluid-35); line-height: 1.286; }
  main .standards table { margin: 7rem 0 0; font-size: var(--fluid-22); line-height: 1.318; }
  main .standards table tr { border-top-width: 0.045em; }
  main .standards table tr th { width: 33.545em; }
  main .standards table tr th,
  main .standards table tr td { padding: 0.682em 0 0.909em; }
}

main .institutions { margin: 4px 0 0; padding: 43px 12px 79px; background: #FFFFFF; border-radius: 10px; }
main .institutions.blue { background: #6CC2C6; }
main .institutions.orange { background: #F7BCA3; }
main .institutions.yellow { background: #FAEB68 }
main .institutions.green { background: #B7ED8B; }
main .institutions h2 { font-size: 24px; line-height: 29px; }
main .institutions ul { margin: 51px 0 0; font-family: stratos, sans-serif; font-size: 16px; line-height: 23px; display: flex; flex-direction: column; gap: 23px; }
main .institutions ul li { padding: 0 0 0 55px; position: relative; display: block; }
main .institutions ul li::before { position: absolute; top: 0; left: 0; content: "—"; display: block; }

@media only screen and (min-width: 1024px) {
  main .institutions { margin: 0.63vw 0 0; padding: 8rem; border-radius: 1.2rem; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 5rem; }
  main .institutions h2 { font-size: var(--fluid-39); line-height: 1.286; }
  main .institutions ul { margin: 0; font-size: var(--fluid-22); line-height: 1.333; gap: 1.333em; }
  main .institutions ul li { padding: 0 0 0 2.619em; }
}
main .sector-header-wrapper { background: #4C331C; }
main .sector-header { padding: 242px 16px 52px; color: #FFFFFF; display: flex; flex-direction: column; }
main .sector-header h1 { font-family: stratos, sans-serif; font-weight: 800; font-size: 23px; line-height: 19px; text-transform: uppercase; }
main .sector-header > p { margin: 38px 0 0; font-family: stratos, sans-serif; font-weight: 500; font-size: 32px; line-height: 36px; }
main .sector-header .text { margin: auto 0 0; }
main .sector-header .text p { margin: 29px 0 0; font-size: 24px; line-height: 29px; }
main .sector-header .text p:first-child { margin: 0; }

@media only screen and (min-width: 1024px) {
  main .sector-header { padding: 15rem 10rem 8rem; }
  main .sector-header::before { width: 0.05vw; height: 100%; background: #F1EFE8; position: absolute; top: 0; left: 9.5rem; content: " "; display: block; }
  main .sector-header h1 { padding: 0 0.4rem; font-size: var(--fluid-38); line-height: 0.842; }
  main .sector-header > p { padding-left: 0.3rem; margin: 0.450em 0 0; font-size: var(--fluid-80); line-height: 1.063; text-wrap: balance; }
  main .sector-header .text { padding: 0 0.4rem; margin-top: 1.25rem; }
  main .sector-header .text p { margin: 1.200em 0 0; font-size: var(--fluid-40); line-height: 1.200; }
  main .sector-header .text p:first-child { margin: 0; }
}

@media only screen and (min-width: 1340px) {
  main .sector-header { padding: 15rem 20rem 9rem; }
  main .sector-header::before { left: 19.5rem; }
}

main .sector-overview { margin: 4px 4px 0; background: #FFFFFF; border-radius: 10px; }
main .sector-overview .text-1 { padding: 32px 12px 0; }
main .sector-overview .text-1 p { margin: 26px 0 0; font-family: stratos, sans-serif; font-weight: 500; font-size: 24px; line-height: 26px; }
main .sector-overview .text-1 p:first-child { margin: 0; }
main .sector-overview .text-2 { padding: 35px 12px 38px; }
main .sector-overview .text-2 p { margin: 19px 0 0; font-size: 13px; line-height: 19px; }
main .sector-overview .text-2 p:first-child { margin: 0; }
main .sector-overview .text-3 { padding: 31px 12px 62px; border: 1px solid #4C331C; border-width: 1px 0 0; }
main .sector-overview .text-3:first-child { border-width: 0; }
main .sector-overview .text-3 h2 { font-family: stratos, sans-serif; font-weight: 500; font-size: 24px; line-height: 26px; text-wrap: balance; }
main .sector-overview .text-3 .text { padding: 32px 0 0; }
main .sector-overview .text-3 .text p { margin: 19px 0 0; font-size: 13px; line-height: 19px; }
main .sector-overview .text-3 .text p:first-child { margin: 0; }

@media only screen and (min-width: 1024px) {
  main .sector-overview { margin: 6rem 0 0; border-radius: 1.2rem; }
	main .sector-overview .text-1 { padding: 2rem 20.94vw 0 2rem; }
	main .sector-overview .text-1 p { margin: 1.066em 0 0; font-size: var(--fluid-61); line-height: 1.066; }
	main .sector-overview .text-1 p:first-child { margin: 0; }
	main .sector-overview .text-2 { padding: 13.8vw 14.58vw 9.22vw 53.02vw; }
	main .sector-overview .text-2 p { margin: 1.474em 0 0; font-size: var(--fluid-19); line-height: 1.474; }
	main .sector-overview .text-2 p:first-child { margin: 0; }
	main .sector-overview .text-3 { padding: 6rem 14.58rem 6rem 2rem; border-width: 0.05vw 0 0; display: grid; grid-template-columns: 1fr 46%; gap: 13rem; }
	main .sector-overview .text-3:first-child { border-width: 0; }
	main .sector-overview .text-3 h2 { font-size: var(--fluid-55); line-height: 1; }
	main .sector-overview .text-3 .text { padding: 0; }
	main .sector-overview .text-3 .text p { margin: 1.474em 0 0; font-size: var(--fluid-19); line-height: 1.474; }
	main .sector-overview .text-3 .text p:first-child { margin: 0; }
}

main .sector-disciplines { margin: 4px 4px 0; padding: 25px 12px 63px; background: var(--highlight); border-radius: 10px; }
main .sector-disciplines .header h2 { font-family: stratos, sans-serif; font-weight: 800; font-size: 27px; line-height: 22px; text-transform: uppercase; }
main .sector-disciplines .header p { margin: 29px 0 0; font-size: 24px; line-height: 29px; }
main .sector-disciplines .header h2 + p { margin: 42px 0 0; }
main .sector-disciplines .list { padding: 63px 0 0; }
main .sector-disciplines .list h3 { margin: 54px 0 0; font-family: stratos, sans-serif; font-weight: 500; font-size: 13px; line-height: 19px; }
main .sector-disciplines .list h3:first-child { margin: 0; }
main .sector-disciplines .list p,
main .sector-disciplines .list ul { margin: 19px 0 0; font-size: 13px; line-height: 19px; }
main .sector-disciplines .list ul { display: flex; flex-direction: column; gap: 19px; }
main .sector-disciplines .list ul li { padding: 0 0 0 2.619em; position: relative; }
main .sector-disciplines .list ul li::before { position: absolute; top: 0; left: 0; content: "—"; display: block; }
main .sector-disciplines .list h3 + p,
main .sector-disciplines .list h3 + ul { margin: 14px 0 0; }

@media only screen and (min-width: 1024px) {
  main .sector-disciplines { margin: 3rem 0 0; padding: 7rem 10rem 7rem 2rem; border-radius: 1.2rem; display: flex; justify-content: space-between; }
	main .sector-disciplines::before { width: 0.05vw; height: 100%; background: #4C331C; position: absolute; top: 0; left: 46%; content: " "; display: block; }
	main .sector-disciplines .header { width: 46%; }
	main .sector-disciplines .header h2 { font-size: var(--fluid-45); line-height: 1.1; text-wrap: balance; }
	main .sector-disciplines .header p { margin: 1.196em 0 0; font-size: var(--fluid-46); line-height: 1.196; }
	main .sector-disciplines .header h2 + p { margin: 1.130em 0 0; }
	main .sector-disciplines .list { width: 37%; padding: 0; }
	main .sector-disciplines .list h3 { margin: 2.947em 0 0; font-size: var(--fluid-19); line-height: 1.316; }
	main .sector-disciplines .list h3:first-child { margin: 0; }
	main .sector-disciplines .list p,
	main .sector-disciplines .list ul { margin: 1.316em 0 0; font-size: var(--fluid-19); line-height: 1.316; }
	main .sector-disciplines .list ul { gap: 1.316em; }
	main .sector-disciplines .list h3 + p,
	main .sector-disciplines .list h3 + ul { margin: 0.895em 0 0; }
	main .sector-disciplines .list p:first-child { margin-top: 0;}
}

main .services-header { padding: 4px 4px 0; }
main .services-header header { padding: 110px 12px 38px; color: #FFFFFF; background: #4C331C; border-radius: 10px; }
main .services-header header h1 { font-family: stratos, sans-serif; font-weight: 800; font-size: 23px; line-height: 19px; text-transform: uppercase; }
main .services-header header p { margin: 84px 0 0; font-family: stratos, sans-serif; font-weight: 500; font-size: 29px; line-height: 35px; }
main .services-header .text { margin: 4px 0 0; padding: 16px 12px 12px; background: #FFFFFF; border-radius: 10px; }
main .services-header .text p { margin: 20px 0 0; font-size: 17px; line-height: 20px; }
main .services-header .text p:first-child { margin-top: 0; }
main .services-header .text ul { margin: 52px 0 0; }
main .services-header figure { margin: 4px 0 0; }
main .services-header figure img { height: 267px; border-radius: 10px; object-fit: cover; }

@media only screen and (min-width: 1024px) {
  main .services-header { padding: 0.63vw 0 0; display: grid; grid-template-columns: 60% 1fr; gap: 0.63vw; }
	main .services-header header { padding: 13rem 2.25rem 2rem; border-radius: 1.2rem; display: flex; flex-direction: column; justify-content: space-between; grid-column: 1; grid-row: 1; }
	main .services-header header h1 { font-size: var(--fluid-38); line-height: 0.842; margin-bottom: 6rem; }
	main .services-header header p { margin: 0; font-size: var(--fluid-80); line-height: 1.063; }
	main .services-header .text { margin: 0; padding: 1.6rem 2rem 2rem; border-radius: 1.2rem; display: flex; flex-direction: column; grid-column: 1; grid-row: 2; }
	main .services-header .text p { margin: 1.206em 0 2rem; font-size: var(--fluid-34); line-height: 1.206; }
	main .services-header .text ul { margin: auto 0 0; }
	main .services-header figure { margin: 0; grid-column: 2; grid-row: 1 / span 2; }
	main .services-header figure img { height: 100%; border-radius: 1.2rem; }
}

main .services-overview { margin: 4px 4px 0; padding: 18px 12px 64px; border-radius: 10px; }
main .services-header.blue ~ .services-overview { background: #6CC2C6; }
main .services-header.orange ~ .services-overview { background: #F7BCA3; }
main .services-header.yellow ~ .services-overview { background: #FAEB68 }
main .services-header.green ~ .services-overview { background: #B7ED8B; }
main .services-overview .text-1 p { margin: 26px 0 0; font-family: stratos, sans-serif; font-weight: 500; font-size: 24px; line-height: 26px; }
main .services-overview .text-1 p:first-child { margin: 0; }
main .services-overview .text-2 { padding: 40px 0 0; }
main .services-overview .text-2 p { margin: 19px 0 0; font-family: stratos, sans-serif; font-size: 13px; line-height: 19px; }
main .services-overview .text-2 p:first-child { margin: 0; }

@media only screen and (min-width: 1024px) {
  main .services-overview { margin: 0; padding: 7rem 8rem 6rem 2rem; border-radius: 1.2rem; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 7rem; }
	main .services-overview .text-1 { padding: 0; }
	main .services-overview .text-1 p { margin: 1.066em 0 0; font-size: var(--fluid-61); line-height: 1.066; }
	main .services-overview .text-1 p:first-child { margin: 0; }
	main .services-overview .text-2 { padding: 0; }
	main .services-overview .text-2 p { margin: 1.167em 0 0; font-size: var(--fluid-30); line-height: 1.167; }
	main .services-overview .text-2 p:first-child { margin: 0; }
}

main .services-offering { padding: 72px 16px 88px; }
main .services-offering h2 { font-family: stratos, sans-serif; font-weight: 800; font-size: 23px; line-height: 19px; text-transform: uppercase; }
main .services-offering p { margin: 29px 0 0; font-size: 24px; line-height: 29px; }
main .services-offering h2 + p { margin: 39px 0 0; }

@media only screen and (min-width: 1024px) {
  main .services-offering { padding: 16rem 2rem 16rem 25rem; }
	main .services-offering::before { width: 0.05vw; height: 100%; background: #4C331C; position: absolute; top: 0; left: 23rem; content: " "; display: block; }
	main .services-offering h2 { font-size: var(--fluid-38); line-height: 0.842em; }
	main .services-offering p { margin: 1.196em 0 0; font-size: var(--fluid-46); line-height: 1.196; }
	main .services-offering h2 + p { margin: 1.130em 0 0; }
}

main .languages-header { padding: 137px 16px 78px; }
main .languages-header figure { padding: 0 0 47px; text-align: center; }
main .languages-header figure img { width: auto; height: 93px; }
main .languages-header h1 { font-family: stratos, sans-serif; font-weight: 500; font-size: 45px; line-height: 40px; text-align: center; }
main .languages-header .text-1 { padding: 64px 0 0; }
main .languages-header .text-1 p { margin: 21px 0 0; font-size: 18px; line-height: 21px; }
main .languages-header .text-1 p:first-child { margin: 0; }
main .languages-header .text-1 p strong { font-family: stratos, sans-serif; font-weight: 400; }
main .languages-header .text-1 ul { margin: 52px 0 0; }
main .languages-header .text-1 ul li a.btn > span { background: #F1EFE8; }
main .languages-header .text-2 { padding: 82px 0 0; }
main .languages-header .text-2 p { font-family: stratos, sans-serif; margin: 23px 0 0; font-size: 20px; line-height: 23px; }
main .languages-header .text-2 p:first-child { margin: 0; }
main .languages-header .text-3 { padding: 25px 0 0; }
main .languages-header .text-3 p { margin: 19px 0 0; font-size: 13px; line-height: 19px; }
main .languages-header .text-3 p:first-child { margin: 0; }

@media only screen and (min-width: 1024px) {
  main .languages-header { padding: 12rem 0 11rem; display: grid; grid-template-columns: 46% 1fr; }
	main .languages-header figure { padding: 5.83rem 0 0 5rem; text-align: left; grid-column: 1; grid-row: 2; }
	main .languages-header figure img { height: 15rem; }
	main .languages-header h1 { font-size: var(--fluid-280); line-height: 1; grid-column: 1 / span 2; grid-row: 1; }
	main .languages-header .text-1 { padding: 5.42rem 8rem 0 0; grid-column: 2; grid-row: 2; }
	main .languages-header .text-1 p { margin: 1.206em 0 0; font-size: var(--fluid-34); line-height: 1.206; }
	main .languages-header .text-1 p:first-child { margin: 0; }
	main .languages-header .text-1 ul { margin: 5rem 0 0; }
	main .languages-header .text-2 { padding: 8rem 6rem 0 3.44rem; grid-column: 1; grid-row: 3; }
	main .languages-header .text-2 p { margin: 1.167em 0 0; font-size: var(--fluid-30); line-height: 1.167; }
	main .languages-header .text-2 p:first-child { margin: 0; }
	main .languages-header .text-3 { padding: 8rem 15rem 0 0; }
	main .languages-header .text-3 p { margin: 1.474em 0 0; font-size: var(--fluid-19); line-height: 1.474; }
	main .languages-header .text-3 p:first-child { margin: 0; }
}

main .languages .nav { padding: 0 0 20px; overflow: auto; }
main .languages .nav ul { display: flex; gap: 1px; white-space: nowrap; }
main .languages .nav ul li a { width: 47px; height: 44px; font-family: stratos, sans-serif; font-weight: 800; font-size: 24px; background: #FFFFFF; border-radius: 10px; text-align: center; display: inline-flex; justify-content: center; align-items: center; }
main .languages .nav ul li.on a { color: #FFFFFF; background: #4C331C; }
main .languages .panels { margin: 0 4px; padding: 32px 0 10px; border: 1px solid #4C331C; border-width: 1px 0 0; }
main .languages .panels .panel .box { padding: 38px 12px 62px; background: #FFFFFF; border-radius: 10px; }
main .languages .panels .panel + .panel { display: none; }
main .languages .panels .panel h2 { margin: 0 0 18px; font-family: stratos, sans-serif; font-weight: 800; font-size: 70px; }
main .languages .panels .panel ul li a { padding: 18px 0 12px; border: 1px solid #4C331C; border-width: 1px 0 0; display: grid; grid-template-columns: 1fr auto; gap: 10px; }
main .languages .panels .panel ul li:first-child a { border-width: 0; }
main .languages .panels .panel ul li a h3 { font-family: stratos, sans-serif; font-size: 19px; line-height: 22px; }

@media only screen and (min-width: 1024px) {
  main .languages { padding: 0; }
	main .languages .nav { padding: 0 0 2rem; overflow: visible; }
	main .languages .nav ul { display: grid; grid-template-columns: repeat(26, 1fr); gap: 0.05vw; }
	main .languages .nav ul li a { width: auto; height: 1.700em; font-size: var(--fluid-40); border-radius: 0.250em; display: flex; }
	main .languages .panels { margin: 0; padding: 2rem 0 8rem; border-width: 0.05vw 0 0; }
	main .languages .panels .panel .box { padding: 4.48rem 2.19rem 4.58rem 2rem; border-radius: 1.2rem; display: grid; grid-template-columns: 1fr 70%; gap: 6rem; }
	main .languages .panels .panel h2 { margin: 0; font-size: var(--fluid-283); text-align: center; }
	main .languages .panels .panel ul li a { padding: 1.25rem 0 1.46rem; border-width: 0.05vw 0 0; gap: 1rem; }
	main .languages .panels .panel ul li:first-child a { border-width: 0; }
	main .languages .panels .panel ul li a h3 { font-size: var(--fluid-38); line-height: 1; }
}

main .language-details-wrapper { background: #4C331C; }
main .language-details { padding: 118px 0 71px; color: var(--highlight);  }
main .language-details h1 { padding: 0 12px; font-family: stratos, sans-serif; font-weight: 800; font-size: 42px; line-height: 36px; text-transform: uppercase; }
main .language-details .text { padding: 54px 4px 50px; border: 1px solid var(--highlight); border-width: 0; }
main .language-details .text p { margin: 29px 0 0; font-size: 24px; line-height: 29px; }
main .language-details .text p:first-child { margin: 0; }
main .language-details .text ul { margin: 60px 0 0; }
main .language-details .text ul li a.btn > span { color: var(--highlight); background: #4C331C; border-color: var(--highlight); }
main .language-details .text ul li a.btn svg g { stroke: var(--highlight); }
main .language-details .text ul li a.btn::before { background: var(--highlight); }
main .language-details .info { padding: 66px 4px 0; border: 1px solid var(--highlight); border-width: 1px 0 0; }
main .language-details .info ul { font-size: 13px; line-height: 17px; display: grid; grid-template-columns: 1fr 1fr; grid-template-rows: auto auto auto auto; gap: 17px; }
main .language-details .info ul li h2 { font-family: stratos, sans-serif; font-weight: 500; }
main .language-details .info ul li:nth-of-type(1),
main .language-details .info ul li:nth-of-type(2),
main .language-details .info ul li:nth-of-type(3),
main .language-details .info ul li:nth-of-type(4) { grid-column: 1; }
main .language-details .info ul li:nth-of-type(5) { grid-column: 2; grid-row: 1; }
main .language-details .info ul li:nth-of-type(6) { grid-column: 2; grid-row: 2; }
main .language-details .info ul li:nth-of-type(7) { grid-column: 2; grid-row: 3; }

@media only screen and (min-width: 1024px) {
  main .language-details { padding: 15rem 0 0px; display: grid; grid-template-columns: 60% 1fr; gap: 4rem 0; }
	main .language-details h1 { padding: 0 0.735em 0 0; font-size: var(--fluid-136); line-height: 0.838; grid-column: span 2; }
	main .language-details .text { padding: 3rem 12rem 6rem 0; border-width: 0.05vw 0 0; }
	main .language-details .text p { margin: 1.200em 0 0; font-size: var(--fluid-40); line-height: 1.200; }
	main .language-details .text p:first-child { margin: 0; }
	main .language-details .text ul { margin: 3rem 0 0; }
	main .language-details .info { padding: 3rem 1.5rem; border-width: 0.05vw 0 0 0.05vw; }
	main .language-details .info ul { font-size: var(--fluid-22); line-height: 1.318; gap: 1.318em; }
	main .language-details .info ul li:nth-of-type(6) { grid-row: 2 / span 2; }
}

main .language-overview { margin: 4px 4px 0; padding: 45px 12px 66px; background: #FFFFFF; border-radius: 10px; }
main .language-overview h2 { font-family: stratos, sans-serif; font-size: 16px; line-height: 17px; }
main .language-overview figure { display: none; }
main .language-overview .text-1 { padding: 22px 0 0; }
main .language-overview .text-1 p { margin: 25px 0 0; font-family: stratos, sans-serif; font-weight: 500; font-size: 18px; line-height: 25px; }
main .language-overview .text-1 p:first-child { margin: 0; }
main .language-overview .text-2 { padding: 35px 0 0; }
main .language-overview .text-2 p { margin: 19px 0 0; font-size: 13px; line-height: 19px; }
main .language-overview .text-2 p:first-child { margin: 0; }

@media only screen and (min-width: 1024px) {
  main .language-overview { margin: 6rem 0 0; padding: 6rem 8rem 6rem 2rem; border-radius: 1.2rem; display: flex; column-gap: 6rem; justify-content: center; }
	main .language-overview-grid { width: 50%; }
	main .language-overview h2 { font-size: var(--fluid-35); line-height: 1; }
	main .language-overview figure { display: block; }
	main .language-overview figure img { width: 14.48rem; height: auto; }
	main .language-overview .text-1 { padding-top: 2rem; }
	main .language-overview .text-1 p { margin: 1.222em 0 0; font-size: var(--fluid-45); line-height: 1.222; }
	main .language-overview .text-1 p:first-child { margin: 0; }
	main .language-overview .text-2 { padding: 2rem 0 0 0; }
	main .language-overview .text-2 p { margin: 1.474em 0 0; font-size: var(--fluid-19); line-height: 1.474; }
	main .language-overview .text-2 p:first-child { margin: 0; }
}

main .language-services { margin: 4px 4px 0; padding: 19px 12px 65px; background: var(--highlight); border-radius: 10px; }
main .language-services h2 { font-family: stratos, sans-serif; font-weight: 500; font-size: 29px; line-height: 1; text-wrap: balance; }
main .language-services p { margin: 74px 0 0; font-size: 17px; line-height: 20px; }

@media only screen and (min-width: 1024px) {
  main .language-services { margin: 3rem 0 0; padding: 5.5rem 2rem 6rem; border-radius: 1.2rem; }
	main .language-services h2 {margin: 0 auto; width: 50%; font-size: var(--fluid-80); line-height: 1.063; text-align: center; }
	main .language-services p { margin: 2.5rem 0 0; font-size: var(--fluid-40); line-height: 1.125; text-align: center; }
}

main .language-fact { margin: 4px 4px 0; padding: 19px 12px 62px; color: var(--highlight); background: #4C331C; border-radius: 10px; text-align: center; }
main .language-fact h2 { font-family: stratos, sans-serif; font-weight: 500; font-size: 29px; line-height: 1; text-wrap: balance; }
main .language-fact p { margin: 130px 0 0; font-size: 24px; line-height: 29px; }

@media only screen and (min-width: 1024px) {
  main .language-fact { margin: 3rem 0 0; padding: 5.5rem 15.63rem 6rem; border-radius: 1.2rem; }
	main .language-fact h2 { font-size: var(--fluid-80); line-height: 1.063; }
	main .language-fact p { margin: 2.5rem 0 0; font-size: var(--fluid-39); line-height: 1.231; text-wrap: balance; }
}

main  .text-overview { padding: 120px 16px 58px; }
main  .text-overview h1 { font-family: stratos, sans-serif; font-weight: 800; font-size: 23px; line-height: 19px; text-transform: uppercase; }
main  .text-overview .text-1 { padding: 70px 0 0; }
main  .text-overview .text-1 p { margin: 29px 0 0; font-size: 24px; line-height: 29px; }
main  .text-overview .text-1 p:first-child { margin: 0; }
main  .text-overview .text-2 { padding: 56px 0 0; }
main  .text-overview .text-2 p { margin: 19px 0 0; font-family: stratos, sans-serif; font-size: 13px; line-height: 19px; }
main  .text-overview .text-2 p:first-child { margin: 0; }
main  .text-overview .text-2 h3 { margin: 44px 0 0; font-family: stratos, sans-serif; font-weight: 500; font-size: 13px; line-height: 19px; }
main  .text-overview .text-2 ul { margin: 18px 0 0; }
main  .text-overview .text-2 ul li a.btn > span { background: var(--background); }

@media only screen and (min-width: 1024px) {
  main .text-overview { padding: 13rem 2rem 7rem; }
	main .text-overview h1 { max-width: 50rem; margin: 0 auto; font-size: var(--fluid-69); line-height: 0.9; text-align: center; text-wrap: balance; }
  main .text-overview-grid { padding-top: 6rem; display: grid; gap: 7rem; grid-template-columns: repeat(2, minmax(0, 1fr)); }
	main .text-overview .text-1 { padding: 0; }
	main .text-overview .text-1 p { margin: 1.196em 0 0; font-size: var(--fluid-46); line-height: 1.196; }
	main .text-overview .text-1 p:first-child { margin: 0; }
	main .text-overview .text-2 { padding: 0.5rem 0 0; }
	main .text-overview .text-2 p { margin: 1.227em 0 0; font-size: var(--fluid-22); line-height: 1.227; }
	main .text-overview .text-2 p:first-child { margin: 0; }
	main .text-overview .text-2 h3 { margin: 1.909em 0 0; font-size: var(--fluid-22); line-height: 1.227; }
	main .text-overview .text-2 ul { margin: 1.56vw 0 0; }
}



main  .text-blocks { background: #FFFFFF; border-radius: 10px; }
main  .text-blocks .block { padding: 31px 12px 40px; border-top: 1px solid #4C331C; }
main  .text-blocks .block:first-child { border-top-width: 0; }
main  .text-blocks .block h2 { font-family: stratos, sans-serif; font-weight: 500; font-size: 24px; line-height: 1.083; text-wrap: balance; }
main  .text-blocks .block .text { padding: 32px 0 0; }
main  .text-blocks .block .text:first-child { padding: 0; }
main  .text-blocks .block .text h3 { margin: 56px 0 0; font-family: stratos, sans-serif; font-weight: 500; font-size: 13px; line-height: 19px; }
main  .text-blocks .block .text p,
main  .text-blocks .block .text ul { margin: 19px 0 0; font-size: 13px; line-height: 19px; }
main  .text-blocks .block .text ul li { padding: 0 0 0 34px; position: relative; display: block; }
main  .text-blocks .block .text ul li::before { position: absolute; top: 0; left: 0; content: "—"; display: block; }
main  .text-blocks .block .text h3 + p,
main  .text-blocks .block .text h3 + ul { margin: 14px 0 0; }
main  .text-blocks .block .text p:first-child,
main  .text-blocks .block .text ul:first-child { margin: 0; }
main .text-blocks .block .text h3:not(:first-child) { margin-top: 1.5em; }


@media only screen and (min-width: 1024px) {
  main .text-blocks { margin: 0; border-radius: 1.2rem; }
	main .text-blocks .block { padding: 6rem 8rem 7rem 2rem; border-top-width: 0.05vw; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 7rem; }
	main .text-blocks .block:first-child { border-top-width: 0; }
	main .text-blocks .block h2 { font-size: var(--fluid-55); line-height: 1; }
	main .text-blocks .block .text { padding: 0.5rem 0 0; grid-column: 2; }
	main .text-blocks .block .text h3 { margin: 0; font-size: var(--fluid-19); line-height: 1.316; }
	main .text-blocks .block .text p,
	main .text-blocks .block .text ul { margin: 1.474em 0 0; font-size: var(--fluid-19); line-height: 1.474; }
	main .text-blocks .block .text ul li { padding: 0 0 0 1.474em; }
	main .text-blocks .block .text h3 + p,
	main .text-blocks .block .text h3 + ul { margin: 0.474em 0 0; }
	main .text-blocks .block .text p:first-child { margin: 0; }
}

main .technology-header-wrapper { background: #6CC2C6; }
main .technology-header { padding: 118px 16px 104px; text-align: center; }
main .technology-header h1 { border: 0; clip: rect(0 0 0 0); height: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute; width: 1px; white-space: nowrap; }
main .technology-header .text-1 p { margin: 22px 0 0; font-size: 18px; line-height: 22px; }
main .technology-header .text-1 p:first-child { margin: 0; }
main .technology-header .text-1 p strong { font-family: stratos, sans-serif; font-weight: 400; }
main .technology-header figure { margin: 35px 0 0; }
main .technology-header figure img { width: auto; height: 128px; }
main .technology-header .text-2 { margin: 22px 0 0; }
main .technology-header .text-2 p { margin: 40px 0 0; font-family: stratos, sans-serif; font-weight: 500; font-size: 35px; line-height: 40px; }
main .technology-header .text-2 p:first-child { margin: 0; }

@media only screen and (min-width: 1024px) {
	main .technology-header { padding: 178px 48px 202px; }
	main .technology-header .text-1 { padding: 0 245px; }
	main .technology-header .text-1 p { margin: 1.206em 0 0; font-size: 34px; line-height: 1.206; }
	main .technology-header .text-1 p:first-child { margin: 0; }
	main .technology-header figure { margin: 58px 0 0; }
	main .technology-header figure img { height: 338px; }
	main .technology-header .text-2 { margin: 52px 0 0; }
	main .technology-header .text-2 p { margin: 1.091em 0 0; font-size: 110px; line-height: 1.091; }
	main .technology-header .text-2 p:first-child { margin: 0; }
}

@media only screen and (min-width: 1024px) {
	main .technology-header { padding: 12.5rem 1rem 13rem; }
	main .technology-header .text-1 { padding: 0 6rem; }
	main .technology-header .text-1 p { font-size: var(--fluid-34); }
	main .technology-header figure { margin: 3rem 0 0; }
	main .technology-header figure img { height: 18rem; }
	main .technology-header .text-2 { margin: 3rem 0 0; }
	main .technology-header .text-2 p { font-size: var(--fluid-110); }
}

main .technology-overview { margin: -59px 4px 0; padding: 39px 12px 85px; background: #FFFFFF; border-radius: 10px; text-align: center; }
main .technology-overview .text p { margin: 22px 0 0; font-family: stratos, sans-serif; font-size: 17px; line-height: 22px; }
main .technology-overview .text p:first-child { margin: 0; }
main .technology-overview .text p strong { font-weight: 500; font-variation-settings: "opsz" 500, "wght" 500; }
main .technology-overview ul { margin: 48px 0 0; }

@media only screen and (min-width: 1024px) {
  main .technology-overview { margin: -5.2rem 0 0; padding: 8rem 24%; border-radius: 1.2rem; }
	main .technology-overview .text p { margin: 1.167em 0 0; font-size: var(--fluid-30); line-height: 1.167; }
	main .technology-overview .text p:first-child { margin: 0; }
	main .technology-overview ul { margin: 5rem 0 0; }
}

main .text-listing { margin: 8px 0 0; }
main .text-listing header { padding: 50px 12px 39px; }
main .text-listing header h2 { font-family: stratos, sans-serif; font-weight: 500; font-size: 27px; line-height: 33px; }
main .text-listing ul { display: grid; grid-template-columns: 1fr; gap: 4px; }
main .text-listing ul li a { padding: 15px 12px 12px; background: #FFFFFF; border-radius: 10px; display: grid; grid-template-columns: 1fr; gap: 15px; }
main .text-listing ul li a h2 { min-height: 66px; font-family: stratos, sans-serif; font-weight: 500; font-size: 18px; line-height: 22px; text-wrap: balance; }
main .text-listing ul li a span.btn { justify-self: start; }

@media only screen and (min-width: 1024px) {
  main .text-listing { margin: 0; }
  main > .services-offering + .text-listing { margin-top: 0; }
  main .text-listing header { padding: 7rem 2rem 4rem; }
  main .text-listing header h2 { font-size: var(--fluid-55); line-height: 1.091; }
  main .text-listing ul { grid-template-columns: 1fr 1fr; gap: 0.675rem; }
  main .text-listing ul li a { padding: 2rem 2rem 2rem 2rem; border-radius: 1.2rem; grid-template-columns: 1fr auto; gap: 2.5rem; }
  main .text-listing ul li a h2 { min-height: 3.333em; font-size: var(--fluid-35); line-height: 1.111; }
  main .text-listing ul li a span.btn { align-self: start; }
	main .technology-overview-wrapper + .text-listing-wrapper .text-listing { padding-top: 7rem;}
}

main .insights-header { padding: 4px 4px 0; display: grid; grid-template-columns: 1fr; gap: 4px; }
main .insights-header .overview { padding: 104px 12px 75px; border-radius: 10px; text-align: center; }
main .insights-header .overview header h1,
main .insights-header .overview header h2 { font-family: stratos, sans-serif; font-weight: 800; font-size: 41px; line-height: 33px; text-transform: uppercase; }
main .insights-header .overview .text { padding: 55px 0 0; }
main .insights-header .overview .text p { margin: 0 0 21px; font-family: stratos, sans-serif; font-weight: 600; font-size: 17px; line-height: 22px; }
main .insights-header .overview .text h1,
main .insights-header .overview .text h2 { font-family: stratos, sans-serif; font-weight: 500; font-size: 32px; line-height: 36px; }
main .insights-header .overview .text ul { margin: 60px 0 0; }
main .insights-header .filter { padding: 28px 14px 47px; color: #FFFFFF; background: #4C331C; border-radius: 10px; text-align: center; }
main .insights-header .filter h2 { margin: 0 0 35px; font-family: stratos, sans-serif; font-weight: 600; font-size: 17px; line-height: 22px; }
main .insights-header .filter ul { text-align: left; display: flex; flex-wrap: wrap; gap: 7px; }
main .insights-header .filter ul li a.btn > span { color: #FFFFFF; background: #4C331C; border-color: #FFFFFF; }
main .insights-header .filter ul li a.btn svg g { stroke: #FFFFFF; }
main .insights-header .filter ul li a.btn::before { background: #FFFFFF; }
main .insights-header .filter ul li.on a.btn > span { color: #4C331C; background: #FFFFFF; border-color: #FFFFFF; }
main .insights-header .filter ul li.on a.btn svg g { stroke: #4C331C; }
main .insights-header .filter ul li.on a.btn::before { background: #FFFFFF; }

main .insights-header.blue .overview { background: #6CC2C6; }
main .insights-header.orange .overview { background: #F7BCA3; }
main .insights-header.yellow .overview { background: #FAEB68 }
main .insights-header.green .overview { background: #B7ED8B; }
main .insights-header.blue .overview .text ul li a.btn > span { background: #6CC2C6; }
main .insights-header.orange .overview .text ul li a.btn > span { background: #F7BCA3; }
main .insights-header.yellow .overview .text ul li a.btn > span { background: #FAEB68 }
main .insights-header.green .overview .text ul li a.btn > span { background: #B7ED8B; }

@media only screen and (min-width: 1024px) {
  main .insights-header { padding: 0.63vw 0 0; grid-template-columns: 60% 1fr; gap: 0.75rem; }
  main .insights-header .overview { min-height: unset; padding: 0 6rem 8rem; border-radius: 1.2rem; }
  main .insights-header .overview header { position: absolute; top: 2rem; left: 2rem; }
  main .insights-header .overview header h1,
  main .insights-header .overview header h2 { font-size: var(--fluid-136); line-height: 0.838; }
  main .insights-header .overview .text { padding: 18rem 0 0; }
  main .insights-header .overview .text p { margin: 0 0 1.8em; font-size: var(--fluid-30); line-height: 1; }
  main .insights-header .overview .text h1,
  main .insights-header .overview .text h2 { font-size: var(--fluid-61); line-height: 1.066; }
  main .insights-header .overview .text ul { margin: 4rem 0 0; }
  main .insights-header .overview:only-child { min-height: unset; padding: 0 26rem 8rem; grid-column: span 2; }
  main .insights-header .overview:only-child .text { padding: 13rem 0 0; }
  main .insights-header .filter { padding: 2rem; border-radius: 1.2rem; text-align: right; display: flex; flex-direction: column; justify-content: flex-end; }
  main .insights-header .filter h2 { margin: 0 0 1.667em; font-size: var(--fluid-30); line-height: 1; }
  main .insights-header .filter ul { display: flex; justify-content: flex-end; gap: 0.63rem; }
}

main .insights-list { padding: 4px 0 0; display: grid; grid-template-columns: 1fr; gap: 4px; }
main .insights-list header { padding: 0 12px 12px; }
main .insights-list header h2 { font-family: stratos, sans-serif; font-weight: 500; font-size: 24px; line-height: 26px; }
main .insights-list .article a { min-height: 346px; padding: 23px 12px 14px; background: #FFFFFF; border-radius: 10px; position: relative; display: flex; flex-direction: column; }
main .insights-list .article a p.sector { margin: 0 0 18px; font-family: stratos, sans-serif; font-size: 16px; line-height: 20px; }
main .insights-list .article a h2 { font-family: stratos, sans-serif; font-weight: 500; font-size: 20px; line-height: 23px; }
main .insights-list .article a p.excerpt { margin: 37px 0 0; font-size: 13px; line-height: 19px; }
main .insights-list .article a span.btn { margin: auto 0 0; align-self: start; }
main .insights-list .paging { padding: 88px 0 78px; border-bottom: 1px solid #4C331C; }
main .insights-list .paging ul { display: grid; grid-template-columns: 1fr 1fr; gap: 40px 0; }
main .insights-list .paging ul li:nth-child(2) { font-size: 24px; text-align: center; grid-column: 1 / span 2; grid-row: 1; }
main .insights-list .paging ul li:nth-child(1) { grid-column: 1; grid-row: 2; }
main .insights-list .paging ul li:nth-child(3) { grid-column: 2; grid-row: 2; justify-self: end; }
main .insights-list .paging ul li a.btn > span { background: #F1EFE8; }
main .insights-list ul.all li a { padding: 22px 12px; font-family: stratos, sans-serif; font-weight: 500; font-size: 24px; background: #FFFFFF; border-radius: 10px; text-align: center; display: grid; grid-template-columns: 42px 1fr 42px; align-items: center; }
main .insights-list ul.all li a span:nth-child(1) { grid-column: 2; }
main .insights-list ul.all li a span:nth-child(2) { grid-column: 3; }
main .insights-list ul.all li a svg { width: 100%; height: auto; transition: stroke 0.4s ease; display: block; }
main .insights-list ul.all li a:hover { color: #FFFFFF; background: #4C331C; }
main .insights-list ul.all li a:hover svg g { stroke: #FFFFFF; }
main .insights-list-2 { padding-top: 48px; }

main .insights-list.insights-single-paging .paging { border-bottom: 0; }
main .insights-list.insights-single-paging .paging ul li:nth-child(1) a.btn > span svg { transform: rotate(-180deg); }
main .insights-list.insights-single-paging .paging ul li:nth-child(2) { display: none; }
main .insights-list-related { padding: 0 0 3rem;}
main .insights-list-related-heading { margin-bottom: 2rem; text-align: center;}
main .insights-list-related-heading h2 { font-family: stratos, sans-serif; font-weight: 500; font-size: 24px; line-height: 26px; text-wrap: balance; }

@media only screen and (min-width: 1024px) {
  main .insights-list { grid-template-columns: 1fr 1fr 1fr; gap: 0.75rem; padding-top: 0.75rem; }
  main .insights-list header { padding: 0 2rem 3.5rem; grid-column: span 3; }
  main .insights-list header h2 { font-size: var(--fluid-55); line-height: 1.091; }
  main .insights-list .article a { min-height: 36rem; padding: 2.5rem 2rem 2rem; border-radius: 1.2rem; overflow: hidden; }
  main .insights-list .article.blue a:hover { background: #6CC2C6; }
  main .insights-list .article.orange a:hover { background: #F7BCA3; }
  main .insights-list .article.yellow a:hover { background: #FAEB68; }
  main .insights-list .article.green a:hover { background: #B7ED8B; }
  main .insights-list .article a p.sector { margin: 0 0 1.318em; font-size: var(--fluid-22); line-height: 1.273; position: relative; }
  main .insights-list .article a h2 { min-height: 3.500em; padding: 0 3rem 0 0; font-size: var(--fluid-30); line-height: 1.167; text-wrap: balance; position: relative; }
  main .insights-list .article a p.excerpt { margin: 1.842em 0 0; font-size: var(--fluid-19); line-height: 1.474; position: relative; }
  main .insights-list .article a::before { width: 32.71vw; height: 35.68vw; background: url(images/article-hover.svg) no-repeat 50% 50% / contain; position: absolute; bottom: -7.4vw; right: -4.58vw; content: " "; display: block; }
  main .insights-list .paging { margin: 0 2rem; padding: 8rem 0 1.56rem; border-bottom-width: 0.05vw; grid-column: span 3; }
  main .insights-list .paging ul { display: grid; grid-template-columns: 1fr 1fr 1fr; gap: 0; align-items: center; }
  main .insights-list .paging ul li:nth-child(2) { font-size: var(--fluid-33); grid-column: 2; grid-row: 1; }
  main .insights-list .paging ul li:nth-child(1) { grid-column: 1; grid-row: 1; }
  main .insights-list .paging ul li:nth-child(3) { grid-column: 3; grid-row: 1; }
  main .insights-list ul.all { grid-column: 1 / span 3; }
  main .insights-list ul.all li a { padding: 0.680em 1.740em; font-size: var(--fluid-50); border-radius: 0.200em; grid-template-columns: 1.960em 1fr 1.960em; }
  main .insights-list.insights-single-paging .paging { padding: 4rem 0 6rem; width: 100%; margin: 0 auto; max-width: 64rem; }
	main .insights-list-related { padding: 0 0 6rem;}
	main .insights-list-related-heading { margin-bottom: 4rem; }
	main .insights-list-related-heading h2 { font-size: var(--fluid-55); line-height: 1.091; }
	main .insights-list-2 { padding-top: 6rem; }
}

main .insights-post { padding: 4px 4px 0; display: grid; grid-template-columns: 1fr; gap: 0.5rem; }
main .insights-post .text {  }
main .insights-post .text h2 { margin: 100px 0 0; font-family: stratos, sans-serif; font-weight: 500; font-size: 20px; line-height: 23px; }
main .insights-post .text h2:first-child { margin-top: 0; }
main .insights-post .text p { margin: 19px 0 0; font-size: 13px; line-height: 19px; }
main .insights-post .text h2 + p { margin-top: 32px; }
main .insights-post .text p:first-child { margin-top: 0; }
main .insights-post .text:first-child p:first-child { font-family: stratos, sans-serif; font-size: 20px; line-height: 23px; text-align: center; }
main .insights-post .text:first-child p:first-child strong { font-weight: 500; font-variation-settings: "opsz" 500, "wght" 500; }
main .insights-post .text:first-child p:first-child + p { margin-top: 62px; }
main .insights-post .text strong { font-variation-settings: "opsz" 500, "wght" 700; }

main .insights-post .quote { background-color: #6CC2C6; color: #4C331C; border-radius: 10px; padding: 3rem; text-align: center; }
main .insights-post .quote q { ont-family: stratos, sans-serif; font-size: 16px; line-height: 19px; margin-bottom: 1.5rem; }
main .insights-post .quote cite { display: block; font-family: stratos, sans-serif; margin-top: 1rem;}

main .insights-post .block-results { display: grid; gap: 2rem; gap: 0.25rem; }
main .insights-post .block-results .challenges { background-color: #F7BDA3; color: #4C331C; border-radius: 10px; padding: 38px 12px;}
main .insights-post .block-results .results { background-color: #FBEB67; color: #4C331C; border-radius: 10px; padding: 38px 12px;}
main .insights-post .block-results svg { width: 1.125rem; height: 1.125rem; margin-top: 2px; flex: none;}
main .insights-post .challenges svg {  }
main .insights-post .results svg {  }
main .insights-post .block-results h3 { text-transform: uppercase; font-family: stratos, sans-serif; margin-bottom: 0.75rem; font-size: 0.875rem; font-weight: 500; border-bottom: solid 1px #4B331C; padding-bottom: 0.5rem; }
main .insights-post .block-results ul { font-size: 14px; line-height: 19px;}
main .insights-post .block-results li { display: flex; gap: 0.25rem; align-items: center; }
main .insights-post .block-results li:not(:first-child) { margin-top: 0.5rem; }

main .insights-post .block-stats { padding: 38px 0;}
main .insights-post .block-stats h2 { font-family: stratos, sans-serif; font-size: 29px; line-height: 32px; margin-bottom: 2rem; }
main .insights-post .block-stats .grid { display: grid; gap: 0.75rem; }
main .insights-post .block-stats h3 { font-size: 1rem; font-variation-settings: "opsz" 500, "wght" 400; color: #4C331C; }
main .insights-post .block-stats p {font-size: 13px; line-height: 19px; color: #4C331C}

main .insights-post .company { position: relative; background-color: #fff; border-radius: 10px; display: grid; overflow: hidden; }
main .insights-post .company img { width: auto; height: 2.5rem; margin-bottom: 0.5rem;}
main .insights-post .company .left { padding: 38px 12px 20px; color: #4B331C; font-size: 14px; line-height: 19px; }
main .insights-post .company .right { padding: 0 12px 38px; color: #4B331C; }
main .insights-post .company h3 { font-family: stratos, sans-serif; font-size: 0.875rem; font-weight: 500;}
main .insights-post .company ul { font-size: 14px; line-height: 19px; }
main .insights-post .company li:not(:first-child) { margin-top: 1rem; }
main .insights-post .company .company-text p:not(:first-child) { margin-top: 0.5em }

@media only screen and (min-width: 1024px) {
  main .insights-post { padding: 0; gap: 5rem; margin-top: 3rem; }
  main .insights-post .text { margin: 0 auto; max-width: 50rem; }
  main .insights-post .text h2 { margin: 4.267em auto 0; font-size: var(--fluid-30); line-height: 1.167; }
  main .insights-post .text h2:first-child { margin-top: 0; }
  main .insights-post .text p { margin: 1.474em auto 0; font-size: var(--fluid-19); line-height: 1.474; }
  main .insights-post .text h2 + p { margin-top: 1.474em; }
  main .insights-post .text p:first-child { margin-top: 0; }
  main .insights-post .text:first-child p:first-child { font-size: var(--fluid-30); line-height: 1.167em; }
  main .insights-post .text:first-child p:first-child strong { font-weight: 500; font-variation-settings: "opsz" 500, "wght" 500; }
  main .insights-post .text:first-child p:first-child + p { margin-top: 4em; }

	main .insights-post .quote { width: 100%; margin: 0 auto; max-width: 64rem; border-radius: 1.2rem; padding: 5rem; }
	main .insights-post .quote q { font-size: var(--fluid-38); line-height: 1.375; }
	main .insights-post .quote cite { font-size: var(--fluid-25); line-height: 1.278; }

	main .insights-post .block-results { width: 100%; margin: 0 auto; max-width: 64rem; grid-template-columns: 1fr 1fr; border-radius: 1.2rem; gap: 1rem; position: relative; margin-top: -7rem;}
	main .insights-post .block-results .challenges { padding: 3rem; border-radius: 1.2rem; }
	main .insights-post .block-results .results { padding: 3rem; border-radius: 1.2rem; }
	main .insights-post .block-results svg { width: 1.75rem; height: 1.75rem; margin-top: 4px;}
	main .insights-post .block-results h3 { margin-bottom: 1rem; font-size: var(--fluid-35); line-height: 1.278; padding-bottom: 0.75rem; }
	main .insights-post .block-results ul { font-size: var(--fluid-25); line-height: 1.5; }
	main .insights-post .block-results li { gap: 0.5rem; }
	main .insights-post .block-results li:not(:first-child) { margin-top: 0.75rem; }
	
	main .insights-post .block-stats { width: 100%; margin: 0 auto; max-width: 64rem; padding: 1.5rem 0 2.5rem; }
	main .insights-post .block-stats h2 { font-size: var(--fluid-55); line-height: 1.091; margin-bottom: 4rem; }
	main .insights-post .block-stats .grid { grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); gap: 2rem;}
	main .insights-post .block-stats h3 { font-size: var(--fluid-80); line-height: 1; margin-bottom: 0.5rem; }
	main .insights-post .block-stats p {font-size: var(--fluid-21); line-height: 1.5; }

	main .insights-post .company { width: 100%; margin: 0 auto; max-width: 64rem; border-radius: 1.2rem; grid-template-columns: 1fr 1fr; }
	main .insights-post .company::before { position: absolute; content: ""; width: 1px; height: 100%; top: 0; bottom: 0; left: 50%; background-color: #4C331C; }
	main .insights-post .company img { height: 3rem; margin-bottom: 1rem;}
	main .insights-post .company .left { padding: 3rem; font-size: var(--fluid-19); line-height: 1.5; }
	main .insights-post .company .right { padding: 3rem;  }
	main .insights-post .company h3 { font-size: var(--fluid-21); line-height: 1.5; }
	main .insights-post .company ul { font-size: var(--fluid-21); ; line-height: 1.5; }
	main .insights-post .company li:not(:first-child) { margin-top: 1.25rem; }

	

}

main .promo-banner { padding: 4px 0; display: grid; grid-template-columns: 1fr; }
main .promo-banner figure { order: 2; }
main .promo-banner figure img { border-radius: 10px; }
main .promo-banner .text { padding: 52px 12px 98px; order: 1; }
main .promo-banner figure + .text { padding-bottom: 56px; }
main .promo-banner .text h2 { font-family: stratos, sans-serif; font-weight: 500; font-size: 27px; line-height: 33px; }
main .promo-banner .text p { font-size: 24px; line-height: 29px; }
main .promo-banner .text h2 + p { margin: 37px 0 0; }
main .promo-banner .text ul { margin: 49px 0 0; }
main .promo-banner .text p + ul { margin: 60px 0 0; }
main .promo-banner .text ul li a.btn > span { background: var(--background); }

@media only screen and (min-width: 1024px) {
  main .promo-banner { padding: 8rem 0; grid-template-columns: 46% 1fr; gap: 0 8rem; align-items: center; }
  main .promo-banner figure { padding: 0; order: 1; }
  main .promo-banner figure img { border-radius: 1.2rem; }
  main .promo-banner .text { padding: 0 40rem 0 1.56vw; order: 2; grid-column: span 2; }
  main .promo-banner.heading-wide .text { padding: 1rem 5rem 1rem 1.56vw; }
  main .promo-banner .text h2 { font-size: var(--fluid-90); line-height: 1.089; text-wrap: balance; }
  main .promo-banner .text p { font-size: var(--fluid-46); line-height: 1.196; }
  main .promo-banner .text h2 + p { margin: .91em 0 0; }
	main .promo-banner .text ul { margin: 4.06vw 0 0; }
  main .promo-banner .text p + ul { margin: 3rem 0 0; }
  main .promo-banner figure + .text { padding: 0 4.7rem 0 0; grid-column: span 1; }
  main .promo-banner figure + .text p { margin: 1.051em 0 0; font-size: var(--fluid-39); line-height: 1.231; }
	main .promo-banner:not(:has(figure)) .text { padding-right: 16rem; }
}

/* Blocks */
main .faqs { margin-top: 0.5rem; background-color: #4B331C; color: white; border-radius: 10px; padding: 2rem 12px 1.5rem;}
main .faqs h2 { font-family: stratos, sans-serif; font-weight: 500; font-size: 24px; line-height: 1.083; margin-bottom: 1.5rem; }
main .faqs h3 { font-size: 1.125rem; line-height: 1.25; display: flex; gap: 1.5rem; align-items: center; justify-content: space-between; cursor: pointer;}
main .faqs .faq-list li:not(:first-child) { padding-top: 1rem; border-top: solid 1px white;}
main .faqs .faq-list li:not(:last-child) { padding-bottom: 1.25rem;}
main .faqs .faq-answer { font-size: 13px; line-height: 19px; padding-top: 0.75rem;}
main .faqs .faq-answer * + * { margin-top: 0.675rem;}
main .faqs h3 svg { width: 1.25rem; height: 1.25rem;}

@media only screen and (min-width: 1024px) {
	main .faqs { margin-top: 3rem; border-radius: 1.2rem; padding: 6rem; display: grid; grid-template-columns: 33% 1fr; gap: 6rem;}
	main .faqs h2 { font-size: var(--fluid-55); line-height: 1; margin-bottom: 3rem; }
	main .faqs .faq-answer { font-size: var(--fluid-19); line-height: 1.474; }
	main .faqs h3 { font-size: var(--fluid-31);}
	main .faqs .faq-list li:not(:first-child) { padding-top: 1.375rem; }
	main .faqs .faq-list li:not(:last-child) { padding-bottom: 1.5rem;}
	main .faqs .faq-answer { padding-top: 1rem;}
	main .faqs .faq-answer * + * { margin-top: 0.875rem;}
	main .faqs h3 svg { width: 1.75rem; height: 1.75rem;}
	
}

main .vacancies { padding: 108px 4px 0; color: #F7BCA3; }
main .vacancies header { padding: 0 11px 50px; }
main .vacancies header h1 { font-family: stratos, sans-serif; font-weight: 800; font-size: 41px; line-height: 33px; text-transform: uppercase; }
main .vacancies .vacancy { padding: 40px 0 50px; border-top: 1px solid #F7BCA3; }
main .vacancies .vacancy p.overview { padding: 0 0 28px; font-family: stratos, sans-serif; font-size: 17px; line-height: 22px; }
main .vacancies .vacancy h2 { font-family: stratos, sans-serif; font-weight: 500; font-size: 29px; line-height: 35px; }
main .vacancies .vacancy .text { padding: 28px 0 0; }
main .vacancies .vacancy .text p { margin: 19px 0 0; font-size: 13px; line-height: 19px; }
main .vacancies .vacancy .text p:first-child { margin: 0; }
main .vacancies .vacancy ul { padding: 48px 0 0; }
main .vacancies .vacancy ul li a.btn > span { color: #F7BCA3; background: #4C331C; border-color: #F7BCA3; }
main .vacancies .vacancy ul li a.btn svg g { stroke: #F7BCA3; }
main .vacancies .vacancy ul li a.btn::before { background: #F7BCA3; }

@media only screen and (min-width: 1024px) {
  main .vacancies { padding: 14rem 0 8rem; }
  main .vacancies header { padding: 0 0 7rem; }
  main .vacancies header h1 { font-size: var(--fluid-136); line-height: 0.838; }
  main .vacancies .vacancy { padding: 5.5rem 0 6rem; border-top-width: 0.05vw; display: grid; grid-template-columns: 33% 36% 1fr; }
  main .vacancies .vacancy p.overview { padding: 0.267em 6rem 0 0; font-size: var(--fluid-30); line-height: 1.167; grid-column: 1; grid-row: 1 / span 2; }
  main .vacancies .vacancy h2 { padding: 0 3rem 5rem 0; font-size: var(--fluid-55); line-height: 1.091; grid-column: 2 / span 2; grid-row: 1; }
  main .vacancies .vacancy .text { padding: 0; grid-column: 2; grid-row: 2; }
  main .vacancies .vacancy .text p { margin: 1.474em 0 0; font-size: var(--fluid-19); line-height: 1.474; }
  main .vacancies .vacancy .text p:first-child { margin: 0; }
  main .vacancies .vacancy ul { padding: 0; grid-column: 3; grid-row: 2; justify-self: end; }
}

main .gen { padding: 144px 16px 100px; }
main .gen a { text-decoration: underline; }
main .gen a:hover { text-decoration-color: rgba(76,51,28,0); }
main .gen header { padding: 0 0 28px; }
main .gen header p { margin: 0 0 38px; font-family: stratos, sans-serif; font-weight: 800; font-size: 23px; line-height: 19px; text-transform: uppercase; }
main .gen header h1 { font-family: stratos, sans-serif; font-weight: 500; font-size: 32px; line-height: 36px; }
main .gen .text h2 { margin: 56px 0 0; font-family: stratos, sans-serif; font-size: 17px; line-height: 22px; }
main .gen .text h2:first-child { margin: 0; }
main .gen .text p,
main .gen .text ul { margin: 19px 0 0; font-size: 13px; line-height: 19px; }
main .gen .text ul { display: flex; flex-direction: column; gap: 19px; }
main .gen .text ul li { padding: 0 0 0 38px; position: relative; }
main .gen .text ul li::before { position: absolute; top: 0; left: 0; content: "—"; display: block; }
main .gen .text p:first-child,
main .gen .text ul:first-child { margin-top: 0; }
main .gen .text h2 + p,
main .gen .text h2 + ul { margin-top: 34px; }

@media only screen and (min-width: 1024px) {
  main .gen { padding: 14rem 0 8rem 0; max-width: 1200px; }
  main .gen header { padding: 0; }
  main .gen header p { margin: 0 0 6rem; font-size: var(--fluid-38); line-height: 0.842; }
  main .gen header h1 { font-size: var(--fluid-55); line-height: 1; margin-bottom: 4rem;}
  main .gen .text h2 { width: 22rem; margin: 4.000em 0 0; font-size: var(--fluid-30); line-height: 1.167; float: left; }
  main .gen .text h2:first-child { margin: 0; }
  main .gen .text p,
  main .gen .text ul { margin: 1.474em 0 0 30rem; font-size: var(--fluid-19); line-height: 1.474; }
  main .gen .text ul { gap: 1.474em; }
  main .gen .text ul li { padding: 0 0 0 1.789em; }
  main .gen .text p:first-child,
  main .gen .text ul:first-child { margin-top: 0; }
  main .gen .text h2 + p,
  main .gen .text h2 + ul { margin-top: 6.316em; }
  main .gen .text h2:first-child + p,
  main .gen .text h2:first-child + ul { margin-top: 0; }
}

main .gform_wrapper > .gform_heading { display: none; }
main .gform_wrapper > .gform_validation_errors { display: none; }
main .gform_wrapper .gform_fields { display: grid; grid-template-columns: 1fr; gap: 18px; }
main .gform_wrapper .gform_fields div.gfield > label { font-family: stratos, sans-serif; font-weight: 500; font-size: 13px; line-height: 17px; display: block; }
main .gform_wrapper .gform_fields div.gfield .ginput_container input[type="text"],
main .gform_wrapper .gform_fields div.gfield .ginput_container input[type="email"],
main .gform_wrapper .gform_fields div.gfield .ginput_container textarea { width: 100%; padding: 0; font-size: 13px; line-height: 17px; background: none; border: 0; }
main .gform_wrapper .gform_fields div.gfield .ginput_container input[type="text"]::placeholder,
main .gform_wrapper .gform_fields div.gfield .ginput_container input[type="email"]::placeholder,
main .gform_wrapper .gform_fields div.gfield .ginput_container textarea::placeholder { color: #4C331C; }
main .gform_wrapper .gform_fields div.gfield .ginput_container input[type="text"]:focus::placeholder,
main .gform_wrapper .gform_fields div.gfield .ginput_container input[type="email"]:focus::placeholder,
main .gform_wrapper .gform_fields div.gfield .ginput_container textarea:focus::placeholder { color: rgba(76,51,28,0.45); }
main .gform_wrapper .gform_fields div.gfield .gfield_description { font-family: stratos, sans-serif; font-size: 13px; line-height: 17px; }
main .gform_wrapper .gform_fields div.gfield .gfield_description.validation_message { color: #FF0000; }
main .gform_wrapper .gform_fields div.gfield.gfield--type-fileupload .ginput_container { display: flex; flex-direction: column; }
main .gform_wrapper .gform_fields div.gfield.gfield--type-fileupload .ginput_container .gfield_description { padding: 0 0 18px; display: block; order: 1; }
main .gform_wrapper .gform_fields div.gfield.gfield--type-fileupload .ginput_container .gform_fileupload_multifile { order: 2; }
main .gform_wrapper .gform_fields div.gfield.gfield--type-fileupload .ginput_container .gform_drop_area { display: inline-flex; }
main .gform_wrapper .gform_fields div.gfield.gfield--type-fileupload .ginput_container .gform_drop_instructions { display: none; }
main .gform_wrapper .gform_fields div.gfield.gfield--type-fileupload .ginput_container .gform_drop_area button { width: 100%; height: 100%; position: absolute; top: 0; left: 0; opacity: 0; z-index: 2; }
main .gform_wrapper .gform_fields div.gfield.gfield--type-fileupload .ginput_preview_list { padding: 18px 0 0; font-size: 13px; line-height: 17px; display: flex; flex-direction: column; gap: 4px; order: 4; }
main .gform_wrapper .gform_fields div.gfield.gfield--type-fileupload .ginput_preview_list .ginput_preview { display: grid; grid-template-columns: 1fr auto; gap: 0.5em; }
main .gform_wrapper .gform_fields div.gfield.gfield--type-fileupload .ginput_preview_list .ginput_preview .gfield_fileupload_filesize,
main .gform_wrapper .gform_fields div.gfield.gfield--type-fileupload .ginput_preview_list .ginput_preview .gfield_fileupload_progress { display: none; }
main .gform_wrapper .gform_fields div.gfield.gfield--type-fileupload .ginput_preview_list .ginput_preview button { background: none; border: 0; -webkit-appearance: none; appearance: none; }
main .gform_wrapper .gform_fields div.gfield.gfield--type-fileupload .ginput_preview_list .ginput_preview button .screen-reader-text { display: none; }
main .gform_wrapper .gform_fields div.gfield.gfield--type-hcaptcha > label { display: none; }
main .gform_confirmation_wrapper { display: grid; grid-template-columns: 1fr; gap: 18px; }
main .gform_confirmation_wrapper .gform_confirmation_message { font-family: stratos, sans-serif; font-weight: 500; font-size: 13px; line-height: 17px; display: block; }

@media only screen and (min-width: 1024px) {
	main .gform_wrapper .gform_fields { gap: 37px 0; }
	main .gform_wrapper .gform_fields div.gfield > label { font-size: 19px; line-height: 1.316; }
	main .gform_wrapper .gform_fields div.gfield .ginput_container input[type="text"],
	main .gform_wrapper .gform_fields div.gfield .ginput_container input[type="email"],
	main .gform_wrapper .gform_fields div.gfield .ginput_container textarea { font-size: 19px; line-height: 1.316; }
	main .gform_wrapper .gform_fields div.gfield .gfield_description { font-size: 19px; line-height: 1.316; }
	main .gform_wrapper .gform_fields div.gfield.gfield--type-fileupload .ginput_container .gfield_description { padding: 0 0 1.263em; }
	main .gform_wrapper .gform_fields div.gfield.gfield--type-fileupload .ginput_preview_list { font-size: 19px; line-height: 1.316; padding: 1.263em 0 0; gap: 0.316em; }
	main .gform_confirmation_wrapper { grid-template-columns: 369px 1fr; gap: 37px 0; }
	main .gform_confirmation_wrapper .gform_confirmation_message { padding: 0 18px; font-size: 19px; line-height: 1.316; }
}

@media only screen and (min-width: 1024px) {
	main .gform_wrapper .gform_fields { gap: 1.9rem 0; }
	main .gform_wrapper .gform_fields div.gfield > label { font-size: var(--fluid-19); }
	main .gform_wrapper .gform_fields div.gfield .ginput_container input[type="text"],
	main .gform_wrapper .gform_fields div.gfield .ginput_container input[type="email"],
	main .gform_wrapper .gform_fields div.gfield .ginput_container textarea { font-size: var(--fluid-19); }
	main .gform_wrapper .gform_fields div.gfield .gfield_description { font-size: var(--fluid-19); }
	main .gform_wrapper .gform_fields div.gfield.gfield--type-fileupload .ginput_preview_list { font-size: var(--fluid-19); }
	main .gform_confirmation_wrapper { grid-template-columns: 19.22vw 1fr; gap: 1.93vw 0; }
	main .gform_confirmation_wrapper .gform_confirmation_message { padding: 0 0.94vw; font-size: var(--fluid-19); }
}

main .contact { padding: 108px 4px 71px; }
main .contact header { padding: 0 12px 45px; }
main .contact header h1 { font-family: stratos, sans-serif; font-weight: 800; font-size: 41px; line-height: 33px; text-transform: uppercase; }
main .contact .text { padding: 0 12px 32px; }
main .contact .text ul { display: grid; grid-template-columns: 1fr 1fr; }
main .contact .text ul li h2 { font-family: stratos, sans-serif; font-weight: 500; font-size: 13px; line-height: 17px; }
main .contact .text ul li p { font-size: 13px; line-height: 17px; }
main .contact .text ul li a:hover { opacity: 0.45; }
main .contact .text .join { padding: 36px 0 0; }
main .contact .text .join h2 { font-family: stratos, sans-serif; font-weight: 500; font-size: 13px; line-height: 17px; }
main .contact .text .join p { margin: 17px 0 0; font-size: 13px; line-height: 17px; }
main .contact .text .join h2 + p { margin: 0; }
main .contact .text .join ul { margin: 26px 0 0; }
main .contact .text .join ul li a.btn > span { background: var(--background); }
main .contact .form { padding: 30px 0 0; border: 1px solid #4C331C; border-width: 1px 0 0; }
main .contact .form .heading { padding: 0 12px 36px; }
main .contact .form .heading h2 { max-width: 130px; font-family: stratos, sans-serif; font-weight: 800; font-size: 27px; line-height: 22px; text-transform: uppercase; }
main .contact .form .gform_wrapper .gform_fields div.gfield { padding: 0 12px; }
main .contact .form .gform_wrapper .gform_fields div.gfield.gfield--type-textarea { margin: 15px 0 0; padding-top: 10px; border: 1px solid #4C331C; border-width: 1px 0 0; }
main .contact .form .gform_footer { padding: 44px 0 0; display: flex; justify-content: flex-end; }
main .contact .form .gform_footer button.btn > span { background: #FAEB68; }

@media only screen and (min-width: 1024px) {
  main .contact { margin: 12rem 0 0.63vw; padding: 0; display: grid; grid-template-columns: 38% 1fr; grid-template-rows: 1fr auto; }
	main .contact header { padding: 2rem 0; border: 1px solid #4D331C; border-width: 0 0 0.05vw; grid-column: span 2; }
	main .contact header h1 { font-size: var(--fluid-136); line-height: 0.838; }
	main .contact .text { padding: 1.63rem 0.83vw 2.8rem 0; display: flex; flex-direction: column; justify-content: space-between; }
	main .contact .text ul { display: grid; grid-template-columns: 1fr; gap: 1.3rem; }
	main .contact .text ul li h2 { font-size: var(--fluid-19); line-height: 1.316; }
	main .contact .text ul li p { font-size: var(--fluid-19); line-height: 1.316; }
	main .contact .text .join { padding: 1.3vw 0 0; }
	main .contact .text .join h2 { font-size: var(--fluid-19); line-height: 1.316; }
	main .contact .text .join p { margin: 1.316em 0 0; font-size: var(--fluid-19); line-height: 1.316; }
	main .contact .text .join h2 + p { margin: 0; }
	main .contact .text .join ul { margin: 2.86rem 0 0; }
	main .contact .form { padding: 1.63rem 0.78rem 2.8rem; border-width: 0 0 0 0.05vw; }
	main .contact .form .heading { padding: 0 0 1.5rem; }
	main .contact .form .heading h2 { padding-left: 0.94rem; max-width: 100%; font-size: var(--fluid-83); line-height: 0.843; text-wrap: balance; }
	main .contact .form .gform_wrapper .gform_fields { padding: 0.63vw 0 0; display: grid; grid-template-columns: 20rem 1fr; }
	main .contact .form .gform_wrapper .gform_fields div.gfield { padding: 0 0.94rem; grid-column: 1; }
	main .contact .form .gform_wrapper .gform_fields div.gfield.gfield--type-textarea { margin: 0; padding-top: 0; border-width: 0; display: grid; grid-template-columns: 1fr; grid-template-rows: auto 1fr; grid-column: 2; grid-row: 1 / span 3; }
	main .contact .form .gform_wrapper .gform_fields div.gfield.gfield--type-textarea textarea { height: 100%; }
	main .contact .form .gform_wrapper .gform_fields div.gfield.gfield--type-fileupload { grid-column: 2; grid-row: 4; }
	main .contact .form .gform_wrapper .gform_fields div.gfield.gfield--type-hcaptcha { grid-column: 2; grid-row: 5; }
	main .contact .form .gform_footer { padding: 2.5rem 0 0; }
}

main .apply { padding: 0 16px 78px; }
main .apply a:hover { opacity: 0.45; }
main .apply .text-1 p { margin: 33px 0 0; font-family: stratos, sans-serif; font-weight: 500; font-size: 27px; line-height: 33px; }
main .apply .text-1 p:first-child { margin: 0; }
main .apply .text-2 { padding: 35px 0 0; }
main .apply .text-2 p { margin: 29px 0 0; font-size: 24px; line-height: 29px; }
main .apply .text-2 p:first-child { margin: 0; }
main .apply .text-3 { padding: 48px 0 0; }
main .apply .text-3 p { margin: 15px 0 0; font-family: stratos, sans-serif; font-size: 13px; line-height: 15px; }
main .apply .text-3 p:first-child { margin: 0; }
main .apply .text-3 p strong { font-weight: 500; font-variation-settings: "opsz" 500, "wght" 500; }

@media only screen and (min-width: 1024px) {
  main .apply { padding: 0 0 8rem; }
  main .apply .text-1 p { margin: 1.089em 0 0; font-size: var(--fluid-90); line-height: 1.089; }
  main .apply .text-1 p:first-child { margin: 0; }
  main .apply .text-2 { width: 57%; padding: 7rem 0 0; }
  main .apply .text-2 p { margin: 1.196em 0 0; font-size: var(--fluid-46); line-height: 1.196; }
  main .apply .text-2 p:first-child { margin: 0; }
  main .apply .text-3 { width: 35%; padding: 7rem 0 0; }
  main .apply .text-3 p { margin: 1.227em 0 0; font-size: var(--fluid-25); line-height: 1.35; }
  main .apply .text-3 p:first-child { margin: 0; }
}

main .apply-form { padding: 143px 4px 59px; }
main .apply-form .heading { padding: 0 12px 38px; }
main .apply-form .heading p { font-family: stratos, sans-serif; font-weight: 800; font-size: 23px; line-height: 19px; text-transform: uppercase; }
main .apply-form .text { padding: 0 12px 47px; }
main .apply-form .text h1 { font-family: stratos, sans-serif; font-weight: 500; font-size: 32px; line-height: 36px; }
main .apply-form .text .text-1 { padding: 36px 0 0; }
main .apply-form .text .text-1 p { margin: 29px 0 0; font-size: 24px; line-height: 29px; }
main .apply-form .text .text-1 p:first-child { margin: 0; }
main .apply-form .text .text-2 { padding: 47px 0 0; }
main .apply-form .text .text-2 p { margin: 19px 0 0; font-family: stratos, sans-serif; font-size: 13px; line-height: 19px; }
main .apply-form .text .text-2 p:first-child { margin: 0; }
main .apply-form .form { padding: 32px 12px 0; border: 1px solid #4C331C; border-width: 1px 0 0; }
main .apply-form .form .gform_footer { padding: 44px 0 0; display: flex; justify-content: flex-end; }
main .apply-form .form .gform_footer button.btn > span { background: #FAEB68; }

@media only screen and (min-width: 1024px) {
  main .apply-form { margin: 0 0 0.63vw; padding: 14rem 0 0; display: grid; grid-template-columns: 48rem 1fr; grid-template-rows: auto 1fr; }
  main .apply-form .heading { padding: 0 0 0.5rem; grid-column: span 2; }
  main .apply-form .heading p { font-size: var(--fluid-38); line-height: 0.842; }
  main .apply-form .text { padding: 5rem 4rem 0 0; }
  main .apply-form .text h1 { font-size: var(--fluid-90); line-height: 1.089; }
  main .apply-form .text .text-1 { padding: 5rem 0 0; }
  main .apply-form .text .text-1 p { margin: 1.196em 0 0; font-size: var(--fluid-46); line-height: 1.196; }
  main .apply-form .text .text-1 p:first-child { margin: 0; }
  main .apply-form .text .text-2 { width: 40rem; padding: 4rem 0 4rem; }
  main .apply-form .text .text-2 p { margin: 1.227em 0 0; font-size: var(--fluid-22); line-height: 1.227; }
  main .apply-form .text .text-2 p:first-child { margin: 0; }
  main .apply-form .form { padding: 5.5rem 0 0; border-width: 0 0 0 0.05vw; }
  main .apply-form .form::before { width: 0.05vw; height: 100%; position: absolute; top: 0; left: 50%; background: #4D331C; content: " "; display: block; }
  main .apply-form .form .gform_wrapper .gform_fields { grid-template-columns: 50% 1fr; }
  main .apply-form .form .gform_wrapper .gform_fields div.gfield { padding: 0 0.94vw; grid-column: 1; }
  main .apply-form .form .gform_wrapper .gform_fields div.gfield:nth-child(7) { grid-column: 2; grid-row: 1; }
  main .apply-form .form .gform_wrapper .gform_fields div.gfield:nth-child(8) { grid-column: 2; grid-row: 2; }
  main .apply-form .form .gform_wrapper .gform_fields div.gfield:nth-child(9) { grid-column: 2; grid-row: 4 / span 3; }
  main .apply-form .form .gform_wrapper .gform_fields div.gfield:nth-child(10) { grid-column: 2; grid-row: 7; }
  main .apply-form .form .gform_footer { padding: 2rem 0 1rem; }
}

main > .notice { min-height: 100vh; padding: 136px 16px; color: #FFFFFF; }
main > .notice h1 { font-family: stratos, sans-serif; font-weight: 500; font-size: 29px; line-height: 35px; }
main > .notice p { margin: 24px 0 0; font-size: 24px; line-height: 29px; }

@media only screen and (min-width: 1024px) {
	main > .notice { margin: 0 0 12px; padding: 276px 540px 104px 532px; display: flex; flex-direction: column; justify-content: space-between }
	main > .notice::before { width: 1px; height: 100%; position: absolute; top: 0; left: 520px; background: #FFFFFF; content: " "; display: block; }
	main > .notice h1 { font-size: 80px; line-height: 1.063; }
	main > .notice p { margin: 1.200em 0 0; font-size: 40px; line-height: 1.200; }
}

@media only screen and (min-width: 1024px) {
	main > .notice { margin: 0 0 0.63vw; padding: 14.38vw 28.13vw 5.42vw 27.71vw; }
	main > .notice::before { width: 0.05vw; left: 27.08vw; }
	main > .notice h1 { font-size: var(--fluid-80); }
	main > .notice p { font-size: var(--fluid-40); }
}

main .block-list { padding: 70px 16px 50px; display: grid; grid-template-columns: 1fr; gap: 40px; }
main .block-list h2 { font-family: stratos, sans-serif, sans-serif; font-size: 28px; line-height: 32px; font-weight: 500; }
main .block-list .list li { border-top: 1px solid #4C331C; padding: 13px 0; font-family: stratos, sans-serif; font-size: 16px; line-height: 20px; }

@media only screen and (min-width: 1024px) {
	main .block-list { padding: 8rem 8rem 3rem 2rem; grid-template-columns: 1fr 1fr; gap: 7rem; }
	main .block-list h2 { font-size: var(--fluid-51); line-height: 1.15; max-width: 25rem; }
	main .block-list .list li { font-size: var(--fluid-29); line-height: 1.3; padding: 1rem 0 1rem 0;  }
}

main .contact .form-text p { font-size: 13px; line-height: 19px; }
main .contact .form-text p:first-child { margin: 0; }
.spacing-small { margin-top: 3rem; }
.spacing-large { margin-top: 3rem; }
@media only screen and (min-width: 1024px) {
	main .contact .form-text p { margin: 1.474em 0 0; font-size: var(--fluid-19); line-height: 1.474; }
	main .contact .form-text p:first-child { margin: 0; }
	.spacing-large { margin-top: 7rem; }
	main .about-principles.features { padding: 7rem 8rem 7rem 2rem; gap: 0 7rem; }
}

main .about-principles .principles h3.none::before { display: none; }

main .testimonial blockquote { background: #F7BCA3; border-radius: 10px; padding: 3rem; text-align: center; }
main .testimonial blockquote q { font-family: stratos, sans-serif; font-size: 16px; line-height: 21px; margin-bottom: 1.5rem; }
main .testimonial blockquote cite { margin-top: 1rem; font-family: stratos, sans-serif; font-weight: 400; font-size: 13px; line-height: 16px; display: block; }

@media only screen and (min-width: 1024px) {
  main .testimonial blockquote { border-radius: 1.2rem; padding: 6rem 12rem; }
  main .testimonial blockquote q { font-size: var(--fluid-38); line-height: 1.375; }
  main .testimonial blockquote cite { margin-top: 1.5rem; font-size: var(--fluid-22); line-height: 1.278; }
}


main .gform_wrapper .gform_fields div.gfield .ginput_container input[type="tel"] {
	width: 100%;
	padding: 0;
	font-size: 13px;
	line-height: 17px;
	background: none;
	border: 0;
}

main .contact.landing .form .gform_wrapper .gform_fields fieldset {
	padding: 0 12px;
}
main .contact.landing .form .gform_wrapper .gform_fields fieldset label {
	
	font-weight: 500;
	font-size: 13px;
	line-height: 17px;
}
main .gform_wrapper .gform_fields fieldset > legend {
	font-family: stratos, sans-serif;
	font-weight: 500;
	font-size: 13px;
	display: block;
	margin-bottom: 3px
}
main .gform_wrapper .gform_fields fieldset .gchoice {
	padding: 4px 0;
}
@media only screen and (min-width: 1024px) {
	main .contact.landing .form .gform_wrapper .gform_fields .gfield--input-type-email {
		grid-column: 2;
	}

	main .gform_wrapper .gform_fields div.gfield .ginput_container input[type="tel"] {
		font-size: var(--fluid-19);
		line-height: 1.316;
	}	

	main .contact.landing .form .gform_wrapper .gform_fields fieldset {
		padding: 0 0.94rem;
	}	
	main .contact.landing .form .gform_wrapper .gform_fields fieldset label {
		font-size: var(--fluid-19);
		
	}
	main .gform_wrapper .gform_fields fieldset > legend {
		line-height: 1.316;
		font-size: var(--fluid-19);
	}
	main .gform_wrapper .gform_fields fieldset input[type="checkbox"] {
		width: 14px;
		height: 14px
	}

	main .contact.landing .form .gform_wrapper .gform_fields .h-captcha {
		margin-top: -3.5rem;
		margin-bottom: 0;
	}
}


body > footer { padding: 0 0 4px; }
body > footer .wrap { padding: 20px 17px 50px; background: #FFFFFF; border-radius: 10px; text-align: center; }
body > footer nav ul { padding: 0 20px; display: flex; flex-wrap: wrap; justify-content: center; }
body > footer nav ul li a { padding: 8px 12px 9px; font-family: stratos, sans-serif; font-size: 15px; color: #4C331C; background: #FFFFFF; border: 1px solid #F1EFE8; border-radius: 10px; display: inline-flex; }
body > footer nav ul li:last-child a { color: #FFFFFF; background: #4C331C; border-color: #4C331C; }
body > footer nav ul li a:hover span { opacity: 0.45; }
body > footer p.logo { padding: 38px 0 0; }
body > footer p.logo img { width: auto; height: 52px; }
body > footer p.strapline { padding: 28px 0 0; font-family: stratos, sans-serif; font-size: 25px; line-height: 29px; text-wrap: balance; }
body > footer ul.contact { padding: 30px 0 0; font-size: 15px; line-height: 23px; }
body > footer ul.contact li a:hover { opacity: 0.45; }
body > footer ul.legal { padding: 82px 0 0; font-size: 13px; line-height: 19px; display: flex; justify-content: center; gap: 12px; }
body > footer ul.legal li a:hover { opacity: 0.45; }
body > footer p.copyright { padding: 30px 0 0; font-size: 13px; line-height: 19px; }

@media only screen and (min-width: 1024px) {
  body > footer { padding: 0 0 0.63vw; }
  body > footer .wrap { padding: 1.77vw; border-radius: 1.2rem; text-align: left; display: grid; grid-template-columns: 30% 1fr 30%; gap: 0 3rem; }
  body > footer nav { grid-column: 1; grid-row: 1 / span 2; }
  body > footer nav ul { padding: 0; justify-content: start; }
  body > footer nav ul li a { padding: 0.353em 0.882em 0.471em; font-size: var(--fluid-17); border-width: 0.059em; border-radius: 0.588em; }
  body > footer p.logo { padding: 0; text-align: center; grid-column: 2; grid-row: 1; }
  body > footer p.logo img { height: 5rem; }
  body > footer p.strapline { padding: 2.100em 0 3.350em; font-size: var(--fluid-40); line-height: 1.175; text-align: center; grid-column: 2; grid-row: 2; }
  body > footer ul.contact { padding: 0; font-size: var(--fluid-20); line-height: 1.400; grid-column: 3; grid-row: 1; align-self: center; justify-content: end; text-align: right;}
  body > footer ul.legal { padding: 0; font-size: var(--fluid-14); line-height: 1; justify-content: end; gap: 1em; grid-column: 3; grid-row: 3; }
  body > footer p.copyright { padding: 0; font-size: var(--fluid-14); line-height: 1; text-align: center; grid-column: 2; grid-row: 3; }
}

html.sectors,
html.services { overflow: hidden; }
body > .dropdown-overlay { width: 100%; height: 100%; backdrop-filter: blur(9px) brightness(115%); position: fixed; top: 0; left: 0; transform: translateY(-100%); transition: transform 0.4s ease; z-index: 96; }
html.sectors body > .dropdown-overlay,
html.services body > .dropdown-overlay { transform: translateY(0); }
body > .dropdown { width: 100%; height: 100%; padding: 4px; position: fixed; top: 0; left: 0; overflow: auto; transform: translateY(-100%); transition: transform 0.4s ease; z-index: 97; }
body > .dropdown .wrap { padding: 125px 12px 84px; background: #FFFFFF; border-radius: 10px; }
html.sectors body > .dropdown.sectors { transform: translateY(0); }
html.services body > .dropdown.services { transform: translateY(0);}
body > .dropdown .wrap > ul { font-family: stratos, sans-serif; font-weight: 500; font-size: 17px; line-height: 22px; position: absolute; top: 122px; right: 12px; z-index: 2; }
body > .dropdown .wrap > ul li a:hover { opacity: 0.45; }
body > .dropdown.sectors header { padding: 0 0 91px; }
body > .dropdown.sectors header h2 { max-width: 200px; font-family: stratos, sans-serif; font-weight: 800; font-size: 35px; line-height: 30px; text-transform: uppercase; text-wrap: balance; }
body > .dropdown.services header { padding: 0 0 62px; }
body > .dropdown.services header ul { font-family: stratos, sans-serif; font-weight: 800; font-size: 35px; line-height: 30px; text-transform: uppercase; display: flex; flex-direction: column; gap: 8px; }
body > .dropdown.services header ul li a { padding: 0 0 6px; opacity: 0.21; border-bottom: 3px solid #FFFFFF; display: inline-flex; }
body > .dropdown.services header ul li.on a { opacity: 1; border-bottom-color: #4D331C; }
body > .dropdown.services header ul li a:hover { opacity: 1; }
body > .dropdown .cols { display: grid; grid-template-columns: 1fr; gap: 6px; }
body > .dropdown .cols a:hover { opacity: 0.45; }
body > .dropdown .cols .col h3 { margin: 0 0 10px; font-family: stratos, sans-serif; font-weight: 800; font-size: 17px; line-height: 21px; text-transform: uppercase; text-wrap: balance; }
body > .dropdown .cols .col ul { padding: 0 0 46px; font-family: stratos, sans-serif; font-size: 16px; line-height: 20px; }

@media only screen and (min-width: 1024px) {
	body > .dropdown { padding: 12px; }
	body > .dropdown .wrap { padding: 0; border-radius: 22px; }
	body > .dropdown .wrap > ul { font-size: 65px; line-height: 1; top: auto; bottom: 0.523em; right: 0.831em; }
	body > .dropdown.sectors header { padding: 24px 33px 122px; }
	body > .dropdown.sectors header h2 { max-width: 4.651em; font-size: 86px; line-height: 0.837; }
	body > .dropdown.services header { padding: 202px 156px 85px; }
	body > .dropdown.services header ul { font-size: 59px; line-height: 0.831; flex-direction: row; gap: 0.407em; }
	body > .dropdown.services header ul li a { padding: 0 0 0.169em; border-bottom-width: 0.051em; }
	body > .dropdown .cols { padding: 0 156px 156px; display: block; gap: 0; column-count: 3; column-gap: 0; }
	body > .dropdown .cols .col { padding: 0 0 18px; break-inside: avoid; }
	body > .dropdown .cols .col h3 { margin: 0 0 0.273em; font-size: 22px; line-height: 1.273; }
	body > .dropdown .cols .col ul { padding: 0 0 1.182em; font-size: 22px; line-height: 1.273; }
}

@media only screen and (min-width: 1024px) {
	body > .dropdown { padding: 1.11vh; }
	body > .dropdown .wrap { border-radius: 2.04vh; }
	body > .dropdown .wrap > ul { font-size: var(--fluid-65); }
	body > .dropdown.sectors header { padding: 10rem 3rem 3rem; }
	body > .dropdown.sectors header h2 { font-size: var(--fluid-86); }
	body > .dropdown.services header { padding: 10rem 3rem 3rem; }
	body > .dropdown.services header ul { font-size: var(--fluid-59); }
	body > .dropdown .cols { padding: 0 14.44vh 14.44vh; }
	body > .dropdown .cols .col { padding: 0 0 1.67vh; }
	body > .dropdown .cols .col h3 { font-size: var(--fluid-22); }
	body > .dropdown .cols .col ul { font-size: var(--fluid-22); }
}

/* Slider */
.slick-slider
{
    position: relative;

    display: block;
    box-sizing: border-box;

    -webkit-user-select: none;
       -moz-user-select: none;
        -ms-user-select: none;
            user-select: none;

    -webkit-touch-callout: none;
    -khtml-user-select: none;
    -ms-touch-action: pan-y;
        touch-action: pan-y;
    -webkit-tap-highlight-color: transparent;
}

.slick-list
{
    position: relative;

    display: block;
    overflow: hidden;

    margin: 0;
    padding: 0;
}
.slick-list:focus
{
    outline: none;
}
.slick-list.dragging
{
    cursor: pointer;
    cursor: hand;
}

.slick-slider .slick-track,
.slick-slider .slick-list
{
    -webkit-transform: translate3d(0, 0, 0);
       -moz-transform: translate3d(0, 0, 0);
        -ms-transform: translate3d(0, 0, 0);
         -o-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
}

.slick-track
{
    position: relative;
    top: 0;
    left: 0;

    display: block;
    margin-left: auto;
    margin-right: auto;
}
.slick-track:before,
.slick-track:after
{
    display: table;

    content: '';
}
.slick-track:after
{
    clear: both;
}
.slick-loading .slick-track
{
    visibility: hidden;
}

.slick-slide
{
    display: none;
    float: left;

    height: 100%;
    min-height: 1px;
}
[dir='rtl'] .slick-slide
{
    float: right;
}
.slick-slide img
{
    display: block;
}
.slick-slide.slick-loading img
{
    display: none;
}
.slick-slide.dragging img
{
    pointer-events: none;
}
.slick-initialized .slick-slide
{
    display: block;
}
.slick-loading .slick-slide
{
    visibility: hidden;
}
.slick-vertical .slick-slide
{
    display: block;

    height: auto;

    border: 1px solid transparent;
}
.slick-arrow.slick-hidden {
    display: none;
}