.elementor-4539 .elementor-element.elementor-element-5881d21{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--overlay-opacity:0.15;--margin-top:-20px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-4539 .elementor-element.elementor-element-5881d21::before, .elementor-4539 .elementor-element.elementor-element-5881d21 > .elementor-background-video-container::before, .elementor-4539 .elementor-element.elementor-element-5881d21 > .e-con-inner > .elementor-background-video-container::before, .elementor-4539 .elementor-element.elementor-element-5881d21 > .elementor-background-slideshow::before, .elementor-4539 .elementor-element.elementor-element-5881d21 > .e-con-inner > .elementor-background-slideshow::before, .elementor-4539 .elementor-element.elementor-element-5881d21 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}@media(max-width:1024px){.elementor-4539 .elementor-element.elementor-element-5881d21{--overlay-opacity:0;--margin-top:-20px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}}@media(max-width:767px){.elementor-4539 .elementor-element.elementor-element-5881d21{--overlay-opacity:0;--margin-top:-20px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}}/* Start custom CSS for html, class: .elementor-element-d0f1636 */:root{
  --bg:#0b1f4a; --bg2:#102964; --fg:#fff; --muted:#93c5fd; --hover:rgba(255,255,255,.12);
  --active:#bfdbfe; --radius:10px; --w:300px;
}
*{box-sizing:border-box}
html,body{height:100%}
body{ margin:0; font-family:system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,"Noto Sans",sans-serif; background:#f3f4f6; color:#111827; }

/* === ΜΟΝΟ sibebar_menu === */
.sibebar_menu{
  position:fixed; inset:0 auto 0 0; width:var(--w);
  background:linear-gradient(180deg,var(--bg),var(--bg2));
  color:var(--fg); padding:18px;
  display:flex; flex-direction:column; gap:16px;
  border-right:1px solid rgba(255,255,255,.08);
  overflow:auto; -webkit-overflow-scrolling:touch;
  z-index:1000; transform:translateX(0); transition:transform .25s ease;
}
.brand{ display:flex; align-items:center; justify-content:space-between; gap:10px; padding:8px 6px; }
.brand h1{ margin:0; font-size:18px; letter-spacing:.3px; }
.menu-toggle{ display:none; border:0; background:var(--hover); color:var(--fg); padding:8px 10px; border-radius:8px; cursor:pointer; }

nav{ display:flex; flex-direction:column; gap:14px; }
.group{ background:transparent; border-radius:var(--radius); overflow:hidden; }
.group summary{
  list-style:none; cursor:pointer; padding:10px 12px; border-radius:var(--radius);
  color:var(--muted); text-transform:uppercase; font-size:12px; letter-spacing:.8px;
  user-select:none; outline:none;
}
.group[open] summary{ background:var(--hover); color:var(--active); }
.group ul{ margin:6px 0 10px; padding:0; list-style:none; }
.group li{ margin:2px 0; }

.link{
  display:flex; flex-direction:column; align-items:flex-start; gap:2px;
  padding:9px 12px; text-decoration:none; color:var(--fg);
  border-radius:8px; transition:background .15s ease, transform .05s ease; outline:none;
}
.link:hover{ background:var(--hover); }
.link:focus-visible{ box-shadow:0 0 0 2px #fff, 0 0 0 4px #60a5fa; }
.link.active{ background:rgba(191,219,254,.18); color:var(--active); font-weight:600; }

.link .main{ font-size:14px; line-height:1.25; }
.link .sub{ font-size:12px; line-height:1.2; color:var(--muted); opacity:.95; }

.badge{ margin-left:auto; background:rgba(255,255,255,.15); padding:2px 8px; font-size:11px; border-radius:999px; }

@media (max-width: 900px){
  .sibebar_menu{ transform:translateX(-100%); }
  .sibebar_menu.open{ transform:translateX(0); box-shadow: 0 10px 30px rgba(0,0,0,.3); }
  .topbar{
    position: sticky; top: 0; display:flex; align-items:center; justify-content:space-between; gap:10px;
    background:#0b1f4a; color:#fff; padding:10px 12px; z-index:1100;
  }
  .menu-toggle{ display:inline-flex; }
}

/* Περιεχόμενο σελίδας */
.page{ min-height:100dvh; padding-left:var(--w); }
@media (max-width: 900px){ .page{ padding-left:0; } }

.submenu { display: none; margin-left: 15px; padding-left: 0; list-style: none; }
.submenu li { margin: 2px 0; }
.submenu.open { display: block; }
.brand { display: flex; align-items: center; justify-content: space-between; }
.brand-left { display: flex; align-items: center; gap: 20px; }

.brand img.logo {
  width: 60px;
  height: auto;
  border-radius: 6px;
}

.brand-text h1 { margin: 0; font-size: 17px; }
.brand-text .sub { font-size: 12px; color: var(--muted); opacity: 0.9; }

.socials { margin-top: auto; display: flex; justify-content: left; gap: 16px; padding-top: 20px; padding-bottom: 10px; border-top: 1px solid rgba(255, 255, 255, 0.1); }
.socials a { display: flex; align-items: center; justify-content: center; width: 44px; height: 44px; background: rgba(255, 255, 255, 0.12); border-radius: 50%; color: var(--fg); transition: background 0.2s, color 0.2s; }
.socials a:hover { background: rgba(255, 255, 255, 0.2); color: var(--active); }
.socials svg { width: 24px; height: 24px; }

.sibebar_menu-footer { text-align: center; font-size: 12px; color: var(--muted); padding: 12px 8px 20px; border-top: 1px solid rgba(255, 255, 255, 0.08); }
.sibebar_menu-footer .privacy { display: block; margin-top: 6px; color: var(--active); text-decoration: none; transition: color 0.2s; }
.sibebar_menu-footer .privacy:hover { color: #fff; }
.sibebar_menu-footer .designer { margin-top: 6px; font-size: 11px; opacity: 0.8; }

/* Scrollbars */
html{ scrollbar-width: thin; scrollbar-color: rgba(0,0,0,.25) transparent; }
html::-webkit-scrollbar{ width:10px; height:10px; }
html::-webkit-scrollbar-track{ background:transparent; }
html::-webkit-scrollbar-thumb{ background:rgba(0,0,0,.25); border-radius:999px; border:2px solid transparent; background-clip:content-box; }
html::-webkit-scrollbar-thumb:hover{ background:rgba(0,0,0,.35); background-clip:content-box; }
body{ scrollbar-gutter: stable; }

.sibebar_menu{ scrollbar-width: thin; scrollbar-color: rgba(255,255,255,.35) rgba(255,255,255,.08); }
.sibebar_menu::-webkit-scrollbar{ width:10px; }
.sibebar_menu::-webkit-scrollbar-track{ background:linear-gradient(180deg, var(--bg), var(--bg2)); box-shadow: inset 0 0 0 1px rgba(255,255,255,.06); border-radius:999px; }
.sibebar_menu::-webkit-scrollbar-thumb{ background:rgba(255,255,255,.35); border-radius:999px; border:3px solid transparent; background-clip:content-box; transition: background .2s, border-color .2s; }
.sibebar_menu::-webkit-scrollbar-thumb:hover{ background:rgba(255,255,255,.5); }
.sibebar_menu::-webkit-scrollbar-thumb:active{ background:var(--active); }
.sibebar_menu::-webkit-scrollbar-corner{ background:transparent; }

/* ===== ΚΑΡΤΕΣ ΟΡΙΖΟΝΤΙΕΣ (ίδιο layout με blog) ===== */
.container{ max-width:1100px; margin:0 auto; padding:24px; }

.posts-grid{ display:grid; grid-template-columns: repeat(12, 1fr); gap:16px; }
.post-card{
  grid-column: span 12;
  display:flex; flex-direction:column; gap:10px;
  background:#fff;
  border:1px solid rgba(16,41,100,.10);
  border-radius:14px; box-shadow: 0 8px 18px rgba(0,0,0,.05);
  padding:12px; transition: transform .12s ease, box-shadow .12s ease;
}
.post-card:hover{ transform: translateY(-2px); box-shadow: 0 10px 22px rgba(0,0,0,.07); }

/* αφαιρέθηκαν .post-thumb-wrap, .post-thumb, .thumb-fallback */

.post-body{ flex:1; min-width:0; display:flex; flex-direction:column; gap:6px; }
.post-title{ margin:0; font-size:18px; line-height:1.25; }
.post-title a{ color:#0b1f4a; text-decoration:none; }
.post-title a:hover{ text-decoration:underline; }

.post-meta{ font-size:12px; color:#6b7280; display:flex; gap:10px; flex-wrap:wrap; }
.chips{ display:flex; flex-wrap:wrap; gap:6px; }
.chip{ font-size:11px; background:#eef2ff; color:#3730a3; padding:3px 7px; border-radius:999px; }

.post-excerpt{ font-size:14px; color:#1f2937; line-height:1.55; }
.post-actions{ margin-top:auto; }
.btn{
  display:inline-flex; align-items:center; justify-content:center;
  padding:8px 12px; border-radius:10px; border:1px solid rgba(16,41,100,.18);
  background:linear-gradient(180deg,#ffffff,#f9fafb);
  color:var(--bg); text-decoration:none; font-weight:700; font-size:13px;
}
.btn:hover{ background:#f3f6ff; border-color: rgba(16,41,100,.28); }

.pagination{ display:flex; gap:10px; justify-content:center; margin-top:28px; padding-top:6px; }
.empty{ text-align:center; color:#6b7280; padding:40px 0; }

@media (max-width: 640px){
  .post-card{ gap:12px; padding:10px; }
  .post-title{ font-size:16px; }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-5881d21 *//* ===== JFY BLOG ARCHIVE (FULL CSS με responsive pagination) ===== */
.jfy-blog-scope{
  --jfy-gap:16px;
  --jfy-accent:#0b1f4a;
  --jfy-accent2:#102964;
  --jfy-muted:#6b7280;
}

/* Container & header */
.jfy-blog-container{ max-width:1100px; margin:0 auto; padding:24px }
.jfy-blog-header{ margin-bottom:14px }
.jfy-blog-title{ margin:0 0 6px; font-size:26px; color:var(--jfy-accent) }
.jfy-blog-desc{ margin:0; color:var(--jfy-muted) }

/* Toolbar (μόνο φίλτρα εδώ) */
.jfy-blog-toolbar{ display:flex; flex-wrap:wrap; gap:10px; align-items:center; margin:10px 0 14px }

/* Filters */
.jfy-filters{ display:flex; flex-wrap:wrap; gap:10px; align-items:center }
.jfy-filter-btn{
  border:1px solid rgba(16,41,100,.18);
  background:#fff;
  padding:8px 12px;
  border-radius:999px;
  cursor:pointer;
  font-weight:700;
  font-size:13px;
  color:var(--jfy-accent);
  transition:background .2s, border-color .2s, box-shadow .2s, color .2s;
}
.jfy-filter-btn:hover{ background:#f3f6ff; border-color: rgba(16,41,100,.28) }
.jfy-filter-btn.active{
  background:linear-gradient(180deg,var(--jfy-accent),var(--jfy-accent2));
  color:#fff;
  border-color:transparent;
  box-shadow:0 6px 14px rgba(11,31,74,.25);
}

/* Posts grid */
.jfy-posts-grid{ display:grid; grid-template-columns: repeat(12, 1fr); gap:var(--jfy-gap) }

/* Horizontal cards */
.jfy-post-card{
  grid-column: span 12;
  display:flex;
  align-items:stretch;
  gap:14px;
  background:#fff;
  border:1px solid rgba(16,41,100,.10);
  border-radius:14px;
  box-shadow: 0 8px 18px rgba(0,0,0,.05);
  padding:12px;
  transition: transform .12s ease, box-shadow .12s ease;
}
.jfy-post-card:hover{ transform: translateY(-2px); box-shadow: 0 10px 22px rgba(0,0,0,.07) }

.jfy-post-thumb-wrap{
  flex:0 0 150px;
  align-self:center;
  border-radius:10px;
  overflow:hidden;
  background:linear-gradient(180deg,var(--jfy-accent),var(--jfy-accent2));
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.08);
}
.jfy-post-thumb{ width:100%; height:100%; aspect-ratio:1/1; object-fit:cover; display:block }

.jfy-post-body{ flex:1; min-width:0; display:flex; flex-direction:column; gap:6px }
.jfy-post-title{ margin:0; font-size:18px; line-height:1.25 }
.jfy-post-title a{ color:var(--jfy-accent); text-decoration:none }
.jfy-post-title a:hover{ text-decoration:underline }

.jfy-post-meta {
  font-size: 12px !important;
  color: var(--jfy-muted);
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
  align-items: center !important;
}

.jfy-chips{ display:flex; flex-wrap:wrap; gap:6px }
.jfy-chip{
  font-size:12px !important;
  background:#2A3C64;
  color: WHITE;
  padding:3px 7px;
  border-radius:999px;
  text-decoration:none;
}
.jfy-post-excerpt{ font-size:14px; color:#1f2937; line-height:1.55 }
.jfy-post-actions{ margin-top:auto }

/* Buttons (shared) */
.jfy-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:8px 12px;
  border-radius:10px;
  border:1px solid rgba(16,41,100,.18);
  background:linear-gradient(180deg,#ffffff,#f9fafb);
  color:var(--jfy-accent);
  text-decoration:none;
  font-weight:700;
  font-size:13px;
  cursor:pointer;
  transition:background .2s, border-color .2s;
}
.jfy-btn:disabled{ opacity:.5; cursor:not-allowed }
.jfy-btn:hover{ background:#f3f6ff; border-color: rgba(16,41,100,.28) }

/* === Pagination: desktop ευθεία === */
.jfy-pagination{
  display:flex;
  flex-direction:row;
  justify-content:center;
  align-items:center;
  flex-wrap:nowrap;
  gap:12px;
  margin-top:28px;
  padding-top:6px;
}
.jfy-pagination > *{
  flex:0 0 auto;
  display:inline-flex;
  width:auto;
  max-width:none;
  white-space:nowrap;
  margin:0;
}
.jfy-pagination .jfy-btn{
  line-height:1;
  padding:8px 12px;
  width:auto;
  min-width:unset;
}
.jfy-pagination .jfy-page-info{
  display:inline-flex;
  align-items:center;
  padding:0 6px;
  font-weight:600;
  color:var(--jfy-accent);
}

/* === Pagination: mobile στήλη === */
@media (max-width:640px){
  .jfy-pagination{
    flex-direction:column;
    gap:10px;
    align-items:center;
    margin-top:22px;
    padding:10px 8px 14px;
  }
  .jfy-pagination .jfy-btn{
    width:100%;
    max-width:300px;
    justify-content:center;
    padding:10px 14px;
    border-radius:12px;
    font-size:14px;
  }
  .jfy-pagination .jfy-page-info{
    order:-1; /* το κείμενο στη μέση */
    font-size:14px;
    margin:6px 0;
  }
}

/* Empty/Error */
.jfy-empty, .jfy-error{
  text-align:center;
  color:var(--jfy-muted);
  padding:40px 0;
}

/* Skeletons */
.jfy-skel{
  background:linear-gradient(90deg,#f3f4f6 25%, #e5e7eb 37%, #f3f4f6 63%);
  background-size:400% 100%;
  animation:jfy-shimmer 1.2s ease-in-out infinite;
  border-radius:10px;
}
@keyframes jfy-shimmer{ 0%{background-position:100% 0} 100%{background-position:0 0} }
.jfy-skel-card{ height:140px; padding:12px }
.jfy-skel-thumb{ width:150px; height:116px }
.jfy-skel-line{ height:12px; margin:8px 0; width:60% }
.jfy-skel-line.sm{ width:40% }

/* ===== Mobile βελτιώσεις για κάρτες ===== */
@media (max-width: 640px){
  /* Κάρτα κάθετη, εικόνα πάνω */
  .jfy-post-card{
    flex-direction: column;
    align-items: stretch;
    padding: 12px;
    gap: 10px;
  }
  .jfy-post-thumb-wrap{
    flex:0 0 auto;
    width:100%;
    margin: -12px -12px 8px;
    border-radius:14px 14px 0 0;
    box-shadow:none;
    background:none;
  }
  .jfy-post-thumb{
    width:100%;
    height:auto;
    aspect-ratio:16/9;
    object-fit:cover;
    display:block;
    border-radius:14px 14px 0 0;
  }

  .jfy-post-title{ font-size:18px; line-height:1.3 }
  .jfy-post-excerpt{ font-size:15px }
  .jfy-chips{ gap:8px }
  .jfy-chip{ padding:4px 8px }
  .jfy-post-actions .jfy-btn{ padding:10px 14px; border-radius:12px }
}

/* Extra padding για κινητά με gestures */
@supports (padding: max(0px)){
  .jfy-pagination{ padding-bottom: max(14px, env(safe-area-inset-bottom)); }
}

/* ===== Mobile filters: οριζόντια scroll pills ===== */
@media (max-width: 640px){
  /* Το wrapper των φίλτρων γίνεται οριζόντια μπάρα με scroll */
  .jfy-filters{
    display:flex;
    flex-wrap:nowrap;                 /* μία σειρά */
    overflow-x:auto;                  /* οριζόντιο scroll */
    -webkit-overflow-scrolling:touch; /* smooth σε iOS */
    gap:10px;
    padding:8px 4px;
    margin: 4px -8px 12px;            /* απλώνεται λίγο ως τα άκρα */
    scroll-snap-type:x mandatory;
  }
  /* κάθε κουμπί είναι “pill” με snap & σωστό μέγεθος για δάχτυλο */
  .jfy-filter-btn{
    flex:0 0 auto;                    /* να μην τεντώνει */
    scroll-snap-align:start;
    padding:10px 14px;                /* μεγαλύτερο tap area */
    border-radius:20px;
    font-size:14px;
    white-space:nowrap;               /* μην σπάει η λέξη */
  }
  /* μικρό fade στα άκρα (προαιρετικό αισθητικό) */
  .jfy-filters::before,
  .jfy-filters::after{
    content:"";
    position:sticky;
    top:0;
    width:10px;
    height:100%;
    pointer-events:none;
  }

    @media (max-width: 640px){
          .jfy-blog-header {
            margin-bottom: 10px; /* λίγο μικρότερο */
          }
          .jfy-blog-title {
            font-size: 20px;     /* μικρότερη γραμματοσειρά */
            margin: 0 0 4px;
          }
          .jfy-blog-desc {
            font-size: 14px;     /* προαιρετικά, κι αυτό πιο μικρό */
          }
    }

}/* End custom CSS */