/**
Theme Name: Digital Émigré Child Theme
Author: Matt Bonacini
Author URI: https://takeoff.design/
Description: Digital Émigré Child Theme
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: digital-emigre-child-theme
Template: astra
*/
/* HTML */
html {
  scroll-behavior: smooth;
}

/* Fonts */
/* Edit for single page main title font */
body:not(.home) .entry-content h1,
body.ast-single-post .entry-title,
#de_custom_page_header h1,
.archive h1.page-title.ast-archive-title {
  font-size: 2.66666rem;
  font-weight: 700;
}

.archive h1.page-title.ast-archive-title {
  color: #505050;
}

body .entry-content a:hover {
  text-decoration: underline;
}

/* Variables */
:root {
  --de-light-color: #F5F3F5;
  --first-cta-color: #30dae2;
  --first-cta-hover-color: #3aeef8;
  --main-gradient-background: linear-gradient(30deg, rgb(33 166 173) 39%, rgb(42 158 133) 100%);
}

/* Colors */
body .wp-block-button.is-style-outline .wp-block-button__link {
  color: var(--first-cta-color);
  border-color: var(--first-cta-color);
  -webkit-transition: color 0.3s ease, border-color 0.3s ease;
  -o-transition: color 0.3s ease, border-color 0.3s ease;
  transition: color 0.3s ease, border-color 0.3s ease;
}

body .de_contrast_section {
  background: var(--main-gradient-background);
}

body .de_contrast_section>.wp-block-group__inner-container * {
  color: var(--de-light-color);
}

body .de_contrast_section .wp-block-button.is-style-outline .wp-block-button__link,
.de_lead_magnet_section .mc4wp-form input[type="submit"] {
  color: #21a6ad;
}

body .de_contrast_section .wp-block-button.is-style-outline .wp-block-button__link {
  border: none;
  background-color: var(--de-light-color);
  -webkit-transition: color 0.3s ease;
  -o-transition: color 0.3s ease;
  transition: color 0.3s ease;
}

body .de_contrast_section .wp-block-button.is-style-outline:hover .wp-block-button__link,
.de_lead_magnet_section .mc4wp-form input[type="submit"]:hover {
  color: var(--first-cta-color);
}

/* Global Classes */
body .align_flex {
  display: -webkit-flex;
  display: -ms-flex;
  -webkit-display: flex;
  -moz-display: flex;
  -ms-display: flex;
  -o-display: flex;
  display: flex;
}

body .flex_jcsb {
  -webkit-justify-content: space-between;
  -moz-justify-content: space-between;
  -ms-justify-content: space-between;
  -o-justify-content: space-between;
  justify-content: space-between;
}

body .flex_aic {
  -ms-align-items: center;
  -webkit-align-items: center;
  align-items: center;
}

body .flex_jcc {
  -webkit-justify-content: center;
  -moz-justify-content: center;
  -ms-justify-content: center;
  -o-justify-content: center;
  justify-content: center;
}

body .default_background_style {
  background-repeat: no-repeat;
  background-position: center;
  -webkit-background-size: cover;
  background-size: cover;
}

.de_max_text_width_800 {
  max-width: 800px;
}

.entry-content p:not(:last-child).de_max_text_width_800 {
  margin-bottom: 1rem;
}

/* Body */
body.home {
  background-color: #f5f3f5;
}

/* Override default Astra padding around groups (sections)... */
body .wp-block-group {
  padding-top: 96px;
  padding-bottom: 96px;
}

/* ... but fix them for internal pages...  */
body:not(.home) .wp-block-group {
  padding-top: 48px;
  padding-bottom: 48px;
}

body:not(.home) .entry-content>.wp-block-group:last-child {
  padding-bottom: 0;
}

/* ...and prevent a first child group to set any padding top space */
body:not(.home) .entry-content>.wp-block-group:first-child {
  padding-top: 0;
}

/* Set entry content top padding for all internal pages */
body:not(.home) article>.entry-header {
  padding-top: 48px;
}

body .wp-block-group.de_button_group {
  padding-top: 0;
  padding-bottom: 48px;
}

