*,
*::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, 'Play';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, 'Play';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, 'Play';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, 'Play';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, 'Play';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;}
.bg-gray {background-color: #f5f6f8 !important;padding-top: 1rem !important;
    padding-bottom: 0.75rem !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);}

#page360 h4 {text-wrap: auto;}
.pg360-sm-title {font-size: clamp(1.15rem, 3vw, 1.25rem); display:block; }

.container {  max-width: 1320px !important;}

.fix-pathway {position: sticky; top: 100px; z-index: 999; border-bottom: 1px solid rgba(21, 22, 41, .05);}
.section-bg-wrap {position: absolute; overflow:hidden; inset: 0; z-index: 0; pointer-events: none;}

.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;
}

.projects-section {
  display: none;
  opacity: 0;
  transition: opacity 0.2s ease;
}

.projects-section.active {
  display: block;
  opacity: 1;
}

.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;}

.faq-categories-wrapper {position: sticky; top: 142px; padding-top: 6px; z-index: 999; border-bottom: 1px solid rgba(21, 22, 41, .05); background: var(--Blue);}

@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; z-index:2;}

.logo {z-index: 2;}
.hero_cont{
  position:relative;
  display:flex;
  flex-direction:column;
  justify-content:space-between;

  min-height:100svh;
  height:100svh;

  background-image:url('../images/img-top11.jpg');
  background-size:cover;
  background-position:center;
  background-repeat:no-repeat;
}

.hero_cont::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(
    180deg,
    rgba(21,22,41,0.70) 0%,
    rgba(21,22,41,0.40) 30%,
    rgba(21,22,41,0.10) 60%,
    rgba(21,22,41,0.50) 100%
  );
  pointer-events:none;
  z-index:1;
}

.container-header_hero {
	padding-top: 1rem;
	z-index: 2;
}

.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;
}

.container-header_hero.sticky {left:0;}

.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;
}

.projects-page-intro h1 {
	margin-bottom: 0;
}

.projects-page-intro h1::after {
	display: block;

	width: 70px;
	height: 4px;
	margin: 24px 0;

	border-radius: 10px;
	background: var(--Orange);

	content: "";
}


/* Images hover effect */
.img-wrapper {
  position: relative;
  display: flex;
  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;}

.faq-lower-s {font-size: 0.70em;}

mark {background-color: #ffee3c;}

/* ===============================
   PROJECTS TABS – FINAL (DESKTOP + MOBILE SAFE)
   =============================== */

/* -----------------
   TABS
------------------ */

.projects-tabs {
  display: flex;
  gap: 10px;
  justify-content: center;
  align-items: center;
  margin: 14px 0 10px;
  margin-bottom: 18px;
  flex-wrap: wrap;
}

.projects-tabs .projects-tab {
  appearance: none;
  -webkit-appearance: none;
  border-radius: 999px;
  padding: 8px 14px;
  min-height: 36px;

  width: auto;
  min-width: 120px;
  max-width: 200px;

  font-size: 13px;
  line-height: 1;
  font-weight: 500;
  letter-spacing: 0.2px;

  background: transparent;
  color: rgba(21, 22, 41, 0.72);
  border: 1px solid rgba(21, 22, 41, 0.45);

  cursor: pointer;
  user-select: none;

  transition:
    background-color .18s ease,
    border-color .18s ease,
    color .18s ease,
    box-shadow .18s ease,
    transform .18s ease;
}

.projects-tabs .projects-tab:hover:not([aria-selected="true"]) {
  background: rgba(21, 22, 41, 0.06);
  border-color: rgba(21, 22, 41, 0.6);
  color: rgba(21, 22, 41, 0.88);
  transform: translateY(-1px);
}

.projects-tabs .projects-tab[aria-selected="true"],
.projects-tabs .projects-tab.active {
  background: #F2A134;
  color: #151629;
  border-color: #F2A134;
  box-shadow: 0 10px 24px rgba(0, 0, 0, 0.18);
  cursor: default;
}

.projects-tabs .projects-tab:focus-visible {
  outline: none;
  box-shadow: 0 0 0 3px rgba(242, 161, 52, 0.25);
}

.projects-tabs{
  position: relative;
  z-index: 90;
  display: flex;
  gap: 32px;
  align-items: center;
  background: #fff;
}

.projects-tabs.is-fixed{
  position: fixed;
  top: 0;
  left: 50%;
  padding: 14px 0;
  transform: translateX(-50%);
  width: 100%;
  z-index: 95;
  background: var(--Blue);
  backdrop-filter: blur(8px);
  box-shadow: 0 8px 24px rgba(21,22,41,0.06);
}

.projects-tabs-anchor{
  display: none;
}

.projects-tabs-anchor.is-active{
  display: block;
}

.projects-tab{
  background: none;
  border: 0;
  padding: 10px 0;
  cursor: pointer;
  font: inherit;
  color: #151629;
  opacity: .62;
  position: relative;
  transition: opacity .2s ease;
}

.projects-tab:hover,
.projects-tab.active{
  opacity: 1;
}

.projects-tab.active::after{
  content: "";
  position: absolute;
  left: 0;
  bottom: -14px;
  width: 100%;
  height: 2px;
  background: #F2A123;
}

/* projects under study cta */
/* ================================
   CTA BUTTONS – PROJECTS (UNIFIED STYLE)
   Oval shape + premium hover
================================ */

/* Wrapper (optional alignment) */
.okh-project-cta{
  display:flex;
  justify-content:center;
  gap:16px;
  margin-top:16px;
  flex-wrap:wrap;
}

/* Base button */
.okh-btn-oval{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:12px 26px;
  min-width: 240px;
  font-size:14px;
  font-weight:500;
  letter-spacing:0.3px;
  text-decoration:none;
  border-radius:999px; /* OVAL */
  transition:all 0.3s ease;
  position:relative;
  overflow:hidden;
  border: 1px solid rgba(255, 255, 255, 0.75);
}

.okh-btn-oval:hover{
	 border: 1px solid var(--Orange);
}
/* PRIMARY (yellow) */
.okh-btn-primary{
  background:var(--Orange);
  color:#151629;
  border: 1px solid rgba(255, 255, 255, 0.75);
  font-weight: 600;
  font-size: 14px;
}

.okh-btn-primary:hover{
  background:var(--White);
  text-decoration: none;
  transform:translateY(-2px);
  box-shadow:0 6px 18px rgba(0,0,0,0.15);
  border: 1px solid var(--Orange);
}

/* OUTLINE (dark style) */
.okh-btn-outline{
  background:transparent;
  color:#ffffff;
  border:1px solid rgba(255,255,255,0.4);
  font-weight: 600;
  font-size: 14px;
}

.okh-btn-outline:hover{
  background:#ffffff;
  color:#151629;
  border-color:#ffffff;
  transform:translateY(-2px);
  box-shadow:0 6px 18px rgba(0,0,0,0.15);
  text-decoration: none;
}

/* Arrow animation */
.okh-btn-oval span, .okh-360-cta span, .mid-cta-button span {
  margin-left:6px;
  transition:transform 0.25s ease;
}

.okh-btn-oval:hover span, .okh-360-cta:hover span, .mid-cta-button:hover span{
  transform:translateX(4px);
}

/* Focus (accessibility) */
.okh-btn-oval:focus{
  outline:none;
  box-shadow:0 0 0 2px rgba(242,161,35,0.4);
}


/* -----------------
   JOURNEY LINE
------------------ */

.projects-journey{
  max-width: 980px;
  margin: 12px auto 0;
  padding: 0 16px;
  text-align: center;
}

.journey-steps{
  list-style: none;
  padding: 0;
  margin: 0 auto 10px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  position: relative;
  width: fit-content;
}

/* horizontal line */
.journey-steps::before{
  content:"";
  position:absolute;
  left: 0;
  right: 0;
  top: 18px;
  height: 1.5px;
  opacity: 0.85;
  background: rgba(21,22,41,.24);
  border-radius: 3px;
  z-index: 0;
}

.journey-step{
  position: relative;
  z-index: 1;
  display: grid;
  gap: 12px;
  justify-items: center;
  min-width: 140px;
  width: 210px;
}

.journey-dot{
  width: 14px;
  height: 14px;
  border-radius: 999px;
  background: #fff;
  border: 2px solid rgba(21,22,41,.28);
  box-shadow: 0 8px 18px rgba(0,0,0,.08);
}

.journey-label{
  font-size: 12px;
  opacity: 0.72;
  letter-spacing: .3em;
  text-transform: uppercase;
  color: rgba(21,22,41,.55);
  font-weight: 600;
}

/* active */
.journey-step.is-active .journey-dot{
  background: #F2A134;
  border-color: #F2A134;
  box-shadow: 0 10px 26px rgba(242,161,52,.35);
}

.journey-step.is-active .journey-label{
  color: #151629;
  font-weight: 700;
}

.journey-sub{
	max-width: 760px;
  margin: 0 auto;
  padding-top:12px;
  font-size: 14px;
  line-height: 1.55;
  opacity: 0.70;
  color: rgba(21,22,41,.55);
  text-align: center;
}


/* Τίτλος */
.img-wrapper .img-title {
  position: absolute;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
	width:100%;
	height:100%;
	gap: 1rem;
  transform: translateY(0px);
  opacity: 1;
  color: white;
  font-size: 1.8rem;
  font-weight: 300;
  text-shadow: 0 2px 10px rgba(0,0,0,0.6);
  transition: opacity 0.3s ease, transform 0.3s ease;
  z-index: 3;
  pointer-events: none;
}

 .img-wrapper .img-title .cta { font-size: 1.2rem; }



/* 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;}

a[href="javascript:void(null);"] {
  cursor: default; /* ή auto */
}

.img-wrapper.featured-wrapper > picture {width: 100%;}

/* SECTION MAIN ABOUT */
.section-main-about {
	position:relative;
	/*overflow:hidden;*/
}

.section-main-about svg {
  width: 121%;
  height: auto;
}

.section-bg {
  position: absolute;
  top: -78px;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 0; /* πάντα πίσω */
}

.cls-1 {
  stroke: rgba(192,115,58,0.3);
  stroke-width: 3;
  vector-effect: non-scaling-stroke;
  stroke-linecap: round;
  stroke-linejoin: round;
  fill: none;
}

#quote .section-bg {top: -206px; left: 0px;}
#quote svg {width: 150%; height: auto;}
#quote svg .cls-1 { stroke: rgb(255 242 233 / 30%); }


/* πολύ μεγάλες οθόνες → πιο λεπτές γραμμές */
@media (min-width: 1920px) {
  .cls-1 {
    stroke-width: 3;
}
}

@media (min-width: 2560px) {
  .cls-1 {
    stroke-width: 2;
	}
	
	.section-main-about svg { width: 105%;}
	.section-bg { top: -159px; }
	
	#quote svg {width: 115%;}
	#quote .section-bg {top: -215px;}
}

@media (min-width: 3840px) { /* 4K */
  .cls-1 {
    stroke-width: 2;
}
}


@media (min-width: 2200px) {
    .section-main-about {
      /* background-image: url('../images/bg-lines-26-wide.svg?v=1');
        background-position: center;
        background-size: contain;*/
    }
}

.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; z-index:1;}
.360-img-item {aspect-ratio: 811 / 699;}

/* icons sizes */
/*75%*/
.icon-60 {width: 45px;}
.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.15rem; 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"]:not([data-level2]):has(> ul) > a:after { display:inline-block; font-family:'Font Awesome 5 Free'; content: '\f105'; margin-left:6px; vertical-align: bottom; font-weight: 900; }
.elx_menu ul { 
	opacity:0;
	visibility: hidden;
 margin:0 0 0 -4px; 
 padding:0; 
 list-style:none;
  width: auto;      
  min-width: 150px; 
  max-width: 500px;  
 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;
	white-space: nowrap;
}
.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:294px; top:0; }

.swiper-gallery, .swiper-gallery-second {margin-bottom:2rem;}
 .swiper-gallery .swiper-slide, .swiper-gallery-second .swiper-slide {
    width: auto;
		overflow: hidden !important;
  }
  
.swiper-gallery .swiper-slide img, .swiper-gallery-second .swiper-slide img {
   display: block;
    height: auto;
	max-height:190px;
    max-width: 100%;
    border-radius: 0;
	transform-origin: center;
	transition: transform 0.5s ease;
	will-change: transform;
  }

.okh-projects-strip__image img {
	transition: transform 0.5s ease;
	will-change: transform;
}
  
 .swiper-gallery .swiper-slide:hover img, .okh-projects-strip__image:hover img {
	transform: scale(1.06);
}

.okh-projects-strip__controls {
	display: flex;
	justify-content: flex-end;
	gap: 10px;

	margin-top: 18px;
}

.okh-projects-strip__arrow {
	display: inline-flex;
	align-items: center;
	justify-content: center;

	width: 52px;
	height: 52px;
	padding: 0;

	border: 1px solid rgba(21, 22, 41, 0.2);
	border-radius: 50%;
	background: #FFFFFF;
	color: #151629;

	cursor: pointer;

	transition:
		background-color 0.25s ease,
		border-color 0.25s ease,
		color 0.25s ease,
		transform 0.25s ease;
}

.okh-projects-strip__arrow svg {
	width: 21px;
	height: 21px;

	fill: none;
	stroke: currentColor;
	stroke-width: 1.8;
	stroke-linecap: round;
	stroke-linejoin: round;

	transition: transform 0.25s ease;
}

.okh-projects-strip__arrow:hover {
	border-color: #F2A123;
	background: #F2A123;
	color: #151629;

	transform: translateY(-2px);
}

.okh-projects-strip__arrow-back:hover svg {
	transform: translateX(-2px);
}

.okh-projects-strip__arrow-next:hover svg {
	transform: translateX(2px);
}

.okh-projects-strip__arrow:focus-visible {
	outline: 2px solid #F2A123;
	outline-offset: 3px;
}

.okh-projects-strip__arrow.hidden {
	visibility: hidden;
	pointer-events: none;
}

.okh-projects-strip__arrow:disabled {
	opacity: 0.35;
	cursor: default;
	transform: none;
}

@media (max-width: 767.98px) {
	.okh-projects-strip__arrow {
		width: 46px;
		height: 46px;
	}

	.okh-projects-strip__arrow svg {
		width: 19px;
		height: 19px;
	}
}

@media (prefers-reduced-motion: reduce) {
	.okh-projects-strip__arrow,
	.okh-projects-strip__arrow svg {
		transition: none;
	}
}

  
.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 {padding-top: 4rem; padding-bottom: 4rem;}
.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;
	background-position: 200px -444px;
	background: url(../images/asset1-100.jpg) center / cover no-repeat;
	background-size: 75%;
    background-position: right;
    background-repeat: no-repeat;
	position: relative;
    overflow: hidden;
}

.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 {}

figure.elx5_content_imagebox a img {width: 100%; object-fit: cover; transition: all .4s ease-in-out;}
figure.elx5_content_imagebox a:hover img {transform: scale(1.1);}

/* 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(--Orange);
	padding: 0 0 0 2px;
font-family: Bjorn;
flex-wrap: wrap;
font-size: 0.75rem;
line-height: 0.75rem;
font-style: normal;
font-weight: 300;
letter-spacing: 0.0375rem;
text-transform: uppercase;
flex-direction: row;
gap:0.5rem;
}

ul.pathway > li > a {
	color: var(--Gray);
	text-decoration: none;
}

ul.pathway > li > a:hover { color: var(--Orange);}

ul.pathway > li > a::after {
	content:"/";
	margin:0 6px;
	color: var(--Blue);
	display: inline-block;
	position:relative;
}

#services ul.pathway > li > a,
#technology ul.pathway > li > a,
#page360 ul.pathway > li > a,
#woodwork ul.pathway > li > a,
#contact ul.pathway > li > a { color:#FFF; }

#services ul.pathway > li > a::after,
#technology 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: "/";
    margin: 0 6px;
    color: #ddd;
    display: inline-block;
    position: relative;}

.woodwork-img {width: 100%; margin-bottom: 0 !important; border-radius: 14px;}
  
/* 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: 1px solid #cdcdcd; }

/* 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;
}

ul.energy-efficient-list {padding-left:0;}
.energy-efficient-list li { padding-top:0.65rem;}
.energy-efficient-list li::marker {color: var(--White);}

.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; min-height: 240px}
	
/* 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-size: 2rem;
	font-style: italic;
	font-weight: 600;
	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;
}

.video-inline {
	display:inline-block; 
	width: 360px; 
	max-width:100%; 
	padding:10px 10px 0 10px; 
	aspect-ratio: 16 / 9;
}

/* 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-size: 2rem;padding: 2rem 0;font-style: italic;font-weight: 600;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: 1rem; padding-bottom: 0.75rem;}

.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;}

@keyframes gradient2{	
	0%{background-position: 300% 100%;}
	100%{background-position: 0% 100%;}
}
.spinner {
  width: 18px;
  height: 18px;
  border: 2px solid #fff;
  border-top: 2px solid #3498db;
  border-radius: 50%;
  animation: spin 1s linear infinite;
  vertical-align: middle;
  display: inline-block;
}

@keyframes spin {
  to { transform: rotate(360deg); }
}
/* -----------------*/
/* SECTION - FOOTER */
/* -----------------*/

/* -----------------*/
/* PREMIUM FOOTER */
/* -----------------*/

.section_footer {
	background: #151629;
	color: var(--White);
}

.container-footer {
	padding-top: 4.5rem;
	padding-bottom: 2rem;
	display: flex;
	flex-direction: column;
	gap: 2.4rem;
}

/* MAIN GRID */
.footer_main_grid {
	display: grid;
	grid-template-columns: 1.25fr 1fr 1fr 1.2fr 1.25fr;
	gap: 2.16rem;
	align-items: flex-start;
}

/* COLUMNS */
.footer_col {
	display: flex;
	flex-direction: column;
	gap: 1.10rem;
	min-width: 0;
}

.footer-logo {
	width: 96px;
	height: 96px;
}

.footer_brand_intro {
	color: rgba(255,255,255,0.78);
	font-family: 'Repo', sans-serif;
	font-size: 0.92rem;
	font-weight: 300;
	line-height: 1.5;
	letter-spacing: 0.035rem;
	margin: 0.9rem 0 0.4rem;
	max-width: 260px;
}

.footer_brand_text p {font-size: 0.80rem; line-height: 1.40rem;}

.footer_name {position:relative; margin: 0 0 1.6rem; padding-bottom: 0.85rem;}

h4.footer_name::after {
	content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    width: 38px;
    height: 2px;
    background: var(--Orange);
    border-radius: 999px;
    opacity: 0.95;}

/* TITLES */
h5.footer {
	position: relative;
	color: var(--Orange);
	font-family: 'Repo', sans-serif;
	font-size: 0.92rem;
	font-weight: 500;
	line-height: 1.2;
	letter-spacing: 0.055rem;
	text-transform: uppercase;
	margin: 0 0 0.7rem;
	padding-bottom: 0.85rem;
}

h5.footer::after {
	content: "";
	position: absolute;
	left: 0;
	bottom: 0;
	width: 38px;
	height: 2px;
	background: var(--Orange);
	border-radius: 999px;
	opacity: 0.95;
}

/* LINKS */
.footer_col a,
.footer_policy_links a,
.footer_contact_item a {
	color: var(--White);
	font-family: 'Repo', sans-serif;
	font-size: 0.92rem;
	font-weight: 300;
	line-height: 1.38;
	letter-spacing: 0.035rem;
	text-decoration: none;
	transition: color .35s ease, opacity .35s ease;
}

.footer_col a:hover,
.footer_policy_links a:hover,
.footer_contact_item a:hover {
	color: var(--Orange);
	text-decoration: none;
}

/* CONTACT */
.footer_contact_list {
	display: flex;
	flex-direction: column;
	gap: 0.78rem;
	margin-top: 1rem;
}

.footer_contact_item {
	display: flex;
	align-items: flex-start;
	gap: 0.72rem;
}

.footer_contact_item img {
	flex: 0 0 22px;
	width: 22px;
	height: 22px;
	margin-top: 0.1rem;
}

.footer_contact_item div {
	display: flex;
	flex-direction: column;
	gap: 0.16rem;
}

.footer_contact_item span {
	color: rgba(255,255,255,0.62);
	font-family: 'Repo', sans-serif;
	font-size: 0.76rem;
	font-weight: 300;
	line-height: 1.25;
	letter-spacing: 0.035rem;
	text-transform: uppercase;
}

/* ELXIS MENU CLEANUP */
ul.elx_vmenu {
	padding-left: 0;
	margin: 0;
	list-style: none;
	line-height: normal;
}

.elx_vmenu li {
	padding-top: 0.45rem;
}

.elx_vmenu li:first-child {
	padding-top: 0;
}

.elx_vmenu li > a {
	color: var(--White);
	font-family: 'Repo', sans-serif;
	font-size: 0.92rem;
	font-weight: 300;
	line-height: 1.38;
	letter-spacing: 0.035rem;
	text-decoration: none;
}

.elx_vmenu li > a:hover {
	color: var(--Orange);
	text-decoration: none;
}

/* FAQ MORE */
.btn_faq_more {
	color: var(--Orange) !important;
	margin-top: 0.35rem;
	font-weight: 400 !important;
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
}

.faq_arrow {
	width: 18px;
	height: 18px;
}

/* CTA CARD */
.footer_cta {
	margin-top: 7px;
	background: rgba(255,255,255,0.045);
	border: 1px solid rgba(242,161,35,0.28);
	border-radius: 1.15rem;
	padding: 1.35rem;
	box-shadow: 0 18px 40px rgba(0,0,0,0.18);
}

.footer_cta_title {
	font-size: 1.15rem !important;
	line-height: 1.18 !important;
}

.footer_house_svg {
	width: 100%;
	max-width: 220px;
	margin: 0.15rem 0 0.3rem;
	opacity: 0.95;
}

.footer_house_svg svg {
	width: 100%;
	height: auto;
	display: block;
}

.footer_cta p {
	color: rgba(255,255,255,0.78);
	font-family: 'Repo', sans-serif;
	font-size: 0.9rem;
	font-weight: 300;
	line-height: 1.45;
	letter-spacing: 0.035rem;
	margin: 0.15rem 0 0.35rem;
}

.footer_call_btn,
.footer_form_btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	border-radius: 6px;
	padding: 0.72rem 1rem;
	font-family: 'Repo', sans-serif;
	font-size: 0.86rem !important;
	line-height: 1.2 !important;
	letter-spacing: 0.035rem;
	text-align: center;
	text-decoration: none !important;
}
.footer_form_btn {
	padding: 0.72rem 0.65rem;
	gap: 0.85rem;
}

.footer_call_btn {
	background: var(--Orange);
	color: #151629 !important;
	font-synthesis: weight;
	font-weight: 800 !important;
	margin-top: 0.35rem;
	font-size: 1.10rem !important;
	gap: 10px;
}

.footer_call_btn:hover {
	background: #ffc05c;
	color: #151629 !important;
}

.footer_form_btn {
	border: 1px solid rgba(242,161,35,0.72);
	color: #fff !important;
	font-weight: 400 !important;
}

.footer_form_btn:hover {
	background: rgba(242,161,35,0.12);
	color: var(--Orange) !important;
}

/* BOTTOM UTILITY BAR */
.footer_utility_bar {
	border-top: 1px solid rgba(255,255,255,0.12);
	border-bottom: 1px solid rgba(255,255,255,0.12);
	padding: 1.15rem 0;
	display: flex;
	justify-content: space-between;
	gap: 2rem;
	align-items: flex-start;
}

.footer_policies {
	display: flex;
	flex-direction: column;
	gap: 0.6rem;
	flex: 1;
}

.footer_policy_links,
.footer_policy_links ul.elx_vmenu {
	display: flex;
	flex-wrap: wrap;
	gap: 0.55rem 2.5rem;
	align-items: center;
}

.footer_policy_links ul.elx_vmenu li {
	padding-top: 0;
	position:relative;
}

.footer_social {
	position: relative;
	min-width: 320px;
	display: flex;
	flex-direction: column;
	gap: 0.6rem;

	align-items: flex-start;
	padding-left: 3rem;
	margin-left: 1rem;
	
}

.footer_social h5.footer::after {
	right: 0;
}

.footer_social_icons {
	display: flex;
	gap: 0.85rem;
	align-items: center;
}

.footer_social_icons a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	opacity: 0.9;
	transition: opacity .2s ease, transform .2s ease;
}

.footer_social_icons a:hover {
	opacity: 1;
	transform: translateY(-2px);
}

/* VERTICAL DIVIDER */
.footer_social::before {
	content: "";

	position: absolute;

	left: 0;
	top: 0;

	width: 1px;
	height: 100%;

	background: rgba(255,255,255,0.10);
}

.footer_brand_contact {position: relative;}

.footer_brand_contact::after {
	content: "";
	position: absolute;
	right: 0;
	bottom: 0;
	width: 1px;
	height: 90%;
	background: rgba(255,255,255,0.10);
}

/* COPYRIGHT */
.footer_copyright_row {
	color: rgba(255,255,255,0.48);
	font-family: 'Repo', sans-serif;
	font-size: 0.76rem;
	font-weight: 300;
	line-height: 1.35;
	letter-spacing: 0.035rem;
	text-transform: uppercase;
	text-align: center;
}

.footer_technology {
	gap: 0;
}

.footer_tech_item {
	position: relative;
	display: flex !important;
	align-items: center;
	gap: 0.25rem;
	padding: 0.85rem 0;
}

.footer_tech_item img {
	flex: 0 0 48px;

	width: 42px;
	height: 42px;

	object-fit: contain;

	opacity: 0.95;
}

.footer_tech_item span {
	display: inline-block;
	line-height: 1.35;
}

.footer_tech_item:last-of-type::after {
	display: none;
}

/* TABLET */
@media (max-width: 1199px) {
	.footer_main_grid {
		grid-template-columns: repeat(3, 1fr);
	}

	.footer_cta {
		grid-column: span 3;
		max-width: 520px;
	}
}

/* MOBILE */
@media (max-width: 767px) {
	.container-footer {
		padding-top: 3rem;
		padding-bottom: 1.6rem;
		gap: 2rem;
	}

	.footer_main_grid {
		grid-template-columns: 1fr;
		gap: 2rem;
	}

	.footer_brand_intro {
		max-width: none;
	}

	.footer_cta {
		margin-top: 0;
		grid-column: auto;
		max-width: none;
	}

	.footer_utility_bar {
		flex-direction: column;
		gap: 1.5rem;
	}

	.footer_policy_links,
	.footer_policy_links ul.elx_vmenu {
		flex-direction: column;
		align-items: flex-start;
		gap: 0.45rem;
	}

	.footer_social {
		align-items: flex-start;
	}

	.footer_social h5.footer::after {
		left: 0;
		right: auto;
	}

	.footer_copyright_row {
		text-align: center;
	}
}

.footer_quick_links, .footer_technology, .footer_faq {
	margin-top:3rem;
}
.footer_quick_links>.elx_vmenu, .footer_technology>.elx_vmenu {display: flex; flex-direction:column; gap: 1.30rem;}

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;}

.footer_quick_links .elx_vmenu li > a:before {
	  content: "";
  width: 16px;
  height: 16px;
  position:relative;
  top: 0.25rem;
  padding-right: 22px;
  display: inline-block;
  flex-shrink: 0;

  background-image: url('/demo/templates/oko_huts/images/icons/arrow-fo-orange-48.svg');
  background-repeat: no-repeat;
  background-position: center left;
  background-size: contain;

  transition: transform .25s ease;
}

.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);}
.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;
	
}

/* BLOG PAGE */

/* table */
table.comparative-advantages {
  width: 100%;
  margin-top: 0.5rem;
  border-collapse: collapse;
  color:var(--Blue);
  font-family: Repo, sans-serif;
  font-weight: 300;
  font-size: 1rem;
}

table.comparative-advantages th,
table.comparative-advantages td {
  border: 1px solid #ccc;
  padding: 8px 10px;
  text-align: left;
  vertical-align: top;
  font-weight: 300;
}

table.comparative-advantages th {
  background-color: #f2f2f2;
}

table.comparative-advantages caption {
  caption-side: top;
  font-size: 1rem;
  color: #2a5d9f; /* Blue color for "Comparative Advantages" */
  padding: 8px 0;
  text-align: left;
}

