/* ===============================================
   CUSTOMIZATION HRE
================================================== */

/* ===============================================
   DESIGN SYSTEM
================================================== */
:root {
    /* Brand Colors */
    --hre-blue: #004A9C;
    --hre-blue-dark: #014a9d;
    --hre-blue-light: #004A9C72;
    --hre-gray: #E3E3E3;
    --hre-light: #f4f4f4;
    --hre-black: #111111;
    --hre-white: #ffffff;

    /* Radius */
    --hre-radius-sm: 6px;
    --hre-radius-md: 12px;
    --hre-radius-lg: 20px;

    /* Spacing */
    --hre-space-xs: 8px;
    --hre-space-sm: 16px;
    --hre-space-md: 24px;
    --hre-space-lg: 40px;
    --hre-space-xl: 80px;

    /* Transition */
    --hre-transition: .25s ease;
}
/* ===============================================
   TYPE
================================================== */
b,
strong {
  font-weight: 500;
}
h1,
h2,
h3,
h4,
h5,
h6,
.heading-text > p,
.heading-text > div:first-child {
  -webkit-font-smoothing: antialiased;
}
.media-modal.wp-core-ui h1,
.media-modal.wp-core-ui h2,
.media-modal.wp-core-ui h3,
.media-modal.wp-core-ui h4,
.media-modal.wp-core-ui h5,
.media-modal.wp-core-ui h6,
.media-modal.wp-core-ui .heading-text > p,
.media-modal.wp-core-ui .heading-text > div:first-child {
  font-size: initial !important;
}
h1,
.h1 {
  font-size: 35px;
  line-height: 1.2;
  margin: 27px 0 0;
}
@media (max-width: 339px) {
  h1,
  .h1 {
    font-size: 28px;
  }
}
h2,
.h2 {
  font-size: 29px;
  line-height: 1.2;
  margin: 27px 0 0;
}
h3,
.h3 {
  font-size: 24px;
  line-height: 1.2;
  margin: 27px 0 0;
}
h4,
.h4 {
  font-size: 20px;
  line-height: 1.2;
  margin: 27px 0 0;
}
h5,
.h5 {
  font-size: 17px;
  line-height: 1.2;
  margin: 27px 0 0;
}
h6,
.h6 {
  font-size: 14px;
  line-height: 1.2;
  margin: 27px 0 0;
}
p,
li,
dt,
dd,
dl,
address,
label,
small,
pre,
code,
span.tab-excerpt,
.menu-smart .block-wrapper-parent p,
.menu-smart .block-wrapper-parent li,
.menu-smart .block-wrapper-parent dt,
.menu-smart .block-wrapper-parent dd,
.menu-smart .block-wrapper-parent dl,
.menu-smart .block-wrapper-parent address,
.menu-smart .block-wrapper-parent label,
.menu-smart .block-wrapper-parent small,
.menu-smart .block-wrapper-parent pre,
.menu-smart .block-wrapper-parent code,
.menu-smart .block-wrapper-parent span.tab-excerpt {
 /* line-height: 1.3;*/
}
.media-modal.wp-core-ui p,
.media-modal.wp-core-ui li,
.media-modal.wp-core-ui dt,
.media-modal.wp-core-ui dd,
.media-modal.wp-core-ui dl,
.media-modal.wp-core-ui address,
.media-modal.wp-core-ui label,
.media-modal.wp-core-ui small,
.media-modal.wp-core-ui pre,
.media-modal.wp-core-ui code,
.media-modal.wp-core-ui span.tab-excerpt {
  line-height: 18px;
  margin: 0;
  font-size: inherit;
}
p.text-top-reduced {
  margin-top: 9px;
}
div.text-top-reduced > *:first-child {
  margin-top: 9px;
}
small,
figcaption {
  font-size: 12px;
}
figcaption {
  line-height: normal;
  margin: 9px 0px 0px 0px;
}
ul,
ol {
  margin: 18px 0px 0px 0px;
  padding-left: 18px;
}
@media (max-width: 569px) {
  ul,
  ol {
    padding-left: 0.5em;
  }
}
ul,
ol {
  padding: 0;
}
ul i:not(.icon-box *):not(.menu-smart-social *),
ol i:not(.icon-box *):not(.menu-smart-social *) {
  margin-right: 0px;
}
ul {
  list-style: none;
}
ol {
  margin-left: 50px;
}
.list-align ol {
  list-style-position: inside;
  margin-left: 0;
}
ul li,
ol li {
  margin-top: 0;
}
ul > li > ul,
ol > li > ol {
  margin-left: 9px;
  padding-left: 0;
  margin-top: 0;
}
dl {
  margin: 18px 18px 0px 18px;
}
dl dt {
  font-weight: 600;
}
dl.variation dt,
dl.variation dd {
  font-weight: 500;
}
dd {
  margin-top: 0;
}
dl dd {
  margin-bottom: 0px;
}
dl dt:first-child {
  margin-top: 0px;
}
blockquote {
  margin: 36px 0px 36px 0px;
  padding: 0px 0px 0px 36px;
  border-left: 2px solid;
}
blockquote p {
  font-size: 18px;
  line-height: 1.75;
  margin: 18px 0 0;
}
blockquote p:first-child {
  margin-top: 0px;
}
blockquote small {
  font-size: 13px;
  margin: 9px 0px 0px 0px;
  margin-bottom: 0;
  display: inline;
  letter-spacing: 0 !important;
}
blockquote small:before {
  content: "—";
  margin: 0px 9px 0px 0px;
}
blockquote.pullquote > p:first-of-type,
blockquote.pullquote .pullquote__content {
  quotes: "\201C" "\201D";
}
blockquote.pullquote > p:first-of-type:before,
blockquote.pullquote .pullquote__content:before {
  content: open-quote;
  font-size: 1.5em;
  line-height: 0;
  vertical-align: -0.25em;
  margin-right: .2em;
}
blockquote.pullquote > p:first-of-type:after,
blockquote.pullquote .pullquote__content:after {
  content: close-quote;
  font-size: 1.5em;
  line-height: 0;
  vertical-align: -0.25em;
  margin-left: .1em;
}
cite {
  font-style: normal;
}
mark {
  color: #ffffff;
  padding: 1px 4px;
  border-radius: 2px;
  font-weight: 600;
}
.messagebox_text {
  color: #ffffff;
  padding: 18px;
  border-radius: 4px;
  font-weight: 600;
}
.messagebox_text > * {
  margin-top: 0;
}
.text-left {
  text-align: left;
}
.text-right {
  text-align: right;
}
.text-center {
  text-align: center;
}
.text-justify {
  text-align: justify;
}
.text-uppercase {
  text-transform: uppercase;
}
.btn-custom-typo.text-uppercase {
  text-transform: uppercase !important;
}
.text-capitalize {
  text-transform: capitalize;
}
.btn-custom-typo.text-capitalize {
  text-transform: capitalize !important;
}
.text-lowercase {
  text-transform: lowercase;
}
.btn-custom-typo.text-lowercase {
  text-transform: lowercase !important;
}
.text-initial {
  text-transform: initial;
}
.btn-custom-typo.text-initial {
  text-transform: initial !important;
}
.text-lead,
.text-lead:not(ul):not(ol) > * {
  line-height: 1.75;
}
.text-lead,
.text-lead:not(ul):not(ol) > *,
.text-lead > *:not(ul):not(ol):not(li) {
  margin: 36px 0px 0px 0px;
}
.text-lead.text-top-reduced {
  margin: 9px 0px 0px 0px;
}
.text-lead > * > li {
  font-size: inherit;
}
.text-small li {
  font-size: inherit !important;
}
.text-bold {
  font-weight: 600;
}
.no-letterspace {
  letter-spacing: 0 !important;
}
.text-italic {
  font-style: italic;
}
.heading-foreword {
  display: inline-block;
  font-size: 0.5em;
  margin-right: 72px;
  margin-top: 0 !important;
  vertical-align: top;
  white-space: nowrap;
}
.heading-foreword.text-small {
  font-size: 0.375em;
}
.heading-foreword.text-lead {
  font-size: 0.725em;
}
@media (max-width: 569px) {
  .heading-foreword {
    display: block;
  }
}
.heading-foreword.text-top-reduced {
  margin-right: 36px;
}
.font-weight-100,
.font-weight-100 *:not(strong):not(b):not(.unmenu-title):not(.unmenu-title *):not(.menu-item-description),
.unmenu-block:not(.unmenu-block *) > li > .font-weight-100 > a,
.btn-custom-typo.font-weight-100 {
  font-weight: 100 !important;
}
.font-weight-200,
.font-weight-200 *:not(strong):not(b):not(.unmenu-title):not(.unmenu-title *):not(.menu-item-description),
.unmenu-block:not(.unmenu-block *) > li > .font-weight-200 > a,
.btn-custom-typo.font-weight-200 {
  font-weight: 200 !important;
}
.font-weight-300,
.font-weight-300 *:not(strong):not(b):not(.unmenu-title):not(.unmenu-title *):not(.menu-item-description),
.unmenu-block:not(.unmenu-block *) > li > .font-weight-300 > a,
.btn-custom-typo.font-weight-300 {
  font-weight: 300 !important;
}
.font-weight-400,
.font-weight-400 *:not(strong):not(b):not(.unmenu-title):not(.unmenu-title *):not(.menu-item-description),
.unmenu-block:not(.unmenu-block *) > li > .font-weight-400 > a,
.btn-custom-typo.font-weight-400 {
  font-weight: 400 !important;
}
.font-weight-500,
.font-weight-500 *:not(strong):not(b):not(.unmenu-title):not(.unmenu-title *):not(.menu-item-description),
.unmenu-block:not(.unmenu-block *) > li > .font-weight-500 > a,
.btn-custom-typo.font-weight-500 {
  font-weight: 500 !important;
}
.font-weight-600,
.font-weight-600 *:not(strong):not(b):not(.unmenu-title):not(.unmenu-title *):not(.menu-item-description),
.unmenu-block:not(.unmenu-block *) > li > .font-weight-600 > a,
.btn-custom-typo.font-weight-600 {
  font-weight: 600 !important;
}
.font-weight-700,
.font-weight-700 *:not(strong):not(b):not(.unmenu-title):not(.unmenu-title *):not(.menu-item-description),
.unmenu-block:not(.unmenu-block *) > li > .font-weight-700 > a,
.btn-custom-typo.font-weight-700 {
  font-weight: 700 !important;
}
.font-weight-800,
.font-weight-800 *:not(strong):not(b):not(.unmenu-title):not(.unmenu-title *):not(.menu-item-description),
.unmenu-block:not(.unmenu-block *) > li > .font-weight-800 > a,
.btn-custom-typo.font-weight-800 {
  font-weight: 800 !important;
}
.font-weight-900,
.font-weight-900 *:not(strong):not(b):not(.unmenu-title):not(.unmenu-title *):not(.menu-item-description),
.unmenu-block:not(.unmenu-block *) > li > .font-weight-900 > a,
.btn-custom-typo.font-weight-900 {
  font-weight: 900 !important;
}
.text-icon i {
  position: relative;
  top: 1px;
  display: inline-block;
}
.text-icon .text-icon__icon {
  display: inline-block;
}
.text-icon--before i {
  margin-right: 9px;
}
.text-icon--after i {
  margin-left: 9px;
}
@media (min-width:960px) {
.main-container .row-container .row-parent,
.block-wrapper-parent .row-container .row-parent,
.has-unblock .row-container .row-parent {
  padding: 0px 0px 0px 0px;
}
}

