/* ============ Greece Investor Landing — RTL Hebrew ============ */
:root{
  --bg:#fbfbf9;
  --surface:#ffffff;
  --tint:#eef3f6;
  --ink:#16242e;
  --ink-soft:#4d5d68;
  --line:#dde5ea;
  --accent:#13688f;        /* aegean blue */
  --accent-soft:#e2eef4;
  --sea:#0e7c86;
  --sand:#9a6b1f;
  --amber-bg:#fdf4e3;
  --amber-line:#e8c98a;
  --amber-ink:#7a5410;
  --ok:#0e7c5a;
  --anchor:#13688f;
  --radius:14px;
  --shadow:0 1px 2px rgba(22,36,46,.05), 0 8px 28px -16px rgba(22,36,46,.22);
  --maxw:1120px;
  --font:"Heebo", system-ui, -apple-system, "Segoe UI", Arial, sans-serif;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family:var(--font);
  color:var(--ink);
  background:var(--bg);
  line-height:1.6;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}
.wrap{max-width:var(--maxw);margin-inline:auto;padding-inline:20px}
h1,h2,h3{line-height:1.2;margin:0;font-weight:700;letter-spacing:-.01em}
a{color:inherit}
img{max-width:100%;display:block}

/* English / numerals stay LTR inside RTL flow */
.ltr{direction:ltr;unicode-bidi:isolate}
bdi{unicode-bidi:isolate}

.skip-link{position:absolute;inset-inline-start:8px;top:-60px;background:var(--accent);color:#fff;padding:10px 16px;z-index:200;border-radius:8px;transition:top .15s}
.skip-link:focus{top:8px}

/* ---------- Header / nav ---------- */
.site-header{position:sticky;top:0;z-index:100;background:rgba(251,251,249,.88);backdrop-filter:saturate(1.4) blur(10px);border-bottom:1px solid var(--line)}
.nav-wrap{display:flex;align-items:center;justify-content:space-between;height:62px}
.brand{display:flex;align-items:center;gap:9px;text-decoration:none;font-weight:700;font-size:1.02rem}
.brand-mark{color:var(--accent);font-size:.85em}
.site-nav{display:flex;gap:6px}
.site-nav a{text-decoration:none;color:var(--ink-soft);font-weight:500;font-size:.95rem;padding:8px 12px;border-radius:8px;transition:background .15s,color .15s}
.site-nav a:hover,.site-nav a.active{background:var(--accent-soft);color:var(--accent)}

/* ---------- Hero ---------- */
.hero{padding-block:64px 52px;background:
  radial-gradient(120% 120% at 100% 0%, var(--accent-soft) 0%, transparent 55%),
  linear-gradient(180deg,#fff 0%, var(--bg) 100%);
  border-bottom:1px solid var(--line)}
.eyebrow{color:var(--accent);font-weight:600;letter-spacing:.02em;margin:0 0 14px;font-size:.95rem}
.hero h1{font-size:clamp(1.85rem,4.5vw,3rem);font-weight:800;max-width:20ch}
.hero-sub{font-size:clamp(1.05rem,2vw,1.3rem);color:var(--ink-soft);margin:16px 0 0;max-width:52ch}
.hero-stats{display:flex;flex-wrap:wrap;gap:14px;margin-top:32px}
.stat{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:16px 20px;min-width:150px;box-shadow:var(--shadow)}
.stat .num{font-size:1.5rem;font-weight:800;color:var(--accent);display:block}
.stat .lbl{font-size:.85rem;color:var(--ink-soft);margin-top:2px}
.fx-note{margin-top:26px;font-size:.85rem;color:var(--ink-soft)}

/* ---------- Sections ---------- */
.section{padding-block:56px}
.section-tint{background:var(--tint)}
.section h2{font-size:clamp(1.5rem,3vw,2.1rem);margin-bottom:14px}
.lead{color:var(--ink-soft);max-width:70ch;font-size:1.05rem;margin:0 0 24px}

/* ---------- Criteria ---------- */
.criteria-list{margin:0;padding:0;list-style:none;display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:12px 28px}
.criteria-list li{position:relative;padding-inline-start:30px;color:var(--ink);font-size:.98rem;line-height:1.55}
.criteria-list li::before{content:"✓";position:absolute;inset-inline-start:0;top:1px;width:20px;height:20px;border-radius:50%;background:var(--accent-soft);color:var(--accent);font-weight:700;font-size:.8rem;display:grid;place-items:center}

/* ---------- Cards ---------- */
.cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(330px,1fr));gap:26px}
.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow);display:flex;flex-direction:column;transition:transform .18s,box-shadow .18s}
.card:hover{transform:translateY(-3px);box-shadow:0 12px 40px -18px rgba(22,36,46,.4)}
.card.is-anchor{border-color:var(--anchor);box-shadow:0 0 0 1px var(--anchor), var(--shadow)}

