:root{--primary:#10598A;--primary-700:#0B466C;--text:#0f172a;--muted:#475569;--muted2:#64748b;--bg-soft:#f6f9fc;--shadow:0 10px 30px rgba(15,23,42,.08);--shadow-soft:0 8px 22px rgba(15,23,42,.06);--radius:18px;--max:1120px;--font:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial;}
*{box-sizing:border-box;}
html{min-height:100%;background:radial-gradient(900px 420px at 15% -10%, rgba(16,89,138,.10), transparent 60%),radial-gradient(900px 420px at 95% 0%, rgba(16,89,138,.06), transparent 55%),linear-gradient(180deg,#fff 0%,#fff 35%,var(--bg-soft) 100%);background-attachment:fixed;}
body{margin:0;font-family:var(--font);color:var(--text);background:transparent;line-height:1.55;}
a{text-decoration:none;color:inherit}
.wrap{max-width:var(--max);margin:0 auto;padding:0 22px;}

.nav{position:sticky;top:0;z-index:20;background:rgba(255,255,255,.78);backdrop-filter:blur(10px);border-bottom:1px solid rgba(15,23,42,.06);} 
.nav-inner{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px 0;flex-wrap:wrap;}
.brand{display:flex;align-items:center;gap:12px;min-width:280px;flex:1 1 320px;}
.brand-mark{width:38px;height:38px;border-radius:14px;background:var(--primary);box-shadow:0 10px 26px rgba(16,89,138,.18);display:flex;align-items:center;justify-content:center;flex:0 0 auto;}
.brand-mark svg{width:20px;height:20px;opacity:.95;}
.brand strong{font-size:14px;display:block} .brand span{font-size:12px;color:var(--muted2);display:block;margin-top:1px;}
.menu{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end;flex:2 1 420px;}
.menu a{font-size:13px;color:var(--muted);padding:8px 10px;border-radius:999px;border:1px solid transparent;}
.menu a:hover{color:var(--text);border-color:rgba(16,89,138,.18);background:rgba(16,89,138,.06);} 

.page{padding:28px 0 10px;}
.panel{border:1px solid rgba(15,23,42,.08);background:#fff;border-radius:var(--radius);padding:18px;box-shadow:var(--shadow);position:relative;overflow:hidden;}
.hero-grid{display:grid;grid-template-columns:.95fr 1.05fr;gap:18px;align-items:stretch;}

.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:10px 14px;border-radius:14px;border:1px solid rgba(15,23,42,.12);background:#fff;font-size:13px;cursor:pointer;transition:transform .12s ease,box-shadow .12s ease;}
.btn:hover{transform:translateY(-1px);box-shadow:var(--shadow-soft);} 
.btn-primary{background:var(--primary);color:#fff;border-color:rgba(16,89,138,.25);box-shadow:0 14px 32px rgba(16,89,138,.20);} 
.btn-primary:hover{background:var(--primary-700);} 

.badge{display:inline-flex;align-items:center;gap:10px;padding:8px 12px;border-radius:999px;border:1px solid rgba(16,89,138,.18);background:rgba(16,89,138,.06);color:var(--primary-700);font-size:12px;font-weight:700;margin:10px 0 12px;}
.dot{width:8px;height:8px;border-radius:999px;background:var(--primary);box-shadow:0 0 0 6px rgba(16,89,138,.10);} 
.hero-title{font-size:clamp(28px,3.7vw,42px);line-height:1.08;margin:8px 0 10px;letter-spacing:-.6px;}
.lead{color:var(--muted);font-size:15.5px;margin:0 0 14px;max-width:72ch;}
.note{display:block;text-align:center;margin-top:18px;padding:8px 10px;border-radius:14px;border:1px dashed rgba(16,89,138,.22);background:rgba(16,89,138,.05);color:var(--primary-700);font-size:12.5px;font-weight:700;}
.cta{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin-top:12px;} .cta-center{justify-content:center;}

input,select,textarea{width:100%;padding:10px 12px;border-radius:14px;border:1px solid rgba(15,23,42,.12);background:rgba(255,255,255,.92);} 
label{font-size:12.5px;font-weight:650;} 

footer{padding:24px 0 38px;color:var(--muted2);font-size:12px;} 
.foot{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;border-top:1px solid rgba(15,23,42,.08);padding-top:14px;}

.table{width:100%;border-collapse:collapse;} 
.table th,.table td{border-bottom:1px solid rgba(15,23,42,.08);padding:10px 8px;text-align:left;font-size:13px;vertical-align:top;}

.pill{display:inline-flex;align-items:center;padding:4px 8px;border-radius:999px;border:1px solid rgba(16,89,138,.22);background:rgba(16,89,138,.06);color:var(--primary-700);font-weight:700;font-size:12px;}
.pill-danger{border-color:rgba(180,35,24,.35);background:rgba(180,35,24,.06);color:#b42318;}
.pill-ok{border-color:rgba(6,118,71,.35);background:rgba(6,118,71,.06);color:#067647;}

.table-scroll{overflow-x:auto; -webkit-overflow-scrolling:touch; border-radius: 14px;}
.table-scroll .table{min-width:860px;}

.filters-grid{display:grid;grid-template-columns: 1.4fr .8fr .8fr; gap:12px;}

.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;}
.card{border:1px solid rgba(15,23,42,.08);border-radius:18px;background:#fff;box-shadow: var(--shadow-soft);padding:14px;}
.card-top{display:flex;align-items:center;justify-content:space-between;gap:10px;}
.card-date{font-size:12px;color:var(--muted2);}
.card-title{margin:10px 0 6px;font-size:16px;line-height:1.25;}
.card-meta{display:flex;flex-wrap:wrap;gap:8px 10px;color:var(--muted);font-size:12.5px;}
.card-excerpt{margin:10px 0 0;color:var(--muted);font-size:13.5px;line-height:1.45;}

.view-auto .initiatives-table{display:block;}
.view-auto .initiatives-cards{display:none;}
.view-table .initiatives-table{display:block;}
.view-table .initiatives-cards{display:none;}
.view-cards .initiatives-table{display:none;}
.view-cards .initiatives-cards{display:grid;}

.cookie-banner{position:fixed;left:16px;right:16px;bottom:16px;z-index:999;border:1px solid rgba(15,23,42,.10);border-radius:calc(var(--radius) + 6px);background:rgba(255,255,255,.92);backdrop-filter:blur(10px);box-shadow:var(--shadow);padding:14px;}
.cookie-grid{display:flex;gap:14px;align-items:flex-start;justify-content:space-between;flex-wrap:wrap;} 
.cookie-text{max-width:80ch;color:var(--muted);font-size:13px;line-height:1.45;} 
.cookie-actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center;}

@media (max-width: 1200px){ .cards{grid-template-columns:repeat(2,minmax(0,1fr));} }
@media (max-width: 980px){ .hero-grid{grid-template-columns:1fr;} }
@media (max-width: 1024px){ .filters-grid{grid-template-columns:1fr;} .view-auto .initiatives-table{display:none;} .view-auto .initiatives-cards{display:grid;} }
@media (max-width: 700px){ .wrap{padding:0 16px;} .cards{grid-template-columns:1fr;} .menu{justify-content:flex-start;} }
