/* ---------- Base ---------- */
:root {
  --bg:#0f172a;
  --card:#0b1220;
  --muted:#94a3b8;
  --txt:#e5e7eb;
  --brand:#f59e0b;
  --stroke:#1f2937;
}

* { box-sizing:border-box; margin:0; padding:0; }
body {
  margin:0;
  background:var(--bg);
  color:var(--txt);
  font-family:system-ui, -apple-system, Segoe UI, Roboto, Inter, Arial;
  line-height:1.6;
}

/* ---------- Header ---------- */
header {
  max-width:1200px;
  margin:24px auto 12px;
  padding:0 16px;
  display:flex;
  justify-content:space-between;
  align-items:center;
}
.brand {
  font-weight:700;
  font-size:22px;
}

/* ---------- Language selector ---------- */
.lang-select select {
  background:#0b1220;
  border:1px solid #263141;
  color:#e5e7eb;
  padding:6px 10px;
  border-radius:8px;
}
.lang-select label {
  margin-right:6px;
  font-size:14px;
}

/* ---------- Hero section ---------- */
.hero {
  max-width:1200px;
  margin:0 auto;
  padding:24px 16px;
  border:1px dashed #263141;
  border-radius:16px;
  background:linear-gradient(180deg,#0b1220,transparent);
  text-align:left;
}
.hero h1 {
  margin:0 0 6px;
  font-size:28px;
}
.hero p {
  margin:0;
  color:#b6c2d1;
}

/* Extra hero elements */
.exclusive-note {
  margin-top:10px;
  font-size:15px;
  color:#e5e7eb;
}
.exclusive-note strong { color:#f59e0b; }
.contact { margin-top:6px; font-size:14px; }
.contact a { color:#bfe1ff; text-decoration:none; font-weight:600; }
.contact a:hover { text-decoration:underline; }

/* ---------- Grid & Cards ---------- */
.grid {
  max-width:1200px;
  margin:24px auto;
  padding:0 16px;
  display:grid;
  gap:20px;
  grid-template-columns:repeat(auto-fit,minmax(280px,1fr));
}
.card {
  background:var(--card);
  border:1px solid var(--stroke);
  border-radius:16px;
  overflow:hidden;
  box-shadow:0 10px 30px rgba(0,0,0,.35);
}
.card img {
  width:100%;
  height:200px;
  object-fit:cover;
  display:block;
}
.p16 { padding:16px; }
h3 { margin:0 0 6px; font-size:18px; }
.muted { color:var(--muted); font-size:14px; }

.badges { display:flex; gap:8px; flex-wrap:wrap; margin:8px 0; }
.badge {
  background:#111827;
  border:1px solid #263141;
  color:#b6c2d1;
  padding:4px 8px;
  border-radius:999px;
  font-size:12px;
}

/* ---------- Buttons ---------- */
.cta,
.btn {
  display:inline-flex;
  align-items:center;
  gap:8px;
  margin-top:12px;
  padding:10px 14px;
  background:var(--brand);
  color:#1f2937;
  font-weight:600;
  border-radius:10px;
  text-decoration:none;
}
.btn-ghost,
.cta--alt {
  background:#38bdf8;
  color:#0b1220;
}
.btn-back {
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:8px 12px;
  border-radius:10px;
  text-decoration:none;
  background:var(--brand);
  color:#1f2937;
  font-weight:700;
}

/* ---------- Project pages ---------- */
.wrap {
  max-width:1100px;
  margin:16px auto 40px;
  padding:0 16px;
}
.crumbs {
  margin:8px 0 14px;
  color:var(--muted);
}
.crumbs a {
  color:#bfe1ff;
  text-decoration:none;
}

/* Hero for project pages */
.hero-image {
  max-width:100%;
  height:auto;
  border-radius:8px;
  margin-bottom:15px;
}
.hero-title { font-size:26px; margin:8px 0; }
.subtitle { color:#b6c2d1; margin-bottom:12px; }

/* Content boxes */
.box {
  background:var(--card);
  border:1px solid #1f2937;
  border-radius:14px;
  padding:16px;
  margin:16px 0;
}
.grid { display:grid; gap:16px; grid-template-columns:repeat(auto-fit,minmax(260px,1fr)); }
.price { font-size:18px; font-weight:700; margin-bottom:6px; }
.tag {
  display:inline-block;
  background:#111827;
  border:1px solid #263141;
  border-radius:999px;
  padding:4px 10px;
  margin-right:6px;
  color:#b6c2d1;
  font-size:12px;
}

/* Galleries */
.gallery {
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(260px,1fr));
  gap:12px;
}
.gallery img {
  width:100%;
  height:220px;
  object-fit:cover;
  border-radius:12px;
  border:1px solid #223146;
}

/* ---------- Lists ---------- */
ul { padding-left:18px; }
li { margin:6px 0; }

/* ---------- Footer ---------- */
footer, .site-footer {
  max-width:1200px;
  margin:36px auto 40px;
  color:#9aa6b2;
  padding:0 16px;
  font-size:13px;
  text-align:left;
}
/* ==== FIXES: hero contrast & global text ==== */
.hero{
  background:#0b1220;                /* πιο σκούρο, χωρίς έντονο fade */
  border:1px solid #263141;
  box-shadow:0 8px 30px rgba(0,0,0,.35) inset, 0 10px 30px rgba(0,0,0,.25);
}
.hero h1{ color:#e5e7eb; }
.hero p{ color:#d2e5ff; }            /* πιο φωτεινό για απόλυτη αναγνωσιμότητα */
.hero a{ color:#ffd166; }

/* Εξασφάλιση ότι σε σκοτεινές κάρτες/κουτιά το κείμενο παραμένει φωτεινό */
.card,.box,.p16{ color:#e5e7eb; }
.card p,.card li,.card h1,.card h2,.card h3,
.box p,.box li,.box h1,.box h2,.box h3,
.muted{ color:#cfe0f5; }
.badge{ color:#b6c2d1; }

/* Μικρό boost αντίθεσης στα κουμπιά */
.cta{ filter:none; }