h5.footer {
	color: #FFF;
	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: capitalize;
    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;}

/* VERTICAL DIVIDER */
.footer_policy_links ul.elx_vmenu li::after {
	content: "";
	position: absolute;
	right: -1.40rem;
	top: 50%;
	transform: translateY(-50%);
	width: 1px;
	height: 12px;
	background: rgba(255,255,255,0.95);
}

/* REMOVE LAST DIVIDER */
.footer_policy_links ul.elx_vmenu li:last-child::after {
	display: none;
}

  .okh-hero-status-inline{
	margin-top:22px;
	display:none;
	align-items:center;
	gap:8px;

	padding:6px 12px;
	border-radius:999px;

	background:rgba(21, 22, 41, 0.65);
	backdrop-filter:blur(4px);

	font-size:0.68rem;
	font-weight:700;
	letter-spacing:0.08em;
	text-transform:uppercase;
	color:#ffffff;
	transition: all 0.3s ease;
}
.okh-hero-status-inline:hover { background:rgba(21, 22, 41, 1);}

.okh-hero-status-inline__dot{
	width:6px;
	height:6px;
	border-radius:50%;
	background:#F2A123;
	flex:0 0 6px;
}

.image-main-project.featured {margin-bottom: 1.5rem;}
/* --------------------- */
/* 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; overflow:hidden;}
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;}
.table-responsive {overflow-x:auto;}

/* blog*/
figure.elx5_content_imageboxml {width:100%;}
#elx_category_page_5 .elx5_category_header {display:none;}
#elx_category_page_5 {padding-top:2rem;padding-bottom:2rem;}
#elx_category_page_5 h4 a {font-weight: 300; text-decoration:none; color: #272839;}
#elx_category_page_5 h4 a:hover {text-decoration:none;}
#elx_category_page_5 .round-4, #elx_category_page_5 .img-wrapper {border-radius: 0;}
#elx_category_page_5 .elx5_artbox_inner p {font-size: 1rem;  color: #272839;}
#elx_category_page_5 .img-wrapper {height: 100%;}
#elx_category_page_5 .img-wrapper .img-title {display:none;}
#elx_category_page_5 .img-wrapper img {height:100%;}
#elx_category_page_5 .news-inner a {flex: 1 0 0;}
#elx_category_page_5 figure.elx5_content_imagebox { margin: 0; }
#elx_category_page_5 .elx5_artbox_inner h4 {padding-bottom: 0;}
#elx_category_page_5 .elx5_artbox_inner{margin-bottom: 0}
#elx_category_page_5 .elx_more {
	margin-top:1.5rem; width: fit-content;
}
#elx_category_page_5 .img-base {aspect-ratio: 64/86;}
#elx_category_page_5

/*blog inside*/
.blog-intro-title {margin-top:0; font-weight:400;}
.blog-intro { font-size:1.30rem; font-weight:400;}
.blog-main-image {max-width:100%; width:100%; aspect-ratio: 4/3;}

.post-author, .post-details, .post-views, div.elx5_dateauthor { font-family: Repo; font-size: 0.80rem; color: #272839; }
.post-views {text-transform: lowercase;}
.mini-author { width: 33px;}

/* 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;}

.projects-mid-cta{
  background:#151629; /* brand dark */
  color:#ffffff;
  padding:4.5rem 0 0 0;            /* fixed: no awkward bottom=0 */
  margin-top:50px;
  text-align:center;
  border-top:1px solid rgba(255,255,255,0.08);  /* subtle separation from grid */
}

/* keep CTA block visually compact */
.mid-cta-title{
  font-size:1.65rem;         /* less “shouty”, more premium */
  font-weight:600;
  margin:0 0 10px 0;
}

.mid-cta-text{
  max-width:720px;
  margin:0 auto 22px auto;
  font-size:0.98rem;
  line-height:1.65;
  opacity:0.78;
}

/* button: premium outline -> fills on hover */
.mid-cta-button{
  display:inline-flex;
  align-items:center;
  padding:12px 26px;
  border:1px solid rgba(255,255,255,0.75); /* lighter than 2px white */
  border-radius:40px;
  text-decoration:none;

  color:var(--Blue);
  background: var(--Orange);
  font-size: 14px;
  font-weight:600;
  letter-spacing:0.3px;
  transition:all 0.3s ease;
}

.mid-cta-button:hover{
	border:1px solid var(--Orange); 
  background:var(--White);
  color:var(--Blue);
  transform:translateY(-2px);
  text-decoration:none;
  box-shadow:0 12px 24px rgba(21,22,41,0.18);
}

/* tap feedback (mobile) */
.mid-cta-button:active{
  transform:scale(0.98);
}

/* responsive polish */
@media (max-width: 576px){
  .projects-mid-cta{ padding:48px 0 0 0; }
  .mid-cta-title{ font-size:1.25rem; }
  .mid-cta-text{ font-size:0.95rem; margin-bottom:18px; }
  .mid-cta-button{ padding:10px 22px; }
}

/* 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 .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;
}

.text-align-left { text-align: left !important;}

.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;
}

/* Under Study – "Concept & Design Phase" label (eyebrow) */
 .phase-label{
  display:inline-block;
  margin: 10px 0 12px;
  padding: 6px 12px;

  font-size: 12px;
  font-weight: 600;
  letter-spacing: .14em;
  text-transform: uppercase;
  line-height: 1;

  color: rgba(255,255,255,.78);
  background: rgba(255,255,255,.08);
  border: 1px solid rgba(255,255,255,.14);
  border-radius: 999px;

  backdrop-filter: blur(6px);
  -webkit-backdrop-filter: blur(6px);
}

/* Mobile fine-tune */
@media (max-width: 768px){
  .phase-label{
    margin: 8px 0 10px;
    font-size: 11px;
    padding: 6px 11px;
  }
}

.article-explorer{
    position:relative;
    z-index:100;
    overflow:visible;
}

.article-explorer .choices{
    position:relative;
    z-index:120;
}

.article-explorer .choices.is-open{
    z-index:999;
}

.article-explorer .choices__list--dropdown{
    z-index:1000;
    border:1px solid rgba(21,22,41,0.10);
    box-shadow:0 18px 45px rgba(21,22,41,0.12);
}

.news,
.news-inner,
.img-wrapper{
    position:relative;
    z-index:1;
}

.article-cta{
    display:inline-flex;
    align-items:center;
    gap:10px;

    font-size:13px;
    font-weight:600;
    letter-spacing:0.08em;
    text-transform:uppercase;
    text-decoration:none;

    color:#151629;

    transition:
        color .3s ease,
        gap .3s ease;
}

.article-cta span{
    line-height:1;
    transition:transform .3s ease;
}

.article-cta:hover{
    color:#F2A123;
    gap:14px;
    text-decoration:none;
}

.article-cta:hover span{
    transform:translateX(2px);
}

/* Το separator πάνω από το CTA να γίνει πιο premium */
.article-cta{
    padding-top:2px;
}

/* Αν θέλουμε το CTA να κάθεται καθαρά αριστερά */
.post-views{
    align-items:center;
}

/* Mobile */
@media(max-width:768px){
    .article-cta{
        font-size:12px;
        letter-spacing:0.06em;
    }
}
.article-separator{
    border:0;
    border-top:1px solid rgba(21,22,41,0.08);
    margin:8px 0 16px;
}

/* insights 2 blocks */
.insights-authority-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:30px;
    margin-top:50px;
}

.insights-authority-card{
    position:relative;
    padding:38px 32px;
    background:#fff;
    border:1px solid rgba(21,22,41,0.08);
    border-radius:24px;
    transition:all 0.35s ease;
    box-shadow:0 10px 30px rgba(21,22,41,0.04);
}

.insights-authority-card:hover{
    transform:translateY(-4px);
    box-shadow:0 18px 45px rgba(21,22,41,0.08);
    border-color:rgba(242,161,35,0.35);
}

.insights-authority-card .material-icons{
    font-size:42px;
    color:#F2A123;
    margin-bottom:22px;
    display:inline-block;
}

.insights-authority-card h3{
    font-size:22px;
    line-height:1.3;
	margin-top: 10px;
    margin-bottom:14px;
    color:#151629;
    font-weight:600;
}

.insights-authority-card p{
    font-size:15px;
    line-height:1.8;
    color:#5d6472;
    margin:0;
}

@media(max-width:992px){

    .insights-authority-grid{
        grid-template-columns:1fr;
        gap:20px;
    }

    .insights-authority-card{
        padding:30px 24px;
    }

}

/* INSIGHTS ARTICLE FINDER - START */
    .article-explorer {
      text-align: center;
      margin: 2rem auto 3rem auto;
      padding: 2rem 1rem;
      max-width: 100%;
      background: #f8f8f8;
      border-radius: 1.5rem;
      box-shadow: 0 6px 18px rgba(0,0,0,0.08);
      transition: all 0.35s ease;
    }
    .article-explorer:hover {
          transform:translateY(-2px);

    border-color:rgba(242,161,35,0.16);

    box-shadow:
    0 18px 50px rgba(21,22,41,0.06);
    }
    
   
    /* SCOPED CHOICES STYLES */
    .article-explorer .choices {
      max-width: 90%;
      margin: 0 auto;
      text-align: left;
    }
    .article-explorer .choices__inner {
      border-radius: 0.75rem !important;
      padding: 0.75rem 1rem !important;
      width:100% !important;
      min-height: 52px;
      background-color: #fff;
      border: 1px solid #ddd;
      font-size: 0.95rem;
      box-shadow: 0 3px 8px rgba(0,0,0,0.04);
    }
    .article-explorer .choices__inner:hover {
      border-color: #c1c1c1;
    }
    .article-explorer .choices__list--dropdown {
		z-index: 99998;
      border-radius: 0.75rem !important;
      box-shadow: 0 4px 14px rgba(0,0,0,0.08);
      font-size: 0.95rem;
    }
    .article-explorer .choices__list--dropdown .choices__item {
      padding: 10px 14px;
    }
    .article-explorer .choices__list--dropdown .choices__item.is-highlighted {
      background-color: #d7d8ea;
      color: #000;
    }
    
    .article-explorer .choices__input {
        padding: 13px 0px 13px 13px;
    }
    
    /* Responsive */
    @media (max-width: 600px) {
      .article-explorer {
        padding: 1.5rem 0.5rem;
      }
      .article-explorer .explorer-title {
        font-size: 1.1rem;
      }
      .article-explorer .choices {
        max-width: 100%;
      }
    }
/* INSIGHTS ARTICLE FINDER - END */

/* insights article explorer new */
.article-explorer{
    position:relative;
    margin:60px auto 70px;
    padding:38px 42px;
    background:#f2f3f5;
	border:1px solid rgba(21,22,41,0.07);
    border-radius:30px;
    box-shadow:0 14px 40px rgba(21,22,41,0.04);
}

.article-explorer::before{
    content:'';
    position:absolute;
    inset:0;
    border-radius:30px;
    pointer-events:none;

    background:
    linear-gradient(
        135deg,
        rgba(21,22,41,0.025) 0%,
        rgba(21,22,41,0.01) 35%,
        rgba(242,161,35,0.035) 100%
    );
}

.article-explorer .explorer-title{
    margin:0 0 22px;
    font-size:22px;
    line-height:1.2;
    font-weight:600;
    color:#151629;
    letter-spacing:0.03em;
}

.article-explorer .elx-input{
    width:100%;
    height:62px;
    padding:0 24px;
    border-radius:999px;
    border:1px solid rgba(21,22,41,0.12);
    background:#fff;
    color:#151629;
    font-size:15px;
    font-weight:500;
    outline:none;
    appearance:none;
    -webkit-appearance:none;
    transition:
    border-color .3s ease,
    box-shadow .3s ease,
    transform .3s ease;

    background-image:
    linear-gradient(45deg, transparent 50%, #F2A123 50%),
    linear-gradient(135deg, #F2A123 50%, transparent 50%);
    
    background-position:
    calc(100% - 26px) 27px,
    calc(100% - 20px) 27px;

    background-size:6px 6px, 6px 6px;
    background-repeat:no-repeat;
}

.article-explorer .elx-input:hover{
    border-color:rgba(242,161,35,0.35);
}

.article-explorer .elx-input:focus{
    border-color:rgba(242,161,35,0.7);
    box-shadow:0 0 0 5px rgba(242,161,35,0.12);
}

.article-explorer .elx-input option{
    color:#151629;
    background:#fff;
}

@media(max-width:768px){

    .article-explorer{
        margin:45px auto 55px;
        padding:28px 22px;
        border-radius:24px;
    }

    .explorer-title{
        font-size:24px;
        margin-bottom:18px;
    }

    .article-explorer .elx-input{
        height:56px;
        font-size:14px;
        padding:0 20px;
    }

}

/*insight new */

/* insights article box*/

.news-inner {
	background:#fff;
border:1px solid rgba(21,22,41,0.06);
border-radius:26px;
overflow:hidden;
box-shadow:
0 10px 35px rgba(21,22,41,0.035);
transition:
transform .35s ease,
box-shadow .35s ease,
border-color .35s ease;
}
.news-inner:hover {
	transform:translateY(-3px);
border-color:rgba(242,161,35,0.14);
box-shadow:
0 18px 55px rgba(21,22,41,0.07);
}

/*PROJEXT FEATURED*/
.featured-wrapper {
  position: relative;
}

.featured-overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(
    to top,
    rgba(0,0,0,0.45),
    rgba(0,0,0,0.05)
  );
}

.proj_subt {
	opacity: 0.65;
	font-size: 0.8em;
	margin-top: 0.5rem;
}

.project-status-badge {
  position: absolute;
  top: 14px;
  left: 14px;
  padding: 6px 12px;
  font-size: 12px;
  font-weight: 500;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  border-radius: 999px;
  z-index: 3;
  backdrop-filter: blur(6px);
}

/* In Progress */
.status-in-progress {
  background: rgba(17, 24, 39, 0.75);
  color: #ffffff;
}

  .image-main-project.featured .featured-overlay {
    background: linear-gradient(
      to top,
      rgba(0,0,0,0.55) 0%,
      rgba(0,0,0,0.3) 22%,
      rgba(0,0,0,0.12) 38%,
      rgba(0,0,0,0) 55%
    );
  }

.featured-title {
  color: #fff;
  text-shadow: 0 2px 6px rgba(0,0,0,0.4);
}

.featured-text {
  color: rgba(255,255,255,0.85);
}

.featured-meta {
  position: absolute;
  bottom: 10px;
  left: 10px;
  text-align: left;
  color: #fff;
  max-width: 80%;
}

.featured-label {
  font-size: 12px;
  letter-spacing: 0.12em;
  opacity: 0.8;
}

.featured-title {
  margin: 6px 0 8px;
  font-size: 20px;
  font-weight: 500;
}

.featured-text {
	margin: 0 0 15px 0; 
	line-height: 1rem;
}

.featured-cta {
  font-size: 14px;
  opacity: 0.9;
}

/* PROJECT FEATURED END*/

.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);}

.projects-grid {row-gap:0.5rem}

#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;
}

::placeholder { color: var(--Gray);}

/* SPACING */
.sp2 { padding-top: 2rem; padding-bottom: 2rem;}
.sp4 { padding-top: 4rem; padding-bottom: 4rem;}
.sp5 { padding-top: 5rem; padding-bottom: 5rem;}
.sp25 { padding-top: 40px; padding-bottom: 26px;}
.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;}
.home-blog-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;}


.swiperblog .swiper-wrapper .swiper-slide {width: 70%; max-width: 290px;}
.faq-swiper .swiper-wrapper .swiper-slide {width: 70%; max-width: 290px;}

.swiperblog .swiper-wrapper {
	transition-timing-function:
		cubic-bezier(0.22, 0.61, 0.36, 1) !important;
}

@media (prefers-reduced-motion: reduce) {

	.swiperblog .swiper-wrapper {
		transition-duration: 0.01ms !important;
	}
}

/*FAQ SEARCH*/
.faq-search-wrapper {
	display: flex;
	flex-direction: column;
	gap: 8px;
	margin-bottom: 15px;
}

#faq-search {
	flex: 1;
	padding: 10px;
	border: 1px solid #ccc;
	border-radius: 6px;
}
     
.faq-search-btn,
	.faq-clear-btn {
          padding: 10px 16px;
          border: none;
          border-radius: 6px;
          cursor: pointer;
          font-weight: 600;
      }
      
      .faq-search-btn {
          background: #0077cc;
          color: #fff;
      }
      
      .faq-clear-btn {
          background: #ccc;
          color: #333;
      }
      
      .faq-search-btn:hover {
          background: #005fa3;
      }
      
      .faq-clear-btn:hover {
          background: #b3b3b3;
      }

@media (min-width: 576px) {  }

@media (min-width: 768px) { 
#under-study .img-wrapper .img-title { opacity: 0;}
#under-study .img-wrapper:hover .img-title {opacity: 1;}
	.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;}
	.container-dream-home {padding-top: 6.25rem; padding-bottom: 6.25rem;}
	.footer_logo_row, .footer_logo_right, .container-footer {gap: 3.25rem;}
ul.pathway{
	flex-direction: row;
	gap:0;
}
	.faq-search-wrapper {
		flex-direction: row;
	}
	
	/* Τίτλος */
.img-wrapper .img-title {
	transform: translateY(-10px);
	opacity: 0;
}

.featured-meta {
  /*top: 24px;
  right: 24px;
  max-width: 70%; */
} 

.projects-grid {row-gap:1.5rem}
.featured-text { line-height:2rem;}
.image-main-project.featured {margin-bottom: 0rem;}

.img-wrapper:hover .img-hover {
  opacity: 1;
  transform: scale(1.025);
}

.img-wrapper:hover .img-base {
  transform: scale(1.025);
}

}

.image-main-project.featured img {
  aspect-ratio: 16 / 16;
}


@media (min-width: 992px) { /* lg*/
	.woodwork-img {width: 400px !important; margin-bottom: 1.5rem !important;}
	.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;}
	.footer_copyright_row {margin-top: -3rem;}
	.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; padding:1.15rem 0.90rem;}
	.navbar-toggler {display:none;}
	.mob-menu-icon {display: none;}
	.video-inline {width: 360px}
	.btn_submit {margin-top:0;}
	.micro_phone {
		color: #FFF;	
		font: normal 300 0.875rem/normal 'Repo';
	}
	.micro_button {	font-size: 0.75rem; padding: 0.75rem 1rem;}
	.desktop-menu {display: flex;flex-direction: row; align-items: center;}
	.container-about-welcome {gap:0;}
	.hover-swap {
  transition: opacity 0.25s ease-in-out;
}
	.founder-img-box {width: 551px;}
	.founder-img { margin-left:3rem; width:407px; height: 612px; margin-top: -9.85rem; margin-bottom: 2.25rem; aspect-ratio: 1024/1536; }
	
	.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;}
	.home-blog-img {margin-top: 1rem;}
	.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;*/
		background-position: 0px -150px;
        width: 100%;
        justify-content: center;
        align-items: center;
        align-self: stretch;
        background-size: cover;
	}
	.section-main-dream-home { 
	background-position: 202px -142px; }
	
	.image-main-project.featured img {
  aspect-ratio: 16 / 6;
}
}

@media (min-width: 1200px) { 
	.gap-lg-1_25 {gap:1.25rem;}
	.w-75-lg {width: 75%;}
	.discovery-img {width:498px;}
	.video-inline {width: 510px}
	.swiperblog .swiper-wrapper .swiper-slide {width: auto; max-width: none;}
	.faq-swiper .swiper-wrapper .swiper-slide {width: auto; max-width: 300px;}

	.container-services-architecture { gap: 6.38rem; }
	.architecture-img {width: 576px;}
	.home-about-img {margin-bottom: -32rem; width: 578px;}
	.home-blog-img {margin-bottom: -32rem; width: 578px;z-index: 10;position: relative;}
	.review_inside_gap {gap: 2.5rem;}
	.icon-60 {width: 60px;}
	.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:flex-start;
	}
	#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;height: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;}
  
}

/* Shimmer effect */
.btn-discover-shine::after {
    content: "";
    position: absolute;
    top: 0;
    left: -120%;
    width: 70%;
    height: 100%;
    background: linear-gradient(
        120deg,
        rgba(255, 255, 255, 0) 0%,
        rgba(255, 255, 255, 0.45) 50%,
        rgba(255, 255, 255, 0) 100%
    );
    transform: skewX(-20deg);
    animation: shine 2.4s infinite;
}

@keyframes shine {
    0% { left: -120%; }
    50% { left: 150%; }
    100% { left: 150%; }
}

/* =========================================
   Mobile overlay micro-polish (subtle & premium)
   ========================================= */
@media (max-width: 640px){

  /* softer, cinematic gradient behind text */
  .image-main-project .img-overlay{
    background: linear-gradient(
      to top,
      rgba(21,22,41,.55) 0%,
      rgba(21,22,41,.35) 40%,
      rgba(21,22,41,0) 100%
    );
  }

  /* title: λίγο πιο καθαρό, όχι πιο μεγάλο */
  .image-main-project .img-title h3{
    text-shadow: 0 2px 10px rgba(0,0,0,.45);
    letter-spacing: .02em;
  }

  /* CTA: πιο καθαρό, όχι button */
  .image-main-project .img-title .cta{
    margin-top: 6px;
    font-size: 13px;
    opacity: .9;
    text-shadow: 0 1px 6px rgba(0,0,0,.35);
  }

  /* spacing: να “αναπνέει” το overlay */
  .image-main-project .img-title{
    padding: 14px 16px;
  }
}

