/* Layout and spacing */
body:not(.home) article.page .entry-content > [class^="wp-block-"]:first-child:not(.wp-block-group):not(.heading-green-bg) {
	margin-top: 2rem;
}
.wp-block-column > ul {
  padding-left: 1rem;
}
.site-content ul li {
	margin-bottom: 0.5rem;
}
.site-content ul {
  list-style: none;
}
.site-content ul li::before {
  content: "\25CF";
  color: var(--ast-global-color-1);
  font-weight: bold;
  display: inline-block;
  width: 1em;
  margin-left: -1em;
}
p.max-width-800 {
	max-width: 860px !important;
	margin-bottom: 2rem;
}
ul.wp-block-social-links li.wp-social-link::before {
	display: none;
}

/* Desktop reverse */
@media only screen and (min-width: 782px) {
	.wp-block-columns.desktop-reverse {
		flex-direction: row-reverse;
	}
}

/* Header */
header .ast-custom-button {
    text-align: center;
}
@media only screen and (min-width: 922px) and (max-width: 1180px) {
	.ast-desktop .ast-primary-header-bar .main-header-menu > .menu-item {
	    line-height: 50px;
	}
	.ast-theme-transparent-header #masthead .site-logo-img .transparent-custom-logo img {
	    max-width: 120px;
	}
	.ast-builder-menu-1 .menu-item > .menu-link {
	    font-size: 0.75rem;
	    color: var(--ast-global-color-3);
	    letter-spacing: normal;
	}
	.ast-header-button-1[data-section*="section-hb-button-"] .ast-builder-button-wrap {
    font-size: 0.85rem;
	}
}

/* Blocks */
.has-dark-blue-background-color {
	background-color: var(--ast-global-color-0);
}
.has-white-color,
.has-white-color h2,
.has-white-color h3 {
	color: #fff;
}
.wp-block-media-text__media, .wp-block-image img, .wp-block-media-text__media img, .wp-block-embed-youtube .lyte-wrapper .lP {
    border-radius: 1rem;
}
.wp-block-image.is-square img {
	aspect-ratio: 1 / 1;
	object-fit: cover;
}

/* Typography */
h1,h2,h3,h4,h1 strong,h2 strong,h3 strong,h4 strong,.wp-block-button__link {
	font-weight: normal;
	font-variation-settings: "wght" 500;
}
.site-content li strong {
	color: var(--ast-global-color-0);
}
.edafio-tagline {
    color: #75787b;
    font-size: 1.3em;
    text-transform: uppercase;
    font-weight: 600;
    margin-bottom: 32px;
}
.heading-green-bg span,
.heading-green-bg em {
	display: block;
	margin-top: 0.2em;
	color: var(--ast-global-color-0);
	background-color: var(--ast-global-color-2);
	text-transform: none;
	font-style: italic;
	letter-spacing: 0;
	font-variation-settings: "wght" 600;
	padding: 0.1em 0.3em;
	border-radius: 0.5rem;
}
.wp-block-heading.heading-green-bg {
	transform: translatey(-1.6rem);
	margin-bottom: -1.6rem;
}
.heading-green-bg em {
	display: inline-block;
}
.wp-block-heading.heading-green-bg.tagline {
	transform: translatey(-4.2rem);
	margin-bottom: -2.4rem;
}
.site-content {
	z-index: 1;
}
.heading-green-bg span:first-of-type {
	display: inline-block;
}
.heading-green-bg.tagline span:first-of-type {
	margin-left: -5rem;
}
.heading-green-bg.tagline span:nth-of-type(2) {
	margin-right: -5rem;
}
.heading-green-bg.tagline {
	width: fit-content;
}
.blue-section .wp-block-heading.heading-green-bg {
    margin-bottom: 0;
}
.subheading {
	color: #00205b;
  	font-size: 1rem;
  	font-variation-settings: "wght" 600;
	line-height: 1.3;
	text-transform: uppercase;
}
figure + .subheading {
	margin-top: 0.5rem;
}
.blue-section-with-logo a {
	color: #fff;
	text-underline-offset: 0.2rem;
}
.blue-section-with-logo a:hover {
	color: var(--ast-global-color-2);
}
.blue-section.services-5col-cards a {
	color: #fff;
}
@media only screen and (max-width: 781px) {
	.blue-section-with-logo,
	.edafio-icon-blue-cols {
		text-align: center;
	}
	.blue-section-with-logo  .wp-block-column:first-of-type,
	.edafio-icon-blue-cols .wp-block-column:first-of-type {
		margin-bottom: 0;
	}
	.blue-section-with-logo  .wp-block-image img,
	.edafio-icon-blue-cols .wp-block-image img {
		max-width: 30%;
		height: auto !important;
		margin: 0 auto;
	}
}
@media only screen and (min-width: 992px) {
	.services-grid-block.services-4-col .row{
		grid-template-columns: repeat(4, 1fr);
	}
}

