*,
*::before,
*::after {
  box-sizing: border-box;
}

html { height:100%; font-size: 16px; scroll-behavior: smooth; }
html, body {
  /*overflow-x: hidden;*/
}

body {
	background:#FFFFFF; color:#151629; line-height: 1rem;
	-webkit-font-smoothing: antialiased;
	display: flex; flex-direction: column; min-height: 100vh;
}

html, body {box-sizing: border-box; -webkit-text-size-adjust: 100%; -ms-text-size-adjust: 100%;}

:root {
  /* --- Colors --- */
	--Orange: #F2A123;
	--Blue: #151629;
	--Brown: #C0733A;
	--White: #FFFFFF;
	--Light: #F2F2FA;
	--Gray: #737380;
	
  /* --- Headings --- */
	/*--fs-h1: clamp(2.75rem, 5vw, 3.50rem); */       /* μεγάλοι τίτλοι 50px-56px */
	--fs-h1: clamp(2.375rem, 4vw, 2.75rem);        /* μεγάλοι τίτλοι 50px-56px */
	--fs-h2: clamp(2.375rem, 4vw, 2.75rem);       /* υπότιτλοι 38px-44px */
	--fs-h3: clamp(1.75rem, 3.5vw, 2rem);      /* μεσαίοι τίτλοι 28px-32px */
	--fs-h4: clamp(1.375rem, 3vw, 1.5rem);     /* μικροί τίτλοι 22px-24px */

  /* --- Paragraphs --- */
  --fs-body: clamp(1.125rem, 2.5vw, 1.25rem);   /* βασικό κείμενο 18px-20px */
  --fs-body-large: clamp(1.25rem, 3vw, 1.5rem); /* .p-large 20px-24px */

  /* --- Specials --- */
  --fs-subtitle: clamp(2rem, 3.5vw, 2.75rem); /* s1 τύπου subtitle 20px-44px */
}

@font-face {
	font-family: 'Bjorn'; font-style: normal; font-weight: 400;
	src: local('Bjorn'), url(../fonts/BjornRegular.woff) format('woff');
}

@font-face {
	font-family: 'Bjorn'; font-style: normal; font-weight: 300;
	src: local('Bjorn'), url(../fonts/BjornLight.woff) format('woff');
}

@font-face {
	font-family: 'Bjorn'; font-style: normal; font-weight: 900;
	src: local('Bjorn'), url(../fonts/Bjorn-hero.woff) format('woff');
}


h1 {color: var(--White);font-family: Bjorn;font-size: var(--fs-h1);font-style: normal;font-weight: 300;line-height: normal;letter-spacing: 0.16rem; text-wrap-style: balance;}
s1 {color: var(--White); font: normal 300 var(--fs-subtitle)/normal Repo, sans-serif; letter-spacing: 0.11rem;}
h2 {color: var(--White);font-family: Bjorn;font-size: var(--fs-h2);font-style: normal;font-weight: 400;line-height: normal;letter-spacing: 0.11rem; text-wrap-style: balance;}
.h2-light {font-weight: 300;}
h3 {color: var(--White);font-family: Bjorn;font-size: var(--fs-h3);font-style: normal;font-weight: 400;line-height: normal;letter-spacing: 0.08rem; text-wrap-style: balance;}
.h3-light {color: var(--White);font-family: Bjorn;font-size: var(--fs-h3);font-style: normal;font-weight: 300;line-height: normal;letter-spacing: 0.08rem; text-wrap-style: balance;}
h4 {color: var(--White);font-family: Bjorn;font-size: var(--fs-h4);font-style: normal;font-weight: 400;line-height: normal;letter-spacing: 0.06rem; text-wrap-style: balance;}
.h1-numbers {font-family:Repo; font-weight: 400;}
.h4-numbers {font-family: Repo; font-weight: 700; }
b1, p, label {color: var(--White);font: normal 300 var(--fs-body)/2rem /* 160% */ Repo, sans-serif; letter-spacing: 0.05rem; text-wrap-style: pretty; }

label {color:var(--Blue); font-size:0.8125rem;}

.p-large { font-size: var(--fs-subtitle);}
.p-orange {font-weight: 700; color: var(--Orange);}

strong {font-weight: 600;}
small {font-size:0.875rem;}
a:hover {text-decoration:underline;}

