.scroll-progress{position:fixed;inset:0 0 auto;height:3px;z-index:80;background:transparent}.scroll-progress span{display:block;width:0;height:100%;background:linear-gradient(90deg,#0da4c3,#67d8e8)}
.menu-toggle{display:none;border:0;background:transparent;padding:10px;color:#092d43}.menu-toggle span{display:block;width:24px;height:2px;margin:5px;background:currentColor}.menu-toggle i{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
.discover{position:absolute;right:34px;bottom:30px;color:#fff;display:flex;align-items:center;gap:14px;font-size:12px;letter-spacing:.16em;text-transform:uppercase}.discover b{width:42px;height:42px;border:1px solid rgba(255,255,255,.4);border-radius:50%;display:grid;place-items:center;animation:drift 1.8s ease-in-out infinite}
@keyframes drift{50%{transform:translateY(7px)}}
.reveal{opacity:0;transform:translateY(28px);transition:opacity .75s ease,transform .75s ease}.reveal.visible{opacity:1;transform:none}
.reel{display:grid;grid-template-columns:.68fr 1.32fr;background:#fff;align-items:center}.reel-copy{padding:90px clamp(28px,6vw,110px);display:flex;flex-direction:column;justify-content:center}.reel-copy h2{font-size:clamp(38px,4.8vw,70px);line-height:1.03;letter-spacing:-.045em;margin:0 0 26px}.reel-copy>p:not(.eyebrow){color:#60727d;font-size:19px;line-height:1.6}.video-toggle{align-self:flex-start;margin-top:24px;border:1px solid #092d43;background:transparent;padding:14px 19px;color:#092d43;font:700 14px inherit;cursor:pointer}.video-toggle:hover{background:#092d43;color:#fff}.reel-player{position:relative;background:#061f30;aspect-ratio:16/9;width:100%;overflow:hidden}.reel-player video{display:block;width:100%;height:100%;object-fit:contain;object-position:center;background:#061f30}.reel-index{position:absolute;right:22px;bottom:20px;background:rgba(6,31,48,.8);color:#fff;padding:9px 12px;font-size:12px;letter-spacing:.12em}
.work-toolbar{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 24px}.filter{border:1px solid rgba(255,255,255,.24);background:transparent;color:#adbec7;padding:11px 17px;font:700 13px inherit;cursor:pointer}.filter:hover,.filter.active{background:#67d8e8;border-color:#67d8e8;color:#061f30}.project{border:0;padding:0;color:#fff;text-align:left;cursor:pointer;font:inherit}.project img{object-fit:contain;background:#edf2f4}.project-copy{position:absolute;inset:auto 28px 27px;z-index:3;display:grid;gap:9px}.project-copy small{color:#67d8e8;font-weight:800;letter-spacing:.13em}.project-copy strong{font-size:25px;line-height:1.15}.project-copy i{font-style:normal;font-size:13px;opacity:0;transform:translateY(8px);transition:.25s}.project:hover .project-copy i,.project:focus-visible .project-copy i{opacity:1;transform:none}.project:focus-visible{outline:3px solid #67d8e8;outline-offset:4px}.project.filtered-out{display:none}.work-hint{margin:24px 0 0;color:#8fa7b4;font-size:14px}.modal-open{overflow:hidden}.case-dialog{width:min(1280px,94vw);height:min(820px,90vh);padding:0;border:0;background:#f6f9fa;color:#13354a;box-shadow:0 30px 100px rgba(0,0,0,.45);grid-template-columns:1.35fr .65fr;overflow:hidden}.case-dialog[open]{display:grid}.case-dialog::backdrop{background:rgba(2,18,28,.86);backdrop-filter:blur(5px)}.dialog-close{position:absolute;right:18px;top:16px;width:44px;height:44px;border:1px solid #d6e2e7;background:#fff;color:#092d43;font-size:30px;cursor:pointer;z-index:3}.dialog-media{background:#e8eff2;display:grid;place-items:center;overflow:auto}.dialog-media img{width:100%;height:100%;object-fit:contain}.dialog-copy{padding:70px 45px;display:flex;flex-direction:column;justify-content:center}.dialog-copy h2{font-size:clamp(34px,4vw,57px);line-height:1.04;letter-spacing:-.045em;margin:0 0 25px}.case-description{font-size:18px;line-height:1.65;color:#60727d}.case-tags{display:flex;gap:7px;flex-wrap:wrap;margin:20px 0 38px}.case-tags span{border:1px solid #d6e2e7;padding:8px 10px;font-size:12px;color:#60727d}.dialog-copy .button{align-self:flex-start}
.hero-mark{animation:breathe 5s ease-in-out infinite}@keyframes breathe{50%{transform:translate(-50%,-52%) scale(1.04)}}.float-card{transition:transform .3s,box-shadow .3s}.float-card:hover{transform:translateY(-8px);box-shadow:0 30px 60px rgba(0,0,0,.25)}
@media(max-width:980px){.menu-toggle{display:block;order:2}.nav-cta{order:3}.topbar nav{display:flex;position:absolute;left:0;right:0;top:72px;background:#f6f9fa;padding:20px 24px;flex-direction:column;gap:18px;transform:translateY(-140%);opacity:0;transition:.25s;z-index:-1;border-bottom:1px solid #d6e2e7}.topbar nav.open{transform:none;opacity:1}.reel{grid-template-columns:1fr}.case-dialog[open]{grid-template-columns:1fr;height:92vh;overflow:auto}.dialog-media{min-height:48vh}.dialog-copy{padding:45px 28px}}
@media(max-width:620px){.nav-cta{display:none}.reel-copy{padding:70px 24px}.discover{right:20px}.project img{object-fit:contain}.case-dialog{width:96vw}.project-copy strong{font-size:21px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal,.hero-mark,.discover b{animation:none;transition:none}.reveal{opacity:1;transform:none}}
