/* The project imagery sets the colour. The page supplies scale and rhythm. */
.portfolio-page{background:#080d10;color:#e6eef3}.portfolio-page [hidden]{display:none!important}.portfolio-eyebrow{font-size:12px;letter-spacing:.14em;line-height:1.5;display:block}.portfolio-hero{position:relative;isolation:isolate;overflow:hidden;background:#e5e7e9;color:#192b35;padding:160px var(--pad) 26px}.portfolio-silver{position:absolute;inset:-4%;z-index:-1;background:#e5e7e9 url('/assets/silver-glass.webp') center/cover no-repeat;animation:portfolio-light 22s ease-in-out infinite alternate}.portfolio-lead{max-width:1450px;margin:auto;display:flex;align-items:end;justify-content:space-between;gap:50px;padding-bottom:48px}.portfolio-lead h1{font-size:clamp(72px,8.7vw,138px);line-height:.94;letter-spacing:-.065em;margin-top:28px}.portfolio-lead h1>span{color:#63747d}.portfolio-intro{padding-bottom:8px;min-width:225px}.portfolio-intro p{font-size:20px;color:#566a77;line-height:1.5;letter-spacing:-.02em}.portfolio-intro .link{font-size:14px;margin-top:28px;color:#233f50;gap:22px;border-color:#6f879650}.featured-wrap{max-width:1550px;margin:auto;transform-origin:50% 40%;--feature-progress:1}.motion-ready .featured-wrap{transform:scale(calc(.94 + var(--feature-progress)*.06))}.portfolio-project{min-width:0}.project-window{display:block;width:100%;position:relative;isolation:isolate;border:0;padding:0;background:none;border-radius:16px;outline-offset:7px;transition:transform .7s cubic-bezier(.2,.7,.2,1);text-align:left}.project-window img{display:block;width:100%;height:auto;object-fit:contain;border-radius:16px;box-shadow:0 20px 55px #0002}.project-window:hover{transform:translateY(-7px)}.project-window:active{transform:translateY(-3px)}.project-open-mark{position:absolute;right:22px;bottom:22px;width:54px;height:54px;display:flex;align-items:center;justify-content:center;background:#e8f1f333;border:1px solid #fff8;border-radius:50%;color:#fff;backdrop-filter:blur(16px);box-shadow:inset 0 1px 0 #fff7;transition:background .3s,transform .4s;pointer-events:none}.project-window:hover .project-open-mark{background:#e8f1f355;transform:rotate(45deg)}.project-caption{display:flex;align-items:center;justify-content:space-between;gap:25px;padding:23px 2px 0}.project-caption h2,.project-caption h3{font-size:clamp(23px,2.6vw,39px);line-height:1.15;letter-spacing:-.04em}.project-caption>div>span{display:block;font-size:12px;color:#8fa7b6;line-height:1.5;margin-top:8px}.project-details{display:flex;align-items:center;gap:20px;font-size:13px;white-space:nowrap;line-height:1.5;padding:12px 0;border:0;border-bottom:1px solid #819cab70;background:none;color:#d7e5ed;transition:gap .3s}.project-details:hover{gap:27px}.portfolio-hero .project-details{color:#314e60;border-color:#6a829250}.portfolio-hero .project-caption>div>span{color:#5f7887}.portfolio-hero-bottom{max-width:1450px;margin:28px auto 0;display:flex;align-items:center;justify-content:space-between;gap:20px}.portfolio-hero-bottom>span{font-size:10px;letter-spacing:.14em;color:#7b8d97}.portfolio-motion{display:flex;align-items:center;gap:12px;border:1px solid #fff9;border-radius:999px;font-size:12px;padding:11px 15px;background:#f5f8fa70;color:#4b6677;backdrop-filter:blur(14px)}.portfolio-collection{padding:88px var(--pad) 65px;max-width:1780px;margin:auto}.collection-heading{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:60px}.collection-heading h2{font-size:clamp(34px,4vw,61px);line-height:1.12}.collection-heading h2>span{color:#849fad}.collection-heading>span{font-size:12px;line-height:1.5;color:#91aab9;padding-bottom:8px}.portfolio-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:90px 22px;align-items:start}.portfolio-grid>.portfolio-project:nth-child(1){grid-column:1/8}.portfolio-grid>.portfolio-project:nth-child(2){grid-column:9/-1;margin-top:140px}.portfolio-grid>.portfolio-project:nth-child(3){grid-column:2/12;margin-block:15px 30px}.portfolio-grid>.portfolio-project:nth-child(4){grid-column:1/6}.portfolio-grid>.portfolio-project:nth-child(5){grid-column:7/-1;margin-top:110px}.portfolio-grid>.portfolio-project:nth-child(6){grid-column:1/8}.portfolio-grid>.portfolio-project:nth-child(7){grid-column:9/-1;margin-top:125px}.portfolio-grid>.project-offset .project-caption{align-items:start;flex-direction:column;gap:8px}.portfolio-grid>.project-offset .project-details{font-size:12px}.portfolio-grid>.project-full .project-window{padding:24px;background:linear-gradient(125deg,#d4e7f520,#d4e7f509);border:1px solid #b4d1e33b;border-radius:24px}.portfolio-grid>.project-full .project-open-mark{bottom:42px;right:42px}.portfolio-next{max-width:1600px;margin:0 auto;padding:45px var(--pad) 90px}.portfolio-next .portfolio-eyebrow{color:#8ca5b4}.portfolio-next>div{display:flex;align-items:end;justify-content:space-between;gap:35px;margin-top:28px}.portfolio-next h2{font-size:clamp(42px,5.5vw,83px);line-height:1.06}.portfolio-next .button{font-size:14px;border-radius:999px}.motion-ready .portfolio-grid>.portfolio-project{transition:opacity .9s,transform .9s cubic-bezier(.2,.7,.2,1)}.motion-ready .portfolio-grid>.portfolio-project.awaiting{opacity:.2;transform:translateY(45px)}
/* Native modal: entire image on one side, project destinations on the other. */
.portfolio-dialog{width:min(1460px,calc(100vw - 64px));max-width:none;max-height:calc(100svh - 48px);margin:auto;padding:0;background:#142129ed;color:#e5eef4;border:1px solid #c8e1ef4d;border-radius:25px;box-shadow:0 35px 100px #0008;backdrop-filter:blur(30px);overflow:auto}.portfolio-dialog::backdrop{background:#050c12b8;backdrop-filter:blur(12px)}.portfolio-dialog[open]{animation:project-dialog-enter .4s cubic-bezier(.2,.7,.2,1)}.project-dialog-bar{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:21px 28px;border-bottom:1px solid #bcd8e522}.project-dialog-bar>span{font-size:11px;letter-spacing:.13em;color:#9db7c6}.project-dialog-close{display:flex;gap:16px;align-items:center;font-size:13px;border:0;padding:10px 0;background:none}.project-dialog-layout{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(280px,1fr);align-items:center;min-height:400px}.project-dialog-visual{margin:0;padding:28px;min-width:0}.project-dialog-visual img{width:100%;height:auto;max-height:65svh;object-fit:contain;border-radius:12px}.project-dialog-info{padding:35px 32px 35px 12px;min-width:0}.project-dialog-info>.portfolio-eyebrow{color:#93b1c3;font-size:11px}.project-dialog-info h2{font-size:clamp(33px,3.4vw,54px);line-height:1.08;margin:19px 0 30px;overflow-wrap:anywhere}.project-destinations{border-top:1px solid #94b8cc3d}.project-destination{border-bottom:1px solid #94b8cc3d}.project-destination>a,.project-destination>button{display:flex;justify-content:space-between;align-items:center;gap:18px;width:100%;padding:19px 0;background:none;border:0;font-size:14px;line-height:1.5;text-align:left;color:#f0f6fa}.project-destination>button:disabled{cursor:default;color:#94acbb}.project-destination>button>span{font-size:11px;white-space:nowrap;color:#90a6b5}.project-destination>a:hover{color:#bddbea}.project-preparing{font-size:12px;line-height:1.7;color:#8fa8b8;margin-top:18px}.project-dialog-paging{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-top:35px}.project-dialog-paging>span{font-size:12px;color:#bdd0dc}.project-dialog-paging>div{display:flex;gap:9px}.project-dialog-paging button{display:flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:50%;background:#ffffff06;border:1px solid #b5d2e14d}.project-dialog-paging button:hover{background:#c5e1f222}.project-dialog-paging button:disabled{opacity:.3;cursor:default}.portfolio-hero a:focus-visible,.portfolio-hero button:focus-visible{outline-color:#315669}.portfolio-page.is-paused .portfolio-silver,.portfolio-page.tab-hidden .portfolio-silver,.portfolio-hero.offscreen .portfolio-silver{animation-play-state:paused!important}.portfolio-page.is-paused .awaiting{opacity:1!important;transform:none!important}
@keyframes portfolio-light{from{transform:scale(1.015) translateX(-.5%)}to{transform:scale(1.05) translateX(.7%)}}@keyframes project-dialog-enter{from{opacity:0;transform:translateY(18px) scale(.985)}to{opacity:1;transform:none}}
@media(max-width:1100px){.portfolio-grid{gap:70px 25px;grid-template-columns:1fr 1fr}.portfolio-grid>.portfolio-project:nth-child(n){grid-column:auto;margin-top:0}.portfolio-grid>.portfolio-project:nth-child(even){margin-top:80px}.portfolio-grid>.portfolio-project:nth-child(3){grid-column:1/-1;margin-block:0}.portfolio-grid>.portfolio-project:nth-child(5){margin-top:80px}.project-caption{align-items:start;flex-direction:column;gap:7px}.portfolio-hero .project-caption,.portfolio-grid>.project-full .project-caption{flex-direction:row;align-items:center}.portfolio-lead h1{font-size:clamp(69px,9vw,104px)}.project-dialog-layout{grid-template-columns:minmax(0,1.25fr) minmax(290px,1fr)}.project-dialog-info{padding-right:24px}.project-dialog-visual{padding:22px}}
@media(max-width:767px){.portfolio-hero{padding:130px 24px 23px}.portfolio-lead{flex-direction:column;align-items:start;gap:26px;padding-bottom:34px}.portfolio-lead h1{font-size:clamp(61px,13vw,93px);line-height:.98;margin-top:23px}.portfolio-eyebrow{font-size:10px}.portfolio-intro{display:flex;justify-content:space-between;align-items:center;width:100%;gap:22px;padding:0}.portfolio-intro p{font-size:15px}.portfolio-intro .link{font-size:12px;margin:0;gap:10px}.portfolio-project .project-window img{border-radius:12px}.project-caption{padding-top:17px}.project-caption h2,.project-caption h3{font-size:26px}.project-caption>div>span{font-size:11px;margin-top:5px}.project-details{font-size:12px;gap:10px}.project-open-mark{width:42px;height:42px;right:13px;bottom:13px}.portfolio-hero-bottom{margin-top:25px}.portfolio-hero-bottom>span{font-size:8px;max-width:120px;line-height:1.6}.portfolio-motion{font-size:10px;padding:10px 12px;gap:10px}.portfolio-collection{padding:58px 24px 40px}.collection-heading{align-items:start;flex-direction:column;gap:20px;margin-bottom:35px}.collection-heading h2{font-size:36px}.collection-heading>span{font-size:11px}.portfolio-grid{grid-template-columns:1fr;gap:44px}.portfolio-grid>.portfolio-project:nth-child(n){grid-column:1;margin:0}.portfolio-grid>.portfolio-project .project-caption{flex-direction:row;align-items:center;gap:15px}.portfolio-grid>.portfolio-project .project-caption h3{font-size:24px}.portfolio-grid>.portfolio-project .project-details{font-size:11px}.portfolio-grid>.project-full .project-window{padding:10px;border-radius:16px}.portfolio-grid>.project-full .project-open-mark{right:23px;bottom:23px}.portfolio-next{padding:30px 24px 60px}.portfolio-next>div{flex-direction:column;align-items:start;gap:27px}.portfolio-next h2{font-size:48px}.portfolio-dialog{width:calc(100vw - 24px);max-height:calc(100svh - 24px);border-radius:20px}.project-dialog-bar{padding:12px 18px;position:sticky;top:0;background:#142129f2;backdrop-filter:blur(18px);z-index:2}.project-dialog-layout{grid-template-columns:1fr;min-height:0}.project-dialog-visual{padding:18px 18px 0}.project-dialog-visual img{max-height:40svh}.project-dialog-info{padding:25px 22px}.project-dialog-info h2{font-size:36px;margin:15px 0 23px}.project-dialog-paging{margin-top:23px}}
@media(max-width:380px){.portfolio-hero .project-caption,.portfolio-grid>.portfolio-project .project-caption{flex-direction:column;align-items:start;gap:5px}.portfolio-intro{flex-direction:column;align-items:start;gap:14px}.portfolio-lead h1{font-size:60px}}
@media(prefers-reduced-motion:reduce){.portfolio-silver{animation:none!important}.motion-ready .featured-wrap,.motion-ready .portfolio-grid>.portfolio-project{transform:none!important;opacity:1!important;transition:none}.project-window,.project-open-mark,.project-details{transition:none}.project-window:hover,.project-window:active{transform:none}.portfolio-dialog[open]{animation:none}}
/* Uniform project tiles: all eight projects have the same visual weight. */
.portfolio-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:48px 32px}
.portfolio-grid>.portfolio-project:nth-child(n){grid-column:auto;margin:0}
.portfolio-grid>.portfolio-project .project-window{aspect-ratio:1;padding:24px;border:1px solid #aacbdd30;border-radius:22px;background:linear-gradient(130deg,#bbcfdc18,#324a5818);display:flex;align-items:center;justify-content:center}
.portfolio-grid>.portfolio-project .project-window img{width:100%;height:100%;object-fit:contain;border-radius:0;box-shadow:none}
.portfolio-grid>.portfolio-project .project-open-mark{right:21px;bottom:21px}
.portfolio-grid>.portfolio-project .project-caption{display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:20px;min-height:96px;padding:20px 2px 0}
.portfolio-grid>.portfolio-project .project-caption h3{font-size:clamp(23px,2.3vw,35px)}
.portfolio-grid>.portfolio-project .project-details{font-size:12px}
.portfolio-hero{padding-bottom:28px}.portfolio-lead{padding-bottom:22px}
@media(max-width:767px){.portfolio-grid{grid-template-columns:1fr;gap:30px}.portfolio-grid>.portfolio-project .project-window{padding:16px;border-radius:18px}.portfolio-grid>.portfolio-project .project-caption{min-height:80px;gap:15px;padding-top:16px}.portfolio-grid>.portfolio-project .project-caption h3{font-size:24px}.portfolio-grid>.portfolio-project .project-details{font-size:11px;gap:8px}}
@media(max-width:374px){.portfolio-grid>.portfolio-project .project-caption{align-items:start;flex-direction:column;gap:5px}.portfolio-grid>.portfolio-project .project-window{padding:12px}}