.termsfeed-com---nb-interstitial-overlay {background: rgba(0, 0, 0, .5) !important;}
.termsfeed-com---palette-light.termsfeed-com---nb {background-color: #fff !important; color: var(--Blue) !important; border-radius: 12px;}
.termsfeed-com---palette-light .cc-nb-title, .termsfeed-com---palette-light .cc-nb-text {color: var(--Blue) !important;}
.termsfeed-com---palette-light .cc-pc-head {border-radius: 12px 12px 0 0 !important;}
.termsfeed-com---palette-light .cc-cp-foot {border-radius: 0 0 12px 12px !important;;}
.termsfeed-com---pc-dialog .cc-pc-container {border-radius: 12px;}
.termsfeed-com---nb .cc-nb-main-container {padding: 1.5rem !important; }
.termsfeed-com---nb .cc-nb-title {font-size:20px !important;}
.termsfeed-com---nb .cc-nb-text {font-size:15px !important;}
.termsfeed-com---nb .cc-nb-okagree, .termsfeed-com---nb .cc-nb-reject, .termsfeed-com---nb .cc-nb-changep {font-size:15px !important; font-weight:500 !important;}
.termsfeed-com---palette-light .cc-nb-okagree, .termsfeed-com---palette-light .cc-cp-foot-save  {background-color: #908884 !important;
    border: 1px solid #908884;
    color: #fff !important; transition: background-color 0.2s ease-in-out;}
.termsfeed-com---palette-light .cc-nb-reject {background-color: #F5F5F5 !important; color: #111 !important; border: 1px solid #F5F5F5; transition: background-color 0.2s ease-in-out;}
.termsfeed-com---palette-light .cc-nb-changep {color: #111;background-color: #F5F5F5 !important;  border: 1px solid #F5F5F5; transition: background-color 0.2s ease-in-out;}

.termsfeed-com---nb .cc-nb-okagree:hover {background-color: #766f6b !important;}
.termsfeed-com---palette-light .cc-nb-reject:hover, .termsfeed-com---palette-light .cc-nb-changep:hover { background-color: #dcdcdc !important;}

@media (min-width: 1200px) { 
	.termsfeed-com---palette-light.termsfeed-com---nb{ max-width: 850px; top: 45%; left: 50%;transform: translate(-50%, -50%);}
	.termsfeed-com---pc-dialog { margin: 0 !important; top: 50%;left: 50% !important;transform: translate(-50%, -50%) !important;}
}
.termsfeed-com---nb .cc-nb-main-container {font-family: Repo !important;}

.termsfeed-com---palette-light .cc-nb-reject {background-color: #eaeaea !important;}
.termsfeed-com---palette-light .cc-nb-okagree:focus {box-shadow:none !important;}
.termsfeed-com---palette-light .cc-pc-head-close:active, .termsfeed-com---palette-light .cc-pc-head-close:focus {border: none !important;}


.image-main-project.featured h2,
.image-main-project.featured h3 {
  font-weight: 600;
}

.image-main-project:not(.featured) h3 {
  font-weight: 500;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

/*FEATURED AI*/
/* ===============================
   FEATURED PROJECT
   =============================== */

/* =====================================================
   PROJECT CARDS – FINAL TYPOGRAPHY & OVERLAYS
   Works with existing HTML structure
   ===================================================== */

/* ---------- COMMON ---------- */

.image-main-project {
  overflow: hidden;
}

.image-main-project img {
  display: block;
  width: 100%;
}

/* ---------- OVERLAYS ---------- */

.image-main-project .img-overlay,
.image-main-project.featured .featured-overlay {
  position: absolute;
  inset: 0;
  z-index: 2;
  background: linear-gradient(
    to top,
    rgba(18,18,30,.55) 0%,
    rgba(18,18,30,.3) 45%,
    rgba(18,18,30,0) 100%
  );
  transition: background .3s ease;
}

/* ---------- FEATURED ---------- */

.image-main-project.featured .featured-wrapper {
  position: relative;
}

.image-main-project.featured .featured-meta {
  position: absolute;
  left: 22px;
  bottom: 18px;
  z-index: 3;
  color: #fff;
  max-width: 70%;
}

.image-main-project.featured .featured-title {
  margin: 0 0 6px 0;
  font-weight: 600;
  font-size: 30px;
  line-height: 1.05;
  text-transform: uppercase;
  letter-spacing: .05em;
  text-shadow: 0 2px 14px rgba(0,0,0,.45);
}

/* Featured title default */
.image-main-project.featured:not(.featured) .featured-title {
  opacity: 0.62;
  transition: opacity 0.25s ease;
}

/* On hover */
.image-main-project.featured:not(.featured):hover .featured-title {
  opacity: 1;
}

.image-main-project.featured .featured-text {
  margin: 0 0 8px 0;
  font-size: 14px;
  opacity: .85;
}

.image-main-project.featured .featured-cta {
  font-size: 14px;
  font-weight: 500;
  opacity: .9;
}

/* ---------- NON-FEATURED ---------- */

.image-main-project:not(.featured) .img-wrapper {
  position: relative;
}

.image-main-project:not(.featured) .img-title {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 14px;
  z-index: 3;
  text-align: center;
  padding: 0 14px;
}

.image-main-project:not(.featured) .img-title h3 {
  margin: 0 0 6px 0;
  color: #fff;
  font-weight: 600;
  font-size: 24px;
  line-height: 1.05;
  text-transform: uppercase;
  letter-spacing: .04em;
  text-shadow: 0 2px 10px rgba(0,0,0,.45);
}

.image-main-project:not(.featured) .featured-cta {
  font-size: 14px;
  font-weight: 500;
  opacity: .9;
}

/* ---------- HOVER POLISH ---------- */

.image-main-project:hover .img-overlay,
.image-main-project.featured:hover .featured-overlay {
  background: linear-gradient(
    to top,
    rgba(18,18,30,.65) 0%,
    rgba(18,18,30,.35) 45%,
    rgba(18,18,30,0) 100%
  );
}

/* ---------- LANGUAGE TUNING ---------- */

:lang(en) .featured-title,
:lang(en) .img-title h3 {
  letter-spacing: .06em;
}

:lang(el) .featured-title,
:lang(el) .img-title h3 {
  letter-spacing: .02em;
}

/* ---------- MOBILE ---------- */

@media (max-width: 640px) {

  .image-main-project.featured .featured-meta {
    left: 16px;
    right: 16px;
    bottom: 14px;
    max-width: 100%;
  }

  .image-main-project.featured .featured-title {
    font-size: 28px;
  }

  .image-main-project:not(.featured) .img-title h3 {
    font-size: 22px;
  }
}

/* Base CTA */
.image-main-project .featured-cta {
  opacity: 0.75;
  transition: 
    opacity 0.25s ease,
    letter-spacing 0.25s ease,
    transform 0.25s ease;
  will-change: opacity, letter-spacing, transform;
}

/* Hover / Focus (desktop + accessibility) */
.image-main-project:hover .featured-cta,
.image-main-project:focus-within .featured-cta {
  opacity: 1;
  letter-spacing: 0.04em;
  transform: translateX(2px);
}

/* Mobile tap feedback (no hover jump) */
@media (hover: none) {
  .image-main-project .featured-cta {
    opacity: 0.9;
    letter-spacing: 0.02em;
    transform: none;
  }
}

/* Base CTA */
.image-main-project:not(.featured) .featured-cta {
  opacity: 0.75;
  transition: 
    opacity 0.25s ease,
    letter-spacing 0.25s ease,
    transform 0.25s ease;
  will-change: opacity, letter-spacing, transform;
}

/* Hover / Focus (desktop + accessibility) */
.image-main-project:not(.featured):hover .featured-cta,
.image-main-project:not(.featured):focus-within .featured-cta {
  opacity: 1;
  letter-spacing: 0.04em;
  transform: translateX(2px);
  transition-delay: 0.15s; /* delay ΜΟΝΟ στην έναρξη */
}

/* Mobile tap feedback (no hover jump) */
@media (hover: none) {
  .image-main-project:not(.featured) .featured-cta {
    opacity: 0.9;
    letter-spacing: 0.02em;
    transform: none;
  }
}

.image-main-project a{
  display:block;
  text-decoration:none;
  -webkit-tap-highlight-color: rgba(242, 161, 52, 0.18);
}

.image-main-project .cta{
  pointer-events:none;
}


@media (hover: none) and (pointer: coarse){

  .image-main-project .img-wrapper{
    transition: transform .12s ease, filter .12s ease;
    transform: translateZ(0);
  }


  .image-main-project a:active .img-wrapper{
    transform: scale(0.992);
    filter: brightness(0.98);
  }

  .image-main-project .img-title{
    opacity: 1 !important;
    visibility: visible !important;
    transform: none !important;
  }

  .image-main-project .img-overlay{
    opacity: 1 !important;
  }
}

.img-wrapper:hover .img-overlay {
  background: linear-gradient(
    to top,
    rgba(10, 12, 20, 0.75) 0%,
    rgba(10, 12, 20, 0.45) 40%,
    rgba(10, 12, 20, 0.15) 70%,
    rgba(10, 12, 20, 0) 100%
  );
}

.featured-project:hover .img-overlay {
  background: linear-gradient(
    to top,
    rgba(10, 12, 20, 0.9) 0%,
    rgba(10, 12, 20, 0.6) 45%,
    rgba(10, 12, 20, 0.25) 75%,
    rgba(10, 12, 20, 0) 100%
  );
}

.img-overlay {
  transition: background 0.4s ease;
}

.projects-tabs{
  display:flex;
  justify-content:center;
  align-items:stretch;
  gap:12px;
  flex-wrap:nowrap;
}

.projects-tabs .projects-tab{
  flex: 0 0 50px;        
  width:210px;
  background: #fff;
  opacity: 1;
  min-height:44px;         
  display:flex;
  align-items:center;
  justify-content:center;
  text-align:center;
  padding:10px 14px;
  line-height:1.15;
  white-space:normal;      
}

.projects-tabs .projects-tab {
	font-family: "Repo", sans-serif;
	font-weight: 500;

	border-color: rgba(21, 22, 41, 0.24);

	transition:
		background-color 0.25s ease,
		border-color 0.25s ease,
		color 0.25s ease,
		box-shadow 0.25s ease,
		transform 0.25s ease;
}

.projects-tabs .projects-tab:hover:not([aria-selected="true"]) {
	border-color: rgba(21, 22, 41, 0.4);
	background: rgba(21, 22, 41, 0.045);

	transform: translateY(-1px);
}

.projects-tabs .projects-tab[aria-selected="true"],
.projects-tabs .projects-tab.active {
	box-shadow: 0 8px 20px rgba(21, 22, 41, 0.12);
}

@media (min-width: 720px){ 
	.projects-tabs .projects-tab{
		flex: 0 0 210px;
	}		
}

@media (max-width: 560px){
  .projects-tabs{
    flex-direction:column;
    align-items:stretch;
    gap:10px;
  }

  
  .projects-tabs .projects-tab{
    flex: 0;
    width:100%;
    min-height:46px;
  }
}

.projects-tabs{
  display:flex;
  justify-content:center;
  align-items:stretch;
  gap:12px;
  flex-wrap:nowrap;
}

.projects-tabs .projects-tab{
  flex: 0 0 220px;         
  width:220px;
  height:44px;              
  display:flex;
  align-items:center;
  justify-content:center;
  text-align:center;
  padding:0 14px;
  line-height:1;
  white-space:nowrap;      
  overflow:hidden;
  text-overflow:ellipsis;   
  font-size:14px;          
}


.projects-tabs .projects-tab.active{
  height:44px;
}


@media (max-width: 560px){
  .projects-tabs{
    flex-direction:column;
    align-items:stretch;
    gap:10px;
  }
  .projects-tabs .projects-tab{
    width:100%;
    height:46px;
    font-size:13px;     
  }
}

@media (max-width: 991px){

  .projects-tab{
    border:1px solid rgba(0,0,0,0.15);
    background:#ffffff;
    padding:10px 16px;
    border-radius:30px;
    font-weight:500;
    transition:all .2s ease;
  }

  .projects-tab:active{
    transform:scale(0.96);
  }

  .projects-tab.active{
    background:#F2A134;
    color:#151629;
    border-color:#F2A134;
  }

}


.stage-badge{
  position:absolute;
  top:14px;
  left:14px;

  font-size:10px;
  letter-spacing:0.8px;
  text-transform:uppercase;

  padding:4px 8px;
  border-radius:999px;

  background:rgba(255,255,255,0.45);
  color:#151629;

  font-weight:500;
  z-index:5;
}


/* ===== Tabs micro-animation (premium) ===== */

.projects-tab{
  position: relative;
  transition: 
    transform .18s ease,
    background-color .18s ease,
    box-shadow .18s ease,
    border-color .18s ease,
    color .18s ease;
  will-change: transform;
}


@media (hover:hover){
  .projects-tab:hover{
    transform: translateY(-1px);
    box-shadow: 0 10px 22px rgba(0,0,0,.14);
  }
}

.projects-tab.active,
.projects-tab[aria-selected="true"]{
  transform: translateY(-1px);
  box-shadow: 0 12px 26px rgba(0,0,0,.18);
}

.projects-tab:focus-visible{
  outline: none;
  box-shadow:
    0 0 0 3px rgba(242, 161, 52, .35),
    0 12px 26px rgba(0,0,0,.18);
}

.projects-tab::after{
  content:"";
  position:absolute;
  left:16px;
  right:16px;
  bottom:6px;
  height:2px;
  border-radius:2px;
  background: rgba(242, 161, 52, .0);
  transform: scaleX(.4);
  transform-origin: center;
  transition: 
    transform .22s ease,
    background-color .22s ease,
    opacity .22s ease;
  opacity: 0;
}

.projects-tab.active::after,
.projects-tab[aria-selected="true"]::after{
  background: rgba(242, 161, 52, .9);
  transform: scaleX(1);
  opacity: 1;
}

.journey-dot.active,
.journey-dot.is-active{
  animation: dotPulse .9s ease-out 1;
}

@keyframes dotPulse{
  0%   { box-shadow: 0 0 0 0 rgba(242,161,52,.55); }
  100% { box-shadow: 0 0 0 10px rgba(242,161,52,0); }
}

@media (prefers-reduced-motion: reduce){
  .projects-tab,
  .projects-tab::after{
    transition: none !important;
  }
  .journey-dot.active,
  .journey-dot.is-active{
    animation: none !important;
  }
}

/* ===============================
   MOBILE (≤ 480px)
   =============================== */

@media (max-width: 480px){

  /* Tabs */
  .projects-tabs{
    gap: 8px;
  }

  .projects-tabs .projects-tab{
	flex: 0 0 50px;
    width: 100%;
    max-width: 100%;
    min-width: unset;
    padding: 10px 16px;
    font-size: 14px;
  }

  /* Journey becomes vertical */
  .journey-steps{
    flex-direction: column;
    align-items: flex-start;
    width: 100%;
    gap: 14px;
  }

  .journey-steps::before{
    display: none;
  }

  .journey-step{
    width: 100%;
    min-width: unset;
    display: flex;
    align-items: center;
    gap: 12px;
  }

  .journey-label{
    text-align: left;
    font-size: 12px;
  }
}

@media (max-width: 640px){
  .journey-steps{
    display: none !important;
  }

  .projects-tabs{
    margin-bottom: 10px;
  }
  
  .projects-journey { margin-top: 4px;}
  
  .journey-sub { line-height: 1rem;
      color: rgba(21,22,41,.8);      
    margin-top: 4px;    
        letter-spacing: 2px;}
}


/* Smooth scroll + offset (αν έχεις fixed header) */
html{ scroll-behavior: smooth; }
:root{ --anchor-offset: 90px; }
#construction-process,
#contact-form{ scroll-margin-top: var(--anchor-offset); }


/* ==========================================
   CONSTRUCTION PROCESS / STAGES – Improvements
   (Use on the section that contains the title "CONSTRUCTION PROCESS")
========================================== */

/* 1) Tighten intro width */
#construction-process .process-intro,
#construction-process .section-intro,
#construction-process p{
  max-width: 820px;
  margin-left: auto;
  margin-right: auto;
}

/* 2) Spacing & hierarchy between main title and sub-title */
#construction-process .section-title,
#construction-process h2{
  margin-bottom: 10px;
}

#construction-process .process-intro,
#construction-process .section-intro{
  margin-top: 0;
  margin-bottom: 22px;
}

#construction-process .stages-title,
#construction-process h3{
  margin-top: 26px;         /* makes it feel like a sub-section */
  margin-bottom: 26px;
  font-weight: 700;
  letter-spacing: 0.6px;
}

/* 3) Timeline line + numbers (subtle but stable) */
#construction-process .timeline-line{
  width: 2px;
  opacity: 0.95;
}

#construction-process .timeline-step-number,
#construction-process .step-number{
  width: 34px;
  height: 34px;
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-weight: 700;
  line-height: 1;
}

/* 4) Images – consistent height & crop */
#construction-process img{
  border-radius: 14px;
}

#construction-process .stage-image,
#construction-process .timeline-image,
#construction-process .stages img{
  width: 100%;
  height: 220px;            /*统一 height */
  object-fit: cover;
  display: block;
}

/* 5) Make stage content blocks align better */
#construction-process .stage-block,
#construction-process .timeline-item{
  gap: 22px;
}

#construction-process .stage-text,
#construction-process .timeline-text{
  max-width: 520px;         /* keeps text readable */
}

/* 6) Mobile tuning */
@media (max-width: 768px){
  #construction-process .stage-image,
  #construction-process .timeline-image,
  #construction-process .stages img{
    height: 190px;
  }

  #construction-process .stages-title,
  #construction-process h3{
    margin-top: 18px;
    margin-bottom: 20px;
  }

  #construction-process .process-intro,
  #construction-process .section-intro
  {
    padding: 0 16px;
  }
}
/* ==============================
   WHY OUR PROCESS WORKS – White Strip
================================= */
/* ==========================================
   CONSTRUCTION PROCESS SECTION – Grid & Spacing
========================================== */

#process {
  background-color: #ffffff;  /* λευκό */
}

#process .process-intro {
  max-width: 820px;           /* περιορισμένο πλάτος για ανάγνωση */
  margin: 0 auto 2.5rem auto;   /* center και bottom space */
  text-align: center;
}

#process .process-intro h2 {
  font-size: 2.6rem;
  color: var(--Blue);             /* txtblue */
  font-weight: 700;
  margin: 0;
}

/* Grid για process items */
#process .process-items {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(48%, 1fr)); 
  gap: 32px;                  /* spacing μεταξύ items */
  max-width: 1320px;          /* συνολικό width container */
  margin: 0 auto;             /* center grid */
}

/* Σταθερό ύψος και styling για κάθε item */
#process .process-item {
  background-color: #f8f9fa;  /* λίγο gray/white για separation */
  padding: 28px 22px;
  border-radius: 12px;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  height: 100%;               /* ίδια ύψη στο grid */
  box-shadow: 0 4px 4px rgba(0,0,0,0.08);
  transition: transform 0.3s ease;
}

#process .process-item:hover {
  transform: translateY(-6px);
}

/* Τίτλος και περιγραφή κάθε item */
#process .process-item-title {
  font-size: 1.25rem;
  font-weight: 700;
  color:var(--Blue); /* txtblue */
  margin-bottom: 12px;
}

#process .process-item-desc {
  font-size: 1rem;
  line-height: 1.6;
  color: var(--Blue);
  flex-grow: 1; /* να απλώνει και να κρατά ίδια ύψη */
}

/* Mobile adjustments */
@media (max-width: 768px){
  #process {
    padding: 60px 16px;
  }

  #process .process-intro h2 {
    font-size: 2rem;
  }

  #process .process-items {
    grid-template-columns: 1fr; /* stacked */
    gap: 24px;
  }
}

/* =========================================================
   SERVICES – CONSTRUCTION PROCESS / STAGES
   Fits EXACTLY your HTML:
   #process-steps.section-services-process
   .container-services-process
   .process-group
   .process-box
   .process_numbers .circle .hr-process
   .process-text
========================================================= */

#construction-process .align-self-center p{
  max-width: 820px;
  margin-left: auto;
  margin-right: auto;
  line-height: 1.55;
}

#construction-process .align-self-center h2{
  margin-bottom: 10px;
}

#construction-process .align-self-center h3{
  margin-top: 2rem;
  margin-bottom: 1.5rem;
  letter-spacing: 0.6px;
}

.process-group{
  display: flex;
  flex-direction: column;
  gap: 84px;                      
}

#page360 .process-group {
	gap: 60px;
}

.process-box {
  gap: 10px;
  align-items: start;
}

.process-box .flex-100{
  flex: auto;
  min-width: 0;
}

.process-box img.img-fluid.round-4{
  width: 100%;
  height: 240px;                  
  object-fit: cover;
  display: block;
  border-radius: 14px !important;
}

@media (min-width: 992px){
	
 .process-box .flex-100{
  flex: 1 1 0;
  min-width: 0;
}

  .process-box img[style="margin-top"]{
    margin-top: 0 !important;
  }
}

.process-text,
.process-box p{
  line-height: 1.6;
}

.process-box p{
  max-width: 58ch;                
  margin-bottom: 0;
}

.process-box h4{
  margin-bottom: 10px;
  letter-spacing: 0.3px;
}

.process_numbers{
  width: 70px;
  flex: 0 0 70px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-start;
  position: relative;
}

.process_numbers .circle{
  width: 34px;
  height: 34px;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 2px solid #F2A134;
  color: #F2A134;
  background: rgba(21,22,41,0.55);
  font-weight: 700;
  line-height: 1;
  position: relative;
  z-index: 3;
  transition: all 0.28s ease;
}

.process_numbers .circle span{
  font-size: 13px;
}

.process_numbers .hr-process{
  width: 2px;
  opacity: 1;
  border: 0;
  background: rgba(242,161,52,0.22); /* base line */
  margin: 10px 0 0;
  height: 170px;
  position: relative;
  z-index: 1;
}

.process_numbers .hr-progress{
  position: absolute;
  top: 44px;              /* 34px circle + 10px gap */
  left: 50%;
  transform: translateX(-50%);
  width: 2px;
  height: 0;
  background: #F2A134;
  z-index: 2;
  transition: height 0.28s ease;
  pointer-events: none;
  opacity: 0.95;
}

/* desktop heights */
@media (min-width: 992px){
  .process_numbers .hr-process{
    height: 190px;
  }

  #elx_article_page_28 .process_numbers .hr-process{
    height: 378px;
  }
}

/* current active node */
.process_numbers.is-active .circle{
  background: #F2A134;
  color: #151629;
  border-color: #F2A134;
  box-shadow: 0 0 0 6px rgba(242,161,52,0.12);
}

/* completed nodes */
.process_numbers.is-completed .circle{
  background: #F2A134;
  color: #151629;
  border-color: #F2A134;
}

/* optional: slightly stronger completed line */
.process_numbers.is-completed .hr-progress{
  opacity: 1;
}

/* optional subtle inactive state */
.process_numbers:not(.is-active):not(.is-completed) .circle{
  background: rgba(21,22,41,0.55);
  color: #F2A134;
}

@media (min-width: 992px){
  .process-box.flex-lg-row-reverse .process-text{
    padding-right: 0 !important;
  }

  .process-box.flex-lg-row-reverse .process-text > div{
    padding-right: 0.2rem !important;
  }
}


@media (max-width: 991.98px){
  #construction-process.section-services-process{
    
  }

  .process-group{
    gap: 34px;
  }

  .process-box{
    gap: 16px;
    align-items: flex-start;
	padding-bottom:1rem;
  }

  .process-box img.img-fluid.round-4{
    height: 210px;
  }

  .process-box p{
    max-width: 100%;
  }
}

@media (min-width: 992px){
  .process-box{
    
  }
}

@media (min-width: 992px){

  .process-box img[style="margin-top"]{
    margin-top: 0 !important;
  }

  .process-box.flex-lg-row-reverse img{
    
  }
}

#our-services,
#construction-process,
#contact-form {
	scroll-margin-top: 140px;
}

/* =========================================
   SERVICES – Secondary Anchor Menu (FIXED)
   Text + underline, NOT buttons
   ========================================= */

.services-mini-nav.services-anchor-nav{
  width: 100%;
  background-color: #f4a93b; /* 3-5% πιο soft */
    border-top: 1px solid rgba(0,0,0,0.05);
	 border-bottom: 1.5px solid #151629;
  z-index: 90;
}

/* Force ONE line on desktop */
.services-mini-nav.services-anchor-nav ul{
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: nowrap;                 /* IMPORTANT: no 2nd row */
  gap: 14px;
  list-style: none;
  margin: 0;
  padding: 14px 0;
  max-width: 1200px;
  margin: 0 auto;
  overflow-x: auto;                  /* allows scroll if ever needed */
  scrollbar-width: none;
}
.services-mini-nav.services-anchor-nav ul::-webkit-scrollbar{ display:none; }

/* Remove ANY theme "button" styling from links */
.services-mini-nav.services-anchor-nav a{
  background: transparent !important;
  border: none !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  outline: none;
  display: inline-block;
 padding:10px 14px;
  margin: 0 !important;
  text-decoration: none;
  font-size: 15px;
   color: #151629;
    font-weight: 600;
    letter-spacing: 0.6px;
  white-space: nowrap;
  transition: color .75s ease;
  position: relative;
}

/* underline */
.services-mini-nav.services-anchor-nav a::after{
  content: "";
  position: absolute;
  left: 0;
  bottom: 5px;
  height: 1.5px;
  width: 0;
   background:#fff;
  transition: width .30s ease;
}

.services-mini-nav.services-anchor-nav a:hover{
 opacity: 0.8;
}
/* Desktop only hover */
@media (hover: hover) and (pointer: fine){
  .services-mini-nav.services-anchor-nav a:hover::after{
    width: 100%;
  }
}

/* Active always works */
.services-mini-nav.services-anchor-nav a.active::after{
  width: 100%;
}
.services-mini-nav.services-anchor-nav a.active{
  background:#151629;     /* dark blue pill */
  color:#ffffff;
  transform: translateY(-1px);
}

/* Sticky (only when you add .is-sticky via JS or theme) */
.services-mini-nav.services-anchor-nav.is-sticky{
  position: sticky;
  top: 98px; /* adjust to your header height */
  box-shadow: 0 6px 20px rgba(0,0,0,0.06);
}

/* Anchor offset (so headings don't hide under sticky header/nav) */
section[id]{
  scroll-margin-top: 140px;
}

/* Mobile: horizontal scroll, smaller gap */
@media (max-width: 768px){
  .services-mini-nav.services-anchor-nav ul{
    justify-content: flex-start;
    gap: 2px;
    padding: 12px 16px;
  }
  .services-mini-nav.services-anchor-nav a{
    font-size: 13px;
  }
}

/* Sticky state */
.services-mini-nav.is-sticky{
  position: fixed;
  top: 100px; /* αν έχεις header βάλε το ύψος του */
  left: 0;
  width: 100%;
  z-index: 999;
  box-shadow: 0 4px 12px rgba(0,0,0,0.06);
}

/* Active link */
.services-mini-nav a.active{
  color: var(--Orange);
}

.services-mini-nav a.active::after{
  transform: scaleX(1);
}

/* Smooth scroll offset fix */
section, #why-it-works {
  scroll-margin-top: 160px !important; 
}

#why-it-works, #process-steps, #our-services {
	scroll-margin-top: 185px !important; 
}

.services-mini-nav{
  height: 60px; /* ίδιο με το ύψος του nav */
  display: flex;
  align-items: center;
}

a.woodwork-cta{
  display: inline-flex;
  align-items: center;
  gap: 8px;

  padding: 12px 16px;
  border-radius: 999px;
  border: 1px solid rgba(242,161,52,0.55);
  color: #F2A134;
  text-decoration: none;
  font-weight: 600;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  max-width: none;
	width: none;
    align-self: flex-start;
  white-space: nowrap; /* κρατά 1 γραμμή */
  font-size: clamp(13px, 1.2vw, 14px); /* μικραίνει ομαλά */
}

a.woodwork-cta .cta-arrow{
  flex: 0 0 auto;
  line-height: 1;
  transform: translateY(-1px);
}


/* Το κείμενο μπορεί να σπάσει */
a.woodwork-cta span:first-child{
  flex: 1 1 auto;
}

/* Το βέλος δεν σπάει μόνο του */
a.woodwork-cta .cta-arrow{
  flex: 0 0 auto;
  white-space: nowrap;
  font-size: 1.05em;
  line-height: 1;
  transform: translateY(-1px);
}

/* Hover */
a.woodwork-cta:hover{
  background: rgba(242,161,52,0.10);
}

.services-mini-nav{
  position: relative;
}

@media (min-width: 768px){
	a.woodwork-cta { max-width: fit-content; 	width: none;}
}



/* ===== Projects Tabs: modern underline (no HTML/JS changes) ===== */

.projects-tabs{
  display:flex;
  gap:18px;
  align-items:center;
  justify-content:center;
  flex-wrap:wrap;
}

/* base tab */
.projects-tab{
  appearance:none;
  border:0;
  background:#FFF;
  padding:10px 8px;
  margin:0;
  cursor:pointer;

  font-size:0.98rem;
  font-weight:500;
  color:#151629;            /* for light background */
  opacity:0.62;

  position:relative;
  transition:opacity .18s ease, transform .12s ease;
}

/* underline */
.projects-tab::after{
  content:"";
  position:absolute;
  left:0;
  bottom:-6px;
  width:100%;
  height:2px;
  border-radius:2px;
  background:#F2A134;
  transform:scaleX(0);
  transform-origin:left;
  transition:transform .22s ease;
}

/* hover hint (desktop only) */
@media (hover:hover){
  .projects-tab:hover{ opacity:0.9;background: #f3f3f3 !important; }
  .projects-tab:hover::after{ transform:scaleX(0.55); }
}

/* active */
.projects-tab.active{
  opacity:1;
  font-weight:600;
}
.projects-tab.active::after{
  transform:scaleX(1);
}

/* tap feedback (mobile) */
.projects-tab:active{
  transform:scale(0.97);
}

/* mobile spacing/readability */
@media (max-width:480px){
  .projects-tabs{ gap:12px; }
  .projects-tab{
    padding:12px 10px;
    font-size:1rem;
  }
}

/* Tabs on dark background */
.projects-dark .projects-tab{
  color:#ffffff;
  opacity:0.70;
}
.projects-dark .projects-tab.active{
  opacity:1;
}

.projects-tabs-label{
  text-align:center;
  font-size:0.75rem;
  letter-spacing:1.5px;
  text-transform:uppercase;
  opacity:0.55;
  margin:28px 0 18px;
}
.projects-dark .projects-tabs-label{
  color:#ffffff;
  opacity:0.6;
}

.projects-tabs-label{
  text-align:center;
  margin:22px 0 14px;
  position:relative;
}

.projects-tabs-label span{
  font-size:0.82rem;
  letter-spacing:1.2px;
  text-transform:capitalize;
  font-weight:600;
  color:#151629;
  position:relative;
  display:inline-block;
  padding:0;
  border-bottom: 1px solid var(--Orange);
  padding-bottom: 7px; 
 
}

.projects-tabs-label span::before{
  right:100%;
  margin-right:8px;
}

.projects-tabs-label span::after{
  left:100%;
  margin-left:8px;
}

/* dark section version */
.projects-dark .projects-tabs-label span{
  color:#ffffff;
}

.projects-dark .projects-tabs-label span::before,
.projects-dark .projects-tabs-label span::after{
  background:#F2A134;
}

/* ===== 360 block (Projects) ===== */
.projects-360-block{
  padding: 0 16px;
}

.projects-360-inner{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  background: rgba(21, 22, 41, 0.04);
  padding: 16px 18px;
}

.projects-360-badge{
  font-weight: 700;
  letter-spacing: 1px;
  text-transform: uppercase;
  font-size: 0.78rem;
  color: #151629;

  padding: 8px 10px;
  border-radius: 999px;
  background: rgba(242, 161, 52, 0.18);
  border: 1px solid rgba(242, 161, 52, 0.35);
  white-space: nowrap;
}

.projects-360-title{
  margin: 0 0 4px;
  font-size: 1.05rem;
  font-weight: 700;
  color: #151629;
}

.projects-360-desc{
  margin: 0;
  color: rgba(21, 22, 41, 0.78);
  font-size: 0.95rem;
  line-height: 1.35;
}

.btn-360{
  display:inline-flex;
  align-items:center;
  justify-content:center;

  padding: 10px 14px;
  border-radius: 999px;

  background:#F2A134;
  color:#151629;
  font-weight: 700;
  text-decoration:none;
  border:1px solid rgba(242, 161, 52, 0.55);

  transition: transform .12s ease, opacity .18s ease;
}

@media (hover:hover){
  .btn-360:hover{ opacity:0.92; }
}
.btn-360:active{ transform: scale(0.98); }

/* mobile */
@media (max-width: 768px){
  .projects-360-inner{
    flex-direction: column;
    align-items: flex-start;
  }
  .projects-360-cta{
    width: 100%;
  }
  .btn-360{
    width: 100%;
  }
}

/* =====================================================
   360° PREVIEW — COMPLETED PROJECTS PAGE
===================================================== */

.okh-360-preview {
	padding: clamp(4rem, 7vw, 6.5rem) 0;

	border-top: 1px solid rgba(21, 22, 41, 0.12);
	background: var(--Orange);
}

.okh-360-inner {
	display: grid;
	align-items: center;
	grid-template-columns:
		minmax(0, 1.15fr)
		minmax(360px, 0.85fr);
	gap: clamp(3rem, 6vw, 6rem);

	width: calc(100% - 40px);
	max-width: 1320px;
	margin: 0 auto;
}


/* =====================================================
   360° MEDIA
===================================================== */

.okh-360-media {
	position: relative;

	display: block;
	overflow: hidden;

	aspect-ratio: 16 / 10;

	border: 0;
	border-radius: 0;
	outline: none;
	background: #151629;
	box-shadow: none;

	text-decoration: none;
}

.okh-360-media img {
	display: block;

	width: 100%;
	height: 100%;

	object-fit: cover;
	filter: saturate(1.01) contrast(1.02);
	transform: scale(1.01);

	transition:
		transform 0.6s cubic-bezier(0.2, 0.65, 0.3, 1),
		filter 0.35s ease;
}

.okh-360-media:hover img,
.okh-360-media:focus-visible img {
	transform: scale(1.045);
}

.okh-360-media:focus-visible {
	outline: 2px solid #151629;
	outline-offset: 4px;
}

.okh-360-badge {
	position: absolute;
	top: 16px;
	left: 16px;

	display: inline-flex;
	align-items: center;
	justify-content: center;

	min-width: 54px;
	min-height: 32px;
	padding: 7px 12px;

	border: 0;
	border-radius: 0;
	background: rgba(21, 22, 41, 0.88);
	backdrop-filter: blur(6px);

	font-family: "Repo", sans-serif;
	font-size: 0.6875rem;
	font-weight: 600;
	line-height: 1;
	letter-spacing: 0.08em;
	text-transform: uppercase;

	color: #FFFFFF;
}


/* =====================================================
   360° CONTENT — INSIGHTS STYLE
===================================================== */

.okh-360-content {
	min-width: 0;

	color: #151629;
}

.okh-360-title {
	display: inline-flex;
	flex-direction: column;
	align-items: flex-start;

	max-width: 560px;
	margin: 0 0 22px !important;
	padding: 0;

	font-family: "Bjorn", "Play", sans-serif;
	font-size: clamp(1.85rem, 2.8vw, 2.75rem) !important;
	font-weight: 400 !important;
	line-height: 1.08 !important;
	letter-spacing: -0.035em;

	color: #151629 !important;
}

html[lang^="el"] .okh-360-title {
	font-family: "Play", sans-serif;
	font-weight: 600 !important;
}

.okh-360-title::after {
	display: block;

	width: 48px;
	height: 2px;
	margin-top: 14px;

	border-radius: 10px;
	background: #151629;

	content: "";
}

.okh-360-text {
	max-width: 58ch;
	margin: 0 0 28px !important;

	font-family: "Repo", sans-serif;
	font-size: 1rem;
	font-weight: 300;
	line-height: 1.7;
	letter-spacing: 0.04rem;

	color: rgba(21, 22, 41, 0.82) !important;
}


/* =====================================================
   360° CTA BUTTON
===================================================== */

.okh-360-cta {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 12px;

	box-sizing: border-box;
	margin: 0;
	padding: 13px 24px !important;

	border: 1px solid #151629;
	border-radius: 3px;
	background: #151629;

	font-family: "Repo", sans-serif;
	font-size: 0.75rem;
	font-weight: 600;
	line-height: 1.2;
	letter-spacing: 0.04em;
	text-transform: uppercase;

	color: #FFFFFF !important;
	text-decoration: none !important;

	transition:
		background-color 0.25s ease,
		border-color 0.25s ease,
		color 0.25s ease,
		transform 0.25s ease;
}

.okh-360-cta span {
	display: inline-block;

	font-size: 1.15rem;
	line-height: 1;

	transition: transform 0.25s ease;
}

.okh-360-cta:hover,
.okh-360-cta:focus-visible {
	border-color: #FFFFFF;
	background: #FFFFFF;

	color: #151629 !important;
	text-decoration: none !important;
}

.okh-360-cta:hover span,
.okh-360-cta:focus-visible span {
	transform: translateX(4px);
}

.okh-360-cta:focus-visible {
	outline: 2px solid #151629;
	outline-offset: 4px;
}


/* =====================================================
   RESPONSIVE — TABLET
===================================================== */

@media (max-width: 920px) {

	.okh-360-preview {
		padding: 4rem 0;
	}

	.okh-360-inner {
		grid-template-columns: minmax(0, 1fr);
		gap: 2.5rem;
	}

	.okh-360-media {
		aspect-ratio: 16 / 9;
	}

	.okh-360-content {
		max-width: 720px;
	}

	.okh-360-title {
		max-width: 620px;
	}
}


/* =====================================================
   RESPONSIVE — MOBILE
===================================================== */

@media (max-width: 520px) {

	.okh-360-preview {
		padding: 3rem 0;
	}

	.okh-360-inner {
		width: calc(100% - 28px);
		gap: 2rem;
	}

	.okh-360-media {
		aspect-ratio: 4 / 3;
	}

	.okh-360-badge {
		top: 12px;
		left: 12px;

		min-width: 50px;
		min-height: 30px;
		padding: 6px 10px;
	}

	.okh-360-title {
		margin-bottom: 18px !important;

		font-size: clamp(1.6rem, 8vw, 2rem) !important;
		line-height: 1.12 !important;
		letter-spacing: -0.025em;
	}

	.okh-360-title::after {
		margin-top: 12px;
	}

	.okh-360-text {
		margin-bottom: 24px !important;

		font-size: 0.95rem;
		line-height: 1.65;
		letter-spacing: 0.03rem;
	}

	.okh-360-cta {
		width: 100%;
		padding: 13px 20px !important;

		font-size: 0.72rem;
	}
}


/* =====================================================
   REDUCED MOTION
===================================================== */

@media (prefers-reduced-motion: reduce) {

	.okh-360-media img,
	.okh-360-cta,
	.okh-360-cta span {
		transition: none;
	}

	.okh-360-media:hover img,
	.okh-360-media:focus-visible img {
		transform: scale(1.01);
	}

	.okh-360-cta:hover span,
	.okh-360-cta:focus-visible span {
		transform: none;
	}
}


/* =====================================================
   COMPLETED SECTION
===================================================== */

#completed {
	padding-bottom: 0 !important;
}

