/*
Theme Name:   AgrEconLab (Hello Elementor Child)
Theme URI:    https://agreconlab.agr.uth.gr
Description:  Child theme του Hello Elementor για το Εργαστήριο Αγροτικής Οικονομίας και Καταναλωτικής
              Συμπεριφοράς του Πανεπιστημίου Θεσσαλίας. Περιέχει ολόκληρο το design system της έκδοσης v2
              (mockup-home.html): tokens, cinematic hero slider, κάρτες, σκούρες ενότητες, footer.
              Όλες οι κλάσεις έχουν πρόθεμα .ael- και οι μεταβλητές --ael- ώστε να μη συγκρούονται με
              Elementor ή Hello Elementor.
Author:       AgrEconLab
Template:     hello-elementor
Version:      3.7.1
Text Domain:  hello-elementor-child
*/

/* ============================================================
   TOKENS — παλέτα v2 (CLAUDE.md §4)
   ============================================================ */
:root{
  --ael-deep:#10271A;
  --ael-deep-2:#173B26;
  --ael-paper:#FAF9F2;
  --ael-cream:#F1EEDF;
  --ael-green:#1F4D2E;
  --ael-growth:#9CC25A;
  --ael-gold:#C9A227;
  --ael-ink:#1D2B22;
  /* πιο σκούρο από το αρχικό #5E6C60 του mockup, για καλύτερη αναγνωσιμότητα σε λευκό φόντο */
  --ael-mute:#4A574C;
  --ael-fog:#BFD0BD;
  --ael-line:#E3E0CF;
  --ael-radius:16px;
  --ael-fd:'Manrope',sans-serif;
  --ael-fb:'Inter',sans-serif;
  --ael-fm:'JetBrains Mono',monospace;
}

/* ============================================================
   BASE
   ============================================================ */
html{scroll-behavior:smooth}
body{
  font-family:var(--ael-fb);
  color:var(--ael-ink);
  /* Λευκό φόντο στο site· η άμμος (--ael-paper) μένει μόνο μέσα στον slider
     και στις λωρίδες .ael-stats / .ael-alt που δίνουν τον ρυθμό. */
  background:#fff;
  line-height:1.65;
  font-size:16.5px;
  -webkit-font-smoothing:antialiased;
}
body img{max-width:100%;height:auto}
h1,h2,h3,h4{font-family:var(--ael-fd);letter-spacing:-.02em;line-height:1.12}

