/*
Theme Name: Mg Child
Description: This is a child theme for Flatsome Theme
Author: UX Themes
Template: flatsome
Version: 3.0
*/

/*************** ADD CUSTOM CSS HERE.   ***************/

:root {
  --mg-green: #00a859;
  --mg-green-dark: #005e3a;
  --mg-red: #ff0000;
  --mg-yellow: #ffff00;
  --mg-text: #0a0a0a;
  --mg-muted: #666;
  --mg-soft: #f9f9f9;
  --mg-border: rgba(0, 168, 89, .9);
  --mg-shadow: 0 3px 6px -4px rgba(0,0,0,.16), 0 3px 6px rgba(0,0,0,.23);
  --mg-radius: 8px;
}

body {
  color: var(--mg-text);
  font-family: Roboto, sans-serif;
}

.container-width,
.full-width .ubermenu-nav,
.container,
.row {
  max-width: 1570px;
}

.row.row-collapse {
  max-width: 1540px;
}

.row.row-small {
  max-width: 1562.5px;
}

.row.row-large {
  max-width: 1600px;
}

blockquote,
dl,
figure,
form,
ol,
p,
pre,
ul {
  margin-bottom: 6px;
}

.mg-hero-grid {
  margin-bottom: -40px;
}

.mg-hero-img img {
  display: block;
  width: 100%;
}

.mg-hero-side .img + .img {
  margin-top: 0;
}

.mg-hero-side-ad {
  background: #fff;
  border-left: 1px solid rgba(0,168,89,.25);
  border-right: 1px solid rgba(0,168,89,.25);
  text-align: center;
}

.mg-hero-side-ad p {
  color: var(--mg-green);
  font-size: .95rem;
  font-weight: 700;
  line-height: 1.25;
  margin: 0;
  padding: 5px 3px;
  text-transform: uppercase;
}

.mg-hero-side-ad .mg-red-line {
  color: var(--mg-red);
}

.mg-hero-side-ad .mg-blue-line {
  color: #0068b7;
}

.mg-hero-side-ad .mg-side-phone p {
  background: var(--mg-green);
  color: #fff;
  font-size: .82rem;
  margin-top: 5px;
}

.mg-side-thumb {
  display: block;
  margin: 5px auto;
  max-width: 90%;
}

.mg-trust-strip {
  background: var(--mg-green);
}

.mg-trust-row {
  align-items: center;
  background: var(--mg-green);
  margin-bottom: 0;
  padding: 14px 0;
}

.mg-trust-title {
  color: #fff;
}

.mg-trust-title .featured-box {
  margin-bottom: -15px;
}

.mg-trust-title p {
  color: #fff;
  font-size: 1.25rem;
  line-height: 1.15;
}

.mg-trust-title p span {
  font-size: 180%;
}

.mg-trust-title mark {
  background: transparent;
  color: var(--mg-yellow);
  padding: 0;
}

.mg-trust-feature {
  background: #fff;
  min-height: 74px;
  padding-bottom: 12px;
  padding-top: 12px;
  position: relative;
}

.mg-trust-feature .featured-box {
  margin: 0;
}

.mg-trust-feature p {
  color: #111;
  font-size: .85rem;
  line-height: 1.4;
}

.mg-trust-feature strong {
  font-size: 120%;
}

.mg-section-heading {
  margin: 0 0 -15px;
}

.mg-section-heading h2 {
  color: var(--mg-red);
  font-size: 1.45rem;
  font-weight: 700;
  line-height: 1.2;
  margin: 0;
  text-transform: uppercase;
}

.mg-section-heading h2 span {
  color: #339966;
}

.mg-section-heading h2 strong {
  color: var(--mg-red);
}

.mg-services {
  background: #fff;
}

.mg-service-card .box-text {
  background: rgba(0,168,89,.88);
  color: #fff;
  padding: 12px 10px;
  text-align: center;
}