.smart-concerns-section{
padding:80px 0;
background:#fafafa;
}

.section-header{
text-align:center;
max-width:800px;
margin:0 auto 50px auto;
}

.section-header h2{
font-size:36px;
margin-bottom:15px;
color:#151629;
}

.section-header p{
font-size:18px;
color:#555;
}

.concerns-grid{
display:grid;
grid-template-columns:repeat(2,1fr);
gap:28px;
}

.card_icon {padding-bottom:0.55rem;}

.concern-card{
background:#f2f3f5;
box-shadow: 0 4px 4px rgba(0, 0, 0, 0.08);
border:1px solid #ececec;
padding:28px;
border-radius:8px;
transition:all .25s ease;
display:flex;
flex-direction:column;
justify-content:flex-start;
}

.concern-card:hover{
transform:translateY(-4px);
box-shadow:0 10px 25px rgba(0,0,0,0.08);
}

.concern-card h3{
font-size:20px;
font-weight:600;
margin-bottom:14px;
color:#151629;
}

.label{
font-size:12px;
text-transform:uppercase;
letter-spacing:1px;
font-weight:600;
margin-top:10px;
}

.label-concern{
font-size:12px;
letter-spacing:1px;
text-transform:uppercase;
color:#777;
font-weight:600;
}

.label-reality{
font-size:12px;
letter-spacing:1px;
text-transform:uppercase;
color:#F2A134;
font-weight:600;
}

.concern-text{
font-size:15px;
font-style:italic;
color:#555;
margin-top:6px;
}

.reality-text{
font-size:16px;
line-height:1.6;
color:#2b2b2b;
margin-top:6px;
}

.card_divider{
height:1px;
background:linear-gradient(
to right,
transparent,
#F2A134,
transparent
);
margin:14px 0;
}

@media(max-width:900px){

.concerns-grid{
grid-template-columns:1fr;
}

.section-header h2{
font-size:28px;
}

}

/* SERVICES ADVANTAGES */
.services-advantages-section {
}

.services-advantages-intro {
    max-width: 760px;
    margin: 0 auto 50px;
    text-align: center;
}

.services-advantages-kicker {
    margin: 0 0 12px;
    font-size: 13px;
    line-height: 1.2;
    font-weight: 700;
    letter-spacing: 0.16em;
    text-transform: uppercase;
    color: var(--Blue);
	opacity: 0.82;
}

.services-advantages-title {
    margin: 0 0 14px;
    font-size: 42px;
    line-height: 1.15;
    font-weight: 700;
    color: var(--Blue);
}

.services-advantages-subtitle {
    margin: 0;
    font-size: 18px;
    line-height: 1.7;
    color: var(--Blue);
	opacity: 0.82;
}

.services-advantages-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 24px;
    align-items: stretch;
}

.advantage-card {
    background: #f2f3f5;
	box-shadow: 0 4px 4px rgba(0, 0, 0, 0.08);
    border-radius: 14px;
    padding: 34px 28px 30px;
    min-height: 250px;
    transition: transform 0.25s ease, box-shadow 0.25s ease;
}

.advantage-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 16px 34px rgba(0, 0, 0, 0.16);
}

.advantage-icon {
    margin-bottom: 20px;
    font-size: 40px;
    line-height: 1;
    color: #F2A123;
}

.advantage-card h3 {
    margin: 0 0 14px;
    font-size: 23px;
    line-height: 1.25;
    font-weight: 700;
    color: #151629;
}

.advantage-card p {
    margin: 0;
    font-size: 16px;
    line-height: 1.75;
    color: #2C2F3A;
}

@media (max-width: 1199px) {
    .services-advantages-title {
        font-size: 38px;
    }

    .advantage-card {
        min-height: 270px;
    }
}

@media (max-width: 991px) {
    .services-advantages-section {
        padding: 90px 0;
    }

    .services-advantages-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .services-advantages-title {
        font-size: 34px;
    }

    .services-advantages-subtitle {
        font-size: 17px;
    }
}

@media (max-width: 767px) {
    .services-advantages-section {
        padding: 70px 0;
    }

    .services-advantages-intro {
        margin-bottom: 36px;
    }

    .services-advantages-grid {
        grid-template-columns: 1fr;
        gap: 18px;
    }

    .services-advantages-title {
        font-size: 29px;
    }

    .services-advantages-subtitle {
        font-size: 16px;
        line-height: 1.6;
    }

    .advantage-card {
        min-height: auto;
        padding: 28px 22px 24px;
    }

    .advantage-icon {
        margin-bottom: 16px;
        font-size: 34px;
    }

    .advantage-card h3 {
        font-size: 21px;
    }

    .advantage-card p {
        font-size: 15px;
        line-height: 1.7;
    }
}

.section-bridge-primary{
    text-align:center;
    margin-top:42px;
}

.section-bridge-text{
    margin:0 0 16px;
    font-size:18px;
    line-height:1.6;
    color:#ffffff;
}

.section-bridge-btn{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:48px;
    padding:0 24px;
    border-radius:8px;
    background:#F2A123;
    color:#151629;
    font-weight:700;
    text-decoration:none;
    transition:all .25s ease;
}

.section-bridge-btn:hover{
    background:#ffffff;
    color:#151629;
}

.section-bridge-secondary{
    text-align:center;
    margin-top:30px;
}

.section-bridge-link{
display:inline-flex;
align-items:center;
gap:6px;
font-weight:600;
color:#151629;
text-decoration:none;
transition:all .2s ease;
}

.section-bridge-link:hover{
opacity:.75;
transform:translateX(3px);
}

.okh-360-cta{
  display:inline-flex;
  align-items:center;
  gap:0px;
  margin-top:0px;
  padding:12px 26px;
  background:#FFF;
  color:var(--Blue) !important;
  text-decoration:none;
  font-size:14px;
  font-weight:600;
  letter-spacing:0.3px;
  border-radius:999px;
  transition: all 0.3s ease;
  box-shadow:0 8px 18px rgba(21,22,41,0.12);
  border: 1px solid var(--Blue);
}

.okh-360-cta:hover{
  transform:translateY(-2px);
  background:#0f1122;
  color:var(--Orange) !important;
  text-decoration:none;
  box-shadow:0 12px 24px rgba(21,22,41,0.18);
}

.okh-360-cta:hover::after{
  transform:translateX(3px);
}

.okh-360-cta:focus-visible{
  outline:2px solid #151629;
  outline-offset:3px;
}

.btn-anm {
	transition: all 0.35s ease !important;
}
.btn-anm:hover {
    transform: translateY(-4px);
    box-shadow: 0 18px 45px rgba(21,22,41,0.08);
    border-color: rgba(242,161,35,0.35);
}


/*new*/
.faq-home-section {
  padding: 5rem 0 3rem;
  overflow: hidden;
}

.faq-home-header {
  margin-bottom: 2rem;
}

.faq-home-kicker{
    display:flex;
    align-items:center;
    gap:12px;

    color:#F2A123;

    font-size:.8rem;
    font-weight:700;

    letter-spacing:.18em;
    text-transform:uppercase;

    margin-bottom:1rem;
}

.faq-home-kicker span{
    width:24px;
    height:2px;
    background:#F2A123;
    border-radius:2px;
}

.faq-home-title-row {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  gap: 2rem;
}

.faq-home-text {
  max-width: 980px;
}

.faq-home-text h3 {
  color: #fff;
  padding-bottom:0;
}

.faq-home-text p {
  color: rgba(255,255,255,.78);
  margin: 0;
  line-height: 1.75;
}

.faq-more-link {
  color: #F2A123;
  text-decoration: none;
  font-weight: 700;
  white-space: nowrap;
}

.faq-more-link:hover {
  opacity: .85;
  text-decoration: none;
}

.faq-home-nav {
  display: flex;
  gap: .85rem;
  flex-shrink: 0;
  padding-bottom: .35rem;
  justify-content: center;
  align-items: center;
  gap: 9px;
}

.faq-home-nav button {
		width: 38px;
		height: 38px;
}

.faq-swiper {
  width: 100%;
  padding: 1rem 0 1rem;
}

.faq-card {
  width: 285px;
  padding: 5px 0;
  box-sizing: border-box;
  background:
linear-gradient(
180deg,
rgba(20,39,87,.88) 0%,
rgba(11,22,55,.96) 100%
);
 border:1px solid rgba(255,255,255,.12);
  border-radius: 22px;
  box-shadow:
0 20px 50px rgba(0,0,0,.28);
  overflow: hidden;
  transition: transform .25s ease, box-shadow .25s ease, background .25s ease, border-color .25s ease;
}

.faq-card:hover {
  transform: translateY(-6px);
  background: rgba(21,22,41,1);
  border-color: #F2A123;
  box-shadow: 0 26px 60px rgba(0,0,0,.38);
}

a.faq-card-link { text-decoration: none;}

.faq-card-link {
  display: flex;
  flex-direction: column;
  justify-content: center;
  height: 100%;
  min-height: 165px;
  padding: 1rem;
  text-align: center;
  text-decoration: none;
  color: #ffffff;
}

.faq-card h4 {
  margin: 0;
  color: #ffffff;
  text-align:left;
  font: normal 500 var(--fs-body) / 1.55rem Repo, sans-serif;
  font-size: clamp(1rem, 2.5vw, 1.08rem);
  letter-spacing: .02rem;
  text-transform: none;
}

.faq-card:hover h4 {
  color: #F2A123;
}

.faq-card-divider{

    margin-top:auto;

    height:1px;

    background:
    rgba(255,255,255,.12);

}

.faq-card-icon-wrap{
	display: none !important;
    width:72px;
    height:72px;

    margin:0 auto 2rem;

    border-radius:50%;

    border:1px solid rgba(255,255,255,.12);

    display:flex;
    align-items:center;
    justify-content:center;

    background:
    radial-gradient(
    circle,
    rgba(255,255,255,.03),
    rgba(255,255,255,0)
    );
}

.faq-card-icon {
  width: 34px;
  height: 34px;
  margin: 0;
  opacity: .9;
  filter: brightness(0) invert(1);
  transition: transform .25s ease, opacity .25s ease;
}

.faq-card:hover .faq-card-icon {
  transform: translateY(-3px);
  opacity: 1;
}

.faq-card-action {
  display: block;
  margin-top: .9rem;
  font-size: .78rem;
  font-weight: 700;
  color: #F2A123;
  transition: transform .25s ease;
}

.faq-card:hover .faq-card-action {
  transform: translateX(5px);
}

.swiper-button-faq-prev,
.swiper-button-faq-next {
  position: static;
  width: 50px;
  height: 50px;
  border-radius: 50%;
  background: rgba(255,255,255,.10);
  border: 1px solid rgba(255,255,255,.25);
  color: #ffffff;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  backdrop-filter: blur(8px);
  transition: all .25s ease;
}

.swiper-button-faq-prev:hover,
.swiper-button-faq-next:hover {
  background: #F2A123;
  border-color: #F2A123;
  color: #151629;
  transform: translateY(-2px);
}

.swiper-button-faq-prev::after,
.swiper-button-faq-next::after {
  font-size: 18px;
  font-weight: 700;
}

.faq-swiper-pagination {
  position: static;
  margin-top: 1.4rem;
}

.faq-swiper-pagination .swiper-pagination-bullet {
  width: 8px;
  height: 8px;
  background: rgba(255,255,255,.45);
  opacity: 1;
}

.faq-swiper-pagination .swiper-pagination-bullet-active {
  background: #F2A123;
  width: 24px;
  border-radius: 20px;
}

@media (max-width: 768px) {
  .faq-home-section {
    padding: 4rem 0 3.5rem;
  }

  .faq-home-title-row {
    flex-direction: column;
    align-items: flex-start;
  }

  .faq-home-nav {
    align-self: flex-end;
  }

  .faq-card-link {
    min-height: 180px;
  }
}

.faq-answer a {
  color: var(--Blue);
  text-decoration: none;
  transition: color .25s ease, transform .25s ease, opacity .25s ease;
}

/* Bottom FAQ action row */
.faq-action-wrap {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 20px;
  margin-top: 24px;
  padding-top: 18px;
  border-top: 1px solid rgba(21, 22, 41, 0.08);
}

/* Related page link */
.faq-related-link {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-width: 0;
  margin: 0;
  padding: 0;
  opacity: 0.65;
  color: #5f6472;
  text-decoration: none;
  line-height: 1;
  transition: color .25s ease, opacity .25s ease;
}

.faq-related-label {
  font-size: 11px;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 1px;
	color: var(--Blue);
	text-transform:capitalize;
  white-space: nowrap;
}

.faq-related-separator {
  color: rgba(21, 22, 41, .35);
  font-size: 13px;
}

.faq-related-title {
  color: var(--Blue);
  font-size: 13px;
  font-weight: 700;
  letter-spacing: .35px;
  line-height: 1.2;
  transition: color .25s ease;
}

.faq-related-arrow {
  display: inline-flex;
  align-items: center;
  color: #F2A123;
  font-size: 15px;
  font-weight: 600;
  line-height: 1;
  transition: transform .25s ease;
}

.faq-related-link:hover {
  opacity: 1;
}

.faq-related-link:hover .faq-related-title {
  color: #F2A123;
}

.faq-related-link:hover .faq-related-arrow {
  transform: translateX(4px);
}

/* Right actions */
.faq-actions-right {
  display: flex;
  align-items: center;
  gap: 14px;
  flex-shrink: 0;
}

.faq-copy-link,
.faq-share-link {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  border: 0;
  background: transparent;
  color: #5f6472;
  font-size: 13px;
  font-weight: 600;
  line-height: 1;
  cursor: pointer;
  transition: color .25s ease, opacity .25s ease;
}

.faq-copy-link:hover,
.faq-share-link:hover {
  color: #F2A123;
}

/* Mobile */
@media (max-width: 768px) {
  .faq-action-wrap {
    flex-direction: column;
    align-items: flex-start;
    gap: 14px;
  }

  .faq-related-link {
    width: 100%;
    flex-wrap: wrap;
    line-height: 1.4;
  }

  .faq-actions-right {
    width: 100%;
    justify-content: flex-start;
    flex-wrap: wrap;
  }
}

.smart-feature {
  display: flex;
  gap: 16px;
  align-items: flex-start;
  margin-bottom: 22px;
  color: var(--Blue);
}

.smart-feature h4, .smart-feature p {  color: var(--Blue);}

.smart-icon-wrap {
  flex: 0 0 42px;
  width: 42px;
  height: 42px;
  border: 1px solid rgba(21,22,41,.25);
  border-radius: 10px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.smart-feature {
  display: flex;
  gap: 16px;
  align-items: flex-start;
  margin-bottom: 22px;
  color: var(--Blue);
}

.smart-feature{
  position:relative;
}

.smart-icon-wrap{
  position:relative;
  z-index:2;
}

.smart-feature:not(:last-child) .smart-line-base,
.smart-feature:not(:last-child) .smart-line-progress{
  position:absolute;
  left:50%;
  top:100%;
  transform:translateX(-50%);
  width:1px;
  height:calc(100% + 65px);
}

.smart-line-base{
  background:rgba(21,22,41,.14);
  z-index:-1;
}

.smart-line-progress{
  background:#151629;
  height:0;
  z-index:0;
  transition:height .12s linear;
}

.home-insights-section {
	background: #fff;
	padding: 90px 0;
	overflow: hidden;
	color: #151629;
}

.home-insights-header {
	display: flex;
	justify-content: space-between;
	gap: 40px;
	margin-bottom: 42px;
}

.home-insights-eyebrow {
	display: block;
	color: var(--Orange);
	font-size: 13px;
	font-weight: 700;
	letter-spacing: .04em;
	margin-bottom: 12px;
}

.home-insights-header h2 {
	font-size: clamp(16px, 3vw, 32px);
	line-height: .95;
	margin: 0;
	font-weight: 900;
	letter-spacing: -.04em;
	color: #151629;
}

.home-insights-line {
	display: block;
	width: 70px;
	height: 4px;
	background: var(--Orange);
	border-radius: 8px;
	margin: 28px 0;
}

.home-insights-header p {
	max-width: 1200px;
	line-height: 1.55;
	color: var(--Blue);
	margin: 0;
}

.home-insights-nav {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 18px;
}

.home-insights-nav button {
	width: 38px;
	height: 38px;
	border-radius: 50%;
	border: 1px solid #ddd;
	background: #fff;
	color: #151629;
	font-size: 32px;
	cursor: pointer;
	box-shadow: 0 8px 22px rgba(0,0,0,.08);
	transition: .25s ease;
}

.home-insights-nav button:hover {
	color: var(--Orange);
	transform: translateY(-2px);
}

.home-insights-swiper {
	overflow: visible;
	padding-bottom: 20px;
}

.home-insights-swiper .swiper-slide {
	height: auto;
}

/* Existing article box becomes card */
.home-insights-swiper .elx5_artbox {
	position: relative;
	position: relative;
	aspect-ratio: 3 / 4;
	height: auto;
	border-radius: 18px;
	overflow: hidden;
	background: #151629;
	box-shadow: 0 18px 45px rgba(0,0,0,.18);
}

.home-insights-swiper .elx5_content_imagebox {
	position: absolute;
	inset: 0;
	margin: 0;
}

.home-insights-swiper .elx5_content_imagebox a,
.home-insights-swiper .elx5_content_imagebox img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
}

.home-insights-swiper .elx5_content_imagebox img {
	object-fit: cover;
	transition: transform .6s ease;
}

.home-insights-swiper .elx5_artbox:hover img {
	transform: scale(1.06);
}

.home-insights-swiper .elx5_artbox::after {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(
		to bottom,
		rgba(21,22,41,.08),
		rgba(21,22,41,.22) 38%,
		rgba(2,5,12,.94) 100%
	);
	pointer-events: none;
}

.home-insights-swiper .slider-badge {
    position: absolute;
    top: 22px;
    left: 24px;
    z-index: 3;
    display: inline-flex;
    align-items: center;
    padding: 9px 15px 8px 18px;

    background: rgba(21,22,41,.72);
    border-left: 4px solid var(--Orange);
    border-radius: 6px;
    color: #fff;
    font-size: 11px;
    font-weight: 400;
    letter-spacing: 2.15px;

    backdrop-filter: blur(8px);
}

.home-insights-swiper .elx5_artbox_inner {
	position: relative;
	z-index: 4;
	padding: 0;
}

.home-insights-swiper .elx5_artbox_inner:first-of-type {
	position: absolute;
	left: 24px;
	right: 24px;
	bottom: 34px;
}

.home-insights-swiper .elx5_artbox_inner h4 {
	margin: 0;
	max-width: 90%;
}

.home-insights-swiper .elx5_artbox_inner h4 a {
	color: #fff;
	text-decoration: none;
	font-size: 24px;
	line-height: 1.25;
	font-weight: 400;
	display: block;
}

.home-insights-swiper .swiper-wrapper {
	counter-reset: insight-counter;
}

.home-insights-swiper {
	--visible-cards: 4.5;
	--gap: 20px;
	--left-offset: max(24px, calc((100vw - 1320px) / 2));
}

.home-insights-swiper .swiper-slide {
	width: calc(
		(100vw - var(--left-offset) - ((var(--visible-cards) - 1) * var(--gap)))
		/ var(--visible-cards)
	) !important;

	max-width: none !important;
}

@media (max-width: 1499px) {
	.home-insights-swiper {
		--visible-cards: 3.2;
		--gap: 20px;
	}
}

@media (max-width: 1199px) {
	.home-insights-swiper {
		--visible-cards: 2.3;
		--gap: 18px;
	}
}

@media (max-width: 767px) {
	.home-insights-swiper {
		--visible-cards: 1.15;
		--gap: 16px;
		--left-offset: 24px;
	}
}

.swiperblog-pagination {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 9px;
}

.custom-swiper-bullet {
	width: 20px;
	height: 6px;
	border: 0;
	border-radius: 10px;
	background: #d6d6d6;
	cursor: pointer;
	padding: 0;
	transition: .25s ease;
}

.custom-swiper-bullet.active {
	background: var(--Orange);
	width: 28px;
}

/* ===========================
   CARD SVG ARROW
=========================== */

.home-insights-swiper .slider-card-arrow{
	position:absolute;
	right:0;
	bottom:0;

	width:38px;
	height:38px;

	display:flex;
	align-items:center;
	justify-content:center;

	border:2px solid var(--Orange);
	border-radius:50%;

	color:var(--Orange);
	background:transparent;

	text-decoration:none;

	transition:
		background .25s ease,
		color .25s ease,
		transform .25s ease,
		border-color .25s ease;
}

.home-insights-swiper .slider-card-arrow svg{
	width:18px;
	height:18px;
	fill:none;
}

.home-insights-swiper .slider-card-arrow path{
	stroke:currentColor;
	stroke-width:2;
	stroke-linecap:round;
	stroke-linejoin:round;
}

/* Hover ενεργοποιείται όταν ο χρήστης μπει στην ΚΑΡΤΑ */

.home-insights-swiper .elx5_artbox:hover .slider-card-arrow{
	background:var(--Orange);
	color:#151629;
	transform:translateX(3px);
}

.home-insights-swiper .elx5_artbox:hover .elx5_artbox_inner:first-of-type::after {
	background: var(--Orange);
	color: #151629;
}

.swiperblog-pagination {
	bottom: 18px !important;
}

.swiper-pagination {
	position: relative;
	padding-top: 10px;
}

.swiperblog-pagination .swiper-pagination-bullet {
	width: 20px;
	height: 6px;
	border-radius: 10px;
	background: #d6d6d6;
	opacity: 1;
}

.swiperblog-pagination .swiper-pagination-bullet-active {
	background: var(--Orange);
}

/* Bottom strip */
.home-insights-bottom {
	display: grid;
	grid-template-columns: 1fr 1fr 1fr auto;
	align-items: center;
	gap: 32px;
	background: #f2f1ed;
	border: 1px solid rgba(21,22,41,.06);
	border-radius: 12px;
	padding: 28px 38px;
	box-shadow: 0 18px 50px rgba(0,0,0,.06);
}

.home-insights-feature {
	display: flex;
	gap: 18px;
	align-items: flex-start;
	padding-right: 28px;
	border-right: 1px solid rgba(21,22,41,.16);
}

.feature-icon {
	font-size: 42px;
	line-height: 1;
	color: #151629;
}

.home-insights-feature h4 {
	margin: 0 0 8px;
	font-size: 16px;
	font-weight: 900;
	letter-spacing: 0;
	color: #151629;
}

.home-insights-feature p {
	margin: 0;
	font-size: 15px;
	line-height: 1.45;
	color: #333743;
}

.home-insights-btn {
	min-width: 285px;
	border: 1.5px solid #d3d3d3;
	background: var(--Orange);
	border-radius: 7px;
	padding: 10px 26px;
	color: #151629;
	text-decoration: none;
	font-size: 15px;
	text-transform: uppercase;
	font-weight: 900;
	display: flex;
	justify-content: space-between;
	align-items: center;
	transition: .25s ease;
}

.home-insights-btn .ui-arrow-cta {
	color: var(--Orange);
	line-height: 1;
	flex-shrink: 0;
}

.home-insights-btn .ui-arrow-cta svg {
	width: 22px;
	height: 22px;
	display: block;
}

