
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.55}a{color:inherit;text-decoration:none}a:hover{text-decoration:none}img{max-width:100%;display:block}.wrap{width:min(var(--max),calc(100% - 32px));margin:auto}.site-header{position:sticky;top:0;z-index:100;background:color-mix(in srgb,var(--nav) 96%,transparent);color:#fff;border-bottom:1px solid rgba(255,255,255,.09);backdrop-filter:blur(12px)}.nav{height:66px;display:flex;align-items:center;gap:22px}.brand{font-size:24px;font-weight:900;letter-spacing:-.04em;margin-right:auto}.brand span{color:var(--orange)}.brand small{display:block;font-size:10px;font-weight:600;letter-spacing:.04em;color:#a8b9af;margin-top:-4px}.nav-links{display:flex;gap:4px}.nav-links a{font-size:14px;padding:9px 11px;border-radius:9px;color:#d8e5de}.nav-links a:hover,.nav-links a.active{background:rgba(255,255,255,.09);color:#fff}.icon-btn,.cta{border:0;border-radius:10px;cursor:pointer;font:inherit}.icon-btn{background:rgba(255,255,255,.09);color:#fff;padding:9px 11px}.cta{background:var(--orange);color:#fff;font-weight:800;padding:10px 15px;box-shadow:0 5px 18px rgba(255,122,26,.22)}.hero{position:relative;background:var(--nav);color:#fff;min-height:500px;display:flex;align-items:center;overflow:hidden}.hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(9,20,15,.97) 0%,rgba(9,20,15,.84) 48%,rgba(9,20,15,.32) 100%),url('/assets/p-cronologie.jpg') center 45%/cover no-repeat;filter:saturate(.82)}.hero-content{position:relative;z-index:1;padding:72px 0 62px;max-width:760px}.eyebrow{display:inline-flex;gap:8px;align-items:center;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:var(--orange);margin-bottom:12px}.hero h1{font-size:clamp(45px,8vw,88px);line-height:.92;letter-spacing:-.065em;margin:0 0 13px}.hero h1 span{color:var(--orange)}.hero h2{font-size:clamp(23px,4vw,38px);letter-spacing:-.035em;margin:0 0 17px}.hero p{max-width:700px;font-size:18px;color:#dce7e1;margin:0 0 26px}.actions{display:flex;gap:11px;flex-wrap:wrap}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid var(--line);border-radius:11px;padding:11px 15px;font-weight:800;background:var(--surface);color:var(--text)}.btn.primary{background:var(--orange);border-color:var(--orange);color:#fff}.btn.ghost-dark{background:rgba(255,255,255,.04);border-color:rgba(255,255,255,.38);color:#fff}.stats{display:flex;gap:0;margin-top:36px}.stat{min-width:130px;padding:0 24px;border-left:1px solid rgba(255,255,255,.22)}.stat:first-child{padding-left:0;border:0}.stat b{display:block;font-size:30px;line-height:1}.stat span{font-size:13px;color:#becdc5}.section{padding:54px 0}.section.tight{padding:34px 0}.section-title{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:20px}.section-title h1,.section-title h2{margin:0;letter-spacing:-.035em;line-height:1.08}.section-title h1{font-size:42px}.section-title h2{font-size:34px}.section-title p{margin:7px 0 0;color:var(--muted);max-width:760px}.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden}.card-body{padding:18px}.card h3{margin:0 0 8px;letter-spacing:-.02em}.card p{color:var(--muted);margin:0 0 15px}.project-img{height:180px;object-fit:cover;width:100%}.tag,.badge{display:inline-flex;align-items:center;gap:6px;padding:5px 9px;border-radius:999px;font-size:12px;font-weight:800}.tag{background:var(--surface2);color:var(--muted)}.badge.good{background:color-mix(in srgb,var(--green) 13%,transparent);color:var(--green)}.badge.warn{background:color-mix(in srgb,var(--amber) 15%,transparent);color:var(--amber)}.badge.bad{background:color-mix(in srgb,var(--red) 12%,transparent);color:var(--red)}.badge.info{background:color-mix(in srgb,var(--blue) 12%,transparent);color:var(--blue)}.callout{display:grid;grid-template-columns:1fr 1fr;gap:0;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}.callout>div{padding:24px}.callout>div+div{border-left:1px solid var(--line)}.checklist{padding:0;margin:13px 0 0;list-style:none}.checklist li{padding:4px 0;color:var(--muted)}.checklist li:before{content:"✓";color:var(--green);font-weight:900;margin-right:8px}.independent{margin-top:18px;padding:13px 16px;border-radius:12px;background:var(--accent-soft);color:var(--accent-ink);text-align:center;font-weight:800;border:1px solid color-mix(in srgb,var(--accent) 28%,var(--line))}.page-head{padding:40px 0 22px}.crumbs{font-size:13px;color:var(--muted);margin-bottom:12px}.page-head h1{font-size:clamp(36px,6vw,58px);letter-spacing:-.05em;line-height:1.02;margin:0}.page-head p{color:var(--muted);font-size:17px;max-width:850px;margin:10px 0 0}.metric-row{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:22px 0}.metric{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:15px;text-align:center}.metric b{display:block;font-size:28px}.metric span{font-size:12px;color:var(--muted)}.filters{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:14px 0}.filters select{width:100%;border:1px solid var(--line);background:var(--surface);color:var(--text);padding:11px 12px;border-radius:11px}.map-layout{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(300px,.7fr);gap:16px;align-items:start}.mapbox{height:590px;border-radius:var(--radius);overflow:hidden;border:1px solid var(--line);box-shadow:var(--shadow);background:var(--surface)}.map-side{display:flex;flex-direction:column;gap:10px;max-height:590px;overflow:auto}.map-list-item{background:var(--surface);border:1px solid var(--line);border-radius:13px;padding:13px;display:block}.map-list-item:hover{border-color:var(--orange)}.map-list-item strong{display:block}.map-list-item small{color:var(--muted)}.marker-bubble{width:40px;height:40px;border-radius:50% 50% 50% 10%;transform:rotate(-45deg);background:var(--orange);border:3px solid #fff;box-shadow:0 4px 14px rgba(0,0,0,.25);display:flex;align-items:center;justify-content:center}.marker-bubble span{transform:rotate(45deg);color:white;font-weight:900}.marker-bubble.approx{background:var(--blue)}.leaflet-popup-content-wrapper{border-radius:14px}.popup h3{margin:0 0 5px;font-size:16px}.popup p{margin:0 0 9px;color:#56655d;font-size:12px}.popup a{display:block;padding:6px 0;color:#2f6b57;font-weight:700}.detail-head{padding:35px 0 18px}.detail-kicker{font-size:13px;color:var(--muted);margin-bottom:7px}.detail-title{font-size:clamp(35px,5vw,58px);line-height:1.02;letter-spacing:-.052em;margin:0}.lead{font-size:18px;color:var(--muted);max-width:900px;margin:12px 0}.badges{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}.detail-grid{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:22px;align-items:start}.hero-photo{border-radius:var(--radius);overflow:hidden;border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow)}.hero-photo img{width:100%;max-height:650px;object-fit:cover}.caption{padding:10px 13px;color:var(--muted);font-size:12px}.side-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:18px;margin-bottom:15px}.side-card h3{margin:0 0 4px}.side-card .sub{font-size:12px;color:var(--muted);margin-bottom:12px}.kv{display:grid;grid-template-columns:105px 1fr;gap:7px 10px;font-size:13px;padding:8px 0;border-top:1px solid var(--line)}.kv span:first-child{color:var(--muted)}.content-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:24px;margin-top:18px}.content-card h2{font-size:27px;letter-spacing:-.03em;margin:0 0 13px}.content-card h3{margin:20px 0 7px}.content-card p{margin:0 0 13px}.content-card ul{margin:8px 0;padding-left:20px}.timeline{display:grid;grid-template-columns:1fr 64px 1fr;align-items:center;gap:8px;margin-top:15px}.timebox{background:var(--surface2);padding:16px;border-radius:13px}.arrow{text-align:center;font-size:24px;color:var(--orange)}.twocol{display:grid;grid-template-columns:1fr 1fr;gap:16px}.source{border-top:1px solid var(--line);padding:11px 0}.source:first-child{border-top:0}.source small{display:block;color:var(--muted)}.source a{color:var(--blue);font-weight:800}.jsonbox{background:#0f1713;color:#dce7e1;border-radius:14px;overflow:auto;position:relative}.jsonbox pre{margin:0;padding:18px;font-size:12px;line-height:1.55}.copy-btn{position:absolute;right:10px;top:10px;border:1px solid #31463b;border-radius:8px;background:#1a2a22;color:#fff;padding:7px 9px;cursor:pointer}.method-steps{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}.step{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:18px}.step b{display:block;color:var(--orange);font-size:20px}.step h3{margin:7px 0}.step p{font-size:13px;color:var(--muted);margin:0}.toc{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:16px;position:sticky;top:82px}.toc a{display:block;padding:6px;color:var(--muted)}.article-layout{display:grid;grid-template-columns:250px minmax(0,1fr);gap:24px}.prose{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:28px}.prose h2{margin-top:32px;letter-spacing:-.03em}.prose h2:first-child{margin-top:0}.prose code{background:var(--surface2);padding:2px 5px;border-radius:5px}.footer{background:var(--nav);color:#c7d4cd;margin-top:54px;padding:30px 0}.footer-grid{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:20px}.footer .brand{display:inline-block}.footer p,.footer small{color:#9dafa5}.footer a{display:block;padding:3px 0;color:#d8e5de}.footnote{border-top:1px solid rgba(255,255,255,.12);margin-top:23px;padding-top:18px;display:flex;justify-content:space-between;gap:18px}.mobile-menu{display:none}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:900px){.nav-links{display:none}.mobile-menu{display:inline-flex}.hero{min-height:560px}.grid3,.method-steps{grid-template-columns:1fr 1fr}.map-layout,.detail-grid,.article-layout{grid-template-columns:1fr}.mapbox{height:500px}.map-side{max-height:none}.toc{position:static}.filters{grid-template-columns:1fr 1fr}.metric-row{grid-template-columns:1fr 1fr}.footer-grid{grid-template-columns:1fr 1fr}.detail-grid aside{order:-1}.side-card.compact-on-mobile{display:none}}
@media(max-width:590px){.wrap{width:min(100% - 22px,var(--max))}.nav{height:60px;gap:8px}.brand{font-size:21px}.brand small{display:none}.cta{display:none}.hero-content{padding:55px 0}.hero p{font-size:16px}.stats{display:grid;grid-template-columns:repeat(3,1fr);width:100%}.stat{min-width:0;padding:0 10px;text-align:center}.stat:first-child{padding-left:10px}.section{padding:38px 0}.grid3,.callout,.twocol,.method-steps,.footer-grid{grid-template-columns:1fr}.callout>div+div{border-left:0;border-top:1px solid var(--line)}.section-title{align-items:start;flex-direction:column}.filters{grid-template-columns:1fr}.mapbox{height:430px}.timeline{grid-template-columns:1fr}.arrow{transform:rotate(90deg)}.detail-head{padding-top:25px}.hero-photo img{max-height:none}.content-card{padding:18px}.footnote{flex-direction:column}.metric-row{gap:8px}.metric{padding:10px}.metric b{font-size:24px}}


/* v0.3.1 — De ce 6 + map resilience */
.why6-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:16px 0 12px}.why6-card{background:var(--surface2);border:1px solid var(--line);border-radius:16px;padding:19px}.why6-card h3{margin:10px 0 7px}.why6-card p{font-size:14px;color:var(--muted);margin:0}.why6-num{display:inline-grid;place-items:center;width:58px;height:58px;border-radius:50%;background:var(--orange);color:#fff;font-size:32px;font-weight:900}.hex-six{width:62px;height:58px;background:var(--orange);clip-path:polygon(25% 6.7%,75% 6.7%,100% 50%,75% 93.3%,25% 93.3%,0 50%);display:grid;place-items:center}.hex-six span{color:#fff;font-size:28px;font-weight:900}.why6-eq{display:inline-flex;align-items:center;min-height:58px;font-size:20px;font-weight:900;color:var(--orange);letter-spacing:-.03em}.cultural-note{margin:14px 0 24px;padding:16px 18px;border-left:4px solid var(--orange);background:color-mix(in srgb,var(--orange) 8%,var(--surface));border-radius:0 12px 12px 0;color:var(--muted)}.cultural-note strong{color:var(--text)}.method-mini{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:14px 0}.method-mini>div{display:grid;grid-template-columns:42px 1fr;column-gap:10px;row-gap:2px;background:var(--surface2);border:1px solid var(--line);border-radius:13px;padding:13px}.method-mini b{grid-row:1/3;color:var(--orange);font-size:17px}.method-mini strong{font-size:14px}.method-mini span{font-size:12px;color:var(--muted)}.map-fallback{height:100%;min-height:260px;display:grid;place-items:center;text-align:center;padding:28px;color:var(--muted);background:linear-gradient(135deg,var(--surface),var(--surface2))}.map-fallback strong{color:var(--text)}
@media(max-width:900px){.why6-grid{grid-template-columns:1fr}.method-mini{grid-template-columns:1fr}}


/* v0.3.2 — palette culturală + responsive real */
:root{
  --bg:#f2f5f2;--surface:#fbfdfb;--surface2:#eef2ee;--text:#1a231f;--muted:#56655d;
  --line:#d7ded8;--nav:#14201b;--accent:#2f6b57;--accent-ink:#245544;--accent-soft:#e3efe8;
  --ochre:#c88a2a;--orange:#c88a2a;--orange2:#a96f1f;--green:#2f6b57;--red:#c8653f;
  --blue:#5e86b0;--amber:#a97216;--shadow:0 1px 2px rgba(26,35,31,.05),0 8px 28px rgba(26,35,31,.07);
  --radius:16px;--max:1180px;--display-font:ui-serif,Georgia,Cambria,"Times New Roman",serif;
}
[data-theme="dark"]{
  --bg:#111613;--surface:#1a211d;--surface2:#161c19;--text:#e8ede9;--muted:#9db0a6;
  --line:#2a332e;--nav:#0e1512;--accent:#6fcaa6;--accent-ink:#9fe0c6;--accent-soft:#1d2a24;
  --ochre:#d6a04a;--orange:#d6a04a;--orange2:#c88a2a;--green:#6fcaa6;--red:#d78062;--blue:#7fa2c5;--amber:#d6a04a;
  --shadow:0 1px 2px rgba(0,0,0,.3),0 8px 26px rgba(0,0,0,.35);
}
html{max-width:100%;overflow-x:clip}body{max-width:100%;overflow-x:clip}
h1,h2,h3,.brand,.detail-title,.page-head h1,.section-title h1,.section-title h2{font-family:var(--display-font)}
.site-header{top:env(safe-area-inset-top,0px);background:color-mix(in srgb,var(--nav) 94%,transparent)}
.brand span{color:var(--ochre)}
.cta,.btn.primary{background:var(--accent);border-color:var(--accent);box-shadow:0 5px 18px color-mix(in srgb,var(--accent) 22%,transparent)}
.eyebrow{color:var(--accent)}
.map-list-item:hover{border-color:var(--accent)}
.marker-bubble{background:var(--ochre)}
.marker-bubble.approx{background:var(--blue)}
.arrow{color:var(--ochre)}
.step b{color:var(--accent)}
.independent{background:var(--accent-soft);color:var(--accent-ink);border-color:color-mix(in srgb,var(--accent) 28%,var(--line))}
.why6-num,.hex-six{background:var(--ochre)}
.why6-eq{color:var(--accent)}
.cultural-note{border-left-color:var(--ochre);background:color-mix(in srgb,var(--ochre) 9%,var(--surface))}
.method-mini b{color:var(--accent)}

/* prevent grid children and long data from forcing viewport wider */
.grid3>*,.callout>*,.detail-grid>*,.article-layout>*,.map-layout>*,.twocol>*,.method-steps>*,.method-mini>*,.why6-grid>*{min-width:0}
.prose,.content-card,.side-card,.card,.map-side,.mapbox{max-width:100%}
pre,code,.kv>*,.source,.map-list-item,.card p,.card h3{overflow-wrap:anywhere;word-break:normal}
.jsonbox{max-width:100%;overflow:auto}.jsonbox pre{min-width:0;white-space:pre;overflow-x:auto}

/* mobile navigation */
.mobile-menu{display:none;appearance:none;border:1px solid rgba(255,255,255,.16);background:rgba(255,255,255,.08);color:#fff;width:40px;height:40px;border-radius:10px;cursor:pointer;place-items:center;padding:0;flex:0 0 auto}
.mobile-menu-lines{width:18px;height:14px;display:flex;flex-direction:column;justify-content:space-between}
.mobile-menu-lines i{display:block;height:2px;border-radius:2px;background:currentColor;transition:transform .2s ease,opacity .2s ease}
.mobile-menu[aria-expanded="true"] .mobile-menu-lines i:nth-child(1){transform:translateY(6px) rotate(45deg)}
.mobile-menu[aria-expanded="true"] .mobile-menu-lines i:nth-child(2){opacity:0}
.mobile-menu[aria-expanded="true"] .mobile-menu-lines i:nth-child(3){transform:translateY(-6px) rotate(-45deg)}
.mobile-nav-panel{display:none}

@media(max-width:900px){
  .nav{height:62px;gap:9px}.nav-links,.nav>.cta{display:none}.mobile-menu{display:grid}
  .icon-btn{width:40px;height:40px;padding:0;display:grid;place-items:center;flex:0 0 auto}
  .mobile-nav-panel{display:block;max-height:0;opacity:0;overflow:hidden;pointer-events:none;border-top:1px solid transparent;transition:max-height .26s ease,opacity .18s ease,border-color .18s ease;background:var(--nav)}
  .mobile-nav-panel.is-open{max-height:430px;opacity:1;pointer-events:auto;border-top-color:rgba(255,255,255,.09)}
  .mobile-nav-inner{padding-top:10px;padding-bottom:14px;display:grid;gap:4px}
  .mobile-nav-panel a{display:flex;align-items:center;justify-content:space-between;padding:11px 12px;border-radius:10px;color:#d8e5de;font-weight:700}
  .mobile-nav-panel a:hover,.mobile-nav-panel a:focus-visible{background:rgba(255,255,255,.08);color:#fff}
  .mobile-nav-panel .mobile-cta{margin-top:6px;background:var(--accent);color:#fff;justify-content:center}
  body.menu-open{overflow:hidden}
  .hero{min-height:auto}.hero:before{background:linear-gradient(180deg,rgba(7,15,12,.92) 0%,rgba(7,15,12,.80) 58%,rgba(7,15,12,.60) 100%),url('/assets/p-cronologie.jpg') center/cover no-repeat}
  .hero-content{padding:58px 0 52px}.grid3,.method-steps{grid-template-columns:1fr 1fr}
  .map-layout,.detail-grid,.article-layout{grid-template-columns:minmax(0,1fr)}
  .detail-grid aside{order:initial}.toc{position:static}.mapbox{height:min(58vh,500px);min-height:360px}
  .map-side{max-height:none}.filters{grid-template-columns:1fr 1fr}.metric-row{grid-template-columns:1fr 1fr}.footer-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:590px){
  .wrap{width:100%;padding-inline:16px}.nav{padding-inline:0}.brand{font-size:20px;min-width:0}.brand small{display:none}
  .hero-content{padding:46px 0 40px}.hero h1{font-size:clamp(44px,17vw,66px)}.hero h2{font-size:clamp(25px,8vw,34px)}.hero p{font-size:16px;line-height:1.55}
  .actions{display:grid;grid-template-columns:1fr}.actions .btn{width:100%;min-height:46px}
  .stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));width:100%;margin-top:28px}
  .stat{min-width:0;padding:0 8px;text-align:center}.stat:first-child{padding-left:8px}.stat b{font-size:27px}.stat span{font-size:11px}
  .section{padding:34px 0}.section.tight{padding:28px 0}.section-title{align-items:start;flex-direction:column;gap:12px}.section-title h2{font-size:clamp(28px,9vw,36px)}
  .grid3,.callout,.twocol,.method-steps,.footer-grid,.why6-grid,.method-mini{grid-template-columns:minmax(0,1fr)}
  .project-img{height:210px}.card-body{padding:16px}.callout>div{padding:18px}.callout>div+div{border-left:0;border-top:1px solid var(--line)}
  .page-head{padding:28px 0 16px}.page-head h1{font-size:clamp(35px,12vw,48px)}.page-head p{font-size:16px}
  .metric-row{gap:8px;margin:16px 0}.metric{padding:11px 8px}.metric b{font-size:23px}.metric span{font-size:11px;line-height:1.25}
  .filters{grid-template-columns:minmax(0,1fr);gap:8px}.filters select{min-height:44px;font-size:16px}
  .mapbox{height:52vh;min-height:340px;border-radius:14px}.map-list-item{padding:12px}
  .detail-head{padding:25px 0 12px}.detail-title{font-size:clamp(34px,11vw,46px)}.lead{font-size:16px}.detail-grid{gap:14px}
  .side-card{padding:15px}.kv{grid-template-columns:minmax(0,1fr);gap:2px;padding:9px 0}.kv span:first-child{font-size:11px;text-transform:uppercase;letter-spacing:.05em}
  .content-card{padding:17px;margin-top:14px}.content-card h2{font-size:24px}.timeline{grid-template-columns:1fr}.arrow{transform:rotate(90deg)}
  .prose{padding:18px}.article-layout{gap:14px}.toc{padding:13px}.footer{margin-top:40px;padding:25px 0}.footnote{flex-direction:column;gap:5px}
  .jsonbox pre{font-size:11px;padding:14px 12px}.copy-btn{position:sticky;float:right;top:8px;margin:8px 8px 0 0}
}
@media(max-width:390px){
  .wrap{padding-inline:13px}.brand{font-size:19px}.icon-btn,.mobile-menu{width:38px;height:38px}.nav{gap:7px}
  .stats{grid-template-columns:1fr 1fr 1fr}.stat b{font-size:24px}.stat span{font-size:10px}
  .metric-row{grid-template-columns:1fr 1fr}.badges{gap:5px}.tag,.badge{font-size:11px;padding:4px 7px}
  .project-img{height:185px}
}