body .de_lead_magnet_section.wp-block-group,
body:not(.home) .entry-content>.wp-block-group.de_lead_magnet_section:last-child {
  padding-top: 72px;
  padding-bottom: 72px;
}

body .wp-block-group__inner-container .wp-block-group {
  padding-top: 0;
  padding-bottom: 0;
}

body .de_black_gradient_overlay {
  position: relative;
}

body .de_black_gradient_overlay:after {
  content: '';
  position: absolute;
  z-index: 1;
  left: 0;
  top: 0;
  width: 100%;
  height: 30%;
  /* ⚠️ Depending on color choice color this gradient ⚠️ */
  background: -moz-linear-gradient(top, hsla(0, 0%, 0%, 0.5) 0%, hsla(0, 0%, 0%, 0) 100%);
  background: -webkit-linear-gradient(top, hsla(0, 0%, 0%, 0.5) 0%, hsla(0, 0%, 0%, 0) 100%);
  background: linear-gradient(to bottom, hsla(0, 0%, 0%, 0.5) 0%, hsla(0, 0%, 0%, 0) 100%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#000000', endColorstr='#00000000', GradientType=0);
  min-height: initial;
}

body .de_black_gradient_overlay .wp-block-cover__inner-container {
  position: relative;
  z-index: 10;
}

/* Cookies Policy Banner */
.cli-modal .wt-cli-ckyes-brand-logo {
  display: none;
}

div#cookie-law-info-bar .cli-bar-message {
  line-height: 1.5;
}

div#cookie-law-info-bar .cli-bar-message,
div#cookie-law-info-bar .cli-bar-btn_container>a,
.cli-modal-dialog #wt-cli-privacy-save-btn {
  font-size: 14px;
}

div#cookie-law-info-bar .cli-bar-btn_container>a,
.cli-modal-dialog #wt-cli-privacy-save-btn {
  padding: 0.75em 1.5em 0.8em;
  border-radius: 4px;
}

div#cookie-law-info-bar {
  background-color: #f5f3f5 !important;
}

/* Header */
.ast-theme-transparent-header header .main-header-bar {
  background-color: transparent;
}

body:not(.home):not(.single-service):not(.de-custom-page-header) #masthead,
.ast-theme-transparent-header header.ast-sticky-shrunk,
body #ast-fixed-header.ast-header-slide {
  background: var(--main-gradient-background);
}

body.ast-theme-transparent-header .main-header-menu .current-menu-item>.menu-link {
  color: #fff !important;
}

body:not(.home):not(.single-service):not(.de-custom-page-header) #masthead .ast-custom-button-link .ast-custom-button,
body header.ast-sticky-shrunk .ast-custom-button-link .ast-custom-button {
  border-color: #fff;
  background-color: #fff;
  color: #27a194;
}

body:not(.home):not(.single-service):not(.de-custom-page-header) #masthead .ast-custom-button-link .ast-custom-button:hover,
body header.ast-sticky-shrunk .ast-custom-button-link .ast-custom-button:hover {
  color: var(--first-cta-color);
}

body #masthead .menu-item:hover>.menu-link,
body #masthead .inline-on-mobile .menu-item:hover>.ast-menu-toggle,
#masthead .ast-header-search .astra-search-icon:hover {
  color: #fff;
}

/* de_text_divider block */
body hr.de_text_divider {
  text-align: center;
  margin: 32px auto;
  height: 5px;
  background-color: var(--first-cta-color);
}

/* de_block_header_set block */
body .wp-block-group.de_block_header_set {
  padding-bottom: 48px;
  max-width: 720px;
  margin: 0 auto;
}

.de_block_header_set p {
  text-transform: uppercase;
  letter-spacing: 0.025em;
  margin-bottom: 0;
  font-size: 1rem;
}

.de_block_header_set hr.de_text_divider {
  margin: 10px auto 20px;
}

/* Buttons */
body header#masthead .ast-builder-button-wrap .ast-custom-button,
body #main .wp-block-button .wp-block-button__link,
body #main .wp-block-button.is-style-outline .wp-block-button__link {
  padding: 0.75em 1.5em 0.8em;
  font-size: 17px;
  border-radius: 4px;
  line-height: initial;
}

