@charset "utf-8";
/* ==========================================================================
   ICON Consulting Blocks — design bridge.

   The design stylesheet (my-icon-project.css) was written for the classic
   markup of the previous theme. The page body, the header and the footer are
   now core blocks, so this file does two jobs and nothing else:

     1. gives the block markup the same class names the design expects, and
     2. neutralises the core block defaults that would otherwise move the
        design (list resets, flex navigation, block gaps, figure margins).

   Colour, type, spacing and every hover state still come from
   my-icon-project.css. Nothing in this file sets a design value that the
   design stylesheet does not already set.
   ========================================================================== */

/* --------------------------------------------------------------------------
   1. Page wrappers
   -------------------------------------------------------------------------- */
.wp-block-group.site-wrap,
.wp-block-group.site-middle,
.wp-block-group.site-header,
.wp-block-group.site-header-inner,
.wp-block-group.site-hero {
	float: left;
	width: 100%;
}

/* Core gives every group a block gap. The design does its own spacing. */
#wrap > *,
#middle > *,
#header > *,
#header2 > *,
#footer > *,
.inner_sec > *,
.welcome_sec > *,
.what-we-do > *,
.recent-pro-sec > *,
.testimonial > * {
	margin-block-start: 0;
	margin-block-end: 0;
}

.wp-block-group.container {
	float: none;
	max-width: 1250px;
}

.wp-block-group.inner_sec {
	float: left;
	width: 100%;
}

/* --------------------------------------------------------------------------
   2. Header navigation
   -------------------------------------------------------------------------- */
#header .wp-block-group.logo,
#header2 .wp-block-group.logo,
#header .wp-block-group.top-right,
#header2 .wp-block-group.top-right,
#header .wp-block-group.menu_box,
#header2 .wp-block-group.menu_box {
	float: left;
	width: auto;
}

.wp-block-group.menu_box {
	float: right;
	width: auto;
}

#header .wp-block-navigation,
#header2 .wp-block-navigation,
.menu_box .wp-block-navigation {
	float: right;
	width: auto;
}

.menu_box .wp-block-navigation__container {
	float: right;
	display: block;
	width: auto;
	margin: 0;
	padding: 0;
	gap: 0;
	list-style: none;
}

.menu_box .wp-block-navigation__container > li.wp-block-navigation-item {
	display: inline-block;
	width: auto;
	padding: 0;
	margin: 0 25px;
	position: relative;
}

.menu_box .wp-block-navigation__container > li.wp-block-navigation-item:last-child {
	margin-right: 0;
}

.menu_box ul li a,
.menu_box .wp-block-navigation-item__content.wp-block-navigation-item__content {
	display: inline-block;
	padding: 10px 0;
	font-size: 16px;
	font-weight: 400;
	text-transform: uppercase;
	text-decoration: none;
	border-bottom: 3px solid transparent;
	transition: 0.3s ease-in-out;
}

#header .menu_box ul li a,
#header .menu_box .wp-block-navigation-item__content.wp-block-navigation-item__content {
	color: #FFFFFF;
}

#header2 .menu_box ul li a,
#header2 .menu_box .wp-block-navigation-item__content.wp-block-navigation-item__content {
	color: #525252;
}

#header .menu_box ul li a:hover,
#header .menu_box li.wp-block-navigation-item:hover > a,
#header2 .menu_box ul li a:hover,
#header2 .menu_box li.wp-block-navigation-item:hover > a {
	text-decoration: none;
}

#header .menu_box li.wp-block-navigation-item:hover > a {
	border-bottom: 3px solid #FFFFFF;
	color: #FFFFFF !important;
}

#header2 .menu_box li.wp-block-navigation-item:hover > a {
	border-bottom: 3px solid #0054a7;
	color: #0054a7 !important;
}

#header .menu_box li.current-menu-item > a,
#header .menu_box li.current_page_item > a {
	border-bottom: 3px solid #FFFFFF;
}

#header2 .menu_box li.current-menu-item > a,
#header2 .menu_box li.current_page_item > a {
	border-bottom: 3px solid #0054a7;
	color: #0054a7;
}

/* Core submenu markup, shaped like the design's dropdown. */
.menu_box .wp-block-navigation__submenu-container {
	display: none;
	width: 300px;
	background: #003d86;
	position: absolute;
	top: 100%;
	left: 0;
	z-index: 2;
	padding: 0;
	border: 0;
	border-radius: 0;
}

.menu_box li.wp-block-navigation-item:hover > .wp-block-navigation__submenu-container {
	display: block;
}