ul {color: var(--Blue, #151629); padding-left:20px;

/* B1 */
font-family: Repo;
font-size: var(--fs-body);
font-style: normal;
font-weight: 300;
line-height: 2rem; /* 160% */
letter-spacing: 0.05rem;
}

.bg-blue {background-color: var(--Blue) !important;}
.bg-orange {background-color: var(--Orange) !important;}
.txtblue {color: var(--Blue) !important;}
.txtorange {color: var(--Orange) !important;}
.txtbrown {color: var(--Brown) !important;}
.txtwhite {color: var(--White) !important;}
.red {color: red;}

.txtorange .num360 {color: var(--Orange);}

.container {  max-width: 1200px !important;}

.article-header { font-weight: 300;font-size: clamp(2.5rem, 3.5vw, 3rem);}
.article-subheader { color: var(--Orange); font-size: var(--fs-h3);}
/* = HEADER = */
/* micromenu*/
.header_micromenu {
	align-items: center;
	background: #000;
	padding: 0.42rem 2.5rem;
	justify-content: flex-end;
	gap: 0.62rem;
}
.micro-item {
	padding: 0 0.62rem;
	align-items: center;
	gap: 0.62rem;
}
.micro-item-m {
	width: 100%;
	justify-content: center;
}
.micro-item-m .micro_button {width: 100%; text-align: center;}

.module-mobile .modulang {display: flex; flex-direction: row-reverse;}
.module-mobile.modulang a:not(:last-child)::after {
  content: "";
  display: inline-block;
  width: 1px;
  height: 1em;
  background-color: #ccc;
  margin-left: 10px;
}
.module-mobile .modulang a {font-family: 'Repo'; font-size: 1.15rem; color: #FFF; text-transform: uppercase;}
.module-mobile .modulang a.curlang {color: var(--Orange);}
.micro_phone {
	color: #a7a7ae;
	font: normal 300 1rem/normal 'Repo';
	letter-spacing: 0.035rem;
	text-transform: uppercase;
}
.micro_button {
	padding: 0.75rem 1.25rem;
	border: 1px solid var(--Orange);
	color: var(--Orange);
	background-color:unset;
	font-family: Repo;
	font-size: 1rem;
	font-style: normal;
	font-weight: 500;
	line-height: normal;
	letter-spacing: 0.03rem;
	text-transform: uppercase;
	text-decoration: none;
	transition: all 0.3s ease-in-out;
}

.micro_button_mob {border:none; padding: 0rem;}

.micro_button:hover {
	border-color: var(--Gray);
	color: var(--Gray);
	text-decoration:none;
}

.swiper-arrow {animation: moveLeftToRight 1.1s linear infinite; background: 0; float:right;cursor:pointer; color: inherit;border: none;padding: 0 !important;font: inherit;transition: all 0.4s ease-in-out; }
.swiper-arrow-back.hidden, .swiper-arrow-next.hidden {opacity: 0;}
.swiper-arrow svg {width: 1.65rem; height: 1.65rem;}
.faq_arrow {animation: moveLeftToRightLow 1.5s linear infinite; vertical-align:middle;}

@keyframes moveLeftToRight {
  0% {
    transform: translateX(0);
  }
  50% {
    transform: translateX(10px);
  }
  100% {
    transform: translateX(0);
  }
}

@keyframes moveLeftToRightLow {
  0% {
    transform: translateX(0);
  }
  50% {
    transform: translateX(5px);
  }
  100% {
    transform: translateX(0);
  }
}

.hero-n { font-family:repo; text-transform:uppercase;}

.owl-nav {float:right; padding-top:1.25rem; padding-right:1.25rem;}

#micro-header {	display:none;}
#micro-header .divider { display: none;}

#hero-slider .swiper-slide {
	background-blend-mode: multiply, normal;
      position: relative;
      background-size: cover;
      display: flex;
      align-items: end;
      justify-content: flex-end;
      padding-right: 1rem;
	  padding-bottom: 1rem;
}

.hero-main-1 { 	
	background: linear-gradient(180deg, rgba(21, 22, 41, 0.3) 0%, rgba(21, 22, 41, 0.00) 64%, rgba(21, 22, 41, 0.3) 100%), url('../images/homeslider1.jpg?v=1') lightgray 0px 0px / 100% 100% no-repeat; 
	background-position: 74% 0;
	}

.hero-main-2 { 	
	background: linear-gradient(180deg, rgba(21, 22, 41, 0.3) 0%, rgba(21, 22, 41, 0.00) 64%, rgba(21, 22, 41, 0.3) 100%), url('../images/homeslider2.jpg?v=1') lightgray 0px 0px / 100% 100% no-repeat; 
	background-position: 41% 0;
	}

.hero-main-3 { 	
	background: linear-gradient(180deg, rgba(21, 22, 41, 0.3) 0%, rgba(21, 22, 41, 0.00) 64%, rgba(21, 22, 41, 0.3) 100%), url('../images/homeslider-image-3.jpg?v=1') lightgray 0px 0px / 100% 100% no-repeat; 
	background-position: 48.5% 0;
}

#hero-slider .slide-layer {display:flex; flex-direction: column; gap:0.40rem;}	
#hero-slider .slide-layer h1 {font-size: clamp(1.8125rem, 5vw, 2.80rem); font-weight:900;}
#hero-slider .slide-layer h2 {font-size: clamp(1.25rem, 4vw, 2.25rem); font-weight:300;}

.container-header_title {padding-bottom: 1.5rem; justify-items: end; text-align:right;}

.hero_cont {
	display:flex;
	flex-direction: column;
	justify-content: space-between;
	min-height: calc(100vh);
	height: calc(100vh);
	min-height: calc(100svh);
	height: calc(100svh);
	background: linear-gradient(180deg, rgba(21, 22, 41, 1) 0%, rgba(21, 22, 41, 0.00) 64%, rgba(21, 22, 41, 1) 100%), url('../images/img-top1.jpg') lightgray 0px 0px / 100% 100% no-repeat;
	background-image: url('../images/img-top11.jpg');
	background-blend-mode: multiply, normal;
	background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}
.container-header_hero {
	padding-top: 1rem;
}

.logo_menu_container {
	position:absolute; 
	z-index:1000;
	top:0.55rem;
	transition: all 0.4s ease, transform 0.4s ease;
}

.logo_menu_container.sticky, .container-header_hero.sticky {
	backdrop-filter: blur(10px);
	background-color: var(--Blue);
	border-bottom: 1px solid #3a3a3a;
	position: fixed;
	top:0;
	padding-top: 0;
	z-index:9999;
}

.logo_menu {
	justify-content: space-between;	
	max-width: 100%;
	transition: all 0.3s ease;
}

.hero-header.sticky {
  position: fixed;
  background: rgba(0, 0, 0, 0.8);
  backdrop-filter: blur(6px);
}

.logo_menu.hidden-nav {
	transform: translateY(-100%);
	opacity: 0;
}

.desktop-menu {display:none;}

figure.elx5_content_imagebox img {padding:0;border:0;}

/* MAIN QUALITIES */
.quality {
	align-items: center;
	flex: 1 0 0;
	text-align: center;
	font-family: Montserrat, serif;
	font-size: var(--fs-body);
	font-style: normal;
	font-weight: 300;
	line-height: normal;
	letter-spacing: 0.8px;
}

/* Images hover effect */
.img-wrapper {
  position: relative;
  display: inline-block;
  width: 100%;
  overflow: hidden;
  border-radius: 4px;
}

.img-wrapper img {
  display: block;
  width: 100%;
  height: auto;
  transition: transform 0.6s ease-out, opacity 0.8s ease;
  object-fit: cover;
}

.img-hover {
  position: absolute;
  top: -20%;
  left: 0;
  opacity: 0;
  z-index: 2;
  transform: scale(1);
}

.img-base {aspect-ratio: 16/9;}
.img-hover {aspect-ratio: 720/540;}

.img-wrapper:hover .img-hover {
  opacity: 1;
  transform: scale(1.03);
}

.img-wrapper:hover .img-base {
  transform: scale(1.03);
}

/* Τίτλος */
.img-wrapper .img-title {
  position: absolute;
  bottom: 20px;
  left: 20px;
  transform: translateY(-10px);
  opacity: 0;
  color: white;
  font-size: 1.8rem;
  font-weight: 300;
  text-shadow: 0 2px 10px rgba(0,0,0,0.6);
  transition: opacity 0.6s ease, transform 0.6s ease;
  z-index: 3;
  pointer-events: none;
}

/* Fade in τίτλου στο hover */
.img-wrapper:hover .img-title {
  opacity: 1;
  transform: translateY(0);
}

#under-study .img-wrapper .img-title { opacity: 1;}
#under-study .img-wrapper:hover .img-title {opacity: 0;}

.img-overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(21, 22, 41, 0.5) 0%, rgba(21, 22, 41, 0.0) 60%, rgba(21, 22, 41, 0.5) 100%);
  z-index: 3;
  pointer-events: none;
  transition: opacity 0.6s ease;
  opacity: 0;
}

.img-wrapper:hover .img-overlay {
  opacity: 1;
}

.img-title .h3-zoom { font-size: 1.25rem !important; font-weight: 600;}
.img-title .h4-zoom { font-size: 1rem !important; font-weight: 300;}

/* SECTION MAIN ABOUT */
.section-main-about {
	justify-content: center;
	align-items: center;
	align-self: stretch;
	background-image: url('../images/bg-lines-all.svg?v=1');
	background-repeat: no-repeat;
	background-position: -100 0;
}

.main-about-content {
	flex-basis:0;
	flex-direction: column;
	justify-content: center;
	align-items: flex-start;
	gap: 1.25rem;
	}
	
.main-about-image {flex-basis:0;}
.360-img-item {aspect-ratio: 811 / 699;}

/* icons sizes */
/*75%*/
.icon-100 {width: 75px;}
.icon-192 {width: 144px;}

.btn-yl {
	display: inline-flex;
	padding: 0.625rem 1.25rem;
	justify-content: center;
	align-items: center;
	gap: 0.1875rem;
	background: var(--Orange); 
    transition: all 0.5s ease-in-out;
}

.btn-yl:hover {
	background: var(--Gray);
	color: #ffffff;
}

.btn-yl:active {

}

a.btn-yl {
	font-size-adjust: 0.5;
	color: var(--Blue);
font-family: Repo;
font-size: 1.125rem;
font-style: normal;
font-weight: 500;
line-height: normal;
letter-spacing: 0.045rem;
text-transform: uppercase;
text-decoration: none;
	transition: all 0.3s ease;
}

