/* ═══════════════════════════════════════════
   LUMOS DIGITAL — Shared Stylesheet
   Mediterranean + Cyprus palette
═══════════════════════════════════════════ */
:root {
  --bg:      #060c14;
  --bg2:     #08101a;
  --bg3:     #0c1622;
  --blue:    #1CB5D8;
  --blue2:   #0ea5c8;
  --sand:    #C49A3E;
  --b-dim:   rgba(28,181,216,0.12);
  --s-dim:   rgba(196,154,62,0.10);
  --fg:      #EDF5FA;
  --fg-mid:  rgba(237,245,250,0.52);
  --fg-dim:  rgba(237,245,250,0.08);
  --r:       18px;
  --r-lg:    26px;
}

*,*::before,*::after { box-sizing:border-box; margin:0; padding:0; }
html { scroll-behavior:smooth; }
body {
  font-family:'Space Grotesk',sans-serif;
  background:var(--bg); color:var(--fg);
  overflow-x:hidden; -webkit-font-smoothing:antialiased;
}
::selection { background:rgba(28,181,216,.22); }

/* ── TYPOGRAPHY ── */
.eyebrow {
  font-size:11px; font-weight:700; letter-spacing:3px;
  text-transform:uppercase; color:var(--blue);
  display:flex; align-items:center; gap:10px; margin-bottom:14px;
}
.eyebrow::before { content:''; display:block; width:24px; height:1.5px; background:var(--blue); }
.eyebrow.center  { justify-content:center; }
.eyebrow.center::before { display:none; }

.section-title {
  font-family:'Space Grotesk',sans-serif;
  font-size:clamp(30px,4.5vw,56px);
  font-weight:800; line-height:1.08; letter-spacing:-1.5px; margin-bottom:18px;
}
.section-sub {
  font-size:17px; color:var(--fg-mid); line-height:1.75; max-width:540px;
}
.section-sub.center { margin:0 auto; text-align:center; }

.reveal { opacity:0; transform:translateY(40px); transition:opacity .85s cubic-bezier(.16,1,.3,1),transform .85s cubic-bezier(.16,1,.3,1); }
.reveal.in { opacity:1; transform:none; }
.d1{transition-delay:.08s} .d2{transition-delay:.18s} .d3{transition-delay:.28s} .d4{transition-delay:.38s} .d5{transition-delay:.48s}

section { padding:110px 24px; }
.section-inner { max-width:1160px; margin:0 auto; }

/* ── NAV ── */
nav { position:fixed; top:0; left:0; right:0; z-index:200; transition:all .4s; }
.nav-inner {
  max-width:1240px; margin:0 auto;
  display:flex; align-items:center; justify-content:space-between;
  padding:22px 40px; transition:all .4s;
}
nav.scrolled .nav-inner {
  background:rgba(6,12,20,.92); backdrop-filter:blur(24px);
  border-bottom:1px solid rgba(28,181,216,.12); padding:14px 40px;
}
.nav-logo {
  font-family:'Space Grotesk',sans-serif; font-weight:800; font-size:18px;
  letter-spacing:-.3px; cursor:default; flex-shrink:0;
  display:flex; align-items:center; gap:10px;
  text-decoration:none; color:var(--fg);
}
.nav-logo-mark {
  width:34px; height:34px; border-radius:10px;
  background:linear-gradient(135deg,var(--blue),var(--blue2));
  display:flex; align-items:center; justify-content:center;
  font-size:15px; font-weight:900; color:#041420;
  box-shadow:0 0 20px rgba(28,181,216,.35);
  font-family:'Space Grotesk',sans-serif; flex-shrink:0;
}
.nav-logo-text { line-height:1; }
.nav-logo-text .accent { color:var(--blue); }