body #main .wp-block-button .wp-block-button__link,
body #main .wp-block-button.is-style-outline .wp-block-button__link {
  padding-top: 0.75em;
  padding-right: ​1.5em;
  padding-bottom: 0.8em;
  padding-left: ​1.5em;
}

body .wp-block-button .wp-block-button__link,
body .ast-custom-button-link .ast-custom-button {
  border-color: var(--first-cta-color);
  background-color: var(--first-cta-color);
}

body .wp-block-button .wp-block-button__link:hover,
body .ast-custom-button-link .ast-custom-button:hover {
  border-color: var(--first-cta-hover-color);
  background-color: var(--first-cta-hover-color);
  color: #fff;
}

body header#masthead .ast-builder-button-wrap .ast-custom-button {
  font-size: 17px;
  padding: 0.7em 1.5em;
}

/* Callout element */
blockquote.de_callout_element {
  border: none;
  margin: 40px 0;
  box-shadow: 0 2px 3px rgb(0 0 0 / 2%), 0 2px 6px rgb(0 0 0 / 14%);
  border-radius: 8px;
  color: inherit;
  line-height: 1.5;
  font-size: 1rem;
  padding: 24px 32px;
  font-style: initial;
}

blockquote.de_callout_element>p {
  font-size: inherit;
  line-height: inherit;
}

/* Image Captions */
body .de_custom_featured_image figcaption,
body .wp-block-image figcaption {
  text-align: center;
  font-size: 0.9375rem;
  font-style: italic;
}

body .de_custom_featured_image figcaption {
  margin-top: 0.5em;
}

/* ATF Section  */
.home .wp-block-cover .wp-block-buttons>.wp-block-button:first-child {
  margin-right: 24px;
}

/* Services */
body .de_services.wp-block-group {
  padding-top: 64px;
}

.de_services .wp-block-column svg {
  width: 100%;
  height: auto;
  fill: #21a6ad;
  margin: 0;
}

.de_services .wp-block-column {
  text-align: center;
}

.de_services .wp-block-column h5 {
  margin-bottom: 16px;
}

.de_services .wp-block-column {
  padding: 40px 32px;
  border-radius: 8px;
}

.de_services .wp-block-column p {
  min-height: 6.2em;
}

.de_services .wp-block-column * {
  color: var(--de-light-color);
}

.de_services .wp-block-column .de_svg_container {
  background-color: var(--de-light-color);
  border-radius: 50%;
  width: 128px;
  height: 128px;
  margin: 0 auto 32px;
  padding: 32px;
  display: -webkit-flex;
  display: -ms-flex;
  -webkit-display: flex;
  -moz-display: flex;
  -ms-display: flex;
  -o-display: flex;
  display: flex;
  -webkit-justify-content: center;
  -moz-justify-content: center;
  -ms-justify-content: center;
  -o-justify-content: center;
  justify-content: center;
  -ms-align-items: center;
  align-items: center;
  -webkit-align-items: center;
}

/* Countries Hubs */
.de_countries_columns .wp-block-column {
  border-radius: 8px;
  overflow: hidden;
}

body:not(.home) .de_countries_columns {
  margin-top: 48px;
}

.de_countries_columns .wp-block-cover__inner-container>* {
  margin-bottom: 0;
}

.de_countries_columns .wp-block-column .wp-block-cover {
  padding: 16px 24px;
  /* temp b4 conversion */
  cursor: pointer;
  position: relative;
}

.de_countries_columns .wp-block-column .wp-block-cover:before,
.de_countries_columns .wp-block-column .wp-block-cover:after {
  content: '';
  position: absolute;
  background: var(--main-gradient-background);
  /* background: linear-gradient(30deg, rgb(33 166 173) 39%, rgb(42 158 133 / 50%) 100%); */
  background: linear-gradient(30deg, hsl(0deg 0% 0% / 60%) 0%, hsl(0deg 0% 39% / 0%) 42%);
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
  opacity: 1;
  -webkit-transition: opacity 0.3s ease;
  -o-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}

