/*
Theme Name: Vallavanem
Theme URI: https://vallavanem.ee
Author: vallavanem.ee
Description: Eesti omavalitsusjuhtide register — kõik vallavanemad ja linnapead ühest kohast. Käsitsi kirjutatud teema, ilma lehitsejate ja pluginateta.
Version: 1.0.0
Requires PHP: 7.4
License: GNU General Public License v2 or later
Text Domain: vallavanem
*/

:root{
  --paper:#f7f5ef;
  --card:#fdfcf8;
  --ink:#191813;
  --ink-soft:#57534a;
  --ink-faint:#8a8578;
  --hairline:#ddd7c8;
  --hairline-dark:#c8c1af;
  --blue:#173f7c;
  --blue-deep:#0f2c59;
  --serif:"IBM Plex Serif", Georgia, "Times New Roman", serif;
  --sans:"IBM Plex Sans", -apple-system, "Helvetica Neue", Arial, sans-serif;
  --mono:"IBM Plex Mono", "SF Mono", Menlo, monospace;
}

*{margin:0;padding:0;box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.6}
a{color:var(--blue);text-decoration:none}
a:hover{text-decoration:underline;text-underline-offset:3px}
img{max-width:100%;height:auto}

.wrap{max-width:1080px;margin:0 auto;padding:0 24px}

/* ── Mono labels ─────────────────────────── */
.k{font-family:var(--mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-faint)}
.k--dark{color:var(--ink-soft)}

/* ── Header ──────────────────────────────── */
.site-head{border-bottom:1px solid var(--hairline-dark);background:var(--paper)}
.site-head__inner{display:flex;align-items:baseline;justify-content:space-between;gap:16px;padding:18px 0;flex-wrap:wrap}
.site-head__logo{font-family:var(--mono);font-size:15px;font-weight:600;letter-spacing:.08em;color:var(--ink);text-transform:uppercase}
.site-head__logo:hover{text-decoration:none;color:var(--blue)}
.site-head__logo .tld{color:var(--blue)}
.site-head__tag{font-family:var(--mono);font-size:11px;letter-spacing:.1em;color:var(--ink-faint);text-transform:uppercase}
.site-head__nav{display:flex;gap:22px}
.site-head__nav a{font-family:var(--mono);font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-soft)}
.site-head__nav a:hover{color:var(--blue);text-decoration:none}

/* ── Hero ────────────────────────────────── */
.hero{padding:64px 0 44px;border-bottom:1px solid var(--hairline)}
.hero h1{font-family:var(--serif);font-weight:500;font-size:clamp(30px,5vw,46px);line-height:1.15;max-width:760px;letter-spacing:-.01em}
.hero h1 em{font-style:italic;color:var(--blue)}
.hero__lead{margin-top:18px;max-width:640px;color:var(--ink-soft);font-size:17px}
.hero__stats{display:flex;gap:0;margin-top:36px;border:1px solid var(--hairline-dark);background:var(--card);flex-wrap:wrap}
.hero__stat{flex:1 1 120px;padding:16px 20px;border-right:1px solid var(--hairline)}
.hero__stat:last-child{border-right:none}
.hero__stat b{display:block;font-family:var(--serif);font-size:28px;font-weight:600;line-height:1.1}
.hero__stat span{display:block;margin-top:4px}

