/* User-prescribed preview UI. No invented photography or geographical artwork. */
:root{--vu-ink:#f1f0f8;--vu-muted:#ceccdf;--vu-surface:#26253e;--vu-teal:#92e0ce;--vu-amber:#f3cf8b;--vu-lavender:#ded8ff}
.visual-hero{isolation:isolate;position:relative;display:flex;align-items:center;min-height:76vh;padding:54px 0;background:#14132a;overflow:hidden}
.visual-hero .phero-grid{display:grid;grid-template-columns:minmax(0,1.06fr) minmax(0,1fr);gap:48px;align-items:center;z-index:2;position:relative}
.hero-photo,.hero-scrim{position:absolute;inset:0;pointer-events:none}
.photo-placeholder{position:relative;display:flex;align-items:center;justify-content:center;background:#292a35;color:#dddde5;overflow:hidden}
.photo-placeholder>span{font-size:13px;font-weight:500;line-height:1.5;text-align:center;padding:14px;overflow-wrap:anywhere}
.hero-photo>.photo-placeholder{position:absolute;inset:0}
.hero-photo>.photo-placeholder>span{position:absolute;top:12px;right:16px;color:#f1f0f8;z-index:3}
.hero-photo .mobile-photo{display:none}
.hero-scrim{background:linear-gradient(90deg,rgba(20,19,42,.96) 0%,rgba(20,19,42,.85) 42%,rgba(20,19,42,.35) 100%);z-index:1}
.visual-hero .stack{min-width:0;gap:17px;max-width:none}
.visual-hero h1{font-size:clamp(36px,3.3vw,48px);line-height:1.09;max-width:23ch;margin:0;color:var(--vu-ink)}
.visual-hero .lead{font-size:17px;line-height:1.55;color:var(--vu-ink)}
.visual-hero .eyebrow{color:var(--vu-teal)}
.visual-hero .small{font-size:13px;color:var(--vu-muted)}
.visual-hero .evidence{font-size:12px;line-height:1.5}
.visual-hero a{color:#b9def8}
.visual-hero .btn{font-size:14px;min-height:48px;padding:12px 16px}
.visual-hero .btn-primary{background:#d4d2f6;color:#17163a}
.visual-hero .btn-secondary{color:#f1f0f8;border-color:#c4c0e2;background:#14132a}
.hero-byline{display:flex;align-items:center;gap:12px;color:var(--vu-ink);font-size:14px;line-height:1.45}
.hero-byline>img{width:40px;height:40px;object-fit:cover;object-position:center 24%;border-radius:50%;flex-shrink:0}
.deliverable-stack{position:relative;margin:38px 12px 20px 0;min-width:0;isolation:isolate}
.deliverable-stack::before{content:"";position:absolute;inset:0;z-index:-1;background:rgba(20,19,42,.72);border-radius:16px;transform:rotate(-2deg)}
.deliverable-back{position:absolute;inset:-24px -22px 24px 22px;border-radius:16px;background:#3a3950;border:1px solid #ffffff29;padding:6px 23px;opacity:.85;transform:scale(.97);transform-origin:top right;color:#eeeafa;font-family:var(--font-display);font-size:18px;z-index:-1}
.deliverable-front{padding:25px 23px 22px;border:1px solid rgba(255,255,255,.14);border-radius:16px;background:rgba(255,255,255,.06);backdrop-filter:blur(14px);box-shadow:0 22px 64px #0004;transform:rotate(-2deg);color:var(--vu-ink)}
.deliverable-title{display:flex;align-items:center;justify-content:space-between;gap:10px}
.deliverable-title h2{font-family:var(--font-display);font-weight:500;font-size:21px!important;line-height:1.2;max-width:19ch;margin:0;color:var(--vu-ink)}
.sample-badge{font-family:var(--font-body);font-size:10px;letter-spacing:.04em;font-weight:600;background:#44415d;color:#f1edff;padding:5px 7px;border-radius:4px;line-height:1.4;white-space:nowrap}
.sample-product{font-size:12px;color:var(--vu-muted);margin-top:10px;line-height:1.5}
.sample-status-rows{list-style:none;padding:0;margin:23px 0 0;display:grid;gap:0}
.sample-status-rows>li{display:grid;grid-template-columns:minmax(0,1.06fr) minmax(0,.96fr) minmax(0,1.3fr);gap:10px;align-items:start;padding:12px 0;border-top:1px solid #ffffff18}
.route-label{font-size:13px;font-weight:500;line-height:1.4}
.deliverable-front .route-note{font-size:12px;line-height:1.4;color:var(--vu-muted);border:0;padding:0}
.status-pill{display:inline-flex;align-items:center;gap:5px;justify-self:start;border-radius:20px;padding:4px 7px;font-size:10px;font-weight:500;line-height:1.4;background:#293e40;color:var(--vu-teal);white-space:nowrap}
.status-pill i{display:block;width:4px;height:4px;flex-shrink:0;border-radius:50%;background:currentColor}
.status-pill.lavender{background:#3b3551;color:var(--vu-lavender)}
.status-pill.amber{background:#4b3c2c;color:var(--vu-amber)}
.sample-progress{padding-top:17px;display:grid;gap:9px}
.sample-progress>span{font-size:12px;color:var(--vu-muted)}
.progress-track{height:4px;background:#ffffff20;border-radius:8px;overflow:hidden}
.progress-track>span{display:block;width:66.6667%;height:100%;background:var(--vu-teal)}
.scope-sample-rows{list-style:none;margin:26px 0 0;padding:0;display:grid;gap:12px}
.scope-sample-rows>li{display:flex;align-items:center;justify-content:space-between;gap:12px;background:#ffffff07;border:1px solid #ffffff1c;padding:22px 16px;border-radius:8px;font-size:18px}
.scope-sample-rows .scope-recommended{background:#294040;border-color:#78caba}
.access-pathway{padding-block:42px!important}
.pathway-figure{margin:0;background:#1b1a33;border-radius:12px;padding:28px 30px 24px}
.illustrative-label{font-size:12px;color:var(--vu-lavender);margin:0 0 24px;line-height:1.5}
.pathway-grid{display:grid;grid-template-columns:170px minmax(0,1fr);gap:36px;align-items:center}
.pathway-start{background:#34324e;color:var(--vu-ink);padding:18px 14px;border-radius:8px;font-size:15px;font-weight:600;text-align:center;position:relative}
.pathway-start::after{content:"";position:absolute;left:100%;width:18px;top:50%;border-top:1px solid #7e789f}
.pathway-lanes{display:grid;gap:26px;position:relative}
.pathway-lanes::before{content:"";position:absolute;left:-18px;top:49px;bottom:51px;border-left:1px solid #7e789f}
.pathway-lane{position:relative}
.pathway-lane::before{content:"";position:absolute;left:-18px;top:49px;width:18px;border-top:1px solid #7e789f}
.pathway-lane h3{font-family:var(--font-body);font-size:15px;font-weight:600;color:var(--vu-ink);margin:0 0 10px}
.pathway-steps{display:flex;align-items:center;gap:9px;position:relative}
.pathway-step{flex:1;min-width:0;display:flex;align-items:center;justify-content:center;background:#2f2c48;border-radius:6px;padding:14px 12px;font-size:13px;line-height:1.45;text-align:center;min-height:66px;color:var(--vu-ink)}
.pathway-arrow{font-size:17px;color:#b4abc9;flex-shrink:0}
.pathway-public .pathway-step{background:#403956}
.pathway-bracket{margin-top:12px;border-top:1px solid #b6a5d9;position:relative;padding-top:9px}
.pathway-bracket::before,.pathway-bracket::after{content:"";position:absolute;width:1px;height:7px;background:#b6a5d9;top:-7px}
.pathway-bracket::before{left:0}.pathway-bracket::after{right:0}
.pathway-bracket p{font-size:12px;line-height:1.5;color:#ded4ee;text-align:center}
.pathway-private .pathway-steps,.pathway-support .pathway-steps{width:62%}
.pathway-private .pathway-step,.pathway-support .pathway-step{background:#243d3c}
.pathway-private .pathway-steps::after,.pathway-support .pathway-steps::after{content:"";position:absolute;width:46px;height:2px;left:calc(100% + 10px);top:50%;background:linear-gradient(90deg,#7cb9ae88,transparent)}
.pathway-figure>figcaption{font-size:16px;line-height:1.6;color:var(--vu-ink);margin-top:26px}
.pathway-footnotes{margin:14px 0 0;font-size:12px;color:var(--vu-muted);line-height:1.6;scroll-margin-top:100px}
.pathway-footnotes a{color:#b9def8}
#who-we-work-with .buyer-link{padding:0!important;gap:16px;overflow:hidden}
.buyer-media{aspect-ratio:16/10;width:100%;border-radius:7px 7px 0 0;flex-shrink:0}
#who-we-work-with .buyer-link>h3,#who-we-work-with .buyer-link>p,#who-we-work-with .buyer-link>.textlink{margin-inline:22px}
#who-we-work-with .buyer-link>.textlink{padding-bottom:22px}
.assessment-body{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:32px;align-items:center}
.assessment-copy{min-width:0}
.assessment-copy>.lead{font-size:17px;line-height:1.6;margin-bottom:14px}
.assessment-copy>p+ul{margin-top:16px}
.assessment-copy .deliverables{display:grid;grid-template-columns:1fr;gap:11px;margin:14px 0 0;padding-left:20px}
.assessment-copy .deliverables>li{font-size:16px;line-height:1.5}
.report-preview{margin:0;min-width:0;width:100%;color:var(--vu-ink)}
.report-fan{position:relative;width:400px;max-width:100%;height:280px;margin:0 auto}
.report-page{position:absolute;width:160px;height:210px;border-radius:2px;background:#f8f7f4;box-shadow:0 14px 35px #0005;padding:12px 11px;color:#26243c;overflow:hidden}
.report-page h3{font-size:13px!important;font-family:var(--font-display);line-height:1.22;color:#26243c;margin:13px 0 9px}
.report-page p{font-family:var(--font-body);line-height:1.4}
.page-sample{font-size:7px;font-weight:600;letter-spacing:.02em;color:#4d4668}
.page-product{font-size:8px;color:#4d4668}
.page-foot{position:absolute;bottom:13px;font-size:8px;color:#4d4668}
.report-cover{left:4px;top:33px;transform:rotate(-9deg);z-index:1}
.report-routes{left:calc(50% - 80px);top:3px;z-index:3}
.report-plan{right:4px;top:36px;transform:rotate(9deg);z-index:2}
.report-preview figcaption{font-size:13px;line-height:1.55;color:var(--vu-muted);max-width:330px;text-align:center;margin:0 auto}
.mini-route-rows,.mini-plan-rows{list-style:none;padding:0;margin:8px 0 0;display:grid;gap:3px}
.mini-route-rows>li{display:grid;grid-template-columns:1fr auto;align-items:center;gap:3px;font-size:7px;line-height:1.25;padding-bottom:2px;border-bottom:1px solid #ddd9e3}
.mini-status{padding:2px 3px;background:#d7ece5;color:#24463e;font-size:6px;border-radius:3px}
.mini-status.lavender{background:#e6e0ee;color:#4e4069}
.mini-status.amber{background:#f3e4c7;color:#614716}
.mini-plan-rows>li{display:grid;grid-template-columns:1fr auto;align-items:center;gap:3px;background:#eeecef;padding:8px 6px;font-size:9px;line-height:1.4}
.mini-plan-rows b{font-size:9px;font-weight:600}
.visual-upgrade-home .founder{grid-template-columns:320px minmax(0,1fr);gap:44px;align-items:start}
.visual-upgrade-home .founder>.leadership-portrait{width:320px;max-width:320px;height:400px;object-fit:cover;border-radius:10px;object-position:center}
.visual-upgrade-home #leadership{padding-block:36px}
.closing-photo-band{position:relative;isolation:isolate;min-height:350px;display:flex;align-items:center;text-align:center;padding:58px 0!important;overflow:hidden;background:#14132a}
.closing-photo-band .closing-photo,.closing-scrim{position:absolute;inset:0}
.closing-photo-band .closing-photo>span{position:absolute;top:10px;right:16px;z-index:3;color:var(--vu-ink)}
.closing-scrim{background:rgba(20,19,42,.82);z-index:1}
.closing-photo-band>.wrap{position:relative;z-index:2}
.closing-photo-band .sec-head{margin-inline:auto;max-width:800px}
.closing-photo-band .lead{margin-inline:auto;max-width:65ch;color:var(--vu-ink)}
.closing-photo-band .btn-row{justify-content:center}
.closing-photo-band .eyebrow{color:var(--vu-teal)}
.closing-photo-band h2{color:var(--vu-ink)}
.closing-photo-band a:not(.btn){color:#b9def8}
@media(max-width:1000px){
 .assessment-body{grid-template-columns:1fr}
 .report-preview{max-width:450px;margin:12px auto 0}
}
@media(max-width:900px){
 .pathway-grid{grid-template-columns:140px minmax(0,1fr);gap:30px}
 .pathway-private .pathway-steps,.pathway-support .pathway-steps{width:90%}
 .pathway-figure{padding:24px}
}
@media(max-width:767px){
 .visual-upgrade-home .founder{grid-template-columns:1fr;gap:24px}
 .visual-upgrade-home .founder>.leadership-portrait{width:min(100%,320px);height:auto;aspect-ratio:4/5;max-width:320px}
 .closing-photo-band{padding:54px 0 42px!important;min-height:360px}
 .closing-photo-band .closing-photo>span{left:0;right:0;top:0;font-size:11px}
 .buyer-media{aspect-ratio:16/10}
 #who-we-work-with .buyer-link{gap:16px}
 #who-we-work-with .buyer-link>h3,#who-we-work-with .buyer-link>p,#who-we-work-with .buyer-link>.textlink{margin-inline:20px}
 .assessment-body{gap:26px}
 .assessment-copy>.lead{font-size:16px}
 .report-fan{height:265px}
 .report-page{width:145px;height:200px;padding:12px 9px}
 .report-routes{left:calc(50% - 72.5px)}
 .report-cover{left:5px;top:32px;transform:rotate(-7deg)}
 .report-plan{right:5px;top:37px;transform:rotate(7deg)}
 .report-preview figcaption{font-size:12px;text-align:left}
 .access-pathway{padding-block:32px!important}
 .pathway-figure{padding:22px 16px}
 .pathway-grid{grid-template-columns:1fr;gap:30px}
 .pathway-start{width:100%;font-size:15px}
 .pathway-start::after{left:50%;width:0;height:17px;top:100%;border-top:0;border-left:1px solid #7e789f}
 .pathway-lanes{gap:26px}
 .pathway-lanes::before,.pathway-lane::before{display:none}
 .pathway-lane h3{font-size:16px}
 .pathway-steps{flex-direction:column;gap:7px}
 .pathway-step{width:100%;min-height:45px;font-size:14px;padding:12px}
 .pathway-arrow{font-size:0;line-height:12px;height:12px}
 .pathway-arrow::after{content:"↓";font-size:16px}
 .pathway-private .pathway-steps,.pathway-support .pathway-steps{width:calc(100% - 20px)}
 .pathway-private .pathway-steps::after,.pathway-support .pathway-steps::after{left:100%;width:20px;top:auto;bottom:22px}
 .pathway-bracket p{text-align:left;font-size:12px}
 .pathway-figure>figcaption{font-size:15px}
}
@media(max-width:1050px){
 .visual-hero .phero-grid{grid-template-columns:minmax(0,1fr);gap:24px}
 .visual-hero .stack{max-width:760px}
 .visual-hero h1{font-size:46px;max-width:25ch}
 .deliverable-stack{max-width:600px;width:calc(100% - 22px);justify-self:center}
}
@media(max-width:767px){
 .visual-hero{padding:32px 0 38px;min-height:0;align-items:start}
 .visual-hero .phero-grid{gap:22px}
 .visual-hero .stack{gap:17px}
 .visual-hero h1{font-size:34px;max-width:none;line-height:1.12}
 .visual-hero .lead{font-size:16px;line-height:1.55}
 .hero-photo .desktop-photo{display:none}
 .hero-photo .mobile-photo{display:flex}
 .hero-photo>.photo-placeholder>span{top:auto;bottom:8px;right:0;left:0;font-size:11px}
 .hero-scrim{background:linear-gradient(180deg,rgba(20,19,42,.96) 0%,rgba(20,19,42,.9) 60%,rgba(20,19,42,.5) 100%)}
 .hero-byline{font-size:13px}
 .visual-hero .btn-row{display:grid;grid-template-columns:1fr}
 .visual-hero .btn{font-size:13px;padding:12px 10px}
 .visual-hero .evidence{font-size:12px}
 .deliverable-stack{width:100%;margin:14px 0 20px}
 .deliverable-stack::before{transform:none}
 .deliverable-back{inset:-12px 0 12px 12px;transform:none;overflow:hidden;padding:0}
 .deliverable-back>span{display:none}
 .deliverable-front{transform:none;padding:23px 16px 20px}
 .deliverable-title{align-items:start;gap:8px}
 .deliverable-title h2{font-size:20px!important;max-width:16ch}
 .sample-badge{font-size:8px;padding:4px 5px}
 .sample-status-rows>li{grid-template-columns:1fr 1fr;gap:6px 12px;padding:12px 0}
 .route-label{font-size:13px}
 .status-pill{font-size:10px;justify-self:end}
 .route-note{grid-column:1/-1;font-size:12px}
 .scope-sample-rows>li{font-size:17px;flex-wrap:wrap;padding:19px 13px}
}
@media(prefers-reduced-motion:reduce){.visual-hero *{animation:none!important;transition:none!important}}