/* ==================================================
   ICON BOX – VERTICAL CENTER CONTENT
================================================== */

/* Contact Icon Boxes – vertical text alignment */
.hre-contact-icons .icon-box-content {
    transform: translateY(5px);
}
@media (max-width: 959px) {
    .hre-contact-icons .icon-box-content {
        transform: translateY(10px);
    }
}


/* ===============================================
   HEADER
================================================== */
.header-wrapper .header-scrolldown i {
    bottom:45px;
    position:absolute !important;
}
@media (min-width:960px) {
    .row-menu {
        padding-left:160px;
        padding-right:154px;
        padding-top:20px;
        padding-bottom:20px;
        height:158px !important;
        box-sizing:border-box !important;
    }
}
.menu-horizontal-inner {
    margin-right:5px;
}
/*====== Header Title =====*/
/* @media (max-width:1199px) {
    li.menu-item.hre-header {
        display:none;
    }
}*/

li.hre-header > a {
    pointer-events: none;
    cursor: default;
    color: #004A9C !important;
    font-size: 25px !important;
    font-weight: 500 !important;
    letter-spacing: -0.25px !important;
    display: flex !important;
    align-items: center !important;
    height: 22px !important;
    line-height: 22px !important;
    padding: 0 !important;
    margin: 0 !important;
    position: relative;
    top: 10px; 
}
li.hre-header > a {
    transition: opacity .35s ease;
}
li.hre-header > a.fade-out {
    opacity: 0;
}
/* ==================================================
   MEGA MENU
================================================== */
.menu-smart .unmenu-block.mmm:not(.unmenu-inline),
.unmenu-block.mmm:not(.unmenu-inline) {
    grid-gap: 10px 0 !important;
}
#mmq {
    position:fixed;
    bottom:20px;
    margin-left: -3px;
}
 
/* ==================================================
   Burger 39x22
================================================== */
.lines-button {
  width: 39px !important;
  padding: 0px 0px 10px 0px !important;
  margin-right: 5px
}
.lines-button .lines,
.lines-button .lines:before,
.lines-button .lines:after,
.lines-button .lines > span {
  width: 39px !important;
  height: 3px !important;
  border-radius: 0 !important;
  background: #004A9C !important;
}
/* center line */
.lines-button .lines {
  top: 11px !important;
}
/* top line */
.lines-button .lines:before {
  top: 11px !important;
}
/* bottom line */
.lines-button .lines:after {
  top: -11px !important;
}

/* XD Burger close state fix */
.lines-button.close .lines {
  background: transparent !important;
}
.lines-button.close .lines:before,
.lines-button.close .lines:after {
  top: 0 !important;
  width: 39px !important;
  height: 3px !important;
  transform-origin: 50% 50% !important;
}
.lines-button.close .lines:before {
  transform: rotate3d(0, 0, 1, 45deg) !important;
}
.lines-button.close .lines:after {
  transform: rotate3d(0, 0, 1, -45deg) !important;
}

/* ==================================================
   HEADER VISIBILITY – DESKTOP ONLY
================================================== */
@media (min-width: 960px) {

    /* Αρχική: το header είναι αρχικά κρυμμένο */
    body.home .menu-container {
        position: fixed !important;
        top: 0 !important;
        left: 0 !important;
        width: 100% !important;
        transform: translateY(-100%) !important;
        opacity: 0 !important;
        pointer-events: none !important;
        transition:
            transform 0.45s ease,
            opacity 0.45s ease !important;
        z-index: 9999 !important;
    }

    /* Εμφάνιση μετά το scroll ή όταν ανοίγει το menu */
    body.home .menu-container.is_stuck,
    body.home.scrolled .menu-container,
    html.overlay-open body.home .menu-container {
        transform: translateY(0) !important;
        opacity: 1 !important;
        pointer-events: auto !important;
    }

    /* Εσωτερικές σελίδες */
    body:not(.home) .menu-container {
        position: sticky !important;
        top: 0 !important;
        z-index: 9999 !important;
    }

    /* Μετατόπιση overlay menu μόνο στο desktop */
    html.overlay-open body.home #row-unique-0 {
        margin-top: -15% !important;
    }
}
/* ==================================================
   MOBILE HEADER – UNCODE DEFAULT BEHAVIOUR
================================================== */
@media (max-width: 959px) {

    body.home .menu-container,
    body.home .menu-container-mobile {
        transform: none !important;
        opacity: 1 !important;
        pointer-events: auto !important;
    }
}


