.so-page{--so-ink:#1a1a18;--so-ink-deep:#1d1d1b;--so-line:#2a2a2a;background:var(--so-ink-deep);color:#e8e2d8;font-family:var(--display);-webkit-font-smoothing:antialiased;font-weight:300;line-height:1.6}.so-page .so-hero{background:var(--so-ink);border-bottom:1px solid var(--so-line);min-height:62vh;padding:160px 9vw 96px;position:relative}.so-page .so-hero-eye{font-family:var(--display);letter-spacing:.42em;text-transform:uppercase;color:var(--accent);margin-bottom:48px;font-size:11.5px;font-weight:500}.so-page .so-hero-h1{font-family:var(--serif);letter-spacing:-.018em;color:#fff;text-wrap:balance;max-width:1100px;margin-bottom:36px;font-size:clamp(42px,5.6vw,76px);font-weight:400;line-height:1.08}.so-page .so-hero-h1 em{color:var(--sage-soft);font-style:italic;font-weight:400}.so-page .so-hero-lead{font-family:var(--serif);color:#e0dccf;max-width:920px;margin-bottom:36px;font-size:clamp(19px,1.85vw,23px);font-style:italic;font-weight:400;line-height:1.55}.so-page .so-hero-lead strong{color:#f0ead8;font-style:normal;font-weight:500}.so-page .so-hero-supervision{border:1px solid var(--gold);font-family:var(--display);letter-spacing:.32em;text-transform:uppercase;color:var(--gold);border-radius:2px;align-items:center;gap:10px;padding:9px 16px;font-size:11px;font-weight:500;display:inline-flex}.so-page .so-hero-supervision .dot{background:var(--gold);border-radius:50%;width:6px;height:6px}.so-page .so-anello-wrap{background:var(--so-ink-deep);padding:96px 9vw}.so-page .so-anello{background:var(--so-ink);border:1px solid var(--so-line);max-width:1400px;margin:0 auto;padding:72px 56px;position:relative}.so-page .so-anello-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:32px;margin-bottom:36px;display:flex}.so-page .so-anello-head-left{max-width:720px}.so-page .so-anello-icon{border:1px solid var(--accent);width:54px;height:54px;color:var(--accent);justify-content:center;align-items:center;margin-bottom:28px;display:flex}.so-page .so-anello-icon svg{width:26px;height:26px}.so-page .so-anello-eyebrow{font-family:var(--display);letter-spacing:.42em;text-transform:uppercase;color:var(--accent);margin-bottom:14px;font-size:10.5px;font-weight:600}.so-page .so-anello-h3{font-family:var(--display);letter-spacing:.06em;text-transform:uppercase;color:#fff;margin-bottom:8px;font-size:clamp(26px,2.6vw,36px);font-weight:300;line-height:1.12}.so-page .so-anello-sub{font-family:var(--display);letter-spacing:.4em;text-transform:uppercase;color:#cfd6c8;margin-bottom:26px;font-size:10.5px;font-weight:600}.so-page .so-anello p{color:#d8d2c8;max-width:720px;margin-bottom:14px;font-size:14.5px;font-weight:300;line-height:1.8}.so-page .so-anello-lede{font-style:italic;color:#e8e2d8!important;font-size:15.5px!important;font-weight:400!important;line-height:1.7!important;font-family:var(--serif)!important}.so-page .so-anello p:last-of-type{margin-bottom:0}.so-page .so-ai-badge{font-family:var(--display);letter-spacing:.32em;text-transform:uppercase;color:var(--gold);border:1px solid var(--gold);margin-top:20px;padding:7px 16px;font-size:9.5px;font-weight:500;display:inline-block}.so-page .so-service-cols{border-top:1px solid var(--so-line);grid-template-columns:1fr 1fr;gap:48px;margin-top:40px;padding-top:36px;display:grid}.so-page .so-scol .so-scol-h4{font-family:var(--display);letter-spacing:.14em;text-transform:uppercase;color:#e8e2d8;border-bottom:1px solid var(--accent);margin-bottom:20px;padding-bottom:14px;font-size:14px;font-weight:500}.so-page .so-scol ul{color:#d0c8b8;margin:0;padding:0;font-size:14px;font-weight:300;line-height:1.65;list-style:none}.so-page .so-scol ul li{border-bottom:1px solid var(--so-line);align-items:flex-start;gap:12px;padding:0;list-style:none;display:flex}.so-page .so-scol ul li>a{color:inherit;flex:1;align-items:flex-start;gap:10px;padding:14px 0;text-decoration:none;transition:color .25s;display:flex}.so-page .so-scol ul li>a:hover{color:#fff}.so-page .so-scol ul li>a:before{content:"";background:var(--accent);flex-shrink:0;width:4px;height:4px;margin-top:9px;transition:background .25s;transform:rotate(45deg)}.so-page .so-scol ul li>a:hover:before{background:var(--gold)}.so-page .so-scol ul li .so-li-arr{color:var(--accent);font-family:var(--display);opacity:0;align-self:center;margin-left:auto;padding-left:10px;font-size:14px;transition:opacity .3s,transform .3s;transform:translate(-6px)}.so-page .so-scol ul li>a:hover .so-li-arr{opacity:1;transform:translate(0)}.so-page .so-scol ul li.so-li-featured{border:1px solid var(--accent);color:#e8e2d8;background:#7a8d6e24;border-radius:3px;margin-bottom:16px;padding:20px 22px 18px;display:block}.so-page .so-scol ul li.so-li-featured:before{display:none}.so-page .so-scol ul li.so-li-featured .so-feat-title{font-family:var(--display);letter-spacing:.04em;color:#fff;margin-bottom:5px;font-size:15px;font-weight:500;display:block}.so-page .so-scol ul li.so-li-featured .so-feat-sub{font-family:var(--display);letter-spacing:.32em;text-transform:uppercase;color:var(--gold);margin-bottom:12px;font-size:10px;font-weight:600;display:block}.so-page .so-scol ul li.so-li-featured .so-feat-desc{color:#d8d2c8;margin-bottom:16px;font-size:13.5px;font-weight:300;line-height:1.7;display:block}.so-page .so-scol ul li.so-li-featured .so-feat-cta{font-family:var(--display);letter-spacing:.32em;text-transform:uppercase;color:var(--accent);border-bottom:1px solid;align-items:center;gap:12px;padding:6px 0;font-size:10.5px;font-weight:500;text-decoration:none;transition:gap .35s;display:inline-flex}.so-page .so-scol ul li.so-li-featured .so-feat-cta:hover{gap:18px}.so-page .so-scol ul li.so-li-featured .so-feat-cta .arr{background:currentColor;width:16px;height:1px;display:inline-block;position:relative}.so-page .so-scol ul li.so-li-featured .so-feat-cta .arr:after{content:"";border-top:1px solid;border-right:1px solid;width:8px;height:8px;position:absolute;top:-3.5px;right:0;transform:rotate(45deg)}.so-page .so-service-full-row{border-top:1px solid var(--so-line);margin-top:48px;padding-top:40px}.so-page .so-scol-full .so-scol-h4{font-family:var(--display);letter-spacing:.14em;text-transform:uppercase;color:#e8e2d8;border-bottom:1px solid var(--accent);margin-bottom:24px;padding-bottom:14px;font-size:14px;font-weight:500}.so-page .so-scol-full ul{color:#d0c8b8;border-top:1px solid var(--so-line);border-left:1px solid var(--so-line);grid-template-columns:repeat(4,1fr);gap:0;margin:0;padding:0;font-size:13px;font-weight:300;line-height:1.6;list-style:none;display:grid}.so-page .so-scol-full ul li{border-right:1px solid var(--so-line);border-bottom:1px solid var(--so-line);min-height:140px;padding:0;list-style:none;display:flex}.so-page .so-scol-full ul li>a{width:100%;color:inherit;flex-direction:column;gap:10px;padding:20px 22px;text-decoration:none;transition:background .3s;display:flex;position:relative}.so-page .so-scol-full ul li>a:hover{background:#7a8d6e14}.so-page .so-scol-full ul li .so-v-title{font-family:var(--display);letter-spacing:.04em;color:#fff;font-size:13.5px;font-weight:500;transition:color .25s}.so-page .so-scol-full ul li>a:hover .so-v-title{color:var(--gold)}.so-page .so-scol-full ul li .so-v-desc{color:#d0c8b8;font-size:12.5px;font-weight:300;line-height:1.6}.so-page .so-scol-full ul li .so-v-status{font-family:var(--display);letter-spacing:.34em;text-transform:uppercase;color:#a8a29a;border:1px solid #4a4a44;align-items:center;gap:8px;width:fit-content;margin-top:auto;padding:4px 10px;font-size:8.5px;font-weight:500;display:inline-flex}.so-page .so-scol-full ul li .so-v-arr{color:var(--accent);letter-spacing:0;opacity:0;font-size:11px;transition:opacity .3s,transform .3s;transform:translate(-4px)}.so-page .so-scol-full ul li>a:hover .so-v-arr{opacity:1;transform:translate(0)}.so-page .so-supervision-banner{border:1px solid var(--gold);background:#a08a5a14;align-items:center;gap:22px;margin-top:48px;padding:22px 26px;display:flex}.so-page .so-sb-mark{width:42px;height:42px;color:var(--gold);flex-shrink:0;justify-content:center;align-items:center;display:flex}.so-page .so-sb-mark svg{width:30px;height:30px}.so-page .so-sb-eye{font-family:var(--display);letter-spacing:.4em;text-transform:uppercase;color:var(--gold);margin-bottom:4px;font-size:9.5px;font-weight:600}.so-page .so-sb-h{font-family:var(--serif);color:#f0ead8;font-size:17px;font-style:italic;font-weight:400;line-height:1.4}.so-page .so-cta-final{border:1px solid var(--so-line);background:#ffffff06;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:32px;margin-top:32px;padding:40px 36px;display:flex}.so-page .so-cta-final-text{flex:1;min-width:280px}.so-page .so-cta-final-eye{font-family:var(--display);letter-spacing:.42em;text-transform:uppercase;color:var(--accent);margin-bottom:14px;font-size:10px;font-weight:600}.so-page .so-cta-final-h{font-family:var(--serif);color:#fff;letter-spacing:-.01em;margin-bottom:10px;font-size:clamp(22px,2.2vw,30px);font-weight:400;line-height:1.2}.so-page .so-cta-final-sub{font-family:var(--display);color:#d0c8b8;max-width:520px;font-size:14px;font-weight:300;line-height:1.55}.so-page .so-cta-final-btn{font-family:var(--display);letter-spacing:.34em;text-transform:uppercase;background:var(--accent);color:#fff;border:1px solid var(--accent);flex-shrink:0;align-items:center;gap:14px;padding:16px 28px;font-size:11px;font-weight:600;text-decoration:none;transition:background .3s,gap .3s;display:inline-flex}.so-page .so-cta-final-btn:hover{background:var(--sage-deep);border-color:var(--sage-deep);gap:20px}.so-page .so-cta-final-btn .arr{background:currentColor;width:18px;height:1px;display:inline-block;position:relative}.so-page .so-cta-final-btn .arr:after{content:"";border-top:1px solid;border-right:1px solid;width:9px;height:9px;position:absolute;top:-4px;right:0;transform:rotate(45deg)}.so-page .fade-up{opacity:0;transition:opacity .8s,transform .8s;transform:translateY(20px)}.so-page .fade-up.in{opacity:1;transform:translateY(0)}@media (max-width:980px){.so-page .so-anello{padding:48px 32px}.so-page .so-service-cols{grid-template-columns:1fr;gap:32px}.so-page .so-scol-full ul{grid-template-columns:1fr 1fr}}@media (max-width:640px){.so-page .so-hero{padding:140px 24px 72px}.so-page .so-anello-wrap{padding:64px 24px}.so-page .so-anello{padding:36px 24px}.so-page .so-scol-full ul{grid-template-columns:1fr}.so-page .so-cta-final{flex-direction:column;align-items:flex-start;padding:32px 24px}.so-page .so-cta-final-btn{justify-content:center;width:100%}}
