:root { --vss-navy:#10233f; --vss-navy-deep:#09172a; --vss-red:#e32636; --vss-pale:#f3f6fa; --vss-text:#26364a; }
.vss-page{color:var(--vss-text)}.vss-page h1,.vss-page h2,.vss-page h3{color:var(--vss-navy);font-weight:700;letter-spacing:-.025em}
.vss-hero{background:linear-gradient(125deg,var(--vss-navy-deep),var(--vss-navy) 58%,#163c66);color:#fff;padding:100px 0 86px;overflow:hidden;position:relative}.vss-hero:after{background:rgba(255,255,255,.035);border:1px solid rgba(255,255,255,.08);border-radius:50%;content:"";height:560px;position:absolute;right:-210px;top:-210px;width:560px}.vss-hero .container{position:relative;z-index:1}.vss-hero h1{color:#fff;font-size:clamp(2.25rem,4.5vw,4rem);line-height:1.08;margin:18px 0 24px}.vss-kicker,.vss-eyebrow{color:var(--vss-red);font-size:.78rem;font-weight:800;letter-spacing:.13em;text-transform:uppercase}.vss-lead{color:rgba(255,255,255,.82);font-size:1.2rem;line-height:1.7;max-width:720px}.vss-actions{display:flex;flex-wrap:wrap;gap:12px;margin:32px 0 22px}.vss-actions .btn-primary,.vss-contact .btn-primary{background:var(--vss-red);border-color:var(--vss-red)}.vss-actions .btn-primary:hover,.vss-contact .btn-primary:hover{background:#bd1726;border-color:#bd1726}.vss-trust{color:rgba(255,255,255,.72);margin:0}.vss-trust i{color:#7cc89c;margin-right:7px}
.vss-system-card{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.16);border-radius:22px;box-shadow:0 24px 60px rgba(0,0,0,.24);padding:30px}.vss-system-node{background:#fff;border-radius:12px;color:var(--vss-navy);font-size:1.05rem;font-weight:700;padding:19px;text-align:center}.vss-system-node-main{background:var(--vss-red);color:#fff}.vss-system-arrow{color:rgba(255,255,255,.65);padding:12px;text-align:center;transform:rotate(90deg)}
.vss-anchor-nav{background:#fff;border-bottom:1px solid #e3e8ef;box-shadow:0 5px 16px rgba(16,35,63,.06);position:sticky;top:68px;z-index:20}.vss-anchor-nav .container{display:flex;gap:30px;overflow-x:auto;white-space:nowrap}.vss-anchor-nav a{color:var(--vss-navy);font-size:.86rem;font-weight:700;padding:17px 0}.vss-section{padding:88px 0;scroll-margin-top:130px}.vss-section-alt{background:var(--vss-pale)}.vss-section-heading{margin:0 auto 48px;max-width:780px;text-align:center}.vss-section-heading h2,.vss-contact h2,.vss-section h2{font-size:clamp(2rem,3.4vw,3rem);margin:12px 0 18px}.vss-section-heading p,.vss-contact p{font-size:1.08rem;line-height:1.75}
.vss-card,.vss-feature{background:#fff;border:1px solid #e5eaf0;border-radius:16px;box-shadow:0 12px 35px rgba(16,35,63,.07);padding:30px}.vss-card i,.vss-feature>i{color:var(--vss-red);font-size:1.65rem;margin-bottom:18px}.vss-card h3,.vss-feature h3{font-size:1.2rem;margin-bottom:10px}.vss-card p,.vss-feature p{line-height:1.7;margin:0}.vss-feature{display:flex;gap:20px;height:100%}.vss-feature>i{flex:0 0 28px;margin-top:3px}.vss-official{align-items:center;background:var(--vss-navy);border-radius:18px;color:rgba(255,255,255,.8);display:grid;gap:28px;grid-template-columns:1.1fr 1fr;margin-top:18px;padding:38px 42px}.vss-official span{color:#f3838d;font-size:.75rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.vss-official h3{color:#fff;margin:8px 0 0}.vss-official p{line-height:1.7;margin:0}
.vss-shot{background:#fff;border:1px solid #dfe6ee;border-radius:18px;box-shadow:0 20px 50px rgba(16,35,63,.12);margin:0 auto;max-height:430px;overflow:hidden;padding:12px}.vss-shot img{display:block;height:auto;width:100%}.vss-roadmap{align-items:flex-start;background:#fff8e8;border:1px solid #f1dcad;border-radius:16px;display:flex;gap:24px;margin-top:64px;padding:28px}.vss-status{background:#efbe52;border-radius:999px;color:#4a3510;flex:0 0 auto;font-size:.72rem;font-weight:800;padding:7px 11px;text-transform:uppercase}.vss-roadmap h3{font-size:1.25rem;margin:0 0 8px}.vss-roadmap p{margin:0}.vss-section-dark{background:var(--vss-navy-deep);color:rgba(255,255,255,.8)}.vss-section-dark h2{color:#fff}.vss-checklist{list-style:none;margin:0;padding:0}.vss-checklist li{border-bottom:1px solid rgba(255,255,255,.1);padding:13px 0}.vss-checklist i{color:#7cc89c;margin-right:10px}.vss-note{color:rgba(255,255,255,.6);font-size:.88rem;margin-top:20px}.vss-contact{background:linear-gradient(180deg,#fff,var(--vss-pale))}.vss-contact .container{max-width:820px}.vss-mail{color:var(--vss-navy);display:block;font-weight:700;margin-top:18px}
@media(max-width:991px){.vss-hero{padding:72px 0 64px}.vss-anchor-nav{top:58px}.vss-section{padding:64px 0}.vss-official{grid-template-columns:1fr}}
@media(max-width:575px){.vss-anchor-nav .container{gap:22px}.vss-actions .btn{width:100%}.vss-official{padding:28px 24px}.vss-roadmap{display:block}.vss-roadmap .vss-status{display:inline-block;margin-bottom:16px}}

/* ---- Extended landing page (details on demand) ---- */
.vss-hero .vss-actions .btn-primary{color:#fff}
.vss-system-tags{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin-top:22px}
.vss-system-tags span{border:1px solid rgba(255,255,255,.25);border-radius:999px;color:#fff;font-size:.8rem;padding:5px 12px}

.vss-benefits{display:grid;gap:22px;grid-template-columns:repeat(3,minmax(0,1fr))}
.vss-benefit{background:#fff;border:1px solid #e5eaf0;border-radius:16px;box-shadow:0 12px 35px rgba(16,35,63,.07);padding:28px;transition:transform .2s ease,box-shadow .2s ease}
.vss-benefit:hover{box-shadow:0 18px 42px rgba(16,35,63,.12);transform:translateY(-3px)}
.vss-benefit i{align-items:center;background:#fdecee;border-radius:12px;color:var(--vss-red);display:flex;font-size:1.3rem;height:50px;justify-content:center;margin-bottom:18px;width:50px}
.vss-benefit h3{font-size:1.15rem;margin-bottom:8px}
.vss-benefit p{line-height:1.6;margin:0}

.vss-motto{background:var(--vss-red);color:#fff;padding:30px 0}
.vss-motto p{font-size:clamp(1.05rem,2vw,1.35rem);font-weight:700;margin:0;text-align:center}
.vss-motto span{display:inline-block;margin:4px 10px}

.vss-questions{background:var(--vss-pale);border-radius:18px;padding:32px}
.vss-questions-title{color:var(--vss-navy);font-weight:700;margin-bottom:14px}
.vss-questions ul{list-style:none;margin:0 0 20px;padding:0}
.vss-questions li{border-bottom:1px solid #e1e7ee;padding:10px 0}
.vss-questions li i{color:#a7b3c2;margin-right:10px}
.vss-questions-answer{background:#fff;border-left:4px solid #3aa76d;border-radius:10px;line-height:1.65;padding:16px 18px}
.vss-questions-answer i{color:#3aa76d;margin-right:6px}

.vss-bridge{align-items:center;display:grid;gap:24px;grid-template-columns:1fr auto 1fr}
.vss-bridge-side{background:#fff;border:1px solid #e5eaf0;border-radius:18px;box-shadow:0 12px 35px rgba(16,35,63,.07);padding:28px 30px}
.vss-bridge-side h3{font-size:1.2rem;margin-bottom:14px}
.vss-bridge-side h3 i{color:var(--vss-red);margin-right:8px}
.vss-bridge-side ul{list-style:none;margin:0;padding:0}
.vss-bridge-side li{border-top:1px solid #edf0f3;padding:9px 0}
.vss-bridge-center{align-items:center;background:var(--vss-red);border-radius:18px;box-shadow:0 18px 40px rgba(227,38,54,.28);color:#fff;display:flex;flex-direction:column;gap:6px;padding:28px 26px;text-align:center}
.vss-bridge-center i{font-size:1.6rem}
.vss-bridge-center strong{font-size:1.2rem}
.vss-bridge-center small{opacity:.85}

/* Expandable details */
.vss-more{margin-top:14px}
.vss-more summary{color:var(--vss-red);cursor:pointer;display:inline-block;font-weight:700;list-style:none}
.vss-more summary::-webkit-details-marker{display:none}
.vss-more summary::after{content:"\f078";display:inline-block;font-family:"Font Awesome 5 Free";font-size:.7rem;font-weight:900;margin-left:8px;transition:transform .2s ease}
.vss-more[open] summary::after{transform:rotate(180deg)}
.vss-more > div{border-top:1px solid #edf0f3;margin-top:14px;padding-top:14px}
.vss-more > div p{font-size:.95rem;line-height:1.7;margin-bottom:12px}
.vss-more > div p:last-child{margin-bottom:0}
.vss-more-center{margin:36px auto 0;max-width:820px;text-align:center}
.vss-more-center > div{text-align:left}
.vss-more-dark summary{color:#f3838d}
.vss-more-dark > div{border-color:rgba(255,255,255,.12)}
.vss-more-dark > div p{color:rgba(255,255,255,.75)}

.vss-feature-grid{align-items:start;display:grid;gap:22px;grid-template-columns:repeat(3,minmax(0,1fr))}
.vss-feature-grid .vss-feature{height:auto}
.vss-feature h3{margin-bottom:6px}
.vss-feature-highlight{border-color:#f3b8be;box-shadow:0 14px 38px rgba(227,38,54,.12)}

.vss-flow{counter-reset:flow;list-style:none;margin:14px 0;padding:0}
.vss-flow li{counter-increment:flow;font-size:.95rem;line-height:1.5;padding:7px 0 7px 40px;position:relative}
.vss-flow li::before{align-items:center;background:var(--vss-navy);border-radius:50%;color:#fff;content:counter(flow);display:flex;font-size:.78rem;font-weight:700;height:26px;justify-content:center;left:0;position:absolute;top:5px;width:26px}

.vss-layers{display:grid;gap:18px;grid-template-columns:repeat(3,minmax(0,1fr));margin-bottom:64px}
.vss-layers > div{background:#fff;border-radius:16px;padding:26px;position:relative}
.vss-layers span{align-items:center;background:var(--vss-red);border-radius:50%;color:#fff;display:flex;font-weight:800;height:34px;justify-content:center;margin-bottom:14px;width:34px}
.vss-layers h3{font-size:1.1rem;margin-bottom:6px}
.vss-layers p{line-height:1.6;margin:0}

.vss-service{align-items:center;display:grid;gap:48px;grid-template-columns:5fr 7fr;margin-bottom:64px}
.vss-service-reverse .vss-service-text{order:2}
.vss-service h3{font-size:1.6rem;margin:12px 0 10px}
.vss-service .vss-shot{max-height:none}
.vss-ticks{list-style:none;margin:16px 0 0;padding:0}
.vss-ticks li{line-height:1.55;padding:6px 0 6px 28px;position:relative}
.vss-ticks li::before{color:#3aa76d;content:"\2713";font-weight:800;left:4px;position:absolute}
.vss-small{color:#526276;font-size:.93rem}
.vss-status-live{background:#dff3e8;color:#1f6b43}

.vss-roadmap-grid{display:grid;gap:22px;grid-template-columns:repeat(2,minmax(0,1fr))}
.vss-roadmap-grid .vss-roadmap{display:block;margin-top:0}
.vss-roadmap-grid .vss-status{display:inline-block;margin-bottom:14px}
.vss-roadmap-grid p{line-height:1.7}

.vss-faq{max-width:900px}
.vss-faq-item{background:#fff;border:1px solid #e5eaf0;border-radius:14px;margin-bottom:12px;padding:0 24px}
.vss-faq-item summary{color:var(--vss-navy);cursor:pointer;font-size:1.05rem;font-weight:700;list-style:none;padding:19px 34px 19px 0;position:relative}
.vss-faq-item summary::-webkit-details-marker{display:none}
.vss-faq-item summary::after{color:var(--vss-red);content:"+";font-size:1.5rem;line-height:1;position:absolute;right:0;top:18px}
.vss-faq-item[open] summary::after{content:"\2212"}
.vss-faq-item > div{border-top:1px solid #edf0f3;padding:16px 0 20px}
.vss-faq-item p{line-height:1.7;margin:0}

.vss-contact-actions{margin-top:8px}
.vss-contact .btn-primary{color:#fff}
.vss-contact-line{margin-top:22px}
.vss-contact-line a{color:var(--vss-navy);display:inline-block;font-weight:700;margin:0 14px}
.vss-contact-line i{color:var(--vss-red);margin-right:6px}

@media(max-width:991px){
.vss-benefits,.vss-feature-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.vss-bridge{grid-template-columns:1fr}
.vss-bridge-center i{transform:rotate(90deg)}
.vss-service{gap:28px;grid-template-columns:1fr}
.vss-service-reverse .vss-service-text{order:0}
.vss-layers{grid-template-columns:1fr}
}
@media(max-width:767px){
.vss-benefits,.vss-feature-grid,.vss-roadmap-grid{grid-template-columns:1fr}
.vss-questions{padding:24px}
.vss-motto span{display:block}
}
.vss-page .vss-motto p,.vss-page .vss-motto span{color:#fff}
.vss-page .vss-section h2,.vss-page .vss-section-heading h2,.vss-page .vss-contact h2{line-height:1.14}
.vss-page h3{line-height:1.3}
.vss-service-reverse{grid-template-columns:7fr 5fr}
@media(max-width:991px){.vss-service-reverse{grid-template-columns:1fr}}

/* Bus module (compact section) */
.vss-bus{background:linear-gradient(180deg,#fdf3f4,#fff)}
.vss-bus-head{align-items:center;display:grid;gap:48px;grid-template-columns:7fr 5fr;margin-bottom:40px}
.vss-bus-head .vss-status{margin-right:10px;vertical-align:middle}
.vss-bus-head h2{margin-top:14px}
.vss-bus-head p{font-size:1.05rem;line-height:1.75;margin:0}
.vss-bus-points{background:#fff;border:1px solid #f3d3d7;border-radius:16px;list-style:none;margin:0;padding:22px 26px}
.vss-bus-points li{border-bottom:1px solid #f5e6e8;font-weight:600;padding:11px 0}
.vss-bus-points li:last-child{border-bottom:0}
.vss-bus-points i{color:var(--vss-red);margin-right:12px;text-align:center;width:20px}
.vss-bus-shots{align-items:end;display:grid;gap:26px;grid-template-columns:3fr 1fr}
.vss-bus-shots .vss-shot{max-height:none;padding:10px}
.vss-shot-phone{max-width:320px}
.vss-bus .vss-flow li{padding-bottom:10px}
@media(max-width:991px){.vss-bus-head{gap:26px;grid-template-columns:1fr}.vss-bus-shots{grid-template-columns:1fr}.vss-shot-phone{margin:0 auto}}

/* Closing CTA: dark band so it separates clearly from the light footer (like the CTA on the other pages). */
.vss-page .vss-contact{background:linear-gradient(125deg,var(--vss-navy-deep),var(--vss-navy) 60%,#163c66);color:rgba(255,255,255,.82)}
.vss-page .vss-contact h2{color:#fff}
.vss-page .vss-contact p{color:rgba(255,255,255,.82)}
.vss-page .vss-contact .vss-eyebrow{color:#f3838d}
.vss-page .vss-contact-line a{color:#fff}
.vss-page .vss-contact-line a:hover{color:#f3838d}
.vss-page .vss-contact-line i{color:#f3838d}

/* SEO: the H1 is the small keyword line, the question keeps the big headline look. */
.vss-hero h1.vss-kicker{color:#f3838d;font-size:.82rem;font-weight:800;letter-spacing:.13em;line-height:1.5;margin:0;text-transform:uppercase}
.vss-hero-title{color:#fff;font-size:clamp(2.25rem,4.5vw,4rem);font-weight:700;letter-spacing:-.025em;line-height:1.08;margin:18px 0 24px}
.vss-benefit-highlight{border-color:#f3b8be;box-shadow:0 14px 38px rgba(227,38,54,.14)}
.vss-benefit-highlight i{background:var(--vss-red);color:#fff}
.vss-italiano-box{background:#fff;border:1px solid #e5eaf0;border-left:5px solid #0f7b3f;border-radius:16px;margin:0 auto;max-width:900px;padding:34px 38px}
.vss-italiano-box h2{font-size:clamp(1.5rem,2.4vw,2rem)!important;margin:10px 0 14px!important}
.vss-italiano-box p{line-height:1.7}
.vss-italiano-link{color:var(--vss-navy);font-weight:700}
.vss-italiano-link i{color:var(--vss-red);margin-left:6px}
@media(max-width:575px){.vss-italiano-box{padding:26px 22px}}
.vss-hero-title{text-transform:uppercase}

/* Podcast / media block: clearly separated card, ready for further media (e.g. a presentation). */
.vss-media{background:linear-gradient(180deg,#fff,var(--vss-pale))}
.vss-media-card{align-items:center;background:#fff;border:1px solid #e5eaf0;border-radius:22px;box-shadow:0 22px 60px rgba(16,35,63,.12);display:grid;gap:40px;grid-template-columns:1fr 1fr;overflow:hidden;padding:28px}
.vss-media-cover img{border-radius:14px;display:block;height:auto;width:100%}
.vss-media-body{padding:8px 12px 8px 0}
.vss-media-body h2{font-size:clamp(1.7rem,2.6vw,2.3rem)!important;margin:14px 0 12px!important}
.vss-media-body p{line-height:1.7}
.vss-status-podcast{background:var(--vss-red);color:#fff}
.vss-status-podcast i{margin-right:6px}
.vss-audio{display:block;margin:18px 0 12px;width:100%}
.vss-media-actions{margin-bottom:4px}
.vss-media-download{color:var(--vss-navy);font-weight:700}
.vss-media-download i{color:var(--vss-red);margin-right:6px}
.vss-media-download small{color:#6b7a8c;font-weight:400}
@media(max-width:991px){.vss-media-card{gap:24px;grid-template-columns:1fr;padding:20px}.vss-media-body{padding:0 4px 8px}}
.vss-media-card{align-items:start}
