/* Extracted page CSS from chi-siamo.html. */

html,body{background:#fff;}
    /* ── Legacy about styles ── */
    .mission-lede-wrap {
      display: grid;
      grid-template-columns: 1fr 340px;
      gap: 5rem;
      align-items: start;
    }
    @media (max-width: 900px) { .mission-lede-wrap { grid-template-columns: 1fr; gap: 2.5rem; } }

    .kpi-sidebar {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 1px;
      background: var(--border);
      border: 1px solid var(--border);
      border-radius: var(--radius-xl);
      overflow: hidden;
      box-shadow: var(--shadow-card);
    }
    .kpi-cell {
      background: #fff;
      padding: 1.5rem;
      text-align: center;
    }
    .kpi-cell-num {
      font-size: 2rem;
      font-weight: 900;
      letter-spacing: -0.04em;
      line-height: 1;
      color: #0085ca;
      margin-bottom: 5px;
    }
    .kpi-cell-label {
      font-size: 0.75rem;
      color: var(--text-muted);
      font-weight: 500;
      line-height: 1.35;
    }

    .story-split {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 4rem;
      align-items: start;
    }
    @media (max-width: 820px) { .story-split { grid-template-columns: 1fr; gap: 2.5rem; } }

    .values-grid {
      display: grid;
      grid-template-columns: repeat(2, 1fr);
      gap: 1.25rem;
    }
    @media (max-width: 620px) { .values-grid { grid-template-columns: 1fr; } }

    .value-card-inner {
      background: #fff;
      border: 1px solid var(--border);
      border-radius: var(--radius-lg);
      padding: 2rem;
      box-shadow: var(--shadow-card);
      transition: all 0.2s;
    }
    .value-card-inner:hover {
      border-color: var(--border-flame);
      transform: translateY(-2px);
      box-shadow: 0 8px 30px rgba(0,133,202,0.1);
    }
    .value-num {
      font-size: 4rem;
      font-weight: 900;
      background: none;
      -webkit-text-fill-color: initial;
      color: #e5e7eb;
      line-height: 1;
      margin-bottom: 0.5rem;
    }
    .value-title { font-size: 1rem; font-weight: 700; margin-bottom: 0.5rem; color: var(--text-primary); }
    .value-desc { font-size: 0.875rem; color: var(--text-muted); line-height: 1.65; }

    .cert-strip {
      display: flex;
      flex-wrap: wrap;
      gap: 10px;
      margin-top: 1.5rem;
    }
    .cert-pill {
      display: inline-flex;
      align-items: center;
      gap: 7px;
      background: #fff;
      border: 1px solid var(--border);
      border-radius: var(--radius-sm);
      padding: 8px 16px;
      font-size: 0.8125rem;
      font-weight: 600;
      color: var(--text-muted);
      box-shadow: var(--shadow-card);
    }
    .cert-pill svg { color: #0085ca; }

    .timeline-alt { display: flex; flex-direction: column; gap: 0; }
    .tl-item {
      display: grid;
      grid-template-columns: 80px 2px 1fr;
      gap: 0 1.5rem;
    }
    .tl-year {
      font-size: 0.8125rem;
      font-weight: 800;
      color: #0085ca;
      padding-top: 0;
      text-align: right;
      line-height: 1.5;
    }
    .tl-line {
      position: relative;
      background: var(--border);
    }
    .tl-line::before {
      content: '';
      position: absolute;
      top: 6px;
      left: 50%;
      transform: translateX(-50%);
      width: 8px;
      height: 8px;
      background: #0085ca;
      border-radius: 50%;
      box-shadow: 0 0 0 3px rgba(0,133,202,0.18);
    }
    .tl-content { padding-bottom: 2rem; }
    .tl-content h4 { font-size: 0.9rem; font-weight: 700; margin-bottom: 4px; color: var(--text-primary); }
    .tl-content p { font-size: 0.8125rem; color: var(--text-muted); line-height: 1.65; }

    .infra-grid {
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      gap: 1.25rem;
    }
    @media (max-width: 720px) { .infra-grid { grid-template-columns: 1fr 1fr; } }
    @media (max-width: 440px) { .infra-grid { grid-template-columns: 1fr; } }

    .infra-card {
      background: #fff;
      border: 1px solid var(--border);
      border-radius: var(--radius-lg);
      padding: 1.5rem;
      box-shadow: var(--shadow-card);
    }
    .infra-icon {
      width: 42px;
      height: 42px;
      border-radius: 10px;
      background: rgba(0,133,202,0.07);
      border: 1px solid rgba(0,133,202,0.18);
      display: flex;
      align-items: center;
      justify-content: center;
      color: #0085ca;
      margin-bottom: 1rem;
    }
    .infra-title { font-size: 0.9rem; font-weight: 700; margin-bottom: 0.35rem; }
    .infra-desc { font-size: 0.8rem; color: var(--text-muted); line-height: 1.6; }
    /* Perf strip */
    .perf-strip{background:linear-gradient(135deg,#f0f6ff 0%,#e8f4fb 100%);border-top:1px solid rgba(0,133,202,.1);border-bottom:1px solid rgba(0,133,202,.1)}
    .perf-strip-inner{max-width:1280px;margin:0 auto;padding:2rem 2.5rem;display:grid;grid-template-columns:repeat(4,1fr);gap:2rem;text-align:center}
    @media(max-width:700px){.perf-strip-inner{grid-template-columns:repeat(2,1fr)}}
    .perf-num{font-size:2rem;font-weight:900;color:#0085ca;letter-spacing:-.04em;line-height:1}
    .perf-label{font-size:.78rem;font-weight:600;color:#64748b;margin-top:.25rem;text-transform:uppercase;letter-spacing:.06em}

body.page-chi-siamo .fn-chi-siamo-inline-01 { background:var(--bg-800);padding:5rem 0; }
body.page-chi-siamo .fn-chi-siamo-inline-02 { display:flex;align-items:center;gap:14px;margin-top:1.25rem; }
body.page-chi-siamo .fn-chi-siamo-inline-03 { width:44px;height:44px;border-radius:50%;background:#0f172a;display:flex;align-items:center;justify-content:center;font-weight:800;color:#fff;font-size:0.875rem;flex-shrink:0;letter-spacing:0.02em; }
body.page-chi-siamo .fn-chi-siamo-inline-04 { font-size:0.8rem;color:var(--text-muted);margin-top:2px; }
body.page-chi-siamo .fn-chi-siamo-inline-05 { font-size:clamp(1.75rem,3vw,2.5rem);font-weight:900;letter-spacing:-0.04em;line-height:1.05;margin-bottom:1.25rem;color:#0a0f1a; }
body.page-chi-siamo .fn-chi-siamo-inline-06 { color:var(--text-muted);line-height:1.75;margin-bottom:1rem;font-size:0.9375rem; }
body.page-chi-siamo .fn-chi-siamo-inline-07 { color:var(--text-muted);line-height:1.75;font-size:0.9375rem; }
body.page-chi-siamo .fn-chi-siamo-inline-08 { color:#22c55e;border-color:rgba(34,197,94,0.25); }
body.page-chi-siamo .fn-chi-siamo-inline-09 { display:grid;grid-template-columns:1fr 560px;gap:5rem;align-items:start; }
body.page-chi-siamo .fn-chi-siamo-inline-10 { font-size:0.8rem;font-weight:700;text-transform:uppercase;letter-spacing:0.12em;color:#0085ca;margin-bottom:0.75rem; }
body.page-chi-siamo .fn-chi-siamo-inline-11 { font-size:clamp(2rem,4.5vw,4rem);font-weight:900;letter-spacing:-0.045em;line-height:1;margin-bottom:1rem;color:#0a0f1a; }
body.page-chi-siamo .fn-chi-siamo-inline-12 { font-style:normal;color:#0085ca; }
body.page-chi-siamo .fn-chi-siamo-inline-13 { color:var(--text-muted);font-size:0.9375rem;line-height:1.75;max-width:400px; }
body.page-chi-siamo .fn-chi-siamo-inline-14 { background:var(--bg-800); }
body.page-chi-siamo .fn-chi-siamo-inline-15 { margin-bottom:3rem;display:flex;align-items:flex-end;justify-content:space-between;flex-wrap:wrap;gap:1rem;border-bottom:2px solid var(--border);padding-bottom:2rem; }
body.page-chi-siamo .fn-chi-siamo-inline-16 { font-size:0.72rem;font-weight:700;text-transform:uppercase;letter-spacing:0.13em;color:#9ca3af;margin-bottom:0.75rem; }
body.page-chi-siamo .fn-chi-siamo-inline-17 { font-size:clamp(2rem,4.5vw,4rem);font-weight:900;letter-spacing:-0.045em;line-height:1;color:#0a0f1a; }
body.page-chi-siamo .fn-chi-siamo-inline-18 { font-size:0.875rem;color:var(--text-muted);max-width:280px;line-height:1.65;text-align:right; }
body.page-chi-siamo .fn-chi-siamo-inline-19 { display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:start;margin-bottom:3rem; }
body.page-chi-siamo .fn-chi-siamo-inline-20 { color:var(--text-muted);font-size:0.9375rem;line-height:1.75; }
body.page-chi-siamo .fn-chi-siamo-inline-21 { color:var(--text-muted);font-size:0.9375rem;line-height:1.75;margin-bottom:1rem; }
body.page-chi-siamo .fn-chi-siamo-inline-22 { background:rgba(34,197,94,0.08);border-color:rgba(34,197,94,0.2);color:#22c55e; }
body.page-chi-siamo .fn-chi-siamo-inline-23 { padding-top:0; }