/* ===============================================
   Header bottom border
================================================== */

@media (min-width:960px){

    .menu-container .menu-horizontal-inner{
        position:relative;
    }

    .menu-container .menu-horizontal-inner::after{
        content:"";
        position:absolute;
        left:0;
        right:0;
        bottom:-20px;          /* όσο είναι το κάτω padding του header */
        height:0px;
        background:#B7D1E8;
    }

}

/* ==================================================
   Custom menu + Pages Left Menu
================================================== */

.hre-overlay-menu .unmenu-block li a {
    line-height: .9 !important;
}
.hre-overlay-menu .unmenu-block #menu-item-5608 > a {
    line-height: 1 !important;
}
.hre-overlay-menu .unmenu-block #menu-item-5714 > a {
    line-height: 1 !important;
}
.hre-overlay-menu .unmenu-block #menu-item-5715 > a {
    line-height: 1 !important;
}

ul#menu-etaireia-3 li.active > a,
ul#menu-etaireia-3 li.current-menu-item > a,
ul#menu-etaireia-3 li.current_page_item > a,
ul#menu-etaireia-3 li.active > a span,
ul#menu-etaireia-3 li.current-menu-item > a span,
ul#menu-etaireia-3 li.current_page_item > a span {
    color: #255aa5 !important;
}
ul#menu-akinita-1 li.active > a,
ul#menu-akinita-1 li.current-menu-item > a,
ul#menu-akinita-1 li.current_page_item > a,
ul#menu-akinita-1 li.active > a span,
ul#menu-akinita-1 li.current-menu-item > a span,
ul#menu-akinita-1 li.current_page_item > a span {
    color: #255aa5 !important;
}
ul#menu-akinita-3 li.active > a,
ul#menu-akinita-3 li.current-menu-item > a,
ul#menu-akinita-3 li.current_page_item > a,
ul#menu-akinita-3 li.active > a span,
ul#menu-akinita-3 li.current-menu-item > a span,
ul#menu-akinita-3 li.current_page_item > a span {
    color: #255aa5 !important;
}
ul#menu-politikes-etaireias li.active > a,
ul#menu-politikes-etaireias li.current-menu-item > a,
ul#menu-politikes-etaireias li.current_page_item > a,
ul#menu-politikes-etaireias li.active > a span,
ul#menu-politikes-etaireias li.current-menu-item > a span,
ul#menu-politikes-etaireias li.current_page_item > a span {
    color: #255aa5 !important;
}

/* ==================================================
   Dynamic Content
================================================== */
.dynamic-article-content .uncode_text_column.text-lead,
.dynamic-article-content .uncode_text_column.text-lead p,
.dynamic-article-content .uncode_text_column.text-lead span,
.dynamic-article-content .uncode_text_column.text-lead li {
    font-family: "Roboto Mono", monospace !important;
    font-size: 20px !important;
    font-weight: 400 !important;
    line-height: 28px !important;
    letter-spacing: -0.5px !important;
    color: #004A9C !important;
}
.dynamic-article-content  .text-lead, .text-lead:not(ul):not(ol) > *, .text-lead > *:not(ul):not(ol):not(li) {
    margin: 26px 0px 0px 0px;
}
/* ==================================================
   FOOTER MENU + TITLE
================================================== */
ul#menu-politikes-etaireias.footer-menu:not(.unmenu-inline),
ul#menu-efkairies-karieras.footer-menu:not(.unmenu-inline),
ul#menu-footer-media.footer-menu:not(.unmenu-inline),
ul#menu-footer-epikoinonia.footer-menu:not(.unmenu-inline),
ul#menu-ypiresies.footer-menu:not(.unmenu-inline) {
    grid-gap: 6px 0 !important;
}

.footer-menu .half-gutter.post-titles-inner .tmb > .t-inside {
    margin-bottom: 15px;
    margin-top: 5px;
}
.menu-gap-after {
    margin-bottom:20px !important;
}
.footitlepad {
  margin-left: -3px;
}
/* ==================================================
   UTILITY CLASSES
================================================== */

.copcolor {
    color: var(--hre-blue-dark);
}

.hre-text {
    font-size: var(--hre-text-sm);
    font-weight: 300;
}

/* ==================================================
   WPML / LANGUAGE SWITCHER
================================================== */
.hre-lang-switcher{
    position:fixed;
    left:20px;
    bottom:20px;
    z-index:99999;
}
.hre-lang-toggle{
    width:34px;
    height:34px;
    display:flex;
    align-items:center;
    justify-content:center;
    border:none;
    border-radius:50%;
    background:#255aa5;
    color:#f1f2f2;
    cursor:pointer;
    box-shadow:0 8px 24px rgba(0,0,0,.18);
    transition:transform .25s ease, box-shadow .25s ease;
}
.hre-lang-toggle svg{
    width:28px;
    height:28px;
}
.hre-lang-toggle:hover{
    transform:translateY(-3px);
    box-shadow:0 12px 28px rgba(0,0,0,.22);
}
.hre-lang-toggle{
    animation: hrePulse 4s infinite;
}
@keyframes hrePulse {
    0%{
        box-shadow:
        0 0 0 0 rgba(0,59,112,.35),
        0 8px 24px rgba(0,0,0,.18);
    }
    70%{
        box-shadow:
        0 0 0 14px rgba(0,59,112,0),
        0 8px 24px rgba(0,0,0,.18);
    }
    100%{
        box-shadow:
        0 0 0 0 rgba(0,59,112,0),
        0 8px 24px rgba(0,0,0,.18);
    }
}
.hre-lang-dropdown{
    position:absolute;
    left:0;
    bottom:72px;
    min-width:150px;
    background:#f1f2f2;
    border-radius:12px;
    overflow:hidden;
    box-shadow:0 10px 30px rgba(0,0,0,.16);
    opacity:0;
    visibility:hidden;
    transform:translateY(10px);
    transition:
    opacity .25s ease,
    transform .25s ease,
    visibility .25s ease;
}
.hre-lang-dropdown.open{
    opacity:1;
    visibility:visible;
    transform:translateY(0);
}
.hre-lang-dropdown a{
    display:flex;
    align-items:center;
    gap:12px;
    padding:12px 16px;
    color:#255aa5;
    text-decoration:none;
    transition:background .2s ease;
}
.hre-lang-dropdown a:hover{
    background:#f1f2f2;
}
.hre-lang-dropdown a.active{
    font-weight:500;
}
.hre-lang-dropdown img{
    width:22px;
    height:auto;
    display:block;
}
/* ==================================================
   FILTERS
================================================== */

/* Desktop filter alignment */
@media (min-width: 960px) {

    .ajax-grid-system .menu-horizontal {
        margin: 0 -45px;
        width: calc(100% + 22px);
    }
}

/* Titles */
.grid-filters.filter-typography-inherit .mobile-toggle-trigger,
.grid-filters.filter-typography-inherit .uncode-toggle-ajax-filters,
.grid-filters.filter-typography-inherit ul.menu-smart,
.grid-filters.filter-typography-inherit ul.menu-smart a {
    font-family: "HRE";
    font-weight: 500;
    font-size: 17px;
    letter-spacing: .5px;
}

/* Links των φίλτρων */
.term-filters-list .term-filter-link {
    font-size: 14px !important;
    font-weight: 500 !important;
    line-height: 1 !important;
}

/* Counter */
.term-filters-list .term-filter-count {
    font-size: 14px !important;
    font-weight: 500 !important;
    line-height: 1 !important;
}

.widget-ajax-filters .widget-container ul li {
    margin-bottom: 5px !important;
    line-height: 1 !important;
}


