/* Alūksnes novada kapi – publiskā vietne. Vakara kapsētas tēma, adaptīva (telefons → dators). Bez inline stiliem (CSP). */
:root {
  --night:#0c1a1f; --ink:#eef0e6; --ink2:#c3cbbd; --muted:#b2bdb1; --gold:#e9c46a; --goldfg:#1b1a12;
  --card:rgba(12,28,26,.80); --card2:rgba(255,255,255,.06); --bd:rgba(255,255,255,.16); --acc:#e9c46a; --warn:rgba(233,196,106,.14);
  --serif: Georgia, "Iowan Old Style", "Palatino Linotype", Palatino, serif;
  --sans: system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
}
* { box-sizing:border-box; }
html { -webkit-text-size-adjust:100%; }
body { margin:0; min-height:100vh; background:var(--night); color:var(--ink); font:17px/1.6 var(--sans); display:flex; flex-direction:column; overflow-x:hidden; }
a { color:var(--gold); text-underline-offset:3px; }
a:hover { color:#fff; }
:focus-visible { outline:2px solid var(--gold); outline-offset:3px; border-radius:4px; }
.wrap { width:100%; max-width:980px; margin:0 auto; padding:0 clamp(14px,4vw,24px); }

/* Fons pārējām lapām: tā pati ainava, ļoti blāva */
body.page { background:linear-gradient(#0b171c,#12261f 70%,#0b1410) fixed; }
body.page::before { content:""; position:fixed; inset:0; z-index:0; background:url(/assets/ainava.svg) center bottom / cover no-repeat; opacity:.28; pointer-events:none; }
body.page > * { position:relative; z-index:1; }

/* Galvene un kājene */
.top { padding:14px 0; font-size:.95rem; }
.top .wrap { max-width:1180px; display:flex; justify-content:space-between; align-items:center; gap:6px 18px; flex-wrap:wrap; }
.brand { color:var(--ink); text-decoration:none; font-family:var(--serif); font-size:1.12rem; letter-spacing:.02em; white-space:nowrap; }
.brand .cross { color:var(--gold); margin-right:4px; }
.top nav { display:flex; flex-wrap:wrap; gap:4px 18px; }
.top nav a { color:var(--ink2); text-decoration:none; padding:6px 0; }
.top nav a:hover { color:#fff; text-decoration:underline; }
.foot { margin-top:auto; padding:18px 0 16px; font-size:.82rem; color:var(--ink2); text-align:center; }
.foot a { color:var(--ink); }

/* Saturs */
.panel { margin-top:6px; margin-bottom:28px; padding:clamp(18px,4vw,34px) clamp(16px,4vw,32px); background:var(--card); border:1px solid var(--bd); border-radius:18px; backdrop-filter:blur(6px); -webkit-backdrop-filter:blur(6px); box-shadow:0 18px 50px rgba(0,0,0,.35); }
h1,h2,h3 { font-family:var(--serif); font-weight:400; letter-spacing:.01em; line-height:1.2; }
h1 { font-size:clamp(1.7rem,5vw,2.4rem); margin:.1em 0 .5em; }
h2 { font-size:clamp(1.25rem,3.4vw,1.5rem); margin:1.5em 0 .5em; }
h3 { font-size:1.12rem; margin:0 0 6px; }
p { margin:.6em 0; }
.muted,.hint { color:var(--muted); }
.hint { font-size:.88rem; margin:.5em 0 0; }
.msg { background:var(--warn); border:1px solid rgba(233,196,106,.4); padding:10px 14px; border-radius:10px; }

/* Meklēšana */
.search label { display:block; font-weight:600; margin-bottom:6px; }
.row { display:flex; gap:8px; flex-wrap:wrap; }
input,select,button { font:inherit; padding:11px 13px; min-height:46px; border:1px solid var(--bd); border-radius:10px; background:rgba(255,255,255,.08); color:var(--ink); }
input::placeholder { color:var(--muted); }
select option { color:#111; background:#fff; }
.row input[type=search] { flex:1 1 220px; min-width:0; }
button { background:var(--gold); color:var(--goldfg); border-color:var(--gold); cursor:pointer; font-weight:700; }
button:hover { background:#f3d487; }
@media (max-width:520px) { .row > * { flex:1 1 100%; } }

/* Kartītes, tabulas */
.cards { display:grid; grid-template-columns:repeat(auto-fill,minmax(min(100%,260px),1fr)); gap:14px; }
.card { background:var(--card2); border:1px solid var(--bd); border-radius:14px; padding:14px 16px; }
.card p { margin:.25em 0; }
.table-wrap { overflow-x:auto; -webkit-overflow-scrolling:touch; border:1px solid var(--bd); border-radius:12px; }
table { border-collapse:collapse; width:100%; min-width:520px; }
th,td { text-align:left; padding:10px 12px; border-bottom:1px solid var(--bd); vertical-align:top; }
tbody tr:last-child td { border-bottom:0; }
th { font:600 .78rem var(--sans); text-transform:uppercase; letter-spacing:.06em; color:var(--muted); background:rgba(255,255,255,.04); }
tbody tr:hover { background:rgba(255,255,255,.04); }
.facts { display:grid; grid-template-columns:max-content 1fr; gap:6px 18px; background:var(--card2); border:1px solid var(--bd); border-radius:12px; padding:14px 18px; margin:0; }
.facts dt { color:var(--muted); } .facts dd { margin:0; }
@media (max-width:520px) { .facts { grid-template-columns:1fr; gap:0; } .facts dt { margin-top:8px; font-size:.85rem; } }
.people { padding-left:20px; } .people li { margin:.4em 0; }
.maplink { display:inline-block; margin:6px 0 14px; font-weight:600; }

/* Pirmā lapa */
body.landing { background:var(--night); }
.scene { position:fixed; inset:0; z-index:0; overflow:hidden; }
.scene img { width:100%; height:100%; object-fit:cover; object-position:50% 100%; display:block; }
.fog { position:absolute; left:-20%; width:140%; height:34%; background:radial-gradient(ellipse at center,rgba(200,215,205,.20),rgba(200,215,205,0) 65%); filter:blur(8px); animation:drift 60s linear infinite alternate; }
.fog.f1 { bottom:12%; } .fog.f2 { bottom:2%; animation-duration:85s; animation-direction:alternate-reverse; opacity:.8; }
@keyframes drift { from { transform:translateX(-6%); } to { transform:translateX(6%); } }
body.landing > header, body.landing > main, body.landing > footer { position:relative; z-index:2; }
.hero { flex:1; display:flex; flex-direction:column; align-items:center; text-align:center; padding:2vh 20px 8vh; font-family:var(--serif); }
.eyebrow { font:600 .78rem/1 var(--sans); letter-spacing:.32em; text-transform:uppercase; color:var(--gold); margin:4vh 0 14px; }
.hero h1 { font-size:clamp(2.1rem,6.4vw,4.1rem); line-height:1.08; margin:0 0 .35em; text-shadow:0 2px 24px rgba(0,0,0,.65); }
.hero h1::after { content:""; display:block; width:90px; height:1px; margin:.5em auto 0; background:linear-gradient(90deg,transparent,var(--gold),transparent); }
.hero .lead { max-width:56ch; margin:.6em auto 0; font-size:clamp(1rem,2.4vw,1.2rem); text-shadow:0 1px 14px rgba(0,0,0,.75); }
.alt { display:flex; flex-wrap:wrap; justify-content:center; gap:2px 6px; max-width:100%; margin-top:24px; font:.95rem/1.9 var(--sans); color:var(--ink2); text-shadow:0 1px 8px rgba(0,0,0,.8); }
.alt a { color:var(--ink); margin:0 6px; }
.alt .dot { display:none; }
html { overflow-x:hidden; }

/* Kapakmens – poga */
.stone { display:inline-block; margin-top:5vh; text-decoration:none; filter:drop-shadow(0 18px 18px rgba(0,0,0,.55)); transition:transform .35s cubic-bezier(.2,.8,.2,1), filter .35s; -webkit-tap-highlight-color:transparent; }
.stone svg { display:block; width:clamp(170px,40vw,230px); height:auto; overflow:visible; }
.stone .t { font-family:Georgia,serif; fill:#3a3d38; paint-order:stroke; stroke:rgba(255,255,255,.45); stroke-width:1.1px; letter-spacing:.06em; }
.stone .glow { opacity:0; transition:opacity .35s; }
.stone:hover,.stone:focus-visible { transform:translateY(-6px); filter:drop-shadow(0 22px 22px rgba(0,0,0,.6)) drop-shadow(0 0 22px rgba(233,196,106,.45)); outline:none; }
.stone:hover .glow,.stone:focus-visible .glow { opacity:1; }
.stone:focus-visible .shape { stroke:var(--gold); stroke-width:3; }
.stone:active { transform:translateY(-1px); }
@media (min-width:900px) { .stone svg { width:230px; } }
@media (max-height:640px) and (orientation:landscape) { .eyebrow { margin-top:1vh; } .stone svg { width:140px; } .stone { margin-top:2vh; } }
@media (prefers-reduced-motion:reduce) { .fog { animation:none; } .stone { transition:none; } }
@media print { body.page::before,.scene { display:none; } body { background:#fff; color:#000; } .panel { background:#fff; border:0; box-shadow:none; } a { color:#000; } }
