/* Visual project gallery. Real screenshots and conceptual visuals stay distinguishable. */
.p-tool-header{min-height:120px;padding:23px 25px}.p-tool-header h3{font-size:29px}.p-tool-number{font-size:34px}
.v-preview{margin:0;min-width:0;background:var(--shade,#eeeaf6);border-bottom:1px solid #d5cedb;padding:22px 20px 12px}
.v-screen-link{position:relative;display:block;text-decoration:none;border:1px solid #bac0c9;border-radius:7px;overflow:hidden;background:#fff;box-shadow:0 8px 18px #25233212}
.v-browser{height:27px;display:flex;align-items:center;gap:12px;padding:0 10px;background:#f9f8fa;border-bottom:1px solid #dde0e5;font:500 9px/1.2 Inter,Arial,sans-serif;color:#625b6c}
.v-browser>span:nth-child(2){flex:1;text-align:center}.v-browser-dots{display:flex;gap:4px}.v-browser-dots i{width:5px;height:5px;border-radius:50%;background:#c7c1cb}
.portfolio-page .v-screen-link>img{width:100%;aspect-ratio:1.5;object-fit:cover;object-position:top;height:auto;transition:filter .2s}
.v-zoom{position:absolute;bottom:9px;right:9px;background:#221d2f;color:#fff;border:1px solid #fff9;border-radius:4px;box-shadow:0 2px 10px #0003;padding:5px 9px;font:600 10px/1.5 Inter,Arial,sans-serif}
.v-screen-link:hover>img{filter:brightness(.97)}.v-screen-link:hover .v-zoom{background:#145f93}
.v-preview figcaption,.v-overview figcaption{font:500 10px/1.5 Inter,Arial,sans-serif;color:#51465f;padding-top:10px;text-align:left}
.v-preview-key{font-size:12px;color:var(--p-muted);margin:-7px 0 25px!important}.v-preview-key strong{color:var(--p-ink)}
.v-overview{margin:0;padding:22px 20px 12px;background:var(--shade,#f0ebf5);border-bottom:1px solid #d5cedb;min-width:0}
.v-overview-art{min-height:0;aspect-ratio:1.5;position:relative;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;overflow:hidden;border:1px solid #ffffff70;padding:25px 27px;background:#153b5c;color:white}
.v-overview-kicker{display:block;font:650 9px/1.5 Inter,Arial,sans-serif;letter-spacing:.12em;margin-bottom:16px}
.v-overview-title{font:700 clamp(24px,2.4vw,34px)/1.14 Sora,Arial,sans-serif;letter-spacing:-.04em;display:block}
.v-channel-row{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;width:100%;margin-bottom:0}
.v-channel-row span{font:600 10px/1.5 Inter,Arial,sans-serif;text-align:center;padding:8px 4px;border:1px solid #abcadd6e;background:#ffffff0b}
.v-merge{height:36px;display:flex;justify-content:space-around;width:100%;margin-bottom:7px;position:relative}.v-merge span{width:1px;height:18px;background:#91b1c3}.v-merge:after{content:'';width:75%;position:absolute;top:18px;height:1px;background:#91b1c3}
.v-overview-counsel .v-overview-title{font-size:29px}.v-overview-counsel .v-overview-kicker{margin-bottom:17px}
.v-outline-label{font:600 11px/1.5 Inter,Arial,sans-serif;margin-top:17px;border-bottom:1px solid #92b2c7;padding-bottom:5px}.v-outline-label span{margin-left:15px}
.v-overview-calendar .v-overview-art{background:#432d5a}.v-process{display:flex;align-items:center;gap:14px;width:100%;margin-top:25px}
.v-process>div{display:flex;flex-direction:column;gap:9px;flex:1;border-top:1px solid #aa8abe;padding-top:12px}.v-process b{font:650 21px/1.2 Sora,Arial,sans-serif;color:#d1b6e7}.v-process span{font:600 11px/1.5 Inter,Arial,sans-serif}.v-process i{font-style:normal;color:#dbcbe8}
.v-overview-footnote{font:500 11px/1.5 Inter,Arial,sans-serif;display:block;margin-top:23px;color:inherit;opacity:.86}
.p-lab-grid{gap:28px}.p-lab-card{padding:0;overflow:hidden;border:2px solid var(--p-ink);border-top:4px solid var(--accent);background:#fff;display:flex;flex-direction:column;min-width:0;box-shadow:4px 4px 0 var(--accent)}
.v-lab-body{padding:24px;display:flex;flex:1;flex-direction:column}.v-lab-body h3{font-size:26px;line-height:1.15;margin-bottom:12px}.v-lab-body p{font-size:14px;line-height:1.7;color:var(--p-muted);margin-bottom:20px}.v-lab-body>.p-text-link{margin-top:auto}
.p-lab-card .v-preview,.p-lab-card .v-overview{background:#f3eef8}.p-lab-card .v-screen-link>img{aspect-ratio:1.5}
.v-overview-parks .v-overview-art{background:#183e36}.v-overview-parks .v-overview-kicker{color:#d3e4ab}
.v-trail{width:100%;height:45px;display:flex;position:relative;align-items:center;margin-top:18px;padding:0 8px}.v-trail-path{width:calc(100% - 32px);height:28px;border-bottom:2px dashed #c7ddb6;transform:skewY(-8deg)}.v-trail-start,.v-trail-end{display:block;width:14px;height:14px;border:2px solid #d4e3b5;border-radius:50%}.v-trail-start{margin-top:24px}.v-trail-end{margin-top:-22px;background:#d4e3b5}
.v-overview-exercise .v-overview-art{background:#65484b}.v-overview-exercise .v-overview-kicker{color:#fff1d0}.v-motion{height:54px;display:flex;align-items:center;gap:13px;margin-top:19px}.v-motion span{width:65px;height:28px;border:2px solid #ffdbb2;transform:rotate(-25deg);border-radius:50%}.v-motion span:nth-child(2){transform:rotate(0deg)}.v-motion span:nth-child(3){transform:rotate(25deg)}
.v-am-workflow{margin-top:30px;padding:28px 32px;background:#163c60;color:#fff;display:grid;grid-template-columns:.85fr 1.5fr;gap:35px;align-items:center}.v-am-workflow h3{font-size:27px;line-height:1.18;letter-spacing:-.04em}.v-am-workflow p{margin:13px 0 0!important;font:500 10px/1.5 Inter,Arial,sans-serif;color:#c3d6e5}.v-am-workflow .v-overview-kicker{color:#c3d6e5;margin-bottom:9px}
.v-am-steps{display:flex;gap:12px;align-items:center}.v-am-steps>span{display:grid;gap:11px;flex:1;font:600 11px/1.55 Inter,Arial,sans-serif;border-top:1px solid #a4bbd0;padding-top:14px}.v-am-steps b{font:650 25px/1.1 Sora,Arial,sans-serif;color:#d1e5f2}.v-am-steps i{font-style:normal;color:#bbd1e3}.v-access-note{font:500 11px/1.5 Inter,Arial,sans-serif;color:#665f6c;margin:9px 0 0!important}
.v-research-program{display:grid;grid-template-columns:.75fr 1fr;gap:30px;align-items:center;padding-block:28px}.v-research-program>.v-preview{width:100%;background:#e8e1ef;border:1px solid #cfc2dc;padding:16px 16px 10px}.v-research-program>.v-research-program-copy{max-width:100%;width:100%}.v-research-program-copy>.p-button{margin-top:20px}.v-research-program h3{font-size:24px}
.v-paper-preview{margin:-26px -28px 25px!important;background:#e8dff2;padding:22px 35px 0;height:190px;overflow:hidden;border-bottom:1px solid #d3c8dd;position:relative}.v-paper-preview a{display:block;position:relative;width:78%;max-width:305px;margin-inline:auto;box-shadow:0 3px 16px #2c1e482b;border:1px solid #d4ced9;transform:rotate(-3deg);transform-origin:center top;transition:transform .15s}.v-paper-preview img{width:100%;height:auto}.p-research-card:nth-child(2) .v-paper-preview{background:#e0ecf3}.p-research-card:nth-child(2) .v-paper-preview a{transform:rotate(3deg)}
.v-paper-badge{position:absolute;left:-10px;top:125px;background:#221d2f;color:#fff;padding:6px 10px;border:1px solid #fff9;font:600 10px/1.5 Inter,Arial,sans-serif;white-space:nowrap;transform:rotate(3deg)}.v-paper-preview a:hover{transform:rotate(0deg)!important}.p-research-card:nth-child(2) .v-paper-badge{transform:rotate(-3deg)}
@media(max-width:1050px){.v-overview-art{padding:20px}.v-overview-title,.v-overview-counsel .v-overview-title{font-size:27px}.v-channel-row span{font-size:9px;padding:6px 3px}.v-process{margin-top:16px;gap:9px}.v-overview-kicker{font-size:8px;margin-bottom:13px}.v-overview-footnote{margin-top:15px;font-size:10px}.v-paper-preview{margin:-24px -24px 24px!important}.v-am-workflow{gap:26px;grid-template-columns:1fr 1.4fr}}
@media(max-width:800px){.p-project-grid,.p-lab-grid{gap:22px}.p-tool-header h3{font-size:25px}.p-tool-header{padding:21px;min-height:119px}.v-preview,.v-overview{padding:15px 13px 10px}.v-overview-art{padding:19px 17px;min-height:220px;aspect-ratio:auto}.v-overview-title,.v-overview-counsel .v-overview-title{font-size:25px}.v-overview-kicker{font-size:8px;margin-bottom:12px}.v-merge{height:28px}.v-outline-label{margin-top:12px;font-size:10px}.v-channel-row{gap:4px}.v-overview figcaption,.v-preview figcaption{font-size:9px}.v-lab-body{padding:21px}.v-lab-body h3{font-size:23px}.v-motion span{width:50px}.v-am-workflow{grid-template-columns:1fr;gap:25px}.v-paper-preview{margin:-22px -22px 24px!important}.v-research-program{grid-template-columns:1fr 1fr;gap:22px}}
@media(max-width:600px){.p-tool-header{min-height:110px}.p-tool-header h3{font-size:28px}.v-overview-art{min-height:255px;aspect-ratio:1.5;padding:24px}.v-overview-title,.v-overview-counsel .v-overview-title{font-size:28px}.v-preview,.v-overview{padding:20px 18px 12px}.v-preview figcaption,.v-overview figcaption{font-size:10px}.v-channel-row span{font-size:10px}.v-lab-body{padding:24px}.v-lab-body h3{font-size:27px}.v-research-program{grid-template-columns:1fr;gap:23px}.v-paper-preview{height:210px}.v-paper-badge{top:139px}.v-am-workflow{padding:26px 23px}.v-am-steps{gap:7px}.v-am-steps>span{font-size:10px}.v-am-steps i{font-size:12px}.v-am-workflow h3{font-size:26px}.v-overview-footnote{font-size:11px}.v-motion{margin-top:20px}.v-motion span{width:57px}.p-lab-grid{gap:28px}}
@media(max-width:370px){.v-overview-art{padding:18px;min-height:247px}.v-overview-title,.v-overview-counsel .v-overview-title{font-size:25px}.v-channel-row span{font-size:8px}.v-preview,.v-overview{padding:16px 13px 10px}.v-preview figcaption,.v-overview figcaption{font-size:9px}.v-paper-preview{margin:-22px -19px 23px!important}.v-am-steps{gap:4px}.v-am-workflow{padding:23px 18px}.v-lab-body{padding:21px}}
@media(prefers-reduced-motion:reduce){.v-screen-link>img,.v-paper-preview a{transition:none}}
@media print{.v-preview,.v-overview,.v-am-workflow{break-inside:avoid}.v-zoom,.v-paper-badge{display:none}.v-screen-link{box-shadow:none}}
/* Keep the decorative route endpoints inside the preview at narrow widths. */
.v-trail{padding:0;gap:0}.v-trail-path{width:auto;flex:1;min-width:0}.v-trail-start,.v-trail-end{flex:0 0 14px}