.de_countries_columns .wp-block-column .wp-block-cover:after {
  background: linear-gradient(30deg, rgb(33 166 173) 39%, rgb(42 158 133 / 50%) 100%);
  opacity: 0;
}

.de_countries_columns .wp-block-column .wp-block-cover:hover:after {
  opacity: 0.5;
}

.de_countries_columns .wp-block-column .wp-block-cover:hover:before {
  opacity: 0;
}

.de_countries_columns .wp-block-column .wp-block-cover .wp-block-cover__inner-container {
  position: relative;
  z-index: 10;
}

/* Testimonials */
body .wp-block-columns.de_testimonials {
  margin-top: 0;
  -webkit-justify-content: space-around;
  -moz-justify-content: space-around;
  -ms-justify-content: space-around;
  -o-justify-content: space-around;
  justify-content: space-around;
}

.de_testimonials .wp-block-image {
  display: -webkit-flex;
  display: -ms-flex;
  -webkit-display: flex;
  -moz-display: flex;
  -ms-display: flex;
  -o-display: flex;
  display: flex;
  -ms-align-items: center;
  align-items: center;
  -webkit-align-items: center;
  max-width: 160px;
  max-height: 160px;
  border-radius: 50%;
  overflow: hidden;
  margin: 0 auto 32px;
}

.de_testimonials .wp-block-image img {
  border-radius: 0;
}

.entry-content .de_testimonials h6 {
  margin-bottom: 0;
  line-height: 1.5;
}

.entry-content .de_testimonials .wp-block-column {
  text-align: center;
  max-width: 480px;
  padding: 32px;
  border-radius: 8px;
  box-shadow: 0 1px 6px rgb(0 0 0 / 10%);
}

.entry-content .de_testimonials .wp-block-column p:before,
.entry-content .de_testimonials .wp-block-column p:after {
  content: '"';
}

.entry-content .de_testimonials .wp-block-column p {
  font-style: italic;
}

.entry-content .de_testimonials .wp-block-column p:last-of-type {
  color: hsl(184deg 0% 26% / 70%);
  font-style: normal;
  font-size: 16px;
}

/* Lead Magnet Section / Newsletter */
.de_lead_magnet_section .mc4wp-form input {
  background-color: #fff;
  border: none;
  /* font-size: 18px; */
  font-size: 17px;
  /* border-radius: 2em; */
  border-radius: 4px;
  /* padding: 0.6em ​1.5em 0.6em; */
  padding: 12px 24px;
  line-height: 1;
  min-height: 24px;
  box-sizing: initial;
}

.de_lead_magnet_section .mc4wp-form input[type="email"] {
  min-width: 272px;
  color: #325052;
  outline: none;
}

.de_lead_magnet_section .mc4wp-form input[type="submit"] {
  cursor: pointer;
  background-color: #fff;
  font-weight: bold;
  text-transform: capitalize;
  -webkit-transition: color 0.3s;
  -o-transition: color 0.3s;
  transition: color 0.3s;
  margin-left: 16px;
}

.de_lead_magnet_section .mc4wp-form input::-webkit-input-placeholder {
  color: #949494;
  font-weight: 400;
}

.de_lead_magnet_section .mc4wp-form input::-moz-placeholder {
  color: #949494;
  font-weight: 400;
}

.de_lead_magnet_section .mc4wp-form input:-ms-input-placeholder {
  color: #949494;
  font-weight: 400;
}

.de_lead_magnet_section .mc4wp-form input:-moz-placeholder {
  color: #949494;
  font-weight: 400;
}

/* Lead Magnet Section BOXED */
#main .alignwide.de_lead_magnet_section {
  margin-left: 0;
  margin-right: 0;
  padding: 56px 40px;
  border-radius: 8px;
}

#main .alignwide.de_lead_magnet_section h3 {
  font-size: 28px;
}

#main .alignwide.de_lead_magnet_section input[type="email"] {}

#main .alignwide.de_lead_magnet_section input[type="email"] {
  margin-bottom: 16px;
  min-width: initial;
  display: block;
  width: 100%;
  box-sizing: border-box;
}

