/*
Theme Name: MG
Template: hello-biz
Author: GobaTech
Version: 1.0.1757344348
Updated: 2025-09-08 15:12:28

*/

.boxed-title .elementor-heading-title {
  border: 1px solid black;
  display: inline-block;
  padding: 10px 20px;
}

.hero-curve {
  position: relative;
  overflow: visible;
}

.hero-curve::after {
  --curve-depth: clamp(80px, 12vw, 180px);
  /* controls how deep the dip is */
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: var(--curve-depth);
  background: #fff;
  z-index: 2;
  pointer-events: none;
  -webkit-mask: url("data:image/svg+xml;utf8,\
  <svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100' preserveAspectRatio='none'>\
    <path d='M0,100 Q50,0 100,100 L100,100 L0,100 Z' fill='black'/>\
  </svg>") top center/100% 100% no-repeat;
  mask: url("data:image/svg+xml;utf8,\
  <svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100' preserveAspectRatio='none'>\
    <path d='M0,100 Q50,0 100,100 L100,100 L0,100 Z' fill='black'/>\
  </svg>") top center/100% 100% no-repeat;
}

.hero-curve.opposite::after {
  transform: rotate(180deg);
}


.hero-curve-top {
  position: relative;
  overflow: visible;
}

.hero-curve-top::after {
  --curve-depth: clamp(80px, 12vw, 180px);
  /* controls how deep the dip is */
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  transform: rotate(180deg);
  height: var(--curve-depth);
  background: #fff;
  z-index: 2;
  pointer-events: none;
  -webkit-mask: url("data:image/svg+xml;utf8,\
  <svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100' preserveAspectRatio='none'>\
    <path d='M0,100 Q50,0 100,100 L100,100 L0,100 Z' fill='black'/>\
  </svg>") top center/100% 100% no-repeat;
  mask: url("data:image/svg+xml;utf8,\
  <svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100' preserveAspectRatio='none'>\
    <path d='M0,100 Q50,0 100,100 L100,100 L0,100 Z' fill='black'/>\
  </svg>") top center/100% 100% no-repeat;
}

.hero-curve-top--invert {
  position: relative;
  overflow: visible;
}

