/* Extracted page CSS from contatti.html. */

html,body{background:#fff;}
    .contact-page-hero {
      padding: 0;
      margin-top: 0;
    }

    .contact-main {
      display: grid;
      grid-template-columns: 1fr 360px;
      gap: 3.5rem;
      align-items: start;
    }
    @media (max-width: 900px) { .contact-main { grid-template-columns: 1fr; gap: 2.5rem; } }

    .form-card {
      background: #fff;
      border: 1px solid var(--border);
      border-radius: var(--radius-xl);
      padding: 2.5rem;
      box-shadow: var(--shadow-card);
    }

    .sidebar-stack {
      display: flex;
      flex-direction: column;
      gap: 1rem;
      position: sticky;
      top: var(--header-h);
    }

    .info-card {
      background: #fff;
      border: 1px solid var(--border);
      border-radius: var(--radius-xl);
      padding: 1.75rem;
      box-shadow: var(--shadow-card);
    }

    .info-row {
      display: flex;
      gap: 14px;
      align-items: flex-start;
      margin-bottom: 1.25rem;
    }
    .info-row:last-child { margin-bottom: 0; }

    .info-icon {
      width: 38px;
      height: 38px;
      border-radius: 9px;
      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;
      flex-shrink: 0;
    }
    .info-label {
      font-size: 0.7rem;
      font-weight: 700;
      text-transform: uppercase;
      letter-spacing: 0.1em;
      color: var(--text-dim);
      margin-bottom: 3px;
    }
    .info-value {
      font-size: 0.875rem;
      color: var(--text-primary);
      font-weight: 500;
      line-height: 1.55;
    }
    .info-value a { color: #0085ca; }

    .response-card {
      background: linear-gradient(135deg, rgba(0,133,202,0.06) 0%, rgba(0,133,202,0.02) 100%);
      border: 1px solid rgba(0,133,202,0.2);
      border-radius: var(--radius-xl);
      padding: 1.5rem;
    }
    .response-title { font-size: 0.875rem; font-weight: 700; margin-bottom: 0.75rem; }
    .response-item { display: flex; align-items: center; gap: 8px; font-size: 0.8125rem; color: var(--text-muted); margin-bottom: 7px; }
    .response-item:last-child { margin-bottom: 0; }
    .response-item svg { color: #0085ca; flex-shrink: 0; }

    .contact-faq { max-width: 640px; }

    .channel-grid {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 1rem;
      margin-top: 3rem;
    }
    @media (max-width: 600px) { .channel-grid { grid-template-columns: 1fr; } }

    .channel-card {
      background: #fff;
      border: 1px solid var(--border);
      border-radius: var(--radius-lg);
      padding: 1.5rem;
      box-shadow: var(--shadow-card);
      transition: all 0.2s;
      text-decoration: none;
      display: block;
    }
    .channel-card:hover {
      border-color: var(--border-flame);
      transform: translateY(-2px);
      box-shadow: 0 4px 20px rgba(0,133,202,0.1);
    }
    .channel-icon {
      width: 42px;
      height: 42px;
      border-radius: 10px;
      display: flex;
      align-items: center;
      justify-content: center;
      margin-bottom: 1rem;
    }
    .channel-title { font-size: 0.9375rem; font-weight: 700; color: var(--text-primary); margin-bottom: 0.35rem; }
    .channel-desc { font-size: 0.8125rem; color: var(--text-muted); line-height: 1.55; }
    .channel-cta { font-size: 0.8125rem; font-weight: 600; color: #0085ca; margin-top: 0.75rem; display: inline-flex; align-items: center; gap: 4px; }

body.page-contatti .fn-contatti-inline-01 { padding-top:0; }
body.page-contatti .fn-contatti-inline-02 { font-size:1.5rem;font-weight:900;letter-spacing:-0.035em;margin-bottom:0.4rem;color:#0a0f1a; }
body.page-contatti .fn-contatti-inline-03 { font-size:0.875rem;color:var(--text-muted);margin-bottom:1.75rem;line-height:1.65; }
body.page-contatti .fn-contatti-inline-04 { min-height:150px; }
body.page-contatti .fn-contatti-inline-05 { margin-bottom:0; }
body.page-contatti .fn-contatti-inline-06 { display:flex;align-items:flex-start;gap:10px;cursor:pointer; }
body.page-contatti .fn-contatti-inline-07 { margin-top:3px;accent-color:#0085ca; }
body.page-contatti .fn-contatti-inline-08 { font-size:0.8125rem;color:var(--text-muted);line-height:1.5; }
body.page-contatti .fn-contatti-inline-09 { color:#0085ca; }
body.page-contatti .fn-contatti-inline-10 { margin-top:1.5rem; }
body.page-contatti .fn-contatti-inline-11 { justify-content:center; }
body.page-contatti .fn-contatti-inline-12 { padding:1.25rem;background:#fff;border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-card); }
body.page-contatti .fn-contatti-inline-13 { font-size:0.8rem;color:var(--text-muted);line-height:1.6; }
body.page-contatti .fn-contatti-inline-14 { color:var(--text-primary); }
body.page-contatti .fn-contatti-inline-15 { color:#0085ca;font-weight:600; }
body.page-contatti .fn-contatti-inline-16 { background:var(--bg-800);padding:4rem 0; }
body.page-contatti .fn-contatti-inline-17 { font-size:clamp(1.75rem,3.5vw,2.75rem);font-weight:900;letter-spacing:-0.04em;margin-bottom:0.5rem;color:#0a0f1a; }
body.page-contatti .fn-contatti-inline-18 { color:var(--text-muted);font-size:0.875rem;margin-bottom:0; }
body.page-contatti .fn-contatti-inline-19 { background:rgba(0,133,202,0.08);border:1px solid rgba(0,133,202,0.18);color:#0085ca; }
body.page-contatti .fn-contatti-inline-20 { background:rgba(59,130,246,0.08);border:1px solid rgba(59,130,246,0.2);color:#3b82f6; }
body.page-contatti .fn-contatti-inline-21 { background:rgba(34,197,94,0.08);border:1px solid rgba(34,197,94,0.2);color:#22c55e; }
body.page-contatti .fn-contatti-inline-22 { background:rgba(139,92,246,0.08);border:1px solid rgba(139,92,246,0.2);color:#8b5cf6; }
body.page-contatti .fn-contatti-inline-23 { max-width:800px;margin:0 auto; }
body.page-contatti .fn-contatti-inline-24 { font-size:clamp(1.75rem,3.5vw,2.75rem);font-weight:900;letter-spacing:-0.045em;margin-bottom:0.5rem; }
body.page-contatti .fn-contatti-inline-25 { color:var(--text-muted);font-size:0.875rem;margin-bottom:2.5rem; }