.menu_box .wp-block-navigation__submenu-container li.wp-block-navigation-item {
	display: block;
	width: 100%;
	margin: 0;
	text-align: left;
}

.menu_box .wp-block-navigation__submenu-container li.wp-block-navigation-item a {
	display: block;
	padding: 9px 23px;
	background: #003d86;
	font-size: 16px;
	color: #FFFFFF;
	text-align: left;
	text-transform: uppercase;
	border-bottom: 0;
}

.menu_box .wp-block-navigation__submenu-container li.wp-block-navigation-item a:hover {
	background: #ce1225;
	color: #FFFFFF;
}

.menu_box .wp-block-navigation__submenu-icon {
	display: none;
}

/* Bootstrap prints the hamburger; the design hides the top menu on small
   screens and the Responsive Menu plugin takes over. */
@media (max-width: 767px) {
	#header .top-right,
	#header2 .top-right {
		display: none;
	}
}

/* --------------------------------------------------------------------------
   3. Front-page sections
   -------------------------------------------------------------------------- */

/* The hero shortcode block must not be wrapped in a paragraph. */
#slider .wp-block-shortcode {
	float: left;
	width: 100%;
}

/* The rev-slider shortcode prints its own markup; nothing to bridge. */
#slider .wp-block-html .shape {
	position: absolute;
	left: 0;
	bottom: 0;
	width: 100%;
	z-index: 2;
	line-height: 0;
}

/* Welcome */
.welcome_sec .wp-block-group.left-sec,
.welcome_sec .wp-block-group.right-pic {
	float: left;
	width: 100%;
}

.welcome_sec .left-sec .wp-block-heading {
	float: none;
}

.welcome_sec .left-sec .wp-block-button {
	margin: 12px 0 10px 0;
}

.welcome_sec .left-sec .wp-block-button.learn-more .wp-block-button__link {
	display: inline-block;
	padding: 14px 47px;
	background-color: transparent;
	border: 1px solid #3661ad;
	border-radius: 6px;
	font-size: 16px;
	color: #3661ad;
	font-weight: 700;
	text-align: center;
	text-decoration: none;
	text-transform: uppercase;
	transition: all 0.3s ease-in-out;
}

.welcome_sec .left-sec .wp-block-button.learn-more .wp-block-button__link:hover {
	background-color: #3661ad;
	border: 1px solid transparent;
	color: #FFFFFF;
}

.welcome_sec .right-pic .wp-block-image {
	margin: 0;
}

.welcome_sec .right-pic .wp-block-image img {
	max-width: 100%;
}

/* What We Do */
.what-we-do .wp-block-group.thumbnail {
	float: left;
	width: 100%;
	position: relative;
	padding: 0;
	margin-top: 50px;
	margin-bottom: 0;
	line-height: 1.42857143;
	background-color: transparent;
	border: 0;
	border-radius: 0;
}

.what-we-do .thumbnail .wp-block-group.thumb {
	float: left;
	width: 100%;
	padding-bottom: 20px;
	text-align: center;
}

.what-we-do .thumbnail .wp-block-group.caption {
	display: inline-block;
	width: 100%;
	padding: 15px 0;
	text-align: center;
}

.what-we-do .thumbnail .caption .wp-block-heading {
	float: none;
	height: 80px;
	margin: 0;
	padding: 0 0 15px 0;
}

/* Recent Projects — the query loop replaces the old hand-written loop. */
.recent-pro-sec .wp-block-group.projects-row {
	padding-top: 50px;
	padding-bottom: 50px;
	margin: 0 -4px;
}

.recent-pro-sec .projects-row .wp-block-post-template {
	float: left;
	width: 100%;
	margin: 0;
	padding: 0;
	list-style: none;
	max-width: 100%;
}

.recent-pro-sec .projects-row .wp-block-post-template > li.wp-block-post {
	float: left;
	position: relative;
	list-style: none;
	margin: 0;
}

.recent-pro-sec .projects-row .thumb-box {
	float: left;
	width: 100%;
	position: relative;
	overflow: hidden;
}

.recent-pro-sec .projects-row .thumb-box .desc {
	position: absolute;
	width: 100%;
	height: 100%;
	z-index: 1;
	cursor: pointer;
}

.recent-pro-sec .projects-row .thumb-box .desc .title {
	float: none;
	margin: 0;
	padding: 0 10px;
	top: 50%;
	transform: translateY(-50%);
	font-size: 20px;
	color: #FFFFFF;
	font-weight: 400;
	text-transform: uppercase;
	text-align: center;
}