.alignwide.de_lead_magnet_section .mc4wp-form input[type="submit"] {
  margin-left: 0;
}

/* Internal Page */
body:not(.home) #content>.ast-container {
  padding-bottom: 80px;
}

/*body:not(.home).ast-no-sidebar #content>.ast-container {
  max-width: 760px;
}*/

#content .entry-content .de_testimonials.de_single_testimonial {
  margin: 0;
  padding-top: 0;
  padding-bottom: 0;
}

#content .entry-content .wp-block-columns.de_testimonials.de_single_testimonial {
  padding-top: 48px;
  padding-bottom: 48px;
}

#content .entry-content .de_testimonials.de_single_testimonial .wp-block-column {
  max-width: 100%;
}

body.ast-separate-container .ast-article-post,
body.ast-separate-container .ast-article-single:not(.ast-related-post) {
  background: none;
}

body figure.wp-block-image,
body .post-thumb-img-content.post-thumb>img {
  border-radius: 8px;
}

body figure.wp-block-image {
  overflow: hidden;
}

body #content .ast-container .widget-area.secondary {
  border-left: none;
  padding-left: 32px;
}

.related_posts,
.related_posts a.single_post {
  display: -webkit-flex;
  display: -ms-flex;
  -webkit-display: flex;
  -moz-display: flex;
  -ms-display: flex;
  -o-display: flex;
  display: flex;
}

.related_posts {
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  justify-content: space-between;
}

.related_posts a.single_post {
  position: relative;
  width: 48%;
  margin-bottom: 32px;
  height: 232px;
  border-radius: 8px;
  -webkit-align-items: flex-end;
  -ms-align-items: flex-end;
  align-items: flex-end;
  background-position: center;
  -webkit-background-size: cover;
  background-size: cover;
  background-repeat: no-repeat;
  overflow: hidden;
}

.related_posts a.single_post>* {
  color: #fff;
  margin-bottom: 0.8em;
  padding: 0 0.5em 0 1em;
}

.related_posts span.related_post_title {
  font-size: 20px;
  line-height: 1.2;
  font-weight: 800;
  position: relative;
  z-index: 10;
}

.related_posts a.single_post:before,
.related_posts a.single_post:after {
  content: '';
  position: absolute;
  background: linear-gradient(0deg, hsl(0deg 0% 0% / 60%) 0%, hsl(0deg 0% 39% / 0%) 42%);
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
  opacity: 1;
  -webkit-transition: opacity 0.3s ease;
  -o-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}

.related_posts a.single_post:after {
  background: linear-gradient(30deg, rgb(33 166 173) 39%, rgb(42 158 133 / 50%) 100%);
  opacity: 0;
}

.related_posts a.single_post:hover:before {
  opacity: 0;
}

.related_posts a.single_post:hover:after {
  opacity: 0.5;
}

body .entry-content .wp-block-button a:hover,
body .entry-content .related_posts a:hover {
  text-decoration: none;
}

/* Countries Element */
.countries_tiles.related_posts {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 40px;
}

.countries_tiles.related_posts a.single_post {
  width: 100%;
  margin: 0;
  image-rendering: -webkit-optimize-contrast;
  min-height: 284px;
}

.countries_tiles.related_posts a.single_post h3 {
  position: relative;
  padding: 0;
  z-index: 2;
  margin-bottom: 16px;
  margin-left: 24px;
}

/* Single Blog Post */
.single-post .site-main {
  margin-top: 48px;
}

.single-post .entry-content img {
  border-radius: 8px;
}

.single-post .entry-content figure figcaption {
  font-size: 0.9375rem;
  font-style: italic;
}

/* Single Country Page */
.single-country header.entry-header>.post-thumb {
  display: none;
}

body.ast-right-sidebar #primary {
  border-right: none;
}

.page .has-post-thumbnail .post-thumb.de_custom_featured_image img {
  margin-bottom: 0;
}

.page .has-post-thumbnail .post-thumb.de_custom_featured_image {
  margin-bottom: 1em;
}