/* ── Search / filter ─────────────────────── */
.finder{padding:28px 0;border-bottom:1px solid var(--hairline)}
.finder form{display:flex;gap:0;max-width:560px;border:1px solid var(--hairline-dark);background:var(--card)}
.finder input[type=search]{flex:1;border:0;background:transparent;padding:13px 16px;font-family:var(--sans);font-size:16px;color:var(--ink);outline:none}
.finder input[type=search]::placeholder{color:var(--ink-faint)}
.finder button{border:0;border-left:1px solid var(--hairline-dark);background:var(--blue);color:#fff;font-family:var(--mono);font-size:12px;letter-spacing:.1em;text-transform:uppercase;padding:0 22px;cursor:pointer}
.finder button:hover{background:var(--blue-deep)}
.finder__hint{margin-top:10px}

/* ── Maakond index nav ───────────────────── */
.mk-nav{padding:22px 0;border-bottom:1px solid var(--hairline)}
.mk-nav__list{display:flex;flex-wrap:wrap;gap:6px 0;list-style:none}
.mk-nav__list li{display:flex;align-items:baseline}
.mk-nav__list li+li::before{content:"·";margin:0 10px;color:var(--hairline-dark)}
.mk-nav__list a{font-family:var(--mono);font-size:12.5px;letter-spacing:.03em;color:var(--ink-soft)}
.mk-nav__list a:hover{color:var(--blue);text-decoration:none;border-bottom:1px solid var(--blue)}
.mk-nav__list sup{font-size:9px;color:var(--ink-faint);margin-left:2px}

/* ── Directory ───────────────────────────── */
.dir{padding:12px 0 72px}
.mk-block{margin-top:44px}
.mk-block__head{display:flex;align-items:baseline;justify-content:space-between;border-bottom:2px solid var(--ink);padding-bottom:8px;gap:12px}
.mk-block__head h2{font-family:var(--serif);font-size:22px;font-weight:600}
.mk-block__head h2 a{color:var(--ink)}
.mk-block__head h2 a:hover{color:var(--blue);text-decoration:none}
.cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(310px,1fr));gap:0;border-left:1px solid var(--hairline);border-bottom:1px solid var(--hairline)}
.card{display:flex;gap:14px;align-items:center;padding:16px 18px;background:var(--card);border-right:1px solid var(--hairline);border-top:1px solid var(--hairline);color:var(--ink);position:relative}
.card:hover{background:#fff;text-decoration:none}
.card:hover .card__om{color:var(--blue)}
.mono-avatar{flex:0 0 46px;width:46px;height:46px;border:1px solid var(--hairline-dark);background:var(--paper);display:flex;align-items:center;justify-content:center;font-family:var(--serif);font-size:17px;font-weight:600;color:var(--blue)}
.card__body{min-width:0}
.card__om{font-family:var(--serif);font-size:17px;font-weight:600;line-height:1.25}
.card__juht{margin-top:2px;font-size:14px;color:var(--ink-soft);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.card__juht .amet{font-family:var(--mono);font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-faint)}
.card--tbd .card__juht{color:var(--ink-faint);font-style:italic}

/* ── Single profile ──────────────────────── */
.crumbs{padding:18px 0 0}
.crumbs a{color:var(--ink-faint)}
.crumbs,.crumbs a{font-family:var(--mono);font-size:11.5px;letter-spacing:.05em}
.crumbs .sep{margin:0 8px;color:var(--hairline-dark)}
.profile{padding:34px 0 72px}
.profile__grid{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:48px;align-items:start}
.profile h1{font-family:var(--serif);font-weight:500;font-size:clamp(28px,4.5vw,40px);line-height:1.15;letter-spacing:-.01em}
.profile__amet{margin-top:10px}
.profile__intro{margin-top:22px;font-size:17px;color:var(--ink-soft);max-width:640px}
.profile__intro p+p{margin-top:14px}
.facts{border:1px solid var(--hairline-dark);background:var(--card)}
.facts__head{padding:14px 18px;border-bottom:1px solid var(--hairline);display:flex;align-items:center;gap:14px}
.facts__head .mono-avatar{flex-basis:56px;width:56px;height:56px;font-size:20px}
.facts__head b{font-family:var(--serif);font-size:18px;font-weight:600;display:block;line-height:1.2}
.facts dl{padding:6px 0}
.facts .row{display:flex;justify-content:space-between;gap:16px;padding:9px 18px;border-top:1px solid var(--hairline)}
.facts .row:first-child{border-top:0}
.facts dt{flex:0 0 auto}
.facts dd{text-align:right;font-size:14.5px;min-width:0;overflow-wrap:anywhere}
.facts dd a{overflow-wrap:anywhere}
.facts__foot{padding:12px 18px;border-top:1px solid var(--hairline)}
.tbl{width:100%;border-collapse:collapse;margin-top:26px}
.tbl caption{text-align:left;padding-bottom:10px}
.tbl th,.tbl td{text-align:left;padding:9px 12px 9px 0;border-bottom:1px solid var(--hairline);font-size:14.5px;vertical-align:top}
.tbl th{font-family:var(--mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-faint);font-weight:500;width:40%}

/* siblings */
.siblings{margin-top:52px}
.siblings h2{font-family:var(--serif);font-size:21px;font-weight:600;border-bottom:2px solid var(--ink);padding-bottom:8px}

/* ── Archive / search ────────────────────── */
.arch-head{padding:48px 0 8px}
.arch-head h1{font-family:var(--serif);font-weight:500;font-size:clamp(26px,4vw,38px)}
.arch-head p{margin-top:10px;color:var(--ink-soft);max-width:640px}

/* ── Footer ──────────────────────────────── */
.site-foot{border-top:1px solid var(--hairline-dark);padding:30px 0 44px;margin-top:0}
.site-foot__inner{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}
.site-foot p{font-family:var(--mono);font-size:11.5px;letter-spacing:.04em;color:var(--ink-faint);max-width:560px;line-height:1.7}
.site-foot a{color:var(--ink-soft)}

/* ── Misc ────────────────────────────────── */
.nothing{padding:56px 0 90px;color:var(--ink-soft)}
.nothing h1{font-family:var(--serif);font-weight:500;font-size:32px;color:var(--ink)}
.nothing p{margin-top:14px}
.skip-link{position:absolute;left:-9999px}

@media (max-width:860px){
  .profile__grid{grid-template-columns:1fr}
  .facts{order:-1}
  .hero{padding:44px 0 34px}
}
@media (max-width:520px){
  .cards{grid-template-columns:1fr}
  .hero__stat{flex-basis:50%;border-top:1px solid var(--hairline)}
}