/* ==================================================
   AJAX FILTERS – MOBILE OFF-CANVAS FIX
================================================== */
@media (max-width: 959px) {
	 /* Mobile trigger "ΠΡΟΒΟΛΗ ΦΙΛΤΡΩΝ" Αφαίρεση του default αριστερού padding του Uncode. */
    .row-parent.no-h-padding
    .grid-filters > .menu-horizontal > .filter-main-group {
        padding-left: 0 !important;
    }
	
    /* Το theme μεταφέρει αυτό το wrapper στο τέλος του body. Δεν πρέπει να συμμετέχει στην κανονική ροή της σελίδας μετά το footer. */
    body >
    .ajax-filter-sidebar-wrapper.ajax-filter-sidebar--offcanvas {
        position: fixed !important;
        top: 0 !important;
        right: auto !important;
        bottom: auto !important;
        left: 0 !important;
        width: 0 !important;
        max-width: none !important;
        height: 0 !important;
        margin: 0 !important;
        padding: 0 !important;
        overflow: visible !important;
        z-index: 10002 !important;
    }

    /* Το πραγματικό panel των φίλτρων. */
    body.ajax-filter-sidebar-overlay
    .ajax-filter-sidebar--offcanvas
    .ajax-filter-sidebar {
        box-sizing: border-box !important;
        display: block !important;
        position: fixed !important;
        top: 0 !important;
        bottom: auto !important;
        left: 0 !important;
        width: min(400px, 100vw) !important;
        max-width: 100vw !important;
        height: 100dvh !important;
        min-height: 100dvh !important;
        margin: 0 !important;
        background: #ffffff !important;
        overflow: hidden !important;
        z-index: 10003 !important;
        transition:
            transform 0.45s ease,
            visibility 0.45s ease !important;
    }

    /* Κλειστό sidebar. */
    body.ajax-filter-sidebar-overlay.ajax-hide-filters
    .ajax-filter-sidebar--offcanvas
    .ajax-filter-sidebar {
        transform: translateX(-100%) !important;
        visibility: hidden !important;
        pointer-events: none !important;
    }

    /* Ανοιχτό sidebar. */
    body.ajax-filter-sidebar-overlay:not(.ajax-hide-filters)
    .ajax-filter-sidebar--offcanvas
    .ajax-filter-sidebar {
        transform: translateX(0) !important;
        visibility: visible !important;
        pointer-events: auto !important;
    }

    /* Περιοχή περιεχομένου των φίλτρων.  */
    body.ajax-filter-sidebar-overlay
    .ajax-filter-sidebar
    .ajax-filter-sidebar-body {
        box-sizing: border-box !important;
        height: 100% !important;
        max-height: 100dvh !important;
        overflow-y: auto !important;
        overflow-x: hidden !important;
        -webkit-overflow-scrolling: touch;
    }

    /* Το αρχικό wrapper μέσα στο Grid πρέπει να παραμένει κρυφό στο mobile. */
    .ajax-grid-system
    .ajax-filter-wrapper
    .ajax-filter-sidebar-wrapper:not(.ajax-filter-sidebar--offcanvas) {
        display: none !important;
    }

    /* Το footprint χρησιμοποιείται μόνο για desktop υπολογισμό πλάτους. */
    .ajax-grid-system .ajax-filter-footprint {
        display: none !important;
        width: 0 !important;
        height: 0 !important;
        margin: 0 !important;
        padding: 0 !important;
    }
}

/* Full-width panel σε μικρό κινητό */
@media (max-width: 569px) {
    body.ajax-filter-sidebar-overlay
    .ajax-filter-sidebar--offcanvas
    .ajax-filter-sidebar {
        width: 100vw !important;
        max-width: 100vw !important;
    }
}

/* ==================================================
   AJAX FILTERS – ACTIVE FILTERS / CLEAR – MOBILE
================================================== */
@media (max-width: 959px) {
	/* fix to clear filters */
    .filter-list__clear.show-hidden {
        display: list-item !important;
        visibility: visible !important;
        opacity: 1 !important;
        height: auto !important;
        max-height: none !important;
        overflow: visible !important;
    }
    .filter-list__clear.show-hidden .filter-list__link {
        display: inline-block !important;
        visibility: visible !important;
        opacity: 1 !important;
        height: auto !important;
        line-height: 1.4 !important;
    }
	
	/* fix bullets with x sta Active filters*/
    .filter-list > ul {
        list-style: none !important;
        margin: 12px 0 0 !important;
        padding: 0 !important;
    }
    .filter-list > ul > li {
        list-style: none !important;
        margin: 0 0 6px !important;
        padding: 0 !important;
    }
    .filter-list > ul > li::before {
        content: none !important;
        display: none !important;
    }
    .filter-list > ul > li::marker {
        content: "" !important;
        font-size: 0 !important;
    }
    .filter-list > ul > li > .filter-list__link {
        display: inline-block !important;
        margin: 0 !important;
        padding: 0 !important;
        line-height: 1.4 !important;
    }
	 /* X μόνο στα ενεργά φίλτρα */
    .filter-list > ul > .filter-list__item > .filter-list__link::after {
        content: "×";
        display: inline-block;
        margin-left: 8px;
        font-size: 18px;
        font-weight: 400;
        line-height: 1;
        vertical-align: -1px;
    }
}


/* ==================================================
   ICON BOX
================================================== */
@media (min-width: 960px) {
    .icon-box-left:not(.icon-box-space-reduced) .icon-box-content {
        position: absolute;
		padding-left: 20px;
        bottom: 0;
} }

/* ==================================================
   ADVANCED BUTTON
================================================== */
.btn-left.btn-advanced {
    justify-content: flex-start !important;
    text-align: left !important;
	padding-top: 30px !important;
    padding-bottom: 30px !important;
}

.btn-left.btn-advanced > span,
.btn-left.btn-advanced .btn-text {
    text-align: left !important;
}
.btn:not([class*="fontsize-"]), .btn-link:not([class*="fontsize-"]) {
  font-size: clamp(12px, .94vw, 20px)!important;
}

/* ==================================================
   FULL WIDTH VIDEO ROW – 16:9
================================================== */
.video-row-16-9 {
    height: 56vw!important;
    min-height: 0 !important;
    max-height: none !important;
}


/* =================================================================== MOBILE ============================================================ */

/* ==================================================
   HOMEPAGE – MOBILE LAYOUT FIX
================================================== */

@media (max-width: 569px) {
body.home .hre-mobile-counters {
        margin: 0 !important;
        padding-top: 30px !important;
        padding-right: 20px !important;
        padding-bottom: 30px !important;
        padding-left: 20px !important;
    }
    /* Εξωτερικό row */
/*    body.home .hre-mobile-counters {
        padding-left: 20px !important;
        padding-right: 20px !important;
    }
*/
    /* Διάταξη 2 × 2 */
    body.home .hre-mobile-counters .row-child > .row-inner {
        display: flex !important;
        flex-wrap: wrap !important;
        width: 100% !important;
    }

    body.home .hre-mobile-counters .column_child {
        display: block !important;
        width: 50% !important;
        max-width: 50% !important;
        flex: 0 0 50% !important;
        min-width: 0 !important;
        float: none !important;
        padding: 0 !important;
    }

    /* Ίδιος χώρος σε κάθε counter */
    body.home .hre-mobile-counters .column_child .uncell {
        display: block !important;
        min-height: 145px !important;
        padding: 20px 10px !important;
        border-left-width: 0 !important;
    }

    /* Αριθμοί */
    body.home .hre-mobile-counters .uncode-counter-wrap h2 {
        margin: 0 !important;
        font-size: 25px !important;
        line-height: 1.1 !important;
        letter-spacing: -1px !important;
        white-space: nowrap !important;
    }

    body.home .hre-mobile-counters .counter,
    body.home .hre-mobile-counters .counter-suffix {
        font-size: inherit !important;
        line-height: inherit !important;
    }

    /* Τίτλοι κάτω από τους αριθμούς */
    body.home .hre-mobile-counters .heading-text h1,
    body.home .hre-mobile-counters .heading-text h2 {
        margin-top: 14px !important;
        font-size: 16px !important;
        line-height: 1.25 !important;
        letter-spacing: 0 !important;
    }

    /* Διαχωριστική γραμμή ανάμεσα στις δύο στήλες */
    body.home .hre-mobile-counters .column_child:nth-child(even) .uncell {
        border-left: 1px solid #b7d1e8 !important;
    }
}

