:root{
    --bg:#ffffff;
    --ink:#1f2937;
    --muted:#6b7280;
    --brand:#047857;
    --brand-2:#065f46;
    --alt:#f0fdf4;
    --card:#ffffff;
    --line:#e5e7eb;
    --shadow:0 8px 24px rgba(2,6,23,.06);
  }
  *{box-sizing:border-box}
  html,body{height:100%}
  body{
    font-family: Inter, system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
    margin:0; color:var(--ink); background:var(--bg);
  }
  
  /* Layout */
  .container{max-width:1100px;margin:0 auto;padding:0 1rem}
  .section{padding:64px 0}
  .section.alt{background:var(--alt)}
  .section-head{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap}
  .grid{display:grid}
  .gap{gap:.75rem}
  .cards-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}
  .cards-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}
  @media (max-width:900px){.cards-grid,.cards-grid.two{grid-template-columns:1fr}}
  .mt{margin-top:1.25rem}
  
  /* Header/Nav */
  .header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.9);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}
  .nav{display:flex;align-items:center;gap:1rem;padding:.75rem 0}
  .brand{font-weight:800}
  .nav-links{list-style:none;display:flex;gap:1rem;margin:0;padding:0}
  .nav-link{color:var(--ink);text-decoration:none;padding:.25rem .5rem;border-radius:.5rem}
  .nav-link.active,.nav-link:hover{background:#ecfdf5;color:var(--brand)}
  .hamburger{display:none;flex-direction:column;gap:4px;background:none;border:none}
  .hamburger span{width:22px;height:2px;background:var(--ink)}
  @media (max-width:860px){
    .nav-links{display:none;position:absolute;top:60px;left:0;right:0;background:#fff;border-bottom:1px solid var(--line);padding:12px}
    .nav-links.show{display:flex;flex-direction:column}
    .hamburger{display:flex}
  }
  
  /* Buttons & Inputs */
  .btn{background:#111827;color:#fff;border:none;padding:.75rem 1rem;border-radius:.65rem;cursor:pointer;box-shadow:var(--shadow)}
  .btn:hover{opacity:.95}
  .btn-primary{background:var(--brand)}
  .btn-primary:hover{background:var(--brand-2)}
  .btn-ghost{background:transparent;color:var(--brand);border:1px solid var(--brand)}
  .btn.small{padding:.5rem .75rem}
  .input, input, textarea, select{
    width:100%;padding:.7rem;border:1px solid var(--line);border-radius:.6rem;background:#fff;color:var(--ink)
  }
  input:focus,textarea:focus,select:focus{outline:2px solid #a7f3d0;border-color:#a7f3d0}
  
  /* Cards */
  .card{background:var(--card);border:1px solid var(--line);border-radius:1rem;padding:1rem;box-shadow:var(--shadow)}
  .notice{margin-top:1rem;border-left:4px solid var(--brand);padding:.75rem 1rem;background:#ecfdf5;border-radius:.5rem}
  
  /* Hero */
  .hero{background:linear-gradient(180deg,#ecfdf5, #ffffff);padding:72px 0}
  .hero-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:2rem;align-items:center}
  .hero h1{font-size:clamp(28px,5vw,44px);margin:0}
  .accent{color:var(--brand)}
  .lead{color:var(--muted);font-size:1.1rem;margin:.65rem 0 1rem}
  .hero-actions{display:flex;gap:.5rem;flex-wrap:wrap}
  .hero-badges{display:flex;gap:.5rem;flex-wrap:wrap;margin-top:.75rem}
  .hero-badges span{background:#ecfdf5;color:var(--brand);padding:.35rem .6rem;border-radius:.5rem;font-size:.85rem}
  
  /* Accordion */
  .accordion{border:1px solid var(--line);border-radius:1rem;overflow:hidden}
  .accordion-header{width:100%;text-align:left;padding:1rem;background:#fff;border-bottom:1px solid var(--line);font-weight:600;cursor:pointer}
  .accordion-header:hover{background:#fafafa}
  .accordion-panel{display:none;padding:1rem;background:#fff}
  .accordion-header.active + .accordion-panel{display:block}
  
  /* Tabs */
  .tabs{margin-top:1rem}
  .tab-list{display:flex;gap:.5rem;flex-wrap:wrap}
  .tab{padding:.6rem 1rem;border-radius:.6rem;border:1px solid var(--line);background:#fff;cursor:pointer}
  .tab.active{background:#ecfdf5;border-color:#a7f3d0;color:var(--brand)}
  .tab-panels{border:1px solid var(--line);border-radius:.8rem;margin-top:.75rem;background:#fff;padding:1rem}
  .tab-panel{display:none}
  .tab-panel.active{display:block}
  
  /* KPIs */
  .kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem;margin-top:1rem}
  .kpi{background:#fff;border:1px solid var(--line);border-radius:1rem;padding:1.25rem;text-align:center;box-shadow:var(--shadow)}
  .kpi-number{font-weight:800;font-size:2rem;color:var(--brand)}
  .kpi-label{color:var(--muted)}
  @media (max-width:900px){.kpis{grid-template-columns:repeat(2,1fr)}}
  
  /* Timeline */
  .timeline{list-style:none;margin:1rem 0 0;padding:0;border-left:2px dashed #a7f3d0}
  .timeline li{position:relative;padding-left:1rem;margin:1rem 0}
  .timeline .dot{position:absolute;left:-7px;top:.2rem;width:12px;height:12px;background:var(--brand);border-radius:999px;box-shadow:0 0 0 4px #ecfdf5}
  
  /* Lists */
  .list{padding-left:1rem}
  .list li{margin:.4rem 0}
  
  /* Footer */
  .footer{border-top:1px solid var(--line);padding:24px 0;background:#fff}
  .footer-flex{display:flex;align-items:center;justify-content:space-between;gap:.75rem;flex-wrap:wrap}
  .footer-links a{color:var(--muted);text-decoration:none;margin-left:.75rem}
  .footer-links a:hover{color:var(--brand)}
  
  /* Modal */
  .modal{border:none;border-radius:1rem;padding:0;max-width:560px;width:95%}
  .modal::backdrop{background:rgba(0,0,0,.3)}
  .modal-card{padding:0}
  .modal-head,.modal-foot{display:flex;align-items:center;justify-content:space-between;padding:1rem;border-bottom:1px solid var(--line)}
  .modal-foot{border-top:1px solid var(--line);border-bottom:none}
  .modal-card .grid{padding:1rem}
  .icon-btn{background:transparent;border:none;font-size:1.1rem;cursor:pointer}
  
  /* Toast */
  .toast{position:fixed;left:50%;transform:translateX(-50%);bottom:24px;min-width:260px;max-width:90vw;padding:.75rem 1rem;background:#111827;color:#fff;border-radius:.75rem;opacity:0;pointer-events:none;transition:.25s;box-shadow:var(--shadow);z-index:60}
  .toast.show{opacity:1}
  
  /* Utilities */
  .muted{color:var(--muted)}
  .cta-line{margin-top:1rem;display:flex;gap:.5rem;flex-wrap:wrap}
  
  /* Print */
  @media print{
    .header,.footer,.toast,.hamburger,.btn,.filters,.cta-line{display:none !important}
    a[href]:after{content:""}
  }
  