/* Alignfull children padding */
.wp-block-group.alignfull.is-layout-constrained > *:not(.alignfull) {
	max-width: 1140px;
	padding-left: 20px;
	padding-right: 20px;
}


/* Buttons */
.wp-block-button .wp-block-button__link {
	border-radius: 10px;
}
.has-dark-blue-gradient-background .wp-block-button__link,
.has-ast-global-color-0-background-color .wp-block-button__link,
.site-footer .wp-block-button__link {
	background: var(--ast-global-color-2);
	color: var(--ast-global-color-0);
}
.has-dark-blue-gradient-background .wp-block-button__link:hover,
.has-ast-global-color-0-background-color .wp-block-button__link:hover,
.wp-block-button .wp-block-button__link.has-ast-global-color-2-background-color:hover,
.site-footer .wp-block-button__link:hover {
	background: var(--ast-global-color-1);
	color: var(--ast-global-color-0);
}

/* Home */
@media (max-width: 781px) {
	.home-services .wp-block-columns.is-layout-flex {
		gap: 16px 24px;
		display: grid;
    grid-template-columns: 1fr 1fr;
	}
	.home-services .wp-block-columns:not(.is-not-stacked-on-mobile)>.wp-block-column {
		margin-bottom: 0;
	}
}
@media (min-width: 782px) {
	.home-hero.wp-block-cover {
		min-height: calc(4vw + 550px);
	}
}
@media (min-width: 1024px) {
	.home-hero.wp-block-cover {
		min-height: calc(4vw + 600px);
	}
}
.wp-block-cover.home-hero {
	background: var(--wp--preset--gradient--dark-blue);
}
.wp-block-cover.home-hero h1 {
	text-transform: none;
	margin-bottom: 0;
}
@media (max-width: 781px) {
	.wp-block-cover.home-hero {
		padding: 5rem 1rem 4rem;
		align-items: flex-end;
	}
	.wp-block-cover.home-hero h1 {
		font-size: 1.2rem;
		margin-bottom: 0.5rem;
		line-height: 1.2;
	}
	.home-hero .wp-block-buttons {
		margin-top: 0;
	}
	.wp-block-heading.heading-green-bg.tagline {
	    transform: translatey(-1.8rem);
	    margin-bottom: 0;
	}
	.heading-green-bg.tagline span:nth-of-type(2) {
    	margin-right: -3rem;
	}
}
@media only screen and (min-width: 782px) {
	.wp-block-cover.home-hero {
		padding-top: 8rem;
		padding-bottom: 4rem;
	}
	.wp-block-cover.home-hero h1 {
		font-size: calc(1rem + 1.5vw);
	}
}
@media only screen and (min-width: 1450px) {
	.wp-block-cover.home-hero h1 {
		font-size: 2.4rem;
	}
}