.home-insights-btn .ui-arrow-cta path 
{
	stroke: var(--Blue);
    stroke-width: 2;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.home-insights-btn:hover .ui-arrow-cta {
	color: #FFF;
}

.home-insights-btn:hover {
	text-decoration: none;
	background: var(--Gray);
	color: #FFF;
}

.home-insights-btn:hover span {
	color: #FFF;
}

@media (max-width: 1100px) {
	.home-insights-bottom {
		grid-template-columns: 1fr 1fr;
	}

	.home-insights-feature {
		border-right: 0;
	}

	.home-insights-btn {
		grid-column: 1 / -1;
	}
}

@media (max-width: 768px) {
	.home-insights-section {
		padding: 65px 0;
	}

	.home-insights-header {
		display: block;
	}

	.home-insights-nav {
		padding-top: 28px;
	}

	.home-insights-swiper .elx5_artbox {
		height: auto;
	}

	.home-insights-swiper .elx5_artbox_inner h4 a {
		font-size: 22px;
	}

	.home-insights-bottom {
		grid-template-columns: 1fr;
		padding: 26px;
	}

	.home-insights-feature {
		padding-right: 0;
	}
}
.article-card-desc{
    margin-top:12px;
    font-size:15px;
	max-width: calc(100% - 50px);
    line-height:1.45;
    font-weight:400;
    color:#fff !important;
    display:-webkit-box;
    -webkit-line-clamp:2;
    -webkit-box-orient:vertical;
    overflow:hidden;
}


.ui-slider-arrow {
	width: 52px;
	height: 52px;

	display: inline-flex;
	align-items: center;
	justify-content: center;

	border-radius: 50%;
	border: 1px solid rgba(21,22,41,.18);

	background: #fff;
	color: #151629;

	cursor: pointer;
	padding: 0;

	transition:
		color .25s ease,
		background .25s ease,
		border-color .25s ease,
		transform .25s ease,
		opacity .25s ease;
}

.ui-slider-arrow svg {
	width: 18px;
	height: 18px;
	fill: none;
}

.ui-slider-arrow path {
	stroke: currentColor;
	stroke-width: 2;
	stroke-linecap: round;
	stroke-linejoin: round;
}

.ui-slider-arrow:hover {
	color: var(--Orange);
	border-color: var(--Orange);
	transform: translateY(-2px);
}

.ui-slider-arrow:active {
	transform: scale(.96);
}

.ui-slider-arrow.swiper-button-disabled,
.ui-slider-arrow:disabled {
	opacity: .35;
	cursor: default;
	pointer-events: none;
}

/* ===========================
   CARD SVG ARROW
=========================== */

.home-insights-swiper .slider-card-arrow{
	position:absolute;
	right:0;
	bottom:0;

	width:38px;
	height:38px;

	display:flex;
	align-items:center;
	justify-content:center;

	border:2px solid var(--Orange);
	border-radius:50%;

	color:var(--Orange);
	background:transparent;

	text-decoration:none;

	transition:
		background .25s ease,
		color .25s ease,
		transform .25s ease,
		border-color .25s ease;
}

.home-insights-swiper .slider-card-arrow svg{
	width:18px;
	height:18px;
	fill:none;
}

.home-insights-swiper .slider-card-arrow path{
	stroke:currentColor;
	stroke-width:2;
	stroke-linecap:round;
	stroke-linejoin:round;
}

/* Hover ενεργοποιείται όταν ο χρήστης μπει στην ΚΑΡΤΑ */

.home-insights-swiper .elx5_artbox:hover .slider-card-arrow{
	background:var(--Orange);
	color:#151629;
	transform:translateX(3px);
}

.home-insights-swiper .elx5_artbox:hover .elx5_artbox_inner:first-of-type::after {
	background: var(--Orange);
	color: #151629;
}

.swiperblog-pagination {
	bottom: 18px !important;
}

.swiper-pagination {
	position: relative;
	padding-top: 10px;
}

.swiperblog-pagination .swiper-pagination-bullet {
	width: 20px;
	height: 6px;
	border-radius: 10px;
	background: #d6d6d6;
	opacity: 1;
}

.swiperblog-pagination .swiper-pagination-bullet-active {
	background: var(--Orange);
}

/* Bottom strip */
.home-insights-bottom {
	display: grid;
	grid-template-columns: 1fr 1fr 1fr auto;
	align-items: center;
	gap: 32px;
	background: #f2f1ed;
	border: 1px solid rgba(21,22,41,.06);
	border-radius: 12px;
	padding: 28px 38px;
	box-shadow: 0 18px 50px rgba(0,0,0,.06);
}

.home-insights-feature {
	display: flex;
	gap: 18px;
	align-items: flex-start;
	padding-right: 28px;
	border-right: 1px solid rgba(21,22,41,.16);
}

.feature-icon {
	font-size: 42px;
	line-height: 1;
	color: #151629;
}

.home-insights-feature h4 {
	margin: 0 0 8px;
	font-size: 16px;
	font-weight: 900;
	letter-spacing: 0;
	color: #151629;
}

.home-insights-feature p {
	margin: 0;
	font-size: 15px;
	line-height: 1.45;
	color: #333743;
}

.home-insights-btn {
	min-width: 285px;
	border: 1.5px solid #d3d3d3;
	background: var(--Orange);
	border-radius: 7px;
	padding: 10px 26px;
	color: #151629;
	text-decoration: none;
	font-size: 15px;
	text-transform: uppercase;
	font-weight: 900;
	display: flex;
	justify-content: space-between;
	align-items: center;
	transition: .25s ease;
}

.home-insights-btn .ui-arrow-cta {
	color: var(--Orange);
	line-height: 1;
	flex-shrink: 0;
}

.home-insights-btn .ui-arrow-cta svg {
	width: 22px;
	height: 22px;
	display: block;
}

.home-insights-btn .ui-arrow-cta path 
{
	stroke: var(--Blue);
    stroke-width: 2;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.home-insights-btn:hover .ui-arrow-cta {
	color: #FFF;
}

.home-insights-btn:hover {
	text-decoration: none;
	background: var(--Gray);
	color: #FFF;
}

.home-insights-btn:hover span {
	color: #FFF;
}

@media (max-width: 1100px) {
	.home-insights-bottom {
		grid-template-columns: 1fr 1fr;
	}

	.home-insights-feature {
		border-right: 0;
	}

	.home-insights-btn {
		grid-column: 1 / -1;
	}
}

@media (max-width: 768px) {
	.home-insights-section {
		padding: 65px 0;
	}

	.home-insights-header {
		display: block;
	}

	.home-insights-nav {
		padding-top: 28px;
	}

	.home-insights-swiper .elx5_artbox {
		height: auto;
	}

	.home-insights-swiper .elx5_artbox_inner h4 a {
		font-size: 22px;
	}

	.home-insights-bottom {
		grid-template-columns: 1fr;
		padding: 26px;
	}

	.home-insights-feature {
		padding-right: 0;
	}
}
.article-card-desc{
    margin-top:12px;
    font-size:15px;
	max-width: calc(100% - 50px);
    line-height:1.45;
    font-weight:400;
    color:#fff !important;
    display:-webkit-box;
    -webkit-line-clamp:2;
    -webkit-box-orient:vertical;
    overflow:hidden;
}


.ui-slider-arrow {
	width: 52px;
	height: 52px;

	display: inline-flex;
	align-items: center;
	justify-content: center;

	border-radius: 50%;
	border: 1px solid rgba(21,22,41,.18);

	background: #fff;
	color: #151629;

	cursor: pointer;
	padding: 0;

	transition:
		color .25s ease,
		background .25s ease,
		border-color .25s ease,
		transform .25s ease,
		opacity .25s ease;
}

.ui-slider-arrow svg {
	width: 18px;
	height: 18px;
	fill: none;
}

.ui-slider-arrow path {
	stroke: currentColor;
	stroke-width: 2;
	stroke-linecap: round;
	stroke-linejoin: round;
}

.ui-slider-arrow:hover {
	color: var(--Orange);
	border-color: var(--Orange);
	transform: translateY(-2px);
}

.ui-slider-arrow:active {
	transform: scale(.96);
}

.ui-slider-arrow.swiper-button-disabled,
.ui-slider-arrow:disabled {
	opacity: .35;
	cursor: default;
	pointer-events: none;
}

.insights-list-grid .news-inner {
	height: 100%;
	background: #fff;
	border: 1px solid rgba(21,22,41,.08);
	border-radius: 14px;
	overflow: hidden;
	box-shadow: 0 12px 30px rgba(21,22,41,.08);
	transition: transform .25s ease, box-shadow .25s ease;
}

.insights-list-grid .news-inner:hover {
	transform: translateY(-4px);
	box-shadow: 0 18px 42px rgba(21,22,41,.12);
}

.insights-list-grid .news-inner > a {
	flex: 0 0 42%;
	min-width: 42%;
}

.insights-list-grid .img-wrapper {
	height: 100%;
	aspect-ratio: 3 / 4;
	border-radius: 0;
}

.insights-list-grid .img-wrapper img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.insights-list-grid .elx5_artbox_inner {
	flex: 1;
}

.insights-list-grid .elx5_artbox_inner > div {
	padding: 1.6rem 1.8rem !important;
}

.insights-list-grid h4 a {
	font-size: 18px;
	line-height: 1.28;
	font-weight: 800;
}

.insights-list-grid p {
	font-size: 14px;
	line-height: 1.55;
}

@media (max-width: 991px) {
	.insights-list-grid .news-inner {
		display: flex;
		flex-direction: column !important;
	}

	.insights-list-grid .news-inner > a {
		flex: none;
		width: 100%;
	}

	.insights-list-grid .img-wrapper {
		aspect-ratio: 3 / 4;
	}
}

.okh-insights-kc {
	background: #fff;
	padding: 70px 0 90px;
	color: #151629;
}

.okh-insights-intro {
	max-width: 760px;
	margin-bottom: 38px;
}

.okh-kicker {
	display: block;
	color: var(--Orange);
	font-size: 12px;
	font-weight: 800;
	letter-spacing: .05em;
	margin-bottom: 12px;
}

.okh-insights-intro h1 {
	font-size: clamp(28px, 3.6vw, 52px);
	line-height: .95;
	font-weight: 900;
	letter-spacing: -.04em;
	margin: 0;
	color: #151629;
}

.okh-title-line {
	display: block;
	width: 70px;
	height: 4px;
	background: var(--Orange);
	border-radius: 8px;
	margin: 24px 0;
}

.okh-insights-intro p {
	font-size: 18px;
	line-height: 1.6;
	color: #5f6168;
	margin: 0;
}

.okh-insight-navcards {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 24px;
	margin-bottom: 34px;
}

.okh-insight-navcard {
	background: #fff;
	border: 1px solid rgba(21,22,41,.08);
	border-radius: 14px;
	padding: 28px;
	padding-left: clamp(16px, 2vw, 26px);
	padding-right: clamp(16px, 2vw, 26px);
	box-shadow: 0 14px 36px rgba(21,22,41,.06);
	transition: .25s ease;
}

.okh-insight-navcard:hover {
	transform: translateY(-4px);
	box-shadow: 0 18px 44px rgba(21,22,41,.10);
}

.okh-insight-navcard h3 {
	font-size: 16px;
	font-weight: 900;
	margin: 0 0 10px;
	text-transform: uppercase;
	color: #151629;
}

.okh-insight-navcard p {
	font-size: 14px;
	line-height: 1.5;
	color: #5f6168;
	margin: 0;
	text-wrap-style: auto;
}

.okh-insights-search {
	background: #f7f6f3;
	border: 1px solid rgba(21,22,41,.08);
	border-radius: 14px;
	padding: 24px;
	margin-bottom: 38px;
	text-align: center;
}

.okh-insights-search label {
	display: block;
	font-size: 13px;
	font-weight: 900;
	text-transform: uppercase;
	margin-bottom: 12px;
	color: #151629;
}

.okh-insights-search input {
	width: 100%;
	height: 50px;
	border: 1px solid rgba(21,22,41,.12);
	border-radius: 8px;
	padding: 0 16px;
	font-size: 14px;
	outline: none;
}

.okh-insights-search input:focus {
	border-color: var(--Orange);
}


/* ==================================================
   SMART-TIMBER™ INSIGHT CARD
   Replaces the previous .okh-insight-card block only.
================================================== */

.okh-insight-item {
	display: flex;
}

.okh-insight-card {
	position: relative;
	display: grid;
	grid-template-columns: 45% 55%;
	width: 100%;
	min-height: 390px;
	overflow: hidden;
	background: #fff;
	border: 1px solid rgba(21,22,41,.09);
	border-radius: 18px;
	box-shadow:
		0 10px 28px rgba(21,22,41,.07),
		0 2px 8px rgba(21,22,41,.035);
	transition:
		transform .3s ease,
		box-shadow .3s ease,
		border-color .3s ease;
}

.okh-insight-card:hover {
	transform: translateY(-5px);
	border-color: rgba(242,161,35,.26);
	box-shadow:
		0 22px 48px rgba(21,22,41,.12),
		0 5px 14px rgba(21,22,41,.06);
}

/* Image */
.okh-insight-image {
	position: relative;
	display: block;
	min-width: 0;
	height: 100%;
	overflow: hidden;
	background: #151629;
}

.okh-insight-image::after {
	content: "";
	position: absolute;
	inset: 0;
	z-index: 1;
	pointer-events: none;
	background: linear-gradient(
		to bottom,
		rgba(21,22,41,.02) 20%,
		rgba(21,22,41,.10) 58%,
		rgba(7,9,18,.58) 100%
	);
}

.okh-insight-image img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
	transition:
		transform .6s cubic-bezier(.2,.65,.3,1),
		filter .35s ease;
}

.okh-insight-card:hover .okh-insight-image img {
	transform: scale(1.035);
}


/* Content hierarchy: title, description, metadata, CTA */
.okh-insight-content {
	display: flex;
	flex-direction: column;
	min-width: 0;
	padding: 32px 34px 28px;
}

.okh-insight-main {
	margin-bottom: 22px;
}

.okh-insight-title {
	margin: 0 0 14px;
}

.okh-insight-title a {
	display: -webkit-box;
	overflow: hidden;
	color: #151629;
	text-decoration: none;
	font-size: clamp(18px,1.25vw,22px);
	font-weight: 900;
	line-height: 1.13;
	letter-spacing: -.015em;
	text-transform: uppercase;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 3;
	line-clamp: 3;
	transition: color .25s ease;
}

.okh-insight-title a:hover,
.okh-insight-title a:focus-visible {
	color: #151629;
	text-decoration: none;
}

.okh-insight-description {
	display: -webkit-box;
	overflow: hidden;
	margin: 0;
	color: #676c76;
	font-size: 14px;
	font-weight: 400;
	line-height: 1.58;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 4;
	line-clamp: 4;
}

/* Metadata */
.okh-insight-meta {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 14px;
	margin-top: auto;
	padding: 18px 0;
	border-top: 1px solid rgba(21,22,41,.10);
	border-bottom: 1px solid rgba(21,22,41,.10);
	color: #646a75;
	font-size: 11px;
	font-weight: 600;
	line-height: 1.25;
	letter-spacing: .01em;
	text-transform: uppercase;
}

.okh-insight-meta-item {
	display: inline-flex;
	align-items: center;
	gap: 4px;
	white-space: nowrap;
}

.okh-insight-meta-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 auto;
	width: 17px;
	height: 17px;
	color: #151629;
}

.okh-insight-meta-icon--accent {
	color: var(--Orange);
}

.okh-insight-meta-icon svg {
	display: block;
	width: 100%;
	height: 100%;
	fill: none;
}

.okh-insight-meta-icon path,
.okh-insight-meta-icon circle {
	stroke: currentColor;
	stroke-width: 1.8;
	stroke-linecap: round;
	stroke-linejoin: round;
}

/* CTA */
.okh-insight-cta {
	display: inline-flex;
	align-items: center;
	align-self: flex-start;
	gap: 11px;
	margin-top: 22px;
	color: var(--Orange);
	text-decoration: none;
	font-size: 12px;
	font-weight: 900;
	line-height: 1;
	letter-spacing: .035em;
	text-transform: uppercase;
	transition: color .25s ease;
}

.okh-insight-cta:hover,
.okh-insight-cta:focus-visible {
	color: #d98412;
	text-decoration: none;
}

.okh-insight-cta .ui-arrow-cta {
	display: inline-flex;
	align-items: center;
	justify-content: center;
}

.okh-insight-cta .ui-arrow-cta svg {
	width: 19px;
	height: 19px;
	fill: none;
	transition: transform .25s ease;
}

.okh-insight-cta .ui-arrow-cta path {
	stroke: currentColor;
	stroke-width: 2;
	stroke-linecap: round;
	stroke-linejoin: round;
}

.okh-insight-card:hover .okh-insight-cta .ui-arrow-cta svg,
.okh-insight-cta:focus-visible .ui-arrow-cta svg {
	transform: translateX(5px);
}

/* Pagination */
.okh-insights-pagination {
	margin-top: 45px;
	display: flex;
	justify-content: center;
}

/* Keyboard accessibility */
.okh-insight-title a:focus-visible,
.okh-insight-image:focus-visible,
.okh-insight-cta:focus-visible {
	outline: 3px solid rgba(242,161,35,.55);
	outline-offset: 3px;
}

/* Tablet */
@media (max-width: 1199px) {
	.okh-insight-card {
		grid-template-columns: 42% 58%;
		min-height: 370px;
	}

	.okh-insight-content {
		padding: 28px 27px 25px;
	}

	.okh-insight-title a {
		font-size: 18px;
	}

	.okh-insight-meta {
		font-size: 10px;
	}

	.okh-insight-meta-item:not(:last-child)::after {
		margin: 0 9px;
	}
}

/* Mobile / small tablet */
@media (max-width: 767px) {
	.okh-insight-navcards {
		grid-template-columns: 1fr;
	}

	.okh-insight-card {
		display: flex;
		flex-direction: column;
		min-height: 0;
		border-radius: 15px;
	}

	.okh-insight-image {
		width: 100%;
		aspect-ratio: 3 / 4;
		height: auto;
	}

	.okh-insight-content {
		padding: 25px 23px 23px;
	}

	.okh-insight-main {
		margin-bottom: 21px;
	}

	.okh-insight-title a {
		font-size: 20px;
		line-height: 1.16;
	}

	.okh-insight-description {
		font-size: 14px;
		-webkit-line-clamp: 3;
		line-clamp: 3;
	}

	.okh-insight-meta {
		align-items: flex-start;
		gap: 12px;
	}

	.okh-insight-meta-item {
		width: 100%;
	}

	.okh-insight-meta-item:not(:last-child)::after {
		display: none;
	}

	.okh-insight-cta {
		margin-top: 20px;
	}
}

@media (max-width: 575px) {
	.okh-insights-kc {
		padding: 50px 0 70px;
	}
}

/* Respect reduced-motion preferences */
@media (prefers-reduced-motion: reduce) {
	.okh-insight-card,
	.okh-insight-image img,
	.okh-insight-cta .ui-arrow-cta svg {
		transition: none;
	}

	.okh-insight-card:hover,
	.okh-insight-card:hover .okh-insight-image img {
		transform: none;
	}
}

/* ==================================================
   INLINE KNOWLEDGE TOPIC
================================================== */

.okh-insight-badge-inline {
	display: inline-flex;
	flex-direction: column;
	align-items: flex-start;
	width: max-content;
	max-width: 100%;
	margin: 0 0 18px;

	color: #646a75;
	font-size: 11px;
	font-weight: 900;
	line-height: 1.15;
	letter-spacing: .085em;
	text-transform: uppercase;
}

.okh-insight-badge-inline::after {
	content: "";
	display: block;
	width: 48px;
	height: 2px;
	margin-top: 9px;
	background: var(--Orange);
	border-radius: 10px;
	transition: width .3s ease;
}

.okh-insight-card:hover .okh-insight-badge-inline::after {
	width: 68px;
}

@media (max-width: 767px) {
	.okh-insight-badge-inline {
		margin-bottom: 15px;
	}

	.okh-insight-badge-inline::after {
		width: 42px;
		margin-top: 8px;
	}
}

/* =========================================================
   INSIGHT ARTICLE HERO
========================================================= */

.okh-insight-hero {
	position: relative;
	display: flex;
	align-items: flex-end;
	width: 100%;
	min-height: clamp(520px, 64vw, 760px);
	overflow: hidden;
	background-color: #151629;
}

.okh-insight-hero__background {
	position: absolute;
	inset: 0;
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	transform: scale(1.01);
}

.okh-insight-hero__overlay {
	position: absolute;
	inset: 0;
	background:
		linear-gradient(
			90deg,
			rgba(21, 22, 41, 0.94) 0%,
			rgba(21, 22, 41, 0.79) 38%,
			rgba(21, 22, 41, 0.36) 70%,
			rgba(21, 22, 41, 0.10) 100%
		),
		linear-gradient(
			0deg,
			rgba(21, 22, 41, 0.70) 0%,
			rgba(21, 22, 41, 0.05) 58%
		);
}

.okh-insight-hero__container {
	position: relative;
	z-index: 2;
	width: 100%;
	padding-top: clamp(150px, 20vw, 230px);
	padding-bottom: clamp(56px, 8vw, 92px);
}

.okh-insight-hero__content {
	max-width: 820px;
}

.okh-insight-hero__badge {
	display: inline-flex;
	align-items: center;
	margin-bottom: 20px;
	color: #f2a123;
	font-family: Repo, sans-serif;
	font-size: 0.78rem;
	font-weight: 400;
	letter-spacing: 0.16em;
	line-height: 1;
	text-transform: uppercase;
}

.okh-insight-hero__title {
	max-width: 820px;
	margin: 0;
	color: #ffffff;
	font-family: Play, sans-serif;
	font-size: clamp(2.25rem, 4.2vw, 4.6rem);
	font-weight: 600;
	letter-spacing: -0.025em;
	line-height: 1.03;
	text-transform: none;
}

.okh-insight-hero__summary {
	max-width: 730px;
	margin: 24px 0 0;
	color: rgba(255, 255, 255, 0.86);
	font-family: Repo, sans-serif;
	font-size: clamp(1.05rem, 1.6vw, 1.32rem);
	font-weight: 300;
	line-height: 1.55;
}

.okh-insight-hero__meta {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 12px;
	margin-top: 28px;
	color: rgba(255, 255, 255, 0.72);
	font-family: Repo, sans-serif;
	font-size: 0.9rem;
	font-weight: 300;
	letter-spacing: 0.02em;
}

.okh-insight-hero__meta-divider {
	width: 4px;
	height: 4px;
	border-radius: 50%;
	background-color: #f2a123;
}

@media (max-width: 767px) {

	.okh-insight-hero {
		min-height: 640px;
	}

	.okh-insight-hero__background {
		background-position: center;
	}

	.okh-insight-hero__overlay {
		background:
			linear-gradient(
				0deg,
				rgba(21, 22, 41, 0.96) 0%,
				rgba(21, 22, 41, 0.82) 48%,
				rgba(21, 22, 41, 0.30) 100%
			);
	}

	.okh-insight-hero__container {
		padding-bottom: 10px;
	}

	.okh-insight-hero__content {
		max-width: 100%;
	}

	.okh-insight-hero__title {
		font-size: clamp(2rem, 9vw, 3.1rem);
		line-height: 1.08;
	}

	.okh-insight-hero__summary {
		margin-top: 18px;
		font-size: 1rem;
		line-height: 1.5;
	}

	.okh-insight-hero__meta {
		margin-top: 22px;
	}

}

.insight-article-page-shell {
	position: relative;
}

.insight-article-page-shell .okh-insight-hero {
	position: relative;
	z-index: 1;
}

/* =========================================================
   INSIGHT ARTICLE HERO — HEIGHT
========================================================= */

.hero_cont.okh-insight-hero {
	min-height: clamp(620px, 46.875vw, 900px);
	height: clamp(620px, 46.875vw, 900px);

	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
}


/* =========================================================
   INSIGHT ARTICLE HERO — COPY
   Based on the main Insights hero
========================================================= */

.okh-insight-article-copy {
	position: relative;
	z-index: 2;
	width: 100%;
	max-width: 940px;
}

.okh-insight-article-title {
	max-width: 940px;
	margin: 0;
	color: #ffffff;
	font-family: Play, sans-serif;
	font-size: clamp(2.35rem, 4.25vw, 4.5rem);
	font-weight: 600;
	letter-spacing: -0.025em;
	line-height: 1.05;
	text-transform: none;
	text-wrap: balance;
}

.okh-insight-article-subtitle {
	max-width: 740px;
	margin: 0;
	color: rgba(255, 255, 255, 0.86);
	font-family: Repo, sans-serif;
	font-size: clamp(1.05rem, 1.45vw, 1.3rem);
	font-weight: 300;
	line-height: 1.55;
	text-wrap: pretty;
}

.okh-insight-article-meta {
	margin-top: 22px;
	color: rgba(255, 255, 255, 0.65);
	font-family: Repo, sans-serif;
	font-size: 0.8rem;
	font-weight: 300;
	letter-spacing: 0.1em;
	line-height: 1.3;
	text-transform: uppercase;
}
html[lang="en"] .okh-insight-article-title, html[lang="en"] #insights-hero-title {
	font-family: Bjorn, sans-serif;
	font-weight: 400;
	letter-spacing: 0.005em;
	line-height: 1.07;
}
html[lang="el"] .okh-insight-article-title, html[lang="el"] #insights-hero-title {
	font-family: Play, sans-serif;
	font-weight: 600;
	letter-spacing: -0.025em;
	line-height: 1.05;
}
@media (max-width: 767px) {

	.okh-insight-article-copy {
		max-width: 100%;
	}
	
	.okh-insight-article {
		padding-right: calc(var(--bs-gutter-x) * 0.5);
    padding-left: calc(var(--bs-gutter-x) * 0.5);
	}

	.okh-insight-article-title {
		max-width: 100%;
		font-size: clamp(2rem, 9vw, 3.1rem);
		line-height: 1.08;
	}

	html[lang="en"] .okh-insight-article-title {
		line-height: 1.1;
	}

	.okh-insight-article-subtitle {
		max-width: 100%;
		font-size: 1rem;
		line-height: 1.5;
	}

	.okh-insight-article-meta {
		margin-top: 18px;
		font-size: 0.74rem;
	}

}

/* =========================================================
   6. HERO CONTENT
========================================================= */

.okh-insight-hero__container .insights-hero-content {
	position: absolute;
	inset: 0;
	z-index: 4;

	display: flex;
	align-items: center;

	padding-top: 110px;
	padding-bottom: 90px;

	pointer-events: none;
}

.okh-insight-hero__container .insights-hero-copy {
	width: min(760px, 62%);
	color: #fff;
	pointer-events: auto;
}

.okh-insight-hero__container .insights-hero-kicker {
	display: inline-flex;
	align-items: center;
	gap: 12px;

	margin: 0 0 18px;

	color: var(--Orange);
	font-family: Play;
	font-size: 14px;
	font-weight: 800;
	line-height: 1.2;
	letter-spacing: .08em;
	text-transform: uppercase;
}

.okh-insight-hero__container .insights-hero-kicker > span {
	display: block;
	width: 42px;
	height: 3px;

	background: var(--Orange);
	border-radius: 8px;
	flex: 0 0 auto;
}

.okh-insight-hero__container .insights-hero-copy h1, #insights-hero-title {
	max-width: 760px;
	margin: 0;
	color: #fff;
	font-size: clamp(28px, 3.6vw, 52px);
	font-weight: 800;
	line-height: 1.04;
	letter-spacing: 0.025em;
	text-transform: uppercase;

	text-wrap: balance;
}

.okh-insight-hero__container .insights-hero-line {
	display: block;
	width: 76px;
	height: 4px;

	margin: 28px 0 24px;

	background: var(--Orange);
	border-radius: 8px;
}

.okh-insight-hero__container .insights-hero-copy p, .page-insights-category .insights-hero-copy p {
	max-width: 485px;
	margin: 0;

	color: rgba(255,255,255,.84);
	font-size: clamp(15px, 1.25vw, 18px);
	font-weight: 400;
	line-height: 1.62;
	letter-spacing: 0.05rem;
}
.page-insights-category .insights-hero-copy p {
	max-width: 480px;
}

/* ======================================================
   IN THIS ARTICLE
====================================================== */

.article-summary {
    margin: 42px 0 54px;
    padding: 26px 0 24px;
    border-top: 1px solid #e5e5e5;
    border-bottom: 1px solid #e5e5e5;
}