a.btn-discover {
	color: var(--Orange);
	text-align: right;
	font-family: Repo;
	font-size: 1.125rem;
	font-style: normal;
	font-weight: 500;
	line-height: normal;
	letter-spacing: 0.045rem;
	text-transform: uppercase;
	text-decoration: none;
	padding-top:0.5rem;
	padding-bottom: 0.5rem;
}

a.btn-discover img{
	transition: all 0.2s ease-in-out;
}
a.btn-discover:hover img {
	transform: translateX(25%);
}

/* Κρυφό αρχικά */
.zoom-container {
  position: absolute;
  z-index: 999;
  top: 0;
  left: 0;
  width: 0;
  height: 0;
  overflow: hidden;
  pointer-events: none;
  transition: transform 0.3s ease-out, width 0.3s ease-out, height 0.3s ease-out;
}

.zoom-container img {
  position: absolute;
  width: 100%;
  height: 100%;
  object-fit: contain;
  transition: transform 0.3s ease-out;
}

.menu-long {display:none;}
body.menu-open {
  overflow: hidden;
  height: 100vh;
  touch-action: none;
}
.side-menu {
  position: fixed;
  top: 0;
  width: 100%;
  height: 100vh;
  padding: 2rem 1.5rem;
  background-color: var(--Blue);
  z-index: 9999;

  transform: translateX(100%);
  opacity: 0.8;
  pointer-events: none;

  transition: transform 0.5s ease, opacity 0.5s ease;
  
    overflow-y: auto; /* ✅ επιτρέπει scroll */
  -webkit-overflow-scrolling: touch; /* ✅ για smooth σε κινητά */
}

.side-menu.show {
  transform: translateX(0);
  opacity: 1;
  pointer-events: auto;
  transition: transform 0.5s ease, opacity 0.5s ease;
}
.mob-menu-close-icon {background: var(--Blue); border: none;}
.mob-menu-icon {background: none; border: none;}