/* Footer */
.de_social_icons .de_single_social {
  width: 40px;
  height: 40px;
  border-radius: 50%;
  display: -webkit-flex;
  display: -ms-flex;
  -webkit-display: flex;
  -moz-display: flex;
  -ms-display: flex;
  -o-display: flex;
  display: flex;
  -webkit-justify-content: center;
  -moz-justify-content: center;
  -ms-justify-content: center;
  -o-justify-content: center;
  justify-content: center;
  -ms-align-items: center;
  -webkit-align-items: center;
  align-items: center;
  margin: 0 8px;
  /* background-color: hsl(184deg 24% 26% / 80%); */
  background-color: #666666;
  -webkit-transition: background-color 0.3s ease;
  -o-transition: background-color 0.3s ease;
  transition: background-color 0.3s ease;
}

.de_social_icons .de_single_social:hover {
  background-color: #424242;
}

.de_social_icons .de_single_social svg {
  width: 18px;
  height: 18px;
}

.de_social_icons .de_single_social svg,
.de_social_icons .de_single_social svg * {
  fill: #f4f4f4;
}

.de_social_icons .de_single_social:first-child {
  margin-left: 0;
}

.de_social_icons .de_single_social:last-child {
  margin-right: 0;
}

footer .site-footer-primary-section-1 img {
  max-width: 148px;
  margin-bottom: 24px;
}

body .site-below-footer-wrap[data-section="section-below-footer-builder"] {
  padding: 24px 0 22px;
  min-height: inherit;
}

body .site-primary-footer-wrap svg {
  max-width: 148px;
  fill: #505050;
}

body .site-primary-footer-wrap .footer-widget-area-inner .widget * {
  color: #505050;
}

body .site-primary-footer-wrap .footer-widget-area-inner .widget .menu-item>a {
  font-weight: 500;
}

.footer-widget-area .widget-title {
  font-size: 20px;
  text-transform: uppercase;
  font-weight: 600;
}

body .site-primary-footer-wrap .widget p,
body .site-primary-footer-wrap .widget a {
  font-size: 14px;
}

body .site-primary-footer-wrap .menu-item {
  margin-bottom: 4px;
  margin-bottom: 8px;
}

body .site-primary-footer-wrap .footer-widget-area-inner .widget .menu-item>a,
body .site-primary-footer-wrap .footer-widget-area-inner .widget .menu-item {
  line-height: 1.25;
}

body .ast-builder-footer-grid-columns .ast-footer-copyright * {
  font-size: 14px;
  font-weight: 300;
  font-weight: 400;
}

/* Responsive Design Code */
@media only screen and (max-width:1300px) {
  body.home .wp-block-cover:first-child .wp-block-cover__inner-container {
    padding: 0px 48px;
  }

  body .de_lead_magnet_section.wp-block-group,
  body .site-primary-footer-wrap[data-section="section-primary-footer-builder"],
  body .site-below-footer-wrap[data-section="section-below-footer-builder"] {
    padding-right: 48px;
    padding-left: 48px;
  }

  body .de_lead_magnet_section.wp-block-group .mc4wp-form {
    text-align: right;
  }
}

@media only screen and (max-width:1200px) {
  .de_lead_magnet_section .mc4wp-form input[type="email"] {
    min-width: 216px;
  }

  .alignwide.de_lead_magnet_section .wp-block-columns:first-child {
    margin-top: 0px;
  }
}

@media only screen and (min-width:767px) and (max-width:1050px) {
  .wp-block-cover.de_atf_section {
    min-height: 50vh !important;
  }
}

@media only screen and (max-width:1050px) {
  body header#masthead .ast-builder-button-wrap .ast-custom-button {
    font-size: 16px;
  }

  .de_atf_section .wp-block-cover__inner-container {
    top: 40px;
  }

  body .de_black_gradient_overlay:after {
    background: none;
    background-color: hsl(0deg 0% 0% / 25%);
    height: 100%;
  }

  body .wp-block-group.de_block_header_set {
    padding-bottom: 24px;
  }

  .de_services .wp-block-column .de_svg_container {
    overflow: hidden;
    padding: 0;
    width: 104px;
    height: 104px;
  }

  .de_services .wp-block-column svg {
    width: 40%;
  }

  .de_services .wp-block-column {
    padding: 32px 24px;
  }

  body .de_lead_magnet_section.wp-block-group {
    padding-top: 40px;
    padding-bottom: 40px;
  }
}