.article-summary__header {
    display: grid;
    grid-template-columns: 170px minmax(0, 1fr);
    gap: 30px;
    align-items: start;
    margin-bottom: 24px;
}

.article-summary__eyebrow {
    display: block;
    padding-top: 4px;
    font-size: 0.76rem;
    font-weight: 600;
    line-height: 1.3;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    color: #f2a123;
}

.article-summary__intro {
    max-width: 690px;
    margin: 0;
    font-size: 1rem;
    font-weight: 300;
    line-height: 1.7;
    color: #4d5158;
}

.article-summary__nav {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    column-gap: 34px;
    row-gap: 0;
}

.article-summary__nav a {
    display: flex;
    align-items: baseline;
    gap: 13px;
    padding: 11px 0;
    border-top: 1px solid #ededed;
    font-size: 0.94rem;
    font-weight: 400;
    line-height: 1.45;
    color: #182033;
    text-decoration: none;
    transition:
        color 0.2s ease,
        padding-left 0.2s ease;
}

.article-summary__nav a span {
    flex: 0 0 auto;
    font-size: 0.72rem;
    font-weight: 500;
    letter-spacing: 0.08em;
    color: #f2a123;
}

.article-summary__nav a:hover,
.article-summary__nav a:focus-visible {
    padding-left: 4px;
    color: #f2a123;
}

.article-summary__nav a:focus-visible {
    outline: 2px solid rgba(242, 161, 35, 0.45);
    outline-offset: 3px;
}

/* ======================================================
   TABLET
====================================================== */

@media (max-width: 900px) {

    .article-summary__header {
        grid-template-columns: 1fr;
        gap: 10px;
    }

    .article-summary__nav {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
	
	.okh-insight-hero__container .insights-hero-copy {
	width: min(760px, 85%);
	color: #fff;
	pointer-events: auto;
}

}

/* ======================================================
   MOBILE
====================================================== */

@media (max-width: 600px) {

    .article-summary {
        margin: 32px 0 42px;
        padding: 22px 0 18px;
    }

    .article-summary__header {
        margin-bottom: 18px;
    }

    .article-summary__intro {
        font-size: 0.95rem;
        line-height: 1.65;
    }

    .article-summary__nav {
        grid-template-columns: 1fr;
    }

    .article-summary__nav a {
        padding: 10px 0;
        font-size: 0.92rem;
    }

}

/* ======================================================
   ARTICLE INTRODUCTION
====================================================== */

.article-introduction {
    max-width: 780px;
    margin: 0 0 76px;
}

.article-introduction__eyebrow {
    display: block;
    margin-bottom: 18px;
    font-size: 0.76rem;
    font-weight: 600;
    line-height: 1.3;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    color: #f2a123;
}

.article-introduction__title {
    max-width: 720px;
    margin: 0 0 26px;
    font-size: clamp(1.65rem, 2.4vw, 2.15rem);
    font-weight: 600;
    line-height: 1.25;
    color: #182033;
}

.article-introduction__text {
    max-width: 720px;
}

.article-introduction__text p {
    margin: 0 0 20px;
    font-size: 1.08rem;
    font-weight: 300;
    line-height: 1.85;
    color: #4d5158;
}

.article-introduction__text p:last-child {
    margin-bottom: 0;
}


/* ======================================================
   STANDARD ARTICLE CONTENT SECTION
====================================================== */

.article-content-section {
    margin: 0 0 86px;
    scroll-margin-top: 120px;
}

.article-section-header {
    display: grid;
    grid-template-columns: 58px minmax(0, 1fr);
    gap: 24px;
    align-items: start;
    max-width: 820px;
    margin-bottom: 34px;
    padding-bottom: 26px;
    border-bottom: 1px solid #e5e7ea;
}

.article-section-header__number {
    display: block;
    padding-top: 6px;
    font-size: 0.78rem;
    font-weight: 500;
    line-height: 1;
    letter-spacing: 0.12em;
    color: #f2a123;
}

.article-section-header__content h2 {
    margin: 0 0 11px;
    font-size: clamp(1.55rem, 2.2vw, 2rem);
    font-weight: 600;
    line-height: 1.25;
    color: #182033;
}

.article-section-header__content p {
    max-width: 680px;
    margin: 0;
    font-size: 1rem;
    font-weight: 300;
    line-height: 1.7;
    color: #666b73;
}

.article-content-section__body {
    max-width: 760px;
    margin-left: 82px;
}

.article-content-section__body p {
    margin: 0 0 22px;
    font-size: 1.04rem;
    font-weight: 300;
    line-height: 1.85;
    color: #444a52;
}

.article-content-section__body p:last-child {
    margin-bottom: 0;
}


/* ======================================================
   TABLET
====================================================== */

@media (max-width: 900px) {

    .article-introduction {
        margin-bottom: 64px;
    }

    .article-content-section {
        margin-bottom: 72px;
    }

    .article-content-section__body {
        margin-left: 82px;
    }

}


/* ======================================================
   MOBILE
====================================================== */

@media (max-width: 600px) {

    .article-introduction {
        margin-bottom: 54px;
    }

    .article-introduction__eyebrow {
        margin-bottom: 14px;
    }

    .article-introduction__title {
        margin-bottom: 20px;
        font-size: 1.55rem;
    }

    .article-introduction__text p {
        margin-bottom: 17px;
        font-size: 1rem;
        line-height: 1.75;
    }

    .article-content-section {
        margin-bottom: 60px;
    }

    .article-section-header {
        grid-template-columns: 38px minmax(0, 1fr);
        gap: 14px;
        margin-bottom: 26px;
        padding-bottom: 21px;
    }

    .article-section-header__number {
        padding-top: 5px;
        font-size: 0.7rem;
    }

    .article-section-header__content h2 {
        margin-bottom: 9px;
        font-size: 1.42rem;
    }

    .article-section-header__content p {
        font-size: 0.94rem;
        line-height: 1.65;
    }

    .article-content-section__body {
        margin-left: 0;
    }

    .article-content-section__body p {
        margin-bottom: 19px;
        font-size: 1rem;
        line-height: 1.75;
    }

}

/* =========================================================
   INSIGHT ARTICLE HERO — METADATA
   ========================================================= */

.okh-insight-article-meta {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 10px 14px;
	margin-top: 24px;

	font-size: 13px;
	font-weight: 400;
	line-height: 1.4;
	letter-spacing: 0.01em;

	color: rgba(255, 255, 255, 0.82);
}

.okh-insight-meta-item {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	white-space: nowrap;
}

.okh-insight-meta-type {
	font-weight: 500;
	color: rgba(255, 255, 255, 0.96);
}

.okh-insight-meta-icon {
	width: 15px;
	height: 15px;
	flex: 0 0 15px;

	fill: none;
	stroke: currentColor;
	stroke-width: 1.7;
	stroke-linecap: round;
	stroke-linejoin: round;

	opacity: 0.9;
}

.okh-insight-meta-separator {
	display: block;
	width: 3px;
	height: 3px;
	flex: 0 0 3px;

	border-radius: 50%;
	background: rgba(255, 255, 255, 0.48);
}

/* Mobile */
@media (max-width: 767px) {

	.okh-insight-article-meta {
		gap: 9px 11px;
		margin-top: 20px;
		font-size: 12px;
	}

	.okh-insight-meta-separator {
		display: none;
	}

	.okh-insight-meta-item {
		margin-right: 8px;
	}

	.okh-insight-meta-type {
		flex-basis: 100%;
		margin-right: 0;
	}
}






/*insights new 27/7*/
/* ======================================================
   ARTICLE INTRODUCTION
====================================================== */

.insight-introduction {
    margin: 0 auto;
    padding: 0 0 40px;
	border-bottom: 1px solid rgba(21, 22, 41, 0.07);
}

/* Heading */

.insight-introduction__heading {
    max-width: 900px;
    margin-bottom: 0;
}

.insight-introduction__label {
    display: block;
	margin-top:35px;
    margin-bottom: 10px;

    font-family: "Repo", sans-serif;
    font-size: 0.78rem;
    font-weight: 300;
    line-height: 1.3;

    letter-spacing: 0.16em;
    text-transform: uppercase;

    color: #f2a123;
}

.insight-introduction__title {
    max-width: 880px;
    margin: 0;

    font-family: "Play", sans-serif;
    font-size: clamp(2rem, 3vw, 2.85rem);
    font-weight: 600;
    line-height: 1.2;
    letter-spacing: -0.02em;

    text-wrap: balance;
    color: #151629;
}

/* Two-column layout */

.insight-introduction__layout {
    display: grid;
    grid-template-columns: minmax(0, 1.8fr) minmax(250px, 0.85fr);
    gap: 64px;
    align-items: start;
}

/* Introduction text */

.insight-introduction__text {
    max-width: 820px;
}

.insight-introduction__text p {
    margin: 0 0 3px;

    font-family: "Repo", sans-serif;
    font-size: 1.06rem;
    font-weight: 300;
    line-height: 1.82;

    color: #4f505b;
}

.insight-introduction__text p:last-child {
    margin-bottom: 0;
}

.insight-introduction__text .insight-introduction__lead {
    font-size: 1.15rem;
    line-height: 1.78;
    color: #30313d;
}

/* Quote */

.insight-introduction__quote {
    position: relative;
	background: #FAFAFA;
    margin: 4px 0 0;
    padding: 10px 10px 8px 30px;

    border-left: 2px solid #f2a123;
}

.insight-introduction__quote-mark {
    display: block;
    height: 34px;
    margin-bottom: 5px;

    font-family: Georgia, serif;
    font-size: 3.8rem;
    line-height: 1;

    color: rgba(242, 161, 35, 0.28);
}

.insight-introduction__quote p {
    margin: 0;

    font-family: "Repo", sans-serif;
    font-size: 1.18rem;
    font-weight: 300;
    line-height: 1.62;

    color: #242633;
}

.insight-introduction__quote footer {
    margin-top: 18px;

    font-family: "Repo", sans-serif;
    font-size: 0.72rem;
    font-weight: 300;
    line-height: 1.5;

    letter-spacing: 0.09em;
    text-transform: uppercase;

    color: #737380;
}

/* ======================================================
   TABLET
====================================================== */

@media (max-width: 991px) {

    .insight-introduction {
        padding: 48px 0 66px;
    }

    .insight-introduction__heading {
        margin-bottom: 36px;
    }

    .insight-introduction__layout {
        grid-template-columns: minmax(0, 1.55fr) minmax(220px, 0.8fr);
        gap: 40px;
    }

    .insight-introduction__quote {
        padding-left: 24px;
    }

    .insight-introduction__quote p {
        font-size: 1.08rem;
    }

}

/* ======================================================
   MOBILE
====================================================== */

@media (max-width: 720px) {

    .insight-introduction {
        padding: 36px 0 54px;
    }

    .insight-introduction__heading {
        margin-bottom: 28px;
    }

    .insight-introduction__label {
        margin-bottom: 12px;
        font-size: 0.72rem;
    }

    .insight-introduction__title {
        font-size: clamp(1.75rem, 8vw, 2.15rem);
        line-height: 1.24;
    }

    .insight-introduction__layout {
        grid-template-columns: 1fr;
        gap: 32px;
    }

    .insight-introduction__text {
        max-width: none;
    }

    .insight-introduction__text p {
        margin-bottom: 17px;
        font-size: 1rem;
        line-height: 1.75;
    }

    .insight-introduction__text .insight-introduction__lead {
        font-size: 1.06rem;
        line-height: 1.72;
    }

    .insight-introduction__quote {
        max-width: 520px;
        margin-top: 0;
        padding: 6px 0 5px 22px;
    }

    .insight-introduction__quote-mark {
        height: 28px;
        font-size: 3.2rem;
    }

    .insight-introduction__quote p {
        font-size: 1.08rem;
        line-height: 1.6;
    }

}

/*======================================================
ARTICLE SECTION
======================================================*/

.insight-section{

    margin:90px 0;

}

.insight-section-header{

    display:grid;

    grid-template-columns:70px 1fr;

    gap:34px;

    align-items:start;

    margin-bottom:40px;

}

.insight-section-number{

    font-family:"Bjorn",serif;

    font-size: calc(var(--fs-h3) * 0.95);

    font-weight:400;

    line-height:1;

    color:#F2A123;

    opacity:.9;

}

.insight-section-heading h2{

    margin:0 0 16px;

    font-family:'Play',serif;

    font-size: calc(var(--fs-h3) * 0.9);

    font-weight:300;

    line-height:1.25;
	
	text-transform: uppercase;

    color:#151629;

}

.insight-section-content{

    max-width:720px;

    margin-left:104px;

}

.insight-section-content p{

    margin:0 0 24px;

    font-family:"Repo",sans-serif;

    font-size:1.06rem;

    font-weight:300;

    line-height:1.9;

    color:#424550;

}

.insight-section-content p:last-child{

    margin-bottom:0;

}

/*======================================================
MOBILE
======================================================*/

@media(max-width:768px){

.insight-section{

    margin:70px 0;

}

.insight-section-header{

    grid-template-columns:1fr;

    gap:14px;

    margin-bottom:28px;

}

.insight-section-number{

    font-size:2rem;

}

.insight-section-heading h2{

    font-size:1.7rem;

}

.insight-section-summary{

    font-size:1rem;

}

.insight-section-content{

    margin-left:0;

}

}

/*==================================================
SECTION
==================================================*/

.insight-section{

    margin:40px 0;
	gap: 0;
    display: flex;
    flex-direction: column;
    width: 100%;
    max-width: none;

}

.insight-section-block{
    display:flex;
    flex-direction:column;
    width:100%;
    min-width:0;
}

/*==================================================
TOP
==================================================*/

.insight-section-intro{
    display:flex;
	flex-direction: row;
    gap:40px;
    align-items:start;
    width:100%;
}

.insight-section-heading{
    flex:1 1 auto;
    min-width:0;
}

/*==================================================
NUMBER
==================================================*/

.insight-section-index{

    display:flex;

    flex-direction:column;

    align-items:flex-start;

    padding-top:4px;

}

.insight-section-number{

    font-family:"Repo",sans-serif;

    font-size:2.3rem;

    font-weight:300;

    line-height:1;

    color:#151629;

}

.insight-section-accent{

    width:42px;

    height:2px;

    margin-top:12px;

    background:#F2A123;

}

.insight-section-heading { padding-top: 26px;}

/*==================================================
HEADING
==================================================*/

.insight-section-heading h2{

    margin:0 0 12px;

    font-family:"Repo",serif;

    font-size: calc(var(--fs-h3) * 0.9);

    font-weight:300;

    line-height:1.2;

    color:#151629;

}

.insight-section-summary{

    margin:0;

    max-width:920px;
	padding-right: 20px;

    font-family:"Repo",sans-serif;

	font-size: 1.15rem !important;
    line-height: 1.78 !important;
    font-weight:300;

    color:#666A75;

}

/*==================================================
IMAGE
==================================================*/

.insight-section-thumb{

    margin:0;
	align-self: center;
    flex:0 0 320px;
    width:320px;
    max-width:100%;

}

.insight-section-thumb img{

    display:block;

    width:100%;

    aspect-ratio:16/13;
	margin-top: 35px;
    object-fit:cover;

    border-radius:10px;

}

/*==================================================
CONTENT
==================================================*/

.insight-section-content{

    max-width:720px;

    margin-top:42px;

    margin-left:118px;

}

.insight-section-content p{

    margin:0 0 24px;

    font-family:"Repo",sans-serif;

    font-size:1.06rem;

    font-weight:300;

    line-height:1.9;

    color:#424550;

}

.insight-section-content p:last-child{

    margin-bottom:0;

}

/*==================================================
TABLET
==================================================*/

@media(max-width:991px){

.insight-section-intro{

    gap:30px;

}

.insight-section-thumb{

    grid-column:2;

    margin-top:24px;

    max-width:420px;

}

.insight-section-content{

    margin-left:60px;

}

}

/*==================================================
MOBILE
==================================================*/

@media(max-width:767px){

.insight-section{

    margin:70px 0;

}

.insight-section-intro{

    flex-direction:column;

    gap:24px;

}

.insight-section-thumb{
    flex:none;
    width:100%;
    max-width:420px;
}

.insight-section-index{

    flex-direction:row;

    align-items:center;

    gap:16px;

}

.insight-section-accent{

    margin-top:0;

}

.insight-section-number{

    font-size:1.8rem;

}

.insight-section-heading h2{

    font-size:1.7rem;

}

.insight-section-content{

    margin-left:0;

    margin-top:32px;

}

}

/*table*/
/* =====================================================
   TECHNICAL COMPARISON
===================================================== */

.insight-comparison {
    display: grid;
    grid-template-columns: 190px minmax(0, 1fr);
    gap: 46px;

    width: 100%;
    max-width: 960px;

    margin: 60px auto 0;
    padding: 34px 30px;

    background: #FAFAFC;
    border: 1px solid #ECECF1;
}


/* =====================================================
   INTRODUCTION COLUMN
===================================================== */

.insight-comparison__intro {
    padding-top: 3px;
}

.insight-comparison__kicker {
    display: block;

    margin-bottom: 12px;

    font-family: "Repo", sans-serif;
    font-size: 0.67rem;
    font-weight: 500;
    line-height: 1.2;
    letter-spacing: 0.08em;

    color: #F2A123;
}

.insight-comparison__title {
    margin: 0 0 18px;

    font-family: "Play", sans-serif;
    font-size: 1.34rem;
    font-weight: 600;
    line-height: 1.22;
    letter-spacing: -0.015em;

    color: #151629;
}

.insight-comparison__description {
    margin: 0;

    font-family: "Repo", sans-serif;
    font-size: 0.84rem;
    font-weight: 300;
    line-height: 1.65;

    color: #626570;
}


/* =====================================================
   TABLE WRAPPER
===================================================== */

.insight-comparison__table-wrapper {
    min-width: 0;
    overflow-x: auto;

    scrollbar-width: thin;
    scrollbar-color: #D7D8DE transparent;
}

.insight-comparison__table-wrapper:focus-visible {
    outline: 2px solid #F2A123;
    outline-offset: 5px;
}


/* =====================================================
   TABLE
===================================================== */

.insight-comparison__table {
    width: 100%;
    min-width: 620px;

    border-collapse: collapse;
    border-spacing: 0;

    table-layout: fixed;

    font-family: "Repo", sans-serif;

    background: #FFFFFF;
}


/* Column proportions */

.insight-comparison__table th:first-child {
    width: 27%;
}

.insight-comparison__table th:nth-child(2),
.insight-comparison__table th:nth-child(3) {
    width: 36.5%;
}


/* =====================================================
   TABLE HEADER
===================================================== */

.insight-comparison__table thead th {
    padding: 9px 12px;

    border: 1px solid #DDDEE4;

    font-size: 0.75rem;
    font-weight: 500;
    line-height: 1.35;
    text-align: center;
    vertical-align: middle;

    color: #151629;
    background: #F7F7F9;
}

.insight-comparison__table thead th:first-child {
    text-align: left;
}

.insight-comparison__table thead th:nth-child(2) {
    border-top: 2px solid #F2A123;
    background: #FCF8F2;
}

.insight-comparison__table thead th span {
    font-size: 0.67rem;
    font-weight: 300;

    color: #737380;
}


/* =====================================================
   TABLE BODY
===================================================== */

.insight-comparison__table tbody th,
.insight-comparison__table tbody td {
    padding: 10px 12px;

    border: 1px solid #DDDEE4;

    font-size: 0.75rem;
    line-height: 1.46;
    text-align: left;
    vertical-align: top;

    color: #484B55;
}

.insight-comparison__table tbody th {
    font-weight: 500;

    color: #151629;
    background: #FAFAFB;
}

.insight-comparison__table tbody td {
    font-weight: 300;
}

.insight-comparison__table tbody td:nth-child(2) {
    background: #FFFDFC;
}


/* Subtle row hover */

@media (hover: hover) {

    .insight-comparison__table tbody tr:hover th,
    .insight-comparison__table tbody tr:hover td {
        background: #F7F7FA;
    }

    .insight-comparison__table tbody tr:hover td:nth-child(2) {
        background: #FCF7F0;
    }

}


/* =====================================================
   TABLET
===================================================== */

@media (max-width: 991px) {

    .insight-comparison {
        grid-template-columns: 170px minmax(0, 1fr);
        gap: 32px;

        max-width: 100%;
        margin-top: 88px;
        padding: 30px 24px;
    }

    .insight-comparison__title {
        font-size: 1.22rem;
    }

}


/* =====================================================
   MOBILE
===================================================== */

@media (max-width: 767px) {

    .insight-comparison {
        grid-template-columns: 1fr;
        gap: 28px;

        margin-top: 72px;
        padding: 26px 20px;

        border-right: 0;
        border-left: 0;
    }

    .insight-comparison__intro {
        max-width: 560px;
    }

    .insight-comparison__kicker {
        margin-bottom: 10px;
    }

    .insight-comparison__title {
        margin-bottom: 13px;

        font-size: 1.5rem;
        line-height: 1.25;
    }

    .insight-comparison__description {
        font-size: 0.94rem;
        line-height: 1.65;
    }

    .insight-comparison__table-wrapper {
        margin-right: -20px;
        padding-right: 20px;
        padding-bottom: 8px;
    }

    .insight-comparison__table {
        min-width: 660px;
    }

    .insight-comparison__table thead th,
    .insight-comparison__table tbody th,
    .insight-comparison__table tbody td {
        padding: 10px;

        font-size: 0.74rem;
    }

}

/* =====================================================
   VISUAL COMPARISON
===================================================== */

.insight-visual-comparison {
    width: 100%;

    margin: 60px auto 0;
    padding: 0;
}


/* =====================================================
   HEADER
===================================================== */

.insight-visual-comparison__header {
    max-width: 720px;
    margin-bottom: 36px;
}

.insight-visual-comparison__kicker {
    display: block;

    margin-bottom: 12px;

    font-family: "Repo", sans-serif;
    font-size: 0.72rem;
    font-weight: 500;
    line-height: 1.2;
    letter-spacing: 0.1em;

    color: #F2A123;
}

.insight-visual-comparison__title {
    margin: 0 0 16px;

    font-family: "Play", sans-serif;
    font-size: clamp(1.85rem, 2.3vw, 2.3rem);
    font-weight: 600;
    line-height: 1.2;
    letter-spacing: -0.02em;

    color: #151629;
}

.insight-visual-comparison__intro {
    margin: 0;

    font-family: "Repo", sans-serif;
    font-size: 1.04rem;
    font-weight: 300;
    line-height: 1.75;

    color: #626570;
}


/* =====================================================
   GRID
===================================================== */

.insight-visual-comparison__grid {
    position: relative;

    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 20px;

    overflow: hidden;

    border-radius: 10px 10px 0 0;

    background: #FFFFFF;
}


/* =====================================================
   ITEM
===================================================== */

.insight-visual-comparison__item {
    min-width: 0;
    margin: 0;
	border: 1px solid #E6E7EC;
	border-radius: 12px;
    background: #FAFAFA;
}


/* =====================================================
   IMAGE
===================================================== */

.insight-visual-comparison__media {
    display: block;
    overflow: hidden;

    background: #F2F2FA;
}

.insight-visual-comparison__image {
    display: block;
    width: 100%;
    height: auto;

    aspect-ratio: 4 / 3;
    object-fit: cover;
	
	border-radius: 12px 12px 0 0;

    transition:
        transform 0.5s ease,
        opacity 0.3s ease;
}

.insight-visual-comparison__media:hover
.insight-visual-comparison__image {
    transform: scale(1.018);
}

.insight-visual-comparison__media:focus-visible {
    position: relative;
    z-index: 2;

    outline: 2px solid #F2A123;
    outline-offset: -2px;
}


/* =====================================================
   CAPTION
===================================================== */

.insight-visual-comparison__caption {
    display: flex;
    flex-direction: column;
    gap: 6px;

    padding: 20px 22px 22px;

    font-family: "Repo", sans-serif;
}

.insight-visual-comparison__label {
    font-size: 0.98rem;
    font-weight: 500;
    line-height: 1.35;

    color: #151629;
}

.insight-visual-comparison__description {
    font-size: 0.86rem;
    font-weight: 300;
    line-height: 1.55;

    color: #737380;
}


/* =====================================================
   TABLET
===================================================== */

@media (max-width: 991px) {

    .insight-visual-comparison {
        max-width: 100%;
        margin-top: 84px;
    }

    .insight-visual-comparison__header {
        margin-bottom: 32px;
    }

}


/* =====================================================
   MOBILE
===================================================== */

@media (max-width: 767px) {

    .insight-visual-comparison {
        margin-top: 70px;
    }

    .insight-visual-comparison__header {
        margin-bottom: 26px;
    }

    .insight-visual-comparison__kicker {
        margin-bottom: 10px;

        font-size: 0.68rem;
    }

    .insight-visual-comparison__title {
        margin-bottom: 13px;

        font-size: 1.65rem;
        line-height: 1.25;
    }

    .insight-visual-comparison__intro {
        font-size: 1rem;
        line-height: 1.7;
    }

    .insight-visual-comparison__grid {
        grid-template-columns: 1fr;

        border-radius: 8px;
    }

    .insight-visual-comparison__grid::after {
        display: none;
    }

    .insight-visual-comparison__item + 
    .insight-visual-comparison__item {
        border-top: 1px solid #E6E7EC;
    }

    .insight-visual-comparison__caption {
        min-height: 0;
        padding: 17px 18px 20px;
    }

    .insight-visual-comparison__label {
        font-size: 0.94rem;
    }

    .insight-visual-comparison__description {
        font-size: 0.83rem;
    }

}

/* =====================================================
   ARTICLE CONCLUSION
===================================================== */

.insight-conclusion {
    position: relative;

    width: 100%;

    margin: 60px auto 0;
    padding: 0;

    overflow: hidden;

    border: 1px solid #EFE4D8;
    border-left: 5px solid #F2A123;

    background: #FFF9F2;
}


/* =====================================================
   DECORATIVE ACCENT
===================================================== */

.insight-conclusion__accent {
    position: absolute;
    top: 0;
    right: 0;

    width: 92px;
    height: 4px;

    background: #F2A123;
}

.okh-insight-article h1 {font-weight: 600;}

/* =====================================================
   INNER
===================================================== */

.insight-conclusion__inner {
    max-width: 1280px;

    padding: 36px 36px 36px;
}


/* =====================================================
   HEADER
===================================================== */

.insight-conclusion__header {
    margin-bottom: 27px;
}

.insight-conclusion__title {
    max-width: 620px;
    margin: 0;

    font-family: "Play", sans-serif;
    font-size: calc(var(--fs-h3) * 0.9);
    font-weight: 600;
    line-height: 1.18;
    letter-spacing: -0.025em;

    color: #151629;
}


/* =====================================================
   CONTENT
===================================================== */

.insight-conclusion__content {
    max-width: 1100px;
}

.insight-conclusion__content p {
    margin: 0 0 12px;

    font-family: "Repo", sans-serif;
    font-weight: 300;
    font-size: 1.15rem !important;
    line-height: 2rem !important;
    color: #444650;
}

.insight-conclusion__content p:last-child {
    margin-bottom: 0;
}


/* =====================================================
   CLOSING PARAGRAPH
===================================================== */

.insight-conclusion__closing {
    position: relative;

    margin-top: 31px !important;
    padding-top: 27px;

    font-weight: 400 !important;
    color: #151629 !important;
}

.insight-conclusion__closing::before {
    content: "";

    position: absolute;
    top: 0;
    left: 0;

    width: 52px;
    height: 2px;

    background: #F2A123;
}


/* =====================================================
   TABLET
===================================================== */

@media (max-width: 991px) {

    .insight-conclusion {
        max-width: 100%;
        margin-top: 88px;
    }

    .insight-conclusion__inner {
        padding: 42px 42px 44px;
    }

}


/* =====================================================
   MOBILE
===================================================== */

@media (max-width: 767px) {

    .insight-conclusion {
        margin-top: 72px;

        border-left-width: 4px;
        border-radius: 8px;
    }

    .insight-conclusion__accent {
        width: 66px;
        height: 3px;
    }

    .insight-conclusion__inner {
        padding: 34px 25px 36px;
    }

    .insight-conclusion__header {
        margin-bottom: 22px;
    }

    .insight-conclusion__title {
        font-size: 1.78rem;
        line-height: 1.24;
    }

    .insight-conclusion__content p {
        margin-bottom: 20px;

        font-size: 1rem;
        line-height: 1.78;
    }

    .insight-conclusion__closing {
        margin-top: 26px !important;
        padding-top: 23px;
    }

}

/* =====================================================
   ARTICLE REFERENCES
===================================================== */

.insight-references {
    width: 100%;
    margin: 44px auto 0;
    padding-top: 0;
    color: var(--Blue);
}


/* =====================================================
   HEADER
===================================================== */

.insight-references__header {
    margin-bottom: 1rem;
}

.insight-references__kicker {
    display: block;
    margin-bottom: 11px;

    color: var(--Orange);
    font-family: "Repo", sans-serif;
    font-size: 0.7rem;
    font-weight: 500;
    line-height: 1.2;
    letter-spacing: 0.1em;
}

.insight-references__title {
    margin: 0;

    color: var(--Blue);
    font-family: "Play", sans-serif;
    font-size: calc(var(--fs-h3) * 0.9);
    font-weight: 600;
    line-height: 1.22;
    letter-spacing: -0.02em;
}


/* =====================================================
   LIST
===================================================== */

.insight-references__list {
    margin: 0;
    padding: 0;

    list-style: none;
}

.insight-references__item {
    display: grid;
    grid-template-columns: 42px minmax(0, 1fr);
    gap: 4px;

    padding: 12px 0;

    border-bottom: 1px solid rgba(21, 22, 41, 0.09);
}

.insight-references__item:first-child {
    padding-top: 0;
}


/* =====================================================
   NUMBER
===================================================== */

.insight-references__number {
    padding-top: 4px;
    color: var(--Orange);
    font-family: "Repo", sans-serif;
    font-size: 0.74rem;
    font-weight: 600;
    line-height: 1.3;
    letter-spacing: 0.12em;
}


/* =====================================================
   SOURCE CONTENT
===================================================== */

.insight-references__content {
    min-width: 0;
}

.insight-references__type {
    display: inline-block;
    margin-bottom: 6px;

    color: var(--Gray);
    font-family: "Repo", sans-serif;
    font-size: 0.68rem;
    font-weight: 500;
    line-height: 1.2;
    letter-spacing: 0.06em;
    text-transform: uppercase;
}


/* =====================================================
   SOURCE TITLE / LINK
===================================================== */

.insight-references__source {
    margin: 0 0 6px;

    color: var(--Blue);
    font-family: "Repo", sans-serif;
    font-size: 0.9375rem;
    font-weight: 500;
    line-height: 1.5;
    letter-spacing: 0.035rem;
	padding-bottom: 0 !important;
}

.insight-references__source a {
    display: inline;
    color: var(--Orange);
    font-weight: 500;
    text-decoration: none;
    text-underline-offset: 4px;
    transition: color .2s ease, text-decoration-color .2s ease;
}

.insight-references__source a:hover,
.insight-references__source a:focus-visible {
    color: var(--Blue);
    text-decoration: none;
}

.insight-references__source a:hover::after,
.insight-references__source a:focus-visible::after {
    transform: translate(2px, -2px);
}

.insight-references__source a:focus-visible {
    outline: 2px solid rgba(242, 161, 35, 0.3);
    outline-offset: 4px;
    border-radius: 2px;
}


/* =====================================================
   SOURCE DESCRIPTION
===================================================== */

.insight-references__content > p:not(.insight-references__source) {
    max-width: 780px;
    margin: 0;

    color: var(--Gray);
    font-family: "Repo", sans-serif;
    font-size: 0.875rem;
    font-style: normal;
    font-weight: 300;
    line-height: 1.65;
    letter-spacing: 0.025rem;
}


/* =====================================================
   MOBILE
===================================================== */

@media (max-width: 767px) {

    .insight-references {
        margin-top: 72px;
        padding-top: 28px;
    }

    .insight-references__header {
        margin-bottom: 25px;
    }

    .insight-references__title {
        font-size: 1.7rem;
    }

    .insight-references__item {
        grid-template-columns: 34px minmax(0, 1fr);
        gap: 13px;

        padding: 15px 0;
    }

    .insight-references__number {
        padding-top: 3px;
        font-size: 0.68rem;
    }

    .insight-references__source {
        margin-bottom: 5px;
        font-size: 0.875rem;
        line-height: 1.5;
    }

    .insight-references__content > p:not(.insight-references__source) {
        max-width: none;
        font-size: 0.8125rem;
        line-height: 1.6;
    }

}


/* =====================================================
   COMPARISON TABLE — SEPARATOR BEFORE TABLE
===================================================== */

/*
   The gap before the comparison is controlled here.
   The full-width separator sits exactly at its midpoint.
*/
.insight-comparison,
.okh-technical-comparison {
    --insight-comparison-preceding-gap: 3.75rem;
    --insight-comparison-preceding-separator-offset: 2.35rem;

    position: relative;
    margin-top: var(--insight-comparison-preceding-gap);
    overflow: visible;
}

.insight-comparison::before,
.okh-technical-comparison::before {
    content: "";
    position: absolute;
    z-index: 1;
    top: calc(-1 * var(--insight-comparison-preceding-separator-offset));
    right: 0;
    left: 0;
    height: 1px;
    background: rgba(21, 22, 41, 0.09);
    pointer-events: none;
}

@media (max-width: 991px) {

    .insight-comparison,
    .okh-technical-comparison {
        --insight-comparison-preceding-gap: 5.5rem;
        --insight-comparison-preceding-separator-offset: 2.75rem;
    }

}

@media (max-width: 767.98px) {

    .insight-comparison,
    .okh-technical-comparison {
        --insight-comparison-preceding-gap: 4.5rem;
        --insight-comparison-preceding-separator-offset: 2.25rem;
    }

}


/* =====================================================
   ARTICLE SHARE — MOCKUP STYLE
===================================================== */

.insight-share {
	width: 100%;
	margin: 22px auto 0;
}


/* =====================================================
   TITLE
===================================================== */

.insight-share__title {
	margin: 0 0 14px;

	font-family: "Repo", sans-serif;
	font-size: 0.68rem;
	font-weight: 500;
	line-height: 1.2;
	letter-spacing: 0.06em;
	text-transform: uppercase;

	color: #151629;
}


/* =====================================================
   BUTTONS ROW
===================================================== */

.insight-share__buttons {
	display: grid;
	grid-template-columns: repeat(5, minmax(0, 1fr));
	gap: 16px;
}


/* =====================================================
   BUTTON
===================================================== */

.insight-share__button {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 14px;

	min-width: 0;
	min-height: 54px;
	padding: 14px 18px;

	border: 0;
	border-radius: 0;

	background: #F7F7F8;
	color: #151629;

	font-family: "Repo", sans-serif;
	font-size: 0.75rem;
	font-weight: 400;
	line-height: 1;

	text-decoration: none;

	transition:
		background-color 0.25s ease,
		color 0.25s ease,
		transform 0.25s ease;
}


/* =====================================================
   ICON
===================================================== */

.insight-share__icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;

	width: 22px;
	height: 22px;

	flex: 0 0 22px;

	font-size: 1.05rem;
	line-height: 1;
}