/* Page titles */
.ast-single-entry-banner h1.entry-title {
	margin-top: 4rem;
	font-weight: normal;
	font-variation-settings: "wght" 500;
}
.ast-single-entry-banner {
	border-bottom: 5px solid var(--ast-global-color-2)
}
.ast-single-entry-banner[data-post-type="page"] .ast-container > *:not(:last-child) {
	margin-bottom: 0.5rem;
}
.no-thumbnail .ast-single-entry-banner[data-post-type="page"] {
	background: linear-gradient(180deg, rgba(0,32,91,0.8) 20%, rgba(0,22,62,0.85) 55%, rgba(0,32,91,0.75) 90%), url('../images/edafio-page-title-default2.jpg') center center no-repeat;
	background-size: cover;
}
.ast-single-entry-banner[data-post-type="page"] .ast-container a.wp-block-button__link {
	padding: 0.5rem 1rem;
	/*box-shadow:inset 0 -1px 0 var(--ast-global-color-2);*/
	color: var(--ast-global-color-0);
	background: var(--ast-global-color-2);
}
.ast-single-entry-banner[data-post-type="page"] .page-title-cta a:hover {
    color: var(--ast-global-color-0);
}
@media (max-width: 544px) {
	.ast-single-entry-banner[data-post-type="page"] .ast-breadcrumbs .trail-items span {
		font-size: 13px;
	}
	.ast-single-entry-banner .ast-container {
		padding-left: 0.5rem;
		padding-right: 0.5rem;
	}
}

/* Footer */
#block-52 {
	margin: 0;
}
#block-52 figure {
	max-width: 200px;
}
#block-54 h3 {
	padding-top: 0.5rem;
}
footer section.widget {
  margin-bottom: 1rem;
}
footer .widget-title,
footer .widget .wp-block-heading {
	margin-bottom: 1rem;
	line-height: 1.3;
	color: #fff;
}
footer li {
	margin: 0.5rem 0;
}
.site-primary-footer-wrap a {
	color: #fff;
	padding: 0.5rem 0;
}
#colophon .site-primary-footer-wrap {
	background: linear-gradient(127deg, rgba(0,32,91,1) 0%, rgba(77,109,168,1) 57%, rgba(0,32,91,1) 100%);
	color: #fff;
}
.site-footer-section-4 {
	background: #00205b99;
	padding: 1rem;
	border-radius: 8px;
}
.site-footer-section-4 h3 {
	font-size: 1.5rem;
}
.site-footer-section-4 h3 span {
	margin-left: -1.2rem;
}
.site-footer-section-4 h3 span:nth-of-type(2) {
	display: inline-block;
	margin-left: 1rem;
}
.site-footer-section-4 p {
	font-size: 0.91rem;
	line-height: 1.4;
	padding-left: 1rem
}
@media only screen and (min-width: 545px) and (max-width: 999px) {
	.site-footer .ast-builder-grid-row-container.ast-builder-grid-row-tablet-4-equal .ast-builder-grid-row {
		grid-template-columns: repeat( 2,1fr );
	}
}
@media only screen and (min-width: 992px) {
	footer .ast-builder-grid-row-4-equal .ast-builder-grid-row {
			grid-template-columns: 3fr 2fr 2fr 4fr;
	}
}

/* Footer Awards Area */
.footer_awards {
    padding: 1rem;
    background: rgb(246, 246, 246);
	border-top: 1px solid #ddd;
}
.footer_awards ul {
    display: flex;
    justify-content: space-around;
    align-items: center;
    list-style-type: none;
	margin: 0;
	padding-left: 0;
}
.footer_awards ul li:before {
	content: '';
	display: none;
}

.footer_awards figure {
    padding: 15px 2vw;
}

.footer_awards img {
    max-height: 150px;
    width: auto;
}
@media (max-width: 599px) {
  .footer_awards ul {
     flex-wrap: wrap;
  }
}

/* Services pages */
.blue-section,
.blue-section h2,
.blue-section h3 {
    color: #fff;
}
.blue-section .services-detail-cols .wp-block-column {
		background: #ffffff20;
		padding: 0.6rem;
		text-align: center;
		border-radius: 1rem;
}
.services-detail-cols h3 {
    font-size: 1rem;
    text-transform: uppercase;
    min-height: 2rem;
    display: flex;
    justify-content: center;
    align-items: center;
}
.blue-section .services-detail-cols p {
    font-size: 0.9rem;
    color: #fff;
}
.services-detail-cols .wp-block-separator {
	margin-top: 0.4rem !important;
}
@media only screen and (min-width: 768px) and (max-width: 1300px) {
.wp-block-columns.is-layout-flex.wp-block-columns.services-detail-cols {
	flex-wrap: wrap !important;
}
.services-detail-cols .wp-block-column {
	min-width: 280px;
}
}
.entry-content h3.wp-block-heading a {
    text-underline-offset: 0.2em;
    text-decoration-thickness: 0.06em !important;
}