.nav-tabs {
  display:flex; align-items:center; gap:2px;
  background:rgba(255,255,255,.04);
  border:1px solid rgba(28,181,216,.15);
  border-radius:50px; padding:4px;
}
.nav-tab {
  padding:8px 17px; border-radius:50px;
  font-size:13px; font-weight:500; color:var(--fg-mid);
  background:transparent; border:none; cursor:pointer;
  transition:all .25s; white-space:nowrap; text-decoration:none; display:inline-block;
}
.nav-tab:hover { color:var(--fg); background:rgba(28,181,216,.1); }
.nav-tab.active { background:var(--blue); color:#041420; font-weight:700; box-shadow:0 0 18px rgba(28,181,216,.4); }

.nav-right { display:flex; align-items:center; gap:14px; flex-shrink:0; }
.lang-toggle { display:flex; background:rgba(255,255,255,.05); border:1px solid rgba(196,154,62,.2); border-radius:50px; padding:3px; }
.lang-btn {
  padding:5px 13px; border-radius:50px;
  font-family:'Space Grotesk',sans-serif; font-weight:700; font-size:12px; letter-spacing:1px;
  color:var(--fg-mid); transition:all .25s; border:none; background:transparent; cursor:pointer;
}
.lang-btn.active { background:var(--sand); color:#041420; box-shadow:0 0 14px rgba(196,154,62,.45); }

.mobile-menu-btn {
  display:none;
  background:rgba(28,181,216,.1); border:1px solid rgba(28,181,216,.25);
  border-radius:10px; padding:8px 12px; color:var(--blue); font-size:18px; cursor:pointer;
}
@media(max-width:1024px){ .nav-tabs{display:none;} .mobile-menu-btn{display:flex;align-items:center;} }
@media(max-width:768px){ .nav-inner{padding:14px 20px;} nav.scrolled .nav-inner{padding:12px 20px;} }

.mobile-menu {
  display:none; position:fixed; inset:0; z-index:199;
  background:rgba(6,12,20,.98); backdrop-filter:blur(20px);
  flex-direction:column; align-items:center; justify-content:center; gap:14px; padding:40px;
}
.mobile-menu.open { display:flex; }
.mobile-menu .nav-tab { font-size:22px; padding:16px 32px; font-family:'Space Grotesk',sans-serif; font-weight:700; }
.mobile-close {
  position:absolute; top:24px; right:24px;
  background:rgba(28,181,216,.1); border:1px solid rgba(28,181,216,.25);
  border-radius:10px; padding:10px 14px; color:var(--blue); font-size:20px; cursor:pointer;
}

/* ── BUTTONS ── */
.btn-primary {
  position:relative; overflow:hidden;
  background:linear-gradient(135deg,var(--blue),var(--blue2));
  color:#041420; font-family:'Space Grotesk',sans-serif; font-weight:700; font-size:15px;
  padding:17px 42px; border-radius:50px; border:none; cursor:pointer;
  transition:all .35s;
  box-shadow:0 0 40px rgba(28,181,216,.28),0 4px 20px rgba(28,181,216,.18);
  text-decoration:none; display:inline-block;
}
.btn-primary:hover { transform:translateY(-3px); box-shadow:0 12px 60px rgba(28,181,216,.48); }
.btn-ghost {
  background:rgba(255,255,255,.04); color:var(--fg);
  font-family:'Space Grotesk',sans-serif; font-weight:500; font-size:15px;
  padding:17px 42px; border-radius:50px;
  border:1.5px solid rgba(237,245,250,.12);
  cursor:pointer; transition:all .3s;
  text-decoration:none; display:inline-flex; align-items:center; gap:10px;
}
.btn-ghost:hover { border-color:rgba(28,181,216,.45); color:var(--blue); background:rgba(28,181,216,.06); transform:translateY(-3px); }

/* ── FORMS ── */
.flabel { font-size:11px; font-weight:600; letter-spacing:1.5px; text-transform:uppercase; color:rgba(237,245,250,.35); margin-bottom:7px; display:block; }
.finput {
  width:100%; background:rgba(28,181,216,.04);
  border:1.5px solid rgba(28,181,216,.1); border-radius:14px;
  padding:13px 18px; color:var(--fg);
  font-family:'Space Grotesk',sans-serif; font-size:15px; outline:none; transition:all .3s;
}
.finput::placeholder { color:rgba(237,245,250,.2); }
.finput:focus { border-color:rgba(28,181,216,.45); background:rgba(28,181,216,.07); box-shadow:0 0 0 3px rgba(28,181,216,.06); }
textarea.finput { resize:vertical; min-height:130px; }
select.finput { appearance:none; cursor:pointer; }

/* ── FOOTER ── */
footer { background:#040810; border-top:1px solid rgba(28,181,216,.07); padding:48px 24px; }
.foot-inner {
  max-width:1160px; margin:0 auto;
  display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:24px;
}
.foot-logo { font-family:'Space Grotesk',sans-serif; font-weight:800; font-size:18px; display:flex; align-items:center; gap:10px; }
.foot-logo-mark { width:30px; height:30px; border-radius:8px; background:linear-gradient(135deg,var(--blue),var(--blue2)); display:flex; align-items:center; justify-content:center; font-size:13px; font-weight:900; color:#041420; font-family:'Space Grotesk',sans-serif; }
.foot-logo-text .accent { color:var(--blue); }
.foot-tag { font-size:12px; color:rgba(237,245,250,.24); margin-top:4px; }
.foot-copy { font-size:12px; color:rgba(237,245,250,.2); }
.foot-icons { display:flex; gap:12px; }
.ficon {
  width:42px; height:42px; border-radius:12px;
  background:rgba(255,255,255,.03); border:1px solid rgba(28,181,216,.1);
  display:flex; align-items:center; justify-content:center; font-size:17px;
  text-decoration:none; transition:all .3s;
}
.ficon:hover { border-color:var(--blue); box-shadow:0 0 20px rgba(28,181,216,.25); transform:translateY(-3px); }

/* ── PAGE HERO (inner pages) ── */
.page-hero {
  position:relative; padding:160px 24px 100px;
  text-align:center; overflow:hidden;
}
.page-hero-bg {
  position:absolute; inset:0; z-index:0;
  background:
    radial-gradient(ellipse 60% 80% at 20% 50%, rgba(28,181,216,.1) 0%, transparent 70%),
    radial-gradient(ellipse 50% 60% at 80% 30%, rgba(196,154,62,.07) 0%, transparent 70%),
    linear-gradient(180deg, var(--bg2) 0%, var(--bg) 100%);
}
.page-hero-grid {
  position:absolute; inset:0; z-index:1; opacity:.04;
  background-image:linear-gradient(rgba(28,181,216,1) 1px, transparent 1px),linear-gradient(90deg,rgba(28,181,216,1) 1px,transparent 1px);
  background-size:60px 60px;
  mask-image:radial-gradient(ellipse 70% 70% at 50% 50%, black 0%, transparent 100%);
}
.page-hero-content { position:relative; z-index:10; max-width:760px; margin:0 auto; }
.page-hero-icon {
  width:80px; height:80px; border-radius:22px;
  background:linear-gradient(135deg,rgba(28,181,216,.15),rgba(28,181,216,.05));
  border:1.5px solid rgba(28,181,216,.25);
  display:flex; align-items:center; justify-content:center; font-size:32px;
  margin:0 auto 32px;
}
.page-hero-title {
  font-family:'Space Grotesk',sans-serif;
  font-size:clamp(40px,6vw,76px);
  font-weight:800; line-height:1.05; letter-spacing:-2px;
  margin-bottom:18px;
}
.page-hero-title span {
  background:linear-gradient(135deg,var(--blue),var(--sand));
  -webkit-background-clip:text; -webkit-text-fill-color:transparent; background-clip:text;
}
.page-hero-desc { font-size:18px; color:var(--fg-mid); line-height:1.75; max-width:500px; margin:0 auto; }

/* ── DETAIL SECTIONS ── */
.detail-section { padding:80px 24px; }
.detail-section:nth-child(even) { background:var(--bg2); }
.detail-inner { max-width:1000px; margin:0 auto; }
.detail-section-title {
  font-family:'Space Grotesk',sans-serif; font-size:clamp(24px,3vw,38px);
  font-weight:800; letter-spacing:-1px; margin-bottom:40px;
  padding-bottom:20px; border-bottom:1px solid rgba(28,181,216,.12);
}

.benefit-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:20px; }
@media(max-width:640px){ .benefit-grid{grid-template-columns:1fr;} }
.benefit-card {
  background:linear-gradient(145deg,rgba(28,181,216,.06),rgba(8,16,26,.8));
  border:1px solid rgba(28,181,216,.12); border-radius:20px; padding:28px;
  display:flex; gap:18px; align-items:flex-start;
  transition:all .35s cubic-bezier(.16,1,.3,1);
}
.benefit-card:hover { border-color:rgba(28,181,216,.3); transform:translateY(-4px); box-shadow:0 16px 40px rgba(28,181,216,.08); }
.benefit-num {
  font-family:'Space Grotesk',sans-serif; font-size:32px; font-weight:800;
  color:rgba(28,181,216,.2); line-height:1; flex-shrink:0; min-width:32px;
}
.benefit-text { font-size:15px; color:rgba(237,245,250,.75); line-height:1.65; padding-top:4px; }

.process-steps { display:flex; flex-direction:column; gap:0; }
.process-step {
  display:flex; gap:24px; align-items:flex-start; position:relative;
  padding-bottom:32px;
}
.process-step:last-child { padding-bottom:0; }
.process-step-left { display:flex; flex-direction:column; align-items:center; flex-shrink:0; }
.process-step-circle {
  width:52px; height:52px; border-radius:50%;
  background:linear-gradient(135deg,var(--blue),var(--blue2));
  display:flex; align-items:center; justify-content:center;
  font-family:'Space Grotesk',sans-serif; font-size:16px; font-weight:800; color:#041420;
  box-shadow:0 0 24px rgba(28,181,216,.3); flex-shrink:0;
}
.process-step-line {
  width:1.5px; flex:1; min-height:32px;
  background:linear-gradient(180deg,rgba(28,181,216,.3),rgba(28,181,216,.05));
  margin-top:8px;
}
.process-step:last-child .process-step-line { display:none; }
.process-step-body { padding-top:12px; }
.process-step-title { font-family:'Space Grotesk',sans-serif; font-size:17px; font-weight:700; margin-bottom:6px; }
.process-step-desc { font-size:14px; color:var(--fg-mid); line-height:1.65; }

.audience-chips { display:flex; flex-wrap:wrap; gap:12px; }
.audience-chip {
  display:flex; align-items:center; gap:10px;
  padding:14px 22px; border-radius:50px;
  background:rgba(28,181,216,.06); border:1px solid rgba(28,181,216,.15);
  font-size:14px; color:rgba(237,245,250,.75);
}
.audience-chip::before { content:'✓'; color:var(--blue); font-weight:700; }

.detail-cta-section {
  background:linear-gradient(135deg,var(--bg2),var(--bg3));
  border-top:1px solid rgba(28,181,216,.1);
  padding:80px 24px; text-align:center;
}
.detail-cta-inner { max-width:600px; margin:0 auto; }
.detail-cta-title {
  font-family:'Space Grotesk',sans-serif; font-size:clamp(28px,4vw,48px);
  font-weight:800; letter-spacing:-1.5px; margin-bottom:16px;
}
.detail-cta-title span {
  background:linear-gradient(135deg,var(--blue),var(--sand));
  -webkit-background-clip:text; -webkit-text-fill-color:transparent; background-clip:text;
}
.detail-cta-sub { font-size:16px; color:var(--fg-mid); margin-bottom:36px; }
