/* Strategic Debt Advisory — page-specific styles (ported from the design mockup) */
details.vn-disc > summary::-webkit-details-marker{display:none}
details.vn-disc > summary{list-style:none}
details.vn-disc[open] > summary .vn-caret{transform:rotate(180deg)}
details.vn-disc > summary:hover{color:var(--cyan-600)}
details.vn-disc[open]{border-top-color:var(--cyan-500)}
.vn-timeline details.vn-tl > summary::-webkit-details-marker{display:none}
.vn-timeline details.vn-tl > summary{list-style:none}
.vn-timeline details.vn-tl{transition:border-color .25s ease,box-shadow .25s ease}
.vn-timeline details.vn-tl[open]{border-color:var(--indigo-800);box-shadow:var(--shadow-md)}
.vn-timeline details.vn-tl[open] > summary .vn-caret{transform:rotate(180deg)}
.vn-timeline details.vn-tl[open] .vn-tlicon{background:var(--indigo-800);border-color:var(--indigo-800);color:#fff}
.vn-timeline details.vn-tl > summary:hover .vn-tlicon{border-color:var(--cyan-500);color:var(--cyan-600);background:var(--cyan-100)}
.vn-timeline details.vn-tl[open] > summary:hover .vn-tlicon{background:var(--indigo-800);border-color:var(--indigo-800);color:#fff}
.vn-timeline details.vn-tl > summary:hover .vn-tltitle{color:var(--cyan-600)}
.vn-timeline .vn-tlicon{background:#fff;border:1px solid var(--color-border);color:var(--indigo-800)}
.vn-timeline .vn-tltitle{color:var(--indigo-800)}
.vn-ind-arrow{opacity:0;transform:translateX(-6px)}
.vn-ind-card:hover .vn-ind-arrow{opacity:1;transform:translateX(0)}
.vn-wa-icon{background:rgba(0,188,212,0.12);border:1px solid rgba(0,188,212,0.45);color:var(--cyan-500);transition:background .3s ease,border-color .3s ease,color .3s ease,transform .4s cubic-bezier(.2,.8,.2,1)}
.vn-wa-block{transition:transform .35s ease,border-color .3s ease}
.vn-wa-block:hover{transform:translateY(-4px);border-top-color:#fff}
.vn-wa-block:hover .vn-wa-icon{background:var(--cyan-500);border-color:var(--cyan-500);color:var(--indigo-800);transform:translateY(-2px) rotate(-8deg) scale(1.1)}
.vn-buyer-row{position:relative;transition:transform .3s ease,box-shadow .3s ease,background .3s ease}
.vn-buyer-row .vn-specicon{transition:background .3s ease,border-color .3s ease,color .3s ease,transform .4s cubic-bezier(.2,.8,.2,1)}
.vn-buyer-title{color:var(--indigo-800);transition:color .25s ease}
.vn-buyer-row:hover{transform:translateY(-5px);background:#fff;box-shadow:var(--shadow-lg);border-radius:var(--radius-sm);z-index:2}
.vn-buyer-row:hover .vn-specicon{background:var(--indigo-800);border-color:var(--indigo-800);color:#fff;transform:rotate(-8deg) scale(1.08)}
.vn-buyer-row:hover .vn-buyer-title{color:var(--cyan-600)}
.vn-tcard{transition:transform .3s ease,box-shadow .3s ease,border-top-color .3s ease}
.vn-tcard .vn-specicon{transition:background .3s ease,border-color .3s ease,color .3s ease,transform .4s cubic-bezier(.2,.8,.2,1)}
.vn-tcard:hover{transform:translateY(-5px);box-shadow:var(--shadow-lg);border-top-color:var(--cyan-500)}
.vn-tcard:hover .vn-specicon{background:var(--indigo-800);border-color:var(--indigo-800);color:#fff;transform:rotate(-8deg) scale(1.08)}
details.vn-disc > summary{color:var(--indigo-800)}
#considerations details.vn-disc{transition:transform .3s ease,box-shadow .3s ease,border-top-color .3s ease}
#considerations details.vn-disc:hover{transform:translateY(-4px);box-shadow:var(--shadow-md);border-top-color:var(--cyan-500)}
#considerations details.vn-disc > summary .vn-i{transition:transform .35s cubic-bezier(.2,.8,.2,1)}
#considerations details.vn-disc:hover > summary .vn-i:first-of-type{transform:scale(1.18) rotate(-8deg)}
details.vn-disc:not([open]) > summary:hover .vn-caret{color:var(--cyan-600);transform:translateY(3px)}
#why-vistanova .vn-service-card{background:var(--indigo-800);border:1px solid rgba(255,255,255,0.16);border-top:2px solid rgba(0,188,212,0.5);box-shadow:0 16px 36px rgba(0,0,0,.34)}
#why-vistanova .vn-service-card:hover{border-color:rgba(255,255,255,0.3);border-top-color:var(--cyan-500);transform:translateY(-7px);box-shadow:0 26px 54px rgba(0,0,0,.44)}
#why-vistanova .vn-service-title{color:#fff}
#why-vistanova .vn-lead{color:#DDE3F5}
#why-vistanova .vn-glyph{background:transparent;border-color:rgba(255,255,255,0.28);color:var(--cyan-500);transition:background .3s ease,border-color .3s ease,color .3s ease,transform .4s cubic-bezier(.2,.8,.2,1)}
#why-vistanova .vn-service-card:hover .vn-glyph{background:var(--cyan-500);border-color:var(--cyan-500);color:var(--indigo-800);transform:rotate(-8deg) scale(1.08)}
@media(min-width:1000px){#geo-split{grid-template-columns:minmax(0,1fr) minmax(0,1.4fr)}#vn-skyline{order:-1}}
@media(prefers-reduced-motion:reduce){.vn-par{transform:none!important}}

/* CTA hover sweep (shared with other pages) */
.vn-cta-anim{gap:10px;position:relative;transition:background .25s ease,border-color .25s ease,color .25s ease,transform .25s ease,box-shadow .25s ease}
.vn-cta-anim .vn-i{transition:transform .25s ease}
.vn-cta-anim:hover{transform:translateY(-2px)}
.vn-cta-anim:hover .vn-i{transform:translateX(4px)}
.vn-cta-anim::after{content:"";position:absolute;left:32px;right:32px;bottom:11px;height:1.5px;background:currentColor;transform:scaleX(0);transform-origin:left;transition:transform .28s ease}
.vn-cta-anim:hover::after{transform:scaleX(1)}
.vn-outline-anim{gap:10px;position:relative;transition:background .25s ease,border-color .25s ease,color .25s ease,transform .25s ease}
.vn-outline-anim .vn-i{transition:transform .25s ease}
.vn-outline-anim:hover{transform:translateY(-2px)}
.vn-outline-anim:hover .vn-i{transform:translateX(4px)}
.vn-outline-anim::after{content:"";position:absolute;left:32px;right:32px;bottom:11px;height:1.5px;background:currentColor;transform:scaleX(0);transform-origin:left;transition:transform .28s ease}
.vn-outline-anim:hover::after{transform:scaleX(1)}
.vn-cta-anim:hover,.vn-outline-anim:hover{background:var(--cyan-500);border-color:var(--cyan-500);color:var(--indigo-900)}
.vn-btn--accent.vn-cta-anim:hover,.vn-hero-btn--ghost.vn-outline-anim:hover{background:var(--cyan-600);border-color:var(--cyan-600);color:#fff;box-shadow:0 10px 26px rgba(0,120,145,.35)}
#vn-nav.solid .vn-navcta:hover{background:var(--cyan-500);border-color:var(--cyan-500);color:var(--indigo-900)}
.vn-hero-btn{background:#fff;color:var(--indigo-900);border-color:#fff}
.vn-hero-btn:hover{background:var(--cyan-500);border-color:var(--cyan-500);color:var(--indigo-900)}
.vn-hero-btn--ghost{background:transparent;color:#fff;border-color:rgba(255,255,255,0.55)}
.vn-hero-btn--ghost:hover{background:var(--cyan-500);border-color:var(--cyan-500);color:var(--indigo-900)}
.vn-inl{color:var(--cyan-600);font-weight:700;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px;transition:color .2s ease}
.vn-inl:hover{color:var(--indigo-800)}
#more .vn-inl,#why-vistanova .vn-inl{color:var(--cyan-500)}
/* fixed-layer parallax: clip-path clips the position:fixed image to its section on every browser incl. iOS Safari */
.vn-fxwrap{position:relative;overflow:hidden;clip-path:inset(0)}
.vn-fx{position:fixed;top:0;left:0;width:100vw;height:100vh;height:100lvh;background-size:cover;background-position:center;background-repeat:no-repeat;z-index:0;pointer-events:none}
.vn-nofx .vn-fx{position:absolute;width:100%;height:100%}
.vn-fxwrap > .vn-fxcontent{position:relative;z-index:1}
/* triggers */
.vn-trig{display:grid;grid-template-columns:minmax(0,1fr);gap:16px}
@media(min-width:700px){.vn-trig{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(min-width:1100px){.vn-trig{grid-template-columns:repeat(3,minmax(0,1fr))}}
.vn-trig-item{display:flex;gap:18px;align-items:flex-start;background:#fff;border:1px solid var(--color-border);border-top:2px solid var(--indigo-800);border-radius:var(--radius-md);padding:24px;transition:transform .3s ease,box-shadow .3s ease,border-top-color .3s ease}
.vn-trig-item .vn-specicon{flex:none;transition:background .3s ease,border-color .3s ease,color .3s ease,transform .4s cubic-bezier(.2,.8,.2,1)}
.vn-trig-item:hover{transform:translateY(-5px);box-shadow:var(--shadow-lg);border-top-color:var(--cyan-500)}
.vn-trig-item:hover .vn-specicon{background:var(--indigo-800);border-color:var(--indigo-800);color:#fff;transform:rotate(-8deg) scale(1.08)}
.vn-trig-item p{font-family:var(--font-ui);font-size:15.5px;font-weight:700;line-height:1.5;color:var(--indigo-800);margin:0;padding-top:4px;text-wrap:pretty}
/* two-form cards */
.vn-forms{display:grid;grid-template-columns:minmax(0,1fr);gap:24px}
@media(min-width:900px){.vn-forms{grid-template-columns:repeat(2,minmax(0,1fr))}}
/* comparison table */
.vn-tbl{display:flex;flex-direction:column;gap:10px}
.vn-tr{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1.3fr) minmax(0,1.5fr);align-items:stretch;background:#fff;border:1px solid var(--color-border);border-left:3px solid var(--indigo-800);border-radius:var(--radius-sm);transition:transform .3s ease,box-shadow .3s ease,border-color .3s ease,background .3s ease}
.vn-tr > div{padding:18px 24px;font-family:var(--font-body);font-size:15px;line-height:1.6;color:var(--ink-700);text-wrap:pretty;display:flex;flex-direction:column;justify-content:center}
.vn-tr > div:first-child{display:flex;flex-direction:row;justify-content:flex-start;align-items:center;gap:14px;font-family:var(--font-ui);font-weight:700;font-size:15px;color:var(--indigo-800)}
.vn-tr > div:last-child{background:rgba(0,188,212,0.06);color:var(--indigo-900);border-left:1px solid rgba(0,188,212,0.35);transition:background .3s ease}
.vn-tr .vn-specicon{width:40px;height:40px;flex:none;transition:background .3s ease,border-color .3s ease,color .3s ease,transform .4s cubic-bezier(.2,.8,.2,1)}
.vn-tr-head{background:var(--indigo-800);border-color:var(--indigo-800);border-left-color:var(--cyan-500)}
.vn-tr-head > div,.vn-tr-head > div:first-child{font-family:var(--font-ui);font-size:11.5px;font-weight:700;letter-spacing:0.14em;text-transform:uppercase;color:#fff;padding:16px 24px}
.vn-tr-head > div{display:flex;flex-direction:row;justify-content:flex-start;align-items:center}
.vn-tr-head > div:last-child{background:transparent;color:var(--cyan-500);border-left-color:rgba(255,255,255,0.16)}
.vn-tbl-body .vn-tr:hover{transform:translateY(-4px) scale(1.012);box-shadow:0 18px 38px rgba(10,15,56,.16);border-color:rgba(0,188,212,.55);border-left-color:var(--cyan-500);background:var(--silver-100);position:relative;z-index:2}
.vn-tbl-body .vn-tr:hover > div:first-child{color:var(--cyan-600)}
.vn-tbl-body .vn-tr:hover > div:last-child{background:rgba(0,188,212,0.16)}
.vn-tbl-body .vn-tr:hover .vn-specicon{background:var(--indigo-800);border-color:var(--indigo-800);color:var(--cyan-500);transform:rotate(-8deg) scale(1.08)}
.vn-lbl{display:none}
@media(max-width:760px){
  .vn-tr-head{display:none}
  .vn-tr{grid-template-columns:minmax(0,1fr)}
  .vn-tr > div{padding:10px 20px}
  .vn-tr > div:first-child{padding-top:18px;font-size:16px}
  .vn-tr > div:last-child{border-left:0;padding-bottom:18px}
  .vn-lbl{display:block;font-family:var(--font-ui);font-size:10.5px;font-weight:700;letter-spacing:0.14em;text-transform:uppercase;color:var(--ink-500);margin-bottom:4px}
  .vn-tr > div:last-child .vn-lbl{color:var(--cyan-600)}
}
.vn-trig2{grid-template-columns:minmax(0,1fr)}
@media(min-width:800px){.vn-trig.vn-trig2{grid-template-columns:repeat(2,minmax(0,1fr))}}
.vn-trig2 .vn-trig-item{padding:28px}
.vn-trig2 .vn-trig-item:hover strong{color:var(--cyan-600)}
.vn-trig2 strong{transition:color .25s ease}
@media(min-width:900px){.vn-forms.vn-forms3{grid-template-columns:repeat(3,minmax(0,1fr))}}
.vn-tr.vn-tr2{grid-template-columns:minmax(0,1fr) minmax(0,1.9fr)}
@media(max-width:760px){.vn-tr.vn-tr2{grid-template-columns:minmax(0,1fr)}}
.vn-crit{display:grid;grid-template-columns:minmax(0,1fr);gap:0 56px}
@media(min-width:760px){.vn-crit{grid-template-columns:repeat(2,minmax(0,1fr))}}
.vn-crit-item{display:flex;align-items:center;gap:20px;padding:20px 8px;border-bottom:1px solid var(--color-border);font-family:var(--font-ui);font-size:16px;font-weight:700;line-height:1.45;color:var(--indigo-800);transition:color .25s ease,padding-left .3s ease,border-color .3s ease;text-wrap:pretty}
.vn-crit-n{flex:none;width:44px;height:44px;border-radius:50%;border:1px solid var(--color-border);display:flex;align-items:center;justify-content:center;font-size:11.5px;letter-spacing:0.12em;color:var(--cyan-600);transition:background .3s ease,border-color .3s ease,color .3s ease,transform .4s cubic-bezier(.2,.8,.2,1)}
.vn-crit-item:hover{color:var(--cyan-600);padding-left:16px;border-bottom-color:var(--cyan-500)}
.vn-crit-item:hover .vn-crit-n{background:var(--indigo-800);border-color:var(--indigo-800);color:#fff;transform:rotate(-8deg) scale(1.08)}
.vn-split{display:grid;grid-template-columns:minmax(0,1fr);gap:32px;align-items:start}
@media(min-width:1000px){.vn-split{grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:88px}.vn-split-head{position:sticky;top:120px}}
.vn-split-head .vn-h2{max-width:16ch}
.vn-cols2{display:grid;grid-template-columns:minmax(0,1fr);gap:28px 64px;margin-top:44px}
@media(min-width:900px){.vn-cols2{grid-template-columns:repeat(2,minmax(0,1fr))}}
.vn-col-rule{border-top:2px solid var(--indigo-800);padding-top:24px}
.vn-col-rule + .vn-col-rule{border-top-color:var(--cyan-500)}
.vn-trows{display:flex;flex-direction:column;border-top:1px solid var(--color-border)}
.vn-trow{display:grid;grid-template-columns:48px minmax(0,15rem) minmax(0,1fr);gap:32px;align-items:center;padding:26px 24px;border-bottom:1px solid var(--color-border);border-radius:var(--radius-sm);position:relative;transition:transform .3s ease,box-shadow .3s ease,background .3s ease}
.vn-trow .vn-specicon{transition:background .3s ease,border-color .3s ease,color .3s ease,transform .4s cubic-bezier(.2,.8,.2,1)}
.vn-trow-t{font-family:var(--font-display);font-size:1.1875rem;line-height:1.3;color:var(--indigo-800);transition:color .25s ease;text-wrap:balance}
.vn-trow-d{font-size:15px;line-height:1.7;text-wrap:pretty;max-width:72ch}
.vn-trow:hover{transform:translateY(-4px);background:#fff;box-shadow:inset 3px 0 0 var(--cyan-500),var(--shadow-lg);z-index:2}
.vn-trow:hover .vn-trow-t{color:var(--cyan-600)}
.vn-trow:hover .vn-specicon{background:var(--indigo-800);border-color:var(--indigo-800);color:#fff;transform:rotate(-8deg) scale(1.08)}
@media(max-width:760px){.vn-trow{grid-template-columns:44px minmax(0,1fr);gap:10px 18px;padding:22px 16px}.vn-trow-d{grid-column:2}}
.vn-acq-media{height:clamp(300px,40vw,520px);border-radius:var(--radius-md);background:#0b0b0b;box-shadow:var(--shadow-lg)}
.vn-acq-panel{position:relative;z-index:2;background:var(--indigo-800);border-top:2px solid var(--cyan-500);border-radius:var(--radius-md);box-shadow:0 22px 50px rgba(10,15,56,.28);padding:40px 44px;max-width:640px;margin:-150px 0 0 48px}
@media(max-width:760px){.vn-acq-panel{margin:-90px 16px 0;padding:30px 26px}}
.vn-acq-body{display:grid;grid-template-columns:minmax(0,1fr);gap:28px 72px;margin-top:56px}
@media(min-width:960px){.vn-acq-body{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr)}}
#why-cards{display:grid;grid-template-columns:minmax(0,1fr);gap:20px}
@media(min-width:700px){#why-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(min-width:1100px){#why-cards{grid-template-columns:repeat(3,minmax(0,1fr))}}
#geo-split{display:grid;grid-template-columns:minmax(0,1fr);gap:40px;align-items:center}
@media(min-width:1000px){#geo-split{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:72px}}
.vn-geo-img{position:relative;border-radius:var(--radius-md);overflow:hidden;aspect-ratio:16/10;background:#0b0b0b;box-shadow:var(--shadow-lg)}