.recent-pro-sec .projects-row .wp-block-post-featured-image {
	margin: 0;
	float: left;
	width: 100%;
	line-height: 0;
}

.recent-pro-sec .projects-row .thumb-box img {
	width: 100%;
	height: auto;
}

.recent-pro-sec .projects-row .thumb-box:hover img {
	transform: scale(1.15);
}

.recent-pro-sec .projects-row .thumb-box:hover .desc {
	background-color: rgba(54, 97, 173, 0.9);
	transition: all 0.3s ease-in-out;
}

.recent-pro-sec .projects-row .desc a,
.recent-pro-sec .projects-row .desc .fancybox-pop {
	display: block;
	width: 160px;
	padding: 5px 20px;
	margin: 0 auto;
	margin-top: 15px;
	border: 1px solid #FFFFFF;
	border-radius: 6px;
	font-size: 16px;
	color: #FFFFFF;
	line-height: 30px;
	opacity: 0;
}

.recent-pro-sec .projects-row .desc:hover a {
	opacity: 1;
}

/* The card title is a post title block; it must not inherit heading margins. */
.recent-pro-sec .projects-row .wp-block-post-title {
	float: none;
	margin: 0;
	padding: 0;
	font-size: 20px;
	line-height: 30px;
}

/* Testimonials */
.testimonial .slider .wp-block-post-template.testimonial-row {
	float: left;
	width: 100%;
	margin: 0;
	padding: 0;
	list-style: none;
	max-width: 100%;
	display: flex;
	flex-wrap: wrap;
}

.testimonial .slider .testimonial-row > li.wp-block-post {
	float: left;
	list-style: none;
	margin: 0;
	padding: 0;
}

.testimonial .slider .testimonial-row .wp-block-group.col-xs-12 {
	float: left;
	width: 100%;
	padding-left: 15px;
	padding-right: 15px;
}

.testimonial .slider .testimonial-row .wp-block-post-title {
	float: none;
	margin: 0;
	padding: 0;
}

.testimonial .slider .testimonial-row .wp-block-post-excerpt__excerpt {
	margin: 0;
	padding: 0;
}

/* .wp-block-post-content is display:flow-root in core. Next to the full-width
   floated .top-row the BFC computes to zero width, so give it an explicit
   width and clear the float. */
.testimonial .slider .testimonial-row .wp-block-post-content {
	float: none;
	clear: both;
	width: 100%;
}

@media (min-width: 768px) {
	.testimonial .slider .testimonial-row > li.wp-block-post {
		width: 50%;
	}
}

/* --------------------------------------------------------------------------
   4. Inner pages
   -------------------------------------------------------------------------- */

/* The design colours the bold half of a section heading with a <b>. The block
   editor normalises that to <strong>, so both tags get the same colour. */
.welcome_sec .left-sec h1 b,
.welcome_sec .left-sec h1 strong {
	color: #3661ad;
	font-weight: 700;
	text-transform: uppercase;
}

.what-we-do h1 b,
.what-we-do h1 strong,
.recent-pro-sec h1 b,
.recent-pro-sec h1 strong,
.testimonial h1 b,
.testimonial h1 strong {
	font-weight: 700;
}

.recent-pro-sec h1 b,
.recent-pro-sec h1 strong,
.testimonial h1 b,
.testimonial h1 strong {
	color: #255dbf;
}

/* The portfolio tile is a group carrying the design's `figure` class holder,
   so the figure rules in portoilio.css keep applying whatever tag the editor
   saves it as. */
.portfolio-section .isotopeSelector > .portfolio-tile {
	float: left;
	width: 100%;
	height: 100%;
	position: relative;
	margin-bottom: 0;
	overflow: hidden;
}

.portfolio-section .isotopeSelector > .portfolio-tile .overlay-background {
	background-color: #3661ad;
	background-color: rgba(54, 97, 173, 0.9);
	position: absolute;
	top: 0;
	left: 0;
	z-index: 1;
	width: 100%;
	height: 100%;
	opacity: 0;
	visibility: hidden;
	transition: all 0.2s ease-in-out;
}

.portfolio-section .isotopeSelector > .portfolio-tile .overlay-background .inner {
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	top: 0;
	margin: 11px;
	background-color: transparent;
}

.portfolio-section .isotopeSelector > .portfolio-tile .overlay {
	z-index: 2;
	transition: all 0.2s ease-in-out;
	position: absolute;
	top: 0;
	left: 0;
	opacity: 1;
	visibility: visible;
	width: 100%;
	height: 100%;
}

