.portfolio-page h1,.portfolio-page h2,.portfolio-page h3{color:var(--navy)}.portfolio-hero{background:var(--ice);padding:150px 0 76px}.portfolio-hero-grid{grid-template-columns:1fr 1.04fr;align-items:center;gap:54px;display:grid}.portfolio-breadcrumb{color:var(--muted);gap:12px;margin-bottom:30px;font-size:12px;display:flex}.portfolio-breadcrumb a:hover{color:var(--navy)}.portfolio-copy h1{letter-spacing:-.055em;margin:0;font-size:clamp(56px,6.5vw,88px);line-height:1.02}.portfolio-copy h1 span{color:var(--blue)}.portfolio-copy .eyebrow{margin-bottom:22px}.portfolio-deck{color:#4d5c68;max-width:390px;margin:26px 0 30px;font-size:16px;line-height:1.8}.portfolio-preview{background:#c5dfed;border-radius:10px;min-width:0;padding:24px;display:block;overflow:hidden}.portfolio-preview-heading,.portfolio-preview-caption{color:var(--navy);justify-content:space-between;align-items:center;gap:12px;font-size:11px;display:flex}.portfolio-preview-heading{margin-bottom:28px}.portfolio-preview-heading span:first-child{font-family:var(--font-display);font-size:20px;font-weight:600}.portfolio-preview-paper{border:5px solid #fff;border-radius:4px;width:104%;margin-left:-2%;transition:transform .4s;transform:rotate(-4deg);box-shadow:0 15px 35px #0a23551c}.portfolio-preview-paper img{width:100%;height:auto}.portfolio-preview:hover .portfolio-preview-paper{transform:rotate(-1deg)}.portfolio-preview-caption{margin-top:26px}.portfolio-preview-caption span:last-child{font-size:26px}.portfolio-work{padding-top:80px}.portfolio-work-heading{max-width:630px;margin-bottom:40px}.portfolio-page h2{letter-spacing:-.04em;margin:0;font-size:clamp(36px,4.5vw,58px);line-height:1.06}.portfolio-work-heading>p,.portfolio-story-deck,.portfolio-next>p{color:var(--muted);max-width:510px;margin:22px 0 0;line-height:1.8}.portfolio-project-meta{justify-content:space-between;align-items:center;gap:14px;margin-bottom:18px;display:flex}.portfolio-project-meta h3{letter-spacing:-.02em;margin:0;font-size:22px}.portfolio-project-meta>span{color:var(--muted);font-size:12px}.portfolio-page .viewer{border:1px solid var(--line);background:var(--paper);border-radius:8px;overflow:hidden;box-shadow:0 12px 40px #0a235508}.portfolio-page .viewer-toolbar{background:var(--soft-blue);border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;min-height:60px;padding:10px 16px;display:flex}.portfolio-page .view-tabs{gap:5px;display:flex}.portfolio-page .view-tabs button{white-space:nowrap;cursor:pointer;color:var(--navy);background:0 0;border:0;border-radius:5px;padding:9px 14px;font-size:12px;font-weight:600}.portfolio-page .view-tabs button.active{background:var(--paper);box-shadow:0 1px 4px #0a235515}.portfolio-page .view-tabs button:hover{background:var(--paper)}.portfolio-page .viewer-actions{align-items:center;gap:16px;display:flex}.portfolio-page #viz-status{color:var(--muted);font-size:11px}.portfolio-page .viewer-actions button,.portfolio-page .viewer-actions a{color:var(--navy);cursor:pointer;background:0 0;border:0;padding:0 3px;font-size:25px;line-height:1.2}.portfolio-page .dashboard-viewport{background:#fff}.portfolio-page .dashboard-stage{aspect-ratio:1300/857;width:100%;max-width:1300px;margin-inline:auto;position:relative}.portfolio-page .dashboard-stage>img{object-fit:contain;width:100%;height:100%}.portfolio-page #live-mount{width:1300px;height:857px;transform:scale(var(--dashboard-scale,1));transform-origin:0 0;position:absolute;top:0;left:0}.portfolio-page tableau-viz{width:100%;height:100%;display:block}.portfolio-page .loading{background:#fffffff0;flex-direction:column;justify-content:center;align-items:center;gap:14px;display:flex;position:absolute;inset:0}.portfolio-page .loading p{font-family:var(--font-display);margin:0;font-size:22px}.portfolio-page .loading>span:last-child{color:var(--muted);font-size:12px}.portfolio-page .spinner{border:2px solid var(--line);border-top-color:var(--blue);border-radius:50%;width:26px;height:26px;animation:.8s linear infinite portfolio-spin}.portfolio-page [hidden]{display:none!important}.portfolio-page .viewer-note{color:var(--muted);background:var(--soft-blue);border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:16px;padding:15px 18px;font-size:11px;display:flex}.portfolio-page .viewer-note button{color:var(--blue);white-space:nowrap;cursor:pointer;background:0 0;border:0;font-size:12px;font-weight:700}.portfolio-page .viewer-note>span:last-child{white-space:nowrap}.portfolio-story{border-bottom:1px solid var(--line);grid-template-columns:1fr 1fr;gap:90px;padding-block:100px;display:grid}.portfolio-facts{grid-template-columns:repeat(3,1fr);gap:14px;margin:32px 0 0;display:grid}.portfolio-facts dt{color:var(--muted);margin-bottom:7px;font-size:11px}.portfolio-facts dd{color:var(--navy);margin:0;font-size:12px;font-weight:600}.portfolio-perspectives details{border-bottom:1px solid var(--line);padding:22px 0}.portfolio-perspectives details:first-child{padding-top:0}.portfolio-perspectives summary{cursor:pointer;font-family:var(--font-display);color:var(--navy);justify-content:space-between;gap:18px;font-size:22px;line-height:1.3;list-style:none;display:flex}.portfolio-perspectives summary::-webkit-details-marker{display:none}.portfolio-perspectives summary span{font-size:25px;transition:transform .2s}.portfolio-perspectives details[open] summary span{transform:rotate(45deg)}.portfolio-perspectives details p{color:var(--muted);max-width:450px;margin:18px 0 0;font-size:14px;line-height:1.85}.portfolio-next{padding-block:75px 90px}.portfolio-next-actions{align-items:center;gap:30px;margin-top:28px;display:flex}.portfolio-page .viewer:fullscreen,.portfolio-page .viewer.expanded{background:#fff;border:0;border-radius:0;flex-direction:column;width:100%;height:100dvh;display:flex}.portfolio-page .viewer.expanded{z-index:100;position:fixed;inset:0}.portfolio-page .viewer:fullscreen .dashboard-viewport,.portfolio-page .viewer.expanded .dashboard-viewport{flex:1;justify-content:center;align-items:center;min-height:0;display:flex}.portfolio-page .viewer:fullscreen .dashboard-stage,.portfolio-page .viewer.expanded .dashboard-stage{margin:auto}.portfolio-page .viewer:fullscreen .viewer-note,.portfolio-page .viewer.expanded .viewer-note{flex-shrink:0}body.lock-scroll{overflow:hidden}.portfolio-home-link{margin-top:34px;display:inline-flex}@keyframes portfolio-spin{to{transform:rotate(360deg)}}@media (width<=1000px){.portfolio-hero-grid{gap:30px}.portfolio-copy h1{font-size:64px}.portfolio-deck{font-size:14px}.portfolio-story{gap:45px}.portfolio-preview{padding:18px}}@media (width<=700px){.portfolio-hero{padding:116px 0 44px}.portfolio-hero-grid{grid-template-columns:1fr;gap:34px}.portfolio-copy h1{font-size:clamp(52px,12vw,72px)}.portfolio-breadcrumb{margin-bottom:20px}.portfolio-deck{font-size:15px}.portfolio-preview{justify-self:center;width:100%;max-width:560px;padding:22px}.portfolio-preview-heading{margin-bottom:22px}.portfolio-preview-heading span:last-child{font-size:10px}.portfolio-work{padding-top:50px}.portfolio-work-heading{margin-bottom:30px}.portfolio-page h2{font-size:40px}.portfolio-work-heading>p,.portfolio-story-deck,.portfolio-next>p{font-size:15px}.portfolio-project-meta{flex-direction:column;align-items:flex-start;gap:5px}.portfolio-page .viewer-toolbar{gap:8px;padding:10px}.portfolio-page .view-tabs button{padding:8px 9px;font-size:11px}.portfolio-page .viewer-actions{gap:8px}.portfolio-page #viz-status{display:none}.portfolio-page .viewer-note{flex-wrap:wrap;gap:9px;padding:13px}.portfolio-page .viewer-note>span:last-child{display:none}.portfolio-story{grid-template-columns:1fr;gap:38px;padding-block:65px}.portfolio-perspectives summary{font-size:20px}.portfolio-next{padding-block:50px 60px}.portfolio-next-actions{flex-direction:column;align-items:flex-start;gap:20px}.portfolio-facts{grid-template-columns:1fr 1fr;row-gap:22px}}@media (prefers-reduced-motion:reduce){.portfolio-page *{transition:none!important;animation:none!important}}