/* ==================================================
   HOMEPAGE – REMOVE DESKTOP PADDINGS ON MOBILE
================================================== */
@media (max-width: 569px) {

    /* Αφαίρεση των inline 160px από όλα τα mobile-visible rows */
    body.home .post-content .row-container[style*="padding-left: 160px"] {
        padding-left: 20px !important;
    }

    body.home .post-content .row-container[style*="padding-right: 160px"] {
        padding-right: 20px !important;
    }

    /* Αφαίρεση 160px από εσωτερικά cells */
    body.home .post-content .uncell[style*="padding-left: 160px"] {
        padding-left: 0 !important;
    }

    body.home .post-content .uncell[style*="padding-right: 160px"] {
        padding-right: 0 !important;
    }

    /* Οι υπόλοιπες mobile ενότητες να χρησιμοποιούν όλο το πλάτος */
    body.home #row-unique-13 .column_child,
    body.home #row-unique-14 .column_child,
    body.home #row-unique-14 .column_parent,
    body.home #row-unique-15 .column_child,
    body.home #row-unique-15 .column_parent,
    body.home #row-unique-16 .column_child,
    body.home #row-unique-16 .column_parent,
    body.home #row-unique-20 .column_child,
    body.home #row-unique-20 .column_parent {
        display: block !important;
        float: none !important;
        width: 100% !important;
        max-width: 100% !important;
    }

    /* Ασφάλεια για columns που έχουν col-md-33 χωρίς mobile width */
    body.home .post-content .col-md-33:not(.col-sm-33):not(.col-sm-50) {
        width: 100% !important;
        max-width: 100% !important;
    }

    /* Τα περιεχόμενα να μην κρατούν περιορισμένο πλάτος */
    body.home #row-unique-13 .uncont,
    body.home #row-unique-14 .uncont,
    body.home #row-unique-15 .uncont,
    body.home #row-unique-16 .uncont {
        width: 100% !important;
        max-width: 100% !important;
    }
}

/* ==================================================
   HOMEPAGE MOBILE HERO
================================================== */
@media (max-width: 569px) {

    body.home .hre-mobile-hero {
        height: calc(100svh - 219px) !important;
        min-height: 480px !important;
        max-height: none !important;
        padding: 0 !important;
        margin: 0 !important;
    }

    body.home .hre-mobile-hero > .row-background,
    body.home .hre-mobile-hero .background-wrapper,
    body.home .hre-mobile-hero .background-inner {
        width: 100% !important;
        height: 100% !important;
        min-height: inherit !important;
    }

    body.home .hre-mobile-hero .background-inner {
        background-size: cover !important;
        background-position: center center !important;
        background-repeat: no-repeat !important;
    }

    body.home .hre-mobile-hero > .row-parent,
    body.home .hre-mobile-hero > .row-parent > .row-inner {
        height: 100% !important;
        min-height: inherit !important;
    }
	 /* Καμία απόσταση γύρω από το mobile hero */
    body.home .hre-mobile-hero {
        margin-top: 0 !important;
        margin-bottom: 0 !important;
        padding-top: 0 !important;
        padding-bottom: 0 !important;
    }

    /* Αφαίρεση του desktop padding-top:140px από τα counters */
    body.home .hre-mobile-counters {
        margin-top: 0 !important;
        padding-top: 30px !important;
        padding-bottom: 30px !important;
    }

    /* Καμία απόσταση ανάμεσα στα δύο διαδοχικά rows */
    body.home .hre-mobile-hero + .hre-mobile-counters {
        margin-top: 0 !important;
    }
}

/* ==================================================
   HOMEPAGE COMPANY – MOBILE
================================================== */
@media (max-width: 569px) {

    body.home .hre-home-intro {
        margin-left: 0 !important;
        margin-right: 0 !important;
        padding-left: 20px !important;
        padding-right: 20px !important;
    }

    /* Ακύρωση του εσωτερικού desktop padding 160px */
    body.home .hre-home-intro >
    .row-parent >
    .row-inner >
    .column_parent >
    .uncol >
    .uncoltable >
    .uncell {
        padding-left: 0 !important;
        padding-right: 0 !important;
    }

    body.home .hre-home-intro .uncode_text_column {
        width: 100% !important;
        max-width: 100% !important;
    }

    /* Αποφεύγει τα υπερβολικά κενά μεταξύ των λέξεων */
    body.home .hre-home-intro .uncode_text_column p {
        text-align: left !important;
    }

    /* Το λογότυπο να ακολουθεί το ίδιο αριστερό περιθώριο */
    body.home .hre-home-intro .uncode-single-media {
        margin-left: 0 !important;
    }
}

/* ==================================================
   MOBILE FOOTER
================================================== */
@media (max-width: 569px) {
	
	.hre-mobile-footer .column_child.half-internal-gutter .uncont > *:not(:first-child) {
        margin-top: 10px !important;
    }
	
	.hre-mobile-footer .unmenu-block:not(.unmenu-inline),
    .hre-mobile-footer .menu-smart ul.unmenu-block:not(.unmenu-inline) {
        grid-gap: 6px 0 !important;
    }
    .hre-mobile-footer {
        padding-left: 20px !important;
        padding-right: 20px !important;
    }

    /* Εσωτερικά wrappers */
    .hre-mobile-footer .uncol,
    .hre-mobile-footer .uncoltable,
    .hre-mobile-footer .uncell,
    .hre-mobile-footer .uncont {
        box-sizing: border-box !important;
        width: 100% !important;
        max-width: 100% !important;
    }

    /* Menu alignment */
    .hre-mobile-footer ul,
    .hre-mobile-footer li,
    .hre-mobile-footer a {
        text-align: left !important;
    }
}

