    :root { 
      --gold: #c9a84c; 
      --gold-bright: #e2be72; 
      --gold-muted: #8a6e35; 
      --ink: #1a3a6d; 
      --deep: #142e56; 
      --panel: #244a85; 
      --card: #2e5ca5; 
      --warm: #ffffff; 
      --cream: #faf7f1; 
      --text-dim: #cad5eb; 
      --text-mid: #f0f4ff; 
      --border: rgba(255,255,255,.12); 
      --border-light: rgba(255,255,255,.05); 
    }

    *, *::before, *::after { margin:0; padding:0; box-sizing:border-box; }
    html { scroll-behavior:smooth; font-size:16px; }
    body { font-family:'DM Sans', sans-serif; background:var(--ink); color:var(--text-mid); overflow-x:hidden; }
    
    body::after { content:''; position:fixed; inset:0; z-index:9999; pointer-events:none; background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='300' height='300'%3E%3Cfilter id='g'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='300' height='300' filter='url(%23g)' opacity='0.02'/%3E%3C/svg%3E"); opacity:.3; }

    #nav { position:fixed; top:0; left:0; right:0; z-index:900; height:68px; display:flex; align-items:center; justify-content:space-between; padding:0 5rem; background:rgba(26, 58, 109, 0.95); backdrop-filter:blur(15px); border-bottom:1px solid var(--border-light); box-shadow: 0 2px 10px rgba(0,0,0,0.1); }
    .nav-brand { display:flex; align-items:center; gap:1rem; text-decoration:none; }
    .nav-brand-img { width:40px; height:40px; border:1px solid var(--gold-muted); border-radius:50%; object-fit: cover; }
    .nav-brand-text { font-family:'Playfair Display', serif; font-size:.9rem; font-weight:500; color:var(--warm); letter-spacing:.06em; line-height:1.3; }
    .nav-brand-text small { display:block; font-family:'DM Sans',sans-serif; font-size:.58rem; font-weight:300; letter-spacing:.22em; text-transform:uppercase; color:var(--gold-bright); }
    .nav-links { display:flex; align-items:center; gap:2.8rem; list-style:none; }
    .nav-links a { font-size:.68rem; font-weight:400; letter-spacing:.2em; text-transform:uppercase; color:var(--text-dim); text-decoration:none; transition:color .25s; }
    .nav-links a:hover { color:var(--warm); }
    .nav-cta { background:var(--gold) !important; color:#fff !important; padding:.5rem 1.4rem; font-weight:500 !important; }
    
    .btn { display:inline-flex; align-items:center; gap:.65rem; text-decoration:none; font-size:.78rem; font-weight:500; letter-spacing:.18em; text-transform:uppercase; padding:1rem 2.2rem; transition:all .25s; cursor:pointer; border:none; font-family:inherit; }
    .btn-gold { background:var(--gold); color:#fff; }
    .btn-gold:hover { background:var(--gold-bright); transform:translateY(-2px); box-shadow:0 8px 25px rgba(201,168,76,0.3); }

    section { padding:7rem 8rem; }
    #hero { min-height:100vh; background:var(--ink); display:grid; grid-template-rows:1fr auto; position:relative; padding-top:68px; overflow:hidden; }
    #hero::before { content:''; position:absolute; inset:0; background: radial-gradient(circle at 70% 30%, var(--panel) 0%, var(--ink) 70%); z-index:1; }

    .hero-content { position:relative; z-index:2; display:grid; grid-template-columns:1fr 1fr; align-items:center; padding:4rem 8rem 3rem; gap:5rem; }
    .hero-h1 { font-family:'Playfair Display',serif; font-size: clamp(2.5rem, 4.5vw, 5rem); font-weight: 400; color: var(--warm); line-height: 0.97; margin-bottom: 2rem; text-shadow: 0 2px 4px rgba(0,0,0,0.1); }
    .hero-h1 .name-last { display: block; font-style: italic; color: var(--gold-bright); font-size: clamp(3rem, 5.5vw, 6.5rem); margin-left: -0.04em; }
    
    .hero-roles { display:flex; flex-direction:column; gap:.6rem; margin-bottom:3rem; }
    .hero-role { display:flex; align-items:center; gap:.9rem; font-size:1.1rem; color:var(--text-mid); font-weight:300; }
    .hero-role-dot { width:4px; height:4px; background:var(--gold-bright); border-radius:50%; }
    .hero-desc { font-size:1.2rem; color:var(--warm); line-height:1.85; font-weight:300; padding-left:1.5rem; border-left:2px solid var(--gold); margin-bottom: 2rem; text-align: justify; }
    
    .hero-strip { position:relative; z-index:2; display:flex; border-top:1px solid var(--border-light); margin:0 8rem 0; background: var(--deep); }
    .hero-strip-item { flex:1; padding:1.6rem 2rem; border-right:1px solid var(--border-light); font-size:.78rem; color:var(--text-dim); }
    .hero-strip-item strong { display:block; color:var(--warm); margin-bottom:.2rem; }

    .section-h2 { font-family:'Playfair Display',serif; font-size:clamp(2rem, 2.8vw, 2.6rem); color:var(--warm); margin-bottom:3rem; font-weight:400; }
    
    #servizi { background: var(--panel); border-bottom: 1px solid var(--border-light); }
    .services-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:1px; background:var(--border-light); }
    .service-card { background:var(--panel); padding:4rem 2.5rem; transition:background .3s; }
    .service-card:hover { background:var(--card); }
    
    .service-title { font-family:'Playfair Display',serif; font-size:1.8rem; color:var(--gold-bright); margin-bottom:1.5rem; }
    .service-text { font-size:1.1rem; color:var(--text-mid); line-height:1.8; font-weight:300; text-align: justify; }

    #metodo { background:var(--cream); color: #1a3a6d; }
    #metodo .section-h2 { color: #1a3a6d; }
    .metodo-grid { display:grid; grid-template-columns: 1fr 1fr; gap: 5rem; }
    .reason { display:flex; gap: 1.5rem; margin-bottom: 2.5rem; border-bottom: 1px solid rgba(26, 58, 109, 0.1); padding-bottom: 1.5rem; }
    .reason-num { 
      font-family:'Playfair Display',serif; 
      font-size: 2.2rem; 
      color: var(--gold); 
      font-weight: 700;
      text-shadow: 1px 1px 2px rgba(26, 58, 109, 0.15); 
    }
    .reason-text h4 { margin-bottom: 0.5rem; font-size: 1.1rem; color: var(--ink); }
    .reason-text p { font-size: 0.9rem; line-height: 1.6; color: #333; text-align: justify; }

    #esperienza { background: var(--panel); }
    .tl-item { display: grid; grid-template-columns: 100px 1fr; gap: 2rem; padding: 2rem 0; border-bottom: 1px solid var(--border-light); }
    .tl-year { font-family:'Playfair Display',serif; color: var(--gold-bright); font-size: 1.2rem; }
    .tl-content h4 { color: var(--warm); margin-bottom: 0.5rem; }
    .tl-content p { text-align: justify; }

    #contatti { background:var(--deep); }
    .contatti-layout { display:grid; grid-template-columns:1fr 1.3fr; gap:6rem; }
    .contact-form { background: var(--panel); padding: 3.5rem; box-shadow: 0 15px 35px rgba(0,0,0,0.15); border: 1px solid var(--border-light); }
    .form-input, .form-select { background: rgba(255,255,255,.05) !important; border: 1px solid rgba(255,255,255,0.1) !important; color: var(--warm) !important; padding: .85rem 1.1rem; width: 100%; margin-bottom: 1.2rem; font-family: inherit; font-size: 0.9rem; outline: none; border-radius: 2px; transition: all 0.3s ease; }
    .form-input::placeholder { color: rgba(255, 255, 255, 0.6); }
    .form-input:focus, .form-select:focus { border-color: var(--gold-bright) !important; background: rgba(255,255,255,.1) !important; }
    .form-select { appearance: none; -webkit-appearance: none; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='%23e2be72' viewBox='0 0 16 16'%3E%3Cpath d='M7.247 11.14 2.451 5.658C1.885 5.013 2.345 4 3.204 4h9.592a1 1 0 0 1 .753 1.659l-4.796 5.48a1 1 0 0 1-1.506 0z'/%3E%3C/svg%3E"); background-repeat: no-repeat; background-position: calc(100% - 1.2rem) center; cursor: pointer; color: rgba(255,255,255,0.8) !important; }
    .form-select option { color: #333; }

    footer { background:var(--deep); border-top:1px solid var(--border-light); padding:3rem 8rem; display:flex; justify-content:space-between; align-items:center; }
    .footer-copy { font-size:.68rem; color:var(--text-dim); }
	
    .tabs {
      display: flex;
      gap: 1rem;
      margin-bottom: 2rem;
    }
    
    .tab-btn {
      padding: 0.6rem 1.4rem;
      border: 1px solid var(--border-light);
      background: transparent;
      color: var(--text-dim);
      cursor: pointer;
      font-size: 0.75rem;
      letter-spacing: 0.15em;
      text-transform: uppercase;
      transition: all 0.3s;
    }
    
    .tab-btn:hover,
    .tab-btn.active {
      background: var(--gold);
      color: var(--ink);
    }
    
    .articolo-item {
      padding: 1.5rem;
      border-bottom: 1px solid var(--border-light);
      cursor: pointer;
      transition: background 0.3s;
    }
    
    .articolo-item:hover {
      background: var(--panel);
    }
    
    .articolo-dettaglio {
      padding: 2.5rem;
      background: var(--panel);
      border: 1px solid var(--border-light);
    }
    
    .back-btn {
      margin-bottom: 1.5rem;
      display: inline-block;
      cursor: pointer;
      color: var(--gold-bright);
      font-size: 0.8rem;
    }

    @media (max-width:1100px) { .services-grid { grid-template-columns: 1fr; } }
    @media (max-width:1024px) { #nav { padding:0 2rem; } .nav-links { display:none; } .hero-content, .metodo-grid, .contatti-layout { grid-template-columns:1fr; } section, #hero, .hero-strip { padding:4rem 2rem; margin:0; } .hero-strip { flex-direction: column; } .service-text { font-size: 1.1rem; } }
    /* ================= MOBILE FIX ================= */
    @media (max-width: 768px) {
    
      /* NAV */
      #nav {
        padding: 0 1.2rem;
        height: 60px;
      }
    
      .nav-brand-text {
        font-size: 0.75rem;
      }
    
      /* HERO */
      .hero-content {
        grid-template-columns: 1fr;
        padding: 2rem 1.5rem;
        gap: 2rem;
        text-align: center;
      }
    
      .hero-h1 {
        font-size: 2.2rem;
      }
    
      .hero-h1 .name-last {
        font-size: 2.8rem;
      }
    
      .hero-desc {
        font-size: 1rem;
        padding-left: 0;
        border-left: none;
      }
    
      .hero-roles {
        align-items: center;
      }
    
      /* STRIP */
      .hero-strip {
        flex-direction: column;
        margin: 0;
      }
    
      .hero-strip-item {
        border-right: none;
        border-bottom: 1px solid var(--border-light);
      }
    
      /* SECTION */
      section {
        padding: 3.5rem 1.5rem;
      }
    
      /* SERVIZI */
      .service-card {
        padding: 2rem 1.5rem;
      }
    
      .service-title {
        font-size: 1.4rem;
      }
    
      .service-text {
        font-size: 1rem;
      }
    
      /* METODO */
      .metodo-grid {
        grid-template-columns: 1fr;
        gap: 2rem;
      }
    
      .reason {
        gap: 1rem;
      }
    
      /* ESPERIENZA */
      .tl-item {
        grid-template-columns: 1fr;
        gap: 0.5rem;
      }
    
      .tl-year {
        font-size: 1rem;
      }
    
      /* ARTICOLI */
      .tabs {
        overflow-x: auto;
        flex-wrap: nowrap;
        padding-bottom: 0.5rem;
      }
    
      .tab-btn {
        white-space: nowrap;
        font-size: 0.65rem;
        padding: 0.5rem 1rem;
      }
    
      .articolo-item {
        padding: 1rem;
        font-size: 0.95rem;
      }
    
      .articolo-dettaglio {
        padding: 1.5rem;
      }
    
      /* CONTATTI */
      .contatti-layout {
        grid-template-columns: 1fr;
        gap: 2rem;
      }
    
      .contact-form {
        padding: 2rem 1.5rem;
      }
    
      /* FOOTER */
      footer {
        flex-direction: column;
        gap: 1rem;
        padding: 2rem 1.5rem;
        text-align: center;
      }
    }	