/*
Theme Name: TMT
Author: Future
Author URI: https://designbyfuture.co.uk/
*/

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

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: 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"] { -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: #202026; 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 "brother-1816", 'Helvetica Neue', Arial, Helvetica, sans-serif; background: #FFFFFF; color: #202026; }

.animup,
.animcup > * { position: relative; transform: translateY(100px); opacity: 0; transition: all 0.4s ease-in-out; }
.animup.inview,
.animcup > *.inview { transition-delay: 0.4s; transform: translateY(0); opacity: 1; }
.animright,
.animcright > * { position: relative; transform: translateX(-100px); opacity: 0; transition: all 0.4s ease-in-out; }
.animright.inview,
.animcright > *.inview { transition-delay: 0.4s; transform: translateX(0); opacity: 1; }
.animleft,
.animcleft > * { position: relative; transform: translateX(100px); opacity: 0; transition: all 0.4s ease-in-out; }
.animleft.inview,
.animcleft > *.inview { transition-delay: 0.4s; transform: translateX(0); opacity: 1; }

body > header { width: 100%; padding: 28px 32px; position: fixed; top: 0; left: 0; display: flex; align-items: center; gap: 24px; z-index: 50; }
body > header ul li button { width: 18px; height: 18px; background: none; border: 0; position: relative; display: block; }
body > header ul li button span { width: 100%; height: 2px; background: #202026; position: absolute; top: calc( 50% - ( 2px / 2 ) ); left: 0; display: block; }
body > header ul li button span::before,
body > header ul li button span::after { width: 100%; height: 2px; background: #202026; position: absolute; top: -7px; left: 0; transition: background-color 0.4s ease-in-out, top 0.4s ease-in-out, transform 0.4s ease-in-out; content: " "; display: block; }
body > header ul li button span::after { top: 7px; }
body > header h1 a { position: relative; display: inline-flex; }
body > header h1 a img { width: auto; height: 20px; transition: opacity 0.4s ease-in-out; }
body > header h1 a::after { width: 100%; height: 100%; background: url(images/logo-light.svg) no-repeat 50% 50% / contain; position: absolute; top: 0; left: 0; opacity: 0; transition: opacity 0.4s ease-in-out; content: " "; display: block; }

html.light body > header ul li button span { background: #FFFFFF; }
html.menu body > header ul li button span { background: rgba(32,32,38,0); }
html.light body > header ul li button span::before,
html.light body > header ul li button span::after,
html.menu body > header ul li button span::before,
html.menu body > header ul li button span::after { background: #FFFFFF; }
html.menu body > header ul li button span::before,
html.menu body > header ul li button span::after { top: 0; transform: rotate(45deg); }
html.menu body > header ul li button span::after { transform: rotate(-45deg); }
html.light body > header h1 a img,
html.menu body > header h1 a img { opacity: 0; }
html.light body > header h1 a::after,
html.menu body > header h1 a::after { opacity: 1; }

@media only screen and (min-width: 1024px) {
	body > header { padding: 55px 64px; gap: 48px; }
	body > header ul li button { width: 18px; height: 18px; }
	body > header ul li button span { height: 2px; top: calc( 50% - ( 2px / 2 ) ); }
	body > header ul li button span::before,
	body > header ul li button span::after { height: 2px; top: -7px; }
	body > header ul li button span::after { top: 7px; }
	body > header h1 a img { height: 40px; }
}

@media only screen and (min-width: 1024px) and (max-width: 1439px) {
	body > header { padding: 3.819vw 4.444vw; gap: 3.333vw; }
	body > header ul li button { width: 1.25vw; height: 1.25vw; }
	body > header ul li button span { height: 0.139vw; top: calc( 50% - ( 0.139vw / 2 ) ); }
	body > header ul li button span::before,
	body > header ul li button span::after { height: 0.139vw; top: -0.486vw; }
	body > header ul li button span::after { top: 0.486vw; }
	body > header h1 a img { height: 2.778vw; }
}

body > .menu { width: 100%; max-width: 561px; height: 100%; padding: 81px 78px; background: #202026; color: #FFFFFF; overflow: auto; position: fixed; top: 0; left: 0; transform: translateX(-100%); transition: transform 0.4s ease-in-out; z-index: 49; }
html.menu body > .menu { transform: translateX(0); }
body > .menu ul { font-size: 20px; line-height: 46px; }
body > .menu ul li a { color: #FFFFFF; }
body > .menu ul li.on a { color: #B3E2DF; }
body > .menu ul li a:hover { color: #DF9139; }
body > .menu p { padding: 44px 0 0; font-size: 11px; line-height: 14px; }

@media only screen and (min-width: 1024px) {
	body > .menu { padding: 135px 130px 0; }
	body > .menu ul { font-size: 34px; line-height: 2.294; }
	body > .menu p { padding: 4.563em 0 0; font-size: 16px; line-height: 1.500; }
}

@media only screen and (min-width: 1024px) and (max-height: 990px) {
	body > .menu ul { font-size: 3.434vh; }
	body > .menu p { font-size: 1.616vh; }
}

body > .menu-overlay { width: 100%; height: 100%; background: rgba(0,0,0,0.2); position: fixed; top: 0; left: 0; transform: translateX(-100%); transition: transform 0.4s ease-in-out; z-index: 48; }
html.menu body > .menu-overlay { transform: translateX(0); }

main { overflow: hidden; }

main img { max-width: 100%; }

main .btn { width: 13.583em; height: 3.833em; font-weight: 700; font-size: 11px; text-transform: uppercase; letter-spacing: 0.08em; color: #FFFFFF; background: #202026; border: 0; border-radius: 2.333em; text-align: center; display: inline-flex; justify-content: center; align-items: center; }
main .btn:hover,
main a:hover .btn { color: #202026; background: #B3E2DF; }
main .btn.rv { color: #202027; background: #FFFFFF; }
main .btn.rv:hover,
main a:hover .btn.rv { color: #202026; background: #B3E2DF; }
main .btn.shadow { box-shadow: 0px 0.333em 0.333em 0px #00000040; }

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

@media only screen and (min-width: 1024px) and (max-width: 1439px) {
	main .btn { font-size: 0.833vw; }
}

main > .heading .cols { max-width: 1440px; margin: 0 auto; padding: 109px 32px 0; }
main > .heading .cols .left h1 { font-size: 33px; line-height: 1.164; text-wrap: balance; }
main > .heading .cols .left h1 strong { font-weight: 700; }
main > .heading.green .cols .left h1 strong { color: #699B48; }
main > .heading .cols .right { padding: 32px 0 0; }
main > .heading .cols .right p { margin: 1.500em 0 0; font-size: 14px; line-height: 1.5; }
main > .heading .cols .right p:first-child { margin: 0; }
main > .heading figure { padding: 32px 0 0; }
main > .heading figure img { width: 100%; height: auto; }

@media only screen and (min-width: 1024px) {
	main > .heading .cols { padding: 170px 104px 0 130px; display: grid; grid-template-columns: 1fr 36.07%; gap: 100px; }
	main > .heading .cols .left h1 { font-size: 55px; }
	main > .heading .cols .right { padding: 4px 0 0; }
	main > .heading .cols .right p { font-size: 22px; }
	main > .heading figure { padding: 74px 0 0; }
}

@media only screen and (min-width: 1024px) and (max-width: 1439px) {
	main > .heading .cols { padding: 11.806vw 7.222vw 0 9.028vw; gap: 6.944vw; }
	main > .heading .cols .left h1 { font-size: 3.819vw; }
	main > .heading .cols .right { padding: 0.278vw 0 0; }
	main > .heading .cols .right p { font-size: 1.528vw; }
	main > .heading figure { padding: 5.139vw 0 0; }
}

main > .full-image img { width: 100%; height: auto; }

main > .projects-heading { max-width: 1440px; margin: 0 auto; padding: 109px 32px 32px; }
main > .projects-heading h1 { font-size: 33px; line-height: 1.164; text-wrap: balance; }

@media only screen and (min-width: 1024px) {
	main > .projects-heading { padding: 180px 130px 86px; }
	main > .projects-heading h1 { font-size: 55px; }
}

@media only screen and (min-width: 1024px) and (max-width: 1439px) {
	main > .projects-heading { padding: 12.5vw 9.028vw 5.972vw; }
	main > .projects-heading h1 { font-size: 3.819vw; }
}

main > .featured-project > h2 { max-width: 1440px; margin: 0 auto 4.167em; padding: 0 32px; font-weight: 700; font-size: 11px; letter-spacing: 0.08em; text-transform: uppercase; }
main > .featured-project .project { color: #FFFFFF; }
main > .featured-project .project figure { position: relative; }
main > .featured-project .project figure img { width: 100%; height: 60vh; object-fit: cover; }
main > .featured-project .project figure::before { width: 100%; height: 100%; position: absolute; top: 0; left: 0; background: linear-gradient(0deg, rgba(0, 0, 0, 0.6) 3.2%, rgba(0, 0, 0, 0) 68.45%); content: " "; display: block; z-index: 2; }
main > .featured-project .project .hold { width: 100%; position: absolute; bottom: 32px; left: 0; z-index: 4; }
main > .featured-project .project .wrap { max-width: 1440px; margin: 0 auto; padding: 0 32px; }
main > .featured-project .project p { font-weight: 700; font-size: 11px; letter-spacing: 0.08em; text-transform: uppercase; }
main > .featured-project .project h2 { margin: 0.412em 0 0.588em; font-size: 21px; line-height: 1.059; }
main > .featured-project .project h2 strong { font-weight: 400; display: block; }

@media only screen and (min-width: 1024px) {
	main > .featured-project > h2 { padding: 0 130px; font-size: 12px; }
	main > .featured-project .project .hold { bottom: 58px; }
	main > .featured-project .project .wrap { padding: 0 106px; }
	main > .featured-project .project figure img { height: auto; }
	main > .featured-project .project p { font-size: 12px; }
	main > .featured-project .project h2 { font-size: 34px; }
}

@media only screen and (min-width: 1024px) and (max-width: 1439px) {
	main > .featured-project > h2 { padding: 0 9.028vw; font-size: 0.833vw; }
	main > .featured-project .project .hold { bottom: 4.028vw; }
	main > .featured-project .project .wrap { padding: 0 7.361vw; }
	main > .featured-project .project p { font-size: 0.833vw; }
	main > .featured-project .project h2 { font-size: 2.361vw; }
}

main > .projects-filter { color: #FFFFFF; background: #202026; }
main > .projects-filter .wrap { max-width: 1440px; margin: 0 auto; padding: 32px; }
main > .projects-filter h2 { font-weight: 700; font-size: 11px; line-height: 1.5; letter-spacing: 0.08em; text-transform: uppercase; }
main > .projects-filter ul { margin: 1em 0 0; font-size: 14px; line-height: 1.565; display: flex; flex-wrap: wrap; gap: 0.435em 1.739em; }
main > .projects-filter ul li a { color: #FFFFFF; opacity: 0.3; }
main > .projects-filter ul li.on a { opacity: 1; }

@media only screen and (min-width: 1024px) {
	main > .projects-filter .wrap { padding: 82px 105px 90px; display: grid; grid-template-columns: auto 1fr; gap: 20px; align-items: center; }
	main > .projects-filter h2 { font-size: 12px; }
	main > .projects-filter ul { margin: 0; font-size: 23px; justify-self: end; }
}

@media only screen and (min-width: 1024px) and (max-width: 1439px) {
	main > .projects-filter .wrap { padding: 5.694vw 7.292vw 6.25vw; gap: 1.389vw; }
	main > .projects-filter h2 { font-size: 0.833vw; }
	main > .projects-filter ul { font-size: 1.597vw; }
}

main > .project-overview { color: #FFFFFF; background: #202027; }
main > .project-overview .wrap { max-width: 1440px; margin: 0 auto; padding: 32px; }
main > .project-overview h2 { font-weight: 700; font-size: 11px; letter-spacing: 0.08em; text-transform: uppercase; }
main > .project-overview .left { padding: 32px 0 0; }
main > .project-overview .left h1 { font-size: 33px; line-height: 1.164; }
main > .project-overview .left h1 strong { font-weight: 400; display: block; }
main > .project-overview .left table { margin: 6.667em 0 0; font-size: 11px; line-height: 1.4; letter-spacing: 0.08em; text-transform: uppercase; }
main > .project-overview .left table tr { border-bottom: 1px solid #9E9E9E; }
main > .project-overview .left table tr th { padding: 2.083em 7.167em 1.917em 0; font-weight: 700; }
main > .project-overview .left table tr td { padding: 2.083em 0 1.917em; text-align: right; }
main > .project-overview .right { padding: 32px 0 0; }
main > .project-overview .right ul li img { width: 34px; height: 34px; }
main > .project-overview .right p { margin: 1.435em 0 0; font-size: 14px; line-height: 1.435; }
main > .project-overview .right p:first-child { margin: 0; }
main > .project-overview .right ul + p { margin: 1.217em 0 0; }

@media only screen and (min-width: 1024px) {
	main > .project-overview .wrap { padding: 82px 104px 136px; display: grid; grid-template-columns: 1fr 466px; gap: 45px 217px; }
	main > .project-overview h2 { font-size: 12px; grid-column: span 2; }
	main > .project-overview .left { padding: 0; }
	main > .project-overview .left h1 { font-size: 55px; }
	main > .project-overview .left table { font-size: 12px; }
	main > .project-overview .right { padding: 8px 0 0; }
	main > .project-overview .right ul li img { width: 57px; height: 57px; }
	main > .project-overview .right p { font-size: 23px; }
}

@media only screen and (min-width: 1024px) and (max-width: 1439px) {
	main > .project-overview .wrap { padding: 5.694vw 7.222vw 9.444vw; grid-template-columns: 1fr 32.361vw; gap: 3.125vw 15.069vw; }
	main > .project-overview h2 { font-size: 0.833vw; }
	main > .project-overview .left h1 { font-size: 3.819vw; }
	main > .project-overview .left table { font-size: 0.833vw; }
	main > .project-overview .right { padding: 0.556vw 0 0; }
	main > .project-overview .right ul li img { width: 3.958vw; height: 3.958vw; }
	main > .project-overview .right p { font-size: 1.597vw; }
}

main > .project-details .wrap { max-width: 1440px; margin: 0 auto; padding: 32px; }
main > .project-details h2 { font-weight: 700; font-size: 11px; letter-spacing: 0.08em; text-transform: uppercase; }
main > .project-details .text { padding: 32px 0 0; }
main > .project-details .text p { margin: 1.435em 0 0; font-size: 14px; line-height: 1.435; }
main > .project-details .text p:first-child { margin: 0; }

@media only screen and (min-width: 1024px) {
	main > .project-details .wrap { padding: 106px 225px 108px 114px; }
	main > .project-details h2 { font-size: 12px; }
	main > .project-details .text { padding: 72px 0 0 100px; }
	main > .project-details .text p { font-size: 23px; }
}

@media only screen and (min-width: 1024px) and (max-width: 1439px) {
	main > .project-details .wrap { padding: 7.361vw 15.625vw 7.5vw 7.917vw; }
	main > .project-details h2 { font-size: 0.833vw; }
	main > .project-details .text { padding: 5vw 0 0 6.944vw; }
	main > .project-details .text p { font-size: 1.597vw; }
}

main > .text-columns.dark { color: #FFFFFF; background: #202026; }
main > .text-columns .wrap { max-width: 1440px; margin: 0 auto; padding: 32px; }
main > .text-columns h2 { font-weight: 700; font-size: 11px; letter-spacing: 0.08em; text-transform: uppercase; }
main > .text-columns .wrap .left { padding: 32px 0 0; }
main > .text-columns .wrap .left p { margin: 1.164em 0 0; font-size: 33px; line-height: 1.164; text-wrap: balance; }
main > .text-columns .wrap .left p:first-child { margin: 0; }
main > .text-columns .wrap .right { padding: 32px 0 0; }
main > .text-columns .wrap .right p { margin: 1.435em 0 0; font-size: 14px; line-height: 1.435; }
main > .text-columns .wrap .right p:first-child { margin: 0; }
main > .text-columns .wrap .right ul { margin: 16px 0 0; }

@media only screen and (min-width: 1024px) {
	main > .text-columns .wrap { padding: 82px 126px 92px 104px; display: grid; grid-template-columns: 1fr 446px; gap: 45px 140px; }
	main > .text-columns h2 { font-size: 12px; grid-column: span 2; }
	main > .text-columns .wrap .left { padding: 0; }
	main > .text-columns .wrap .left p { font-size: 55px; }
	main > .text-columns .wrap .right { padding: 0; }
	main > .text-columns .wrap .right p { font-size: 23px; }
	main > .text-columns .wrap .right ul { margin: 26px 0 0; }
}

@media only screen and (min-width: 1024px) and (max-width: 1439px) {
	main > .text-columns .wrap { padding: 5.694vw 8.75vw 6.389vw 7.222vw; grid-template-columns: 1fr 30.972vw; gap: 3.125vw 9.722vw; }
	main > .text-columns h2 { font-size: 0.833vw; }
	main > .text-columns .wrap .left p { font-size: 3.819vw; }
	main > .text-columns .wrap .right p { font-size: 1.597vw; }
	main > .text-columns .wrap .right ul { margin: 1.806vw 0 0; }
}

body.home main > .text-columns .wrap .left p { margin: 1.178em 0 0; font-size: 27px; line-height: 1.1.178; }
body.home main > .text-columns .wrap .left p:first-child { margin: 0; }
body.home main > .text-columns .wrap .left p strong { color: #B3E2DF; }
body.home main > .text-columns .wrap .left p strong:nth-of-type(2) { color: #4A9B48; }
body.home main > .text-columns .wrap .right p { margin: 1.500em 0 0; font-size: 14px; line-height: 1.500; }
body.home main > .text-columns .wrap .right p:first-child { margin: 0; }

@media only screen and (min-width: 1024px) {
	body.home main > .text-columns .wrap { padding: 90px 104px 104px; grid-template-columns: 1fr 454px; gap: 45px 100px; }
	body.home main > .text-columns .wrap .left p { font-size: 45px; }
	body.home main > .text-columns .wrap .right p { font-size: 22px; }
}

@media only screen and (min-width: 1024px) and (max-width: 1439px) {
	body.home main > .text-columns .wrap { padding: 6.25vw 7.222vw 7.222vw; grid-template-columns: 1fr 31.528vw; gap: 3.125vw 6.944vw; }
	body.home main > .text-columns .wrap .left p { font-size: 3.125vw; }
	body.home main > .text-columns .wrap .right p { font-size: 1.528vw; }

}

main > .sectors-listing { color: #FFFFFF; background: #202026; }
main > .sectors-listing.light { color: #202026; background: #FFFFFF; }
main > .sectors-listing .wrap { max-width: 1440px; margin: 0 auto; padding: 32px; }
main > .sectors-listing h2 { font-weight: 700; font-size: 11px; letter-spacing: 0.08em; text-transform: uppercase; }
main > .sectors-listing .text { padding: 32px 0 0; }
main > .sectors-listing .text p { margin: 1.164em 0 0; font-size: 33px; line-height: 1.164; text-wrap: balance; }
main > .sectors-listing .text p:first-child { margin: 0; }
main > .sectors-listing ul { margin: 32px 0 0; display: grid; grid-template-columns: 1fr; gap: 32px; }
main > .sectors-listing ul li a { color: #FFFFFF; display: grid; grid-template-columns: 54px auto; grid-template-rows: auto 1fr; gap: 0 36px; }
main > .sectors-listing.light ul li a { color: #202026; }
main > .sectors-listing ul li a img { width: 100%; height: auto; grid-row: span 2; transition: transform 0.4s ease-in-out; }
main > .sectors-listing ul li a:hover img { transform: scale(1.1); }
main > .sectors-listing ul li a h3 { padding: 0.500em 0 0; font-weight: 700; font-size: 11px; letter-spacing: 0.08em; text-transform: uppercase; }
main > .sectors-listing ul li a p { padding: 1.250em 0 0; font-size: 11px; line-height: 1.583; }

@media only screen and (min-width: 1024px) {
	main > .sectors-listing .wrap { padding: 58px 104px 112px; }
	main > .sectors-listing h2 { font-size: 12px; }
	main > .sectors-listing .text { padding: 52px 0 0; }
	main > .sectors-listing .text p { font-size: 55px; }
	main > .sectors-listing ul { margin: 118px 0 0; padding: 0 98px; grid-template-columns: 1fr 1fr; grid-template-rows: auto auto auto; grid-auto-flow: column; gap: 104px; }
	main > .sectors-listing ul li a { grid-template-columns: 90px auto; gap: 0 60px; }
	main > .sectors-listing ul li a h3 { font-size: 12px; }
	main > .sectors-listing ul li a p { font-size: 12px; }
}

@media only screen and (min-width: 1024px) and (max-width: 1439px) {
	main > .sectors-listing .wrap { padding: 4.028vw 7.222vw 7.778vw; }
	main > .sectors-listing h2 { font-size: 0.833vw; }
	main > .sectors-listing .text { padding: 3.611vw 0 0; }
	main > .sectors-listing .text p { font-size: 3.819vw; }
	main > .sectors-listing ul { margin: 8.194vw 0 0; padding: 0 6.806vw; gap: 7.222vw; }
	main > .sectors-listing ul li a { grid-template-columns: 6.25vw auto; gap: 0 4.167vw; }
	main > .sectors-listing ul li a h3 { font-size: 0.833vw; }
	main > .sectors-listing ul li a p { font-size: 0.833vw; }
}


main > .text-image { color: #FFFFFF; background: #202027; }
main > .text-image .wrap { max-width: 1440px; margin: 0 auto; }
main > .text-image figure img { width: 100%; height: auto; }
main > .text-image .text { padding: 32px; }
main > .text-image .text h2 { font-weight: 700; font-size: 11px; letter-spacing: 0.08em; text-transform: uppercase; }
main > .text-image .text p { margin: 1.217em 0 0; font-size: 14px; line-height: 1.217; }
main > .text-image .text h2 + p { margin: 1.156em 0 0; font-size: 27px; line-height: 1.044; }
main > .text-image .text h2 + p + p { margin: 1.739em 0 0; }

@media only screen and (min-width: 1024px) {
	main > .text-image .wrap { display: grid; grid-template-columns: 1fr 675px; }
	main > .text-image figure { grid-column: 2; grid-row: 1; }
	main > .text-image .text { padding: 86px 160px 40px 114px; grid-column: 1; grid-row: 1; }
	main > .text-image .text h2 { font-size: 12px; }
	main > .text-image .text p { font-size: 23px; }
	main > .text-image .text h2 + p { font-size: 45px; }
}

@media only screen and (min-width: 1024px) and (max-width: 1439px) {
	main > .text-image .wrap { grid-template-columns: 1fr 46.875vw; }
	main > .text-image .text { padding: 5.972vw 11.111vw 2.778vw 7.917vw; }
	main > .text-image .text h2 { font-size: 0.833vw; }
	main > .text-image .text p { font-size: 1.597vw; }
	main > .text-image .text h2 + p { font-size: 3.125vw; }
}

main > .image-text-highlights .images img { width: 100%; height: auto; }
main > .image-text-highlights .text { max-width: 1440px; margin: 0 auto; padding: 32px; display: grid; grid-template-columns: 1fr; gap: 36px; counter-reset: col; }
main > .image-text-highlights .text .col::before { margin: 0 0 3.167em; padding: 0 0 2.500em; font-weight: 700; font-size: 11px; letter-spacing: 0.08em; text-transform: uppercase; border-bottom: 0.167em solid #000000; counter-increment: col; content: counter(col, decimal-leading-zero); display: block; }
main > .image-text-highlights .text .col h2 { font-weight: 700; font-size: 11px; letter-spacing: 0.08em; text-transform: uppercase; }
main > .image-text-highlights .text .col p { margin: 1.533em 0 0; font-size: 12px; line-height: 1.533; }
main > .image-text-highlights .text .col h2 + p { margin: 2.000em 0 0; }

@media only screen and (min-width: 1024px) {
	main > .image-text-highlights .text { padding: 100px 104px 10px; grid-template-columns: 1fr 1fr 1fr; gap: 100px; }
	main > .image-text-highlights .text .col { opacity: 0.3; transition: opacity 0.4s ease; }
	main > .image-text-highlights .text .col.active { opacity: 1; }
	main > .image-text-highlights .text .col::before { font-size: 12px; }
	main > .image-text-highlights .text .col h2 { font-size: 12px; }
	main > .image-text-highlights .text .col p { font-size: 15px; }
}

@media only screen and (min-width: 1024px) and (max-width: 1439px) {
	main > .image-text-highlights .text { padding: 6.944vw 7.222vw 0.694vw; grid-template-columns: 1fr 1fr 1fr; gap: 6.944vw; }
	main > .image-text-highlights .text .col::before { font-size: 0.833vw; }
	main > .image-text-highlights .text .col h2 { font-size: 0.833vw; }
	main > .image-text-highlights .text .col p { font-size: 1.042vw; }
}

main > .about { color: #FFFFFF; background: #202027; }
main > .about .wrap { max-width: 1440px; margin: 0 auto; }
main > .about figure img { width: 100%; height: auto; }
main > .about figure::after { width: 84px; height: 228px; background: url(images/about.svg) no-repeat 50% 50% / cover; position: absolute; bottom: 0; right: 0; content: " "; display: block; }
main > .about .text { padding: 32px; }
main > .about .text h2 { font-weight: 500; font-size: 21px; line-height: 1.206; text-wrap: balance; }
main > .about .text p { margin: 1.400em 0 0; font-size: 12px; line-height: 1.400; }
main > .about .text h2 + p { margin: 1.750em 0 0; }

main > .about.image-right figure::after { width: 276px; height: 72px; background-image: url(images/about-right.svg); }

@media only screen and (min-width: 1024px) {
	main > .about .wrap { display: grid; grid-template-columns: 1fr 676px; }
	main > .about figure img { min-height: 100%; object-fit: cover; }
	main > .about figure::after { width: 140px; height: 379px; }
	main > .about .text { padding: 56px 104px 56px 81px; }
	main > .about .text h2 { font-size: 34px; }
	main > .about .text p {  font-size: 20px; }

	main > .about.image-right .wrap { grid-template-columns: 676px 1fr; }
	main > .about.image-right figure { order: 2; }
	main > .about.image-right figure::after { width: 461px; height: 119px; }
	main > .about.image-right .text { padding: 56px 92px; order: 1; }
}

@media only screen and (min-width: 1024px) and (max-width: 1439px) {
	main > .about .wrap { grid-template-columns: 1fr 46.944vw; }
	main > .about figure::after { width: 9.722vw; height: 26.319vw; }
	main > .about .text { padding: 3.889vw 7.222vw 3.889vw 5.625vw; }
	main > .about .text h2 { font-size: 2.361vw; }
	main > .about .text p { font-size: 1.389vw; }

	main > .about.image-right .wrap { grid-template-columns: 46.944vw 1fr; }
	main > .about.image-right figure::after { width: 32.014vw; height: 8.264vw; }
	main > .about.image-right .text { padding: 3.889vw 6.389vw; }
}

main > .careers .wrap { max-width: 1440px; margin: 0 auto; padding: 32px; display: grid; grid-template-columns: 1fr; gap: 32px; }
main > .careers h2 { font-weight: 700; font-size: 11px; letter-spacing: 0.08em; text-transform: uppercase; }
main > .careers .heading h3 { font-weight: 500; font-size: 33px; line-height: 1.164; }
main > .careers .heading p { margin: 1.450em 0 0; font-size: 12px; line-height: 1.400; }
main > .careers ul li { padding: 22px 0 14px; border-bottom: 1px solid #9E9E9E; display: grid; grid-template-columns: 1fr auto; align-items: center; }
main > .careers ul li:first-child { padding-top: 4px; }
main > .careers ul li p { font-weight: 500; font-size: 20px; line-height: 1.206; }

@media only screen and (min-width: 1024px) {
	main > .careers .wrap { padding: 78px 104px 154px; grid-template-columns: 1fr 566px; gap: 42px 40px; }
	main > .careers h2 { font-size: 12px; grid-column: span 2; }
	main > .careers .heading h3 { font-size: 55px; }
	main > .careers .heading p { font-size: 20px; }
	main > .careers ul li { padding: 36px 0 22px; }
	main > .careers ul li:first-child { padding-top: 8px; }
	main > .careers ul li p { font-size: 34px; }
}

@media only screen and (min-width: 1024px) and (max-width: 1439px) {
	main > .careers .wrap { padding: 5.417vw 7.222vw 10.694vw; grid-template-columns: 1fr 39.306vw; gap: 2.917vw 2.778vw; }
	main > .careers h2 { font-size: 0.833vw; }
	main > .careers .heading h3 { font-size: 3.819vw; }
	main > .careers .heading p { font-size: 1.389vw; }
	main > .careers ul li { padding: 2.5vw 0 1.528vw; }
	main > .careers ul li:first-child { padding-top: 0.556vw; }
	main > .careers ul li p { font-size: 2.361vw; }
}

main > .awards { text-align: center; color: #FFFFFF; background: #202027; }
main > .awards .wrap { max-width: 1440px; margin: 0 auto; padding: 32px; }
main > .awards h2 { font-weight: 500; font-size: 33px; line-height: 1.164; }
main > .awards ul { margin: 42px 0 0; display: flex; flex-wrap: wrap; justify-content: center; gap: 15px 30px; }
main > .awards ul li img { width: auto; height: 54px; }

@media only screen and (min-width: 1024px) {
	main > .awards .wrap { padding: 130px 104px; }
	main > .awards h2 { font-size: 55px; }
	main > .awards ul { margin: 70px 0 0; gap: 25px 50px; }
	main > .awards ul li img {  height: 91px; }
}

@media only screen and (min-width: 1024px) and (max-width: 1439px) {
	main > .awards .wrap { padding: 9.028vw 7.222vw; }
	main > .awards h2 { font-size: 3.819vw; }
	main > .awards ul { margin: 4.861vw 0 0; gap: 1.736vw 3.472vw; }
	main > .awards ul li img { height: 6.319vw; }
}

main > .logos { color: #FFFFFF; background: #202027; }
main > .logos .wrap { max-width: 1440px; margin: 0 auto; padding: 32px; }
main > .logos h2 { margin: 0 0 5.417em; font-weight: 700; font-size: 11px; letter-spacing: 0.08em; text-transform: uppercase; }
main > .logos figure img { width: 100%; height: auto; }

@media only screen and (min-width: 1024px) {
	main > .logos .wrap { padding: 260px 92px 182px; }
	main > .awards + .logos .wrap { padding-top: 32px; }
	main > .logos h2 { padding: 0 22px; font-size: 12px; }
}

@media only screen and (min-width: 1024px) and (max-width: 1439px) {
	main > .logos .wrap { padding: 18.056vw 6.389vw 12.639vw; }
	main > .awards + .logos .wrap { padding-top: 2.222vw; }
	main > .logos h2 { padding: 0 1.528vw; font-size: 0.833vw; }
}

main > .video { padding-bottom: 56.25%; height: 0; }
main > .video video,
main > .video iframe { width: 100%; height: 100%; position: absolute; top: 0; left: 0; object-fit: cover; }
main > .video.overlay::after { width: 100%; height: 100%; background: #000000; opacity: 0.4; position: absolute; top: 0; left: 0; content: " "; display: block; }

main > .overview { max-width: 1440px; margin: 0 auto; padding: 32px; }
main > .overview .left { padding: 0 0 32px; }
main > .overview .left p { margin: 0 0 2.750em; font-weight: 700; font-size: 11px; letter-spacing: 0.08em; text-transform: uppercase; }
main > .overview .left h1 { font-size: 33px; line-height: 1.164; }
main > .overview .right p { margin: 1.435em 0 0; font-size: 14px; line-height: 1.435; }
main > .overview .right p:first-child { margin: 0; }

@media only screen and (min-width: 1024px) {
	main > .overview { padding: 88px 94px 98px 112px; display: grid; grid-template-columns: 1fr 64.83%; gap: 40px; }
	main > .overview .left { padding: 3px 0 0; }
	main > .overview .left p { font-size: 12px; }
	main > .overview .left h1 { font-size: 55px; }
	main > .overview .right p { font-size: 23px; }
}

@media only screen and (min-width: 1024px) and (max-width: 1439px) {
	main > .overview { padding: 6.111vw 6.528vw 6.806vw 7.778vw; gap: 2.778vw; }
	main > .overview .left { padding: 0.208vw 0 0; }
	main > .overview .left p { font-size: 0.833vw; }
	main > .overview .left h1 { font-size: 3.819vw; }
	main > .overview .right p { font-size: 1.597vw; }
}

main > .image-banner { color: #FFFFFF; }
main > .image-banner figure img { width: 100%; height: 75vh; object-fit: cover; }
main > .image-banner figure::after { width: 100%; height: 100%; background: #000000; opacity: 0.2; position: absolute; top: 0; left: 0; content: " "; display: block; }
main > .image-banner .wrap { width: 100%; padding: 32px; position: absolute; top: 0; left: 0; }
main > .image-banner .wrap h2 { font-weight: 700; font-size: 11px; text-transform: uppercase; letter-spacing: 0.08em; }
main > .image-banner .wrap p { margin: 0.764em 0; font-weight: 500; font-size: 33px; line-height: 1.164; text-wrap: balance; }

@media only screen and (min-width: 1024px) {
	main > .image-banner figure img { height: auto; }
	main > .image-banner .wrap { padding: 115px 108px 0; }
	main > .image-banner .wrap h2 { font-size: 12px; }
	main > .image-banner .wrap p { max-width: 600px; font-size: 55px; }
}

@media only screen and (min-width: 1024px) and (max-width: 1439px) {
	main > .image-banner .wrap { padding: 7.986vw 7.5vw 0; }
	main > .image-banner .wrap h2 { font-size: 0.833vw; }
	main > .image-banner .wrap p { max-width: 41.667vw; font-size: 3.819vw; }

}


/*
		<section class="image-banner" data-header="light">
			<figure class="animcleft"><img src="/content/image-banner.jpg" alt=""></figure>
			<div class="wrap animcup">
				<h2>The TMT Family</h2>
				<p>We couldn’t do what we do without the TMT family</p>
				<ul>
					<li><a href="#" class="btn rv shadow">Read more</a></li>
				</ul>
			</div>
		</section>
*/

main > .sector-overview { color: #FFFFFF; background: #202026; }
main > .sector-overview .wrap { max-width: 1440px; margin: 0 auto; padding: 32px; }
main > .sector-overview ul { font-weight: 500; font-size: 12px; line-height: 1.800; }
main > .sector-overview ul li { padding: 0 0 0 0.900em; position: relative; }
main > .sector-overview ul li::before { position: absolute; top: 0; left: 0; content: "•"; display: block; }
main > .sector-overview ul li strong { font-weight: 400; display: block; }

@media only screen and (min-width: 1024px) {
	main > .sector-overview.industrial::before { width: 670px; height: 636px; background: url(images/sector-industrial.svg) no-repeat 50% 50% / cover; position: absolute; bottom: 0; left: calc( 50% - 722px ); content: " "; display: block; }
	main > .sector-overview.office::before { width: 971px; height: 567px; background: url(images/sector-office.svg) no-repeat 50% 50% / cover; position: absolute; bottom: 0; left: calc( 50% - 955px ); content: " "; display: block; }
	main > .sector-overview.rail::before { width: 744px; height: 466px; background: url(images/sector-rail.svg) no-repeat 50% 50% / cover; position: absolute; bottom: 0; left: calc( 50% - 760px ); content: " "; display: block; }
	main > .sector-overview.leisure-and-retail::before { width: 711px; height: 508px; background: url(images/sector-leisure-and-retail.svg) no-repeat 50% 50% / cover; position: absolute; bottom: 0; left: calc( 50% - 695px ); content: " "; display: block; }
	main > .sector-overview.education::before { width: 895px; height: 549px; background: url(images/sector-education.svg) no-repeat 50% 50% / cover; position: absolute; bottom: 0; left: calc( 50% - 894px ); content: " "; display: block; }
	main > .sector-overview.labs::before { width: 762px; height: 480px; background: url(images/sector-labs.svg) no-repeat 50% 50% / cover; position: absolute; top: calc( 50% - ( 480px / 2 ) ); left: calc( 50% - 728px ); content: " "; display: block; }
	main > .sector-overview .wrap { min-height: 726px; padding: 0 104px 0 856px; display: flex; align-items: center; }
	main > .sector-overview ul { font-size: 20px; }
}

@media only screen and (min-width: 1024px) and (max-width: 1439px) {
	main > .sector-overview.industrial::before { width: 46.528vw; height: 44.167vw; left: calc( 50% - 50.139vw ); }
	main > .sector-overview.office::before { width: 67.431vw; height: 39.375vw; left: calc( 50% - 66.319vw ); }
	main > .sector-overview.rail::before { width: 51.667vw; height: 32.361vw; left: calc( 50% - 52.778vw ); }
	main > .sector-overview.leisure-and-retail::before { width: 49.375vw; height: 35.278vw; left: calc( 50% - 48.264vw ); }
	main > .sector-overview.education::before { width: 62.153vw; height: 38.125vw; left: calc( 50% - 62.083vw ); }
	main > .sector-overview.labs::before { width: 52.917vw; height: 33.333vw; top: calc( 50% - ( 33.333vw / 2 ) ); left: calc( 50% - 50.556vw ); }
	main > .sector-overview .wrap { min-height: 50.417vw; padding: 0 7.222vw 0 59.444vw; }
	main > .sector-overview ul { font-size: 1.389vw; }
}

main > .sectors-links { max-width: 1440px; margin: 0 auto; padding: 32px; }
main > .sectors-links h2 { font-weight: 700; font-size: 11px; letter-spacing: 0.08em; text-transform: uppercase; }
main > .sectors-links ul { margin: 62px 0 0; text-align: center; display: flex; flex-wrap: wrap; justify-content: center; gap: 30px; }
main > .sectors-links ul li { width: 84px; }
main > .sectors-links ul li a { display: block; }
main > .sectors-links ul li a img { width: 54px; height: 54px; transition: transform 0.4s ease-in-out; }
main > .sectors-links ul li a:hover img { transform: scale(1.1); }
main > .sectors-links ul li a span { padding: 3.750em 0 0; font-weight: 700; font-size: 12px; letter-spacing: 0.08em; text-transform: uppercase; display: block; }

@media only screen and (min-width: 1024px) {
	main > .sectors-links { padding: 38px 105px 120px; }
	main > .sectors-links h2 { font-size: 12px; }
	main > .sectors-links ul { margin: 102px 0 0; gap: 50px; }
	main > .sectors-links ul li { width: 140px; }
	main > .sectors-links ul li a img { width: 90px; height: 90px; }
	main > .sectors-links ul li a span { font-size: 11px; }
}

@media only screen and (min-width: 1024px) and (max-width: 1439px) {
	main > .sectors-links { padding: 2.639vw 7.292vw 8.333vw; }
	main > .sectors-links h2 { font-size: 0.833vw; }
	main > .sectors-links ul { margin: 7.083vw 0 0; gap: 3.472vw; }
	main > .sectors-links ul li { width: 9.722vw; }
	main > .sectors-links ul li a img { width: 6.25vw; height: 6.25vw; }
	main > .sectors-links ul li a span { font-size: 0.764vw; }
}

main > .how { color: #FFFFFF; background: #202026; }
main > .how .wrap { max-width: 1440px; margin: 0 auto; padding: 32px; }
main > .how h2 { font-weight: 700; font-size: 11px; text-transform: uppercase; letter-spacing: 0.08em; }
main > .how .cols { margin: 32px 0 0; }
main > .how .cols .left p { margin: 1.164em 0 0; font-size: 33px; line-height: 1.164; }
main > .how .cols .left p:first-child { margin: 0; }
main > .how .cols .right { padding: 32px 0 0; }
main > .how .cols .right p { margin: 1.435em 0 0; font-size: 14px; line-height: 1.435; }
main > .how .cols .right p:first-child { margin: 0; }
main > .how ul.icons { margin: 32px 0 0; text-align: center; display: flex; flex-wrap: wrap; justify-content: center; gap: 32px 0; }
main > .how ul.icons li { max-width: 182px; }
main > .how ul.icons li img { width: 116px; height: 116px; }
main > .how ul.icons li span { padding: 32px 0 0; font-size: 11px; line-height: 1.583; text-wrap: balance; display: block; }

@media only screen and (min-width: 1024px) {
	main > .how .wrap { padding: 106px 106px 166px 110px; }
	main > .how h2 { font-size: 12px; }
	main > .how .cols { margin: 45px 0 0; display: grid; grid-template-columns: 622px 1fr; gap: 116px; }
	main > .how .cols .left p { font-size: 55px; }
	main > .how .cols .right { padding: 4px 0 0; }
	main > .how .cols .right p { font-size: 23px; }
	main > .how ul.icons { margin: 125px 0 0; gap: 0; }
	main > .how ul.icons li { max-width: 304px; }
	main > .how ul.icons li img { width: 192px; height: 192px; }
	main > .how ul.icons li span { padding: 75px 35px 0; font-size: 12px; }
}

@media only screen and (min-width: 1024px) and (max-width: 1439px) {
	main > .how .wrap { padding: 7.361vw 7.361vw 11.528vw 7.639vw; }
	main > .how h2 { font-size: 0.833vw; }
	main > .how .cols { margin: 3.125vw 0 0; grid-template-columns: 43.194vw 1fr; gap: 8.056vw; }
	main > .how .cols .left p { font-size: 3.819vw; }
	main > .how .cols .right { padding: 0.278vw 0 0; }
	main > .how .cols .right p { font-size: 1.597vw; }
	main > .how ul.icons { margin: 8.681vw 0 0; }
	main > .how ul.icons li { max-width: 21.111vw; }
	main > .how ul.icons li img { width: 13.333vw; height: 13.333vw; }
	main > .how ul.icons li span { padding: 5.208vw 2.431vw 0; font-size: 0.833vw; }
}

main > .stats { color: #FFFFFF; background: #202026; text-align: center; }
main > .stats .wrap { max-width: 1440px; margin: 0 auto; padding: 32px; }
main > .stats h2 { font-weight: 500; font-size: 21px; line-height: 1.206; text-wrap: balance; }
main > .stats ul.icons { margin: 32px 0 0; display: flex; flex-wrap: wrap; justify-content: center; gap: 32px; }
main > .stats ul.icons li { width: 188px; }
main > .stats ul.icons li figure img { width: auto; height: 70px; }
main > .stats ul.icons li h3 { margin: 1.055em 0 0; font-weight: 700; font-size: 33px; line-height: 1.164; color: #4A9B48; }
main > .stats ul.icons li p { margin: 0.478em 0 0; font-weight: 500; font-size: 14px; line-height: 1.435; }

@media only screen and (min-width: 1024px) {
	main > .stats .wrap { padding: 0 110px 166px; }
	main > .stats h2 { font-size: 34px; }
	main > .stats ul.icons { margin: 142px 0 0; gap: 132px; }
	main > .stats ul.icons li { width: 312px; }
	main > .stats ul.icons li figure img { height: 118px; }
	main > .stats ul.icons li h3 { font-size: 55px; }
	main > .stats ul.icons li p { font-size: 23px; }
}

@media only screen and (min-width: 1024px) and (max-width: 1439px) {
	main > .stats .wrap { padding: 0 7.639vw 11.528vw; }
	main > .stats h2 { font-size: 2.361vw; }
	main > .stats ul.icons { margin: 9.861vw 0 0; gap: 9.167vw; }
	main > .stats ul.icons li { width: 21.667vw; }
	main > .stats ul.icons li figure img { height: 8.194vw; }
	main > .stats ul.icons li h3 { font-size: 3.819vw; }
	main > .stats ul.icons li p { font-size: 1.597vw; }
}

main > .slides { color: #FFFFFF; background: #4A9B48; }
main > .slides > figure img { width: 100%; height: auto; }
main > .slides .slideshow .slide { padding: 156px 32px 102px; }
main > .slides .slideshow .slide figure img { width: auto; height: 42px; }
main > .slides .slideshow .slide p { padding: 1em 0 0; font-weight: 500; font-size: 14px; line-height: 1.304; }
main > .slides .slideshow .slide.initial::before { width: 143px; height: 140px; background: url(images/slides.svg) no-repeat 50% 50% / cover; position: absolute; top: 0; right: 0; content: " "; display: block; }
main > .slides .slideshow .slide.initial p { padding: 1em 0 0; font-size: 21px; line-height: 1.257; }
main > .slides .slideshow .slick-arrow { width: 38px; height: 38px; background: #FFFFFF; border: 0; border-radius: 50%; box-shadow: 0px 4px 4px 0px #00000040; position: absolute; bottom: 32px; right: 32px; z-index: 10; }
main > .slides .slideshow .slick-prev { right: 80px; }
main > .slides .slideshow .slick-arrow:hover { background: #B3E2DF; }
main > .slides .slideshow .slick-arrow::before { width: 14px; height: 14px; background: url(images/arrow.svg) no-repeat 50% 50% / contain; position: absolute; top: calc( 50% - ( 14px / 2 ) ); left: calc( 50% - ( 14px / 2 ) ); content: " "; display: block; }
main > .slides .slideshow .slick-next::before { transform: rotate(180deg); }

@media only screen and (min-width: 1024px) {
	main > .slides { display: grid; grid-template-columns: 1fr 47.15%; }
	main > .slides .slideshow .slide { padding: 260px 55px 0; }
	main > .slides .slideshow .slide figure img { height: 70px; }
	main > .slides .slideshow .slide p { padding: 44px 120px 0 0; font-size: 23px; }
	main > .slides .slideshow .slide.initial::before { width: 238px; height: 232px; }
	main > .slides .slideshow .slide.initial p { padding: 45px 120px 0 0; font-size: 35px; }
	main > .slides .slideshow .slick-arrow { width: 38px; height: 38px; box-shadow: 0px 4px 4px 0px #00000040; bottom: 62px; right: 32px; }
	main > .slides .slideshow .slick-prev { right: 80px; }
	main > .slides .slideshow .slick-arrow::before { width: 14px; height: 14px; top: calc( 50% - ( 14px / 2 ) ); left: calc( 50% - ( 14px / 2 ) ); }
}

@media only screen and (min-width: 1024px) and (max-width: 1439px) {
	main > .slides .slideshow .slide { padding: 18.056vw 3.819vw 0; }
	main > .slides .slideshow .slide figure img { height: 4.861vw; }
	main > .slides .slideshow .slide p { padding: 3.056vw 8.333vw 0 0; font-size: 1.597vw; }
	main > .slides .slideshow .slide.initial::before { width: 16.528vw; height: 16.111vw; }
	main > .slides .slideshow .slide.initial p { padding: 3.125vw 8.333vw 0 0; font-size: 2.431vw; }
	main > .slides .slideshow .slick-arrow { width: 2.639vw; height: 2.639vw; box-shadow: 0px 0.278vw 0.278vw 0px #00000040; bottom: 4.306vw; right: 2.222vw; }
	main > .slides .slideshow .slick-prev { right: 5.556vw; }
	main > .slides .slideshow .slick-arrow::before { width: 0.972vw; height: 0.972vw; top: calc( 50% - ( 0.972vw / 2 ) ); left: calc( 50% - ( 0.972vw / 2 ) ); }
}

main > .commitments { color: #FFFFFF; background: #202026; }
main > .commitments .wrap { max-width: 1440px; margin: 0 auto; padding: 32px; }
main > .commitments h2 { font-size: 33px; line-height: 1.164; text-wrap: balance; }
main > .commitments .cols { padding: 32px 0 0; display: grid; grid-template-columns: 1fr; gap: 32px; }
main > .commitments .cols .col h3 span { padding: 0 2.167em; height: 3.667em; font-weight: 700; font-size: 11px; letter-spacing: 0.08em; text-transform: uppercase; border: 1px solid #FFFFFF; border-radius: 3.667em; display: inline-flex; align-items: center; }
main > .commitments .cols .col ul { margin: 32px 0 0; display: grid; grid-template-columns: 1fr; gap: 32px; }
main > .commitments .cols .col ul li { display: grid; grid-template-columns: 54px auto; align-items: center; gap: 15px; }
main > .commitments .cols .col ul li figure img { width: 100%; height: auto; }
main > .commitments .cols .col ul li span { font-weight: 700; font-size: 11px; line-height: 1.583; letter-spacing: 0.08em; text-transform: uppercase; text-wrap: balance; display: block; }

@media only screen and (min-width: 1024px) {
	main > .commitments .wrap { padding: 88px 106px 147px; }
	main > .commitments h2 { max-width: 534px; font-size: 55px; }
	main > .commitments .cols { padding: 102px 181px 0 127px; grid-template-columns: 1fr 1fr; gap: 154px; }
	main > .commitments .cols .col h3 span { font-size: 12px; }
	main > .commitments .cols .col ul { margin: 62px 0 0; gap: 84px; }
	main > .commitments .cols .col ul li { grid-template-columns: 90px auto; gap: 25px; }
	main > .commitments .cols .col ul li span { font-size: 12px; }
}

@media only screen and (min-width: 1024px) and (max-width: 1439px) {
	main > .commitments .wrap { padding: 6.111vw 7.361vw 10.208vw; }
	main > .commitments h2 { max-width: 37.083vw; font-size: 3.819vw; }
	main > .commitments .cols { padding: 7.083vw 12.569vw 0 8.819vw; gap: 10.694vw; }
	main > .commitments .cols .col h3 span { font-size: 0.833vw; }
	main > .commitments .cols .col ul { margin: 4.306vw 0 0; gap: 5.833vw; }
	main > .commitments .cols .col ul li { grid-template-columns: 6.25vw auto; gap: 1.736vw; }
	main > .commitments .cols .col ul li span { font-size: 0.833vw; }
}

main > .contact-promo { color: #FFFFFF; background: #202027; }
main > .contact-promo .wrap { max-width: 1440px; margin: 0 auto; padding: 32px; }
main > .contact-promo .text { max-width: 500px; }
main > .contact-promo .text h2 { font-weight: 500; font-size: 33px; line-height: 1.164; text-wrap: balance; }
main > .contact-promo .text p { margin: 0.682em 0 0; font-size: 14px; line-height: 1.500em; text-wrap: balance; }
main > .contact-promo .text ul { margin: 32px 0 0; }

@media only screen and (min-width: 1024px) {
	main > .contact-promo .wrap { padding: 250px 108px 195px; }
	main > .contact-promo::before { width: 100%; height: 100%; background: url(images/contact-promo.svg) no-repeat top right / auto 100%; position: absolute; top: 0; right: 0; content: " "; display: block; }
	main > .contact-promo .text h2 { font-size: 55px; }
	main > .contact-promo .text p { font-size: 22px; }
	main > .contact-promo .text ul { margin: 47px 0 0; }
}

@media only screen and (min-width: 1024px) and (max-width: 1439px) {
	main > .contact-promo .wrap { padding: 17.361vw 7.5vw 13.542vw; }
	main > .contact-promo .text h2 { font-size: 3.819vw; }
	main > .contact-promo .text p { font-size: 1.528vw; }
	main > .contact-promo .text ul { margin: 3.264vw 0 0; }
}

main > .featured-news { min-height: 100vh; color: #FFFFFF; background: #202026; }
main > .featured-news figure { width: 100%; height: 100%; position: absolute; top: 0; left: 0; }
main > .featured-news figure img { width: 100%; height: 100%; object-fit: cover; }
main > .featured-news figure::before { width: 100%; height: 100%; position: absolute; top: 0; left: 0; background: linear-gradient(90deg, rgba(0, 0, 0, 0.6) 0.87%, rgba(0, 0, 0, 0) 74.05%); content: " "; display: block; z-index: 2; }
main > .featured-news .wrap { max-width: 1440px; margin: 0 auto; padding: 109px 32px 32px; z-index: 4; }
main > .featured-news h1 { font-weight: 700; font-size: 11px; letter-spacing: 0.08em; text-transform: uppercase; }
main > .featured-news h2 { margin: 0.655em 0 0; font-weight: 500; font-size: 33px; line-height: 1.164; text-wrap: balance; }
main > .featured-news p { margin: 1.071em 0 0; font-size: 11px; line-height: 1.357; text-wrap: balance; }
main > .featured-news ul { margin: 14px 0 0; }

@media only screen and (min-width: 1024px) {
	main > .featured-news .wrap { padding: 188px 130px; }
	main > .featured-news h1 { font-size: 12px; }
	main > .featured-news h2 { max-width: 600px; font-size: 55px; }
	main > .featured-news p { max-width: 600px; font-size: 14px; }
	main > .featured-news ul { margin: 23px 0 0; }
	main > .featured-news figure::after { width: 624px; height: 230px; background: url(images/featured-news.svg) no-repeat 50% 50% / contain; position: absolute; bottom: 0; right: 0; content: " "; display: block; z-index: 3; }
}

@media only screen and (min-width: 1024px) and (max-width: 1439px) {
	main > .featured-news .wrap { padding: 13.056vw 9.028vw; }
	main > .featured-news h1 { font-size: 0.833vw; }
	main > .featured-news h2 { max-width: 41.667vw; font-size: 3.819vw; }
	main > .featured-news p { max-width: 41.667vw; font-size: 0.972vw; }
	main > .featured-news ul { margin: 1.597vw 0 0; }
	main > .featured-news figure::after { width: 43.333vw; height: 15.972vw; }
}

main > .listing header { max-width: 1440px; margin: 0 auto; padding: 32px 102px 0 32px; display: flex; justify-content: space-between; align-items: center; }
main > .listing header h2 { font-weight: 700; font-size: 11px; letter-spacing: 0.08em; text-transform: uppercase; }
main > .listing header .filter select { padding: 0 20px 0 10px; height: 3.833em; font-weight: 700; font-size: 11px; text-transform: uppercase; letter-spacing: 0.08em; color: #FFFFFF; background: #202026; border: 0; border-radius: 2.333em; cursor: pointer; -webkit-appearance: none; appearance: none; transition: color 0.4s ease, background-color 0.4s ease; display: inline-flex; align-items: center; }
main > .listing header .filter select:hover { color: #202026; background: #B3E2DF; }
main > .listing header .filter svg { width: 7px; height: 6px; position: absolute; top: calc( 50% - ( 6px / 2 ) ); right: 10px; pointer-events: none; z-index: 2; }
main > .listing header .filter svg path { transition: fill 0.4s ease; }
main > .listing header .filter:hover svg path { fill: #202026; }

@media only screen and (min-width: 1024px) {
	main > .listing header { padding: 100px 105px 0; }
	main > .listing header h2 { font-size: 12px; }
	main > .listing header .filter select { padding: 0 5.833em 0 3.333em; font-size: 12px; }
	main > .listing header .filter svg { width: 8px; height: 7px; top: calc( 50% - ( 7px / 2 ) ); right: 30px; }
}

@media only screen and (min-width: 1024px) and (max-width: 1439px) {
	main > .listing header { padding: 6.944vw 7.292vw 0; }
	main > .listing header h2 { font-size: 0.833vw; }
	main > .listing header .filter select { font-size: 0.833vw; }
	main > .listing header .filter svg { width: 0.556vw; height: 0.486vw; top: calc( 50% - ( 0.486vw / 2 ) ); right: 2.083vw; }
}

main > .listing .articles.grid { max-width: 1440px; margin: 0 auto; padding: 32px; display: grid; grid-template-columns: 1fr; gap: 32px; }

@media only screen and (min-width: 1024px) {
	main > .listing .articles.grid { padding: 88px 105px 92px; grid-template-columns: 1fr 1fr 1fr; gap: 78px 24px; }
	main > .listing.projects .articles.grid { grid-template-columns: 1fr 1fr; gap: 129px 80px; }
	main > .listing .articles.grid.animcup > article:nth-child(3n-1).inview { transition-delay: 0.6s; }
	main > .listing .articles.grid.animcup > article:nth-child(3n).inview { transition-delay: 0.8s; }
}

@media only screen and (min-width: 1024px) and (max-width: 1439px) {
	main > .listing .articles.grid { padding: 6.111vw 7.292vw 6.389vw; grid-template-columns: 1fr 1fr 1fr; gap: 5.417vw 1.667vw; }
	main > .listing.projects .articles.grid { gap: 8.958vw 5.556vw; }
}

main > .listing.gallery:first-child{ padding: 32px 0 0; }
main > .listing.filter:first-child { padding: 44px 0 0; }
main > .listing .articles.carousel { padding: 32px 0; }
main > .listing .articles.carousel article { width: 100vw; padding: 0 32px; }
main > .listing .articles.carousel .slick-arrow { width: 38px; height: 38px; background: #FFFFFF; border: 0; border-radius: 50%; box-shadow: 0px 4px 4px 0px #00000040; position: absolute; top: -28px; right: 32px; z-index: 5; }
main > .listing .articles.carousel .slick-prev { right: 80px; }
main > .listing .articles.carousel .slick-arrow:hover { background: #B3E2DF; }
main > .listing .articles.carousel .slick-arrow::before { width: 14px; height: 14px; background: url(images/arrow.svg) no-repeat 50% 50% / contain; position: absolute; top: calc( 50% - ( 14px / 2 ) ); left: calc( 50% - ( 14px / 2 ) ); content: " "; display: block; }
main > .listing .articles.carousel .slick-next::before { transform: rotate(180deg); }

@media only screen and (min-width: 1024px) {
	main > .listing.gallery:first-child { padding: 45px 0 0; }
	main > .listing.filter:first-child { padding: 112px 0 0; }
	main > .article + .listing header { padding: 135px 104px 0; }
	main > .listing .articles.carousel { padding: 72px 0 72px 104px; }
	main > .listing .articles.carousel article { width: 414px; padding: 0 20px 0 0; }
	main > .listing.projects .articles.carousel article,
	main > .listing.gallery .articles.carousel article { width: 580px; }
	main > .listing .articles.carousel .slick-arrow { width: 38px; height: 38px; box-shadow: 0px 4px 4px 0px #00000040; top: -28px; right: 124px; }
	main > .listing .articles.carousel .slick-prev { right: 172px; }
	main > .listing .articles.carousel .slick-arrow::before { width: 14px; height: 14px; top: calc( 50% - ( 14px / 2 ) ); left: calc( 50% - ( 14px / 2 ) ); }
}

@media only screen and (min-width: 1024px) and (max-width: 1439px) {
	main > .listing.gallery:first-child { padding: 3.125vw 0 0; }
	main > .listing.filter:first-child { padding: 7.778vw 0 0; }
	main > .article + .listing header { padding: 9.375vw 7.222vw 0; }
	main > .listing .articles.carousel { padding: 5vw 0 5vw 7.222vw; }
	main > .listing .articles.carousel article { width: 28.75vw; padding: 0 1.389vw 0 0; }
	main > .listing.projects .articles.carousel article,
	main > .listing.gallery .articles.carousel article { width: 40.278vw; }
	main > .listing .articles.carousel .slick-arrow { width: 2.639vw; height: 2.639vw; box-shadow: 0px 0.278vw 0.278vw 0px #00000040; top: -1.944vw; right: 8.611vw; }
	main > .listing .articles.carousel .slick-prev { right: 11.944vw; }
	main > .listing .articles.carousel .slick-arrow::before { width: 0.972vw; height: 0.972vw; top: calc( 50% - ( 0.972vw / 2 ) ); left: calc( 50% - ( 0.972vw / 2 ) ); }
}

@media only screen and (min-width: 1440px) {
	main > .listing .articles.carousel { margin-left: calc( ( 100vw - 1440px ) / 2 ); }
}

main > .listing .articles article > a { position: relative; display: block; }
main > .listing .articles article figure { position: relative; overflow: hidden; display: block; }
main > .listing .articles article figure img { width: 100%; height: auto; transition: transform 0.4s ease; }
main > .listing .articles article a:hover figure img { transform: scale(1.1); }
main > .listing .articles article > a > time { margin: 2.667em 0 0; font-weight: 700; font-size: 11px; letter-spacing: 0.08em; text-transform: uppercase; color: #717171; display: block; }
main > .listing .articles article > a > p,
main > .listing .articles article > p { margin: 2.333em 0 0; font-weight: 700; font-size: 11px; letter-spacing: 0.08em; text-transform: uppercase; }
main > .listing .articles article > a > p.industrial { color: #CCD6C2; }
main > .listing .articles article > a > p.office { color: #B3E2DF; }
main > .listing .articles article > a > p.rail { color: #DF9139; }
main > .listing .articles article > a > p.leisure-and-retail { color: #EA5E58; }
main > .listing .articles article > a > p.education { color: #FFD2A9; }
main > .listing .articles article > a > p.labs { color: #4A9B48; }		
main > .listing .articles article > a > ul { margin: 10px 0 0; display: flex; flex-wrap: wrap; gap: 6px; }
main > .listing .articles article > a > ul li { padding: 0 2.500em; height: 2.750em; font-weight: 500; font-size: 8px; letter-spacing: 0.08em; text-transform: uppercase; color: #717171; border: 0.063em solid #BCBCBC; border-radius: 3.750em; display: inline-flex; align-items: center; }
main > .listing .articles article > a > h2,
main > .listing .articles article > h2 { margin: 0.625em 0 0; font-size: 14px; line-height: 1.250; text-wrap: balance; }
main > .listing .articles article > a > h2 span { display: block; }
main > .listing.projects .articles article > a > h2 { margin: 0.588em 0 0; font-size: 20px; line-height: 1.059; }
main > .listing .articles article > a > .btn { margin: 24px 0 0; }

@media only screen and (min-width: 1024px) {
	main > .listing .articles article > a > time { font-size: 12px; }
	main > .listing .articles article > a > p,
	main > .listing .articles article > p { font-size: 12px; }
	main > .listing .articles article > a > ul { margin: 17px 0 0; gap: 9px; }
	main > .listing .articles article > a > ul li { font-size: 8px; }
	main > .listing .articles article > a > h2,
	main > .listing .articles article > h2 { font-size: 24px; }
	main > .listing.projects .articles article > a > h2 { font-size: 34px; }
	main > .listing .articles article > a > .btn { margin: 40px 0 0; }
}

@media only screen and (min-width: 1024px) and (max-width: 1439px) {
	main > .listing .articles article > a > time { font-size: 0.833vw; }
	main > .listing .articles article > a > p,
	main > .listing .articles article > p { font-size: 0.833vw; }
	main > .listing .articles article > a > ul { margin: 1.181vw 0 0; gap: 0.625vw; }
	main > .listing .articles article > a > ul li { font-size: 0.556vw; }
	main > .listing .articles article > a > h2,
	main > .listing .articles article > h2 { font-size: 1.667vw; }
	main > .listing.projects .articles article > a > h2 { font-size: 2.361vw; }
	main > .listing .articles article > a > .btn { margin: 2.778vw 0 0; }
}

main > .listing.team .articles { padding-top: 0; }
main > .listing.team .articles article { padding: 32px 32px 0; }
main > .listing.team .articles article figure { overflow: visible; }
main > .listing.team .articles article figure .card { perspective: 1000px; }
main > .listing.team .articles article figure .card .inner { position: relative; transition: transform 0.8s; transform-style: preserve-3d; }
main > .listing.team .articles article figure .card:hover .inner { transform: rotateY(180deg); }
main > .listing.team .articles article figure .card .inner .front { -webkit-backface-visibility: hidden; backface-visibility: hidden; }
main > .listing.team .articles article figure .card .inner .back { width: 100%; height: 100%; padding: 20px 14px 19px; position: absolute; top: 0; left: 0; color: #FFFFFF; background: #202026; display: flex; flex-direction: column; -webkit-backface-visibility: hidden; backface-visibility: hidden; transform: rotateY(180deg); }
main > .listing.team .articles article figure .card .inner .back p { margin: 1.533em 0 0; font-size: 11px; line-height: 1.533; }
main > .listing.team .articles article figure .card .inner .back p:first-child { margin: 0; }
main > .listing.team .articles article figure .card .inner .back ul { margin: auto 0 0; }
main > .listing.team .articles article figure .card .inner .back ul li a.btn { color: #202026; background: #B3E2DF; }
main > .listing.team .articles article figure .card .inner .back ul li a.btn:hover { color: #202026; background: #FFFFFF; }

@media only screen and (min-width: 1024px) {
	main > .listing.team .articles { padding-top: 0; }
	main > .listing.team .articles article { padding: 72px 20px 0 0; }
	main > .listing.team .articles article figure .card .inner .back { padding: 33px 23px 31px; }
	main > .listing.team .articles article figure .card .inner .back p { font-size: 15px; }
}

@media only screen and (min-width: 1024px) and (max-width: 1439px) {
	main > .listing.team .articles { padding-top: 0; }
	main > .listing.team .articles article { padding: 5vw 1.389vw 0 0; }
	main > .listing.team .articles article figure .card .inner .back { padding: 2.292vw 1.597vw 2.153vw; }
	main > .listing.team .articles article figure .card .inner .back p { font-size: 1.042vw; }
}

main > .listing ul.more { display: flex; justify-content: center; }

main > .listing.dark { color: #FFFFFF; background: #202026; }
main > .listing.dark .articles article > a { color: #FFFFFF; }
main > .listing.dark .articles article > a > ul li { color: #FFFFFF; border-color: #FFFFFF; }
main > .listing.dark .articles article > a > .btn { color: #202027; background: #FFFFFF; }
main > .listing.dark .articles article > a > .btn:hover,
main > .listing.dark .articles article > a:hover > .btn { color: #202026; background: #B3E2DF; }

main > .article header { max-width: 1440px; margin: 0 auto; padding: 109px 32px 32px; }
main > .article header h1 { font-size: 33px; line-height: 1.164; }
main > .article header p { margin: 1.348em 0 0; font-size: 14px; line-height: 1.435; text-wrap: balance; }
main > .article > figure img { width: 100%; height: auto; }
main > .article .text { max-width: 1440px; margin: 0 auto; padding: 32px; }
main > .article .text p { margin: 1.435em 0 0; font-size: 14px; line-height: 1.435; }
main > .article .text p:first-child { margin: 0; }

@media only screen and (min-width: 1024px) {
	main > .article header { padding: 222px 130px 103px; }
	main > .article header h1 { font-size: 55px; }
	main > .article header p { font-size: 23px; }
	main > .article .text { padding: 136px 220px 0; }
	main > .article .text p { font-size: 23px; }
}

@media only screen and (min-width: 1024px) and (max-width: 1439px) {
	main > .article header { padding: 15.417vw 9.028vw 7.153vw; }
	main > .article header h1 { font-size: 3.819vw; }
	main > .article header p { font-size: 1.597vw; }
	main > .article .text { padding: 9.444vw 15.278vw 0; }
	main > .article .text p { font-size: 1.597vw; }
}

main > .contact .wrap { max-width: 1440px; margin: 0 auto; padding: 109px 32px 32px; }
main > .contact .header { padding: 0 0 32px; }
main > .contact .header h1 { font-size: 33px; line-height: 1.091; }
main > .contact .header p { margin: 1.571em 0 0; font-size: 12px; line-height: 1.357; }
main > .contact .form .gform_wrapper > .gform_heading { display: none; }
main > .contact .form .gfield > label { display: none; }
main > .contact .form .gfield .ginput_container input[type="text"],
main > .contact .form .gfield .ginput_container input[type="email"],
main > .contact .form .gfield .ginput_container textarea,
main > .contact .form .gfield.gfield--type-textarea .ginput_container::after { width: 100%; padding: 0.765em 0 1.029em; font-weight: 500; font-size: 21px; line-height: 1.206; background: none; border: 0; border-bottom: 1px solid #9E9E9E; }
main > .contact .form .gfield .ginput_container input[type="text"]::placeholder,
main > .contact .form .gfield .ginput_container input[type="email"]::placeholder,
main > .contact .form .gfield .ginput_container textarea::placeholder { color: rgba(0,0,0,0.2); }
main > .contact .form .gfield.gfield--type-textarea .ginput_container { display: grid; }
main > .contact .form .gfield.gfield--type-textarea .ginput_container::after { content: attr(data-replicated-value) " "; white-space: pre-wrap; visibility: hidden; }
main > .contact .form .gfield.gfield--type-textarea .ginput_container textarea { resize: none; overflow: hidden; }
main > .contact .form .gfield.gfield--type-textarea .ginput_container textarea,
main > .contact .form .gfield.gfield--type-textarea .ginput_container::after { grid-area: 1 / 1 / 2 / 2; }
main > .contact .form .gform_footer { padding: 32px 0 0; }

@media only screen and (min-width: 1024px) {
	main > .contact .wrap { padding: 192px 104px 75px 130px; display: grid; grid-template-columns: 31.34% 1fr 46.93%; }
	main > .contact .wrap > span { width: 521px; height: 320px; background: url(images/contact.svg) no-repeat 50% 50% / contain; position: absolute; bottom: -15px; left: calc( 50% - 760px ); content: " "; display: block; }
	main > .contact .header { padding: 23px 0 0; grid-column: 1; }
	main > .contact .header h1 { font-size: 55px; }
	main > .contact .header p { font-size: 14px; }
	main > .contact .form { grid-column: 3; }
	main > .contact .form .gfield .ginput_container input[type="text"],
	main > .contact .form .gfield .ginput_container input[type="email"],
	main > .contact .form .gfield .ginput_container textarea,
	main > .contact .form .gfield.gfield--type-textarea .ginput_container::after { font-size: 34px; }
	main > .contact .form .gform_footer { padding: 49px 0 0; }
}

@media only screen and (min-width: 1024px) and (max-width: 1439px) {
	main > .contact .wrap { padding: 13.333vw 7.222vw 5.208vw 9.028vw; }
	main > .contact .wrap > span { width: 36.181vw; height: 22.222vw; bottom: -1.042vw; left: calc( 50% - 52.778vw ); }
	main > .contact .header { padding: 1.597vw 0 0; }
	main > .contact .header h1 { font-size: 3.819vw; }
	main > .contact .header p { font-size: 0.972vw; }
	main > .contact .form .gfield .ginput_container input[type="text"],
	main > .contact .form .gfield .ginput_container input[type="email"],
	main > .contact .form .gfield .ginput_container textarea,
	main > .contact .form .gfield.gfield--type-textarea .ginput_container::after { font-size: 2.361vw; }
	main > .contact .form .gform_footer { padding: 3.403vw 0 0; }
}

body > footer .wrap { max-width: 1440px; margin: 0 auto; padding: 109px 32px 32px; display: grid; grid-template-columns: 1fr; gap: 32px; }
body > footer h2 { font-weight: 700; font-size: 11px; letter-spacing: 0.08em; text-transform: uppercase; }
body > footer .contact ul { margin: 1.750em 0 0; font-size: 12px; line-height: 1.300; }
body > footer .contact ul li { margin: 0.300em 0 0; }
body > footer .contact ul li:first-child { margin: 0; }
body > footer .contact ul li a { border-bottom: 1px solid #202026; display: inline-block; }
body > footer .contact ul li a:hover { border-bottom-color: #FFFFFF; }
body > footer .offices { display: grid; grid-template-columns: 1fr; gap: 32px; }
body > footer .offices .office h3 { font-weight: 700; font-size: 11px; line-height: 2.000; }
body > footer .offices .office p { font-size: 11px; line-height: 2.000; }
body > footer .logos ul { margin: 24px 0 0; display: flex; flex-wrap: wrap; align-items: center; gap: 18px; }
body > footer .logos ul li img { height: auto; }
body > footer .logos ul li:nth-child(1) img { width: 54px; }
body > footer .logos ul li:nth-child(2) img { width: 98px; }
body > footer .logos ul li:nth-child(3) img { width: 47px; }
body > footer .logos ul li:nth-child(4) img { width: 100px; }
body > footer .legal { font-size: 11px; line-height: 1.250; }
body > footer .legal a:hover { color: #DF9139; }
body > footer .credit { font-size: 11px; line-height: 1.250; }
body > footer .credit a:hover { color: #DF9139; }

html.footer-dark body > footer { color: #FFFFFF; background: #202027; }
html.footer-dark body > footer a { color: #FFFFFF; }
html.footer-dark body > footer .contact ul li a { border-bottom-color: #FFFFFF; }
html.footer-dark body > footer .contact ul li a:hover { border-bottom-color: #202027; }
html.footer-dark body > footer .logos ul li.rv img { filter: invert(100%) sepia(0%) saturate(1422%) hue-rotate(281deg) brightness(108%) contrast(108%); }

@media only screen and (min-width: 1024px) {
	body > footer .wrap { padding: 196px 44px 66px; display: grid; grid-template-columns: 344px auto 1fr; gap: 78px 0; }
	body > footer h2 { font-size: 12px; }
	body > footer .contact ul { font-size: 20px; }
	body > footer .offices { grid-template-columns: auto auto; grid-template-rows: auto 1fr; gap: 30px 76px; }
	body > footer .offices h2 { grid-column: span 2; }
	body > footer .offices .office h3 { font-size: 18px; }
	body > footer .offices .office p { font-size: 18px; }
	body > footer .logos { width: 324px; justify-self: end; }
	body > footer .logos ul { margin: 40px 0 0; justify-content: space-between; gap: 30px; }
	body > footer .logos ul li:nth-child(1) img { width: 89px; }
	body > footer .logos ul li:nth-child(2) img { width: 163px; }
	body > footer .logos ul li:nth-child(3) img { width: 78px; }
	body > footer .logos ul li:nth-child(4) img { width: 166px; }
	body > footer .legal { font-size: 16px; line-height: 1; display: flex; gap: 1.375em; grid-column: span 2; }
	body > footer .credit { font-size: 16px; line-height: 1; justify-self: end; }
}

@media only screen and (min-width: 1024px) and (max-width: 1439px) {
	body > footer .wrap { padding: 13.611vw 3.056vw 4.583vw; grid-template-columns: 23.889vw auto 1fr; gap: 5.417vw 0; }
	body > footer h2 { font-size: 0.833vw; }
	body > footer .contact ul { font-size: 1.389vw; }
	body > footer .offices { gap: 2.083vw 5.278vw; }
	body > footer .offices .office h3 { font-size: 1.25vw; }
	body > footer .offices .office p { font-size: 1.25vw; }
	body > footer .logos { width: 22.5vw; }
	body > footer .logos ul { margin: 2.778vw 0 0; gap: 2.083vw; }
	body > footer .logos ul li:nth-child(1) img { width: 6.181vw; }
	body > footer .logos ul li:nth-child(2) img { width: 11.319vw; }
	body > footer .logos ul li:nth-child(3) img { width: 5.417vw; }
	body > footer .logos ul li:nth-child(4) img { width: 11.528vw; }
	body > footer .legal { font-size: 1.111vw; }
	body > footer .credit { font-size: 1.111vw; }
}

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

:root{--f-spinner-width: 36px;--f-spinner-height: 36px;--f-spinner-color-1: rgba(0, 0, 0, 0.1);--f-spinner-color-2: rgba(17, 24, 28, 0.8);--f-spinner-stroke: 2.75}.f-spinner{margin:auto;padding:0;width:var(--f-spinner-width);height:var(--f-spinner-height)}.f-spinner svg{width:100%;height:100%;vertical-align:top;animation:f-spinner-rotate 2s linear infinite}.f-spinner svg *{stroke-width:var(--f-spinner-stroke);fill:none}.f-spinner svg *:first-child{stroke:var(--f-spinner-color-1)}.f-spinner svg *:last-child{stroke:var(--f-spinner-color-2);animation:f-spinner-dash 2s ease-in-out infinite}@keyframes f-spinner-rotate{100%{transform:rotate(360deg)}}@keyframes f-spinner-dash{0%{stroke-dasharray:1,150;stroke-dashoffset:0}50%{stroke-dasharray:90,150;stroke-dashoffset:-35}100%{stroke-dasharray:90,150;stroke-dashoffset:-124}}.f-throwOutUp{animation:var(--f-throw-out-duration, 0.175s) ease-out both f-throwOutUp}.f-throwOutDown{animation:var(--f-throw-out-duration, 0.175s) ease-out both f-throwOutDown}@keyframes f-throwOutUp{to{transform:translate3d(0, calc(var(--f-throw-out-distance, 150px) * -1), 0);opacity:0}}@keyframes f-throwOutDown{to{transform:translate3d(0, var(--f-throw-out-distance, 150px), 0);opacity:0}}.f-zoomInUp{animation:var(--f-transition-duration, 0.2s) ease .1s both f-zoomInUp}.f-zoomOutDown{animation:var(--f-transition-duration, 0.2s) ease both f-zoomOutDown}@keyframes f-zoomInUp{from{transform:scale(0.975) translate3d(0, 16px, 0);opacity:0}to{transform:scale(1) translate3d(0, 0, 0);opacity:1}}@keyframes f-zoomOutDown{to{transform:scale(0.975) translate3d(0, 16px, 0);opacity:0}}.f-fadeIn{animation:var(--f-transition-duration, 0.2s) var(--f-transition-easing, ease) var(--f-transition-delay, 0s) both f-fadeIn;z-index:2}.f-fadeOut{animation:var(--f-transition-duration, 0.2s) var(--f-transition-easing, ease) var(--f-transition-delay, 0s) both f-fadeOut;z-index:1}@keyframes f-fadeIn{0%{opacity:0}100%{opacity:1}}@keyframes f-fadeOut{100%{opacity:0}}.f-fadeFastIn{animation:var(--f-transition-duration, 0.2s) ease-out both f-fadeFastIn;z-index:2}.f-fadeFastOut{animation:var(--f-transition-duration, 0.1s) ease-out both f-fadeFastOut;z-index:2}@keyframes f-fadeFastIn{0%{opacity:.75}100%{opacity:1}}@keyframes f-fadeFastOut{100%{opacity:0}}.f-fadeSlowIn{animation:var(--f-transition-duration, 0.5s) ease both f-fadeSlowIn;z-index:2}.f-fadeSlowOut{animation:var(--f-transition-duration, 0.5s) ease both f-fadeSlowOut;z-index:1}@keyframes f-fadeSlowIn{0%{opacity:0}100%{opacity:1}}@keyframes f-fadeSlowOut{100%{opacity:0}}.f-crossfadeIn{animation:var(--f-transition-duration, 0.2s) ease-out both f-crossfadeIn;z-index:2}.f-crossfadeOut{animation:calc(var(--f-transition-duration, 0.2s)*.5) linear .1s both f-crossfadeOut;z-index:1}@keyframes f-crossfadeIn{0%{opacity:0}100%{opacity:1}}@keyframes f-crossfadeOut{100%{opacity:0}}.f-slideIn.from-next{animation:var(--f-transition-duration, 0.85s) cubic-bezier(0.16, 1, 0.3, 1) f-slideInNext}.f-slideIn.from-prev{animation:var(--f-transition-duration, 0.85s) cubic-bezier(0.16, 1, 0.3, 1) f-slideInPrev}.f-slideOut.to-next{animation:var(--f-transition-duration, 0.85s) cubic-bezier(0.16, 1, 0.3, 1) f-slideOutNext}.f-slideOut.to-prev{animation:var(--f-transition-duration, 0.85s) cubic-bezier(0.16, 1, 0.3, 1) f-slideOutPrev}@keyframes f-slideInPrev{0%{transform:translateX(100%)}100%{transform:translate3d(0, 0, 0)}}@keyframes f-slideInNext{0%{transform:translateX(-100%)}100%{transform:translate3d(0, 0, 0)}}@keyframes f-slideOutNext{100%{transform:translateX(-100%)}}@keyframes f-slideOutPrev{100%{transform:translateX(100%)}}.f-classicIn.from-next{animation:var(--f-transition-duration, 0.85s) cubic-bezier(0.16, 1, 0.3, 1) f-classicInNext;z-index:2}.f-classicIn.from-prev{animation:var(--f-transition-duration, 0.85s) cubic-bezier(0.16, 1, 0.3, 1) f-classicInPrev;z-index:2}.f-classicOut.to-next{animation:var(--f-transition-duration, 0.85s) cubic-bezier(0.16, 1, 0.3, 1) f-classicOutNext;z-index:1}.f-classicOut.to-prev{animation:var(--f-transition-duration, 0.85s) cubic-bezier(0.16, 1, 0.3, 1) f-classicOutPrev;z-index:1}@keyframes f-classicInNext{0%{transform:translateX(-75px);opacity:0}100%{transform:translate3d(0, 0, 0);opacity:1}}@keyframes f-classicInPrev{0%{transform:translateX(75px);opacity:0}100%{transform:translate3d(0, 0, 0);opacity:1}}@keyframes f-classicOutNext{100%{transform:translateX(-75px);opacity:0}}@keyframes f-classicOutPrev{100%{transform:translateX(75px);opacity:0}}:root{--f-button-width: 40px;--f-button-height: 40px;--f-button-border: 0;--f-button-border-radius: 0;--f-button-color: #374151;--f-button-bg: #f8f8f8;--f-button-hover-bg: #e0e0e0;--f-button-active-bg: #d0d0d0;--f-button-shadow: none;--f-button-transition: all 0.15s ease;--f-button-transform: none;--f-button-svg-width: 20px;--f-button-svg-height: 20px;--f-button-svg-stroke-width: 1.5;--f-button-svg-fill: none;--f-button-svg-filter: none;--f-button-svg-disabled-opacity: 0.65}.f-button{display:flex;justify-content:center;align-items:center;box-sizing:content-box;position:relative;margin:0;padding:0;width:var(--f-button-width);height:var(--f-button-height);border:var(--f-button-border);border-radius:var(--f-button-border-radius);color:var(--f-button-color);background:var(--f-button-bg);box-shadow:var(--f-button-shadow);pointer-events:all;cursor:pointer;transition:var(--f-button-transition)}@media(hover: hover){.f-button:hover:not([disabled]){color:var(--f-button-hover-color);background-color:var(--f-button-hover-bg)}}.f-button:active:not([disabled]){background-color:var(--f-button-active-bg)}.f-button:focus:not(:focus-visible){outline:none}.f-button:focus-visible{outline:none;box-shadow:inset 0 0 0 var(--f-button-outline, 2px) var(--f-button-outline-color, var(--f-button-color))}.f-button svg{width:var(--f-button-svg-width);height:var(--f-button-svg-height);fill:var(--f-button-svg-fill);stroke:currentColor;stroke-width:var(--f-button-svg-stroke-width);stroke-linecap:round;stroke-linejoin:round;transition:opacity .15s ease;transform:var(--f-button-transform);filter:var(--f-button-svg-filter);pointer-events:none}.f-button[disabled]{cursor:default}.f-button[disabled] svg{opacity:var(--f-button-svg-disabled-opacity)}.f-carousel__nav .f-button.is-prev,.f-carousel__nav .f-button.is-next,.fancybox__nav .f-button.is-prev,.fancybox__nav .f-button.is-next{position:absolute;z-index:1}.is-horizontal .f-carousel__nav .f-button.is-prev,.is-horizontal .f-carousel__nav .f-button.is-next,.is-horizontal .fancybox__nav .f-button.is-prev,.is-horizontal .fancybox__nav .f-button.is-next{top:50%;transform:translateY(-50%)}.is-horizontal .f-carousel__nav .f-button.is-prev,.is-horizontal .fancybox__nav .f-button.is-prev{left:var(--f-button-prev-pos)}.is-horizontal .f-carousel__nav .f-button.is-next,.is-horizontal .fancybox__nav .f-button.is-next{right:var(--f-button-next-pos)}.is-horizontal.is-rtl .f-carousel__nav .f-button.is-prev,.is-horizontal.is-rtl .fancybox__nav .f-button.is-prev{left:auto;right:var(--f-button-next-pos)}.is-horizontal.is-rtl .f-carousel__nav .f-button.is-next,.is-horizontal.is-rtl .fancybox__nav .f-button.is-next{right:auto;left:var(--f-button-prev-pos)}.is-vertical .f-carousel__nav .f-button.is-prev,.is-vertical .f-carousel__nav .f-button.is-next,.is-vertical .fancybox__nav .f-button.is-prev,.is-vertical .fancybox__nav .f-button.is-next{top:auto;left:50%;transform:translateX(-50%)}.is-vertical .f-carousel__nav .f-button.is-prev,.is-vertical .fancybox__nav .f-button.is-prev{top:var(--f-button-next-pos)}.is-vertical .f-carousel__nav .f-button.is-next,.is-vertical .fancybox__nav .f-button.is-next{bottom:var(--f-button-next-pos)}.is-vertical .f-carousel__nav .f-button.is-prev svg,.is-vertical .f-carousel__nav .f-button.is-next svg,.is-vertical .fancybox__nav .f-button.is-prev svg,.is-vertical .fancybox__nav .f-button.is-next svg{transform:rotate(90deg)}.f-carousel__nav .f-button:disabled,.fancybox__nav .f-button:disabled{pointer-events:none}html.with-fancybox{width:auto;overflow:visible;scroll-behavior:auto}html.with-fancybox body{touch-action:none}html.with-fancybox body.hide-scrollbar{width:auto;margin-right:calc(var(--fancybox-body-margin, 0px) + var(--fancybox-scrollbar-compensate, 0px));overflow:hidden !important;overscroll-behavior-y:none}.fancybox__container{--fancybox-color: #dbdbdb;--fancybox-hover-color: #fff;--fancybox-bg: rgba(24, 24, 27, 0.98);--fancybox-slide-gap: 10px;--f-spinner-width: 50px;--f-spinner-height: 50px;--f-spinner-color-1: rgba(255, 255, 255, 0.1);--f-spinner-color-2: #bbb;--f-spinner-stroke: 3.65;position:fixed;top:0;left:0;bottom:0;right:0;direction:ltr;display:flex;flex-direction:column;box-sizing:border-box;margin:0;padding:0;color:#f8f8f8;-webkit-tap-highlight-color:rgba(0,0,0,0);overflow:visible;z-index:var(--fancybox-zIndex, 1050);outline:none;transform-origin:top left;-webkit-text-size-adjust:100%;-moz-text-size-adjust:none;-ms-text-size-adjust:100%;text-size-adjust:100%;overscroll-behavior-y:contain}.fancybox__container *,.fancybox__container *::before,.fancybox__container *::after{box-sizing:inherit}.fancybox__container::backdrop{background-color:rgba(0,0,0,0)}.fancybox__backdrop{position:fixed;top:0;left:0;bottom:0;right:0;z-index:-1;background:var(--fancybox-bg);opacity:var(--fancybox-opacity, 1);will-change:opacity}.fancybox__carousel{position:relative;box-sizing:border-box;flex:1;min-height:0;z-index:10;overflow-y:visible;overflow-x:clip}.fancybox__viewport{width:100%;height:100%}.fancybox__viewport.is-draggable{cursor:move;cursor:grab}.fancybox__viewport.is-dragging{cursor:move;cursor:grabbing}.fancybox__track{display:flex;margin:0 auto;height:100%}.fancybox__slide{flex:0 0 auto;position:relative;display:flex;flex-direction:column;align-items:center;width:100%;height:100%;margin:0 var(--fancybox-slide-gap) 0 0;padding:4px;overflow:auto;overscroll-behavior:contain;transform:translate3d(0, 0, 0);backface-visibility:hidden}.fancybox__container:not(.is-compact) .fancybox__slide.has-close-btn{padding-top:40px}.fancybox__slide.has-iframe,.fancybox__slide.has-video,.fancybox__slide.has-html5video{overflow:hidden}.fancybox__slide.has-image{overflow:hidden}.fancybox__slide.has-image.is-animating,.fancybox__slide.has-image.is-selected{overflow:visible}.fancybox__slide::before,.fancybox__slide::after{content:"";flex:0 0 0;margin:auto}.fancybox__backdrop:empty,.fancybox__viewport:empty,.fancybox__track:empty,.fancybox__slide:empty{display:block}.fancybox__content{align-self:center;display:flex;flex-direction:column;position:relative;margin:0;padding:2rem;max-width:100%;color:var(--fancybox-content-color, #374151);background:var(--fancybox-content-bg, #fff);cursor:default;border-radius:0;z-index:20}.is-loading .fancybox__content{opacity:0}.is-draggable .fancybox__content{cursor:move;cursor:grab}.can-zoom_in .fancybox__content{cursor:zoom-in}.can-zoom_out .fancybox__content{cursor:zoom-out}.is-dragging .fancybox__content{cursor:move;cursor:grabbing}.fancybox__content [data-selectable],.fancybox__content [contenteditable]{cursor:auto}.fancybox__slide.has-image>.fancybox__content{padding:0;background:rgba(0,0,0,0);min-height:1px;background-repeat:no-repeat;background-size:contain;background-position:center center;transition:none;transform:translate3d(0, 0, 0);backface-visibility:hidden}.fancybox__slide.has-image>.fancybox__content>picture>img{width:100%;height:auto;max-height:100%}.is-animating .fancybox__content,.is-dragging .fancybox__content{will-change:transform,width,height}.fancybox-image{margin:auto;display:block;width:100%;height:100%;min-height:0;object-fit:contain;user-select:none;filter:blur(0px)}.fancybox__caption{align-self:center;max-width:100%;flex-shrink:0;margin:0;padding:14px 0 4px 0;overflow-wrap:anywhere;line-height:1.375;color:var(--fancybox-color, currentColor);opacity:var(--fancybox-opacity, 1);cursor:auto;visibility:visible}.is-loading .fancybox__caption,.is-closing .fancybox__caption{opacity:0;visibility:hidden}.is-compact .fancybox__caption{padding-bottom:0}.f-button.is-close-btn{--f-button-svg-stroke-width: 2;position:absolute;top:0;right:8px;z-index:40}.fancybox__content>.f-button.is-close-btn{--f-button-width: 34px;--f-button-height: 34px;--f-button-border-radius: 4px;--f-button-color: var(--fancybox-color, #fff);--f-button-hover-color: var(--fancybox-color, #fff);--f-button-bg: transparent;--f-button-hover-bg: transparent;--f-button-active-bg: transparent;--f-button-svg-width: 22px;--f-button-svg-height: 22px;position:absolute;top:-38px;right:0;opacity:.75}.is-loading .fancybox__content>.f-button.is-close-btn{visibility:hidden}.is-zooming-out .fancybox__content>.f-button.is-close-btn{visibility:hidden}.fancybox__content>.f-button.is-close-btn:hover{opacity:1}.fancybox__footer{padding:0;margin:0;position:relative}.fancybox__footer .fancybox__caption{width:100%;padding:24px;opacity:var(--fancybox-opacity, 1);transition:all .25s ease}.is-compact .fancybox__footer{position:absolute;bottom:0;left:0;right:0;z-index:20;background:rgba(24,24,27,.5)}.is-compact .fancybox__footer .fancybox__caption{padding:12px}.is-compact .fancybox__content>.f-button.is-close-btn{--f-button-border-radius: 50%;--f-button-color: #fff;--f-button-hover-color: #fff;--f-button-outline-color: #000;--f-button-bg: rgba(0, 0, 0, 0.6);--f-button-active-bg: rgba(0, 0, 0, 0.6);--f-button-hover-bg: rgba(0, 0, 0, 0.6);--f-button-svg-width: 18px;--f-button-svg-height: 18px;--f-button-svg-filter: none;top:5px;right:5px}.fancybox__nav{--f-button-width: 50px;--f-button-height: 50px;--f-button-border: 0;--f-button-border-radius: 50%;--f-button-color: var(--fancybox-color);--f-button-hover-color: var(--fancybox-hover-color);--f-button-bg: transparent;--f-button-hover-bg: rgba(24, 24, 27, 0.3);--f-button-active-bg: rgba(24, 24, 27, 0.5);--f-button-shadow: none;--f-button-transition: all 0.15s ease;--f-button-transform: none;--f-button-svg-width: 26px;--f-button-svg-height: 26px;--f-button-svg-stroke-width: 2.5;--f-button-svg-fill: none;--f-button-svg-filter: drop-shadow(1px 1px 1px rgba(24, 24, 27, 0.5));--f-button-svg-disabled-opacity: 0.65;--f-button-next-pos: 1rem;--f-button-prev-pos: 1rem;opacity:var(--fancybox-opacity, 1)}.fancybox__nav .f-button:before{position:absolute;content:"";top:-30px;right:-20px;left:-20px;bottom:-30px;z-index:1}.is-idle .fancybox__nav{animation:.15s ease-out both f-fadeOut}.is-idle.is-compact .fancybox__footer{pointer-events:none;animation:.15s ease-out both f-fadeOut}.fancybox__slide>.f-spinner{position:absolute;top:50%;left:50%;margin:var(--f-spinner-top, calc(var(--f-spinner-width) * -0.5)) 0 0 var(--f-spinner-left, calc(var(--f-spinner-height) * -0.5));z-index:30;cursor:pointer}.fancybox-protected{position:absolute;top:0;left:0;right:0;bottom:0;z-index:40;user-select:none}.fancybox-ghost{position:absolute;top:0;left:0;width:100%;height:100%;min-height:0;object-fit:contain;z-index:40;user-select:none;pointer-events:none}.fancybox-focus-guard{outline:none;opacity:0;position:fixed;pointer-events:none}.fancybox__container:not([aria-hidden]){opacity:0}.fancybox__container.is-animated[aria-hidden=false]>*:not(.fancybox__backdrop,.fancybox__carousel),.fancybox__container.is-animated[aria-hidden=false] .fancybox__carousel>*:not(.fancybox__viewport),.fancybox__container.is-animated[aria-hidden=false] .fancybox__slide>*:not(.fancybox__content){animation:var(--f-interface-enter-duration, 0.25s) ease .1s backwards f-fadeIn}.fancybox__container.is-animated[aria-hidden=false] .fancybox__backdrop{animation:var(--f-backdrop-enter-duration, 0.35s) ease backwards f-fadeIn}.fancybox__container.is-animated[aria-hidden=true]>*:not(.fancybox__backdrop,.fancybox__carousel),.fancybox__container.is-animated[aria-hidden=true] .fancybox__carousel>*:not(.fancybox__viewport),.fancybox__container.is-animated[aria-hidden=true] .fancybox__slide>*:not(.fancybox__content){animation:var(--f-interface-exit-duration, 0.15s) ease forwards f-fadeOut}.fancybox__container.is-animated[aria-hidden=true] .fancybox__backdrop{animation:var(--f-backdrop-exit-duration, 0.35s) ease forwards f-fadeOut}.has-iframe .fancybox__content,.has-map .fancybox__content,.has-pdf .fancybox__content,.has-youtube .fancybox__content,.has-vimeo .fancybox__content,.has-html5video .fancybox__content{max-width:100%;flex-shrink:1;min-height:1px;overflow:visible}.has-iframe .fancybox__content,.has-map .fancybox__content,.has-pdf .fancybox__content{width:calc(100% - 120px);height:90%}.fancybox__container.is-compact .has-iframe .fancybox__content,.fancybox__container.is-compact .has-map .fancybox__content,.fancybox__container.is-compact .has-pdf .fancybox__content{width:100%;height:100%}.has-youtube .fancybox__content,.has-vimeo .fancybox__content,.has-html5video .fancybox__content{width:960px;height:540px;max-width:100%;max-height:100%}.has-map .fancybox__content,.has-pdf .fancybox__content,.has-youtube .fancybox__content,.has-vimeo .fancybox__content,.has-html5video .fancybox__content{padding:0;background:rgba(24,24,27,.9);color:#fff}.has-map .fancybox__content{background:#e5e3df}.fancybox__html5video,.fancybox__iframe{border:0;display:block;height:100%;width:100%;background:rgba(0,0,0,0)}.fancybox-placeholder{border:0 !important;clip:rect(1px, 1px, 1px, 1px) !important;-webkit-clip-path:inset(50%) !important;clip-path:inset(50%) !important;height:1px !important;margin:-1px !important;overflow:hidden !important;padding:0 !important;position:absolute !important;width:1px !important;white-space:nowrap !important}.f-carousel__thumbs{--f-thumb-width: 96px;--f-thumb-height: 72px;--f-thumb-outline: 0;--f-thumb-outline-color: #5eb0ef;--f-thumb-opacity: 1;--f-thumb-hover-opacity: 1;--f-thumb-selected-opacity: 1;--f-thumb-border-radius: 2px;--f-thumb-offset: 0px;--f-button-next-pos: 0;--f-button-prev-pos: 0}.f-carousel__thumbs.is-classic{--f-thumb-gap: 8px;--f-thumb-opacity: 0.5;--f-thumb-hover-opacity: 1;--f-thumb-selected-opacity: 1}.f-carousel__thumbs.is-modern{--f-thumb-gap: 4px;--f-thumb-extra-gap: 16px;--f-thumb-clip-width: 46px}.f-thumbs{position:relative;flex:0 0 auto;margin:0;overflow:hidden;-webkit-tap-highlight-color:rgba(0,0,0,0);user-select:none;perspective:1000px;transform:translateZ(0)}.f-thumbs .f-spinner{position:absolute;top:0;left:0;width:100%;height:100%;border-radius:2px;background-image:linear-gradient(#ebeff2, #e2e8f0);z-index:-1}.f-thumbs .f-spinner svg{display:none}.f-thumbs.is-vertical{height:100%}.f-thumbs__viewport{width:100%;height:auto;overflow:hidden;transform:translate3d(0, 0, 0)}.f-thumbs__track{display:flex}.f-thumbs__slide{position:relative;flex:0 0 auto;box-sizing:content-box;display:flex;align-items:center;justify-content:center;padding:0;margin:0;width:var(--f-thumb-width);height:var(--f-thumb-height);overflow:visible;cursor:pointer}.f-thumbs__slide.is-loading img{opacity:0}.is-classic .f-thumbs__viewport{height:100%}.is-modern .f-thumbs__track{width:max-content}.is-modern .f-thumbs__track::before{content:"";position:absolute;top:0;bottom:0;left:calc((var(--f-thumb-clip-width, 0))*-0.5);width:calc(var(--width, 0)*1px + var(--f-thumb-clip-width, 0));cursor:pointer}.is-modern .f-thumbs__slide{width:var(--f-thumb-clip-width);transform:translate3d(calc(var(--shift, 0) * -1px), 0, 0);transition:none;pointer-events:none}.is-modern.is-resting .f-thumbs__slide{transition:transform .33s ease}.is-modern.is-resting .f-thumbs__slide__button{transition:clip-path .33s ease}.is-using-tab .is-modern .f-thumbs__slide:focus-within{filter:drop-shadow(-1px 0px 0px var(--f-thumb-outline-color)) drop-shadow(2px 0px 0px var(--f-thumb-outline-color)) drop-shadow(0px -1px 0px var(--f-thumb-outline-color)) drop-shadow(0px 2px 0px var(--f-thumb-outline-color))}.f-thumbs__slide__button{appearance:none;width:var(--f-thumb-width);height:100%;margin:0 -100% 0 -100%;padding:0;border:0;position:relative;border-radius:var(--f-thumb-border-radius);overflow:hidden;background:rgba(0,0,0,0);outline:none;cursor:pointer;pointer-events:auto;touch-action:manipulation;opacity:var(--f-thumb-opacity);transition:opacity .2s ease}.f-thumbs__slide__button:hover{opacity:var(--f-thumb-hover-opacity)}.f-thumbs__slide__button:focus:not(:focus-visible){outline:none}.f-thumbs__slide__button:focus-visible{outline:none;opacity:var(--f-thumb-selected-opacity)}.is-modern .f-thumbs__slide__button{--clip-path: inset( 0 calc( ((var(--f-thumb-width, 0) - var(--f-thumb-clip-width, 0))) * (1 - var(--progress, 0)) * 0.5 ) round var(--f-thumb-border-radius, 0) );clip-path:var(--clip-path)}.is-classic .is-nav-selected .f-thumbs__slide__button{opacity:var(--f-thumb-selected-opacity)}.is-classic .is-nav-selected .f-thumbs__slide__button::after{content:"";position:absolute;top:0;left:0;right:0;height:auto;bottom:0;border:var(--f-thumb-outline, 0) solid var(--f-thumb-outline-color, transparent);border-radius:var(--f-thumb-border-radius);animation:f-fadeIn .2s ease-out;z-index:10}.f-thumbs__slide__img{overflow:hidden;position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;margin:0;padding:var(--f-thumb-offset);box-sizing:border-box;pointer-events:none;object-fit:cover;border-radius:var(--f-thumb-border-radius)}.f-thumbs.is-horizontal .f-thumbs__track{padding:8px 0 12px 0}.f-thumbs.is-horizontal .f-thumbs__slide{margin:0 var(--f-thumb-gap) 0 0}.f-thumbs.is-vertical .f-thumbs__track{flex-wrap:wrap;padding:0 8px}.f-thumbs.is-vertical .f-thumbs__slide{margin:0 0 var(--f-thumb-gap) 0}.fancybox__thumbs{--f-thumb-width: 96px;--f-thumb-height: 72px;--f-thumb-border-radius: 2px;--f-thumb-outline: 2px;--f-thumb-outline-color: #ededed;position:relative;opacity:var(--fancybox-opacity, 1);transition:max-height .35s cubic-bezier(0.23, 1, 0.32, 1)}.fancybox__thumbs.is-classic{--f-thumb-gap: 8px;--f-thumb-opacity: 0.5;--f-thumb-hover-opacity: 1}.fancybox__thumbs.is-classic .f-spinner{background-image:linear-gradient(rgba(255, 255, 255, 0.1), rgba(255, 255, 255, 0.05))}.fancybox__thumbs.is-modern{--f-thumb-gap: 4px;--f-thumb-extra-gap: 16px;--f-thumb-clip-width: 46px;--f-thumb-opacity: 1;--f-thumb-hover-opacity: 1}.fancybox__thumbs.is-modern .f-spinner{background-image:linear-gradient(rgba(255, 255, 255, 0.1), rgba(255, 255, 255, 0.05))}.fancybox__thumbs.is-horizontal{padding:0 var(--f-thumb-gap)}.fancybox__thumbs.is-vertical{padding:var(--f-thumb-gap) 0}.is-compact .fancybox__thumbs{--f-thumb-width: 64px;--f-thumb-clip-width: 32px;--f-thumb-height: 48px;--f-thumb-extra-gap: 10px}.fancybox__thumbs.is-masked{max-height:0px !important}.is-closing .fancybox__thumbs{transition:none !important}.fancybox__toolbar{--f-progress-color: var(--fancybox-color, rgba(255, 255, 255, 0.94));--f-button-width: 46px;--f-button-height: 46px;--f-button-color: var(--fancybox-color);--f-button-hover-color: var(--fancybox-hover-color);--f-button-bg: rgba(24, 24, 27, 0.65);--f-button-hover-bg: rgba(70, 70, 73, 0.65);--f-button-active-bg: rgba(90, 90, 93, 0.65);--f-button-border-radius: 0;--f-button-svg-width: 24px;--f-button-svg-height: 24px;--f-button-svg-stroke-width: 1.5;--f-button-svg-filter: drop-shadow(1px 1px 1px rgba(24, 24, 27, 0.15));--f-button-svg-fill: none;--f-button-svg-disabled-opacity: 0.65;display:flex;flex-direction:row;justify-content:space-between;margin:0;padding:0;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI Adjusted","Segoe UI","Liberation Sans",sans-serif;color:var(--fancybox-color, currentColor);opacity:var(--fancybox-opacity, 1);text-shadow:var(--fancybox-toolbar-text-shadow, 1px 1px 1px rgba(0, 0, 0, 0.5));pointer-events:none;z-index:20}.fancybox__toolbar :focus-visible{z-index:1}.fancybox__toolbar.is-absolute,.is-compact .fancybox__toolbar{position:absolute;top:0;left:0;right:0}.is-idle .fancybox__toolbar{pointer-events:none;animation:.15s ease-out both f-fadeOut}.fancybox__toolbar__column{display:flex;flex-direction:row;flex-wrap:wrap;align-content:flex-start}.fancybox__toolbar__column.is-left,.fancybox__toolbar__column.is-right{flex-grow:1;flex-basis:0}.fancybox__toolbar__column.is-right{display:flex;justify-content:flex-end;flex-wrap:nowrap}.fancybox__infobar{padding:0 5px;line-height:var(--f-button-height);text-align:center;font-size:17px;font-variant-numeric:tabular-nums;-webkit-font-smoothing:subpixel-antialiased;cursor:default;user-select:none}.fancybox__infobar span{padding:0 5px}.fancybox__infobar:not(:first-child):not(:last-child){background:var(--f-button-bg)}[data-fancybox-toggle-slideshow]{position:relative}[data-fancybox-toggle-slideshow] .f-progress{height:100%;opacity:.3}[data-fancybox-toggle-slideshow] svg g:first-child{display:flex}[data-fancybox-toggle-slideshow] svg g:last-child{display:none}.has-slideshow [data-fancybox-toggle-slideshow] svg g:first-child{display:none}.has-slideshow [data-fancybox-toggle-slideshow] svg g:last-child{display:flex}[data-fancybox-toggle-fullscreen] svg g:first-child{display:flex}[data-fancybox-toggle-fullscreen] svg g:last-child{display:none}:fullscreen [data-fancybox-toggle-fullscreen] svg g:first-child{display:none}:fullscreen [data-fancybox-toggle-fullscreen] svg g:last-child{display:flex}.f-progress{position:absolute;top:0;left:0;right:0;height:3px;transform:scaleX(0);transform-origin:0;transition-property:transform;transition-timing-function:linear;background:var(--f-progress-color, var(--f-carousel-theme-color, #0091ff));z-index:30;user-select:none;pointer-events:none}