/* HORIZONTAL MENU */
.nav-bar {display: flex;justify-content: space-between;align-items: center;}
.elx_menu { margin:0; padding:0; display:flex; flex-direction:column; align-items:left; list-style:none; font:normal 400 0.875rem/normal Bjorn, sans-serif; color:var(--White); width: 100%; }
.elx_menu li { margin:0; padding:1rem 0; border-bottom: 1px solid var(--Brown); display:inline-block; list-style:none; position:relative; z-index:100; }
.elx_menu li a { 
color: var(--White);letter-spacing: 0.56px;text-transform: uppercase; margin:0; padding:1.25rem; border:none; 
font:normal 400 1rem/normal Bjorn, sans-serif; text-decoration:none; outline:none; }
.elx_menu > li > a { margin:0 0 0 -4px; text-transform: uppercase; }
.elx_menu li.menu_active > a { background:none; color: #FFFFFF; }
.elx_menu > li.menu_active > a { background:none; color: #FFFFFF; }
.elx_menu li a:hover, .elx_menu li:hover > a { background: rgba(255, 255, 255, 0.10); color: #FFFFFF; }
.elx_menu > li[data-level0="subs"] > a:after { 
	display:inline-flex; 
	content: url(../images/icons/keyboard_arrow_down.svg);
	vertical-align:middle;
}
.elx_menu li[data-level1="subs"] a:after { display:inline-block; font-family:'Font Awesome 5 Free'; content: '\f105'; margin-left:4px; vertical-align: middle; font-weight: 900; }
.elx_menu ul { 
	opacity:0;
	visibility: hidden;
 margin:0 0 0 -4px; 
 padding:0; 
 list-style:none;
 width:290px; 
 position:absolute; 
 top:2.36rem; 
 left:0px; 
 transition: all 400ms ease;
 }
.elx_menu li:hover > ul { visibility: visible; opacity: 1; }
.elx_menu ul li { display:block; float:none; background:none; }
.elx_menu ul li a { 
	margin:0;
	padding:0.93rem 1.25rem; 
	border:none; 
	border-bottom:1px solid #FFF; 
	display:block; 
	font:normal 300 0.875rem/normal Bjorn, sans-serif; 
	color: var(--White); 
	text-decoration:none; 
	outline:none; 
	border-collapse: collapse;
}
.elx_menu ul li a:hover, .elx_menu ul li:hover > a {
	background: rgba(255, 255, 255, 0.10);
	margin:0; 
	display:block; 
	color:#FFFFFF; 
	text-decoration:none; 
	outline:none; 
	border-collapse: collapse;
}
.elx_menu ul ul { left:202px; top:0px; }

.swiper-gallery, .swiper-gallery-second {margin-bottom:2rem;}
 .swiper-gallery .swiper-slide, .swiper-gallery-second .swiper-slide {
    width: auto;
  }
  
.swiper-gallery .swiper-slide img, .swiper-gallery-second .swiper-slide img {
   display: block;
    height: auto;
	max-height:190px;
    max-width: 100%;
    border-radius: 0;
  }
  
.section-main-dream-home { 
	background-color: var(--Blue); 	
	background-image: url('../images/bg-lines-all-opacity.svg');
	background-repeat: no-repeat;
	background-position: 0 -187px; }
.container-dream-home, .container-technology-dream {padding-top: 6.25rem; padding-bottom: 6.25rem;}
.section-main-dream-home div p, .section-technology-dream div p {
	color: var(--White);
	text-align: center;
	font-family: Repo;
	font-size: clamp(1.875rem, 4vw, 2.60rem);  /* 32px-44px */
	font-style: normal;
	font-weight: 500;
	line-height: clamp(2.54rem, 4vw, 4rem); /* 145.455% */
	letter-spacing: 0.11rem;
}
.section-technology-dream div p {color: var(--Blue); text-transform: uppercase;	font-size: clamp(1.875rem, 4vw, 2.25rem); line-height: clamp(2.54rem, 4vw, 3rem);}

.section-main-dream-home div p strong, .section-technology-dream div p strong {font-weight: 700;}


/* SECTION MAIN 360*/
.section-main-360, .section_lets_talk {
	background-color: var(--Orange);
	background-image: url('../images/bg-lines-all-light.svg');
	background-repeat: no-repeat;
	background-position: 220px -293px;
}
.section_lets_talk {background-position: 200px -444px;}

.num360 {
color: var(--Blue);
font-family: Repo;
font-size: 2rem;
font-style: normal;
font-weight: 700;
line-height: 2.75rem;
letter-spacing: 0.08rem;
}

.image-360 {position:relative; overflow:hidden;}

.image-360>a>img, .image-360>a>picture>img
{ 
	width: 100%;
	transition: all .4s ease-in-out;	
	border-radius: 4px;
}

.image-360:hover>a>img, .image-360:hover>a>picture>img
{
   transform: scale(1.1);
}

.image-360:hover .middle {
  opacity: 1;
}

.middle {
  transition: all .5s ease-in-out;
  opacity: 0;
  position: absolute;
  top: 50%;
  left: 50%;
  width: 100%;
  height:100%;
  background: rgba(21, 22, 41, 0.80);
  transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  text-align: center;
}

.middle-text-360 {
	top: 46%;
    position: relative;
}
/*end 360*/


.gallery-item {position:relative; overflow:hidden; border-radius:4px;}

.gallery-item>a>img, .gallery-item>img  {
	width: 100%;
	transition: all .4s ease-in-out;	
	object-fit: cover;
}
.gallery-item:hover>a>img, .gallery-item:hover>img {
   transform: scale(1.1);
}

.gallery-item:hover .middle {
  opacity: 1;
}

.image-main-project {}



/* SECTION MAIN LETS-TALK*/


p.lets_talk_title {
	color: var(--Blue);
/* H3 light */
font-family: Bjorn;
font-size: 2rem;
font-style: normal;
font-weight: 400;
line-height: normal;
letter-spacing: 0.08rem;
}

.elx5_vlspace, .elx_vspace {margin-top:0; margin-bottom:0;}
button.elx5_sucbtn, button[type=submit].elx5_sucbtn, button[type=button].elx5_sucbtn, a.elx5_sucbtn, a.elx5_sucbtn:visited {background: var(--Blue); border:0; border-radius:0;}
button.elx5_sucbtn:hover, button[type=submit].elx5_sucbtn:hover, button[type=button].elx5_sucbtn:hover, a.elx5_sucbtn:hover {background: var(--Blue); border:0; border-radius:0;}
.elx5_sucbtn {color: var(--White, #FFF);
font-family: Repo;
font-size: 1.125rem;
font-style: normal;
font-weight: 500;
line-height: normal;
letter-spacing: 0.045rem;
text-transform: uppercase;}

input.elx5_text, input[type="text"].elx5_text, input[type="number"].elx5_text, input[type="file"].elx5_text, input[type="date"].elx5_text, input[type="range"].elx5_text, input[type="password"].elx5_text, input[type="email"].elx5_text {padding:10px 20px;}

/* pathway*/
ul.pathway{
	color: var(--Brown);
	padding: 0 0 0 2px;
font-family: Bjorn;
font-size: 0.875rem;
font-style: normal;
font-weight: 300;
letter-spacing: 0.035rem;
text-transform: uppercase;
flex-direction: row;
gap:0.5rem;
}

ul.pathway > li > a {
	color: var(--Gray);
	text-decoration: none;
}

ul.pathway > li > a:hover { text-decoration: underline;}

ul.pathway > li > a::after {
	content: url('../images/icons/chevron_right.svg');
	display: inline-block;
	position:relative;
	top: 6px;
	width: 20px;
	height:20px;
}

#services ul.pathway > li > a,
#technology ul.pathway > li > a,
#portfolio ul.pathway > li > a,
#page360 ul.pathway > li > a,
#woodwork ul.pathway > li > a,
#contact ul.pathway > li > a,
#faq ul.pathway > li > a { color:#FFF; }

#services ul.pathway > li > a::after,
#technology ul.pathway > li > a::after,
#portfolio ul.pathway > li > a::after,
#page360 ul.pathway > li > a::after,
#woodwork ul.pathway > li > a::after,
#contact ul.pathway > li > a::after,
#faq ul.pathway > li > a::after { content: url('../images/icons/chevron_right_wht.svg');}


/* MAIN SMART CHOICE */
.main-smart-choice h3 strong { font-weight:700; }

/* MAIN COMPLETED HOMES*/
.section-main-completedhomes, .section-about-smart, .section-about-welcome, .section-smart-energy {
	background: var(--Blue);
	background-image: url(../images/bg-lines-all.svg?v=1);
    background-repeat: no-repeat;
    background-position: 300px 0;
}

.section-main-completedhomes h3, .section-main-completedhomes .h3-light {font-size: 1.95rem;}

/* MAIN BLOG*/
/* About welcome */
.container-about-welcome {
	padding-top: 4.5rem;
	padding-bottom: 4.5rem;
	gap:2.5rem;
}
.termsfeed-com---nb .cc-nb-main-container {padding: 1rem;}
.termsfeed-com---nb-simple {left:0 !important; max-width:25%;}

.section-services-process {
	background-image: url(../images/bg-lines-all.svg?v=1);
    background-repeat: no-repeat;
    background-position: center 0;
}

.elx_article_page .bg-orange {
	background-image: url(../images/bg-lines-all-light.svg?v=1);
    background-repeat: no-repeat;
    background-position: center -100px;
}
.welcome-inside {
	gap: 2.75rem;
}
.review_inside_gap {gap: 1rem;}
.rsContent { background-color: #f8f8f8; padding: 1rem;}

.royalSlider .rsContent {
	display: flex;
	flex-direction: column;
	justify-content: center;
	height: 100%;
}
.royalSlider {height: 38.75rem;}

.founder-img-box {width: 100%}
.founder-img { width:100%; margin-top:1rem; border: 3px solid var(--Blue); }

/* About - Vision*/
.container-about-vision {
	gap: clamp(5rem, 5vw, 6.375rem);
}

/* About - Values*/
.values-inner {
	gap: 1.25rem;
	flex:1;
}

.container-about-guarantee {
	padding-top: 5rem;
	padding-bottom: 2.75rem;
	gap: 1.5rem;
}

p.smart-energy-sub {
	color: var(--Orange);
	font-family: Repo;
	font-style: normal;
	font-weight: 300;
	line-height: 2.125rem;
	letter-spacing: 0.06rem;
}

.energy-efficient-list li {color: var(--White); padding-bottom:0.5rem;}
.energy-efficient-list li::marker {color: var(--Orange);}

.round-4 {border-radius:4px;}

.aboutimg {margin-top: -7rem; transition: margin-top 1s ease-out;}
.aboutimg.visible {
  margin-top: -7rem; /* Moves up when visible */
}

/*about why choose*/
.section-why-choose {
	background: linear-gradient(0deg, rgba(21, 22, 41, 0.80) 0%, rgba(21, 22, 41, 0.80) 100%), url('../images/why-choose-bg.jpg') lightgray 50% / cover no-repeat;
	background-blend-mode: multiply, normal;
}

.why-choose-bottom > ul {color: var(--White);}

/* SERVICES / Discovery */
.container-services-discovery {gap: 3.38rem;}
.container-services-discovery > div > h3 {padding-bottom: 1.25rem;}

/* SERVICES - planning & prices */
.container-services-planning {
	gap: 1.5rem;
}
.services-planning-text{
	gap: 6.38rem;
}

.planning-text-1, .planning-text-2 {
	flex: 1 0 0;
}

.planning-text-1 h3, .planning-text-2 h3 {
	padding-bottom: 1.25rem;
	max-width: 95%;
}

.planning-text-1 p, .planning-text-2 p, .q_item > div > p {
	padding-top: 0.55rem;
}

.review-title {color: var(--Blue);}

/*home carousel*/
	.item-245 {width: 122px;}
	.item-436 {width: 218px;}
	.item-490 {width: 245px;}

/* SERVICES -- Architecture & Design */
.container-services-architecture { gap: 3.38rem; }
.container-services-architecture > div > h3 {padding-bottom:1.25rem;}

	.process-text {	margin-top:0rem;}
	
/* TECHNOLOGY - Why Ökohaus Ger Homes are the Future */
.container-technology-future { padding-top: 4rem; padding-bottom: 5rem; gap: 2rem; }
.container-technology-future > div > div > h4 { color: var(--Orange); padding-top: 1.25rem; padding-bottom: 0.75rem; }
.container-technology-future > div > div > p { color: var(--Light); }

.filepond--credits {display:none;} 
  /* TECHNOLOGY - QUALITIES */
.container-technology-qualities {gap: clamp(4rem, 5vw, 4rem);}
.q_item { gap: 1.5rem; }
.q_item > div > h3 {color: var(--Blue); padding-bottom: 1.25rem;}
.q_item > div > p {color: var(--Blue);}
.q_item > div > p > a, .link {
	color: var(--Blue);
	text-decoration-line: underline;
	text-decoration-style: solid;
	text-decoration-skip-ink: auto;
	text-decoration-thickness: 6%;
	text-underline-offset: 21.5%;
	text-underline-position: from-font;
}

/* TECHNOLOGY - Smart-Home Solutions */
.container-technology-solutions > div > h2 { color: var(--Blue); font-weight:300;}
p.solutions-subtitle {
	padding-bottom: 2rem;
	color: var(--Blue);
	font-family: "Roboto Condensed";
	font-size: 2rem;
	font-style: italic;
	font-weight: 700;
	line-height: normal;
	letter-spacing: 0.08rem;
}

.container-technology-solutions a {
	color: var(--Blue);
	text-decoration-line: underline;
	text-decoration-style: solid;
	text-decoration-skip-ink: auto;
	text-decoration-thickness: 6%;
	text-underline-offset: 21.5%;
	text-underline-position: from-font;
}

/* TECHNOLOGY - Our Factory */
.section-technology-factory, .section_footer { background: var(--Blue);}
.container-technology-factory > div > h2 {color: var(--Orange); padding-bottom: 2rem; font-weight:300;}
p.factory-bold {color: var(--White);font-family: "Roboto Condensed";font-size: 2rem;padding: 2rem 0;font-style: italic;font-weight: 500;line-height: 2rem;letter-spacing: 0.08rem;}

/* TECHNOLOGY - Your dream home, exactly as you imagined it */

div.elx5_category_summary {margin-bottom:2rem;}
.container-rest {padding-top: 4rem;}

.projects-box { background-color: #fff; box-shadow: 0px 2px 4px 0px rgba(0, 0, 0, 0.25); overflow:hidden;}

#elx_category_page_3  figure.elx5_content_imagebox img, #under-study figure.elx5_content_imagebox img { aspect-ratio:16/9; object-fit:cover; border-radius: 4px;}
#elx_category_page_3 .elx5_content_imagebox, #under-study .elx5_content_imagebox {
  position: relative;
  overflow: hidden;
  display: inline-block;
  border-radius: 4px;
    transition: transform 1s cubic-bezier(0.25, 0.8, 0.25, 1), box-shadow 1s cubic-bezier(0.25, 0.8, 0.25, 1); /* Αύξηση διάρκειας */

}


.timber-technology {
	background: linear-gradient(0deg, rgba(21, 22, 41, 0.80) 0%, rgba(21, 22, 41, 0.80) 100%), url(../images/timber.png) lightgray 50% / cover no-repeat;
    background-blend-mode: multiply, normal;
}

.container-timber-attributes { padding-top: 4rem; padding-bottom: 5rem; gap: 2rem; }
.container-timber-attributes > div > div > h4 { color: var(--Orange); padding-top: 1.25rem; padding-bottom: 0.75rem; }
.container-timber-attributes > div > div > p { color: var(--White); }

#timber-certificates img, #certifications img, #certifications2 img { height:auto; transition: transform 1s cubic-bezier(0.25, 0.8, 0.25, 1), box-shadow 1s cubic-bezier(0.25, 0.8, 0.25, 1); /* Αύξηση διάρκειας */ }
#timber-certificates img:hover, #certifications img:hover, #certifications2 img:hover { transform: scale(1.10);}

.projects-thumbnail a img {   transition: transform 0.25s ease-in 0.05s;
   transition: transform 1s cubic-bezier(0.25, 0.8, 0.25, 1), box-shadow 1s cubic-bezier(0.25, 0.8, 0.25, 1); }
.projects-thumbnail a img:hover { transform: scale(1.10); }


#elx_category_page_3 .elx5_content_imagebox img, #under-study .elx5_content_imagebox img {
  width: 100%;
  height: auto;
  transition: transform 0.25s ease-in 0.05s;
   transition: transform 1s cubic-bezier(0.25, 0.8, 0.25, 1), box-shadow 1s cubic-bezier(0.25, 0.8, 0.25, 1); /* Αύξηση διάρκειας */
}

#elx_category_page_3 .elx5_content_imagebox:hover, #under-study .elx5_content_imagebox:hover {
 /* box-shadow: 0 0 8px var(--Orange), 0 0 16px var(--Orange); */

}

#elx_category_page_3 .elx5_content_imagebox:hover img, #under-study .elx5_content_imagebox:hover img { transform: scale(1.10); }
#elx_category_page_3 .elx5_content_imagebox:active img, #under-study .elx5_content_imagebox:active img { transform: scale(1); }

#elx_category_page_3 .elx5_artbox_inner h4 a {font-size:1.25rem;}
#elx_category_page_3 .elx5_artbox_inner {padding-left: 3px;}

#elx_category_page_3 .elx5_artbox_inner h4 a, #under-study .elx5_artbox_inner h4 a  {color: #fff;  transition: all 0.25s ease-out 0.05s;}

#elx_category_page_3 .elx5_content_imageboxml:hover + .elx5_artbox_inner h4 a {color: var(--Orange) !important;}
#under-study .elx5_content_imageboxml:hover + .elx5_artbox_inner h4 a {color: var(--Blue) !important;}

#hero-slider .swiper-button-next, #hero-slider .swiper-button-prev {display:block;}
.swiper-button-next, .swiper-button-prev {display:none;}
.fade-in {
  opacity: 0;
  transform: translateX(100px);
  transition: opacity 0.3s ease-out, transform 0.8s ease-out;
}
.fade-in.show {
  opacity: 1;
  transform: translateX(0);
}

.flow-in {
  opacity: 0;
  filter: blur(5px); /* Πιο έντονο blur αρχικά */
  transform: scale(0.98); /* Ελάχιστο scale για πιο φυσικό εφέ */
  transition: opacity 1s ease-out, filter 1s ease-out, transform 1s ease-out;
}
.flow-in.show {
  opacity: 1;
  filter: blur(0);
  transform: scale(1);
}

/* Contact Page */
.section-contact { background: var(--Blue); background-image: url(../images/bg-lines-all.svg?v=1);
    background-repeat: no-repeat;
    background-position: 300px 0; }
.container-contact {
	padding-top: 4rem;
	padding-bottom: 5rem;
}
.container-contact h1 {color: var(--Orange);}
.pg_contact_info div {gap:0.62rem;}

.pg_contact_info, .pg_contact_info div div a {color: #FFF;font-family: Repo;font-size: 1.25rem;font-style: normal;font-weight: 300;line-height: normal;text-decoration:none;letter-spacing: 0.05rem;}

.elx_ytvideo {margin: 1rem 0;}

.att-gap {gap: 2rem;}
.proj-features {column-gap: 2rem; row-gap:1.88rem;}

.quote_sticky {display: none; margin-left: 0.55rem;}
.quote_sticky_display {display: flex;}
/* -----------------*/
/* SECTION - FOOTER */
/* -----------------*/
.container-footer {
	padding-top: 4rem;
	padding-bottom: 2rem;
	display: flex;
	flex-direction: column;
	gap: 3.25rem;
}

.footer_logo_row {
	align-items: flex-start;
	gap: 3.25rem;
	align-self: stretch;
}

.footer-logo {width:100px;}
.header-logo {width:70px;}

.footer_logo_right {
	align-items: flex-start;
	gap: 3.25rem;
	align-self: stretch;
}

.footer_index {min-width: 120px;}

.footer_section_copyright {
	gap:1rem;
	
}

.footer_contact {
	color: var(--White);
	font: normal 300 0.875rem/normal 'Repo', serif; 
	font-family: Repo, serif;
	letter-spacing: 0.035rem;
}

.ft-sm {
	color: var(--Orange);
	font: normal 400 0.875rem/0.9375rem 'Repo', sans-serif;
	letter-spacing: 0.025rem;
	text-transform: uppercase;
}

.ft-contact {
	font-size: 0.875rem;
	letter-spacing:0.035rem;
}

.footer_copyright {display:flex;color: var(--Brown);font-family: 'Repo', sans-serif;font-size: 0.8125rem;font-style: normal;font-weight: 300;line-height: 15px; 
letter-spacing: 0.4px; text-transform: uppercase; gap:1rem;}

.footer_terms {line-height:15px; display:flex; gap:0.15rem;}
.footer_terms a {
	color: var(--Light);
font-family: 'Repo', sans-serif;
font-size: 0.8125rem;
font-style: normal;
font-weight: 300;
line-height: 0.9375rem;
letter-spacing: 0.025rem;
text-transform: uppercase;
text-decoration:none;
}
.footer_terms a:hover {text-decoration:underline;}

.footer_contact div, .footer_faq div {gap:0.7rem;}

ul.elx_vmenu {
	padding-left:0;
	line-height:normal;
	font-size: 0.875rem;
}
.elx_vmenu li {padding-top: 0.5rem;}
.elx_vmenu li > a, .footer_faq a, .footer_contact div div a {
		color: var(--White);
font-family: 'Repo', sans-serif;
font-size: 0.95rem;
font-style: normal;
font-weight: 300;
line-height: normal;
letter-spacing: 0.56px;
text-decoration:none;
	}
.elx_vmenu li > a:hover, .footer_faq a:hover, .footer_contact div div a:hover, .pg_contact_info div div a:hover {text-decoration:underline;}

.hr-divider {width: 100%; height: 1px;background: #C0733A; display:block;margin: 0.82rem 0px;}
hr {border-top:0;}
.hr-v { height: 85%; width: 1px; background: var(--Orange);}
.hr-c { height: 1px; width: 100%; background: #F2F2FA;}
.hr-process {height:100%; margin-top:-1rem; width:2px;position:relative;z-index:1; margin: 0 auto;}
.process-group p {color:var(--Light);padding-top:0.62rem;}
.circle {background-color: var(--Blue); top:calc(50% - 0.15rem); position:relative; z-index:100; border: 1px solid var(--Orange);padding: 4px 12px;border-radius: 45px; color:#FFF; font-size:1.25rem;font-family: Repo;font-weight:900;}
.circle-rest {top: calc(50% + 1.15rem);}

.process-box { gap:1rem;}
.process_numbers {
	width:10.25rem; 
	justify-items:center;
	position: relative;
    top: -35px;
    left: 5px;
	
}

h5.footer {
	color: var(--Orange);
	font-family: Bjorn;
	font-size: 1rem;
	font-style: normal;
	font-weight: 400;
	line-height: normal;
	letter-spacing: 0.56px;
	text-transform: uppercase;
}

.footer_logo p {
	margin-top:0.5rem;
	color: var(--White);
	font-family: 'Repo', serif;
	font-size: 1rem;
	font-style: normal;
	font-weight: 300;
	line-height: normal;
	letter-spacing: 0.56px;
	white-space:nowrap;
}

a.btn_faq_more {
	text-transform: uppercase;
    font-weight: 400;
    font-size-adjust: 0.5;
	color: var(--Orange);
}
a.btn_faq_more:hover {
	text-decoration: none;
}
a.btn_faq_more img{
	transition: all 0.2s ease-in-out;
}
a.btn_faq_more:hover img {
	transform: translateX(25%);
}

/*form*/
fieldset.elx5_fieldset legend {display:none;}
fieldset.elx5_fieldset {display:flex; gap:1.5rem; margin:0;padding:0;border:0;background:none; }
label.elx5_label, label.elx5_labelsmall {display:none;}
.elx5_labelside {margin:0;}
.elx5_formrow {margin:0;}
.elx5_tip {display:none;}

.fancybox__container {z-index:9999;}
.fancybox__content>.carousel__button.is-close {background-color: var(--Orange); color: var(--Blue); border-radius: 12px;}

/*PAGE : FAQ*/
.faq-section {
  margin-top: 2rem;
  display:flex;
  flex-direction:row;
  gap: 1rem;
}

.faq-content {display:flex; flex-direction:column; gap:0.60rem;}
.faq-content h3 { margin-top:0 !important; margin-bottom:0 !important; color: var(--Orange) !important;}

.faq-item {
  display:flex;
  flex-direction:column;
}

.faq-item input {
  display: none;
}

.faq-question {
  display: flex;
  justify-content: space-between;
  gap:1rem;
  align-items: center;
  cursor: pointer;
  padding: 1.5rem;
  background: var(--Blue);
  color: var(--White);
  font-size: var(--fs-body);
  line-height: 1.40rem;
  position: relative;
  border: 1px solid #ffffff1a;
  border-radius:12px 12px 0 0;
  letter-spacing: 0.05rem;
  font-family:'Repo';
  transition: background 0.25s ease;
}
.faq-question:hover, .faq-question:active { background: #ffffff1a;}

.faq-question.active {
	background: #ffffff1a;
}

.faq-answer {
  max-height: 0;
  overflow: hidden;
  background: var(--White);
  transition: all 0.15s ease-in;
  opacity:0;
  visibility: hidden;
  border-radius: 0 0 12px 12px;
  letter-spacing: 0.05rem;
  font: normal 300 var(--fs-body) / 2rem Repo, sans-serif;
}

.faq-answer .faq-answer-txt {
  padding: 1.5rem;
  opacity: 0;
  transition: opacity 0.25s ease 0.025s;
}

.faq-answer.open .faq-answer-txt {
  opacity: 1;
}

.faq-answer.open {
	 opacity: 1;
	 visibility: visible;
  }

.faq-question.active .faq-svg-icon {
	transform: rotate(180deg);
}

.faq-svg-icon {
transition: transform 0.3s ease;
width: 16px;
height: 16px;
flex-shrink: 0;
  }

/* --------------------- */
/* Slideshow container */
/* --------------------- */
.slideshow-container {
  position: relative;
}

/* Slides */
.mySlides {
	opacity:0;
	position: absolute;
	padding: 0 6.25rem;
	text-align: left;
	transition: all 1.25s;  
}

.mySlides-close {
	opacity: 0;
	scale: 0;
	width: 0;
}

/* Next & previous buttons */
.prev, .next {
  cursor: pointer;
  position: absolute;
  top: 50%;
  width: auto;
  margin-top: -30px;
  padding: 16px;
  color: #888;
  font-weight: bold;
  font-size: 20px;
  border-radius: 0 3px 3px 0;
  text-decoration:none;
  user-select: none;
}

.iti__country-name, .iti__dial-code {font-size: 13px;}
.iti__country-list {z-index: 99999;}

/* Position the "next button" to the right */
.next {
  position: absolute;
  right: 0;
  border-radius: 3px 0 0 3px;
}

/* On hover, add a black background color with a little bit see-through */
.prev:hover, .next:hover {
  color: black
  text-decoration: none;
}

/* The dot/bullet/indicator container */
.dot-container {
  text-align: center;
  padding: 20px;
  background: #ddd;
}


/* Add an italic font style to all quotes */
q {
	color: var(--Blue);
	font-family: Roboto;
	font-size: var(--fs-body);
	font-style: italic;
	font-weight: 300;
	line-height: 2rem; /* 160% */
	letter-spacing: 0.05rem;
}

  media-fullscreen-button, media-menu-button {
    display: none !important;
  }

/* Add a blue color to the author */
.author {
	color: var(--Brown, #C0733A);
/* H4 */
font-family: Bjorn;
	font-size: var(--fs-body);
font-style: normal;
font-weight: 400;
line-height: normal;
letter-spacing: 0.06rem;
padding-top: 1.25rem;
}

/* main blog posts */
.main-blog-row {gap: 1.5rem;}
.elx5_artbox {flex:1; display:flex; flex-direction: column;}
figure.elx5_content_imageboxtl {width:100%; margin:0 0 1.5rem 0;}
figure.elx5_content_imageboxtl img, figure.elx5_content_imageboxtr img {border:0;padding:0;margin:0;}
.elx5_artbox_inner > h4 > a {color: var(--Blue); text-decoration: none;}
.elx5_artbox_inner > h4 > a:hover {text-decoration: underline;}

/* blog*/
figure.elx5_content_imageboxml {width:100%;}
#elx_category_page_5 .elx5_category_header {display:none;}
#elx_category_page_5 {padding-top:4rem;padding-bottom:4rem;}
#elx_category_page_5 figure.elx5_content_imagebox { margin: 0; }
#elx_category_page_5 .elx5_artbox_inner h4 {padding-bottom: 0.62rem;}
#elx_category_page_5 .elx5_artbox_inner{margin-bottom: 1.5rem}
#elx_category_page_5 .elx_more {
	margin-top:1.5rem; width: fit-content;
}

/* articles*/
div.elx_article_page p {color: var(--Blue);padding-bottom:0.62rem;}
div.elx_article_page {padding-top: 4rem; padding-bottom:4rem;}
div.elx_article_page h3 {margin-top:4rem; margin-bottom:1.5rem; color:var(--Blue);}

/* Terms of Use - Privacy Policy pages */
#elx_article_page_17 h1, #elx_article_page_18 h1 {color: var(--Blue);}
#elx_article_page_18 h3 {color: var(--Blue); margin-top:2rem;margin-bottom:1rem;}

/* PARTNERS */
#elx_article_page_20 {
	padding-top:2rem;
	padding-bottom:5rem;
}

#elx_article_page_20 h3 {
	color: var(--Brown);
	margin-top:0;
}
#elx_article_page_20 p {padding-bottom:0.62rem;}


/* 360 */
#elx_article_page_28 {
	padding-top:2rem;
	padding-bottom:5rem;
}
#elx_article_page_28 h3 {
	margin-top:0; margin-bottom:0;
}

/* Category :: Projects page*/
/*#elx_category_page_3 .elx5_category_header {display: none;} */
.elx5_category_header {margin-bottom:0;}
.elx5_category_header h1 {margin-top:2rem;}
#elx_category_page_3 {padding-bottom: 5rem;}
#elx_category_page_3 .elx5_category_summary h3 {color: var(--Orange); padding-top:2rem; padding-bottom:2rem;}
#elx_category_page_3 .elx5_category_summary a {color: var(--Light);text-decoration-line: underline;text-decoration-style: solid;text-decoration-skip-ink: auto;text-decoration-thickness: 6%;text-underline-offset: 10.5%;text-underline-position: from-font;} 

/* Map */
.map-info-box {position: absolute; top: 5px; left: 5px; padding: 0.5rem; background-color: transparent;border-radius:2px;box-shadow:rgba(0, 0, 0, 0.3) 0px 1px 4px -1px;}
.map-larger-map {font-family:'Repo'; position: absolute; top: 5px; right: 5px; padding: 0.6rem 1rem;}

.map-direction {float:left;text-align:center; display:flex; flex-direction: column; gap: 0.5rem;}
.map-direction a {color: #cb110e;font-family:'Repo'; text-transform: uppercase; text-decoration:none; font-size:0.875rem;}
.map-direction a:hover {text-decoration: underline;}
.map-link { color: var(--Blue);font-family:'Repo';text-transform: uppercase; font-size:0.875rem; text-decoration:none;}

/* partners*/
.project-filter-wrapper {padding-top: 2rem;}
.project-item {padding-bottom:2rem; padding-right:2rem;}

#timber p {color: var(--Blue);}
#timber-certifications p {padding-bottom:1rem;}
[data-media-player] {display: flex;}

html.on-lg,
html.on-lg body {
  overflow: hidden !important;
  overflow-y: hidden;
}

.embed-responsive {
    margin-bottom: 2rem;
    aspect-ratio: 4 / 3;
    width: 100%;
	position: relative;
    display: block;
    padding: 0;
    overflow: hidden;
}
.embed-responsive .embed-responsive-item, .embed-responsive embed, .embed-responsive iframe, .embed-responsive object, .embed-responsive video{
	position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: 0;
}

.modulang a:first-of-type::before {
  content: "|";
  margin: 0 16px;
  color: var(--Orange);
  font-weight: 100;
}

.flex-100 {
    flex: 1 0 0;
}
.btn-bsm {
	padding: 0.5rem 1.25rem;
	background: var(--Blue);
}
a.btn-bsm {
	font-size-adjust: 0.5;
	color: var(--White, #FFF);
	font-family: Repo;
	font-size: 0.75rem;
	font-style: normal;
	font-weight: 500;
	line-height: normal;
	letter-spacing: 0.03rem;
	text-transform: uppercase;
	text-decoration: none;
}
.elx5_artbox_inner p {margin-bottom:0;color:var(--Blue);}

#rs-next-button, #rs-prev-button { cursor: pointer;}

.dropzone {padding: 0.625rem 1.2rem; color: var(--Gray); font-family: 'Repo'; font-size: 0.95rem; line-height:1.25rem;}
.dropzone .dz-message {margin:0; text-align:left;}
.hide {
    display: none!important;
}

.iti {
  width: 100%; /* Ή βάλτο σε px: π.χ. 300px */
}

.iti input {
  width: 100%;
}

.iti--separate-dial-code .iti__selected-flag {
  width: 88px; /* Ρύθμιση του πλάτους του dial code */
}

/*images helper */
.img-fluid {
  max-width: 100%;
  height: auto;
}
/* SPACING */
.sp2 { padding-top: 2rem; padding-bottom: 2rem;}
.sp4 { padding-top: 4rem; padding-bottom: 4rem;}
.sp5 { padding-top: 5rem; padding-bottom: 5rem;}
.sp7-5 { padding-top: clamp(5rem, 5vw, 7.5rem); padding-bottom: clamp(5rem, 5vw, 7.5rem); }

/* GAP */
.gap1_25{gap:1.25rem;}
.gap1_5{gap:1.5rem;}
.gap_2{gap:2rem;}
.gap2_75{gap:2.75rem;}
.gap_4{ gap: clamp(3.5rem, 5vw, 4rem);}
.gap_6{ gap: clamp(3.5rem, 5vw, 6rem);}
.gap-sm-lg { gap: clamp(1rem, 3vw, 4rem); }

.valid { background-color: #dfffe1 !important;}


[id]:not(#sticky-menu):not(#mob-navigation) {
  scroll-margin-top: 120px;
}

.container-main-about {gap:2.5rem;}
.discovery-img {width: 100%; height: auto;}
.architecture-img {width: 100%; height: auto;}
.home-about-img {width: 100%; height: auto;}
.tech-factory-img {width: 100%; height: auto;}
.smarthome-img  {width: 100%; height: auto;}
	.dropzone {height: 2.626rem !important; border:0; min-height: 2.626rem !important;}
.is-stuck	{position: fixed;
    left: 0;
    right: 0;
    top: 0;
    z-index: 99;
    border: none !important;
    transition: all .2s ease-in;}

#mobcta {display:block;}

@media (min-width: 576px) {  }

@media (min-width: 768px) { 
.ft-divider {width: 1px;height: 15px; background: #C0733A;margin: 0px 10px;} 
.360-img-item {aspect-ratio: 1176 / 473;}
.container-header_hero {padding-top: 2rem;}
.container-header_title {padding-bottom: 3.50rem;}
ul.pathway{
	flex-direction: row;
	gap:0;
}

}


@media (min-width: 992px) { /* lg*/
	.hero-main-1 { 	 background-position: center; }
	.hero-main-2 { 	 background-position: center; }
	.hero-main-3 {  background-position: center; }
	#micro-header {	display: block;top: 0; z-index: 9999; background: var(--Blue);}
	#micro-header .divider {	display: block;	width: 1px;	height: 1.68rem; background: #FFF;	}
	#mobcta {display:none;}
	.logo_menu_container { top:90px; }
	.modulang a:first-of-type::before { display:none;}
	.elx_menu {
		flex-direction:row;
		align-items:baseline;
		width: auto;
	}
	.elx_menu li {padding:0; border-bottom:0;}
	.elx_menu li a {font-size:0.875rem;}
	.navbar-toggler {display:none;}
	.mob-menu-icon {display: none;}
	h5.footer {max-width: 180px}
	.micro_phone {
		color: #FFF;	
		font: normal 300 0.875rem/normal 'Repo';
	}
	.micro_button {	font-size: 0.75rem; padding: 0.75rem 1.25rem;}
	.desktop-menu {display: flex;flex-direction: row; align-items: center;}
	.container-about-welcome {gap:0;}
	.hover-swap {
  transition: opacity 0.25s ease-in-out;
}
.iti {
  width: 215px; /* Ή βάλτο σε px: π.χ. 300px */
}
	.founder-img-box {width: 551px;}
	.founder-img { margin-left:3.5rem; width:407px; height: 655px; margin-top: -9.85rem; margin-bottom: 2.25rem; aspect-ratio: 551/885; }
	
	.container-services-discovery {gap: 6.38rem;}
	.discovery-img {width:428px;}
	.tech-factory-img  {width: 476px;}
	.smarthome-img {width: 476px; }
	
	.container-main-about {gap: 1.5rem;}
	.home-about-img {margin-top: 2rem;}
	.att-gap {gap: 0rem;}
	.proj-features {column-gap: 4rem; row-gap:1.88rem;}
	
	.footer_terms {gap:0;}
	.footer_section_copyright {
	gap:0;
	}
	.earth_q {max-width: 350px; }
	.swiper-gallery .swiper-slide img, .swiper-gallery-second .swiper-slide img {
	max-height:320px;
  }
	/*bgs*/
	.section-main-about {
		background-position: 300px 0;
	}
	.section-main-dream-home { 
	background-position: 202px -142px; }
}

@media (min-width: 1200px) { 
	.gap-lg-1_25 {gap:1.25rem;}
	.w-75-lg {width: 75%;}
	.discovery-img {width:498px;}
	
	.container-services-architecture { gap: 6.38rem; }
	.architecture-img {width: 576px;}
	.home-about-img {margin-bottom: -32rem; width: 578px;}
	.review_inside_gap {gap: 2.5rem;}
	.icon-100 {width: 100px;}
	.icon-192 {width: 192px;}
	.circle {border: 2px solid var(--Orange);}
	.process-box { gap:0rem;}
	.process_numbers {top: 0;left: 0;}
	.process-text {
		align-self:center; margin-top:4rem;
	}
	#elx_article_page_28 .process-text {margin-top: 0;}
	
	.w-lg-75 {width: 75% !important;}
	.item-245 {width: 245px;}
	.item-436 {width: 436px;}
	.item-490 {width: 490px;}
	
	.footer_logo_row, .footer_logo_right, .container-footer {gap: 5.25rem;}
	.footer-logo {width:78px;}
	.header-logo {width:78px;}
	.hero_cont {
		min-height: calc(100vh - 55px);
		height: calc(100vh - 55px);
	}
	#hero-slider .swiper-slide {
      padding-right: 8rem;
	  padding-bottom:2.15rem;
}
	.hero-svg {width:800px;}
	
	.dz-default .dz-message, .dropzone .dz-message {margin: 0;}
	.dropzone .dz-message .dz-button {color: #7d7d7d;}
	
	.royalSlider {height: 15rem;}
	
}
	

}

@media (min-width: 1400px) {  }

@media (min-width: 1920px) and (min-aspect-ratio: 21/9) {
  /* This targets ultrawide displays only */
  .hero_cont {max-width: 1920px; margin:0 auto;}
}

@media (max-width: 992px) {
  /* Βασική δομή mobile μενού */
  .cert-item {min-width: 45%}
  .cert-last-item {max-width:47%}
  .elx_menu {
    flex-direction: column;
    align-items: flex-start;
  }

  .elx_menu li {
    display: block;
    width: 100%;
	padding:0;
    border-bottom: 0;
  }

  .elx_menu li > ul {
    display: none;
    position: static;
    opacity: 1;
    visibility: visible;
    width: 100%;
    background-color: rgba(255,255,255,0.05); /* Ή άλλο χρώμα φόντου */
    margin: 0;
    padding: 0;
  }
  
  .elx_menu li a {display: block; border-bottom: 1px solid var(--Brown);}
  .elx_menu ul li a {border-bottom:0; padding: 1rem;}
  .elx_menu ul li {border-bottom:0;}
  
  .elx_menu > li > a {
  outline: none; /* Αφαιρεί το outline */
  -webkit-tap-highlight-color: transparent; /* Αφαιρεί το μπλε highlight σε mobile */
}

.elx_menu > li > a:focus,
.elx_menu > li > a:active {
  background: none; /* Ή όποιο background θες */
  color: #FFFFFF;
  outline: none; /* Αφαιρεί το outline */
}

  /* Ενεργοποίηση υπομενού όταν ανοίξει */
  .elx_menu li.open > ul {
    display: block;
	margin-bottom: 1.5rem;
  }

  /* Αφαίρεση hover για mobile */
  .elx_menu li:hover > ul {
    opacity: 1;
    visibility: visible;
  }

  /* Αφαίρεση absolute nested submenus */
  .elx_menu ul ul {
    left: 0;
    top: 0;
  }

  /* Περιστροφή του βελάκι-εικονιδίου όταν είναι ανοιχτό */
  .elx_menu > li[data-level0="subs"] > a:after {
    transform: rotate(0deg);
    transition: transform 0.3s;
	float:right;
  }
  .elx_menu li.open > a:after {
    transform: rotate(180deg);
  }
  
  .micro_phone a {color: #a7a7ae; text-decoration: none;}
  .elx_googlemap {min-width: 90vw;}
  
}