/* Post loop blocks */
.archive main ul.card-list, .site-main ul.card-list {
    margin: 0 auto;
    padding-left: 0;
}

.site-main .card-list li {
    list-style-type: none;
    transition: all .2s ease-in-out;
}
.site-main .card-list li:before {
	content: '';
	display: none;
}
@media (hover: hover) {
	.site-main ul.card-list li:hover {
			/* transform: translateY(-0.5rem); */
			transform: scale(1.04);
	}
	.site-main ul.card-list li:hover .post-card {
		box-shadow: 0 0.4rem 0.75rem rgba(0,0,0,.25);
	}
}
.site-main .post-card {
    height: 100%;
    box-shadow: 0 0.3rem 0.6rem rgba(0,0,0,.15);
    background: #efefef;
	background: linear-gradient(180deg, #efefef00 5%, #efefef 5%);
    border: 0;
    border-bottom: 0.5rem solid var(--ast-global-color-1);
    border-radius: 1rem 1rem 0.5rem 0.5rem;
    transition: all .2s ease-in-out;
}
.site-main .post-card a {
    text-decoration: none;
	text-align: center;
}
.card-img, .card-img-top {
    border-top-left-radius: 6px;
    border-top-right-radius: 6px;
}
.card-img-top {
	aspect-ratio: 7 / 5;
	object-fit: cover;
}
.card-body {
	padding: 0.8rem;
}
h3.card-title {
	font-size: 1rem;
  letter-spacing: 0.05em;
	margin-bottom: 0;
}
.row.row-cols-2 {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 1rem;
}

@media (min-width: 576px) {
	.row.row-cols-sm-2 {
		display: grid;
		grid-template-columns: repeat(2, 1fr);
		gap: 1.5rem;
	}
	.row.row-cols-sm-3 {
		display: grid;
		grid-template-columns: repeat(3, 1fr);
		gap: 1.5rem;
	}
}
@media (min-width: 992px) {
	.row.row-cols-md-3 {
		display: grid;
		grid-template-columns: repeat(3, 1fr);
		gap: 2rem;
	}
	.row.row-cols-md-4 {
		display: grid;
		grid-template-columns: repeat(4, 1fr);
		gap: 2rem;
	}
	.row.row-cols-md-5 {
		display: grid;
		grid-template-columns: repeat(5, 1fr);
		gap: 1.5rem;
	}
}

/* Awards grid block */
.wp-block-group .awards-grid-block {
	padding: 0;
	background: none;
	border-top: none;
}

/* Services grid block */
.services-grid-block img {
	max-width: 150px;
}
.services-grid-block .post-card {
	text-align: center;
	background: #f5f5f5;
	background: linear-gradient(180deg, #fafafa 0%, #efefef 100%);
	border-color: var(--ast-global-color-0);
}
.wp-block-group.has-dark-blue-gradient-background .services-grid-block .post-card {
	border-color: var(--ast-global-color-1);
}
.services-grid-block .post-card a:hover {
	color: var(--ast-global-color-0);
}
.services-grid-block .card-title {
	margin-bottom: 1.2rem;
	text-transform: uppercase;
	font-weight: 700;
	padding: 0 1rem;
}
.services-grid-block a .card-title:after{
	content: '\00BB';
	display: inline;
	margin-left: 0.3rem;
	font-size: 1.2rem;
	transition: all .2s ease-in-out;
}
.services-grid-block a:hover .card-title:after{
	margin-left: 0.5rem;
}
.services-grid-block p {
	font-size: 0.9rem;
	line-height: 1.4;
	text-decoration: none;
	padding: 0 1rem;
}
.services-grid-block a.service-learn-more {
	display: block;
	margin-bottom: 1rem;
	text-decoration: underline;
	text-transform: uppercase;
	text-underline-offset: 0.15em;
}
.services-grid-block img[src$=svg] {
	padding: 12px;
}

/* Additional block pattern styles */
.alternating-cols-section h3 {
	font-size: 1.2rem;
}
@media (max-width: 767px) {
	.wp-block-group.alternating-cols-list > .wp-block-columns:nth-of-type(2) {
	    margin-top: 0;
	}
}
@media (min-width: 768px) {
	.alternating-cols-section h3 {
		font-size: 1.4rem;
	}
}
@media (min-width: 782px) {
	.alternating-cols-list h3 {
		font-size: 1.25rem;
	}
}
@media (min-width: 922px) {
	.alternating-cols-list h3 {
		font-size: 1.4rem;
	}
}
.blue-quote-col {
	border-radius: 1.5rem;
	padding-top: 1.5rem;
	padding-bottom: 1.5rem;
	
}
.blue-quote-col blockquote {
	padding-top: 0.5rem;
	padding-bottom: 0.5rem;;
	line-height: 1.2;
}
.blue-quote-col p {
	margin-bottom: 0;
}
.blue-quote-col strong,
.blue-quote-col li strong {
	color: var(--ast-global-color-2);
}
.blue-quote-col .wp-block-quote:not(.has-text-align-right):not(.has-text-align-center) {
    border-left: 5px solid var(--ast-global-color-2);;
}
.blue-quote-col cite {
	font-size: 1rem;
	margin-left: 0.5rem;
	color: #e9e9e9;
	margin-top: 0.5rem;
	display: inline-block;
}
.blue-quote-col a {
	color: #fff;
}
.blue-quote-col p:not(:first-of-type) {
	margin-top: 1rem;
	margin-bottom: 0.8rem;
}
.small-cite cite {
	font-size: 0.75rem;
}
.wp-block-media-text.has-media-on-the-right.blue-quote-col figure {
	border-radius: 0 1.5rem 1.5rem 0;
}
.core-values-section img {
	margin-bottom: 1rem;
}
.nobr {
	white-space: nowrap;
}
@media (min-width: 922px) {
	.two-col-list {
		gap: 0 calc(1.5rem + 1vw);
		column-count: 2;
	}
}

/* Numbers used as icons (steps) */
.iconic-number p, p.iconic-number {
    display: inline-block;
    color: #ffffff;
    background-color: #00205B;
    padding: 50px 48px;
    border-radius: 50%;
    font-size: 4rem;
    font-weight: 700;
    text-align: center;
}

/* FAQ blocks */
.schema-faq-section {
	background: linear-gradient(180deg,rgb(0,32,91) 0%,rgb(34,62,119) 100%);
  border-left: 1rem solid var(--ast-global-color-2);
  border-radius: 1rem;
	padding: 1.2rem 1rem;
	margin-bottom: 1.2rem;
	box-shadow: 0 3px 10px #0000004A
}
.schema-faq-section h3 {
	color: #fff;
	letter-spacing: normal;
	font-size: 1.3rem;
	font-weight: 700;
}
.schema-faq-section p {
	margin-bottom: 0;
	color: #efefef;
}
.schema-faq-section a {
	color: var(--ast-global-color-2);
}

/* Lyte */
.wp-block-embed > .lyte-wrapper {
	margin: 0 !important;
}

/* Blog */
.single-post h1.entry-title {
    margin-top: 0;
}
.ast-archive-entry-banner {
    border-bottom: 5px solid var(--ast-global-color-2);
}
.single-post #primary {
	margin-top: 2.5rem;
}
#secondary {
	margin-top: 2.5rem;
}
#secondary h2.widget-title {
	font-size: 1.3rem;
	line-height: 1.2;
}
#secondary .widget {
	margin-bottom: 2rem;
}
@media only screen and (min-width: 768px) {
	.blog article .post-content {
		display: grid;
		grid-template-columns: 1fr 1fr;
		grid-template-rows: auto min-content;
		gap: 0.5rem 1.5rem;
	}
	.blog article .post-thumb {
		grid-row-start: 1;
  	grid-row-end: span 2;
	}
}

