/* Webrya Premium Static (GR/EN) */
:root{
  --bg:#0b1220;--text:#f9fafb;--muted:#a3acc0;--border:rgba(148,163,184,.22);
  --primary:#3b82f6;--primary-hover:#60a5fa;--section:#081226;--card:#0a162d;
  --shadow:0 18px 50px rgba(0,0,0,.35);--shadow-soft:0 18px 50px rgba(2,6,23,.22);
  --radius:18px;
}
[data-theme="light"]{
  --bg:#f7fafc;--text:#0f172a;--muted:#475569;--border:rgba(2,6,23,.12);
  --primary:#2563eb;--primary-hover:#1e40af;--section:#ffffff;--card:#ffffff;
  --shadow:0 18px 50px rgba(2,6,23,.10);--shadow-soft:0 18px 50px rgba(2,6,23,.08);
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{
  font-family:Inter,system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
  background:radial-gradient(1100px 600px at 50% 0%, rgba(59,130,246,.20), rgba(11,18,32,0) 55%),
             radial-gradient(900px 500px at 15% 10%, rgba(168,85,247,.18), rgba(11,18,32,0) 60%),
             var(--bg);
  color:var(--text);line-height:1.55;
}
img{max-width:100%;height:auto;display:block}
a{color:inherit;text-decoration:none}
.container{max-width:1180px;margin:0 auto;padding:0 24px}
.container-md{max-width:960px;margin:0 auto;padding:0 24px}
header{
  position:sticky;top:0;z-index:50;backdrop-filter:blur(10px);
  background:linear-gradient(180deg, rgba(2,6,23,.72), rgba(2,6,23,.40));
  border-bottom:1px solid var(--border);
}
[data-theme="light"] header{background:rgba(255,255,255,.78)}
.header-inner{
  display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:18px;padding:14px 0;
}
.brand{display:flex;align-items:center;gap:10px}
.brand img{height:28px;width:auto}
.brand .name{font-weight:800;letter-spacing:-.02em}
.nav{justify-self:center;display:flex;align-items:center;gap:18px}
.nav a{font-size:14px;font-weight:600;color:var(--muted);padding:10px 10px;border-radius:10px}
.nav a:hover{color:var(--text);background:rgba(148,163,184,.10)}
.nav a.active{color:var(--text);background:rgba(59,130,246,.16)}
.actions{display:flex;align-items:center;gap:10px;justify-self:end}
.icon-btn{
  border:1px solid var(--border);background:rgba(148,163,184,.08);color:var(--text);
  border-radius:12px;padding:10px 12px;cursor:pointer;font-weight:700;font-size:13px;
}
.icon-btn:hover{background:rgba(148,163,184,.14)}
.menu-toggle{display:none}

.hero{padding:86px 0 40px}
.hero-inner{display:grid;grid-template-columns:1.2fr .8fr;gap:28px;align-items:center}
@media (max-width:980px){.hero-inner{grid-template-columns:1fr;text-align:center}.hero-media{order:-1}}
.kicker{
  display:inline-flex;align-items:center;gap:10px;padding:8px 12px;border:1px solid var(--border);
  border-radius:999px;color:var(--muted);background:rgba(148,163,184,.06);font-weight:700;font-size:12px;width:fit-content;
}
.kicker b{color:var(--text)}
.hero h1{margin-top:16px;font-size:54px;line-height:1.06;letter-spacing:-.03em;font-weight:900}
.hero p{margin-top:16px;color:var(--muted);font-size:17px;max-width:60ch}
.hero-cta{margin-top:22px;display:flex;gap:12px;align-items:center}
@media (max-width:980px){.hero-cta{justify-content:center;flex-wrap:wrap}.hero p{margin-left:auto;margin-right:auto}.kicker{margin-left:auto;margin-right:auto}}
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:10px;border-radius:14px;padding:12px 18px;
  font-weight:800;font-size:14px;border:1px solid transparent;cursor:pointer;transition:transform .12s ease, background .12s ease, border-color .12s ease;
}
.btn:active{transform:translateY(1px)}
.btn-primary{
  background:linear-gradient(180deg, var(--primary), rgba(59,130,246,.78));color:#fff;
  box-shadow:0 14px 34px rgba(59,130,246,.28);
}
.btn-primary:hover{background:linear-gradient(180deg, var(--primary-hover), rgba(96,165,250,.85))}
.btn-ghost{background:rgba(148,163,184,.06);border-color:var(--border);color:var(--text)}
.btn-ghost:hover{background:rgba(148,163,184,.12)}
.hero-media{
  border-radius:calc(var(--radius) + 6px);border:1px solid var(--border);overflow:hidden;box-shadow:var(--shadow);
  background:rgba(2,6,23,.35);
}
.hero-media img{width:100%;height:100%;object-fit:cover}
.section{padding:72px 0}
.section .title{font-size:30px;font-weight:900;letter-spacing:-.02em}
.section .subtitle{margin-top:10px;color:var(--muted);max-width:70ch}
.grid-3{margin-top:26px;display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
@media (max-width:980px){.grid-3{grid-template-columns:1fr}}
.card{
  background:linear-gradient(180deg, rgba(148,163,184,.07), rgba(148,163,184,.03));
  border:1px solid var(--border);border-radius:var(--radius);padding:18px;box-shadow:var(--shadow-soft);
}
[data-theme="light"] .card{background:var(--card)}
.card h3{font-size:16px;font-weight:900;margin-bottom:6px}
.card p{color:var(--muted);font-size:14px}
.pills{display:flex;flex-wrap:wrap;gap:10px;margin-top:14px}
.pill{
  border:1px solid var(--border);background:rgba(148,163,184,.06);color:var(--text);
  padding:10px 12px;border-radius:14px;font-weight:800;font-size:13px;
}
.pill span{color:var(--muted);font-weight:700}
.split{display:grid;grid-template-columns:1fr 1fr;gap:18px;align-items:stretch;margin-top:26px}
@media (max-width:980px){.split{grid-template-columns:1fr}}
.testimonial{background:var(--section);border:1px solid var(--border);border-radius:var(--radius);padding:20px}
.testimonial p{color:var(--muted);margin-bottom:10px}
.testimonial .who{font-weight:900}
.cta{
  padding:78px 0;
  background: linear-gradient(
    180deg,
    rgba(11,18,32,.96),
    rgba(11,18,32,.88)
  );
  border-top:1px solid rgba(255,255,255,.08);
  border-bottom:1px solid rgba(255,255,255,.08);
}

.cta h2{font-size:36px;font-weight:950;letter-spacing:-.02em;text-align:center}
.cta p{margin-top:10px;color:rgba(255,255,255,.85);max-width:70ch;margin-left:auto;margin-right:auto;text-align:center}
.contact-form{margin:22px auto 0;max-width:640px;display:grid;grid-template-columns:1fr 1fr;gap:12px}
.contact-form .full{grid-column:1/-1}
.contact-form input,.contact-form select,.contact-form textarea{
  width:100%;padding:12px 12px;border-radius:14px;border:1px solid rgba(255,255,255,.25);
  background:rgba(2,6,23,.20);color:#fff;font-weight:700;outline:none;
}
.contact-form textarea{min-height:120px;resize:vertical}
.contact-form input::placeholder,.contact-form textarea::placeholder{color:rgba(255,255,255,.65)}
.contact-form select option{color:#0f172a}
.form-status{margin-top:10px;font-weight:800;text-align:center}
@media (max-width:860px){.contact-form{grid-template-columns:1fr}}
footer{padding:34px 0;border-top:1px solid var(--border);color:var(--muted);text-align:center}
.footer-links{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;margin-top:10px}
.footer-links a{color:var(--muted);font-weight:700}
.footer-links a:hover{color:var(--text)}
/* ===============================
   CONTACT FORM – LIGHT MODE CARD
   =============================== */

/* Light mode: λευκό κουτί */
[data-theme="light"] .contact-form{
  background:#ffffff;
  padding:28px;
  border-radius:18px;
  box-shadow:0 20px 50px rgba(2,6,23,.12);
}

/* Inputs στο light mode */
[data-theme="light"] .contact-form input,
[data-theme="light"] .contact-form textarea,
[data-theme="light"] .contact-form select{
  background:#f8fafc;
  color:#0f172a;
  border:1px solid rgba(15,23,42,.15);
}

/* Placeholder */
[data-theme="light"] .contact-form input::placeholder,
[data-theme="light"] .contact-form textarea::placeholder{
  color:#64748b;
}

/* Button στο light mode */
[data-theme="light"] .contact-form .btn-primary{
  background:linear-gradient(180deg, #2563eb, #1e40af);
  color:#ffffff;
}
/* ===============================
   CTA SECTION – LIGHT MODE FIX
   =============================== */

[data-theme="light"] .cta{
  background:#f8fafc; /* ίδιο με υπόλοιπη light σελίδα */
  border-top:1px solid rgba(2,6,23,.08);
  border-bottom:1px solid rgba(2,6,23,.08);
}

/* Τίτλος στο light mode */
[data-theme="light"] .cta h2{
  color:#0f172a;
}

/* Υπότιτλος στο light mode */
[data-theme="light"] .cta p{
  color:#475569;
}
.form-status{
  margin-top:16px;
  font-weight:800;
  font-size:14px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  opacity:0;
  transform:translateY(-4px);
  transition:all .25s ease;
}

.form-status.show{
  opacity:1;
  transform:translateY(0);
}

.form-status.success{
  color:#22c55e; /* πράσινο success */
}

.form-status.error{
  color:#ef4444;
}

.form-status .status-icon{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:22px;
  height:22px;
  border-radius:50%;
  background:rgba(34,197,94,.15);
  color:#22c55e;
  font-size:14px;
  font-weight:900;
}

/* =========================================
   NAVIGATION – CLEAN REFACTOR (NO UI CHANGE)
   Scope: NAV + DROPDOWN only
========================================= */

/* ======================
   BASE NAV (ALL DEVICES)
====================== */

.nav {
  display: flex;
  align-items: center;
  gap: 18px;
}

.nav a,
.dropdown-toggle {
  font-size: 14px;
  font-weight: 600;
  color: var(--muted);
  padding: 10px 12px;
  border-radius: 10px;
}

.nav a:hover,
.dropdown-toggle:hover {
  color: var(--text);
  background: rgba(148,163,184,.10);
}

/* Remove pill styling from dropdown toggle */
.nav .dropdown-toggle {
  background: transparent;
  border: 0;
  box-shadow: none;
}

/* Active / hover state */
.nav-item.has-dropdown:hover > .dropdown-toggle,
.nav-item.has-dropdown.open > .dropdown-toggle {
  background: rgba(59,130,246,.16);
  color: var(--text);
}

.nav-item {
  position: relative;
}

/* ======================
   DESKTOP DROPDOWN
====================== */

.dropdown {
  position: absolute;
  top: 100%;
  left: 50%;
  transform: translateX(-50%);

  display: none;
  grid-template-columns: 1fr 1fr;
  gap: 22px;

  min-width: 560px;
  padding: 22px;

  background: var(--section);
  border: 1px solid var(--border);
  border-radius: 18px;
  box-shadow: var(--shadow);

  z-index: 1000;
}

.nav-item.has-dropdown:hover .dropdown {
  display: grid;
}

/* Dropdown columns */
.dropdown-col {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

/* Section title */
.dropdown-title {
  position: relative;
  font-weight: 800;
  font-size: 14px;
  margin-bottom: 12px;
  padding-bottom: 8px;
  color: var(--text);
}

/* Underline */
.dropdown-title::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 32px;
  height: 2px;
  border-radius: 2px;
  background: linear-gradient(
    90deg,
    var(--primary),
    rgba(59,130,246,0)
  );
}

/* Dropdown links */
.dropdown a {
  display: flex;
  flex-direction: column;
  gap: 4px;
  padding: 6px 0;
  font-size: 14px;
}

.dropdown a strong {
  font-weight: 800;
  color: var(--text);
}

.dropdown a span {
  font-size: 13px;
  color: var(--muted);
}

/* CTA inside dropdown */
.dropdown-cta {
  grid-column: 1 / -1;
  display: flex;
  gap: 12px;
  margin-top: 18px;
}

.dropdown-cta .btn {
  padding: 10px 16px;
  font-size: 14px;
  border-radius: 12px;
}

/* ======================
   MOBILE NAV (SINGLE BREAKPOINT)
====================== */

@media (max-width: 860px) {

  /* Base mobile nav */
  .nav {
    display: none;
  }

  .menu-toggle {
    display: inline-flex;
  }

  /* Open state */
  .nav.show {
    display: flex;
    flex-direction: column;
    gap: 8px;

    position: fixed;
    top: 72px;
    left: 50%;
    transform: translateX(-50%);

    width: 92%;
    max-width: 420px;
    padding: 14px;

    background: rgba(8,15,30,.98);
    backdrop-filter: blur(12px);
    border-radius: 18px;
    box-shadow: var(--shadow-soft);

    max-height: calc(100vh - 90px);
    overflow-y: auto;

    z-index: 3000;

    align-items: center;
    text-align: center;
  }

  .nav a,
  .dropdown-toggle {
    padding: 12px 14px;
    font-size: 15px;
    border-radius: 12px;
  }

  /* ======================
     MOBILE DROPDOWN
  ====================== */

  .dropdown {
    position: static;
    transform: none;

    display: none;
    grid-template-columns: 1fr;
    gap: 12px;

    margin-top: 8px;
    padding: 14px;

    background: rgba(255,255,255,.04);
    border-radius: 14px;
    text-align: center;
  }

  .has-dropdown.open .dropdown {
    display: grid;
  }

  /* Center dropdown content */
  .dropdown-col {
    align-items: center;
  }

  .dropdown-title {
    text-align: center;
  }

  .dropdown-title::after {
    left: 50%;
    transform: translateX(-50%);
    width: 38px;
  }

  /* Hide descriptions on mobile */
  .dropdown a span {
    display: none;
  }

  /* CTA stack */
  .dropdown-cta {
    flex-direction: column;
    align-items: center;
  }

  .dropdown-cta .btn {
    width: 100%;
    max-width: 280px;
  }
}


/* =====================================
   GLOBAL MOBILE TYPOGRAPHY (FINAL)
   Applies to all pages
===================================== */
@media (max-width: 768px) {

  .page h1 {
    font-size: clamp(28px, 7vw, 36px);
    line-height: 1.15;
  }

  .page h2 {
    font-size: clamp(22px, 5.5vw, 28px);
    line-height: 1.25;
  }

  .page h3 {
    font-size: 20px;
  }

  .page p,
  .page li {
    font-size: 15.5px;
    line-height: 1.6;
  }

  .page .hero p {
    max-width: 42ch;
  }

  .page .hero-cta {
    flex-direction: column;
    gap: 12px;
  }

  .page .hero-cta .btn {
    width: 100%;
  }

  .page .hero-media img {
    max-height: 180px;
    width: 100%;
    object-fit: contain;
  }
}