/* ==================================================
   INTERNAL PAGES – TABLET & MOBILE
================================================== */
@media (max-width: 959px) {

    /* Breadcrumbs και βασικό περιεχόμενο */
    body:not(.home) .hre-inner-breadcrumbs,
    body:not(.home) .hre-inner-content {
        box-sizing: border-box !important;
        width: 100% !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        padding-left: 20px !important;
        padding-right: 20px !important;
    }

    /* Κατάργηση των desktop εσωτερικών paddings */
    body:not(.home) .hre-inner-breadcrumbs .row-parent,
    body:not(.home) .hre-inner-content .row-parent {
        padding-left: 0 !important;
        padding-right: 0 !important;
    }

    /* ==================================================
       BREADCRUMBS
       Οι δύο στήλες η μία κάτω από την άλλη
    ================================================== */
    body:not(.home) .hre-inner-breadcrumbs .row-inner {
        display: flex !important;
        flex-direction: column !important;
        flex-wrap: nowrap !important;
        width: 100% !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
    }

    /* Όλες οι στήλες των breadcrumbs σε πλήρες πλάτος */
    body:not(.home)
    .hre-inner-breadcrumbs
    .row-inner > .column_parent,

    body:not(.home)
    .hre-inner-breadcrumbs
    .row-inner > .column_child {
        display: block !important;
        visibility: visible !important;
        opacity: 1 !important;
        float: none !important;
        position: relative !important;
        width: 100% !important;
        max-width: 100% !important;
        height: auto !important;
        flex: 0 0 auto !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
    }

    /* Ισχυρή εμφάνιση της δεύτερης στήλης */
    body:not(.home)
    .hre-inner-breadcrumbs
    .row-inner > :nth-child(2),

    body:not(.home)
    .hre-inner-breadcrumbs
    .row-inner > .mobile-hidden,

    body:not(.home)
    .hre-inner-breadcrumbs
    .row-inner > .hidden-xs {
        display: block !important;
        visibility: visible !important;
        opacity: 1 !important;
        position: relative !important;
        width: 100% !important;
        max-width: 100% !important;
        height: auto !important;
        flex: 0 0 auto !important;
    }

    /* Απόσταση μεταξύ 1ης και 2ης στήλης breadcrumbs */
    body:not(.home)
    .hre-inner-breadcrumbs
    .row-inner > :nth-child(2) {
        margin-top: 12px !important;
    }

    /* ==================================================
       ΒΑΣΙΚΟ ΠΕΡΙΕΧΟΜΕΝΟ
       Flex για να αλλάξει η σειρά των στηλών
    ================================================== */
    body:not(.home) .hre-inner-content .row-inner {
        display: flex !important;
        flex-direction: column !important;
        flex-wrap: nowrap !important;
        width: 100% !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
    }

    /* Όλες οι βασικές στήλες γίνονται 12/12 */
    body:not(.home)
    .hre-inner-content
    .row-inner > .column_parent,

    body:not(.home)
    .hre-inner-content
    .row-inner > .column_child {
        display: block !important;
        float: none !important;
        width: 100% !important;
        max-width: 100% !important;
        flex: 0 0 auto !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
    }

    /* ==================================================
       INVERTED ORDER ΣΤΟ ΒΑΣΙΚΟ ΠΕΡΙΕΧΟΜΕΝΟ

       2η στήλη: κείμενο – εμφανίζεται πρώτη
       1η στήλη: πλαϊνό μενού – εμφανίζεται μετά
    ================================================== */

    /* Δεύτερη στήλη – κυρίως κείμενο */
    body:not(.home)
    .hre-inner-content
    .row-inner > .column_parent:nth-child(2),

    body:not(.home)
    .hre-inner-content
    .row-inner > .column_child:nth-child(2) {
        order: 1 !important;
        margin-top: 0 !important;
        margin-bottom: 0 !important;
    }

    /* Πρώτη στήλη – πλαϊνό μενού */
    body:not(.home)
    .hre-inner-content
    .row-inner > .column_parent:first-child,

    body:not(.home)
    .hre-inner-content
    .row-inner > .column_child:first-child {
        order: 2 !important;
        margin-top: 45px !important;
        margin-bottom: 0 !important;
    }

    /* Όλα τα εσωτερικά wrappers σε πλήρες πλάτος */
    body:not(.home) .hre-inner-breadcrumbs .uncol,
    body:not(.home) .hre-inner-breadcrumbs .uncoltable,
    body:not(.home) .hre-inner-breadcrumbs .uncell,
    body:not(.home) .hre-inner-breadcrumbs .uncont,
    body:not(.home) .hre-inner-content .uncol,
    body:not(.home) .hre-inner-content .uncoltable,
    body:not(.home) .hre-inner-content .uncell,
    body:not(.home) .hre-inner-content .uncont {
        box-sizing: border-box !important;
        width: 100% !important;
        max-width: 100% !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
    }

    /* Το κείμενο να μη δημιουργεί μεγάλα κενά */
    body:not(.home) .hre-inner-content p,
    body:not(.home) .hre-inner-content li {
        text-align: left !important;
        word-break: normal !important;
        overflow-wrap: break-word !important;
    }
}

/* ==================================================
   BREADCRUMBS – ALL INTERNAL PAGES
================================================== */
@media (max-width: 959px) {

    /*
     * Λειτουργεί είτε το breadcrumb βρίσκεται
     * στο #page-header είτε μέσα στο page content.
     */
    body:not(.home) .hre-inner-breadcrumbs,
    body:not(.home) .hre-inner-breadcrumbs .row-parent,
    body:not(.home) .hre-inner-breadcrumbs .row-inner {
        box-sizing: border-box !important;
        height: auto !important;
        min-height: 0 !important;
        max-height: none !important;
        overflow: visible !important;
    }

    /* Εξωτερικό row */
    body:not(.home) .hre-inner-breadcrumbs {
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 !important;
        padding-left: 20px !important;
        padding-right: 20px !important;
    }

    /* Αφαίρεση desktop padding από το row-parent */
    body:not(.home) .hre-inner-breadcrumbs .row-parent {
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
    }

    /* Οι δύο στήλες η μία κάτω από την άλλη */
    body:not(.home) .hre-inner-breadcrumbs .row-inner {
        display: flex !important;
        flex-direction: column !important;
        flex-wrap: nowrap !important;
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 !important;
    }

    /* Και οι δύο στήλες σε πλήρες πλάτος */
    body:not(.home)
    .hre-inner-breadcrumbs
    .row-inner > .column_parent {
        display: block !important;
        visibility: visible !important;
        opacity: 1 !important;
        float: none !important;
        position: relative !important;
        box-sizing: border-box !important;
        width: 100% !important;
        max-width: 100% !important;
        height: auto !important;
        min-height: 0 !important;
        flex: 0 0 auto !important;
        margin: 0 !important;
    }

    /* Καμία πρόσθετη απόσταση πριν από τη δεύτερη στήλη */
    body:not(.home)
    .hre-inner-breadcrumbs
    .row-inner > .column_parent:nth-child(2) {
        margin-top: 0 !important;
    }

    /* Εσωτερικά wrappers των δύο στηλών */
    body:not(.home) .hre-inner-breadcrumbs .uncol,
    body:not(.home) .hre-inner-breadcrumbs .uncoltable,
    body:not(.home) .hre-inner-breadcrumbs .uncell,
    body:not(.home) .hre-inner-breadcrumbs .uncont {
        box-sizing: border-box !important;
        width: 100% !important;
        max-width: 100% !important;
        height: auto !important;
        min-height: 0 !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
    }
}

/* ==================================================
   LEFT MENU – MOBILE TYPOGRAPHY
================================================== */
@media (max-width: 569px) {

    body:not(.home) .hre-overlay-menu .unmenu-block li > a,
    body:not(.home) .hre-overlay-menu .unmenu-block li > a > span {
        font-size: 20px !important;
        line-height: 1.15 !important;
    }
}

/* ==================================================
   INTERNAL PAGES – EXTRA ROWS
================================================== */
@media (max-width: 959px) {

    /*
     * Εξωτερικό extra row.
     * Δεν χρησιμοποιούμε overflow:hidden γιατί μπορεί
     * να περιέχει off-canvas φίλτρα του Uncode.
     */
    body:not(.home) .hre-inner-extra {
        box-sizing: border-box !important;
        width: 100% !important;
        max-width: 100% !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        padding: 40px 20px 60px !important;
        overflow: visible !important;
    }

    /*
     * Στοχεύουμε μόνο το άμεσο row-parent
     * του hre-inner-extra.
     */
    body:not(.home)
    .hre-inner-extra > .row-parent {
        box-sizing: border-box !important;
        width: 100% !important;
        max-width: 100% !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
    }

    /*
     * Στοχεύουμε μόνο το πρώτο row-inner.
     * Δεν επηρεάζονται τα εσωτερικά rows του grid.
     */
    body:not(.home)
    .hre-inner-extra > .row-parent > .row-inner {
        box-sizing: border-box !important;
        display: flex !important;
        flex-direction: column !important;
        flex-wrap: nowrap !important;
        width: 100% !important;
        max-width: 100% !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
    }

    /*
     * Μόνο οι άμεσες βασικές στήλες του extra row.
     * Δεν επηρεάζονται οι στήλες μέσα στα AJAX filters.
     */
    body:not(.home)
    .hre-inner-extra > .row-parent > .row-inner > .column_parent {
        box-sizing: border-box !important;
        display: block !important;
        float: none !important;
        width: 100% !important;
        max-width: 100% !important;
        flex: 0 0 auto !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
    }

    /*
     * Wrappers μόνο της άμεσης εξωτερικής στήλης.
     */
    body:not(.home)
    .hre-inner-extra > .row-parent > .row-inner >
    .column_parent > .uncol,

    body:not(.home)
    .hre-inner-extra > .row-parent > .row-inner >
    .column_parent > .uncol > .uncoltable,

    body:not(.home)
    .hre-inner-extra > .row-parent > .row-inner >
    .column_parent > .uncol > .uncoltable > .uncell,

    body:not(.home)
    .hre-inner-extra > .row-parent > .row-inner >
    .column_parent > .uncol > .uncoltable > .uncell > .uncont {
        box-sizing: border-box !important;
        width: 100% !important;
        max-width: 100% !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
    }

    /* Raw HTML wrappers */
    body:not(.home) .hre-inner-extra .wpb_raw_code,
    body:not(.home) .hre-inner-extra .wpb_raw_code > .wpb_wrapper {
        box-sizing: border-box !important;
        width: 100% !important;
        max-width: 100% !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
    }

    /* Responsive embeds */
    body:not(.home) .hre-inner-extra iframe,
    body:not(.home) .hre-inner-extra embed,
    body:not(.home) .hre-inner-extra object,
    body:not(.home) .hre-inner-extra video {
        display: block !important;
        width: 100% !important;
        max-width: 100% !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        border: 0 !important;
    }

    /* Ύψος iframe */
    body:not(.home) .hre-inner-extra iframe {
        height: 75svh !important;
        min-height: 600px !important;
    }

    /* Responsive εικόνες */
    body:not(.home) .hre-inner-extra img {
        max-width: 100% !important;
        height: auto !important;
    }
}