.mg-service-card h3 {
  color: #fff;
  font-size: 1.3rem;
  line-height: 1.25;
  margin: 0;
}

.mg-service-card h3 span {
  color: var(--mg-yellow);
}

.mg-products {
  background: var(--mg-soft);
}

.mg-product-title h2 {
  color: var(--mg-red);
  font-size: 1.85rem;
}

.mg-brand-buttons {
  margin-top: 5px;
}

a.button.primary.nu,
.button.primary.nu {
  background: #02a85c;
  border: 0;
  margin-bottom: 0;
  margin-right: 2px;
  transform: skew(19deg, 0deg);
}

.nu span {
  display: block;
  transform: skew(-19deg, 0deg);
}

.mg-see-more a {
  color: #ff0606;
}

.mg-product-banner {
  box-shadow: var(--mg-shadow);
}

.mg-product-slider .product-small.box {
  box-shadow: var(--mg-shadow);
}

.mg-product-slider .box-text-products {
  padding: 10px;
}

.mg-product-slider img {
  border-bottom: 1px solid var(--mg-green);
}

.mg-product-slider a.woocommerce-LoopProduct-link {
  color: var(--mg-green);
  display: block;
  font-size: 16px;
  font-weight: 700;
  height: 45px;
  overflow: hidden;
}

.mg-about-heading h2 {
  color: var(--mg-red);
  font-size: 1.85rem;
}

.mg-video-banner .banner {
  overflow: hidden;
}

.mg-play-button {
  align-items: center;
  border-color: #fff;
  color: #fff;
  display: inline-flex;
  justify-content: center;
}

.mg-about-text h3 {
  color: var(--mg-green);
  font-size: 1.65rem;
  font-weight: 700;
  line-height: 1.25;
  margin-bottom: 5px;
  text-transform: uppercase;
}

.mg-about-text .mg-slogan {
  color: #ff0606;
  font-weight: 700;
}

.mg-about-text p {
  color: var(--mg-text);
  line-height: 1.55;
}

.mg-more-link a {
  color: #ff0606;
}

.mg-stat-card {
  background: #000;
  border-radius: var(--mg-radius);
  color: #fff;
  padding: 10px;
}

.mg-stat-card p,
.mg-stat-card b,
.mg-stat-card strong {
  color: #fff;
}

.mg-stat-card .item-number {
  display: inline-block;
  font-size: 2.4rem;
  line-height: 1;
}

.after-plus:after {
  content: "+";
  padding-left: 5px;
}

.mg-stat-card p:last-child {
  font-size: 1.4rem;
}

.mg-testimonials {
  background: var(--mg-soft);
}

.mg-review-card {
  background: #fff;
  border: 1px solid var(--mg-border);
  padding: 10px 10px 3px;
}

.mg-review-card .box-image {
  width: 31% !important;
}

.mg-review-card h3 {
  font-size: 1rem;
  margin-bottom: 2px;
}

.mg-review-card p {
  color: #111;
  line-height: 1.45;
}

.mg-review-card .mg-stars,
.mg-review-card .box-text img {
  display: block;
  max-width: 119px;
  width: 37%;
}

.mg-news .post-item .box,
.mg-news-slider .box-blog-post {
  box-shadow: var(--mg-shadow);
}

.mg-news h5.post-title.is-large {
  height: 45px;
  overflow: hidden;
}

.mg-news .box-blog-post .is-divider {
  display: none;
}

.mg-news .from_the_blog_excerpt {
  color: var(--mg-muted);
}

.mg-partners {
  background: var(--mg-soft);
}

.mg-logo-row .img {
  align-items: center;
  background: #fff;
  border: 1px solid rgba(0,168,89,.18);
  display: flex;
  min-height: 78px;
  padding: 10px;
}

.mg-logo-row .img img {
  display: block;
  margin: auto;
  max-height: 54px;
  object-fit: contain;
}