/* Timeline styles */
.timeline-cols {
	position: relative;
}
.timeline-cols:after {
	content: '';
	position: absolute;
	border-left: 2px solid var(--ast-global-color-7);
	height: 95%;
	top: 0;
	left: 50%;
}
.timeline-cols h3 {
	text-align: center;
	font-size: 1.1rem;
	text-transform: uppercase;
	background: var(--ast-global-color-0);
	color: var(--ast-global-color-4);
	border-radius: 0.8rem;
	padding: 0.5rem 0.8rem 0.25rem;
	height: fit-content;
	border-bottom: 4px solid var(--ast-global-color-2);
	box-shadow: 0 3px 6px rgba(0,0,0,0.3);
	z-index: 1;
	position: relative;
}
.timeline-cols p {
	text-align: center;
	background: #ffffffbb;
	z-index: 1;
	position: relative;
}
.timeline-cols strong {
	color: var(--ast-global-color-0); 
}
@media only screen and (min-width: 545px) {
	.timeline-cols {
		display: grid;
		grid-template-columns: 2fr 3fr;
		gap: 3rem 2rem;
		margin: 3rem 0;
		justify-content: center;
		align-items: center;
	}
	.timeline-cols:after {
		top: 8%;
		height: 85%;
		left: 20.8%;
		border-left: 2px solid var(--ast-global-color-1);
	}
	.timeline-cols h3 {
		font-size: 1.3rem;
		display: inline-block;
		margin: 0;
	}
	.timeline-cols p {
		text-align: left;
		width: 100%;
		margin-bottom: 0;
	}
}