@media only screen and (max-width:1023px) {
  body[CLASS*="-sticky-header-active"] .ast-header-sticked [data-section="section-header-mobile-trigger"] .ast-button-wrap .mobile-menu-toggle-icon .ast-mobile-svg {
    fill: #fff
  }

  body .ast-builder-menu-mobile .main-navigation .menu-item.current-menu-item>.menu-link,
  body .ast-builder-menu-mobile .main-navigation .inline-on-mobile .menu-item.current-menu-item>.ast-menu-toggle,
  body .ast-builder-menu-mobile .main-navigation .menu-item.current-menu-ancestor>.menu-link,
  body .ast-builder-menu-mobile .main-navigation .menu-item.current-menu-ancestor>.ast-menu-toggle {
    color: #fff;
  }

  body [data-section="section-header-mobile-trigger"] .ast-button-wrap .mobile-menu-toggle-icon .ast-mobile-svg {
    width: 32px;
    height: 32px;
  }

  body.ast-theme-transparent-header [data-section="section-header-mobile-trigger"] .ast-button-wrap .mobile-menu-toggle-icon .ast-mobile-svg,
  body:not(.ast-theme-transparent-header) [data-section="section-header-mobile-trigger"] .ast-button-wrap .mobile-menu-toggle-icon .ast-mobile-svg {
    fill: #fff;
  }

  body .ast-builder-menu-mobile .main-navigation .main-header-menu,
  body .ast-builder-menu-mobile .main-navigation .main-header-menu .sub-menu {
    background: var(--main-gradient-background);
  }

  body .site-below-footer-wrap[data-section="section-below-footer-builder"].ast-footer-row-tablet-stack .site-footer-section {
    margin-bottom: 0;
  }

  .de_lead_magnet_section .wp-block-columns {
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }

  .de_lead_magnet_section .wp-block-columns>* {
    -webkit-flex-basis: initial !important;
    -moz-flex-basis: initial !important;
    -ms-flex-basis: initial !important;
    -o-flex-basis: initial !important;
    flex-basis: initial !important;
    margin: 0;
  }

  body .de_lead_magnet_section.wp-block-group .mc4wp-form {
    text-align: left;
  }

  .de_lead_magnet_section .wp-block-columns>*:first-child {
    margin-bottom: 32px;
  }

  .de_lead_magnet_section .mc4wp-form input[type="email"] {
    min-width: 336px;
  }

  body .de_lead_magnet_section.wp-block-group {
    padding-top: 48px;
    padding-bottom: 64px;
  }
}

@media only screen and (max-width:960px) {
  .countries_tiles.related_posts {
    grid-template-columns: 1fr 1fr;
  }
}

@media only screen and (max-width:900px) {
  .de_services .wp-block-column .de_svg_container {
    width: 96px;
    height: 96px;
  }

  .de_lead_magnet_section .wp-block-columns>*:first-child {
    margin-bottom: 24px;
  }
}