.portfolio-section .isotopeSelector > .portfolio-tile .inner-overlay {
	display: table;
	width: 100%;
	height: 100%;
}

.portfolio-section .isotopeSelector > .portfolio-tile .inner-overlay-content {
	display: table-cell;
	vertical-align: middle;
	width: 100%;
	padding: 20px 40px;
}

.portfolio-section .isotopeSelector > .portfolio-tile .inner-overlay-content.with-icons {
	text-align: center;
}

.portfolio-section .isotopeSelector > .portfolio-tile .desc {
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
	width: 100%;
	z-index: 1;
}

.portfolio-section .isotopeSelector > .portfolio-tile .desc .title {
	display: inline-block;
	width: 100%;
	padding: 0 10px 15px 10px;
	font-size: 20px;
	color: #FFFFFF;
	font-weight: 400;
	text-align: center;
	text-transform: uppercase;
}

.portfolio-section .isotopeSelector > .portfolio-tile .desc .wp-block-post-title {
	float: none;
	margin: 0;
	padding: 0 10px 15px 10px;
	font-size: 20px;
	color: #FFFFFF;
	font-weight: 400;
	text-align: center;
	text-transform: uppercase;
}

.portfolio-section .isotopeSelector > .portfolio-tile .desc a,
.portfolio-section .isotopeSelector > .portfolio-tile .desc .wp-block-read-more {
	display: inline-block;
	padding: 5px 20px;
	font-size: 16px;
	color: #FFFFFF;
	border: 1px solid #FFFFFF;
	border-radius: 6px;
	opacity: 0;
	text-align: center;
}

.portfolio-section .isotopeSelector > .portfolio-tile:hover .overlay-background {
	opacity: 0.8;
	visibility: visible;
}

.portfolio-section .isotopeSelector > .portfolio-tile:hover .overlay {
	opacity: 1;
	visibility: visible;
	cursor: pointer;
}

.portfolio-section .isotopeSelector > .portfolio-tile:hover .desc a {
	opacity: 1;
}

.inner_banner .wp-block-group.hdr_row {
	float: left;
	width: 100%;
	padding: 40px 0;
}

.inner_banner .hdr_row .wp-block-post-title {
	margin: 0 0 20px 0;
	font-size: 40px;
	color: #FFFFFF;
	font-weight: 400;
	line-height: 45px;
	text-align: center;
}

.inner_banner .hdr_row .wp-block-post-excerpt {
	margin: 0;
	text-align: center;
}

.inner_banner .hdr_row .wp-block-post-excerpt p {
	margin: 0;
	font-size: 18px;
	color: #FFFFFF;
	font-weight: 400;
	line-height: 30px;
	text-align: center;
}

/* Classic editor content that the client writes in a classic block or that
   arrives from the old editor still needs the design's block spacing. */
.inner_sec .wp-block-heading {
	margin: 0 0 20px 0;
}

/* --------------------------------------------------------------------------
   5. Blog, archive and search
   -------------------------------------------------------------------------- */
.blog_sec .wp-block-post-template {
	list-style: none;
	margin: 0;
	padding: 0;
}

.blog_sec .wp-block-post-template > li.wp-block-post {
	float: left;
	width: 100%;
	margin: 0 0 30px 0;
	padding: 0;
	list-style: none;
}

.blog_sec .wp-block-post-title {
	margin: 0 0 10px 0;
	font-size: 24px;
	line-height: 32px;
}

.blog_sec .wp-block-post-featured-image {
	margin: 0 0 15px 0;
}

.blog_sec .wp-block-post-excerpt__excerpt {
	margin: 0 0 10px 0;
}

/* --------------------------------------------------------------------------
   6. Footer
   -------------------------------------------------------------------------- */
#footer .wp-block-group.ftr-cnt,
#footer .wp-block-group.ftr-contact,
#footer .wp-block-group.copy {
	float: left;
	width: 100%;
}

/* The design centres the footer logo by making its holder inline-block; the
   holder must not be stretched to full width. */
#footer .wp-block-group.ftr-logo {
	float: none;
	width: auto;
}

#footer .ftr-logo .wp-block-image {
	margin: 0;
}

/* --------------------------------------------------------------------------
   7. Last: the editor needs the same neutralising inside the canvas.
   -------------------------------------------------------------------------- */
.editor-styles-wrapper .wp-block {
	max-width: none;
}