.insight-share__icon i {
	display: block;

	margin: 0;
	padding: 0;

	font-size: inherit;
	line-height: 1;
}


/* =====================================================
   LABEL
===================================================== */

.insight-share__label {
	display: inline-block;

	overflow: visible;

	color: inherit;
	white-space: nowrap;
	text-overflow: ellipsis;
}


/* =====================================================
   INTERACTION
===================================================== */

.insight-share__button:hover {
	background: #F2A123;
	color: #151629;

	text-decoration: none;
	transform: translateY(-2px);
}

.insight-share__button:focus-visible {
	outline: 2px solid #F2A123;
	outline-offset: 3px;
}


/* =====================================================
   TABLET
===================================================== */

@media (max-width: 991px) {

	.insight-share__buttons {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

}


/* =====================================================
   MOBILE
===================================================== */

@media (max-width: 767px) {

	.insight-share {
		margin-top: 52px;
	}

	.insight-share__buttons {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 10px;
	}

	.insight-share__button {
		justify-content: flex-start;

		min-height: 52px;
		padding: 13px 15px;

		font-size: 0.74rem;
	}

}


/* =====================================================
   SMALL MOBILE
===================================================== */

@media (max-width: 420px) {

	.insight-share__buttons {
		grid-template-columns: 1fr;
	}

}

/* =====================================================
   ARTICLE INFORMATION
===================================================== */

.insight-article-info {
	width: 100%;
	margin: 22px auto 0;
	padding-top: 20px;
	padding-bottom: 22px;
	border-bottom: 1px solid #E7E7EA;
	border-top: 1px solid #E7E7EA;
}


/* =====================================================
   SECTION TITLE
===================================================== */

.insight-article-info__title {
	margin: 0 0 22px;

	font-family: "Repo", sans-serif;
	font-size: 0.68rem;
	font-weight: 500;
	line-height: 1.2;
	letter-spacing: 0.07em;
	text-transform: uppercase;

	color: #151629;
}


/* =====================================================
   GRID
===================================================== */

.insight-article-info__grid {
	display: grid;
	grid-template-columns: repeat(5, minmax(0, 1fr));
	align-items: center;
}


/* =====================================================
   ITEM
===================================================== */

.insight-article-info__item {
	position: relative;

	display: flex;
	align-items: center;
	gap: 14px;

	min-width: 0;
	padding: 4px 24px;
}

.insight-article-info__item:first-child {
	padding-left: 0;
}

.insight-article-info__item:last-child {
	padding-right: 0;
}


/* Vertical separators */

.insight-article-info__item:not(:last-child)::after {
	content: "";

	position: absolute;
	top: 50%;
	right: 0;

	width: 1px;
	height: 34px;

	background: #DADBE0;

	transform: translateY(-50%);
}


/* =====================================================
   ICON
===================================================== */

.insight-article-info__icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;

	width: 30px;
	height: 30px;

	flex: 0 0 30px;

	color: #676A73;

	font-size: 0.95rem;
	line-height: 1;
}

.insight-article-info__icon i {
	margin: 0;
	padding: 0;

	font-size: inherit;
	line-height: 1;
}


/* =====================================================
   CONTENT
===================================================== */

.insight-article-info__content {
	display: flex;
	flex-direction: column;
	gap: 4px;

	min-width: 0;
}

.insight-article-info__label {
	font-family: "Repo", sans-serif;
	font-size: 0.68rem;
	font-weight: 300;
	line-height: 1.2;

	color: #737380;
}

.insight-article-info__value {
	overflow: hidden;

	font-family: "Repo", sans-serif;
	font-size: 0.78rem;
	font-weight: 400;
	line-height: 1.3;

	color: #151629;

	white-space: nowrap;
	text-overflow: ellipsis;
}


/* =====================================================
   TABLET
===================================================== */

@media (max-width: 991px) {

	.insight-article-info__item {
		padding-right: 20px;
		padding-left: 20px;
	}

}


/* =====================================================
   MOBILE
===================================================== */

@media (max-width: 767px) {

	.insight-article-info {
		margin-top: 58px;
		padding-bottom: 22px;
	}

	.insight-article-info__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		row-gap: 0;
	}

	.insight-article-info__item {
		padding: 18px 16px;
		border-bottom: 1px solid #E7E7EA;
	}

	.insight-article-info__item:first-child {
		padding-left: 0;
	}

	.insight-article-info__item:nth-child(2) {
		padding-right: 0;
	}

	.insight-article-info__item:nth-child(3) {
		padding-left: 0;
		border-bottom: 0;
	}

	.insight-article-info__item:last-child {
		padding-right: 0;
		border-bottom: 0;
	}

	.insight-article-info__item:nth-child(2)::after {
		display: none;
	}

	.insight-article-info__item:nth-child(3)::after {
		display: block;
	}

}


/* =====================================================
   SMALL MOBILE
===================================================== */

@media (max-width: 480px) {

	.insight-article-info__grid {
		grid-template-columns: 1fr;
	}

	.insight-article-info__item,
	.insight-article-info__item:first-child,
	.insight-article-info__item:nth-child(2),
	.insight-article-info__item:nth-child(3),
	.insight-article-info__item:last-child {
		padding: 16px 0;
		border-bottom: 1px solid #E7E7EA;
	}

	.insight-article-info__item:last-child {
		border-bottom: 0;
	}

	.insight-article-info__item::after {
		display: none !important;
	}

}

/* =====================================================
   RELATED ARTICLES
===================================================== */

.insight-related {
	width: 100%;
	margin: 22px auto 0;
}

.insight-related__heading {
	margin: 0 0 18px;

	font-family: "Repo", sans-serif;
	font-size: 0.68rem;
	font-weight: 500;
	line-height: 1.2;
	letter-spacing: 0.07em;
	text-transform: uppercase;

	color: #151629;
}

.insight-related__grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 18px;
}

/* =====================================================
   RELATED ARTICLES
===================================================== */

.insight-related {
	width: 100%;
	margin: 72px 0 0;
}

.insight-related__header {
	display: flex;
	align-items: center;

	margin-bottom: 28px;
}

.insight-related__heading {
	position: relative;

	margin: 0 !important;
	padding-left: 18px;

	font-family: "Play", sans-serif;
	font-size: clamp(1.1rem, 1.6vw, 1.45rem) !important;
	font-weight: 600 !important;
	line-height: 1.25 !important;
	letter-spacing: 0.015em;

	color: #151629 !important;
}

.insight-related__heading::before {
	position: absolute;
	top: 2px;
	bottom: 2px;
	left: 0;

	width: 4px;
	border-radius: 3px;

	background: #F2A123;

	content: "";
}

.insight-related__grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 24px;
}


/* =====================================================
   RELATED CARD
===================================================== */

.insight-related-card {
	min-width: 0;
	margin: 0;

	overflow: hidden;

	border: 1px solid #E3E4E8;
	border-radius: 14px;
	background: #FAFAFA;

	transition:
		transform 0.3s ease,
		border-color 0.3s ease,
		box-shadow 0.3s ease;
}

.insight-related-card__link {
	display: flex;
	flex-direction: column;

	height: 100%;

	color: inherit;
	text-decoration: none;
}

.insight-related-card__media {
	position: relative;

	overflow: hidden;
	aspect-ratio: 16 / 9;

	background: #F1F2F4;
}

.insight-related-card__image {
	display: block;

	width: 100%;
	height: 100%;

	object-fit: cover;

	transition: transform 0.5s ease;
}

.insight-related-card__content {
	display: flex;
	flex: 1;
	flex-direction: column;

	min-height: 260px;
	padding: 22px 22px 20px;
}

.insight-related-card__meta {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;

	margin-bottom: 15px;
}

.insight-related-card__type,
.insight-related-card__reading-time {
	font-family: "Repo", sans-serif;
	font-size: 0.68rem;
	line-height: 1.3;
}

.insight-related-card__type {
	font-weight: 500;
	letter-spacing: 0.055em;
	text-transform: uppercase;

	color: #C0733A;
}

.insight-related-card__reading-time {
	flex-shrink: 0;

	font-weight: 300;
	white-space: nowrap;

	color: #737380;
}

.insight-related-card__title {
	display: -webkit-box;
	overflow: hidden;

	margin: 0 0 12px !important;

	font-family: "Play", sans-serif;
	font-size: clamp(1rem, 1.15vw, 1.22rem) !important;
	font-weight: 600 !important;
	line-height: 1.35 !important;

	color: #151629 !important;

	transition: color 0.3s ease;

	-webkit-box-orient: vertical;
	-webkit-line-clamp: 3;
}

.insight-related-card__description {
	display: -webkit-box;
	overflow: hidden;

	margin: 0 0 20px !important;

	font-family: "Repo", sans-serif;
	font-size: 0.85rem;
	font-weight: 300;
	line-height: 1.55;
	padding-bottom: 0 !important;

	color: #62626E;

	-webkit-box-orient: vertical;
	-webkit-line-clamp: 3;
}

.insight-related-card__arrow {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	align-self: flex-end;

	width: 42px;
	height: 42px;
	margin-top: auto;
	flex: 0 0 42px;

	border-radius: 50%;
	background: #F2A123;
	color: #151629;

	transition:
		transform 0.3s ease,
		background-color 0.3s ease,
		color 0.3s ease;
}

.insight-related-card__arrow svg {
	width: 19px;
	height: 19px;

	fill: none;
	stroke: currentColor;
	stroke-width: 1.8;
	stroke-linecap: round;
	stroke-linejoin: round;
}

.insight-related-card__link:hover {
	color: inherit;
	text-decoration: none;
}

.insight-related-card:hover {
	transform: translateY(-4px);

	border-color: #D5D6DC;
	box-shadow: 0 14px 32px rgba(21, 22, 41, 0.1);
}

.insight-related-card__link:hover .insight-related-card__image {
	transform: scale(1.035);
}

.insight-related-card__link:hover .insight-related-card__title {
	color: #C0733A !important;
}

.insight-related-card__link:hover .insight-related-card__arrow {
	transform: translate(2px, -2px);

	background: #151629;
	color: #FFFFFF;
}

.insight-related-card__link:focus-visible {
	border-radius: 14px;
	outline: 2px solid #F2A123;
	outline-offset: 3px;
}


/* =====================================================
   RELATED ARTICLES — RESPONSIVE
===================================================== */

@media (max-width: 1023px) {

	.insight-related {
		margin-top: 60px;
	}

	.insight-related__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 22px;
	}

	.insight-related-card__content {
		min-height: 245px;
	}
}


@media (max-width: 680px) {

	.insight-related {
		margin-top: 48px;
	}

	.insight-related__header {
		margin-bottom: 22px;
	}

	.insight-related__heading {
		padding-left: 14px;

		font-size: 1.05rem !important;
	}

	.insight-related__grid {
		grid-template-columns: minmax(0, 1fr);
		gap: 20px;
	}

	.insight-related-card__content {
		min-height: 0;
		padding: 19px 18px 18px;
	}

	.insight-related-card__meta {
		align-items: flex-start;
		margin-bottom: 13px;
	}

	.insight-related-card__title {
		font-size: 1.08rem !important;
	}

	.insight-related-card__description {
		font-size: 0.82rem;
	}

	.insight-related-card__arrow {
		width: 40px;
		height: 40px;
		flex-basis: 40px;
	}
}


@media (prefers-reduced-motion: reduce) {

	.insight-related-card,
	.insight-related-card__image,
	.insight-related-card__title,
	.insight-related-card__arrow {
		transition: none;
	}

	.insight-related-card:hover,
	.insight-related-card__link:hover .insight-related-card__image,
	.insight-related-card__link:hover .insight-related-card__arrow {
		transform: none;
	}
}

/* =====================================================
   KNOWLEDGE CENTER CTA
===================================================== */

.insight-knowledge-cta {
	width: 100%;
	margin: 18px auto 0;
}

.insight-knowledge-cta__inner {
	display: grid;
	grid-template-columns: 66px minmax(0, 1fr) auto;
	align-items: center;
	gap: 24px;

	padding: 22px 28px;

	background:
		linear-gradient(
			90deg,
			#FFF6E9 0%,
			#FFF9F2 55%,
			#FFFDF9 100%
		);
}


/* =====================================================
   CTA ICON
===================================================== */

.insight-knowledge-cta__icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;

	width: 58px;
	height: 58px;

	border-radius: 50%;

	background: rgba(242, 161, 35, 0.14);
	color: #F2A123;
}

.insight-knowledge-cta__icon svg {
	display: block;

	width: 32px;
	height: 32px;
}


/* =====================================================
   CTA CONTENT
===================================================== */

.insight-knowledge-cta__content {
	min-width: 0;
}

.insight-knowledge-cta__title {
	margin: 0 0 6px;

	font-family: "Play", sans-serif;
	font-size: 1.12rem;
	font-weight: 600;
	line-height: 1.25;

	color: #151629;
}

.insight-knowledge-cta__text {
	max-width: 820px;
	margin: 0;

	font-family: "Repo", sans-serif;
	font-size: 0.75rem;
	font-weight: 300;
	line-height: 1.55;

	color: #626570;
}


/* =====================================================
   CTA BUTTON
===================================================== */

.insight-knowledge-cta__action {
	flex-shrink: 0;
}

.insight-knowledge-cta__button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 12px;

	min-width: 224px;
	min-height: 44px;
	padding: 12px 22px;

	border: 1px solid #F2A123;

	background: #F2A123;
	color: #151629;

	font-family: "Repo", sans-serif;
	font-size: 0.66rem;
	font-weight: 500;
	line-height: 1;
	letter-spacing: 0.04em;

	text-decoration: none;

	transition:
		background-color 0.25s ease,
		color 0.25s ease,
		transform 0.25s ease;
}

.insight-knowledge-cta__button svg {
	width: 18px;
	height: 18px;

	transition: transform 0.25s ease;
}

.insight-knowledge-cta__button:hover {
	background: transparent;
	color: #C0733A;

	text-decoration: none;
	transform: translateY(-4px);
	
}

.insight-knowledge-cta__button:hover svg {
	transform: translateX(3px);
}

.insight-knowledge-cta__button:focus-visible {
	outline: 2px solid #151629;
	outline-offset: 3px;
}


/* =====================================================
   TABLET
===================================================== */

@media (max-width: 991px) {

	.insight-related__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.insight-knowledge-cta__inner {
		grid-template-columns: 58px minmax(0, 1fr);
	}

	.insight-knowledge-cta__action {
		grid-column: 2;
	}

}


/* =====================================================
   MOBILE
===================================================== */

@media (max-width: 767px) {

	.insight-related {
		margin-top: 68px;
	}

	.insight-related__grid {
		grid-template-columns: 1fr;
		gap: 14px;
	}

	.insight-related-card__media {
		aspect-ratio: 16 / 8;
	}

	.insight-related-card__content {
		min-height: 0;
		padding: 17px 18px;
	}

	.insight-related-card__title {
		font-size: 1rem;

		-webkit-line-clamp: 2;
	}


	.insight-knowledge-cta {
		margin-top: 16px;
	}

	.insight-knowledge-cta__inner {
		grid-template-columns: 1fr;
		gap: 16px;

		padding: 26px 22px;
	}

	.insight-knowledge-cta__icon {
		width: 54px;
		height: 54px;
	}

	.insight-knowledge-cta__action {
		grid-column: auto;

		width: 100%;
	}

	.insight-knowledge-cta__button {
		width: 100%;
		min-width: 0;
	}

}

/* =====================================================
   TECHNICAL COMPARISON
===================================================== */

.okh-technical-comparison {
    width: 100%;
    margin: 66px auto 0;
    padding: 34px;
    border: 1px solid #E3E5EC;
    border-radius: 12px;
    background: #FFFFFF;
}


/* =====================================================
   SECTION HEADER
===================================================== */

.okh-technical-comparison__header {
    max-width: 880px;
    margin: 0 0 38px;
}

.okh-technical-comparison__kicker {
    display: block;
    margin: 0 0 12px;

    font-family: "Repo", sans-serif;
    font-size: 0.72rem;
    font-weight: 500;
    line-height: 1.2;
    letter-spacing: 0.09em;
    text-transform: uppercase;

    color: #F2A123;
}

.okh-technical-comparison__title {
    margin: 0 0 16px;

    font-family: "Play", sans-serif;
    font-size: clamp(2rem, 3vw, 2.65rem);
    font-weight: 600;
    line-height: 1.15;
    letter-spacing: -0.025em;

    color: #111A31;
}

.okh-technical-comparison__description {
    margin: 0;

    font-family: "Repo", sans-serif;
    font-size: 1.03rem;
    font-weight: 300;
    line-height: 1.75;

    color: #555966;
}


/* =====================================================
   TABLE WRAPPER
===================================================== */

.okh-technical-comparison__table-wrap {
    width: 100%;
    overflow-x: auto;

    border: 1px solid #D9DDE4;
    border-radius: 12px;

    background: #FFFFFF;

    box-shadow:
        0 14px 38px rgba(17, 26, 49, 0.06);

    scrollbar-width: thin;
    scrollbar-color: #C9CDD5 transparent;
}

.okh-technical-comparison__table-wrap:focus-visible {
    outline: 2px solid #F2A123;
    outline-offset: 4px;
}


/* =====================================================
   TABLE
===================================================== */

.okh-technical-comparison__table {
    width: 100%;
    min-width: 840px;

    border-collapse: separate;
    border-spacing: 0;
    table-layout: fixed;

    font-family: "Repo", sans-serif;

    color: #151B2D;
    background: #FFFFFF;
}


/* Column widths */

.okh-technical-comparison__table th:first-child {
    width: 29%;
}

.okh-technical-comparison__table th:nth-child(2),
.okh-technical-comparison__table th:nth-child(3),
.okh-technical-comparison__table th:nth-child(4),
.okh-technical-comparison__table th:nth-child(5) {
    width: 35.5%;
}


/* =====================================================
   TABLE HEADER
===================================================== */

