*html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{border:0; font-size:100%; font:inherit; margin:0; padding:0}
article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}
body{line-height:1}
ol,ul{list-style:none}
blockquote,q{quotes:none}
blockquote:before,blockquote:after,q:before,q:after{content:none}
table{border-collapse:collapse; border-spacing:0}
*{box-sizing:border-box}
img{max-width:100%}




body {border:0; padding:0; margin:0; background:white; color:#19262d; font-size:100%; font-weight:normal; font-family:'Archivo', 'Roboto', 'Helvetica Neue', Helvetica,Arial,sans-serif; font-stretch:normal;  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale}
button, input, select, textarea {font-family:'Archivo', 'Roboto', 'Helvetica Neue', Helvetica,Arial,sans-serif}


/* Animations */
.fade {opacity:0;transition:opacity 1s}
.fadeLeft {opacity:0;transform:translate3d(-100px, 0, 0);transition:opacity 1s, transform 1s;transition-timing-function:cubic-bezier(.175, .885, .32, 1.275)}
.fadeRight {opacity:0;transform:translate3d(100px, 0, 0);transition:opacity 1s, transform 1s;transition-timing-function:cubic-bezier(.175, .885, .32, 1.275)}
.fadeUp {opacity:0;transform:translate3d(0, 100px, 0);transition:opacity 1s, transform 1s}
.animate {opacity:1;transform:translateX(0);transform:translateY(0)}


/* Fonts */
h1, h2, h3, h5, h6, span.subtitle { font-weight:600; margin:0}
h1 {font-size:300%; line-height:125%; padding:0.25em 0; letter-spacing:-0.015em}
h2 {font-size:200%; padding:0.5em 0; line-height:125%; letter-spacing:-0.01em}
h3{font-size:130%; padding:0 0 0.5em; line-height:125%}
h4{font-size:130%; line-height:150%; padding:0.5em 0}
h5 {font-size:100%; line-height:150%; padding:0.5em 0}
h6, span.subtitle {font-size:85%; text-transform:uppercase; letter-spacing:0.1em; padding:0 0 1em 0}
.has-white-color h6:after {background:#fff}
span.subtitle:after {background:#fff}
span.subtitle.dark:after {background:#19262d}
p {line-height:160%; padding:0.75em 0; margin:0}
strong{font-weight:600}
em {font-style:italic}
small, p small{font-size:85%; padding:0 0 10px 0; line-height:140%; font-weight:normal; display:block; color:#aaa}
hr, .wp-block-separator {display:block; clear:both; border:0 !important; height:1px; background:#eee !important; margin:0}

.main-content ul, .main-content ul li, .row.skills ul li  {list-style-type:disc; margin:1em; padding:0; line-height:150%}

@media screen and (min-width:1240px) {
	h1 {font-size:3.5em; line-height:110%}
}
@media screen and (min-width:2000px) {
	h1 {font-size:4em}
}
@media screen and (max-width:1024px) {
	h2 {font-size:175%}
}
@media screen and (max-width:800px) {
	h1, footer h2 {font-size:275%; line-height:125%}
	h2 {font-size:160%}
	h3{font-size:130%}
	h4{font-size:112%}
	h6{font-size:85%; text-transform:none; letter-spacing:0; font-weight:normal}
	h2 br, h3 br, p br, .hideMobile {display:none !important}
	p.has-medium-font-size {font-size:100% !important}
}
@media screen and (max-width:480px) {
	h1, footer h2 {font-size:200%}
}




/* General Links */
a {color:#286ae3; text-decoration:underline}
a:hover {}

.more.arrow, .work-grid .more {width:50px; height:50px; text-indent:-9999px; position:absolute; bottom:1em; right:1em}
.more.arrow:after, .work-grid .more:after {opacity:0.15; position:absolute; top:0px; left:0px; width:50px; height:50px; font-size:40px; line-height:50px; content:"\F135"; color:#19262d; text-indent:0px; font-family:bootstrap-icons !important; vertical-align:middle; display:inline-block; margin-left:5px}
.work-item:hover .more.arrow:after,
.work-grid .work-item:hover .more:after {opacity:1}

.btn, input[type=submit], .desktopMenu li.menubtn a, .cf7mls_next.action-button, form.cf7mls input.wpcf7-form-control.wpcf7-submit,
.wpcf7 input[type=submit], .wp-block-button__link {font-weight:600; display:inline-block; cursor:pointer; padding:1em 1.5em; min-width:170px; border:0; border-radius:30px; outline:0; font-size:100%; background:#286ae3; color:white; text-align:center; text-decoration:none}
.btn.outline {border:1px solid #19262d; color:#19262d; background:transparent}
.btn:hover, .btn.outline:hover, .btn.alt:hover, .wpcf7 input[type=submit]:hover, .wp-block-button__link:hover {color:white; border-color:#4c8bfd; text-decoration:none; transform:scale(1.08); background:#4c8bfd}
.btn:active, .btn:focus, input[type=submit]:active, input[type=submit]:focus {background:#19262d !important}
.is-style-outline a.wp-block-button__link {border:1px solid #19262d; padding:1em 1.5em !important; min-width:170px; color:#19262d; background:transparent}

/* Easing */
header, .desktopMenu, .desktopMenu ul, a, input[type=submit], button, .brand-logos img, .desktopMenu li:after,
.row.brands img, .work-item, .service, .menu-icon, .wp-block-button__link, .blogs article, .more.arrow, .more:after,.blog-alt .wp-block-post {-webkit-transition:all 0.3s ease;-moz-transition:all 0.3s ease;-ms-transition:all 0.3s ease;-o-transition:all 0.3s ease;transition:all 0.3s ease}

	@media screen and (max-width:800px) {
		.btn, button, input[type=submit] {min-width:120px}
		.btn:after {display:none}

	}




/* Images */
img {max-width:100%; height: auto}
iframe {display:block}




/* Contain Content */
.wrapper, .wp-block-group__inner-container {width:auto; display:block; max-width:1600px !important; padding:0 4vw; margin:0 auto; position:relative}
.wp-block-group__inner-container .wp-block-group__inner-container {padding:0}

.row {padding:10vh 0}
	.row.dark {background-color:#19262d; color:white}

.title-area {margin:10vh 0 5vh}
.home .title-area {margin:0}
.title-area h2 {font-size:100%; line-height:150%; padding:0.5em 0; font-weight:400}

.title-area h1, .gutenbanner h1 {line-height:120%;padding:0 0 0.4em}
.title-area h2, .gutenbanner h2 {font-size:112%; line-height:160%; font-weight:normal}

@media screen and (max-width:1280px) {
	.title-area h1, .gutenbanner h1 {font-size:225%; padding:0 0 0.5em}
	.title-area h2, .gutenbanner h2 {font-size:100%; font-weight:normal}
	.title-area h1 br, .gutenbanner br {display:none}
}
@media screen and (max-width:1024px) {
	.title-area h1, .gutenbanner h1 {font-size:175%; padding:0 0 0.5em}
	.title-area h2, .gutenbanner h2 {font-size:100%; font-weight:normal}
	.title-area h1 br, .gutenbanner br {display:none}
}
@media screen and (min-width:1025px) {
	.title-area .wrapper {padding-right:30%}
}
@media screen and (min-width:768px) {
	.mobileOnly {display:none !important}
}
@media screen and (max-width:800px) {
	.wrapper {padding:0 1.5em}
	.desktopOnly {display:none !important}
}
@media screen and (max-width:600px) {
	.title-area h1, .banner h1, .gutenbanner h1 {font-size:160%; line-height:130%; padding:0.5em 0}
	.title-area h4, .banner h4, .gutenbanner h2 {font-size:100%; line-height:150%}
}





/* header Bar */
header{background:#19262d; position:sticky; top:0; z-index:10000; display:block}
.header-grid {display:grid;grid-template-columns: 240px auto 140px;grid-column-gap:1em;align-items:center;height:75px}
header .logo { font-size:150%; line-height:100%; letter-spacing:-0.02em; color:white; text-align:left; font-weight:600}
.header-grid .logo img {width: 40px;height: auto;margin-right: 8px;display: inline-block;vertical-align: middle;}
header .logo a {color:white; text-decoration:none;  line-height:31px; display:inline-block; vertical-align:middle}
header .logo a:before {/* content:""; *//* display:inline-block; */vertical-align:top;width:34px;height:32px;margin:0px 10px 0 0;background-position:top center;background-repeat:no-repeat;background-size:contain;background-image: url("data:image/svg+xml;charset=utf8,%3Csvg width='586' height='458' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M404.431.87 230.354 297.767 82.944 46.35h70.208l85.869 145.829 27.427-46.775L181.666.868H.941l227.815 392.471 204.566-346.99h69.881L262.199 457.396h54.24l3.761-6.386L585.261.871h-180.83Z' fill='%23ffffff'/%3E%3C/svg%3E")}
header.sticky {box-shadow:0px 1px 5px rgba(0,0,0,0.08)}
.header-grid .btn {padding:1em 0 !important; display:block; border:0; min-width:100px !important; background:white; color:#19262d}




/* Icons */
.sub-menu li a {position:relative; font-weight:600 !important; padding:10px 10px 10px 75px !important; border-radius:4px; color:#19262d}
	.sub-menu li a,
	.sub-menu li.current-menu-item a,
	.sub-menu li a:hover .menu-description {color:#19262d !important}
	.sub-menu li.current-menu-item a:hover,
	.sub-menu li a:hover {background:#f7f9f9 }

.sub-menu li a .menu-icon {position:absolute; top:10px; left:10px; width:50px; height:50px; background:#f7f9f9; border-radius:4px}
.sub-menu li a .menu-icon img {width:50%; margin:25%; fill:#19262d}
.sub-menu li a:hover .menu-icon {background:white}

.sub-menu li a .menu-description {opacity:0.5; padding-top:2px; font-weight:normal !important; font-size:80%; line-height:150%}
.sub-menu ul a {color:#286ae3; font-weight:normal}

/* Desktop Menu System */
@media screen and (min-width:1025px) {
	.desktopMenu {text-align:center; font-weight:normal; text-align:center}
	.desktopMenu ul {list-style-type:none;margin:0 auto;padding:0;position:static;z-index:1001; text-align:center; display:inline-block}
	.desktopMenu li {float:left;position:relative; margin:0 1vw; height:75px; text-align:center}
	.desktopMenu li a {display:block; height:75px; line-height:75px; color:white; text-decoration:none}
		.desktopMenu li.current-menu-item a, .desktopMenu li.current-menu-item:hover a {background:none;color:white}
	.desktopMenu li:hover a {}
	.desktopMenu .current-menu-item a {}
	.desktopMenu ul li.menu-item-has-children>a:after {color:#aaa;display:inline-block; vertical-align:center; margin-left:5px; content:'+';font-size:13px}

	.desktopMenu li:after, .desktopMenu .current-menu-item:after {content:""; height:4px; width:0%; background:#286ae3; display:block; margin-top:-4px; margin-left:50%}
	.desktopMenu li:hover:after, .desktopMenu .current-menu-item:after {width:100%; margin-left:0%}

	/* 2nd Level */
	.desktopMenu li ul {position:absolute; top:75px; left:-30px; padding:15px 20px; width:750px; z-index:1010; background:white; border:1px solid #eee; box-shadow:0px 5px 10px rgba(0,0,0,0.1);
		display:grid;grid-template-columns:repeat(2,1fr);grid-column-gap:0px; grid-row-gap:0px; opacity:0; border-radius:4px; display:none}
	.desktopMenu li:hover ul a:hover,
	.desktopMenu li li:hover > a {color:#286ae3}
	.desktopMenu li ul li {display:block; width:100%; height:auto; padding:3px 0; float:none;text-align:left;width:auto;position:relative; margin:0; z-index:1010}
	.desktopMenu li ul li a {width:100%; height:auto!important; display:block; padding:1em; margin:0; line-height:125%!important;text-transform:none; font-weight:600 !important}
	.desktopMenu ul li a:hover + .sub-menu, .desktopMenu .sub-menu:hover {display:block;display:grid; opacity:1}
	.desktopMenu li ul li:after {display:none}

	.desktopMenu ul ul li.current-menu-item:after {display:none}

	.menu-panel, .sidebar-toggle {display:none}
}

@media screen and (min-width:1201px) and (max-width:1400px) {
	.header-grid {grid-column-gap:1vw}
}
@media screen and (min-width:1025px) and (max-width:1240px) {
	.header-grid {grid-column-gap:1vw}
	.desktopMenu li {margin:0 0.7vw}
	.header-grid {display:grid;grid-template-columns: 240px auto 120px;grid-column-gap:10px}
	.header-grid .btn {padding:1em 0 !important;  font-size:0.9em}
}
@media screen and (min-width:2000px) {
	.header-grid {grid-column-gap:0.5vw}
	.desktopMenu li {margin:0 0.5vw}
}

/* Mobile Menu System */
@media screen and (max-width:1024px) {
	.desktopMenu, .header-grid .btn {display:none}

	.header-grid {display:grid;grid-template-columns:repeat(1,1fr); grid-column-gap:0; align-items:center; height:60px; margin-right:60px}
	header .logo {text-align:left; font-size:160%}
	header .logo a:before {width:30px; height:30px; margin-right:10px}

	.header-grid {width:auto}

	.menu-panel {background:#fff;position:fixed;z-index:100001;overflow-y:auto;right:-300px;width:400px;height:100%;box-sizing:border-box;transition:right .25s ease-in-out}
	.sidebar-toggle {font-size:200%; cursor:pointer;background:0 0; padding:0 15px; height:60px; line-height:45px; min-width:60px; margin:0;border:none;outline:0;color:#fff; position:relative}
	.menu-panel .sidebar-toggle {display:block; text-align:right; width:100%; z-index:10000; font-size:250%; color:#19262d}

	header .sidebar-toggle {position:absolute; top:0px; right:0px}

	/* Menu System */
	.mobileMenu {padding:0 10px 5em}
	.mobileMenu * {box-sizing:border-box}
	.mobileMenu ul {list-style:none;margin:0;padding:0;display:block;clear:both;border-top:1px solid #eee}
	.mobileMenu li {border-bottom:1px solid #eee;position:relative;overflow:hidden;transition:all .4s ease;font-size:125%}

	.mobileMenu li::after {content:"";display:block;clear:both}
	.mobileMenu li>a>svg {display:block;position:relative;width:14px;float:right;transition:all .3s ease}
	.mobileMenu li.open > a > svg {transform:rotate(45deg)}

	.mobileMenu a {padding:20px 10px;display:block; text-decoration:none;color:#19262d}
	.mobileMenu li.open > ul {display:block;padding:15px 0}
	.mobileMenu li>ul {display:none;height:0;margin:0;overflow:hidden;transition:height 350ms ease-in-out}
	.mobileMenu ul.is-visible {display:block}
	.mobileMenu ul ul li {border:0;font-size:90%; font-weight:normal; line-height:125%}
	.mobileMenu ul ul a {padding:0.5em 1em; font-weight:400}
	.mobileMenu a:hover {color:#286ae3}
	.openMenu {position:absolute;left:0px;top:0px}

	.mobileMenu .btn {font-size:100%; text-align:center; display:block; margin:1.5em 0.5em; color:white; min-width:170px}

	.openMenu, .closeMenu {font-size:100%;cursor:pointer;background:0 0;padding:5px 20px;margin:0;border:none;outline:0;font-weight:normal; color:#19262d}

	.container.open-menu .menu-panel {left:auto;right:0px}
	.swipe-area {position:absolute;width:100%;left:auto;right:0;top:0;height:100%;z-index:0}
	.menu-panel {left:auto;width:100%;right:-100%;transition:right 0.25s ease-in-out}
}
@media screen and (max-width:450px) {
	.header-grid {margin-right:40px}

}



/* Grids / Columns */
.row {display:block; clear:both; padding:8vh 0}
.row.nopadtop {padding-top:0}
.two-columns, .three-columns, .four-columns, .five-columns {margin:15px 0; position:relative}
.two-columns {display:grid;grid-template-columns:repeat(2,1fr);grid-column-gap:30px; grid-row-gap:15px}
.three-columns{display:grid;grid-template-columns:repeat(3,1fr);grid-column-gap:30px; grid-row-gap:15px}
.four-columns{display:grid;grid-template-columns:repeat(4,1fr);grid-column-gap:30px; grid-row-gap:15px}
.five-columns {display:grid;grid-template-columns:repeat(5,1fr);grid-column-gap:30px; grid-row-gap:15px}
.column {padding-bottom:25px; position:relative}

	@media screen and (max-width:1024px) {
		.row {padding:30px 0}
	}
	@media screen and (max-width:800px) {
		.row {padding:20px 0}
		.two-columns {display:grid;grid-template-columns:repeat(1,1fr); grid-column-gap:0; grid-row-gap:0; margin:15px 0; position:relative}
		.three-columns{grid-template-columns:repeat(1,1fr);grid-column-gap:0}
		.four-columns{grid-template-columns:repeat(2,1fr);grid-column-gap:15px}
		.five-columns {grid-template-columns:repeat(2,1fr);grid-column-gap:15px}
		.column {margin:0}
		.row:last-of-type .column:last-of-type {margin-bottom:0}
	}
	@media screen and (max-width:400px) {
		.column {margin:0; padding:10px 0}
	}





/* Text area with Photo */
.photo-right {background-size:55%; background-position:top right; background-repeat:no-repeat}
	.text-left {text-align:left; max-width:50%; padding-bottom:5vh}

	@media screen and (max-width:800px) {
		.text-left {max-width:100%; padding-bottom:20px}
		.dark.photo-right {background-image: none !important}
	}










/* what-we-do (Home Page) */
.what-we-do {display:grid; grid-template-columns:repeat(3,1fr); grid-column-gap:2em; grid-row-gap:2em; text-align:center; clear:both; padding:1em 0}
	.service {padding:2em 2em 1em;  border:1px solid #eee; text-decoration:none; text-align:left; position:relative; z-index:1}
		.service:hover {transform:scale(1.08); text-decoration:none}
			.service .icon {display:block; padding:0 0 1.5em 0}
				.service .icon img {width:auto; height:auto; height:40px}
			.service h3 {}
			.service p {}
	.home-skills{margin-bottom: 0px}
	.home-about	{padding:2em 0}
	.home-about img {width:105px; filter:invert(1)}
	.home-about .no-invert img{width:100%; filter:none; max-width: 200px}
  .noBorder  {border:none}
  .service.noBorder  {visibility:hidden}

			@media only screen and (max-width:1024px) {
				.what-we-do {grid-template-columns:repeat(2,1fr);grid-column-gap:1.5em; grid-row-gap:1.5em}
			}
			@media only screen and (max-width:800px) {
				.what-we-do {grid-column-gap:1em; grid-row-gap:1em}
				.service, .service:hover {padding:1.5em; margin:0}
				.service .icon {padding:0 0 1em 0}
       		 .noBorder,.service.noBorder   {display: none}
			}
			@media only screen and (max-width:540px) {
				.what-we-do {grid-template-columns:auto;grid-column-gap:0; grid-row-gap:1em}
			}





/* Work */
.row.projects {background:#f7f9f9}
.wp-block-group[style*="background-color:#f3f5f5"] {background-color:#f7f9f9 !important }
.work-grid {margin:0; display:grid;grid-template-columns:repeat(4,1fr);grid-column-gap:2em; grid-row-gap:2em; margin-bottom:2em}

	.work-item {background:white; padding:0 2em 2em; text-align:left; border-radius:4px; position:relative}
	.work-item:hover {transform:scale(1.1)}
	.work-item h3 {line-height:125%}
	.work-item p {font-size:0.9em; line-height:140%}
	.work-item .image {height:120px; display:block; margin:0; vertical-align:middle; position:relative; text-align:left}
	.work-item img {max-width:140px; max-height:70px; position:relative; left:auto; right:auto; margin:0 auto; top:50%; transform:translateY(-50%)}

	 .navigation.pagination {text-align:center; padding:3vh 0}
		.navigation.pagination a {margin:0 0.5em; padding:0.5em; display:inline-blcok}

     @media screen and (max-width:1024px) {
		 .work-grid{grid-template-columns:repeat(3,1fr)}
     }
	  @media screen and (min-width:801px) {
		.home .work-item {padding-bottom:1.5em}
	  }
     @media screen and (max-width:800px) {
		 .work-grid{grid-template-columns:repeat(2,1fr)}
		 .work-item {padding:0 1.5em 1.5em}
		 .row.projects {padding-bottom:5vh}
		 .work-item p {font-size:1em}
     }
     @media screen and (max-width:550px) {
		  .work-grid{grid-template-columns:repeat(1,1fr)}
     }









/* Ul Checks */
ul.checks, ul.checks li {list-style-type:none !important; margin:0.75em 0; padding:0;}
ul.checks li {padding:0 0 0 25px !important; margin:0.75em 0 !important; position:relative; line-height:150%}
ul.checks li:before {content:""; position:absolute; left:0px; top:4px; width:14px; height:14px; background-size:14px; background-position:center center; background-image: url("data:image/svg+xml;charset=utf8,%3Csvg version='1.1' fill='%23286ae3' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' width='469.184px' height='469.185px' viewBox='0 0 469.184 469.185' style='enable-background:new 0 0 469.184 469.185;' xml:space='preserve'%3E%3Cg%3E%3Cpath d='M462.5,96.193l-21.726-21.726c-8.951-8.95-23.562-8.95-32.59,0L180.368,302.361l-119.34-119.34 c-8.95-8.951-23.562-8.951-32.589,0L6.712,204.747c-8.95,8.951-8.95,23.562,0,32.589L163.997,394.62 c4.514,4.514,10.327,6.809,16.218,6.809s11.781-2.295,16.219-6.809L462.27,128.783C471.45,119.68,471.45,105.145,462.5,96.193z'/%3E%3C/g%3E%3Cg%3E%3C/g%3E%3Cg%3E%3C/g%3E%3Cg%3E%3C/g%3E%3Cg%3E%3C/g%3E%3Cg%3E%3C/g%3E%3Cg%3E%3C/g%3E%3Cg%3E%3C/g%3E%3Cg%3E%3C/g%3E%3Cg%3E%3C/g%3E%3Cg%3E%3C/g%3E%3Cg%3E%3C/g%3E%3Cg%3E%3C/g%3E%3Cg%3E%3C/g%3E%3Cg%3E%3C/g%3E%3Cg%3E%3C/g%3E%3C/svg%3E")}





/* Service Pages */
.service-section {padding:0}
.service-section .wp-block-column:last-of-type {padding-left:2rem}
.service-section .wp-block-column:last-of-type .wp-block-media-text {grid-template-columns:30px auto !important; padding:0.75em 0; border-top:1px solid #eee}
.service-section .wp-block-column:last-of-type .wp-block-media-text  .wp-block-media-text__content {padding:0 1em}
.service-section .noleft-pading .wp-block-column:last-of-type {padding-left:0}
.service-section .icon {width:40px; height:40px; border-radius:4px; display:inline-block; background:#f7f9f9; text-align:center}
.service-section .icon img {width:20px; height:20px; margin:10px auto 0}

.icon-bg-white {width:40px; height:40px; border-radius:4px; display:inline-block; background:#ffffff; text-align:center}
.icon-bg-white img {width:20px; height:20px; margin:10px auto 0}

.row.skills {padding-bottom:0;}

	@media screen and (max-width:800px) {
		.service-section .wp-block-column:last-of-type {padding-left:0}
		.service-section .wp-block-column:last-of-type .wp-block-media-text {padding:0.5em 0}
		.service-section .wp-block-media-text.is-stacked-on-mobile .wp-block-media-text__content{grid-column:2;grid-row:1;}
		.row.skills{padding-top:5vh}
	}






/* Icons on white background */
.wp-block-columns.icons {padding:0}

.wp-block-columns.icons .wp-block-column {
    padding: 2em 2em 1em;
    border: 1px solid #eee;
    text-decoration: none;
    text-align: left;
    position: relative;
    z-index: 1;
}

		
.wp-block-columns.icons figure {width:50px; height:50px; border-radius:40px; display:inline-block; background:#f7f9f9; text-align:center}
.wp-block-columns.icons figure img {width:30px; height:30px; margin:10px auto 0}





/* Brands */
.row.brands h2 {padding:1em 0}
.row.brands img {filter:grayscale(100%); opacity:0.75}
.row.brands div:hover img{filter:grayscale(0%); opacity:1}

.row.brands .logo {position:relative; height:150px; text-align:center}
.row.brands .logo img {max-width:75%; position:relative; top:50%; -webkit-transform:translateY(-50%); -ms-transform:translateY(-50%); transform:translateY(-50%)}

	@media screen and (max-width:1024px) {
		.brand-logos {display:block}
		.brand-logos > div{display:inline-block; width:24.5%}
	}
	@media screen and (max-width:800px) {
		.brand-logos > div{display:inline-block; width:31%}
		.wp-block-media-text .wp-block-media-text__content {
		    padding: 0 4vw;
		}
	}
	@media screen and (max-width:480px) {
 	   .brand-logos > div{display:inline-block; width:48%}
	}
	@media only screen and (min-width:1600px) {
		.wp-block-media-text .wp-block-media-text__content {padding-left:calc(50vw - 800px + 4vw)}
	}




/* Banner */
.banner {margin:0; position:relative; z-index:1; display:block; clear:both; background:#19262d; color:white; overflow:hidden}

@media only screen and (min-width:768px) {
	.banner {min-height:40vh}
	.banner .image {position:absolute; right:0px; top:0px; height:100%; width:50%; z-index:1; overflow:hidden; display:flex}
	.banner .image img {display:block; position:relative; z-index:1; flex-grow:1; object-fit:cover; width:100%; height:auto; height:auto; flex-grow:0}
	.banner figure.wp-block-media-text__media,
	figure.wp-block-media-text__media {position:relative}
	.banner .image:after,
	.banner figure.wp-block-media-text__media:after  {content:""; width:30vw; height:100%; position:absolute; z-index:2; bottom:0px; left:0px; background: rgb(25,38,45); background: linear-gradient(90deg, rgba(25,38,45,1) 0%, rgba(25,38,45,0) 100%)}
	.banner .wrapper {min-height:40vh}
	.banner .copy {text-align:left;  padding:15vh 0;  position:relative; z-index:2; width:50%; /*top:50%; -webkit-transform:translateY(-50%); -ms-transform:translateY(-50%); transform:translateY(-50%)*/}
	.banner .copy p {margin-right:5vw}
	.banner .btn {margin-top:1em}
	.banner .btn:hover {color:#19262d; background:white}
}
	@media only screen and (max-width:800px) {
		.banner {padding:5vh 0}
		.banner .image {display:none}
		.banner .copy {text-align:left}
		.wp-block-buttons.wp-container-2{justify-content:flex-start !important}

		div[style*="height:5vh"],
		div[style*="height:4vh"] {height:1em!important}

		hr, .wp-block-separator {margin: 1em 0}

		div[style*="height:10vh"]{height:4vw!important}

	}




/* Author template */
.author-layout {position:relative; padding-bottom:5vh}
.author-layout .wrapper {display:grid; grid-template-columns:25% auto; grid-column-gap:5vw; align-items:start; position:relative}
.avatar img {border-radius:4px}
	.spacer {height:5vh; display:block}
.author-layout h5 {color:#4887f9; font-weight:400}
.author-info {display:grid; grid-template-columns:100px auto; grid-column-gap:2em; grid-row-gap:1em; max-width:800px; position:relative; align-items:start; margin-top:5vh; padding-top:5vh; border-top:1px solid #eee}
.author-info h3 {padding:0}
.author-info img {border-radius:50px; max-width:100px}

	@media only screen and (min-width:801px) {
	}
	@media only screen and (max-width:800px) {
		.author-info {grid-template-columns:auto; padding-bottom:5vh}
		.author-layout .wrapper {display:block}
	}



/* Project template */
.project-layout {position:relative}
.title-area.project .wrapper,
.project-layout .wrapper {display:grid; grid-template-columns:25% auto; grid-column-gap:5vw; align-items:start; position:relative}
.title-area.project .wrapper {align-items:center}
	.title-area.project .client-logo {text-align:center; display:block}
		.title-area.project .client-logo img {width:auto; max-width:70%; max-height:120px; margin:0}

.project-sidebar .stickit {position:sticky; top:200px; text-align:left; display:block}
	.project-skills {background:#19262d; color:white}
	.project-skills ul {display:grid;grid-template-columns:repeat(3,1fr);grid-column-gap:1em; grid-row-gap:1em; text-align:left}
	.project-skills ul li {line-height:150%; position:relative; padding:8px 0 8px 50px}
	.project-skills ul li:before {content:""; position:absolute; left:0px; top:0px; width:40px; height:40px; background-size:40px; background-position:center center; background-repeat:no-repeat; background-image: url("data:image/svg+xml;charset=utf8,%3Csvg height='512px' id='Layer_1' fill='white' style='enable-background:new 0 0 512 512;' version='1.1' viewBox='0 0 512 512' width='512px' xml:space='preserve' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cpath d='M255.9,64C150.2,64,64,150.2,64,256.1C64,361.9,150.2,448,255.9,448c8.5,0,16.8-0.5,24.9-1.8 c85.7-11,153.8-78.7,165.3-164.1c1.3-8.5,1.9-17.2,1.9-26C448,150.2,361.8,64,255.9,64z M83.4,256.1c0-25,5.4-48.8,15-70.2 l82.3,225.5C123.1,383.4,83.4,324.3,83.4,256.1z M278.3,427.3c-7.3,0.9-14.8,1.4-22.4,1.4c-16.9,0-33.2-2.5-48.6-7.1l18.8-55h0.1 l32.7-95.5L312,416.5c0.4,0.8,0.9,1.6,1.3,2.3C302.1,422.8,290.4,425.6,278.3,427.3z M279.8,175.1c10.4-0.5,19.7-1.6,19.7-1.6 c9.4-1,8.2-14.8-1.1-14.2c0,0-28,2.2-46,2.2c-16.9,0-45.5-2.2-45.5-2.2c-9.2-0.6-10.4,13.7-1,14.2c0,0,8.7,1.1,18.1,1.6l26.9,73.7 l-37.8,113.3l-62.9-187c10.5-0.5,19.8-1.6,19.8-1.6c9.2-1,8.2-14.8-1.1-14.2c0,0-27.9,2.2-46,2.2c-3.3,0-7.1-0.1-11.1-0.2 c30.8-46.8,83.9-77.7,144.1-77.7c45,0,85.9,17.2,116.6,45.2c-0.8,0-1.5-0.1-2.3-0.1c-17,0-29,14.8-29,30.7 c0,14.2,8.2,26.2,16.9,40.4c6.6,11.5,14.3,26.3,14.3,47.6c0,14.8-4.4,33.4-13.1,55.7l-17.3,57.6L279.8,175.1z M342.7,405.3 l13.7-39.7l39-112.8c9.9-24.6,13.1-44.3,13.1-61.8c0-6.3-0.4-12.3-1.1-17.8c13.5,24.6,21.2,52.8,21.2,82.9c0,8-0.5,15.8-1.5,23.5 C419.7,333.3,387.6,379.2,342.7,405.3z'/%3E%3C/svg%3E")}

	.project-sidebar h6 {padding:2em 0 0.5em}
	.project-sidebar h6:first-of-type {padding-top:0}
	.project-sidebar h6:after {display:none}

	.sidebar-cta {background:#f7f9f9; padding:2rem; margin:0; border-radius:4px}
	.sidebar-cta a {font-weight:600; margin-top:0.5em; min-width:125px}

	.project-content figure {box-shadow:0px 5px 10px rgba(0,0,0,0.1)}

	.single-project figcaption {background:#ddd; text-align:center; padding:10px; margin:0}
	.single-project .project-content .wp-block-image {margin:0 0 2em}

	@media only screen and (min-width:801px) {
		/*.title-area.project .wrapper,
		.project-layout .wrapper {padding-right:0}*/
		
		.title-area.project .wrapper{padding-right:5vw;}
		.title-area.project .wrapper h1,
		.title-area.project .wrapper h4 {max-width:75%;}
	}
	@media only screen and (max-width:800px) {
		.project-layout .wrapper, .title-area.project .wrapper {display:block}
		.title-area.project {margin:5vh 0}
		.title-area.project .client-logo {text-align:left; padding:0 0 5vh}
			.title-area.project .client-logo img {width:auto; max-width:200px; max-height:150px}
		.project-sidebar p a {margin:8px 0; display:inline-block}
	}



/* Generic Page Layouts */
.main-content {padding-top:0}
.main-content .wrapper { text-align:left}







/* Blog */
.blogs {padding-top:0}
.blogs .articles {display:grid;grid-template-columns:repeat(3,1fr);grid-column-gap:2.5em; grid-row-gap:2.5em; margin-bottom:2.5em}
.blogs article {background:#f7f9f9; padding:2.5em; text-align:left}
.blogs article:hover {transform:scale(1.08)}
.blogs article a {color:#19262d; text-decoration:none}
.blogs article p {opacity:0.5; font-size:85%; line-height:130%; padding-bottom:0}



	.single-post .main-content .wrapper,
	.wp-block-column.narrow {max-width:1200px !important; margin:0 auto}
	.single-post .title-area .wrapper {max-width:800px !important; padding-right:0; margin:8vh auto 4vh; text-align:center;}
	.single-post .title-area p {font-size:0.85em; opacity:0.6;}

  .single-post .service .icon {padding:0!important}
  
  .single-post .wp-block-columns h2 {margin:0; padding-top:0;}
  .single-post .wp-block-columns h4 {margin:0; padding-top:0; font-size:1.25em;}

	/* Pagination */
	.pagination {text-align:center; margin:2.5vh auto; max-width:1600px !important; padding:0 4vw}
		.pagination a, .pagination span {border-radius:25px; font-weight:bold; padding:1em 1.5em !important; margin:0; display:inline-block; color:white; text-decoration:none; background:#286ae3}
			.pagination a.prev {float:left; margin:0}
			.pagination a.next {float:right; margin:0}
			.pagination a.prev:before,
			.pagination a.next:after {display:inline-block; vertical-align:middle; font-size:75%}
			.pagination a.prev:before {content:"\276E"; margin-right:0.4em}
			.pagination a.next:after {content:"\276F"; margin-left:0.4em}
			.pagination span.current {text-decoration:none; background:white; color:black}
			.pagination a.disabled, .pagination a.disabled:hover {opacity:0.2}


	@media only screen and (min-width:1241px) {
		.single-post .title-area h1 {font-size:300%}
	}
	@media only screen and (max-width:1024px) {
		.blogs .articles {grid-template-columns:repeat(2,1fr);grid-column-gap:2em; grid-row-gap:2em; margin-bottom:2em}
		.blogs article {padding:2em}
	}
	@media only screen and (max-width:600px) {
		.blogs .articles {display:block; margin-bottom:0}
		.blogs article {margin-bottom:2em}
	}






/* Steps */
.steps{list-style-type:none;counter-reset:css-counter 0}
.steps .service{position:relative;counter-increment:css-counter 1;padding-top:3em;margin-bottom:1em}
.steps .service:hover{background:#19262d;border-color:#19262d;color:white}
.steps .service:before{content:counter(css-counter);position:absolute;top:-17.5px;left:2em;width:35px;height:35px;border-radius:20px;background:white;border:1px solid #eee;color:#19262d;font-weight:bold;text-align:center;line-height:34px}
.steps .service:hover:before{border-color:#19262d}

.has-white-color.has-background .steps .service {background-color:rgba(25,38,45,0.15); border:0; border-radius:4px}
.has-white-color.has-background .steps .service:before{background:white;border:0; color:#286ae3}
.has-white-color.has-background .steps .service:hover{background-color:rgba(25,38,45,0.5)}

	@media only screen and (max-width:800px) {
		.steps .service:before{top:-15px;left:1.5em;width:30px;height:30px;line-height:30px}
		.steps .service{padding-top:2.5em;margin-bottom:0}
	}





/* Footer */
footer {background:#19262d; color:white}
footer .wrapper {max-width:1000px; text-align:center}
footer h2 {padding:0}
footer .btm {font-size:80%; line-height:125%; padding:5vh 0}
footer .btm p, footer .btm a {color: #ffffff}

.cta-grid{padding:8vh 0;display:flex;flex-direction:row;flex-wrap:nowrap;justify-content:center;align-items:center;align-content:center;gap:6vw;border-bottom:1px solid rgba(255,255,255,0.1)}

footer .wp-block-columns {padding:5vh 0 0}
footer .wp-block-columns li {display:block; font-size:0.9em}
footer .wp-block-columns a {color:white; display:block; padding:6px 0}
footer .wp-block-columns a:hover {}
footer h6 {padding:0 0 1em}
footer h6:after{display:none}

footer .wp-block-column {text-align:left}

footer .wp-block-column ul, footer .wp-block-column ul li {margin:0; padding:0}

@media only screen and (max-width:1024px) {
	.cta-grid{padding:5vh 0;display:block}
	footer h2 {padding:0 0 1em; font-size:175%}
}






/* Contact Page */
.row.contact {background:#19262d; color:white}
.row.contact .wrapper {display:grid;grid-template-columns:auto 40%; grid-column-gap:10vw;  text-align:left; align-items: center}
.contact-details a {color:#4c8bfd; font-weight:600}

.page-id-22 .cta-grid {display:none;}

.contact-details a[href^="tel:"]:before,
.contact-details a[href^="mailto:"]:before{content:"\F5C1";display:inline-block;vertical-align:middle;margin-right:0.5em;font-family:"bootstrap-icons";font-size:1.15em; color:white;}
.contact-details a[href^="mailto:"]:before{content:"\F84C";}


	@media only screen and (max-width:800px) {
		.row.contact .wrapper {display:block}
	}






/* Map  */
.row.map {margin:0; padding:0; position:relative; z-index:1; display:block; clear:both; overflow:hidden}





/* Contact Form Elements */
.wpcf7-form {border:0 !important}
.wpcf7-form p {padding:0.25em 0}
	.wpcf7-form-control-wrap {display:block}
	.wpcf7-list-item {display:block !important; padding:0.5em 0}
	.wpcf7-checkbox .wpcf7-list-item {padding:0}
	.wpcf7 input, .wpcf7 textarea, .wpcf7 select {background:white; color:#19262d; display:block; max-width:100%; min-width:100%; border-radius:4px; padding:0.8em 0; margin:0; text-indent:0.8em; border:0; font-size:100%; border: 1px solid #19262d}
	.contact .wpcf7 input, .contact .wpcf7 textarea, .contact .wpcf7 select {background:#f7f9f9;}
	.wpcf7 select {height:43px; line-height:43px; padding:0 0.75em ; text-indent:0; outline:none; background:white; color:#19262d}
	.wpcf7 input[type='checkbox'] {display:inline-block; min-width:14px; border-radius:0px; padding:0; margin:0 5px 0 0; text-indent:0}

	.wpcf7 input:focus, .wpcf7 textarea:focus { outline:none}
	::-webkit-input-placeholder  {color:#888 !important}
	:-moz-placeholder {color:#888 !important}
	::-moz-placeholder  {color:#888 !important}
	:-ms-input-placeholder {color:#888 !important}
	.wpcf7 p br {display:none}

	.wpcf7 input:not(:placeholder-shown),
	.wpcf7 textarea:not(:placeholder-shown) {background:#f7f7f7; color:#19262d}

	.wpcf7 input[type=submit] {background:#286ae3; color:white; border:0; margin:0.25em 0; min-width:150px; text-indent:0em; opacity:1}
		.wpcf7 input[type=submit]:hover {color:white !important; text-decoration:none; transform:scale(1.08); background:#4c8bfd}


	/* Contact Form 7 output */
	div.wpcf7-response-output { font-size:100%; line-height:125%; border:0 !important; padding:1em 0 !important; margin:0 !important; color:#fa4239}
	div.wpcf7-mail-sent-ok {font-size:100%; line-height:125%; color:#19262d}
	.wpcf7-not-valid-tip {display:block; padding:0; color:#fa4239;  font-size:90%}
	form.sent .fieldset-cf7mls-wrapper {display:none !important}
	form.sent div.wpcf7-response-output {color:#286ae3 !important; padding:1em 0 !important; font-weight:600}
	.grecaptcha-badge{visibility:hidden; display:none}

	.contact-form {background:white; color:#19262d; padding:2em; border-radius:4px}
	.contact-form input, .contact-form textarea, .contact-form select {background:transparent; color:#19262d; outline:none!important;box-sizing: border-box;overflow: visible!important}
	.contact-form select {background:rgba(255,255,255,0.25); color:#5d5d69}
	.contact-form .wpcf7 input:focus, .contact-form .wpcf7 textarea:focus {background:rgba(255,255,255,1); color:#19262d;overflow: visible!important}
	.contact-form ::-webkit-input-placeholder  {color:#5d5d69!important}
	.contact-form :-moz-placeholder {color:#5d5d69!important}
	.contact-form ::-moz-placeholder  {color:#5d5d69!important}
	.contact-form :-ms-input-placeholder {color:#5d5d69!important}
	.contact-form .wpcf7-form-control-wrap{ overflow: visible!important;position: relative; margin-bottom:0.5em}
	.contact-form label {font-size:90%}

	input:focus:required:invalid{ color: red; border-color: red; box-shadow: 0 0 6px red}
	input:focus:required:valid,
	input:focus:required:placeholder-shown{ border-color: green; box-shadow: 0 0 8px green}

	.wpcf7 p .wpcf7-form-control-wrap:after {content:""; position:absolute; font-family:"bootstrap-icons"; right:0.7em; top:0.7em; font-size:1em; }
	.wpcf7 p.name .wpcf7-form-control-wrap:after {content:"\F4D3"}
	.wpcf7 p.mail .wpcf7-form-control-wrap:after {content:"\F32F"}
	.wpcf7 p.subject .wpcf7-form-control-wrap:after {content:"\F431"}
	.wpcf7 p.message .wpcf7-form-control-wrap:after {content:"\F252"}
	.wpcf7 p.company .wpcf7-form-control-wrap:after {content:"\F1DD"}
	.wpcf7 p.phone .wpcf7-form-control-wrap:after {content:"\F5C1"}
	.wpcf7 p.website .wpcf7-form-control-wrap:after {content:"\F3EE"}

	@media only screen and (min-width:1024px) {
		.sidebar-cta h3 {font-size:1.5em;}
	}
	@media only screen and (max-width:800px) {
		.row.contact .contact-form, .row.contact .details {padding:5vh 5vw}
		.column.map {min-height:40vh; height:40vh}
		.contact-form {margin:2em 0}
	}




/*Testimonial*/
.banner-swiper {margin:5vh 0}
.swiper-wrapper .wp-block-cover {min-height:200px}
.swiper-wrapper blockquote {text-align:center; max-width:800px; margin:0 auto}
.swiper-wrapper blockquote p {font-size:2em; line-height:1.6em; position:relative; padding:0 0 1em; opacity:1; font-weight:600}
.swiper-wrapper blockquote p :before{content:"\201C";background:#049EF9;color:white;font-weight:600;width:40px;height:40px;font-size:45px;line-height:59px;text-align:center;display:inline-block;font-family:'Georgia',serif;font-style:normal;border-radius:25px;position:absolute;top:0px;left:1px}
.swiper-pagination {bottom:1em !important}

	@media only screen and (max-width:800px) {
		.swiper-wrapper blockquote p {font-size:1.25em; line-height:1.5em; padding:0 0 1.5em}
		.swiper-pagination {bottom:0.5em !important}
	}










/* Clients Page */
.page-id-1833 h3 {padding-bottom:0}
.page-id-1833 .main-content .wp-block-column p {opacity:0.75}







/* jonathan */
.work-item img {height: auto; width:auto}
.brand-logos img {height: auto; width:auto}
.title-area.project img {height:auto}
.swiper-slide img {height: auto}
figure img {height: auto}





/* team */
.team-list .wp-block-column{border-radius:4px; align-self: auto!important; padding:0 2em 2em; overflow:hidden}
.team-list figure{width:100%; width:calc(100% + 4em); height:auto; margin:0 -2em 2em}
.team-list img {width:100%;height:auto}
.team-list h5{color:#214888; padding-top:0; font-weight:400}
.team-list p{}
.team-list :where(.wp-block-columns.is-layout-flex){gap:2.5em}


/* cookie banner */
p.cky-title {display:none}






/* UI Page */
.page-id-2558 .row.skills .wp-block-column .wp-block-image img {box-shadow:0px 0px 10px rgba(0,0,0,0.1)}

.wp-block-quote {padding:1em 0; margin:0}
.wp-block-quote p {font-size:1.25em; line-height:1.6em; position:relative; padding:0 0 1em; opacity:1; font-weight:600}
.wp-block-quote p :before{content:"\201C";background:#049EF9;color:white;font-weight:600;width:40px;height:40px;font-size:45px;line-height:59px;text-align:center;display:inline-block;font-family:'Georgia',serif;font-style:normal;border-radius:25px;position:absolute;top:0px;left:1px}
.wp-block-quote cite {line-height:150%}






/* Banner Block */
.bannerBlock {background:#21323a; border-radius:4px; text-align:center;padding:4vh 2em}
.bannerBlock.hosting h2 {line-height:100%; font-size:5vw}
.bannerBlock.hosting h2, .bannerBlock.hosting p {padding:0; margin:0}

	@media only screen and (max-width:1024px) {
		.bannerBlock.hosting h2 {font-size:4em}
	}





/* Page Speed */
.pageSpeed {background:#f7f9f9; border-radius:4px; text-align:center; padding:4vh 2em}
.pageSpeed img {max-width:150px}
.pageSpeed h3 {padding:1em 0}

.pageSpeed.home-pageSpeed  {padding:4vh 0}

@media only screen and (max-width:1024px) {
  .pageSpeed.home-pageSpeed .is-layout-flex {display: grid;grid-template-columns: repeat(4, auto);grid-column-gap: 0px;grid-row-gap: 24px;}
	.pageSpeed.home-pageSpeed br{display:none }

}

@media only screen and (max-width:800px) {
  .pageSpeed.home-pageSpeed .is-layout-flex {display: grid;grid-template-columns: repeat(1, 1fr);grid-column-gap: 0px;grid-row-gap:24px;justify-items: center}
.pageSpeed.home-pageSpeed br{display:block!important }
.pageSpeed h3 {padding: 0;}


}



/*progress donut*/
.svg-item {width:100px;font-size:16px; font-weight:600; margin: 0 auto;animation: donutfade 1s}
.donut-ring {stroke:#ebfaf2}
.donut-segment {transform-origin: center;stroke: #FF6200}
.donut-segment-2 {stroke:#01cc66; animation: donut1 3s}
.segment-2{fill:#01cc66}
@keyframes donutfade {
	0%{opacity:.2}
	100%{opacity:1}
}
@keyframes donutfadelong {
	0%{opacity:0}
	100%{opacity:1}
}

@keyframes donut1 {
	0%{stroke-dasharray:0,100}
	100%{stroke-dasharray:100,0}
}


.donut-percent {animation: donutfadelong 1s}
.donut-data {font-size: 0.12em;line-height: 1;transform: translateY(0.5em);text-align: center;text-anchor: middle;color:#666;fill: #666;animation: donutfadelong 1s}
.donut-text-1 {fill: #01cc66}
.donut-label {font-size: 0.28em;font-weight: 700;line-height: 1;fill: #000;transform: translateY(0.25em)}
.donut-percent {font-size: 0.5em;line-height: 1;transform: translateY(0.5em);font-weight: bold}


/*Gutenbanner*/
@media only screen and (min-width:801px) {
	.gutenbanner .image:after, .gutenbanner figure.wp-block-media-text__media:after {content: "";width: 30vw;height: 100%;position: absolute;z-index: 2;bottom: 0px;left: 0px;background: rgb(25,38,45);background: linear-gradient(90deg, rgba(25,38,45,1) 0%, rgba(25,38,45,0) 100%)}
.gutenbanner {min-height:40vh}
}


/* Blog page */
.post-template-default .steps .wp-block-group__inner-container {padding:0}





/* Portfolio Page */
.page-id-2558 .main-content .wp-block-column figure img {border: 1px solid #eee;
    box-shadow: 0px 5px 10px rgba(0,0,0,0.1); background:white}

    /* Timeline */
.wp-block-viewport-timeline { position:relative; margin:5vh 0}

.wp-block-viewport-timeline:before { content:""; width:5px; height:100%; z-index:1; background:#eee; position:absolute; top:0px; left:49%; left:calc(50% - 3px)}
.wp-block-viewport-timeline .wp-block-viewport-event {position:relative; padding:5vh 0; clear:both}
.wp-block-viewport-timeline .wp-block-viewport-event .tl-copy {text-align:left}

.wp-block-viewport-timeline .wp-block-viewport-event .year {width:60px; height:60px; line-height:60px; border-radius:50px; z-index:2; background:white; background:#286ae3; color:white; font-weight:bold; text-align:center;  position:absolute; top:5vh; left:47%; left:calc(50% - 30px); font-family:'Varela Round', Arial, Helvetica, sans-serif}

.wp-block-viewport-timeline .wp-block-viewport-event h6 {padding:0 0 1em; font-weight:400;}
.wp-block-viewport-timeline .wp-block-viewport-event h3 {padding:0.5em 0; line-height:150%; }
.wp-block-viewport-timeline .wp-block-viewport-event img {max-height:200px; max-width:250px; margin:1em 0 0}

	@media only screen and (min-width:1025px) and (max-width:1240px) {
		.wp-block-viewport-timeline .wp-block-viewport-event:nth-of-type(odd) .tl-copy {margin-right:0}
		.wp-block-viewport-timeline .wp-block-viewport-event:nth-of-type(even) .tl-copy {margin-left:0}
	}

	@media only screen and (min-width:1025px) {
		.wp-block-viewport-timeline .wp-block-viewport-event:nth-of-type(odd) .tl-copy {margin:0 5% 0 55%}
		.wp-block-viewport-timeline .wp-block-viewport-event:nth-of-type(even) .tl-copy {margin:0 55% 0 5%;}
	}
	@media only screen and (max-width:1024px) {
		.wp-block-viewport-timeline:before {left:27px}
		.wp-block-viewport-timeline .wp-block-viewport-event .year {left:0px}
		.wp-block-viewport-timeline .wp-block-viewport-event .tl-copy {margin-left:85px}
		.wp-block-spacer[style*="height:15vh"],
	    .wp-block-spacer[style*="height:10vh"],
	    .wp-block-spacer[style*="height:12vh"],
	    .wp-block-spacer[style*="height:8vh"] {height:2rem !important }
	    .wp-block-spacer[style*="height:5vh"],
	    .wp-block-spacer[style*="height:7vh"],
	    .wp-block-spacer[style*="height:2vh"] {height:1rem !important }
	}
	@media only screen and (max-width:480px) {
		.wp-block-viewport-timeline .wp-block-viewport-event .year {width:50px; height:50px; line-height:50px}
		.wp-block-viewport-timeline .wp-block-viewport-event .tl-copy {margin-left:70px}
		.wp-block-viewport-timeline .wp-block-viewport-event img {max-width:90%}
		.wp-block-spacer[style*="height:15vh"] {height:1rem !important }
	}

  /* Wide screen */
  @media only screen and (min-width:2000px){
  .row,.cta-grid{padding:5rem 0}
  .wp-block-spacer[style*="height:10vh"],
  .wp-block-spacer[style*="height:12vh"],
   .wp-block-spacer[style*="height:8vh"] {height:6rem !important }
  .wp-block-spacer[style*="height:5vh"],
  .wp-block-spacer[style*="height:7vh"] {height:3rem !important }
  .wp-block-spacer[style*="height:4vh"] {height:2.5rem !important }
  .wp-block-spacer[style*="height:2vh"] {height:2rem !important }

  .banner-swiper {margin:3rem 0}
  footer .wp-block-columns,footer .btm {padding: 3rem 0}

  .tabs .content {padding: 3rem 4vw !important}
  .navigation.pagination {padding:1rem 0; margin-bottom:0}
  .pagination {margin-bottom:0}

  .single-post .title-area .wrapper {max-width:1300px !important}
  .title-area {margin: 5rem 0 0}
  .single-post .title-area .wrapper {margin: 6rem auto 0}
}
@media only screen and (min-width:2000px){
  .wrapper, .wp-block-group__inner-container {max-width: 1650px !important}
  .wp-block-media-text .wp-block-media-text__content {padding-left: calc(50vw - 820px + 4vw)}
}









/* New Home Page */
.featured .wp-block-media-text {border-radius:4px; overflow:hidden}
.featured .wp-block-media-text__content {padding:8vh !important}

/* Blog Feed */
.blog-alt  ul li{list-style-type:none !important}
.blog-alt .wp-block-post {position: relative;padding:2em 2em 4em 2em;text-align:left;border-radius:4px;border:1px solid #eee;margin:0;min-height:100%}
.blog-alt  .wp-block-group__inner-container {padding-bottom:2em}
.blog-alt .wp-block-post:hover {transform:scale(1.1)}
.blog-alt .wp-block-post-template {margin: 24px 0; column-gap: 2em}
.categoryRow {position: absolute; bottom:2em ;width:calc(100% - 4em)}
.blog-alt a {text-decoration: none}

@keyframes FadeIn { from { opacity: 0} to { opacity: 1} }
.FadeIn .wp-block-column { animation: FadeIn 0.8s ease forwards; opacity: 0; /* Start hidden */ }

.FadeIn .wp-block-column:nth-child(1) { animation-delay: 0.2s}
.FadeIn .wp-block-column:nth-child(2) { animation-delay: 0.4s}
.FadeIn .wp-block-column:nth-child(3) { animation-delay: 0.6s}

@keyframes FadeIn-two { from { opacity: 0;  } to { opacity: 1;  } }
.FadeIn-two .wp-block-column { animation: FadeIn-two 0.8s ease forwards; opacity: 0; /* Start hidden */ }

.FadeIn-two .wp-block-column:nth-child(1) { animation-delay: 0.8s}
.FadeIn-two .wp-block-column:nth-child(2) { animation-delay: 1s}
.FadeIn-two .wp-block-column:nth-child(3) { animation-delay: 1.2s}


/* Project Feed  */
.project-alt .work-item {padding:0 2em 2em;text-align:left;border-radius:4px;position:relative;border:1px solid #eee}

/* Blog Feed */
.taxonomy-category a {display:inline-block; border-radius:15px; background:#f7f9f9; padding:8px 10px}
.wp-block-post-date, .taxonomy-category {font-size:0.85em; color:#aaa}

/* Service Blocks*/
.service-blocks .wp-block-column .wp-block-group .wp-block-group__inner-container {padding:1em 0.5em !important}
.service-blocks .icon {width:40px; height:40px; border-radius:4px; display:inline-block; background:#19262d; text-align:center}
.service-blocks .icon img {width:20px; height:20px; margin:10px auto 0}
.service-blocks .wp-block-group.has-background {border-radius:4px}

	@media only screen and (max-width:800px){
		.service-blocks .wp-block-column .wp-block-group {padding:1.5em !important}
		.service-blocks .wp-block-column .wp-block-group .wp-block-group {padding:0 !important}
		.service-blocks .wp-block-column .wp-block-group .wp-block-group__inner-container {padding:0 !important}
		.featured .wp-block-media-text__content {padding:1.5em !important}
		.project-alt .work-item {padding:0 1.5em 1.5em}
		.blog-alt .wp-block-post {position: relative;padding:1.5em 1.5em 3.5em}
		.categoryRow {bottom:1em ;width:calc(100% - 3em)}
	}
	@media only screen and (min-width:1500px){
		.featured .wp-block-media-text__content {padding:5em !important}
	}






/* Process */
.process {padding-top:6vh; padding-bottom:6vh;}
.process p.has-x-large-font-size {color:#214888; padding:0; font-size:6vh !important;}

	@media only screen and (min-width:1240px){
		.process .wp-block-columns {gap:4em !important;}
		.process .wp-block-columns .wp-block-column {position:relative;}
		.process .wp-block-columns .wp-block-column:after {content:""; background:#19262D; opacity:0.06; width:1px; height:100%; position:absolute; top:0px; right:-2em;}
		.process .wp-block-columns .wp-block-column:last-of-type:after {display:none;}
	}




/*Accordion*/
.accordion {width:100%;min-height:150px;margin:1em 0;clear:both}
.accordion .data {padding:1.5em 0;display:none}
.accordion .wp-block-fseblocks-accordion-item {box-shadow:none !important; margin:0}
.accordion-item {cursor:pointer;position:relative; background:white;color:black;line-height:125%;display:block;text-decoration:none;padding:1em 2em 1em 0; margin:1px 0 0;font-weight:600;font-size:125%; border-top:1px solid #eee}
.accordion-item:after {content:"+";font-weight:400;font-size:100%; position:absolute; right:0px; top:1em; }
.accordion-item.open {font-weight:700}
.accordion-item.open:after {content:"-";}
.wp-block-fseblocks-accordion-item .accordion-item, .accordion .data {}
.wp-block-group.has-background .wp-block-fseblocks-accordion-item .accordion-item, .accordion .data {}
.accordion .data {padding-top:4px}
.accordion-item.open {background: none !important;}
.accordion .data {border: none !important;}
.accordion-item.open:after {transform: rotate(180deg) !important; margin-right: 0px !important;}

	@media only screen and (max-width:800px) {
		.accordion-item {font-size:100%; }
	}
	
	
	
	
/* Continents strip */
.continents {margin:0 !important; padding:2em 0 0; border-top:1px solid rgba(255,255,255,0.1);}
.continents h2, .continents p, .continents h6, .continents figure {padding:0; margin:0 !important;}
.continents h2 {margin-top:0.6em !important; font-size:2.5em;}
.continents .wp-block-columns {margin:0 !important;}

	@media only screen and (max-width:1024px) {
		.continents {display:none;}
	}