/* ==================================================
   INTERNAL EXTRA ROWS – MOBILE
================================================== */
@media (max-width: 569px) {

    body:not(.home) .hre-inner-extra {
        padding-top: 30px !important;
        padding-right: 20px !important;
        padding-bottom: 50px !important;
        padding-left: 20px !important;
    }

    body:not(.home) .hre-inner-extra iframe {
        height: 70svh !important;
        min-height: 550px !important;
    }
}

/* ==================================================
   MOBILE FILTER SIDEBAR – HEADER, CLOSE & FOOTER
================================================== */
@media (max-width: 959px) {

    /* Ολόκληρο το sidebar */
    body.ajax-filter-sidebar-overlay
    .ajax-filter-sidebar--offcanvas
    .ajax-filter-sidebar {
        display: flex !important;
        flex-direction: column !important;
        height: 100dvh !important;
        min-height: 100dvh !important;
        max-height: 100dvh !important;
        background: #ffffff !important;
        overflow: hidden !important;
    }

    /* ----------------------------------------------
       Header με κουμπί κλεισίματος
    ---------------------------------------------- */
    body.ajax-filter-sidebar-overlay
    .ajax-filter-sidebar
    .ajax-filter-sidebar-header {
        box-sizing: border-box !important;
        display: flex !important;
        align-items: center !important;
        position: relative !important;
        top: auto !important;
        right: auto !important;
        bottom: auto !important;
        left: auto !important;
        flex: 0 0 58px !important;
        width: 100% !important;
        height: 58px !important;
        min-height: 58px !important;
        margin: 0 !important;
        padding: 0 20px !important;
        color: #255aa5 !important;
        background: #ffffff !important;
        border-bottom: 1px solid #255aa5 !important;
        z-index: 10 !important;
    }

    /* Κουμπί × Close */
    body.ajax-filter-sidebar-overlay
    .ajax-filter-sidebar
    .close-ajax-filter-sidebar {
        box-sizing: border-box !important;
        display: flex !important;
        align-items: center !important;
        gap: 8px !important;
        width: 100% !important;
        min-width: 0 !important;
        margin: 0 !important;
        padding: 0 !important;
        color: #255aa5 !important;
        background: transparent !important;
        border: 0 !important;
        font-family: "HRE" !important;
        font-size: 15px !important;
        line-height: 1 !important;
        cursor: pointer !important;
        transform: none !important;
    }

    body.ajax-filter-sidebar-overlay
    .ajax-filter-sidebar
    .close-ajax-filter-sidebar span {
        display: inline-block !important;
        color: #255aa5 !important;
        font-size: 28px !important;
        font-weight: 300 !important;
        line-height: 1 !important;
    }

    /* ----------------------------------------------
       Scrollable περιεχόμενο φίλτρων
    ---------------------------------------------- */
    body.ajax-filter-sidebar-overlay
    .ajax-filter-sidebar
    .ajax-filter-sidebar-body {
        box-sizing: border-box !important;
        display: block !important;
        position: relative !important;
        flex: 1 1 auto !important;
        width: 100% !important;
        height: auto !important;
        min-height: 0 !important;
        max-height: none !important;
        margin: 0 !important;
        overflow: hidden !important;
    }

    body.ajax-filter-sidebar-overlay
    .ajax-filter-sidebar
    .ajax-filter-sidebar-body > .vc_row {
        box-sizing: border-box !important;
        width: 100% !important;
        height: 100% !important;
        min-height: 0 !important;
        margin: 0 !important;
        padding-top: 20px !important;
        padding-right: 0 !important;
        padding-bottom: 20px !important;
        padding-left: 0 !important;
        overflow-x: hidden !important;
        overflow-y: auto !important;
        -webkit-overflow-scrolling: touch;
    }

    body.ajax-filter-sidebar-overlay
    .ajax-filter-sidebar
    .ajax-filter-sidebar-body > .vc_row > .row-parent {
        box-sizing: border-box !important;
        width: 100% !important;
        margin: 0 !important;
        padding-left: 20px !important;
        padding-right: 20px !important;
    }

    /* ----------------------------------------------
       Footer με Καθαρισμός / Εφαρμογή
    ---------------------------------------------- */
    body.ajax-filter-sidebar-overlay
    .ajax-filter-sidebar
    .ajax-filter-sidebar-footer {
        box-sizing: border-box !important;
        display: block !important;
        position: relative !important;
        top: auto !important;
        right: auto !important;
        bottom: auto !important;
        left: auto !important;
        flex: 0 0 auto !important;
        width: 100% !important;
        height: auto !important;
        margin: 0 !important;
        padding: 12px 20px !important;
        background: #ffffff !important;
        border-top: 1px solid #255aa5 !important;
        z-index: 10 !important;
    }

    body.ajax-filter-sidebar-overlay
    .ajax-filter-sidebar
    .ajax-filter-sidebar-footer .buttons {
        display: flex !important;
        gap: 10px !important;
        width: 100% !important;
        margin: 0 !important;
    }

    body.ajax-filter-sidebar-overlay
    .ajax-filter-sidebar
    .ajax-filter-sidebar-footer .buttons a {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        flex: 1 1 50% !important;
        width: auto !important;
        min-height: 42px !important;
        margin: 0 !important;
        padding: 10px 12px !important;
        font-size: 13px !important;
        line-height: 1.2 !important;
        transform: none !important;
    }
}