/* Team Loop Block */
ul.card-list {
	list-style-type: none;
}
img.team-headshot {
	object-fit: cover;
	aspect-ratio: 5 / 7;
	border-radius: 6px 6px 0 0;
}
.team-loop-block .card-body {
	text-align: center;
}
.team-loop-block h3 {
	text-transform: uppercase;
	font-size: 1.1rem;
}
.team-loop-block p {
	margin-bottom: 0;
	font-size: 0.9rem;
}
.site-main .team-loop-block .card-list li:hover {
	transform: none;
}
.team-loop-block .team-social-item {
	background: var(--ast-global-color-0);
	padding: 0.2rem;
	border-radius: 6px;
	border: none;
}
.team-loop-block svg {
	fill: var(--ast-global-color-2);
	width: 18px;
	height: 18px;
}
@media (max-width: 575px) {
	ul.card-list li {
		margin-bottom: 2rem;
	}
}
@media (min-width: 768px) {
	.team-loop-block .row.row-cols-md-3 {
		gap: calc(2rem + 2vw);
	}
}

/* Downloads Loop Block */
.downloads-loop-block .pdf-thumbnail.wp-post-image {
    object-fit: cover;
    aspect-ratio: 8.5 / 11;
}

/* Awards page */
.awards-grid-block.awards-large-grid img {
    min-width: 80px;
    width: auto;
    max-width: 120px;
    height: auto;
    max-height: 300px;
    margin: calc(1rem + 1vw);
}
@media screen and (min-width: 545px) {
	.awards-grid-block.awards-large-grid img {
	    min-width: 120px;
	    max-width: 220px;
	}
	.awards-grid-block.awards-large-grid ul {
		flex-wrap: wrap;
	}
}

/* Contact */
.page-id-15405 .wp-block-button.page-title-cta {
	display: none;
}

/* Events */
.post-type-archive-tribe_events .site-content ul li::before {
	display: none;
}
.tribe-common--breakpoint-medium.tribe-events .tribe-events-l-container {
    padding-top: 2rem;
}
.tribe-common .tribe-common-h5, .tribe-common .tribe-common-h6 {
    color: var(--ast-global-color-0);
}
.single-tribe_events .tribe-blocks-editor .tribe-events-single-event-title {
	font-size: 2.2rem;
	line-height: 1.2;
}

/* support */
.tech-emergency {
	border-radius: 1rem;
}

/* Industries pages */
.industries-cols .wp-block-column {
	padding-bottom: 1.5rem;
	border-radius: 1rem;
	box-shadow: 0 5px 8px #00000019 
}
.industries-cols .wp-block-column > *:not(.wp-block-image) {
	padding: 0 1rem;
}
.industries-cols .wp-block-column .wp-block-image img {
	border-radius: 1rem 1rem 0 0;
}
.industries-cols p > mark.has-inline-color {
	padding: 0.25rem;
}
.industry-cols sup {
	padding: 0 0.15rem;
}
.footnotes-block {
	border-top: 1px solid #AAA;
	padding-top: 1rem;
}
.industries-cols.wp-block-columns {
	margin-bottom: 3rem;
}