@keyframes chang-rotage-anim-1 {
  0%, 45%, 60%, 75%, 100% { transform: rotate(0deg) scale(1) skew(1deg); }
  50% { transform: rotate(-25deg) scale(1.1) skew(1deg); }
  55% { transform: rotate(25deg) scale(1) skew(1deg); }
  65% { transform: rotate(-25deg) scale(1.08) skew(1deg); }
  70% { transform: rotate(25deg) scale(1) skew(1deg); }
}

@keyframes chang-rotage-anim-2 {
  0%, 35%, 100% { transform: rotate(0deg) scale(1) skew(1deg); }
  40%, 50% { transform: rotate(-25deg) scale(1.08) skew(1deg); }
  45%, 55% { transform: rotate(25deg) scale(1) skew(1deg); }
}

@keyframes chang-rotage-anim-3 {
  0%, 20%, 100% { transform: rotate(0deg) scale(1) skew(1deg); }
  25%, 35% { transform: rotate(-25deg) scale(1.08) skew(1deg); }
  30%, 40% { transform: rotate(25deg) scale(1) skew(1deg); }
}

@keyframes chang-rotage-anim-4 {
  0%, 50%, 75%, 100% { transform: rotate(0deg) scale(1) skew(1deg); }
  55%, 65% { transform: rotate(-25deg) scale(1.08) skew(1deg); }
  60%, 70% { transform: rotate(25deg) scale(1) skew(1deg); }
}

@keyframes chang-rotage-anim-2-bh {
  0%, 50%, 85%, 100% { transform: rotate(0deg) scale(1) skew(1deg); }
  45%, 65% { transform: rotate(-25deg) scale(1.18) skew(1deg); }
  60%, 70% { transform: rotate(25deg) scale(1) skew(1deg); }
}

.rung img {
  animation: 4s ease-in-out 0s infinite chang-rotage-anim-2-bh;
}

.rung1 img {
  animation: 4s ease-in-out 0s infinite chang-rotage-anim-1;
}

.rung2 img {
  animation: 4s ease-in-out 0s infinite chang-rotage-anim-2;
}

.rung3 img {
  animation: 4s ease-in-out 0s infinite chang-rotage-anim-3;
}

.rung4 img {
  animation: 4s ease-in-out 0s infinite chang-rotage-anim-4;
}

@media only screen and (min-width: 1120px) {
  .mg-trust-feature-first {
    margin-left: 14px;
  }

  .mg-trust-feature-last {
    margin-right: 14px;
  }

  .mg-trust-feature {
    transform: skew(-19deg, 0deg);
  }

  .mg-trust-feature .featured-box {
    transform: skew(19deg, 0deg);
  }
}

@media (max-width: 849px) {
  .mg-section-heading h2,
  .mg-product-title h2,
  .mg-about-heading h2 {
    font-size: 1.35rem;
  }

  .mg-trust-title p {
    font-size: 1rem;
  }

  .mg-trust-title p span {
    font-size: 150%;
  }

  .mg-about-text h3 {
    font-size: 1.35rem;
  }

  .mg-stat-card .item-number {
    font-size: 1.8rem;
  }

  .mg-stat-card p:last-child {
    font-size: 1rem;
  }
}

@media (max-width: 549px) {
  .mg-hero-grid,
  .mg-trust-row {
    margin-bottom: 0;
  }

  .mg-hero-side-ad {
    display: none;
  }

  .mg-trust-feature,
  .mg-trust-feature .featured-box {
    transform: none;
  }

  .mg-brand-buttons {
    text-align: left;
  }

  a.button.primary.nu,
  .button.primary.nu {
    font-size: 10px;
    margin-bottom: 5px;
    margin-right: 1px;
  }

  .mg-service-card h3 {
    font-size: 1rem;
  }

  .mg-review-card .box-image {
    width: 34% !important;
  }

  .mg-logo-row .img {
    min-height: 56px;
    padding: 6px;
  }
}

@media only screen and (max-width: 48em) {
/*************** ADD MOBILE ONLY CSS HERE  ***************/


}