.ael-container{max-width:1180px;margin:0 auto;padding:0 24px}
.ael-section{padding:104px 0}
.ael-alt{background:var(--ael-cream)}
/* παράμετροι space="small|none" των shortcodes ενοτήτων */
.ael-space-s{padding:64px 0}
.ael-space-0{padding:0}
.ael-shead{max-width:640px;margin-bottom:56px}
.ael-shead p{color:var(--ael-mute);margin-top:14px}
.ael-grad{background:linear-gradient(92deg,#2E7042,var(--ael-gold));-webkit-background-clip:text;background-clip:text;color:transparent}
.ael-section h2,.ael-cta-band h2{font-size:clamp(1.9rem,3.4vw,2.7rem);font-weight:800}

.ael-eyebrow{
  font-family:var(--ael-fm);font-size:.74rem;letter-spacing:.18em;text-transform:uppercase;
  font-weight:500;display:flex;align-items:center;gap:10px;color:var(--ael-mute);
}
.ael-eyebrow::before{content:"";width:22px;height:2px;background:var(--ael-gold);display:inline-block;flex:none}

/* ============================================================
   ΤΥΠΟΓΡΑΦΙΑ ΠΕΡΙΕΧΟΜΕΝΟΥ
   Ισχύει για ό,τι γράφεται με τον επεξεργαστή: άρθρα, σελίδες και τα
   text-editor widgets του Elementor. Στόχος: κάθε νέα σελίδα ή άρθρο να
   βγαίνει σωστά στοιχισμένο χωρίς καμία ρύθμιση.
   Οι ενότητες .ael-* του design system έχουν δικούς τους κανόνες με
   μεγαλύτερη ειδικότητα, οπότε δεν επηρεάζονται.
   ============================================================ */
.page-content,
.entry-content,
.elementor-widget-text-editor{
  font-size:1.02rem;line-height:1.75;color:var(--ael-ink)}

/* Παράγραφοι: ένα καθαρό κενό μιας γραμμής, όχι το τεράστιο άλμα του παλιού θέματος. */
.page-content p,
.entry-content p,
.elementor-widget-text-editor p{margin:0 0 1.1em}
.page-content > *:last-child,
.entry-content > *:last-child,
.elementor-widget-text-editor p:last-child{margin-bottom:0}

/* Επικεφαλίδες μέσα σε κείμενο: αρκετό κενό από πάνω, λίγο από κάτω,
   ώστε να «ανήκουν» οπτικά στην παράγραφο που ακολουθεί. */
.page-content h2,.entry-content h2{font-size:clamp(1.5rem,2.6vw,2rem);font-weight:800;margin:2em 0 .6em}
.page-content h3,.entry-content h3{font-size:clamp(1.2rem,2vw,1.45rem);font-weight:700;margin:1.7em 0 .5em}
.page-content h4,.entry-content h4{font-size:1.08rem;font-weight:700;margin:1.5em 0 .5em}
.page-content h5,.entry-content h5,
.page-content h6,.entry-content h6{
  font-family:var(--ael-fm);font-size:.78rem;font-weight:500;letter-spacing:.1em;
  text-transform:uppercase;color:var(--ael-mute);margin:1.6em 0 .6em}
.page-content h2:first-child,.entry-content h2:first-child,
.page-content h3:first-child,.entry-content h3:first-child{margin-top:0}

/* Λίστες */
.page-content ul,.entry-content ul,.elementor-widget-text-editor ul,
.page-content ol,.entry-content ol,.elementor-widget-text-editor ol{
  margin:0 0 1.1em;padding-left:1.4em}
.page-content li,.entry-content li,.elementor-widget-text-editor li{margin-bottom:.4em}
.page-content li::marker,.entry-content li::marker{color:var(--ael-gold)}
.page-content li > ul,.entry-content li > ul{margin:.4em 0 0}

/* Παράθεση */
.page-content blockquote,.entry-content blockquote{
  margin:1.6em 0;padding:4px 0 4px 22px;border-left:3px solid var(--ael-gold);
  font-size:1.08rem;line-height:1.65;color:var(--ael-ink)}
.page-content blockquote p:last-child,.entry-content blockquote p:last-child{margin-bottom:0}

/* Εικόνες και λεζάντες */
.page-content figure,.entry-content figure{margin:1.8em 0}
.page-content img,.entry-content img{border-radius:var(--ael-radius)}
/* ΕΞΑΙΡΕΣΗ: τα ΛΟΓΟΤΥΠΑ δεν στρογγυλεύονται ποτέ — η ακτίνα 16px έκοβε τις γωνίες τους
   (RestPoll, GreenDriedFruits, ALLIANCE κ.ά.) και χανόταν πληροφορία. Τα wp-image-N είναι
   τα attachment IDs όλων των λογοτύπων έργων της ael_all_projects(). Οι κανόνες γράφονται
   ΜΕΤΑ τον γενικό ώστε να τον νικούν στην ισοπαλία ειδικότητας. */
img.wp-image-3858,img.wp-image-3553,img.wp-image-3662,img.wp-image-2863,img.wp-image-2739,
img.wp-image-2858,img.wp-image-161,img.wp-image-3152,img.wp-image-2856,img.wp-image-3583,
img.wp-image-3588,img.wp-image-2908,img.wp-image-3594,img.wp-image-1247,img.wp-image-3592{border-radius:0}
.page-content figcaption,.entry-content figcaption{
  font-family:var(--ael-fm);font-size:.76rem;color:var(--ael-mute);margin-top:10px;text-align:center}

/* Πίνακες — με οριζόντια κύλιση σε στενές οθόνες αντί να σπάει η σελίδα */
.page-content table,.entry-content table{
  width:100%;border-collapse:collapse;margin:1.6em 0;font-size:.95rem;display:block;overflow-x:auto}
.page-content th,.entry-content th{
  text-align:left;font-family:var(--ael-fm);font-size:.74rem;letter-spacing:.08em;text-transform:uppercase;
  color:var(--ael-mute);border-bottom:2px solid var(--ael-line);padding:10px 14px 10px 0}
.page-content td,.entry-content td{border-bottom:1px solid var(--ael-line);padding:10px 14px 10px 0;vertical-align:top}

/* Διαχωριστικό και κώδικας */
.page-content hr,.entry-content hr{border:0;border-top:1px solid var(--ael-line);margin:2.4em 0}
.page-content code,.entry-content code{
  font-family:var(--ael-fm);font-size:.88em;background:var(--ael-cream);
  padding:2px 6px;border-radius:6px}

/* Ο τίτλος και η ημερομηνία των άρθρων */
.page-header .entry-title{font-size:clamp(1.9rem,3.6vw,2.7rem);font-weight:800;margin:0 0 10px}

/* ============================================================
   BUTTONS
   ============================================================ */
.ael-btn{
  display:inline-flex;align-items:center;gap:9px;font-family:var(--ael-fd);font-weight:700;
  font-size:.95rem;padding:14px 26px;border-radius:12px;text-decoration:none;border:0;cursor:pointer;
  transition:transform .22s ease,box-shadow .22s ease,background .22s ease;
}
.ael-btn:hover{transform:translateY(-2px)}
.ael-btn:focus-visible{outline:3px solid var(--ael-gold);outline-offset:2px}
/* Διπλή κλάση (.ael-btn.ael-btn-*) ΣΚΟΠΙΜΑ: δίνει ειδικότητα (0,2,0) ώστε το χρώμα
   του κειμένου των κουμπιών να νικά κανόνες συνδέσμων-γονέων όπως το .ael-cat > a
   (0,1,1), που έβαφε πράσινο το κείμενο πάνω στο πράσινο φόντο (σελίδα Research). */
.ael-btn.ael-btn-green{background:var(--ael-green);color:#fff}
/* Hover: χρυσό με σκούρο κείμενο — ίδια συμπεριφορά με τα κουμπιά Elementor (§κανόνας παλέτας). */
.ael-btn.ael-btn-green:hover,.ael-btn.ael-btn-green:focus{background:var(--ael-gold);color:#15302B;
  box-shadow:0 10px 24px rgba(201,162,39,.3)}
.ael-btn.ael-btn-outline{background:rgba(250,249,242,.6);color:var(--ael-green);border:1.5px solid rgba(31,77,46,.45)}
.ael-btn.ael-btn-outline:hover{background:rgba(31,77,46,.07)}
.ael-btn.ael-btn-growth{background:var(--ael-growth);color:#15302B}
.ael-btn.ael-btn-growth:hover{box-shadow:0 10px 28px rgba(156,194,90,.35);color:#15302B}

/* ============================================================
   HEADER
   ============================================================ */
.ael-hdr{position:fixed;inset:0 0 auto 0;z-index:500;transition:background .3s ease,box-shadow .3s ease,padding .3s ease;padding:16px 0}
.ael-hdr.ael-scrolled{
  background:rgba(250,249,242,.86);
  backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);
  box-shadow:0 1px 0 var(--ael-line),0 8px 30px rgba(29,43,34,.06);
  padding:10px 0;
}
/* Σταθερό ύψος περιεχομένου (44px) ώστε το ύψος του header να είναι προβλέψιμο:
   76px στην κορυφή, 64px μετά το scroll. Το χρειάζεται ο κανόνας padding-top παρακάτω. */
.ael-hdr .ael-container{display:flex;align-items:center;gap:28px;min-height:44px}
.ael-brand{display:flex;align-items:center;text-decoration:none}
.ael-brand img{height:40px;width:auto;display:block}
.ael-nav{display:flex;gap:24px;margin-left:auto}
.ael-nav ul{display:flex;gap:24px;list-style:none;margin:0;padding:0;align-items:center}
.ael-nav li{position:relative;margin:0}
.ael-nav a{color:var(--ael-ink);text-decoration:none;font-size:.92rem;font-weight:500;display:block}
.ael-nav a:hover{color:var(--ael-green);text-decoration:underline;text-underline-offset:5px;text-decoration-color:var(--ael-gold)}
.ael-nav .current-menu-item > a,.ael-nav .current_page_item > a{color:var(--ael-green)}
/* dropdowns */
.ael-nav ul ul{
  display:block;position:absolute;top:100%;left:-16px;min-width:230px;background:var(--ael-paper);
  border:1px solid var(--ael-line);border-radius:12px;box-shadow:0 18px 40px rgba(29,43,34,.12);
  padding:10px 0;opacity:0;visibility:hidden;transform:translateY(8px);
  transition:opacity .2s ease,transform .2s ease,visibility .2s;
}
.ael-nav li:hover > ul,.ael-nav li:focus-within > ul{opacity:1;visibility:visible;transform:none}
.ael-nav ul ul li{width:100%}
.ael-nav ul ul a{padding:8px 20px;font-size:.88rem}
.ael-nav ul ul ul{top:0;left:100%}
/* Το μενού περιέχει ήδη στοιχείο εναλλαγής γλώσσας του Polylang με σημαιάκια.
   Ο εναλλάκτης του design είναι το .ael-lang δεξιά, οπότε κρύβουμε το διπλό.
   Αν θέλεις το αντίθετο, σβήσε αυτόν τον κανόνα και το ael_language_switcher() από το header.php. */
.ael-nav .pll-parent-menu-item,.ael-nav .lang-item{display:none}

.ael-hdr-actions{display:flex;align-items:center;gap:14px}
/* Έντονο και λίγο μεγαλύτερο, γιατί στο προηγούμενο μέγεθος περνούσε απαρατήρητο. */
.ael-lang{font-family:var(--ael-fm);font-size:.78rem;font-weight:700;letter-spacing:.06em;
  color:var(--ael-green);border:1.5px solid var(--ael-line);background:#fff;border-radius:999px;
  padding:6px 14px;text-decoration:none;transition:border-color .18s ease,color .18s ease,background-color .18s ease}
.ael-lang:hover{border-color:var(--ael-gold);color:var(--ael-green);background:var(--ael-cream)}
.ael-lang:focus-visible{outline:3px solid var(--ael-gold);outline-offset:2px}
.ael-hdr .ael-btn{padding:10px 18px;font-size:.86rem}
.ael-burger{display:none;background:none;border:0;cursor:pointer;width:34px;height:30px;position:relative}
/* ίδιος λόγος με τα βελάκια: το Hello βάφει τα buttons #c36 σε hover/focus */
.ael-burger:hover,.ael-burger:focus{background:none;outline:none}
.ael-burger:focus-visible{outline:3px solid var(--ael-gold);outline-offset:2px}
.ael-burger span{position:absolute;left:4px;right:4px;height:2px;background:var(--ael-ink);border-radius:2px}
.ael-burger span:nth-child(1){top:7px}
.ael-burger span:nth-child(2){top:14px}
.ael-burger span:nth-child(3){top:21px}
/* Σε σελίδα χωρίς hero δεν υπάρχει σκηνικό πίσω από το header, οπότε το διαφανές header
   δεν εξυπηρετεί σε τίποτα: του δίνουμε αμέσως το «γεμάτο» look, όπως μετά το scroll. */
body:not(.ael-has-hero) .ael-hdr{
  background:rgba(250,249,242,.92);
  backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);
  box-shadow:0 1px 0 var(--ael-line);
}
/* Το σώμα ξεκινά ΑΚΡΙΒΩΣ κάτω από το header (76px), όχι 96px.
   Τα επιπλέον 20px ήταν λευκά και φαίνονταν ως άσπρη λωρίδα πάνω από την πρώτη ενότητα. */
body:not(.ael-has-hero) .site-main,body:not(.ael-has-hero) .ael-page-body{padding-top:76px}

/* Ανάσα ανάμεσα στο header και τον τίτλο της σελίδας.
   ΠΡΟΣΟΧΗ στο γιατί μπαίνει ΜΕΣΑ στην πρώτη ενότητα και όχι πάνω της: αν μπει από πάνω,
   το κενό παίρνει το χρώμα του σώματος (λευκό) και ξαναεμφανίζεται η άσπρη λωρίδα σε
   σελίδες που η πρώτη τους ενότητα έχει φόντο (π.χ. Συνεργασία, κρεμ). Έτσι το κενό
   ανήκει στην ενότητα και βάφεται μαζί της.
   Όπου το Elementor έχει δικό του padding (Συνεργασία, Ομάδα, σελίδες έργων), εκείνο
   υπερισχύει γιατί γράφεται με μεγαλύτερη ειδικότητα στο post-<id>.css. */
body:not(.ael-has-hero) .page-content > .elementor > .elementor-section:first-child,
body:not(.ael-has-hero) .page-content > .elementor > .e-con:first-child{padding-top:64px}

/* ============================================================
   ΑΝΑΣΑ ΠΑΝΩ ΑΠΟ ΤΟ FOOTER
   Το .site-main έχει padding-top:76px αλλά ΚΑΝΕΝΑ padding-bottom, οπότε η
   τελευταία ενότητα κολλούσε στο σκούρο footer (133 σελίδες και άρθρα).
   ΠΡΟΣΟΧΗ γιατί μπαίνει ΜΕΣΑ στην τελευταία ενότητα και όχι στο .site-main:
   στο .site-main το κενό θα ήταν πάντα λευκό — θα έσπαγε τη λευκή γραμμή των
   7px κάτω από το CTA band και θα έκοβε το κρεμ φόντο σε Contact/Συνεργασία.
   Το :not(:has(.ael-dark)) εξαιρεί τις 8 σελίδες που τελειώνουν με το CTA band.
   Η τρίτη γραμμή καλύπτει τα άρθρα που ΔΕΝ είναι χτισμένα με Elementor.
   ΜΗΝ απλοποιήσεις τον selector: το post-<id>.css φορτώνει ΜΕΤΑ το style.css,
   άρα χρειάζεται ειδικότητα (0,5,0) > (0,3,0) του Elementor — αλλιώς οι σελίδες
   με ρητό padding:0 (π.χ. Research Projects) θα έμεναν κολλημένες.
   ============================================================ */
.page-content > .elementor > .elementor-section:last-child:not(:has(.ael-dark)),
.page-content > .elementor > .e-con:last-child:not(:has(.ael-dark)),
.page-content:not(:has(> .elementor)){padding-bottom:96px}

/* ============================================================
   HERO SLIDER
   ============================================================ */
.ael-hero{position:relative;height:84vh;min-height:580px;overflow:hidden;background:var(--ael-paper)}
.ael-slide{position:absolute;inset:0;opacity:0;visibility:hidden;transition:opacity 1s ease,visibility 1s}
.ael-slide.ael-active{opacity:1;visibility:visible;z-index:2}
.ael-scene{position:absolute;inset:0;transform:scale(1.06);pointer-events:none}
.ael-slide.ael-active .ael-scene{transform:scale(1);transition:transform 8s linear}
.ael-veil{position:absolute;inset:0;pointer-events:none;
  background:linear-gradient(90deg,rgba(250,249,242,.94) 18%,rgba(250,249,242,.55) 48%,rgba(250,249,242,0) 75%)}
.ael-slide-inner{position:relative;z-index:3;height:100%;display:flex;flex-direction:column;justify-content:center;padding-bottom:90px}
.ael-slide-inner .ael-box{max-width:640px}
.ael-slide h1{font-size:clamp(2.5rem,5.2vw,4.05rem);font-weight:800;margin:22px 0 18px}
.ael-slide p.ael-lead{color:var(--ael-mute);font-size:1.08rem;max-width:540px}
.ael-ctas{display:flex;gap:14px;margin-top:32px;flex-wrap:wrap}
.ael-t{opacity:0}
.ael-slide.ael-active .ael-t{animation:ael-tIn .75s cubic-bezier(.2,.7,.3,1) both}
.ael-slide.ael-active .ael-t:nth-child(1){animation-delay:.15s}
.ael-slide.ael-active .ael-t:nth-child(2){animation-delay:.3s}
.ael-slide.ael-active .ael-t:nth-child(3){animation-delay:.45s}
.ael-slide.ael-active .ael-t:nth-child(4){animation-delay:.6s}
@keyframes ael-tIn{from{opacity:0;transform:translateY(26px)}to{opacity:1;transform:none}}

/* slide 1 — θεσσαλικό τοπίο την αυγή */
.ael-s1{background:linear-gradient(180deg,var(--ael-paper) 0%,#F6ECD2 80%)}
/* μικρός ήλιος πάνω δεξιά, ίδιο μέγεθος και θέση με του slide 3 */
.ael-s1 .ael-sun{position:absolute;right:-140px;top:-160px;width:620px;height:620px;border-radius:50%;
  background:radial-gradient(closest-side,rgba(210,169,59,.30),rgba(210,169,59,0) 72%)}
.ael-hill{position:absolute;left:-4%;bottom:0;width:108%}
.ael-hill svg{display:block;width:100%;height:auto}
.ael-h1l{bottom:120px;opacity:.85;animation:ael-drift 80s ease-in-out infinite alternate}
.ael-h2l{bottom:56px;animation:ael-drift 64s ease-in-out infinite alternate-reverse}
.ael-h3l{bottom:-4px;animation:ael-drift 48s ease-in-out infinite alternate}
@keyframes ael-drift{from{transform:translateX(0)}to{transform:translateX(-2.2%)}}

/* slide 2 — αποτύπωμα των έργων στον χάρτη */
.ael-s2{background-color:var(--ael-paper);
  background-image:linear-gradient(#E9EFE6 1px,transparent 1px),linear-gradient(90deg,#E9EFE6 1px,transparent 1px);
  background-size:34px 34px}

/* Τα σκηνικά μένουν κρυφά μέχρι το ael.js να ξεκινήσει τα animations από την αρχή.
   Έτσι το διάγραμμα DEA δεν σχεδιάζεται δύο φορές (μια πρόωρη κατά τη φόρτωση και μια
   μετά την επανεκκίνηση). Τα κείμενα και τα κουμπιά φαίνονται κανονικά από την πρώτη στιγμή.
   Δίχτυ ασφαλείας: αν δεν τρέξει καθόλου JavaScript, το σκηνικό εμφανίζεται μετά από 2,5s. */
.ael-hero.ael-booting .ael-scene{opacity:0;animation:ael-scene-fallback .4s 2.5s forwards}
@keyframes ael-scene-fallback{to{opacity:1}}

/* ---- κοινά εργαλεία σκηνικών ---- */
.ael-chartwrap{position:absolute;right:4%;top:48%;transform:translateY(-52%);width:min(46vw,620px)}
.ael-mapwrap{position:absolute;right:5%;top:50%;transform:translateY(-54%);width:min(40vw,540px)}
/* κεντραρισμένο κάθετα, όπως το διάγραμμα DEA */
.ael-netwrap{position:absolute;right:4%;top:46%;transform:translateY(-50%);width:min(40vw,540px)}
.ael-mapwrap svg,.ael-netwrap svg{display:block;width:100%;height:auto}
/* οι ετικέτες του δικτύου σε μονάδες του viewBox, ώστε να μένουν ευανάγνωστες σε κάθε μέγεθος */
.ael-netwrap .ael-axis{font-size:13px}

/* γραμμές που σχεδιάζονται μόνες τους */
.ael-line{stroke-dasharray:640;stroke-dashoffset:640}
.ael-slide.ael-active .ael-line{animation:ael-draw 1.9s var(--ael-ld,.5s) ease-out forwards}
/* δακτύλιοι/σχήματα που ξεθωριάζουν μέσα */
.ael-ring{opacity:0}
.ael-slide.ael-active .ael-ring{animation:ael-fadein .9s var(--ael-rd,.3s) forwards}
/* απαλός παλμός στον κόμβο-κέντρο */
.ael-pulse{transform-box:fill-box;transform-origin:center;animation:ael-pulse 3.4s ease-in-out infinite}
@keyframes ael-pulse{0%,100%{opacity:.16;transform:scale(1)}50%{opacity:.34;transform:scale(1.1)}}
.ael-chartwrap svg{display:block;width:100%;height:auto}
.ael-axis{font-family:var(--ael-fm);font-size:.62rem;fill:var(--ael-mute);letter-spacing:.08em}
.ael-frontier{stroke-dasharray:920;stroke-dashoffset:920}
.ael-slide.ael-active .ael-frontier{animation:ael-draw 2.4s .5s ease-out forwards}
@keyframes ael-draw{to{stroke-dashoffset:0}}
.ael-area{opacity:0}
.ael-slide.ael-active .ael-area{animation:ael-fadein 1s 1.7s forwards}
@keyframes ael-fadein{to{opacity:1}}
.ael-pt{opacity:0;transform-origin:center}
.ael-slide.ael-active .ael-pt{animation:ael-pop .5s var(--ael-pd,1.8s) forwards}
@keyframes ael-pop{from{opacity:0;transform:scale(.3)}to{opacity:1;transform:scale(1)}}
.ael-tip{position:absolute;font-family:var(--ael-fm);font-size:.7rem;background:rgba(16,39,26,.86);color:#EAF4EC;
  border:1px solid rgba(255,255,255,.16);border-radius:10px;padding:8px 13px;box-shadow:0 12px 28px rgba(16,39,26,.3);opacity:0}
.ael-slide.ael-active .ael-tip{animation:ael-fadein .6s 3s forwards}
.ael-tip b{color:var(--ael-growth);font-weight:500}
.ael-tip-1{top:6%;right:8%}

/* slide 3 — χρυσά στάχυα + δίκτυο συνεργασίας (χωρίς ήλιο: τη θέση του παίρνει το δίκτυο) */
.ael-s3{background:linear-gradient(180deg,var(--ael-paper),var(--ael-cream))}
.ael-field{position:absolute;left:0;right:0;bottom:0;height:34%;min-height:190px}
.ael-stalkw{position:absolute;bottom:-6px;width:84px;transform-origin:50% 100%;
  animation:ael-sway var(--ael-sd,6s) ease-in-out var(--ael-swd,0s) infinite alternate}
@keyframes ael-sway{from{transform:rotate(-2.6deg) scaleY(var(--ael-sc,1))}to{transform:rotate(2.6deg) scaleY(var(--ael-sc,1))}}
.ael-stalkw svg{display:block;width:100%;height:auto;overflow:visible}
.ael-stem{stroke-dasharray:360;stroke-dashoffset:360}
.ael-slide.ael-active .ael-stem{animation:ael-growup 1.5s var(--ael-d,0s) ease-out forwards}
@keyframes ael-growup{to{stroke-dashoffset:0}}
.ael-grain{opacity:0}
.ael-slide.ael-active .ael-grain{animation:ael-gfade .7s calc(var(--ael-d,0s) + .9s) ease-out forwards}
@keyframes ael-gfade{to{opacity:1}}
.ael-c-gold{color:var(--ael-gold)}
.ael-c-gold2{color:#DDBE54}
.ael-c-olive{color:#7E9A4F}
.ael-c-green{color:var(--ael-growth)}

/* slider UI */
.ael-hero-ui{position:absolute;left:0;right:0;bottom:34px;z-index:5}
.ael-hero-ui .ael-container{display:flex;align-items:center;gap:22px}
.ael-arr{
  width:46px;height:46px;border-radius:50%;border:1.5px solid rgba(31,77,46,.35);
  background:rgba(250,249,242,.7);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);
  color:var(--ael-green);cursor:pointer;
  /* flex + μηδενικό padding = το βελάκι κεντράρεται ακριβώς μέσα στον κύκλο */
  display:inline-flex;align-items:center;justify-content:center;padding:0;line-height:0;
  transition:background .2s ease,color .2s ease,border-color .2s ease,transform .2s ease;
}
.ael-arr svg{display:block}
/* ΣΗΜΑΝΤΙΚΟ: το reset.css του Hello Elementor βάφει ΚΑΘΕ <button> με #c36 (φούξια) σε :hover ΚΑΙ σε :focus.
   Το :focus παραμένει μετά το κλικ, γι' αυτό το χρώμα «κολλούσε». Επαναφέρουμε ρητά την κανονική όψη. */
.ael-arr:focus{background:rgba(250,249,242,.7);border-color:rgba(31,77,46,.35);color:var(--ael-green);outline:none}
.ael-arr:hover,.ael-arr:focus:hover{background:var(--ael-gold);border-color:var(--ael-gold);color:#fff;transform:translateY(-2px)}
/* πράσινο όσο κρατιέται πατημένο, και σβήνει μόλις αφεθεί */
.ael-arr:active,.ael-arr:focus:active{background:var(--ael-green);border-color:var(--ael-green);color:#fff;transform:translateY(0)}
/* δακτύλιος μόνο για πλοήγηση με πληκτρολόγιο */
.ael-arr:focus-visible{outline:3px solid var(--ael-gold);outline-offset:2px}
/* απενεργοποιημένο (άκρη του slider έργων) */
.ael-arr:disabled,.ael-arr:disabled:hover,.ael-arr:disabled:focus{
  opacity:.32;cursor:default;transform:none;
  background:rgba(250,249,242,.55);border-color:rgba(31,77,46,.2);color:var(--ael-green);
}
.ael-dots{display:flex;gap:10px}
.ael-dot{width:30px;height:4px;border-radius:2px;background:rgba(31,77,46,.22);border:0;cursor:pointer;padding:0;transition:background .25s}
/* ίδιος λόγος με τα βελάκια: εξουδετέρωση του #c36 του Hello σε hover/focus */
.ael-dot:hover,.ael-dot:focus{background:rgba(31,77,46,.5);outline:none}
.ael-dot:focus-visible{outline:2px solid var(--ael-gold);outline-offset:4px}
.ael-dot.ael-on,.ael-dot.ael-on:hover,.ael-dot.ael-on:focus{background:var(--ael-green)}
/* κουμπί παύσης/αναπαραγωγής, ανάμεσα στα δύο βελάκια */
.ael-play{
  width:46px;height:46px;border-radius:50%;border:1.5px solid rgba(31,77,46,.35);
  background:rgba(250,249,242,.7);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);
  color:var(--ael-green);cursor:pointer;
  display:inline-flex;align-items:center;justify-content:center;padding:0;line-height:0;
  transition:background .2s ease,color .2s ease,border-color .2s ease,transform .2s ease;
}
.ael-play svg{display:block}
.ael-play:focus{background:rgba(250,249,242,.7);border-color:rgba(31,77,46,.35);color:var(--ael-green);outline:none}
.ael-play:hover,.ael-play:focus:hover{background:var(--ael-gold);border-color:var(--ael-gold);color:#fff;transform:translateY(-2px)}
.ael-play:active,.ael-play:focus:active{background:var(--ael-green);border-color:var(--ael-green);color:#fff;transform:translateY(0)}
.ael-play:focus-visible{outline:3px solid var(--ael-gold);outline-offset:2px}
/* σε παύση δείχνει το τρίγωνο, αλλιώς τις δύο κάθετες γραμμές */
.ael-play .ael-ico-play{display:none}
.ael-play.ael-paused .ael-ico-play{display:block}
.ael-play.ael-paused .ael-ico-pause{display:none}

.ael-counter{margin-left:auto;display:flex;align-items:center;gap:12px;font-family:var(--ael-fm);font-size:.72rem;color:var(--ael-mute)}
.ael-bar{width:120px;height:3px;background:rgba(31,77,46,.18);border-radius:2px;overflow:hidden}
.ael-bar i{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--ael-growth),var(--ael-gold))}
.ael-playing .ael-bar i{animation:ael-fill var(--ael-dur,7s) linear forwards}
@keyframes ael-fill{to{width:100%}}
.ael-hero.ael-hovered .ael-bar i{animation-play-state:paused}

/* ============================================================
   STATS BAND
   ============================================================ */
/* Κάθεται μέσα στη λευκή ενότητα «Τι κάνουμε», με λεπτές γραμμές πάνω και κάτω,
   όπως στην προηγούμενη αρχική του εργαστηρίου. */
.ael-stats{background:#fff;padding:52px 0;border-top:1px solid var(--ael-line);border-bottom:1px solid var(--ael-line)}
.ael-stats .ael-container{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.ael-stats.ael-stats-5 .ael-container{grid-template-columns:repeat(5,1fr)}
.ael-stats.ael-alt{background:var(--ael-cream)}
.ael-stat{text-align:center}
.ael-stat .ael-num{font-family:var(--ael-fm);font-weight:500;font-size:clamp(1.9rem,3.4vw,2.6rem);color:var(--ael-gold)}
.ael-stat .ael-lbl{color:var(--ael-mute);font-size:.88rem;margin-top:4px}

/* ============================================================
   CARDS — WHAT WE DO
   ============================================================ */
.ael-cards-4{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}
.ael-card{background:#fff;border:1px solid var(--ael-line);border-radius:var(--ael-radius);padding:30px 26px;
  position:relative;overflow:hidden;transition:transform .25s ease,box-shadow .25s ease}
.ael-card::before{content:"";position:absolute;top:0;left:0;height:3px;width:0;
  background:linear-gradient(90deg,var(--ael-growth),var(--ael-gold));transition:width .35s ease}
.ael-card:hover{transform:translateY(-6px);box-shadow:0 22px 48px rgba(31,77,46,.13)}
.ael-card:hover::before{width:100%}
.ael-card .ael-ico{width:46px;height:46px;border-radius:12px;background:var(--ael-cream);color:var(--ael-green);
  display:grid;place-items:center;margin-bottom:18px}
.ael-card h3{font-size:1.12rem;font-weight:800;margin-bottom:10px}
.ael-card p{font-size:.93rem;color:var(--ael-mute)}

/* ============================================================
   PROJECTS
   ============================================================ */
.ael-proj-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.ael-proj{background:#fff;border:1px solid var(--ael-line);border-radius:var(--ael-radius);padding:28px;
  display:flex;flex-direction:column;gap:14px;transition:transform .25s ease,box-shadow .25s ease}
.ael-proj:hover{transform:translateY(-6px);box-shadow:0 22px 48px rgba(31,77,46,.13)}
.ael-proj-top{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap}
.ael-badge{font-family:var(--ael-fm);font-size:.66rem;letter-spacing:.1em;text-transform:uppercase;border-radius:999px;
  padding:5px 12px;border:1px solid var(--ael-gold);color:var(--ael-green);background:var(--ael-cream)}
.ael-status{font-family:var(--ael-fm);font-size:.66rem;letter-spacing:.06em;display:flex;align-items:center;gap:6px;color:var(--ael-mute)}
.ael-status .ael-dot2{width:7px;height:7px;border-radius:50%;background:var(--ael-growth)}
.ael-status.ael-done .ael-dot2{background:#B9B4A0}
.ael-proj h3{font-family:var(--ael-fd);font-weight:800;font-size:1.5rem;letter-spacing:-.01em}
.ael-proj .ael-yrs{font-family:var(--ael-fm);font-size:.72rem;color:var(--ael-mute)}
.ael-proj p{font-size:.92rem;color:var(--ael-mute);flex:1}
.ael-proj a{font-weight:600;font-size:.9rem;color:var(--ael-green);text-decoration:none}
.ael-proj a:hover{color:var(--ael-gold)}
.ael-center-cta{text-align:center;margin-top:46px}

/* λογότυπο έργου μέσα στην κάρτα */
.ael-proj-logo{height:52px;display:flex;align-items:center}
.ael-proj-logo img{max-height:52px;width:auto;object-fit:contain;border-radius:0}
.ael-proj .ael-fund{font-family:var(--ael-fm);font-size:.68rem;color:var(--ael-mute);letter-spacing:.02em;line-height:1.7}

/* ---- slider έργων: native scroll-snap, χωρίς πρόσθετο ---- */
.ael-pslider{position:relative}
.ael-pslider-track{
  display:grid;grid-auto-flow:column;
  grid-auto-columns:calc((100% - 44px) / 3);
  gap:22px;overflow-x:auto;scroll-snap-type:x mandatory;
  scroll-behavior:smooth;padding-bottom:6px;
  scrollbar-width:none;-ms-overflow-style:none;
}
.ael-pslider-track::-webkit-scrollbar{display:none}
.ael-pslider-track > *{scroll-snap-align:start}
.ael-pslider-ui{display:flex;align-items:center;gap:12px;margin-top:26px;justify-content:center}
.ael-pslider-count{font-family:var(--ael-fm);font-size:.72rem;color:var(--ael-mute);min-width:64px;text-align:center}

/* ============================================================
   WHO WE WORK WITH — σκούρη ενότητα
   ============================================================ */
.ael-dark{background:linear-gradient(160deg,var(--ael-deep) 30%,var(--ael-deep-2));color:#fff}
.ael-dark h2,.ael-dark h3{color:#fff}
.ael-dark .ael-shead p{color:var(--ael-fog)}
.ael-dark .ael-eyebrow{color:var(--ael-fog)}
/* οι λευκές κάρτες κρατούν τα δικά τους χρώματα ακόμη κι όταν η ενότητα είναι σκούρα */
.ael-dark .ael-card h3{color:var(--ael-ink)}
.ael-dark .ael-card p{color:var(--ael-mute)}
.ael-cols-4{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
/* διάφανο «τζάμι», λίγο πιο ανοιχτό προς το λευκό απ' ό,τι το mockup (.05 -> .12), με λευκά γράμματα */
.ael-glass{background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.2);border-radius:var(--ael-radius);
  padding:28px 24px;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}
.ael-glass h3{font-size:1.05rem;font-weight:800;margin-bottom:10px;color:#fff}
.ael-dark .ael-glass h3{color:#fff}
.ael-glass p{font-size:.92rem;color:rgba(255,255,255,.92)}

/* ============================================================
   TEAM
   ============================================================ */
.ael-team-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:18px}
.ael-member{text-align:center}
.ael-member a{text-decoration:none;color:inherit;display:block}
.ael-avatar{width:100%;aspect-ratio:1;border-radius:50%;display:grid;place-items:center;overflow:hidden;
  font-family:var(--ael-fd);font-weight:800;font-size:1.5rem;color:#fff;
  background:linear-gradient(145deg,var(--ael-green),var(--ael-deep-2));
  border:3px solid transparent;transition:border-color .25s ease,transform .25s ease}
.ael-avatar img{width:100%;height:100%;object-fit:cover;border-radius:50%;display:block}
.ael-member:hover .ael-avatar{border-color:var(--ael-gold);transform:translateY(-4px)}
.ael-member b{display:block;font-size:.84rem;margin-top:12px;font-family:var(--ael-fd)}
.ael-member span{font-family:var(--ael-fm);font-size:.62rem;letter-spacing:.08em;text-transform:uppercase;color:var(--ael-mute)}

/* ============================================================
   NEWS
   ============================================================ */
.ael-news-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.ael-news-card{background:#fff;border:1px solid var(--ael-line);border-radius:var(--ael-radius);padding:28px;
  transition:transform .25s ease,box-shadow .25s ease}
.ael-news-card:hover{transform:translateY(-6px);box-shadow:0 22px 48px rgba(31,77,46,.13)}
.ael-news-card time{font-family:var(--ael-fm);font-size:.72rem;color:var(--ael-gold)}
.ael-news-card h3{font-size:1.05rem;font-weight:700;margin:12px 0 14px;line-height:1.4}
.ael-news-card a{font-weight:600;font-size:.88rem;color:var(--ael-green);text-decoration:none}
.ael-news-card a:hover{color:var(--ael-gold)}

/* Παραλλαγή με κύρια εικόνα — χρησιμοποιείται στο αρχείο άρθρων (template-parts/archive.php).
   Η εικόνα πατάει στις άκρες της κάρτας, οπότε το padding μεταφέρεται στο περιεχόμενο. */
.ael-news-card.ael-has-img{padding:0;display:flex;flex-direction:column;overflow:hidden}
.ael-news-card .ael-news-thumb{display:block;aspect-ratio:16/9;overflow:hidden;background:var(--ael-cream)}
.ael-news-card .ael-news-thumb img{width:100%;height:100%;object-fit:cover;display:block;
  transition:transform .5s ease}
.ael-news-card.ael-has-img:hover .ael-news-thumb img{transform:scale(1.05)}
.ael-news-card.ael-has-img > .ael-news-meta{padding:24px 26px 0}
.ael-news-card.ael-has-img > h3{padding:0 26px}
.ael-news-card.ael-has-img > .ael-news-ex{padding:0 26px}
.ael-news-card.ael-has-img > a:last-child{padding:0 26px 26px;margin-top:auto}
.ael-news-ex{color:var(--ael-mute);font-size:.92rem;line-height:1.6;margin:0 0 16px}

/* Σελιδοποίηση αρχείου */
.ael-page-body .pagination,
nav.navigation.pagination,
.page-numbers{list-style:none}
ul.page-numbers{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;
  list-style:none;margin:56px 0 0;padding:0}
ul.page-numbers li{margin:0}
.page-numbers{display:inline-flex;align-items:center;justify-content:center;min-width:42px;height:42px;
  padding:0 14px;border:1px solid var(--ael-line);border-radius:12px;background:#fff;
  font-family:var(--ael-fm);font-size:.8rem;color:var(--ael-ink);text-decoration:none;
  transition:border-color .18s ease,color .18s ease,background-color .18s ease}
a.page-numbers:hover{border-color:var(--ael-gold);color:var(--ael-green)}
.page-numbers.current{background:var(--ael-green);border-color:var(--ael-green);color:#fff}
.page-numbers.dots{border-color:transparent;background:none}

/* Σελιδοποίηση και ΠΑΝΩ από τις κάρτες: όποιος δεν κατέβει ως το τέλος, ξέρει ότι υπάρχουν κι άλλα. */
.ael-pagination{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:14px}
.ael-pagination-top{margin-bottom:34px;padding-bottom:22px;border-bottom:1px solid var(--ael-line)}
.ael-pagination-bottom{margin-top:56px;padding-top:22px;border-top:1px solid var(--ael-line)}
.ael-pagination ul.page-numbers{margin:0;justify-content:flex-end}
.ael-pagination-summary{font-family:var(--ael-fm);font-size:.76rem;color:var(--ael-mute);letter-spacing:.04em;margin:0}
@media (max-width:640px){
  .ael-pagination{justify-content:center}
  .ael-pagination ul.page-numbers{justify-content:center}
}

/* Σχετικά άρθρα στο τέλος κάθε άρθρου (template-parts/single.php) */
.ael-related{background:var(--ael-cream);border-top:1px solid var(--ael-line);padding:80px 0 96px}
.ael-related .ael-shead{margin-bottom:36px}
.ael-related h2{font-size:clamp(1.5rem,2.6vw,2rem);font-weight:800}
@media (max-width:640px){
  .ael-related{padding:56px 0 64px}
}

/* ============================================================
   ΚΑΤΗΓΟΡΙΕΣ ΕΡΓΩΝ (κόμβος «Ερευνητικά Έργα»)
   ============================================================ */
.ael-catgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.ael-cat{position:relative;background:#fff;border:1px solid var(--ael-line);
  border-radius:var(--ael-radius);padding:34px 30px 30px;display:flex;flex-direction:column;
  transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease}
/* Η μπάρα «φορτώνει» από αριστερά προς τα δεξιά στο hover — ίδιο εφέ με τις κάρτες
   «What we do» της αρχικής (απόφαση χρήστη, 27/8/2026). */
.ael-cat::before{content:"";position:absolute;top:0;left:0;height:3px;width:0;border-radius:16px 16px 0 0;
  background:linear-gradient(90deg,#2E7042,var(--ael-gold));transition:width .35s ease}
.ael-cat:hover{transform:translateY(-6px);box-shadow:0 22px 48px rgba(31,77,46,.13);border-color:transparent}
.ael-cat:hover::before{width:100%}
.ael-cat .ael-badge{align-self:flex-start}
.ael-cat-n{font-family:var(--ael-fm);font-size:2.6rem;font-weight:500;color:var(--ael-gold);
  line-height:1;margin:20px 0 6px;display:block}
.ael-cat h3{font-size:1.18rem;font-weight:700;line-height:1.35;margin:8px 0 12px}
.ael-cat p{color:var(--ael-mute);font-size:.95rem;line-height:1.65;margin:0 0 22px}
.ael-cat > a{margin-top:auto;font-weight:600;font-size:.9rem;color:var(--ael-green);text-decoration:none}
.ael-cat > a:hover{color:var(--ael-gold)}

/* ============================================================
   PARTNERS MARQUEE
   ============================================================ */
.ael-marquee{overflow:hidden;border-top:1px solid var(--ael-line);border-bottom:1px solid var(--ael-line);padding:30px 0;background:#fff}
.ael-marquee-track{display:flex;gap:72px;width:max-content;align-items:center;animation:ael-roll 28s linear infinite}
.ael-marquee:hover .ael-marquee-track{animation-play-state:paused}
.ael-marquee img{height:52px;width:auto;filter:grayscale(1);opacity:.75;transition:filter .25s ease,opacity .25s ease;border-radius:0}
.ael-marquee img:hover{filter:grayscale(0);opacity:1}
.ael-marquee b{font-family:var(--ael-fd);font-weight:800;font-size:1.15rem;color:#9AA79B;white-space:nowrap;transition:color .25s}
.ael-marquee b:hover{color:var(--ael-green)}
@keyframes ael-roll{to{transform:translateX(-50%)}}

/* ============================================================
   CTA BAND
   ============================================================ */
/* λευκή γραμμή που χωρίζει το CTA από το footer */
.ael-cta-band{text-align:center;padding:96px 0;border-bottom:7px solid #fff}
/* ΠΡΟΣΟΧΗ: το `margin:… auto …` είναι αυτό που κεντράρει το πλαίσιο των 720px.
   Το μπλοκ «ΤΥΠΟΓΡΑΦΙΑ ΠΕΡΙΕΧΟΜΕΝΟΥ» ορίζει `.page-content h2{margin:2em 0 .6em}`
   με ΙΔΙΑ ειδικότητα· γι' αυτό πρέπει να γράφεται ΠΙΟ ΠΑΝΩ στο αρχείο από εδώ.
   Αν κάποτε μετακινηθεί πιο κάτω, το auto χάνεται, το πλαίσιο κολλάει αριστερά και ο
   τίτλος φαίνεται στραβά κεντραρισμένος σε σχέση με το κουμπί από κάτω. */
.ael-cta-band h2{max-width:720px;margin:14px auto 16px}
.ael-cta-band p{color:var(--ael-fog);max-width:560px;margin:0 auto 32px}
.ael-cta-band .ael-eyebrow{justify-content:center}

/* ============================================================
   FOOTER
   ============================================================ */
.ael-footer{background:var(--ael-deep);color:var(--ael-fog);padding:64px 0 32px}
.ael-foot-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:40px;margin-bottom:44px}
.ael-foot-logos{display:flex;align-items:center;gap:22px;margin-bottom:18px;flex-wrap:wrap}
.ael-foot-logos img.ael-logo-mark{height:54px;width:auto;background:rgba(250,249,242,.92);border-radius:12px;padding:8px 14px}
.ael-foot-logos img.ael-logo-uth{height:62px;width:auto}
.ael-footer h4{color:#fff;font-family:var(--ael-fd);font-size:.95rem;margin-bottom:14px}
.ael-footer p{font-size:.9rem}
.ael-footer a{color:var(--ael-fog);text-decoration:none;font-size:.9rem}
.ael-footer a:hover{color:var(--ael-growth)}
/* Η στήλη «Explore» τυπώνει το κύριο μενού, που περιέχει και το στοιχείο εναλλαγής
   γλώσσας του Polylang — εμφανιζόταν ως ένα ορφανό σημαιάκι κάτω από το Contact.
   Το κρύβουμε εδώ όπως και στο header (η εναλλαγή γίνεται από το κουμπί .ael-lang). */
.ael-footer .lang-item,
.ael-footer .pll-parent-menu-item,
.ael-footer li:has(> a[href="#pll_switcher"]){display:none}
.ael-footer ul{margin:0;padding:0}
.ael-footer li{list-style:none;margin-bottom:9px}
/* Social εικονίδια στο footer: στρογγυλά ghost κουμπιά πάνω στο σκούρο, χρυσά στο hover.
   Το :focus είναι ρητό — αλλιώς το reset.css του Hello τα βάφει φούξια (γνωστή παγίδα). */
.ael-socials{display:flex;gap:10px;margin-top:16px}
.ael-soc{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;
  border-radius:50%;border:1px solid rgba(255,255,255,.22);color:var(--ael-fog);
  transition:color .2s ease,border-color .2s ease,background .2s ease}
.ael-soc:hover,.ael-soc:focus{color:var(--ael-gold);border-color:var(--ael-gold);background:rgba(201,162,39,.08)}
.ael-soc:focus-visible{outline:3px solid var(--ael-gold);outline-offset:2px}

/* Φωτεινή εκδοχή για μέσα σε σελίδες/άρθρα ([ael_social]) + ετικέτα «Ακολουθήστε μας».
   Η ετικέτα σε Manrope 800 (πραγματικό bold — το JetBrains Mono φορτώνεται μόνο ως 400/500). */
.ael-followrow{display:flex;align-items:center;justify-content:center;gap:16px;flex-wrap:wrap;margin:6px 0}
.ael-follow-label{font-family:var(--ael-fd);font-weight:800;font-size:.8rem;letter-spacing:.08em;text-transform:uppercase;color:var(--ael-ink)}
.ael-followrow .ael-socials{margin-top:0}
.ael-socials-light .ael-soc{color:var(--ael-green);border-color:rgba(31,77,46,.28)}
.ael-socials-light .ael-soc:hover,.ael-socials-light .ael-soc:focus{color:var(--ael-gold);border-color:var(--ael-gold);background:rgba(201,162,39,.08)}
/* Στα άρθρα οι δύο σειρές (share + follow) ζουν σε πάνελ άμμου με στρογγυλεμένες γωνίες
   — ίδια αίσθηση με τις λωρίδες stats — και λεπτό διαχωριστικό ανάμεσά τους. */
.ael-post-follow{margin-top:38px;padding:26px 28px;background:var(--ael-cream);
  border:1px solid var(--ael-line);border-radius:16px}
.ael-post-follow .ael-followrow{margin:0 0 18px}
.ael-post-follow .ael-followrow + .ael-followrow{margin:0;padding-top:18px;border-top:1px solid var(--ael-line)}
.ael-post-follow .ael-followrow:last-child{margin-bottom:0}

/* Το «Αντιγραφή συνδέσμου» είναι <button>: μηδενίζουμε την εμφάνιση του browser και
   δίνουμε ρητό :focus — αλλιώς το reset.css του Hello το βάφει φούξια (γνωστή παγίδα). */
button.ael-soc{background:none;padding:0;cursor:pointer;position:relative;font:inherit}
button.ael-soc:hover,button.ael-soc:focus{background:rgba(201,162,39,.08)}
.ael-copy-note{position:absolute;bottom:calc(100% + 8px);left:50%;transform:translateX(-50%);
  white-space:nowrap;font-family:var(--ael-fm);font-size:.68rem;color:var(--ael-green)}
.ael-share-copy.ael-copied{color:var(--ael-green);border-color:var(--ael-green)}

/* ΟΜΟΙΟΜΟΡΦΟ ΚΕΝΟ γύρω από τη λωρίδα share/follow:
   (α) στα άρθρα το .page-content είχε 96px κάτω — γίνεται 44px, όσο περίπου και το κενό
       πάνω από τα εικονίδια, (β) σε άρθρα χτισμένα με Elementor μηδενίζεται το 96px της
       τελευταίας ενότητας (τον αέρα τον δίνει πια η ίδια η λωρίδα), (γ) σε σελίδες όπου η
       τελευταία ενότητα είναι η λωρίδα social (Contact), το 96px του κανόνα «ανάσα πριν το
       footer» γίνεται 44px ώστε τα εικονίδια να μην αιωρούνται σε τεράστιο λευκό. */
body.single-post .page-content:not(:has(> .elementor)){padding-bottom:44px}
body.single-post .page-content > .elementor > .elementor-section:last-child{padding-bottom:0}
.page-content > .elementor > .elementor-section:last-child:has(.ael-followrow){padding-bottom:44px}

.ael-foot-bottom{border-top:1px solid rgba(255,255,255,.08);padding-top:24px;font-family:var(--ael-fm);
  font-size:.7rem;letter-spacing:.04em;display:flex;justify-content:space-between;gap:14px;flex-wrap:wrap;
  color:rgba(191,208,189,.6)}

/* ============================================================
   ΑΡΘΡΑ — κύρια εικόνα και ημερομηνία
   ============================================================ */

/* Ένα κοινό κουτί 1180px για εικόνα, τίτλο, ημερομηνία και κείμενο του άρθρου.
   ΓΙΑΤΙ: το Hello δίνει max-width στο .site-main ΜΟΝΟ με τον selector
   body:not([class*="elementor-page-"]) (theme.css). Τα 76 παλιά άρθρα είναι
   φτιαγμένα με Elementor, άρα το body τους έχει κλάση elementor-page-<id> και
   το .site-main έμενε full-width, ενώ το περιεχόμενο μέσα του ήταν boxed στα
   1180px → ο τίτλος και η ημερομηνία έπεφταν στην αριστερή άκρη της οθόνης,
   150px πιο αριστερά από την εικόνα και το κείμενο. Τα 10 νέα άρθρα (χωρίς
   Elementor) δεν είχαν το πρόβλημα, γι' αυτό φαινόταν «τυχαίο».
   ΜΗΝ βασιστείς ξανά στον κανόνα του Hello — το κουτί ορίζεται εδώ. */
body.single-post .site-main{max-width:1180px;margin-left:auto;margin-right:auto;width:100%}
body.single-post .page-header,
body.single-post .page-content{padding-left:24px;padding-right:24px}
body.single-post .ael-post-thumb{max-width:none}   /* κρατά το ίδιο 24px περιθώριο με τον τίτλο */
body.single-post .page-header .entry-title{max-width:none}
/* Το Elementor βάζει 10px εσωτερικό περιθώριο στις στήλες· το μηδενίζουμε μόνο στα
   άρθρα ώστε το κείμενο να ευθυγραμμίζεται ακριβώς με τον τίτλο. */
body.single-post .page-content > .elementor > .elementor-top-section > .elementor-container
  > .elementor-column > .elementor-element-populated{padding-left:0;padding-right:0}

.ael-post-thumb{
  max-width:1180px;margin:0 auto 34px;padding:0 24px;
}
.ael-post-thumb img{
  width:100%;height:auto;display:block;
  border-radius:var(--ael-radius);
  box-shadow:0 20px 46px rgba(31,77,46,.12);
}
.ael-post-thumb figcaption{
  font-family:var(--ael-fm);font-size:.72rem;color:var(--ael-mute);
  margin-top:10px;text-align:center;
}
.ael-post-meta{
  font-family:var(--ael-fm);font-size:.74rem;color:var(--ael-gold);
  letter-spacing:.06em;margin-top:10px;
}
body:not(.ael-has-hero) .ael-post-thumb{margin-top:0}

/* ============================================================
   REVEAL ON SCROLL
   ============================================================ */
.ael-rv{opacity:0;transform:translateY(22px);transition:opacity .6s ease,transform .6s ease;
  /* ΔΙΧΤΥ ΑΣΦΑΛΕΙΑΣ: ό,τι δεν προλάβει να αποκαλυφθεί από τον IntersectionObserver μέσα
     σε 3 δευτερόλεπτα, εμφανίζεται μόνο του. Χωρίς αυτό, οποιοδήποτε στοιχείο δεν τέμνει
     ποτέ το viewport (π.χ. μέσα σε οριζόντιο slider) μένει ΜΟΝΙΜΑ αόρατο.
     Κανένα περιεχόμενο δεν επιτρέπεται να εξαρτά την ορατότητά του αποκλειστικά από JS. */
  animation:ael-rv-fallback .4s 3s forwards}
@keyframes ael-rv-fallback{to{opacity:1;transform:none}}
.ael-rv.ael-in{opacity:1;transform:none}


/* ============================================================
   ΣΕΛΙΔΑ ΟΜΑΔΑΣ
   Κάθε μέλος είναι ένα native Image Box widget του Elementor (άρα ο χρήστης το
   επεξεργάζεται κανονικά)· εδώ του δίνουμε την όψη κάρτας του design system.
   Η κλάση ael-page-team μπαίνει από την ael_body_class() στη σελίδα #20 και τη
   μετάφρασή της, οπότε τίποτα από αυτά δεν διαρρέει σε άλλες σελίδες.
   ============================================================ */
.ael-page-team .elementor-widget-image-box{width:100%}
.ael-page-team .elementor-image-box-wrapper{
  background:#fff;border:1px solid var(--ael-line);border-radius:var(--ael-radius);
  padding:34px 28px 30px;height:100%;text-align:center;
  transition:transform .25s ease,box-shadow .25s ease}
.ael-page-team .elementor-widget-image-box:hover .elementor-image-box-wrapper{
  transform:translateY(-6px);box-shadow:0 22px 48px rgba(31,77,46,.13)}
/* Τέλειος κύκλος. Χρειάζεται !important γιατί το widget-image-box.min.css του Elementor
   δίνει width στο <figure> και στο <img>, οπότε χωρίς σταθερές διαστάσεις η φωτογραφία
   βγαίνει οβάλ (πλάτος στήλης × ύψος 150px). */
.ael-page-team .elementor-widget-image-box .elementor-image-box-img{
  width:156px !important;height:156px !important;margin:0 auto 20px !important;
  display:block;flex:none}
.ael-page-team .elementor-widget-image-box .elementor-image-box-img a{display:block;width:100%;height:100%}
.ael-page-team .elementor-widget-image-box .elementor-image-box-img img{
  width:156px !important;height:156px !important;max-width:none;
  object-fit:cover;object-position:center top;
  border-radius:50%;border:4px solid var(--ael-cream);display:block;margin:0}
.ael-page-team .elementor-image-box-title{font-size:1.1rem;font-weight:700;margin:0 0 14px;line-height:1.35}
.ael-page-team .elementor-image-box-title a{color:var(--ael-ink);text-decoration:none}
.ael-page-team .elementor-image-box-title a:hover{color:var(--ael-green)}
.ael-page-team .elementor-image-box-description{
  text-align:left;font-size:.92rem;line-height:1.62;color:var(--ael-mute)}
/* πρώτη παράγραφος = ο ρόλος του μέλους, ξεχωρίζει με hairline */
.ael-page-team .elementor-image-box-description > p:first-child{
  color:var(--ael-ink);font-weight:500;text-align:center;
  padding-bottom:16px;margin:0 0 4px;border-bottom:1px solid var(--ael-line)}
.ael-page-team .elementor-image-box-description p{margin:0 0 8px}
/* «Research Field:» / «Ερευνητικό Πεδίο:» — γίνονται mono ετικέτες */
.ael-page-team .elementor-image-box-description p > strong:only-child{
  font-family:var(--ael-fm);font-size:.68rem;letter-spacing:.1em;text-transform:uppercase;
  color:var(--ael-green);font-weight:500;display:block;margin-top:12px}
.ael-page-team .elementor-image-box-description ul{margin:4px 0 0;padding-left:20px}
.ael-page-team .elementor-image-box-description li{margin-bottom:4px}
@media (max-width:640px){
  .ael-page-team .elementor-widget-image-box .elementor-image-box-img,
  .ael-page-team .elementor-widget-image-box .elementor-image-box-img img{
    width:132px !important;height:132px !important}
}

/* ============================================================
   ΣΥΝΔΕΣΜΟΙ ΚΑΙ ΕΙΚΟΝΙΔΙΑ SOCIAL
   Το reset.css του Hello ορίζει a{color:#c36} — φούξια σε κάθε σύνδεσμο μέσα σε
   περιεχόμενο Elementor (σελίδες έργων, μέλη, άρθρα). Το φέρνουμε στην παλέτα.
   Όλοι οι δικοί μας σύνδεσμοι (.ael-nav, .ael-proj, .ael-footer κ.λπ.) έχουν ήδη
   ρητό χρώμα με μεγαλύτερη ειδικότητα, οπότε δεν επηρεάζονται.
   ============================================================ */
a{color:var(--ael-green)}
a:hover{color:var(--ael-gold)}
.ael-dark a:not(.ael-btn):not(.ael-glass){color:var(--ael-growth)}
.ael-dark a:not(.ael-btn):not(.ael-glass):hover{color:var(--ael-gold)}

/* Τα κουμπιά του Elementor είχαν χρώματα από την εποχή του OceanWP: μπλε LinkedIn στο CV
   των μελών, ημιδιάφανο λευκό με μαύρα γράμματα στις σελίδες έργων, πορτοκαλί στην παλιά
   αρχική. Τα φέρνουμε όλα στην παλέτα με μία δήλωση. Χρειάζεται !important γιατί το
   Elementor γράφει το χρώμα κάθε κουμπιού χωριστά στο post-<id>.css. */
.elementor-button,
.elementor-button-wrapper .elementor-button{
  background-color:var(--ael-green) !important;
  color:#fff !important;
  border-radius:12px !important;
  font-family:'Inter',system-ui,sans-serif;font-weight:600;
  transition:background-color .2s ease,transform .2s ease,box-shadow .2s ease}
.elementor-button:hover,
.elementor-button:focus,
.elementor-button:focus-visible,
.elementor-button-wrapper .elementor-button:hover{
  background-color:var(--ael-gold) !important;color:#15302B !important;
  transform:translateY(-2px);box-shadow:0 10px 24px rgba(201,162,39,.3)}
.elementor-button:focus-visible{outline:3px solid var(--ael-green);outline-offset:2px}
.elementor-button .elementor-button-icon svg,
.elementor-button .elementor-button-icon i{fill:currentColor;color:inherit}

/* Τα εικονίδια του widget Social Icons έβγαιναν στα εταιρικά χρώματα (LinkedIn μπλε).
   Τα γυρίζουμε στο πράσινο του εργαστηρίου, με χρυσό στο hover. */
.elementor-social-icon{
  background-color:var(--ael-green) !important;
  transition:background-color .2s ease,transform .2s ease}
.elementor-social-icon:hover{background-color:var(--ael-gold) !important;transform:translateY(-2px)}
.elementor-social-icon i,
.elementor-social-icon svg{color:#fff !important;fill:#fff !important}
.elementor-social-icon:focus-visible{outline:3px solid var(--ael-gold);outline-offset:3px}

/* ============================================================
   ΦΟΡΜΑ WPForms — προσαρμογή στο design system
   Το πρόσθετο φορτώνει δικό του γενικό στυλ· εδώ το φέρνουμε στα
   χρώματα, τη γραμματοσειρά και τις γωνίες του υπόλοιπου site.
   ============================================================ */
.wpforms-container{max-width:none;margin:0}
.wpforms-container .wpforms-field{padding:0 0 18px}
.wpforms-container .wpforms-field-label{
  font-family:'JetBrains Mono',ui-monospace,monospace;font-size:.74rem;font-weight:500;
  letter-spacing:.1em;text-transform:uppercase;color:var(--ael-mute);margin-bottom:8px}
.wpforms-container .wpforms-required-label{color:var(--ael-gold)}
.wpforms-container input[type=text],
.wpforms-container input[type=email],
.wpforms-container select,
.wpforms-container textarea{
  width:100%;max-width:none;background:#fff;color:var(--ael-ink);
  border:1px solid var(--ael-line);border-radius:12px;padding:13px 15px;
  font-family:'Inter',system-ui,sans-serif;font-size:1rem;line-height:1.5;
  transition:border-color .18s ease,box-shadow .18s ease}
.wpforms-container input[type=text]:focus,
.wpforms-container input[type=email]:focus,
.wpforms-container select:focus,
.wpforms-container textarea:focus{
  outline:none;border-color:var(--ael-green);box-shadow:0 0 0 3px rgba(31,77,46,.12)}
.wpforms-container textarea{min-height:150px;resize:vertical}
.wpforms-container .wpforms-field-description{color:var(--ael-mute);font-size:.9rem;margin-top:6px}
.wpforms-container button[type=submit]{
  display:inline-block;padding:14px 26px;border:0;border-radius:12px;cursor:pointer;
  background:var(--ael-green);color:#fff;
  font-family:'Inter',system-ui,sans-serif;font-size:1rem;font-weight:600;
  transition:transform .18s ease,box-shadow .18s ease,background-color .18s ease}
/* Το reset.css του Hello βάφει κάθε button φούξια σε hover/focus — το ακυρώνουμε ρητά. */
.wpforms-container button[type=submit]:hover,
.wpforms-container button[type=submit]:focus,
.wpforms-container button[type=submit]:focus-visible{
  background:var(--ael-green);color:#fff;transform:translateY(-2px);
  box-shadow:0 10px 24px rgba(31,77,46,.3)}
.wpforms-container button[type=submit]:focus-visible{outline:3px solid var(--ael-gold);outline-offset:2px}
.wpforms-container .wpforms-error{color:#A3391F;font-size:.9rem;margin-top:6px}
.wpforms-container input.wpforms-error,
.wpforms-container select.wpforms-error,
.wpforms-container textarea.wpforms-error{border-color:#A3391F}
.wpforms-confirmation-container-full{
  background:#fff;border:1px solid var(--ael-line);border-left:4px solid var(--ael-growth);
  border-radius:var(--ael-radius);padding:20px 24px;color:var(--ael-ink)}

/* ============================================================
   RESPONSIVE
   ============================================================ */
@media (max-width:980px){
  .ael-cards-4{grid-template-columns:repeat(2,1fr)}
  .ael-cols-4{grid-template-columns:repeat(2,1fr)}
  .ael-proj-grid,.ael-news-grid{grid-template-columns:1fr 1fr}
  .ael-catgrid{grid-template-columns:1fr 1fr}
  .ael-pslider-track{grid-auto-columns:calc((100% - 22px) / 2)}
  .ael-team-grid{grid-template-columns:repeat(4,1fr)}
  .ael-stats .ael-container{grid-template-columns:repeat(2,1fr);gap:30px}
  .ael-nav,.ael-hdr .ael-lang{display:none}
  .ael-burger{display:block}
  .ael-nav.ael-open{display:flex;position:fixed;top:76px;left:0;right:0;background:var(--ael-paper);
    flex-direction:column;padding:24px;gap:18px;border-bottom:1px solid var(--ael-line);
    box-shadow:0 20px 40px rgba(29,43,34,.08);max-height:calc(100vh - 76px);overflow-y:auto}
  .ael-hdr.ael-scrolled + * .ael-nav.ael-open,
  .ael-hdr.ael-scrolled .ael-nav.ael-open{top:64px;max-height:calc(100vh - 64px)}
  .ael-nav.ael-open ul{flex-direction:column;align-items:flex-start;gap:16px;width:100%}
  .ael-nav.ael-open ul ul{position:static;opacity:1;visibility:visible;transform:none;box-shadow:none;
    border:0;background:transparent;padding:8px 0 0 16px;min-width:0}
  .ael-chartwrap{right:-6%;width:62vw;opacity:.55}
  .ael-mapwrap{right:-4%;width:58vw;opacity:.55}
  .ael-netwrap{right:-4%;top:6%;width:56vw;opacity:.5}
}
@media (max-width:640px){
  .ael-section{padding:72px 0}
  .page-content > .elementor > .elementor-section:last-child:not(:has(.ael-dark)),
  .page-content > .elementor > .e-con:last-child:not(:has(.ael-dark)),
  .page-content:not(:has(> .elementor)){padding-bottom:64px}
  .ael-cards-4,.ael-proj-grid,.ael-cols-4,.ael-news-grid,.ael-catgrid{grid-template-columns:1fr}
  .ael-pslider-track{grid-auto-columns:88%}
  .ael-team-grid{grid-template-columns:repeat(3,1fr)}
  .ael-foot-grid{grid-template-columns:1fr}
  .ael-hero{height:82vh;min-height:520px}
  .ael-slide-inner{padding-bottom:120px}
  .ael-veil{background:linear-gradient(180deg,rgba(250,249,242,.92) 30%,rgba(250,249,242,.4) 70%,rgba(250,249,242,0))}
  .ael-chartwrap,.ael-mapwrap{top:auto;bottom:4%;transform:none;width:96vw;right:2vw;opacity:.4}
  .ael-netwrap{top:auto;bottom:2%;width:92vw;right:4vw;opacity:.35}
  .ael-btn{width:100%;justify-content:center}
  .ael-hdr .ael-btn{display:none}
  .ael-brand img{height:34px}
  .ael-counter{display:none}
  .ael-tip{display:none}
}
@media (prefers-reduced-motion:reduce){
  .ael-hero *,.ael-hero *::before,.ael-hero *::after,
  .ael-rv,.ael-card,.ael-proj,.ael-news-card,.ael-marquee-track,.ael-avatar{
    animation:none!important;transition:none!important
  }
  .ael-rv,.ael-t{opacity:1;transform:none}
  .ael-frontier,.ael-stem,.ael-line{stroke-dashoffset:0}
  .ael-area,.ael-pt,.ael-tip,.ael-grain,.ael-ring,.ael-pulse{opacity:1}
  .ael-scene{transform:none}
}

/* ============================================================
   404, ΑΝΑΖΗΤΗΣΗ ΚΑΙ ΦΟΡΜΑ ΑΝΑΖΗΤΗΣΗΣ
   ============================================================ */
.ael-404{max-width:720px}
.ael-404 h1{font-size:clamp(2rem,4vw,3rem);font-weight:800;margin:14px 0 18px}
.ael-404-lead{color:var(--ael-mute);font-size:1.05rem;line-height:1.7;margin:0 0 30px;max-width:60ch}

.ael-searchform{display:flex;gap:10px;max-width:520px;margin:0 0 34px}
.ael-searchform-wide{max-width:640px;margin-bottom:48px}
.ael-searchform input[type=search]{
  flex:1;min-width:0;background:#fff;color:var(--ael-ink);
  border:1px solid var(--ael-line);border-radius:12px;padding:13px 16px;
  font-family:'Inter',system-ui,sans-serif;font-size:1rem;
  transition:border-color .18s ease,box-shadow .18s ease}
.ael-searchform input[type=search]:focus{
  outline:none;border-color:var(--ael-green);box-shadow:0 0 0 3px rgba(31,77,46,.12)}
.ael-searchform button{
  flex:none;padding:13px 24px;border:0;border-radius:12px;cursor:pointer;
  background:var(--ael-green);color:#fff;
  font-family:'Inter',system-ui,sans-serif;font-size:.95rem;font-weight:600;
  transition:background-color .18s ease,transform .18s ease}
/* το reset.css του Hello βάφει κάθε button φούξια σε hover/focus */
.ael-searchform button:hover,
.ael-searchform button:focus,
.ael-searchform button:focus-visible{
  background:var(--ael-gold);color:#15302B;transform:translateY(-2px)}
.ael-searchform button:focus-visible{outline:3px solid var(--ael-green);outline-offset:2px}

.ael-404-links{display:flex;flex-wrap:wrap;gap:10px}
.ael-404-links a{
  font-family:var(--ael-fm);font-size:.78rem;letter-spacing:.04em;
  color:var(--ael-green);text-decoration:none;background:var(--ael-cream);
  border:1px solid var(--ael-line);border-radius:999px;padding:9px 16px;
  transition:border-color .18s ease,background-color .18s ease,color .18s ease}
.ael-404-links a:hover{border-color:var(--ael-gold);background:#fff;color:var(--ael-green)}

/* Σημεία της πολιτικής απορρήτου που εκκρεμεί να συμπληρώσει το Πανεπιστήμιο. */
.page-content mark,.entry-content mark{
  background:#FEF3C7;color:#7A5B00;padding:2px 7px;border-radius:6px;
  font-family:var(--ael-fm);font-size:.85em}
/* ============================================================
   ΔΗΜΟΣΙΕΥΣΕΙΣ (από ORCID) — μετρητές, πλαϊνά φίλτρα, λίστα
   ============================================================ */

/* --- λωρίδα μετρητών, ίδια αίσθηση με τη λωρίδα της αρχικής --- */
.ael-pubmetrics{display:flex;flex-wrap:wrap;align-items:center;gap:24px;
  background:var(--ael-cream);border-top:1px solid var(--ael-line);border-bottom:1px solid var(--ael-line);
  padding:34px 28px;border-radius:var(--ael-radius);margin-bottom:44px}
.ael-pubmetric{text-align:center;flex:1 1 110px}
.ael-pubmetric .ael-num{display:block;font-family:var(--ael-fm);font-weight:500;
  font-size:clamp(1.7rem,3.4vw,2.4rem);color:var(--ael-gold);line-height:1.1}
.ael-pubmetric small{display:block;margin-top:8px;font-size:.78rem;color:var(--ael-mute);
  letter-spacing:.02em}

/* --- διάταξη: φίλτρα αριστερά, λίστα δεξιά --- */
.ael-publayout{display:grid;grid-template-columns:250px minmax(0,1fr);gap:44px;align-items:start}
.ael-pubside{position:sticky;top:96px;display:grid;gap:26px}
.ael-pubgroup h4{font-family:var(--ael-fm);font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;
  color:var(--ael-mute);margin:0 0 12px;font-weight:500}
.ael-pubside .ael-pubchips{flex-direction:column;align-items:stretch}
.ael-pubside .ael-chip{text-align:left;display:flex;justify-content:space-between;align-items:center;gap:8px}
.ael-pubside .ael-pubyear,.ael-pubside .ael-pubsearch{width:100%}

.ael-pubchips{display:flex;flex-wrap:wrap;gap:8px}
.ael-pubchips-inline{margin-bottom:22px}
.ael-chip{font-family:var(--ael-fm);font-size:.76rem;letter-spacing:.04em;cursor:pointer;
  background:#fff;color:var(--ael-ink);border:1px solid var(--ael-line);border-radius:999px;
  padding:9px 16px;transition:border-color .18s ease,background-color .18s ease,color .18s ease}
.ael-chip span{color:var(--ael-mute);margin-left:4px}
.ael-chip:hover,.ael-chip:focus{background:var(--ael-cream);border-color:var(--ael-gold);color:var(--ael-ink)}
.ael-chip.ael-on{background:var(--ael-green);border-color:var(--ael-green);color:#fff}
.ael-chip.ael-on span{color:rgba(255,255,255,.7)}
.ael-chip.ael-on:hover,.ael-chip.ael-on:focus{background:var(--ael-green);color:#fff;border-color:var(--ael-green)}
.ael-chip:focus-visible{outline:3px solid var(--ael-gold);outline-offset:2px}

.ael-pubyear,.ael-pubsearch{background:#fff;color:var(--ael-ink);border:1px solid var(--ael-line);
  border-radius:12px;padding:10px 14px;font-family:'Inter',system-ui,sans-serif;font-size:.92rem}
.ael-pubyear:focus,.ael-pubsearch:focus{outline:none;border-color:var(--ael-green);
  box-shadow:0 0 0 3px rgba(31,77,46,.12)}

/* Το reset είναι <button>: χρειάζεται ρητό :focus, αλλιώς το reset.css του Hello το βάφει φούξια. */
.ael-pubreset{background:none;border:none;padding:0;cursor:pointer;text-align:left;
  font-family:var(--ael-fm);font-size:.74rem;color:var(--ael-green);text-decoration:underline;
  text-underline-offset:3px}
.ael-pubreset:hover,.ael-pubreset:focus{background:none;color:var(--ael-gold)}
.ael-pubreset:focus-visible{outline:3px solid var(--ael-gold);outline-offset:2px}

/* --- ενεργά φίλτρα + μετρητής αποτελεσμάτων --- */
.ael-pubactive{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:18px;
  padding-bottom:16px;border-bottom:1px solid var(--ael-line)}
.ael-pubcount{font-family:var(--ael-fm);font-size:.78rem;color:var(--ael-mute);letter-spacing:.03em;
  margin-right:6px}
.ael-pubtags{display:flex;flex-wrap:wrap;gap:8px}
.ael-pubtag{display:inline-flex;align-items:center;gap:8px;cursor:pointer;
  background:var(--ael-cream);border:1px solid var(--ael-gold);border-radius:999px;
  padding:6px 12px;font-family:var(--ael-fm);font-size:.72rem;color:var(--ael-ink)}
.ael-pubtag i{font-style:normal;font-size:.95rem;line-height:1;color:var(--ael-mute)}
.ael-pubtag:hover,.ael-pubtag:focus{background:var(--ael-gold);color:#241f06}
.ael-pubtag:hover i,.ael-pubtag:focus i{color:#241f06}
.ael-pubtag:focus-visible{outline:3px solid var(--ael-green);outline-offset:2px}

/* --- η λίστα --- */
.ael-publist{list-style:none;margin:0;padding:0}
.ael-publist .ael-pub{display:flex;gap:22px;padding:16px 0;border-top:1px solid var(--ael-line);margin:0}
.ael-publist .ael-pub:last-child{border-bottom:1px solid var(--ael-line)}
/* Το [hidden] του JS πρέπει να νικά το display:flex παραπάνω, αλλιώς τα φίλτρα δεν κρύβουν τίποτα. */
.ael-publist .ael-pub[hidden]{display:none}
.ael-pub-year{font-family:var(--ael-fm);font-size:.82rem;color:var(--ael-gold);flex:none;
  min-width:52px;padding-top:3px}
.ael-pub-body{min-width:0}
.ael-pub-body h3{font-size:1.02rem;font-weight:700;line-height:1.4;margin:0 0 4px}
.ael-pub-body h3 a{color:var(--ael-ink);text-decoration:none}
.ael-pub-body h3 a:hover{color:var(--ael-green);text-decoration:underline;
  text-underline-offset:3px;text-decoration-color:var(--ael-gold)}
/* Με δύο κλάσεις (0,2,0) ώστε να νικούν το .page-content p{margin:0 0 1.1em} της τυπογραφίας — αλλιώς κάθε γραμμή έπαιρνε κενό παραγράφου και η λίστα γινόταν τεράστια. */
.ael-pub-body .ael-pub-authors{color:var(--ael-mute);font-size:.9rem;line-height:1.45;margin:0}
.ael-pub-body .ael-pub-meta{color:var(--ael-mute);font-size:.88rem;line-height:1.45;margin:2px 0 0}
.ael-pub-type{font-family:var(--ael-fm);font-size:.7rem;letter-spacing:.06em;text-transform:uppercase}
.ael-pub-doi{display:inline-block;margin-top:2px;font-family:var(--ael-fm);font-size:.72rem;
  color:var(--ael-green);text-decoration:none}
.ael-pub-doi:hover{color:var(--ael-gold)}
.ael-pubempty{color:var(--ael-mute);padding:34px 0;text-align:center}
.ael-pubsource{font-family:var(--ael-fm);font-size:.74rem;color:var(--ael-mute);margin-top:26px}

/* --- «προβολή περισσότερων» --- */
.ael-pubmore{text-align:center;margin-top:32px}
.ael-pubmore[hidden]{display:none}
.ael-pubmore-btn:focus{background:rgba(250,249,242,.6);color:var(--ael-green)}
.ael-pubmore-left{font-family:var(--ael-fm);opacity:.7;margin-left:4px}

@media (max-width:900px){
  .ael-publayout{grid-template-columns:1fr;gap:28px}
  .ael-pubside{position:static}
  .ael-pubside .ael-pubchips{flex-direction:row;flex-wrap:wrap}
  .ael-pubside .ael-chip{display:inline-flex}
}
@media (max-width:640px){
  .ael-pubmetrics{padding:24px 16px;gap:18px}
  .ael-pubsearch{min-width:0;width:100%}
  .ael-publist .ael-pub{flex-direction:column;gap:4px}
}

/* ============================================================
   ΓΕΦΥΡΑ ELEMENTOR ↔ DESIGN SYSTEM
   Οι σελίδες NATAE και RestPoll ξαναχτίστηκαν με native icon-box widgets αντί για
   τα widgets των Essential Addons. Το markup του Elementor είναι διαφορετικό από
   αυτό των shortcodes μας, οπότε εδώ αντιστοιχίζεται στο ίδιο οπτικό αποτέλεσμα.
   ΜΗΝ το σβήσεις — χωρίς αυτό οι κάρτες του RestPoll γίνονται γυμνό κείμενο.

   ΙΣΤΟΡΙΚΟ: εδώ υπήρχαν και κανόνες για τα «Τι κάνουμε» / «Με ποιους συνεργαζόμαστε» /
   CTA band όταν είχαν ξαναχτιστεί ως πρότυπα Elementor. Η μετατροπή αναιρέθηκε
   (23/8/2026) γιατί χάλαγε στοιχίσεις και χρώματα στην αρχική· οι ενότητες αυτές
   αποδίδονται ξανά από τα shortcodes, για τα οποία γράφτηκε εξαρχής το design system.
   ============================================================ */

/* icon box == .ael-card */
.ael-card .elementor-icon-box-icon{margin-bottom:18px}
.ael-card .elementor-icon{width:46px;height:46px;border-radius:12px;background:var(--ael-cream);
  color:var(--ael-green);display:grid;place-items:center;font-size:22px}
.ael-card .elementor-icon svg{width:22px;height:22px;fill:currentColor}
.ael-card .elementor-icon-box-title{margin:0 0 10px;font-size:1.12rem;font-weight:800;color:var(--ael-ink)}
.ael-card .elementor-icon-box-title span{font-size:inherit;font-weight:inherit;color:inherit}
.ael-card .elementor-icon-box-description{font-size:.93rem;color:var(--ael-mute);margin:0}
.ael-card .elementor-icon-box-wrapper{text-align:left}

/* ---- NATAE: λίστα ειδικών στόχων (αντικατέστησε το eael-feature-list) ---- */
.ael-flist-item{background:#fff;border:1px solid var(--ael-line);border-radius:var(--ael-radius);
  padding:22px 24px;margin-bottom:14px}
.ael-flist-item .elementor-icon-box-wrapper{display:flex;gap:18px;align-items:flex-start;text-align:left}
.ael-flist-item .elementor-icon-box-icon{flex:none;margin:0}
.ael-flist-item .elementor-icon{width:44px;height:44px;border-radius:12px;background:var(--ael-cream);
  color:var(--ael-green);display:grid;place-items:center;font-size:20px}
.ael-flist-item .elementor-icon svg{width:20px;height:20px;fill:currentColor}
.ael-flist-item .elementor-icon-box-title{margin:0 0 6px;font-size:1.05rem;font-weight:800;color:var(--ael-ink)}
.ael-flist-item .elementor-icon-box-description{color:var(--ael-mute);font-size:.94rem;margin:0;
  white-space:pre-line}  /* τα «●» μπήκαν ως αλλαγές γραμμής */

/* ---- RestPoll: κάρτες στόχων (αντικατέστησαν τα eael-flip-box) ----
   Το κείμενο που ήταν κρυμμένο στην πίσω όψη είναι πλέον ορατό: το διαβάζουν
   και η Google και οι αναγνώστες οθόνης, και δεν χρειάζεται «γύρισμα» στο κινητό. */
.ael-card-tall{height:100%}
.ael-card-tall .elementor-icon-box-title{font-size:1.02rem;line-height:1.4}

/* Ενότητα δημοσιεύσεων στη σελίδα μέλους (από το ORCID). */
.ael-prof-pubs{padding:10px 0 64px}
.ael-prof-pubs .ael-publist{margin-top:8px}

/* Σελίδα έργου χωρίς λογότυπο: το όνομα τυπώνεται ως «πλακέτα» στη θέση της εικόνας,
   ώστε η διάταξη δύο στηλών να μένει ίδια με τα έργα που έχουν λογότυπο. */
.ael-nologo{display:flex;align-items:center;justify-content:center;text-align:center;
  min-height:160px;padding:28px;background:var(--ael-cream);border:1px solid var(--ael-line);
  border-radius:var(--ael-radius);font-family:var(--ael-fd);font-weight:800;font-size:1.3rem;
  color:var(--ael-green);letter-spacing:-.01em}

/* Κόμβος «Έρευνα»: δύο μεγάλες πύλες με μετρητές ([ael_research_hub]) */
.ael-catgrid-2{grid-template-columns:1fr 1fr;gap:28px}
.ael-cat-big{padding:40px 38px}
.ael-cat-stats{display:flex;gap:28px;flex-wrap:wrap;margin:18px 0 6px}
.ael-cat-stats .ael-num{display:block;font-family:var(--ael-fm);font-weight:500;font-size:2.2rem;
  color:var(--ael-gold);line-height:1.1}
.ael-cat-stats small{display:block;font-size:.76rem;color:var(--ael-mute);margin-top:4px;letter-spacing:.02em}
.ael-cat-big h3{font-size:1.5rem}
.ael-cat-big > a.ael-btn{align-self:flex-start;margin-top:auto}
@media (max-width:900px){ .ael-catgrid-2{grid-template-columns:1fr} }

/* Επεξήγηση μέσα στη λωρίδα μετρητών δημοσιεύσεων («Publications in numbers»). */
.ael-pubmetrics-label{display:flex;flex-direction:column;justify-content:center;gap:6px;flex:0 0 auto;
  padding-right:28px;border-right:1px solid var(--ael-line);max-width:230px}
.ael-pubmetrics-label strong{font-family:var(--ael-fd);font-weight:800;font-size:1.15rem;
  letter-spacing:-.01em;color:var(--ael-ink);line-height:1.2}
.ael-pubmetrics-label .ael-eyebrow{margin:0}
@media (max-width:900px){
  .ael-pubmetrics-label{flex:1 1 100%;max-width:none;border-right:0;border-bottom:1px solid var(--ael-line);
    padding:0 0 16px;min-width:0}
}

/* Σελίδες μελών: το κουμπί CV να μην κολλάει στα εικονίδια social. */
.elementor-widget-social-icons + .elementor-widget-button{margin-top:18px}
.elementor-widget-social-icons + .elementor-widget-spacer + .elementor-widget-button{margin-top:6px}

/* Σελίδα Νέων με πλαϊνά φίλτρα: 2 στήλες καρτών δίπλα στη στήλη φίλτρων. */
.ael-archive-layout .ael-news-grid{grid-template-columns:1fr 1fr}
/* Κάτω περιθώριο 22px (όσο το gap του grid): όταν τα αποτελέσματα χωρούν σε μία σελίδα δεν
   τυπώνεται σελιδοποίηση, οπότε χωρίς αυτό οι κάρτες κολλούσαν πάνω στη μπάρα φίλτρων. */
.ael-archive-layout .ael-pubactive{margin-bottom:22px;border-bottom:0;padding-bottom:0}
.ael-archive-layout .ael-pagination-top{margin-top:14px}
.ael-newsside a.ael-chip{text-decoration:none}
.ael-newsside a.ael-chip.ael-on:hover{background:var(--ael-green);color:#fff}
a.ael-pubreset{display:inline-block}
a.ael-pubtag{text-decoration:none}
@media (max-width:640px){ .ael-archive-layout .ael-news-grid{grid-template-columns:1fr} }

/* Κατηγορίες δίπλα στην ημερομηνία (άρθρο και κάρτες), με άνω τελεία. */
.ael-post-cats{font-family:var(--ael-fm);font-size:.74rem;letter-spacing:.04em;color:var(--ael-mute)}
.ael-post-cats a.ael-post-cat{color:var(--ael-green);text-decoration:none;font-weight:500;font-size:inherit}
.ael-post-cats a.ael-post-cat:hover{color:var(--ael-gold);text-decoration:underline;text-underline-offset:3px}
.ael-news-card .ael-post-cats{font-size:.68rem;letter-spacing:.03em}