/* ==================================================
   SINGLE POSTS – TABLET & MOBILE
================================================== */
@media (max-width: 959px) {

    /*
     * Όλα τα εξωτερικά rows του single post.
     * Αντικατάσταση των desktop paddings 160px.
     */
    body.single-post
    .post-content > .vc_row.row-container {
        box-sizing: border-box !important;
        width: 100% !important;
        max-width: 100% !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        padding-left: 20px !important;
        padding-right: 20px !important;
    }

    /*
     * Κατάργηση πρόσθετων εσωτερικών paddings
     * μόνο από το βασικό επίπεδο των rows.
     */
    body.single-post
    .post-content > .vc_row.row-container > .row-parent {
        box-sizing: border-box !important;
        width: 100% !important;
        max-width: 100% !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
    }

    /*
     * Οι βασικές στήλες τοποθετούνται
     * η μία κάτω από την άλλη.
     */
    body.single-post
    .post-content > .vc_row.row-container >
    .row-parent > .row-inner {
        display: flex !important;
        flex-direction: column !important;
        flex-wrap: nowrap !important;
        width: 100% !important;
        max-width: 100% !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
    }

    /*
     * Κάθε βασική στήλη γίνεται 12/12.
     */
    body.single-post
    .post-content > .vc_row.row-container >
    .row-parent > .row-inner > .column_parent {
        box-sizing: border-box !important;
        display: block !important;
        float: none !important;
        width: 100% !important;
        max-width: 100% !important;
        flex: 0 0 auto !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
    }

    /*
     * Εσωτερικά wrappers των βασικών στηλών.
     */
    body.single-post
    .post-content > .vc_row.row-container >
    .row-parent > .row-inner > .column_parent > .uncol,

    body.single-post
    .post-content > .vc_row.row-container >
    .row-parent > .row-inner > .column_parent >
    .uncol > .uncoltable,

    body.single-post
    .post-content > .vc_row.row-container >
    .row-parent > .row-inner > .column_parent >
    .uncol > .uncoltable > .uncell,

    body.single-post
    .post-content > .vc_row.row-container >
    .row-parent > .row-inner > .column_parent >
    .uncol > .uncoltable > .uncell > .uncont {
        box-sizing: border-box !important;
        width: 100% !important;
        max-width: 100% !important;
    }

    /*
     * Ακύρωση του inline max-width:80%
     * που έχει η στήλη του τίτλου.
     */
    body.single-post
    .post-content > .vc_row.row-container
    .column_parent > .uncol > .uncoltable >
    .uncell > .uncont[style*="max-width"] {
        width: 100% !important;
        max-width: 100% !important;
    }

    /*
     * Απόσταση ανάμεσα στην πρώτη και
     * τη δεύτερη στήλη του βασικού περιεχομένου.
     */
    body.single-post
    .post-content > .vc_row.row-container >
    .row-parent > .row-inner >
    .column_parent + .column_parent {
        margin-top: 40px !important;
    }

    /*
     * Τίτλος single post.
     */
    body.single-post .post-content h1 {
        width: 100% !important;
        max-width: 100% !important;
        font-size: clamp(26px, 7vw, 30px) !important;
        line-height: 1.15 !important;
        word-break: normal !important;
        overflow-wrap: break-word !important;
        hyphens: none !important;
    }

    /*
     * Κείμενο και σύνδεσμοι.
     */
    body.single-post .dynamic-article-content,
    body.single-post .dynamic-article-content p,
    body.single-post .dynamic-article-content a,
    body.single-post .dynamic-article-content strong {
        max-width: 100% !important;
        word-break: normal !important;
        overflow-wrap: anywhere !important;
    }

    /*
     * Εικόνες και αρχεία media.
     */
    body.single-post .post-content img,
    body.single-post .post-content iframe,
    body.single-post .post-content video {
        max-width: 100% !important;
    }
}


/* ==================================================
   SINGLE POSTS – SMALL MOBILE
================================================== */
@media (max-width: 569px) {

    body.single-post
    .post-content > .vc_row.row-container {
        padding-left: 20px !important;
        padding-right: 20px !important;
    }

    body.single-post .post-content h1 {
        font-size: 26px !important;
        line-height: 1.15 !important;
    }
}

/* ==================================================
   SINGLE POSTS – MOBILE CATEGORY BREADCRUMB
   Desktop: διατηρούνται οι δύο αρχικές στήλες.
   Mobile: ενιαίο κείμενο Κατηγορία - Υποκατηγορία.
================================================== */

/* Το νέο breadcrumb δεν εμφανίζεται στο desktop */
body.single-post .hre-single-taxonomy-mobile {
    display: none !important;
}

@media (max-width: 959px) {

    /*
     * Κρύβουμε τις αρχικές στήλες ΜΟΝΟ όταν
     * το JavaScript έχει δημιουργήσει το breadcrumb.
     */
    body.single-post
    .post-content > .vc_row.row-container.hre-taxonomy-ready
    > .row-parent {
        display: none !important;
    }

    /* Ενιαία περιοχή κατηγοριών */
    body.single-post
    .post-content > .vc_row.row-container.hre-taxonomy-ready {
        box-sizing: border-box !important;
        width: 100% !important;
        max-width: 100% !important;
        height: auto !important;
        min-height: 0 !important;
        max-height: none !important;
        margin: 0 !important;
        padding: 16px 20px !important;
        border-top: 1px solid #b7d1e8 !important;
        border-bottom: 1px solid #b7d1e8 !important;
    }

    /* Κατηγορία και υποκατηγορία ως συνεχόμενο κείμενο */
    body.single-post
    .hre-taxonomy-ready > .hre-single-taxonomy-mobile {
        box-sizing: border-box !important;
        display: block !important;
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
        color: #255aa5 !important;
        font-size: 14px !important;
        font-weight: 400 !important;
        line-height: 1.5 !important;
        letter-spacing: 0 !important;
        text-align: left !important;
        white-space: normal !important;
        word-break: normal !important;
        overflow-wrap: normal !important;
        hyphens: none !important;
    }

    /* Οι σύνδεσμοι διατηρούν τη λειτουργία τους */
    body.single-post
    .hre-single-taxonomy-mobile > a {
        display: inline !important;
        float: none !important;
        position: static !important;
        margin: 0 !important;
        padding: 0 !important;
        font: inherit !important;
        letter-spacing: inherit !important;
        color: inherit !important;
        white-space: normal !important;
        word-break: normal !important;
        overflow-wrap: normal !important;
        hyphens: none !important;
    }
}
/* ==================================================
   SINGLE POSTS – MOBILE PREVIOUS / NEXT
================================================== */
@media (max-width: 569px) {

    body.single-post
    .uncode-custom-navigation__link {
        display: flex !important;
        align-items: center !important;
        gap: 8px !important;
    }

    body.single-post
    .uncode-custom-navigation__text {
        min-width: 0 !important;
    }

    body.single-post
    .uncode-custom-navigation__label {
        font-size: 13px !important;
        line-height: 1.3 !important;
        letter-spacing: 0 !important;
        white-space: nowrap !important;
        word-break: normal !important;
        overflow-wrap: normal !important;
    }

    body.single-post
    .uncode-custom-navigation__icon {
        flex-shrink: 0 !important;
        font-size: 14px !important;
    }
}

/* ==================================================
   PAGES – UNIFIED MOBILE BREADCRUMB
================================================== */

.hre-page-breadcrumb-mobile {
    display: none !important;
}

@media (max-width: 959px) {

    /* Απόκρυψη των δύο στηλών μόνο μετά τη δημιουργία */
    body:not(.single-post)
    .hre-inner-breadcrumbs.hre-page-breadcrumb-ready
    > .row-parent {
        display: none !important;
    }

    /* Ενιαίο πλαίσιο */
    body:not(.single-post)
    .hre-inner-breadcrumbs.hre-page-breadcrumb-ready {
        box-sizing: border-box !important;
        width: 100% !important;
        max-width: 100% !important;
        height: auto !important;
        min-height: 0 !important;
        max-height: none !important;
        margin: 5px !important;
        padding: 16px 20px !important;
        border-top: 1px solid #b7d1e8 !important;
        border-bottom: 1px solid #b7d1e8 !important;
    }

    /* Συνεχόμενο κείμενο */
    body:not(.single-post)
    .hre-inner-breadcrumbs.hre-page-breadcrumb-ready
    > .hre-page-breadcrumb-mobile {
        display: block !important;
        width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
        color: #255aa5 !important;
        font-size: 14px !important;
        font-weight: 400 !important;
        line-height: 1.5 !important;
        letter-spacing: 0 !important;
        text-align: left !important;
        white-space: normal !important;
        word-break: normal !important;
        overflow-wrap: normal !important;
        hyphens: none !important;
    }

    body:not(.single-post)
    .hre-page-breadcrumb-mobile > a,
    body:not(.single-post)
    .hre-page-breadcrumb-mobile > span {
        display: inline !important;
        font: inherit !important;
        color: inherit !important;
        margin: 0 !important;
        padding: 0 !important;
        white-space: normal !important;
        word-break: normal !important;
        overflow-wrap: normal !important;
        hyphens: none !important;
    }
}

/* Ακύρωση του Left Padding μόνο στις εξωτερικές στήλες για τις Archive Posts Pages */
@media (max-width: 570px) {
    body:not(.home) .main-container
    .hre-inner-extra > .row-parent >
    .cols-sm-responsive > .column_parent {
        padding-left: 0 !important;
        padding-right: 0 !important;
    }
}

/*==============================================================
APOKRYPSH LANGUAGES 
================================================================*/
/* Προσωρινή απόκρυψη επιλογής γλώσσας */
.hre-lang-switcher {
    display: none !important;
}