/*
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:      2.8.0
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}

/* ============================================================
   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-green{background:var(--ael-green);color:#fff}
.ael-btn-green:hover{box-shadow:0 10px 24px rgba(31,77,46,.3);color:#fff}
.ael-btn-outline{background:rgba(250,249,242,.6);color:var(--ael-green);border:1.5px solid rgba(31,77,46,.45)}
.ael-btn-outline:hover{background:rgba(31,77,46,.07)}
.ael-btn-growth{background:var(--ael-growth);color:#15302B}
.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}

/* ============================================================
   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}
.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}

/* ---- πρόσφατες δημοσιεύσεις ---- */
.ael-pub-list{display:grid;gap:16px}
.ael-pub{
  background:#fff;border:1px solid var(--ael-line);border-radius:var(--ael-radius);
  padding:22px 26px;display:flex;gap:20px;align-items:flex-start;
  transition:transform .25s ease,box-shadow .25s ease;
}
.ael-pub:hover{transform:translateY(-3px);box-shadow:0 18px 40px rgba(31,77,46,.11)}
.ael-pub .ael-pub-year{font-family:var(--ael-fm);font-size:.8rem;color:var(--ael-gold);flex:none;padding-top:2px;min-width:44px}
.ael-pub h3{font-size:1rem;font-weight:700;line-height:1.45;margin-bottom:6px}
.ael-pub .ael-pub-src{font-family:var(--ael-fm);font-size:.7rem;color:var(--ael-mute);letter-spacing:.03em}
.ael-pub .ael-pub-doi{color:var(--ael-green)}
.ael-pub a{color:inherit;text-decoration:none}
.ael-pub a:hover h3{color:var(--ael-green)}

/* ============================================================
   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-growth);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 > time{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-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}
.ael-cat::before{content:"";position:absolute;inset:0 0 auto 0;height:3px;border-radius:16px 16px 0 0;
  background:linear-gradient(90deg,#2E7042,var(--ael-gold));opacity:0;transition:opacity .25s ease}
.ael-cat:hover{transform:translateY(-6px);box-shadow:0 22px 48px rgba(31,77,46,.13);border-color:transparent}
.ael-cat:hover::before{opacity:1}
.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}
.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}
.ael-cta-band h2{max-width:720px;margin:0 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}
.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)}

/* ============================================================
   ΑΡΘΡΑ — κύρια εικόνα και ημερομηνία
   ============================================================ */
.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}
.ael-rv.ael-in{opacity:1;transform: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)}
.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}

/* ============================================================
   ΣΕΛΙΔΑ ΟΜΑΔΑΣ
   Κάθε μέλος είναι ένα 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-pub{flex-direction:column;gap:8px}
  .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}
  .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}
}