/* gallery */
.gallery{position:relative;aspect-ratio:3/2;background:var(--tint);overflow:hidden;cursor:pointer}
.gallery img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0;opacity:0;transition:opacity .35s}
.gallery img.show{opacity:1}
.gallery.is-placeholder{cursor:default;background:
  radial-gradient(120% 120% at 30% 0%, var(--accent-soft) 0%, transparent 60%),
  linear-gradient(160deg,#f4f7f9 0%, #e7eef2 100%)}
.ph-inner{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;color:var(--ink-soft)}
.ph-inner .ph-ic{font-size:2.2rem}
.ph-inner .ph-text{font-weight:600;font-size:.95rem}
.g-btn{position:absolute;top:50%;transform:translateY(-50%);width:38px;height:38px;border-radius:50%;border:none;background:rgba(255,255,255,.9);color:var(--ink);font-size:1.3rem;cursor:pointer;display:grid;place-items:center;box-shadow:0 2px 8px rgba(0,0,0,.2);z-index:3}
/* RTL: "next" advances visually leftwards */
.g-next{inset-inline-start:10px}
.g-prev{inset-inline-end:10px}
.g-btn:hover{background:#fff}
.g-dots{position:absolute;bottom:10px;inset-inline:0;display:flex;justify-content:center;gap:6px;z-index:3}
.g-dot{width:7px;height:7px;border-radius:50%;background:rgba(255,255,255,.55);border:none;padding:0;cursor:pointer}
.g-dot.active{background:#fff;width:18px;border-radius:4px}

/* badges */
.badge-anchor{position:absolute;top:12px;inset-inline-end:12px;background:var(--anchor);color:#fff;font-size:.78rem;font-weight:600;padding:5px 12px;border-radius:999px;z-index:3;box-shadow:0 2px 8px rgba(0,0,0,.25)}
.badge-stack{position:absolute;top:12px;inset-inline-start:12px;display:flex;flex-direction:column;gap:6px;align-items:flex-start;z-index:3}
.badge-pill{color:#fff;font-size:.74rem;font-weight:600;padding:5px 11px;border-radius:999px;box-shadow:0 2px 8px rgba(0,0,0,.25);letter-spacing:.01em}
.badge-rent{background:var(--ok)}
.badge-sea{background:var(--sea)}
.badge-beach{background:var(--sand)}

.card-body{padding:18px 20px 22px;display:flex;flex-direction:column;gap:14px;flex:1}
.card-head h3{font-size:1.18rem}
.card-head .addr{color:var(--ink-soft);font-size:.9rem;margin-top:3px}
.card-head .hood{display:inline-block;margin-top:8px;font-size:.8rem;color:var(--accent);background:var(--accent-soft);padding:3px 10px;border-radius:999px}

.price-row{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap;border-block:1px solid var(--line);padding-block:14px}
.price-eur{font-size:1.6rem;font-weight:800}
.price-ils{font-size:1rem;color:var(--ink-soft)}
.ppsm-pill{margin-inline-start:auto;text-align:center;background:var(--accent-soft);border-radius:10px;padding:6px 12px}
.ppsm-pill .v{font-weight:800;color:var(--accent);font-size:1.05rem;display:block}
.ppsm-pill .k{font-size:.7rem;color:var(--ink-soft)}

.stats-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px 18px;font-size:.92rem}
.stats-grid .row{display:flex;justify-content:space-between;gap:8px;padding-block:3px;border-bottom:1px dotted var(--line)}
.stats-grid .row .k{color:var(--ink-soft)}
.stats-grid .row .v{font-weight:600;text-align:start}
.stats-grid .row .v .ok{color:var(--ok);font-weight:700}

.price-note{font-size:.82rem;color:var(--amber-ink);background:var(--amber-bg);border:1px solid var(--amber-line);border-radius:8px;padding:8px 10px;margin:0}

.summary{font-size:.95rem;color:var(--ink-soft);margin:0}
.highlights{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:6px;font-size:.9rem}
.highlights li{padding-inline-start:20px;position:relative}
.highlights li::before{content:"✓";position:absolute;inset-inline-start:0;color:var(--accent);font-weight:700}

/* ---------- Comparison table ---------- */
.table-scroll{overflow-x:auto;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow)}
table.compare{width:100%;border-collapse:collapse;font-size:.92rem;min-width:820px}
.compare thead th{position:sticky;top:0;background:var(--ink);color:#fff;font-weight:600;text-align:start;padding:12px 14px;white-space:nowrap;cursor:pointer;user-select:none}
.compare thead th:hover{background:#243744}
.compare thead th .arrow{opacity:.4;font-size:.8em;margin-inline-start:5px}
.compare thead th[aria-sort="ascending"] .arrow,
.compare thead th[aria-sort="descending"] .arrow{opacity:1}
.compare tbody td{padding:11px 14px;border-bottom:1px solid var(--line);white-space:nowrap;vertical-align:top}
.compare tbody tr:hover{background:var(--accent-soft)}
.compare tbody tr.is-anchor{background:#eaf3f8}
.compare tbody tr.is-anchor td:first-child{box-shadow:inset 3px 0 0 var(--anchor)}
.compare .b-name{font-weight:600;display:block}
.compare .b-name .anchor-dot{color:var(--anchor);margin-inline-end:4px}
.compare .area-sub{display:block;color:var(--ink-soft);font-size:.82em;font-weight:400;white-space:normal;max-width:22ch}
.compare .ils{color:var(--ink-soft);font-size:.85em}
.compare .ok{color:var(--ok);font-weight:700}

/* ---------- Footer ---------- */
.site-footer{background:var(--ink);color:#c4ced6;padding-block:40px;font-size:.88rem}
.site-footer .disclaimer{max-width:90ch;margin:0 0 12px}
.foot-meta{color:#8a96a1;margin:0}

/* ---------- Lightbox ---------- */
.lightbox{position:fixed;inset:0;background:rgba(10,15,19,.92);z-index:300;display:grid;place-items:center}
.lightbox[hidden]{display:none}
.lb-img{max-width:92vw;max-height:84vh;object-fit:contain;border-radius:8px}
.lb-close{position:absolute;top:18px;inset-inline-end:18px;background:none;border:none;color:#fff;font-size:1.8rem;cursor:pointer}
.lb-nav{position:absolute;top:50%;transform:translateY(-50%);background:rgba(255,255,255,.12);border:none;color:#fff;font-size:2.4rem;width:54px;height:54px;border-radius:50%;cursor:pointer}
.lb-next{inset-inline-start:18px}
.lb-prev{inset-inline-end:18px}
.lb-nav:hover{background:rgba(255,255,255,.25)}
.lb-count{position:absolute;bottom:22px;inset-inline:0;text-align:center;color:#fff;font-size:.95rem;direction:ltr}

/* ---------- Responsive ---------- */
@media (max-width:640px){
  .site-nav{gap:0}
  .site-nav a{padding:8px 9px;font-size:.9rem}
  .cards{grid-template-columns:1fr}
  .criteria-list{grid-template-columns:1fr}
  .hero{padding-block:44px 38px}
  .stat{flex:1;min-width:130px}
}
@media (prefers-reduced-motion:reduce){
  *{scroll-behavior:auto !important;transition:none !important}
}