.okh-technical-comparison__head {
    height: 86px;
    padding: 17px 22px;

    /* Prevent Bootstrap table variables from covering the gradient. */
    --bs-table-bg: transparent;
    --bs-table-accent-bg: transparent;

    border-right: 1px solid rgba(255, 255, 255, 0.22);

    font-family: "Repo", sans-serif;
    font-weight: 500;
    line-height: 1.25;
    text-align: center;
    vertical-align: middle;

    color: var(--White, #FFFFFF) !important;
    background-color: transparent;
    background-image: none;
    box-shadow: none;
}

.okh-technical-comparison__head:last-child {
    border-right: 0;
}

.okh-technical-comparison__table thead th:first-child,
.okh-technical-comparison__head--parameter {
    background:
        linear-gradient(
            135deg,
            #101B34 0%,
            var(--Blue, #151629) 55%,
            #172949 100%
        ) !important;
}

.okh-technical-comparison__table thead th:nth-child(2),
.okh-technical-comparison__head--timber {
    background:
        linear-gradient(
            135deg,
            #E9930A 0%,
            var(--Orange, #F2A123) 55%,
            #F6B13F 100%
        ) !important;
}

.okh-technical-comparison__table thead th:nth-child(n + 3),
.okh-technical-comparison__head--metal {
    background:
        linear-gradient(
            135deg,
            #33485D 0%,
            #435C73 100%
        ) !important;
}

.okh-technical-comparison__head-title,
.okh-technical-comparison__head-subtitle {
    display: block;
}

.okh-technical-comparison__head-title {
    font-size: 1rem;
    font-weight: 500;
    letter-spacing: 0.02em;
    text-transform: uppercase;
}

.okh-technical-comparison__head-subtitle {
    margin-top: 7px;

    font-size: 0.78rem;
    font-weight: 400;
    letter-spacing: 0.02em;
    text-transform: uppercase;

    opacity: 0.96;
}


/* Rounded top corners */

.okh-technical-comparison__head:first-child {
    border-top-left-radius: 11px;
}

.okh-technical-comparison__head:last-child {
    border-top-right-radius: 11px;
}


/* =====================================================
   TABLE BODY
===================================================== */

.okh-technical-comparison__table tbody th,
.okh-technical-comparison__table tbody td {
    height: 96px;
    padding: 20px 22px;

    border-right: 1px solid #D9DDE4;
    border-bottom: 1px solid #D9DDE4;

    font-size: 0.96rem;
    line-height: 1.55;
    text-align: left;
    vertical-align: middle;

    background: #FFFFFF;
}

.okh-technical-comparison__table tbody td:last-child {
    border-right: 0;
}

.okh-technical-comparison__table tbody tr:last-child th,
.okh-technical-comparison__table tbody tr:last-child td {
    border-bottom: 0;
}


/* Parameter column */

.okh-technical-comparison__table tbody th {
    font-weight: 500;
    color: #131B31;

    background:
        linear-gradient(
            90deg,
            #FFFFFF 0%,
            #FBFCFD 100%
        );
}


/* Timber column */

.okh-technical-comparison__timber-cell {
    font-weight: 400;

    color: #111A31;

    background:
        linear-gradient(
            90deg,
            rgba(242, 161, 35, 0.075) 0%,
            rgba(242, 161, 35, 0.035) 100%
        ) !important;
}


/* Metal column */

.okh-technical-comparison__table tbody td:nth-child(3) {
    color: #303846;

    background:
        linear-gradient(
            90deg,
            #FFFFFF 0%,
            #FAFBFC 100%
        );
}


/* =====================================================
   PARAMETER WITH ICON
===================================================== */

.okh-technical-comparison__parameter {
    display: flex;
    align-items: center;
    gap: 18px;
}

.okh-technical-comparison__icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;

    width: 52px;
    height: 52px;

    flex: 0 0 52px;

    border: 1px solid rgba(242, 161, 35, 0.22);
    border-radius: 50%;

    background:
        linear-gradient(
            145deg,
            #FFFFFF 0%,
            #FFF6E8 100%
        );

    color: #F2A123;

    box-shadow:
        0 5px 15px rgba(242, 161, 35, 0.08);
}

.okh-technical-comparison__icon svg {
    display: block;
    width: 29px;
    height: 29px;

    fill: none;
    stroke: currentColor;
    stroke-width: 1.65;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.okh-technical-comparison__parameter-name {
    display: block;

    font-size: 0.82rem;
    font-weight: 500;
    line-height: 1.35;
    letter-spacing: 0.015em;
    text-transform: uppercase;
}

.okh-technical-comparison__parameter-name small {
    display: block;
    margin-top: 4px;

    font: inherit;
    font-size: 0.72rem;
}


/* =====================================================
   ROW INTERACTION
===================================================== */

@media (hover: hover) {

    .okh-technical-comparison__table tbody tr {
        transition: background-color 0.25s ease;
    }

    .okh-technical-comparison__table tbody tr:hover th,
    .okh-technical-comparison__table tbody tr:hover td {
        background: #F8F9FB;
    }

    .okh-technical-comparison__table tbody tr:hover
    .okh-technical-comparison__timber-cell {
        background:
            linear-gradient(
                90deg,
                rgba(242, 161, 35, 0.13) 0%,
                rgba(242, 161, 35, 0.065) 100%
            ) !important;
    }

    .okh-technical-comparison__table tbody tr:hover
    .okh-technical-comparison__icon {
        border-color: rgba(242, 161, 35, 0.55);

        transform: translateY(-1px);
    }

}

.okh-technical-comparison__icon {
    transition:
        border-color 0.25s ease,
        transform 0.25s ease;
}


/* =====================================================
   TABLET
===================================================== */

@media (max-width: 991px) {

    .okh-technical-comparison {
        max-width: 100%;
        margin-top: 84px;
    }

    .okh-technical-comparison__header {
        margin-bottom: 32px;
    }

    .okh-technical-comparison__table {
        min-width: 820px;
    }

    .okh-technical-comparison__table tbody th,
    .okh-technical-comparison__table tbody td {
        padding: 18px 20px;

        font-size: 0.91rem;
    }

    .okh-technical-comparison__parameter {
        gap: 14px;
    }

    .okh-technical-comparison__icon {
        width: 46px;
        height: 46px;

        flex-basis: 46px;
    }

    .okh-technical-comparison__icon svg {
        width: 25px;
        height: 25px;
    }

}


/* =====================================================
   MOBILE
===================================================== */

@media (max-width: 767px) {

    .okh-technical-comparison {
        margin-top: 70px;
    }

    .okh-technical-comparison__header {
        margin-bottom: 26px;
    }

    .okh-technical-comparison__kicker {
        margin-bottom: 10px;

        font-size: 0.68rem;
    }

    .okh-technical-comparison__title {
        margin-bottom: 13px;

        font-size: 1.75rem;
        line-height: 1.22;
    }

    .okh-technical-comparison__description {
        font-size: 0.98rem;
        line-height: 1.7;
    }

    .okh-technical-comparison__table-wrap {
        border-radius: 9px;

        box-shadow:
            0 10px 25px rgba(17, 26, 49, 0.055);
    }

    .okh-technical-comparison__table {
        min-width: 760px;
    }

    .okh-technical-comparison__head {
        height: 76px;
        padding: 14px 17px;
    }

    .okh-technical-comparison__head-title {
        font-size: 0.86rem;
    }

    .okh-technical-comparison__head-subtitle {
        font-size: 0.68rem;
    }

    .okh-technical-comparison__table tbody th,
    .okh-technical-comparison__table tbody td {
        height: 88px;
        padding: 16px 17px;

        font-size: 0.84rem;
        line-height: 1.5;
    }

    .okh-technical-comparison__icon {
        width: 42px;
        height: 42px;

        flex-basis: 42px;
    }

    .okh-technical-comparison__icon svg {
        width: 23px;
        height: 23px;
    }

    .okh-technical-comparison__parameter-name {
        font-size: 0.73rem;
    }

}


/* =====================================================
   REDUCED MOTION
===================================================== */

@media (prefers-reduced-motion: reduce) {

    .okh-technical-comparison__icon,
    .okh-technical-comparison__table tbody tr {
        transition: none;
    }

}


/* =====================================================
  360 page link
===================================================== */
.pg360-project-link {
    display: block;
    align-items: center;
    gap: 8px;

    margin-top: 30px;

    color: #F2A123;
    font-size: 14px;
    font-weight: 600;
    line-height: 1.2;
    letter-spacing: 0.12em;
    text-transform: uppercase;

    text-decoration: none;

    transition:
        color 0.25s ease,
        gap 0.25s ease;
}

.pg360-project-link__arrow {
    display: inline-block;
    font-size: 17px;
    line-height: 1;

    transition: transform 0.25s ease;
}

.pg360-project-link:hover,
.pg360-project-link:focus-visible {
    gap: 11px;
	text-decoration:none;
}

.pg360-project-link:hover .pg360-project-link__arrow,
.pg360-project-link:focus-visible .pg360-project-link__arrow {
    transform: translateX(4px);
}

.pg360-project-link:focus-visible {

    outline-offset: 5px;
}
/* =========================================================
   360 PAGE — MID PAGE CTA
========================================================= */

.pg360-mid-cta {
    width: 100%;
    padding:0;
}

.pg360-mid-cta__inner {
    margin: 0 auto;

    display: grid;
    grid-template-columns: 1.05fr 1.45fr 1fr;
    align-items: center;
    gap: clamp(32px, 4vw, 40px);

    padding: clamp(30px, 3vw, 44px)
             clamp(28px, 4vw, 36px);

	border: 1px solid rgba(242, 161, 35, 0.28);
    border-radius: 1.15rem;	

    position: relative;
    overflow: hidden;
	background: rgba(255, 255, 255, 0.045);
}


/* subtle background detail */
.pg360-mid-cta__inner::after {
    content: "";
    position: absolute;

    width: 420px;
    height: 180px;

    right: 7%;
    bottom: -100px;

    background: rgba(255, 255, 255, 0.025);
    transform: rotate(-20deg);

    pointer-events: none;
}


/* ---------------------------------------------------------
   HEADING
--------------------------------------------------------- */

.pg360-mid-cta__heading {
    position: relative;
    padding-right: clamp(25px, 3vw, 28px);
}

.pg360-mid-cta__heading::after, .pg360-mid-cta__content::after {
    content: "";
    position: absolute;

    top: 0;
    right: 0;

    width: 1px;
    height: 100%;

    background: #F2A123;
}


.pg360-mid-cta__eyebrow {
    display: block;

    margin-bottom: 4px;

    color: #ffffff;
	font-family: Play;
    font-size: clamp(18px, 1.6vw, 24px);
    line-height: 1.2;

    font-weight: 400;
    letter-spacing: 0.03em;
}


.pg360-mid-cta__title {
    margin: 0;

    color: #F2A123;

    font-size: clamp(24px, 2vw, 32px);
    line-height: 1.12;

    font-weight: 700;
    letter-spacing: 0.075em;
}


/* ---------------------------------------------------------
   DESCRIPTION
--------------------------------------------------------- */

.pg360-mid-cta__content {
    position: relative;
    z-index: 1;
	padding-right: clamp(25px, 3vw, 28px);
}

.pg360-mid-cta__content p {
    margin: 0;
    color: #fff !important;
}

.pg360-mid-cta__action > .footer_form_btn {     background: rgba(242, 161, 35, 0.12);
    font-size: 14px !important;
    font-weight: 600 !important;
    line-height: 1.2 !important;
    letter-spacing: 0.12em;}


/* ---------------------------------------------------------
   LINK
--------------------------------------------------------- */

.pg360-mid-cta__action {
    position: relative;
    z-index: 1;

    display: flex;
    justify-content: flex-end;
}


.pg360-mid-cta__link {
    display: inline-flex;
    align-items: center;
    gap: 12px;

    padding-bottom: 10px;

    color: #F2A123;

    font-size: clamp(13px, 1vw, 15px);
    font-weight: 600;

    letter-spacing: 0.06em;
    text-transform: uppercase;

    text-decoration: none;

    border-bottom: 1px solid rgba(242, 161, 35, 0.80);

    transition:
        color 0.25s ease,
        border-color 0.25s ease;
}


.pg360-mid-cta__arrow {
    display: inline-block;

    font-size: 20px;
    line-height: 1;

    transition: transform 0.25s ease;
}


.pg360-mid-cta__link:hover {
    color: #ffffff;
    border-color: #ffffff;
}


.pg360-mid-cta__link:hover .pg360-mid-cta__arrow {
    transform: translateX(5px);
}


/* =========================================================
   TABLET
========================================================= */

@media (max-width: 960px) {
	
	.pg360-mid-cta {
        padding: 40px 0;
		width: min(100% - 10px, 1180px);
    }

    .pg360-mid-cta__inner {
        grid-template-columns: 1fr 1.4fr;
    }

    .pg360-mid-cta__action {
        grid-column: 1 / -1;

        justify-content: flex-start;

        padding-left: calc(40% + 20px);
    }
}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 700px) {

    .pg360-mid-cta {
        padding: 40px 0;
		width: min(100% - 10px, 1180px);
    }

    .pg360-mid-cta__inner {
        width: min(100% - 30px, 1180px);

        grid-template-columns: 1fr;
        gap: 24px;

        padding: 28px 24px;
    }

    .pg360-mid-cta__heading {
        padding-right: 0;
        padding-bottom: 22px;
    }

    .pg360-mid-cta__heading::after {
        top: auto;
        right: auto;
        left: 0;
        bottom: 0;

        width: 42px;
        height: 2px;
    }

    .pg360-mid-cta__action {
        grid-column: auto;

        padding-left: 0;

        justify-content: flex-start;
    }

    .pg360-mid-cta__link {
        font-size: 13px;
    }
}

/* =====================================================
   ARTICLE SECTION LIST
===================================================== */

.insight-section-list {
    margin: 22px 0 0;
    padding: 0;

    list-style: none;

    font-family: "Repo", sans-serif;
    font-size: inherit;
    font-weight: 300;
    line-height: 1.75;

    color: inherit;
}

.insight-section-list li {
    position: relative;

    margin: 0 0 12px;
    padding-left: 22px;
}

.insight-section-list li:last-child {
    margin-bottom: 0;
}

.insight-section-list li::before {
    content: "";

    position: absolute;
    top: 0.72em;
    left: 0;

    width: 6px;
    height: 6px;

    border-radius: 50%;

    background: #F2A123;
}

/* =====================================================
   INSIGHT SECTIONS
   Yellow accent under title + separators between items
===================================================== */

/* Κάθε block περιλαμβάνει intro row και, όπου υπάρχει, glossary */
.insight-section .insight-section-block {
    padding-bottom: 48px;
    margin-bottom: 36px;
    border-bottom: 1px solid rgba(21, 22, 41, 0.07);
}

/* Δεν θέλουμε γραμμή μετά το τελευταίο section */
.insight-section .insight-section-block:last-child {
    border-bottom: none;
    margin-bottom: 0;
    padding-bottom: 0;
}

/* Τίτλος */
.insight-section .insight-section-heading h2 {
    position: relative;
    margin-bottom: 28px;
    padding-bottom: 16px;
}

/* Κίτρινη γραμμή κάτω από τον τίτλο */
.insight-section .insight-section-heading h2::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;

    width: 64px;
    height: 4px;

    background: #F2A123;
    border-radius: 2px;
}

/* Mobile */
@media (max-width: 768px) {

    .insight-section .insight-section-block {
        padding-bottom: 36px;
        margin-bottom: 36px;
    }

    .insight-section .insight-section-heading h2 {
        margin-bottom: 22px;
        padding-bottom: 14px;
    }

    .insight-section .insight-section-heading h2::after {
        width: 52px;
        height: 3px;
    }
}

/* =========================================================
   INSIGHTS — TECHNICAL TOOLTIPS
   Floating UI
========================================================= */

.technical-term {
    border-bottom: 1px dotted #F2A123;

    cursor: help;

    text-decoration: none;

    transition: border-color .18s ease;
}

.technical-term:hover,
.technical-term:focus-visible {
    border-bottom-color: #151629;
}

.technical-term:focus-visible {
    outline: none;
}


/* Floating tooltip
--------------------------------------------------------- */

.technical-tooltip {
    position: absolute;

    width: max-content;
    max-width: 280px;

    padding: 11px 14px;

    background: #151629;
    color: #FFFFFF;

    border: 1px solid rgba(255, 255, 255, .10);
    border-radius: 7px;

    box-shadow:
        0 8px 24px rgba(21, 22, 41, .16);

    font-family: "Repo", sans-serif;
    font-size: 13px;
    font-weight: 300;
    line-height: 1.5;

    text-align: left;
    text-transform: none;
    letter-spacing: normal;

    opacity: 0;
    visibility: hidden;

    pointer-events: none;

    z-index: 99999;

    transition:
        opacity .15s ease,
        visibility .15s ease;
}


/* Visible
--------------------------------------------------------- */

.technical-tooltip.is-visible {
    opacity: 1;
    visibility: visible;
}


/* Arrow
--------------------------------------------------------- */

.technical-tooltip__arrow {
    position: absolute;

    width: 8px;
    height: 8px;

    background: #151629;

    transform: rotate(45deg);
}


/* Mobile
--------------------------------------------------------- */

@media (max-width: 767px) {

    .technical-tooltip {
        max-width: min(260px, calc(100vw - 30px));

        font-size: 12.5px;
        line-height: 1.5;
    }

}

.faq-item {
    border: 1px solid #ffffff1a;
    border-radius: 12px 12px 0 0;
    margin-bottom: 12px;
    overflow: hidden;
    background: #ffffff1a;
    transition: 0.25s ease;
}

.faq-header {
    display: flex;
    align-items: stretch;
    background: #fff;
}

.faq-question {
    flex: 1;
    width: 100%;
    padding: 18px 20px;
    background: var(--Blue);
    border: 0;
    text-align: left;
    font-weight: 700;
    color: #fff;
    display: flex;
    justify-content: space-between;
    gap: 15px;
    cursor: pointer;
    transition: background 0.25s ease;
}

.faq-question-text {
    line-height: 1.4;
    font-family: 'Repo';
    font-size: var(--fs-body);
    font-weight: normal;
}

.faq-toggle {
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    transition: transform 0.25s ease;
}

.faq-svg-icon {
    width: 16px;
    height: 16px;
    transition: transform 0.25s ease;
}

.faq-answer {
    display: none;
    padding: 1.5rem;
    background: #FFF;
    line-height: 1.65;
}

.faq-item.open .faq-answer {
    display: block;
}

.faq-item.open .faq-svg-icon {
    transform: rotate(135deg);
}

.faq-item.open .faq-toggle {
    color: #F2A123;
}

#material-cert .faq-answer {
    display: none;
}

#material-cert .faq-header.active + .faq-answer {
    display: block;
}

#material-cert .faq-svg-icon {
    transition: transform 0.25s ease;
}

#material-cert .faq-header.active .faq-svg-icon {
    transform: rotate(180deg);
}

#elx_article_page_51 .elx5_article_h1i {
	text-wrap-style: auto;
	max-width: 900px;
}

/* =====================================================
   INSIGHT SECTION BLOCK
===================================================== */

.insight-section .insight-section-block {
    margin-bottom: 20px;
    padding-bottom: 36px;
    border-bottom: 1px solid rgba(21, 22, 41, 0.07);
}


/* =====================================================
   RELATED TECHNICAL ANALYSIS
===================================================== */

.insight-related-analysis {
    position: relative;
    width: 100%;
    margin-top: 2.25rem;
    padding: 1.1875rem 0 0;
    color: var(--Blue);
    font-family: "Repo", sans-serif;
}

.insight-section-block > .insight-related-analysis {
    display: block;
    flex: 0 0 auto;
    align-self: stretch;
    width: 100%;
    min-width: 100%;
    max-width: none;
    clear: both;
}

.insight-related-analysis,
.insight-related-analysis *,
.insight-related-analysis *::before,
.insight-related-analysis *::after {
    box-sizing: border-box;
}

.insight-related-analysis::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 2.25rem;
    height: 2px;
    background: var(--Orange);
}


/* =====================================================
   COMPONENT LABELS
===================================================== */

.insight-related-analysis__kicker,
.insight-section-terms-title {
    display: block;
    margin: 0 0 0.4375rem;
    color: var(--Gray);
    font-family: "Repo", sans-serif;
    font-size: 0.7rem;
    font-style: normal;
    font-weight: 500;
    line-height: 1.35;
    letter-spacing: 0.09em;
    text-transform: uppercase;
}


/* =====================================================
   RELATED TECHNICAL ANALYSIS — LINK
===================================================== */

.insight-related-analysis__link {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    gap: 1.25rem;

    width: 100%;
    min-height: 3rem;
    padding: 0.5rem 0;

    color: var(--Blue);
    background: transparent;
    border: 0;
    text-decoration: none;
    cursor: pointer;

    transition:
        color 0.22s ease,
        background-color 0.22s ease;
}


/* =====================================================
   LINK TITLE
===================================================== */

.insight-related-analysis__title {
    position: relative;
    display: inline-block;
    flex: 0 1 auto;

    width: fit-content;
    max-width: calc(100% - 3.75rem);
    min-width: 0;

    color: inherit;
    font-family: "Repo", sans-serif;
    font-size: 1rem;
    font-style: normal;
    font-weight: 400;
    line-height: 1.55;
    letter-spacing: 0.025em;
}


/* =====================================================
   ARROW
===================================================== */

.insight-related-analysis__arrow {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 1.875rem;

    width: 1.875rem;
    height: 1.875rem;

    color: var(--Orange);
    border: 1px solid rgba(242, 161, 35, 0.65);
    border-radius: 50%;

    transition:
        color 0.22s ease,
        background-color 0.22s ease,
        border-color 0.22s ease,
        transform 0.22s ease;
}

.insight-related-analysis__arrow svg {
    display: block;
    width: 0.875rem;
    height: 0.875rem;

    fill: none;
    stroke: currentColor;
    stroke-width: 1.65;
    stroke-linecap: round;
    stroke-linejoin: round;
}


/* =====================================================
   KEYBOARD FOCUS
===================================================== */

.insight-related-analysis__link:focus-visible {
    color: var(--Orange);
    background: rgba(242, 161, 35, 0.035);

    outline: 2px solid rgba(242, 161, 35, 0.3);
    outline-offset: 4px;
    text-decoration: none;
}

.insight-related-analysis__link:focus-visible
.insight-related-analysis__title::after {
    background: var(--Orange);
}

.insight-related-analysis__link:focus-visible
.insight-related-analysis__arrow {
    color: var(--White);
    background-color: var(--Orange);
    border-color: var(--Orange);
    transform: translateX(3px);
}


/* =====================================================
   DESKTOP HOVER
===================================================== */

@media (hover: hover) and (pointer: fine) {

    /* Hover is active across the entire link row */

    .insight-related-analysis__link:hover {
        color: var(--Orange);
        text-decoration: none;
    }

    /* The line remains limited to the title */

    .insight-related-analysis__link:hover
    .insight-related-analysis__title::after {
        background: var(--Orange);
    }

    .insight-related-analysis__link:hover
    .insight-related-analysis__arrow {
        color: var(--White);
        background-color: var(--Orange);
        border-color: var(--Orange);
        transform: translateX(3px);
    }

}


/* =====================================================
   INSIGHT SECTION TERMS
===================================================== */

.insight-section-terms {
    position: relative;
    width: 100%;
    margin-top: 2.25rem;
    padding: 1.1875rem 0 0;
    color: var(--Blue);
    font-family: "Repo", sans-serif;
}

/* Όροι που ακολουθούν αμέσως μετά τη Σχετική Ανάλυση */
.insight-related-analysis + .insight-section-terms {
    margin-top: 1.25rem;
    padding-top: 0;
    border-top: 0;
}

/* Αφαιρεί τη δεύτερη πορτοκαλί γραμμή */
.insight-related-analysis + .insight-section-terms::before {
    display: none;
}

/* Διακριτική γραμμή μόνο πάνω από τον τίτλο */
.insight-related-analysis +
.insight-section-terms
.insight-section-terms-header {
    width: fit-content;
    max-width: 100%;
    padding-top: 1.125rem;
    border-top: 1px solid rgba(21, 22, 41, 0.12);
}

.insight-section-block > .insight-section-terms,
.insight-introduction > .insight-section-terms {
    display: block;
    flex: 0 0 auto;
    align-self: stretch;
    width: 100%;
    min-width: 100%;
    max-width: none;
    clear: both;
}

.insight-section-terms,
.insight-section-terms *,
.insight-section-terms *::before,
.insight-section-terms *::after {
    box-sizing: border-box;
}

.insight-section-terms::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 2.25rem;
    height: 2px;
    background: var(--Orange);
}

.insight-section-terms-header {
    display: flex;
    align-items: center;
    margin: 0;
}

.insight-section-terms-list {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    column-gap: 0.9375rem;
    row-gap: 0.375rem;
    width: 100%;
}


/* =====================================================
   TERM ITEMS
===================================================== */

.insight-section-terms .insight-term-item {
    display: flex;
    align-items: center;
    width: auto;
    margin: 0;
    padding: 0;
    border: 0;
}

.insight-section-terms .insight-term-item + .insight-term-item {
    position: relative;
    padding-left: 0.9375rem;
}

.insight-section-terms .insight-term-item + .insight-term-item::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    width: 1px;
    height: 0.875rem;
    background: rgba(21, 22, 41, 0.12);
    transform: translateY(-50%);
}


/* =====================================================
   TERM BUTTONS
===================================================== */

.insight-section-terms .insight-term {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    gap: 0.375rem;
    width: auto;
    min-height: 2.25rem;
    margin: 0;
    padding: 0.3125rem 0;
    color: var(--Blue);
    background: transparent;
    border: 0;
    border-radius: 0;
    appearance: none;
    font-family: "Repo", sans-serif;
    font-size: 0.94rem;
    font-style: normal;
    font-weight: 400;
    line-height: 1.5;
    letter-spacing: 0.015em;
    text-align: left;
    text-decoration: none;
    cursor: pointer;
    transition: color 0.22s ease;
}

.insight-section-terms .insight-term > span {
    min-width: 0;
}

.insight-section-terms .insight-term svg {
    display: block;
    flex: 0 0 0.9375rem;
    width: 0.9375rem;
    height: 0.9375rem;
    color: var(--Orange);
    fill: none;
    stroke: currentColor;
    stroke-width: 1.8;
    stroke-linecap: round;
    stroke-linejoin: round;
    transition:
        color 0.22s ease,
        transform 0.25s ease;
}

.insight-section-terms .insight-term:focus-visible,
.insight-section-terms .insight-term.is-active,
.insight-section-terms .insight-term[aria-expanded="true"] {
    color: var(--Orange);
}

.insight-section-terms .insight-term:focus-visible {
    outline: 2px solid rgba(242, 161, 35, 0.3);
    outline-offset: 3px;
}

.insight-section-terms .insight-term.is-active svg,
.insight-section-terms .insight-term[aria-expanded="true"] svg {
    transform: rotate(180deg);
}

@media (hover: hover) and (pointer: fine) {

    .insight-section-terms .insight-term:hover {
        color: var(--Orange);
        text-decoration: none;
    }

}


/* =====================================================
   TERM DEFINITIONS — DESKTOP
===================================================== */

.insight-section-terms .insight-term-definition {
    display: none;
}

.insight-section-terms .insight-term-definition::before {
    display: none;
}

.insight-section-terms .insight-term-definition strong {
    display: none;
}

.insight-section-terms .insight-term-definition p,
.insight-section-definition-panel p {
    margin: 0;
    padding: 0;
    color: var(--Gray);
    font-family: "Repo", sans-serif;
    font-size: 0.95rem;
    font-style: normal;
    font-weight: 300;
    line-height: 1.65;
    letter-spacing: 0.025em;
    text-wrap-style: pretty;
}

.insight-section-definition-panel {
    display: block;
    width: 100%;
    max-width: none;
    margin: 0.875rem 0 0;
    padding: 0.1875rem 1.5rem 0.1875rem 1.0625rem;
    color: var(--Gray);
    background: transparent;
    border: 0;
    border-left: 2px solid var(--Orange);
    border-radius: 0;
    box-shadow: none;
    font-family: "Repo", sans-serif;
}

.insight-section-definition-panel[hidden] {
    display: none;
}


/* =====================================================
   MOBILE — RELATED ANALYSIS + TERMS
===================================================== */

@media (max-width: 767.98px) {

    .insight-section .insight-section-block {
        margin-bottom: 40px;
        padding-bottom: 32px;
    }

    .insight-related-analysis,
    .insight-section-terms {
        margin-top: 1.9375rem;
        padding-top: 1.0625rem;
    }

    .insight-related-analysis + .insight-section-terms {
        margin-top: 1.6875rem;
    }

    .insight-related-analysis__kicker,
    .insight-section-terms-title {
        margin-bottom: 0.375rem;
        font-size: 0.68rem;
        letter-spacing: 0.075em;
    }

    .insight-related-analysis__link {
        justify-content: left;
        gap: 1rem;
        min-height: 3.125rem;
        padding: 0.5625rem 0;
    }

    .insight-related-analysis__title {
        font-size: 0.94rem;
        line-height: 1.5;
    }

    .insight-related-analysis__arrow {
        flex: 0 0 1.8125rem;
        width: 1.8125rem;
        height: 1.8125rem;
        margin-left: auto;
    }

    .insight-section-terms-list {
        display: block;
    }

    .insight-section-terms .insight-term-item,
    .insight-section-terms .insight-term-item + .insight-term-item {
        display: block;
        width: 100%;
        margin: 0;
        padding: 0;
        border: 0;
        border-bottom: 1px solid rgba(21, 22, 41, 0.1);
    }

    .insight-section-terms .insight-term-item + .insight-term-item::before {
        display: none;
    }

    .insight-section-terms .insight-term {
        justify-content: space-between;
        gap: 1.375rem;
        width: 100%;
        min-height: 3.125rem;
        padding: 0.6875rem 0;
        font-size: 0.92rem;
    }

    .insight-section-terms .insight-term svg {
        flex: 0 0 1rem;
        width: 1rem;
        height: 1rem;
    }

    .insight-section-terms .insight-term-definition {
        position: static;
        display: block;
        width: 100%;
        margin-bottom: 1rem;
        padding: 0.125rem 0.3125rem 0.1875rem 0.875rem;
        color: var(--Gray);
        background: transparent;
        border: 0;
        border-left: 2px solid var(--Orange);
        border-radius: 0;
        box-shadow: none;
        font-family: "Repo", sans-serif;
    }

    .insight-section-terms .insight-term-definition[hidden] {
        display: none;
    }

    .insight-section-terms .insight-term-definition p {
        font-size: 0.9rem;
        line-height: 1.65;
    }

    .insight-section-definition-panel {
        display: none !important;
    }

}


/* =====================================================
   REDUCED MOTION
===================================================== */

@media (prefers-reduced-motion: reduce) {

    .insight-related-analysis__link,
    .insight-related-analysis__arrow,
    .insight-section-terms .insight-term,
    .insight-section-terms .insight-term svg {
        transition: none;
    }

}

:is(#completed, #in-progress, #under-study)
> .container h2.txtorange::after {
	display: block;
	width: 48px;
	height: 2px;
	margin-top: 14px;
	border-radius: 10px;
	background: currentColor;
	content: "";
}

