/* ── Pagina "Diventa associato" ── */
.socio{--navy:#063d72;--deep:#042a50;--blue:#0a78c7;--red:#e61e3a;--green:#159b5c;font-family:"Manrope","Avenir Next","Segoe UI",system-ui,sans-serif;color:#2a4660;background:#fff}
.socio .socio-wrap{width:min(1180px,calc(100% - 40px));margin:0 auto}
.socio h1,.socio h2,.socio h3{font-family:inherit;letter-spacing:-.02em}
.socio-eyebrow{margin:0 0 12px!important;font-size:12px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:var(--blue)}
.socio-sez{padding:96px 0}
.socio-head{max-width:720px;margin-bottom:44px}
.socio-head.is-center{margin-left:auto;margin-right:auto;text-align:center}
.socio-head h2,.socio-perche-txt h2,.socio-contatti-info h2{margin:0 0 14px;font-size:clamp(1.8rem,3.4vw,2.6rem);line-height:1.12;font-weight:800;color:var(--navy)}
.socio-intro{font-size:1.08rem;line-height:1.65;color:#4f677c;margin:0}

/* Le griglie non ereditano gli spazi verticali dei gruppi di WordPress */
.socio .wp-block-group>.wp-block-group__inner-container{display:contents}
.socio :is(.socio-hero-grid,.socio-numeri-grid,.socio-grid,.socio-perche-grid,.socio-steps,.socio-contatti-grid,.socio-perchi)>.wp-block-group__inner-container>*{margin-block-start:0!important;margin-top:0!important}
.socio>.wp-block-group{margin-block-start:0!important;margin-top:0!important}

/* Hero */
.socio-hero{position:relative;overflow:hidden;padding:84px 0 96px;color:#d6e4f1;background:repeating-linear-gradient(115deg,rgba(255,255,255,.03) 0 2px,transparent 2px 22px),radial-gradient(900px 520px at 90% 10%,rgba(25,169,219,.28),transparent 60%),radial-gradient(700px 420px at 0% 100%,rgba(21,155,92,.18),transparent 60%),linear-gradient(120deg,var(--deep) 0%,var(--navy) 55%,#0a4f8f 100%)}
.socio-hero-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:56px;align-items:center}
.socio-hero .socio-eyebrow{color:#8fd0f5}
.socio-title{margin:0 0 18px;color:#fff;font-size:clamp(2.2rem,5vw,3.6rem);line-height:1.04;font-weight:800}
.socio-title strong{color:#8fd0f5;font-weight:800}
.socio-lead{margin:0 0 30px!important;max-width:600px;font-size:1.15rem;line-height:1.65;color:#c9dcee}
.socio-actions{gap:12px}
.socio-hero-card{position:relative;padding:30px 30px 26px;border-radius:24px;background:#fff;color:#2a4660;box-shadow:0 30px 70px rgba(2,20,40,.4)}
.socio-hero-card::before{content:"";position:absolute;left:30px;right:30px;top:0;height:4px;border-radius:0 0 4px 4px;background:linear-gradient(90deg,var(--green) 0 33%,#fff 33% 66%,var(--red) 66%)}
.socio-card-kicker{margin:0 0 14px!important;font-size:13px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--navy)}
.socio-card-note{margin:16px 0 0!important;padding-top:14px;border-top:1px solid #e8eff5;font-size:14px;font-weight:700;color:var(--green)}
.socio-check{margin:0;padding:0;list-style:none}
.socio-check li{position:relative;padding:0 0 0 32px;margin:0 0 12px;line-height:1.5}
.socio-check li::before{content:"";position:absolute;left:0;top:1px;width:22px;height:22px;border-radius:50%;background:#e5f5ec url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23159b5c' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 12 4 4 8-8'/%3E%3C/svg%3E") center/13px no-repeat}
.socio-check strong{color:var(--navy)}

/* Numeri */
.socio-numeri{background:#f4f8fc;border-bottom:1px solid #e5edf3}
.socio-numeri-grid{display:grid;grid-template-columns:repeat(4,1fr)}
.socio-num{padding:30px 20px;text-align:center;border-left:1px solid #e1eaf2}
.socio-num:first-child{border-left:0}
.socio-num-n{margin:0!important;font-size:clamp(1.9rem,3.4vw,2.6rem);font-weight:800;line-height:1;color:var(--navy)}
.socio-num-l{margin:6px 0 0!important;font-size:14px;font-weight:600;color:#5b7690}

/* Vantaggi */
.socio-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.socio-card{position:relative;padding:26px 24px 24px;border:1px solid #e1eaf2;border-radius:20px;background:#fff;transition:transform .25s,box-shadow .25s,border-color .25s}
.socio-card::before{content:"";display:block;width:52px;height:52px;margin-bottom:18px;border-radius:14px;background:#eef5fb var(--ic) center/28px no-repeat}
.socio-card:hover{transform:translateY(-4px);border-color:#c5d9ea;box-shadow:0 22px 44px rgba(6,61,114,.12)}
.socio-card h3{margin:0 0 8px;font-size:1.12rem;line-height:1.3;font-weight:800}
.socio-card h3 a{color:var(--navy);text-decoration:none}
.socio-card h3 a::after{content:"";position:absolute;inset:0}
.socio-card p{margin:0;font-size:.95rem;line-height:1.6;color:#4f677c}

/* Perché */
.socio-perche{position:relative;isolation:isolate;background:#f7fafc}
.socio-perche-grid{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:64px;align-items:center}
.socio-perche-img{margin:0!important;position:relative}
.socio-perche-img img{display:block;width:100%;height:520px;object-fit:cover;border-radius:24px;box-shadow:0 30px 60px rgba(6,61,114,.18)}
.socio-perche-img::after{content:"";position:absolute;left:-14px;bottom:-14px;width:120px;height:120px;border-radius:24px;background:repeating-linear-gradient(45deg,rgba(10,120,199,.18) 0 2px,transparent 2px 10px);z-index:-1}
.socio-perche-txt p{font-size:1.04rem;line-height:1.7;color:#4f677c}
.socio-check.is-dark li{margin-bottom:14px;color:#3a556d}

/* Passi */
.socio-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.socio-step{position:relative;padding:30px 28px;border-radius:20px;background:linear-gradient(160deg,#fff,#f4f8fc);border:1px solid #e1eaf2}
.socio-step-n{margin:0 0 14px!important;display:inline-grid;place-items:center;width:46px;height:46px;border-radius:50%;background:var(--navy);color:#fff;font-weight:800}
.socio-step h3{margin:0 0 8px;font-size:1.2rem;font-weight:800;color:var(--navy)}
.socio-step p:last-child{margin:0;color:#4f677c;line-height:1.6}
.socio-perchi{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:10px 16px;margin-top:34px;padding:18px 24px;border-radius:16px;background:#f4f8fc;text-align:center}
.socio-perchi>*{margin:0!important}
.socio-perchi-t{font-weight:800;color:var(--navy)}
.socio-perchi-l{color:#4f677c;font-weight:600}

/* Contatti e modulo */
.socio-contatti{background:linear-gradient(180deg,#f4f8fc,#fff)}
.socio-contatti-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:48px;align-items:start}
.socio-contatti-info>p{color:#4f677c;line-height:1.65}
.socio-contatto{display:flex;align-items:center;gap:14px;margin-top:12px;padding:14px 16px;border:1px solid #e1eaf2;border-radius:16px;background:#fff}
.socio-contatto::before{content:"";flex:none;width:44px;height:44px;border-radius:12px;background:#eef5fb var(--ic) center/22px no-repeat}
.socio-contatto p{margin:0!important;font-size:.95rem;line-height:1.45;color:#4f677c}
.socio-contatto strong{display:block;font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:#7a93a9}
.socio-contatto a{color:var(--navy);font-weight:800;text-decoration:none}
.socio-contatto a:hover{color:var(--blue)}
.socio-modulo{padding:32px;border-radius:24px;background:#fff;border:1px solid #e1eaf2;box-shadow:0 24px 56px rgba(6,61,114,.12)}
.socio-modulo-t{margin:0 0 18px!important;font-size:1.3rem;font-weight:800;color:var(--navy)}

/* FAQ */
.socio-faq-wrap{max-width:860px}
.socio-faq-item{margin:0 0 12px;border:1px solid #e1eaf2;border-radius:16px;background:#fff;overflow:hidden}
.socio-faq-item summary{position:relative;cursor:pointer;list-style:none;padding:18px 56px 18px 22px;font-weight:800;color:var(--navy)}
.socio-faq-item summary::-webkit-details-marker{display:none}
.socio-faq-item summary::after{content:"+";position:absolute;right:20px;top:50%;transform:translateY(-50%);width:28px;height:28px;display:grid;place-items:center;border-radius:50%;background:#eef5fb;color:var(--blue);font-size:18px}
.socio-faq-item[open] summary::after{content:"–"}
.socio-faq-item p{margin:0;padding:0 22px 20px;color:#4f677c;line-height:1.65}

.socio-ic-shield{--ic:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230a78c7' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d=%22M12 3 4.5 6v5.5c0 4.6 3.2 8.4 7.5 9.5 4.3-1.1 7.5-4.9 7.5-9.5V6Z%22/%3E%3Cpath d=%22m8.8 12 2.2 2.2 4.4-4.4%22/%3E%3C/svg%3E")}
.socio-ic-scale{--ic:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230a78c7' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d=%22M12 4v16M7 20h10M5 7h14%22/%3E%3Cpath d=%22m5 7-3 6a3 3 0 0 0 6 0Zm14 0-3 6a3 3 0 0 0 6 0Z%22/%3E%3C/svg%3E")}
.socio-ic-education{--ic:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230a78c7' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d=%22m2 9 10-5 10 5-10 5Z%22/%3E%3Cpath d=%22M6 11v5c0 1.7 2.7 3 6 3s6-1.3 6-3v-5M22 9v6%22/%3E%3C/svg%3E")}
.socio-ic-badge{--ic:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230a78c7' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d=%22M20.6 13.4 13.4 20.6a2 2 0 0 1-2.8 0L3 13V3h10l7.6 7.6a2 2 0 0 1 0 2.8Z%22/%3E%3Ccircle cx=%227.5%22 cy=%227.5%22 r=%221.5%22/%3E%3C/svg%3E")}
.socio-ic-trending{--ic:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230a78c7' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d=%22m3 17 6-6 4 4 8-8%22/%3E%3Cpath d=%22M15 7h6v6%22/%3E%3C/svg%3E")}
.socio-ic-envelope{--ic:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230a78c7' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x=%223%22 y=%225%22 width=%2218%22 height=%2214%22 rx=%222%22/%3E%3Cpath d=%22m3 7 9 6 9-6%22/%3E%3C/svg%3E")}
.socio-ic-handshake{--ic:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230a78c7' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d=%22m11 17 2 2a1.4 1.4 0 0 0 2-2%22/%3E%3Cpath d=%22m14 14 2.5 2.5a1.4 1.4 0 0 0 2-2L15 11l-3 3-1.5-1.5a1.4 1.4 0 0 1 0-2L13 8l2-1 6 5%22/%3E%3Cpath d=%22M3 12l5-5 3 1%22/%3E%3Cpath d=%22m7 15 2 2a1.4 1.4 0 0 0 2-2%22/%3E%3C/svg%3E")}
.socio-ic-people{--ic:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230a78c7' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx=%229%22 cy=%228%22 r=%223.5%22/%3E%3Cpath d=%22M2.5 20a6.5 6.5 0 0 1 13 0%22/%3E%3Cpath d=%22M16 4.5a3.5 3.5 0 0 1 0 7M18 14a6.5 6.5 0 0 1 3.5 6%22/%3E%3C/svg%3E")}
.socio-ic-phone{--ic:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230a78c7' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d=%22M5 3h3l2 5-2.5 1.5a11 11 0 0 0 5 5L14 12l5 2v3a2 2 0 0 1-2 2A15 15 0 0 1 3 5a2 2 0 0 1 2-2Z%22/%3E%3C/svg%3E")}
.socio-ic-whatsapp{--ic:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230a78c7' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d=%22M3.5 20.5 5 16a8.5 8.5 0 1 1 3 3Z%22/%3E%3Cpath d=%22M9 8.5c0 3.5 2.5 6.5 6.5 6.5l1-1.5-2-1-1 .8a5 5 0 0 1-2.5-2.5l.8-1-1-2Z%22/%3E%3C/svg%3E")}
.socio-ic-pin{--ic:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230a78c7' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d=%22M12 21s-6.5-5.6-6.5-11a6.5 6.5 0 0 1 13 0C18.5 15.4 12 21 12 21Z%22/%3E%3Ccircle cx=%2212%22 cy=%2210%22 r=%222.4%22/%3E%3C/svg%3E")}

@media (max-width:1080px){
  .socio-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:900px){
  .socio-hero-grid,.socio-perche-grid,.socio-contatti-grid{grid-template-columns:minmax(0,1fr);gap:36px}
  .socio-steps{grid-template-columns:minmax(0,1fr)}
  .socio-numeri-grid{grid-template-columns:repeat(2,1fr)}
  .socio-num:nth-child(3){border-left:0}
  .socio-num:nth-child(n+3){border-top:1px solid #e1eaf2}
  .socio-perche-img img{height:360px}
  .socio-sez{padding:68px 0}
}
@media (max-width:560px){
  .socio .socio-wrap{width:calc(100% - 32px)}
  .socio-hero{padding:56px 0 64px}
  .socio-grid{grid-template-columns:minmax(0,1fr)}
  .socio-modulo{padding:22px}
}