.hero-curve-top--invert::after {
  --curve-depth: clamp(80px, 12vw, 180px);
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  height: var(--curve-depth);
  background: #fff;
  z-index: 2;
  pointer-events: none;
  transform: rotate(180deg);

  /* STANDARD (Chrome/Firefox/Edge): full-rect EXCLUDE wedge */
  mask:
    linear-gradient(#fff 0 0),
    url("data:image/svg+xml;utf8,\
<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100' preserveAspectRatio='none'>\
  <path d='M0,100 Q50,0 100,100 L100,100 L0,100 Z' fill='white'/>\
</svg>");
  mask-composite: exclude;
  /* rect − path */
  mask-repeat: no-repeat, no-repeat;
  mask-position: top center, top center;
  mask-size: 100% 100%, 100% 100%;

  /* SAFARI/WEBKIT */
  -webkit-mask:
    linear-gradient(#fff 0 0),
    url("data:image/svg+xml;utf8,\
<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100' preserveAspectRatio='none'>\
  <path d='M0,100 Q50,0 100,100 L100,100 L0,100 Z' fill='black'/>\
</svg>");
  -webkit-mask-composite: xor;
  /* rect XOR path => rect − path (εφόσον path ⊂ rect) */
  -webkit-mask-repeat: no-repeat, no-repeat;
  -webkit-mask-position: top center, top center;
  -webkit-mask-size: 100% 100%, 100% 100%;
}


.curve_bottom_1 {
  clip-path: url("data:image/svg+xml;utf8,<svg width='0' height='0' xmlns='http://www.w3.org/2000/svg'><defs><clipPath id='myCurve' clipPathUnits='objectBoundingBox'><path d='M0,0 H1 V0.85 C0.75,1 0.25,1 0,0.85 V0 Z'></path></clipPath></defs></svg>#myCurve");
}

.curve_bottom_2 {
  clip-path: url("data:image/svg+xml;utf8,<svg width='0' height='0' xmlns='http://www.w3.org/2000/svg'><defs><clipPath id='myCurve' clipPathUnits='objectBoundingBox'><path d='M0,0 H1 V1 Q0.5,0.85 0,1 Z'></path></clipPath></defs></svg>#myCurve");
}

.mg_arrow::before {
  content: "";
  display: inline-block;
  width: 120px;
  vertical-align: middle;
  background-image: url(/wp-content/uploads/CTA-Arrow-for-new-MG-website-v3.svg);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  transition: transform 0.2s ease;
  height: 42px;
}

.elementor-button:hover .mg_arrow::before {
  transform: translateX(3px);
  /* μικρή κίνηση στο hover, προαιρετική */
}

/* Slideshow Arrows & bullets */
.mg_single_image_slideshow {
  --bullet-color: black;
}

.mg_single_image_slideshow {
  padding-bottom: 50px !important;
  /* space for bullets */
  ;
}

.mg_single_image_slideshow .swiper-pagination {
  padding-bottom: 0px;
}

@media (max-width:767px) {
  .mg_single_image_slideshow .swiper-pagination {
    padding-bottom: 40px;
  }
}

.mg_single_image_slideshow .swiper-pagination-bullet {
  width: 20px;
  height: 20px;
  border: 1px solid var(--bullet-color);
  background: transparent !important;
  border-radius: 50%;
  opacity: 1 !important;
  margin: 0 6px;
  position: relative;
}

.mg_single_image_slideshow .swiper-pagination-bullet-active::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 10px;
  height: 10px;
  background: var(--bullet-color);
  border-radius: 50%;
  transform: translate(-50%, -50%);
}

/* Gallery Shortcode CSS */
.gallery_slideshow {
  --arrow-color: var(--e-global-color-primary);
  --bullet-color: black;
  --arrow-area-width: 80px;
}

.gallery_slideshow .swiper-slide img {
  margin-left: var(--arrow-area-width);
  margin-right: var(--arrow-area-width);
  max-width: calc(100% - calc(2 * var(--arrow-area-width)));
  aspect-ratio: 3 / 2;
  object-fit: cover;
}

.gallery_slideshow .swiper-slide img {
  max-height: unset !important;
}

.gallery_slideshow .swiper-button-prev:after,
.gallery_slideshow .swiper-rtl .swiper-button-next:after,
.gallery_slideshow .swiper-button-next:after,
.gallery_slideshow .swiper-button-prev:after {
  color: var(--arrow-color, black);
}

.case_study_sponsors_slideshow {
  --arrow-color: var(--e-global-color-primary);
  --slide-img-max_width: 100px;
  --slide-img-max_height: 60px;
  padding-bottom: 0 !important;
}

.case_study_sponsors_slideshow .swiper-button-prev:after,
.case_study_sponsors_slideshow .swiper-rtl .swiper-button-next:after,
.case_study_sponsors_slideshow .swiper-button-next:after,
.case_study_sponsors_slideshow .swiper-button-prev:after {
  color: var(--arrow-color, black);
}

.case_study_sponsors_slideshow .swiper-pagination {
  display: none;
}

/* Κόβουμε ΟΛΑ τα Elementor animations σε mobile & μικρά tablet */
@media (max-width: 1024px) {

  /* Ό,τι έχει οριστεί με entrance animation ή motion effects */
  .elementor-element.elementor-invisible,
  .elementor-element[data-settings*="_animation"],
  .elementor-element[data-settings*="motion_fx"],
  .elementor-element[class*="elementor-animation-"],
  .elementor-element[class*="animated"] {
    opacity: 1 !important;
    transform: none !important;
    animation: none !important;
    transition: none !important;
  }
}