@media only screen and (min-width:545px) and (max-width:799px) {
  body .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 (max-width:667px) {

  /* Padding around main content on mobile screens... */
  body .ast-container,
  /* ...force it also on fluid full width containers of Astra... */
  body .entry-content>.wp-block-group.alignfull,
  /* ...do the same for the footer... */
  body .site-primary-footer-wrap[data-section="section-primary-footer-builder"],
  body .site-below-footer-wrap[data-section="section-below-footer-builder"] {
    padding-left: 32px;
    padding-right: 32px;
  }

  /* Adjust padding top in internal pages for all block groups */
  body:not(.home) .wp-block-group,
  body.single-country main#main {
    padding-top: 32px;
  }

  /* Reset padding of sub groups that aren't direct child of entry content */
  body .wp-block-group,
  body .wp-block-group .wp-block-group {
    padding-left: 0;
    padding-right: 0;
  }

  /* Fix extra spaces for columns right under titles  */
  h2+.wp-block-columns, h2+.wp-block-columns>.wp-block-column:first-child {
    margin-top: 0px;
  }

  /* MOBILE FONTS */
  body h1,
  body .entry-content h1,
  /* Fixes for title due to specific CSS code in Single Service page */
  body:not(.home) .entry-content h1,
  body.ast-single-post .entry-title,
  #de_custom_page_header h1 {
    /* 36px */
    /* font-size: 3.052rem; */
    font-size: 2.25rem;
  }

  body h2,
  body .entry-content h2 {
    /* 30px */
    /* font-size: 2.441rem; */
    font-size: 1.875rem;
  }

  body h3,
  body .entry-content h3 {
    /* 25px */
    /* font-size: 1.953rem; */
    font-size: 1.5625rem;
  }

  body h4,
  body .entry-content h4,
  body .entry-content .de_services h5 {
    /* font-size: 1.563rem; */
    font-size: 1.25rem;
  }

  body h5,
  body .entry-content h5 {
    /* font-size: 1.25rem; */
    font-size: 1rem;
  }

  body h6,
  body .entry-content h6,
  body .entry-content p {
    font-size: 16px;
  }

  body .wp-block-group,
  body .site-primary-footer-wrap[data-section="section-primary-footer-builder"] {
    padding-top: 64px;
    padding-bottom: 64px;
  }

  body.home .wp-block-cover.de_atf_section .wp-block-cover__inner-container {
    padding: 0 16px;
    position: relative;
    top: 40px;
    z-index: 2;
  }

  div#ast-mobile-header a.menu-link {
    font-size: 1.1666666rem;
  }

  .countries_tiles.related_posts {
    grid-template-columns: 1fr;
  }

  .countries_tiles.related_posts a.single_post {
    min-height: 208px;
    height: auto;
  }

  .related_posts a.single_post:before, .related_posts a.single_post:after {
    background: linear-gradient(0deg, hsl(0deg 0% 0% / 70%) 0%, hsl(0deg 0% 39% / 0%) 95%);
  }

  body header#masthead .ast-builder-button-wrap .ast-custom-button,
  body #main .wp-block-button .wp-block-button__link,
  body #main .wp-block-button.is-style-outline .wp-block-button__link {
    font-size: 16px;
  }

  .de_lead_magnet_section .mc4wp-form input[type="email"] {
    min-width: initial;
  }

  .de_lead_magnet_section .mc4wp-form input {
    font-size: 16px;
  }

  body .de_lead_magnet_section.wp-block-group .mc4wp-form .mc4wp-form-fields>p {
    display: -webkit-flex;
    display: -ms-flex;
    -webkit-display: flex;
    -moz-display: flex;
    -ms-display: flex;
    -o-display: flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }

  body .de_lead_magnet_section.wp-block-group .mc4wp-form .mc4wp-form-fields>p>* {
    margin: 0;
  }

  body .de_lead_magnet_section.wp-block-group .mc4wp-form .mc4wp-form-fields>p>*:first-child {
    margin-bottom: 16px;
    width: 100%;
  }

  .site-below-footer-wrap .ast-footer-copyright {
    text-align: left;
  }
}

@media only screen and (max-width:600px) {
  #content .entry-content .de_testimonials.de_single_testimonial {
    padding: 0;
  }
}

@media only screen and (max-width:500px) {
  .related_posts, .related_posts a.single_post {
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }

  .related_posts a.single_post {
    width: 100%;
    margin-bottom: 16px;
  }

  #main .alignwide.de_lead_magnet_section {
    padding: 40px 32px;
  }
}

@media only screen and (max-width:320px) {

  body h1,
  body .entry-content h1 {
    font-size: 2.441rem;
  }

  body h4,
  body .entry-content h4,
  body .entry-content .de_services h5 {
    font-size: 1.25rem;
  }

  .home .de_atf_section {
    min-height: 100vh !important;
  }

  body #main .wp-block-button .wp-block-button__link,
  body #main .wp-block-button.is-style-outline .wp-block-button__link {
    font-size: 1rem;
  }
}