/* Product-style project pages; existing menu and lightbox remain native. */
:root{--paper:#f7f7f5;--ink:#20211f;--olive:#20211f;--muted:#777a74;--line:#20211f1a;--sand:#edeee9;--sage:#dce0d5;--sans:Manrope,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;--serif:var(--sans)}
body.project-page{background:var(--paper);font-family:var(--sans);overflow-x:visible}
.project-page h1,.project-page h2,.project-page h3{font-family:var(--sans);font-weight:600;font-style:normal;letter-spacing:-.055em;line-height:1.06}
.project-page h1 em,.project-page h2 em{font-family:inherit;font-style:normal;font-weight:inherit;color:var(--muted)}
.project-page .wrap{width:min(1200px,calc(100% - 96px))}
.project-page .demo-ribbon{background:#eeefeb;color:#646760;padding:8px 32px;font-size:9px;letter-spacing:0}
.project-page .site-header{position:sticky;top:0;width:100%;margin:0;border:0;border-bottom:1px solid #20211f0e;border-radius:0;background:#f7f7f5ec;box-shadow:none;backdrop-filter:blur(18px)}
.project-page .site-header .header-inner{width:min(1200px,calc(100% - 96px));margin:auto;min-height:76px;padding:10px 0;gap:25px}
.project-page .wordmark{font-family:var(--sans);font-size:26px;font-weight:700;line-height:1;letter-spacing:-.055em}
.project-page .wordmark-small{font-family:var(--sans);font-size:6px;letter-spacing:.18em;font-weight:500;padding-left:1px;line-height:1.8;margin-bottom:3px;color:var(--muted)}
.project-page .brand-dot{color:var(--ink)}
.project-page .header-inner nav{gap:29px}.project-page .header-inner nav a{font-family:var(--sans);font-size:11px;font-weight:500;letter-spacing:-.01em}.project-page .header-inner .nav-cta{margin-left:2px;padding:11px 16px;border:0;border-radius:20px;background:var(--ink);color:#fff;gap:17px}.project-page .header-inner .nav-cta:hover{background:#454940}
.project-page .project-heading{padding:55px 0 48px}
.project-topline{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:43px}
.project-page .back-link{margin:0;font-size:10px;letter-spacing:0;color:var(--muted)}.project-chapter{font-size:8px;letter-spacing:.07em;text-transform:uppercase;color:var(--muted)}
.project-title-grid{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(220px,1fr);gap:74px;align-items:end}
.project-page .project-heading h1{font-size:clamp(58px,6vw,80px);letter-spacing:-.055em;line-height:1.02;text-wrap:initial;min-width:0}
.project-heading h1>span,.project-heading h1>em{display:block}.project-heading h1>em{margin-top:2px}
.project-title-aside{padding-bottom:4px;min-width:0}.project-title-aside .eyebrow{font-family:var(--sans);font-size:8px;letter-spacing:.08em;color:var(--muted);line-height:1.7}
.project-page .project-lead{font-size:14px;font-weight:400;line-height:1.8;letter-spacing:-.015em;color:#555950;max-width:36ch;margin-top:19px}
.project-scroll{display:inline-flex;align-items:center;gap:15px;font-size:10px;color:var(--ink);margin-top:23px}.project-scroll span{font-size:18px}.project-scroll:hover{color:#6c7564}
.project-page .project-cover{width:min(1600px,calc(100% - 48px))}.project-cover>a{overflow:hidden;isolation:isolate;border-radius:20px;background:var(--sand)}
.project-page .project-cover img{width:100%;height:clamp(420px,49vw,740px);max-height:none;object-fit:cover;transition:transform 1.1s var(--ease)}.project-cover>a:hover img{transform:scale(1.018)}
.project-page .image-zoom{position:absolute;display:flex;align-items:center;gap:22px;right:24px;bottom:24px;border:1px solid #ffffff80;border-radius:22px;background:#fffffff0;color:var(--ink);padding:13px 18px;font-size:10px;backdrop-filter:blur(12px)}.image-zoom>span{font-size:17px}
.project-page .project-cover figcaption{display:flex;justify-content:space-between;gap:20px;padding:14px 6px 0;font-size:8px;letter-spacing:0;line-height:1.6;color:var(--muted)}
.project-specifications{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,3fr);gap:45px;padding-block:42px;border-bottom:1px solid var(--line)}
.project-specifications>.eyebrow{padding-top:3px;font-size:8px;letter-spacing:.07em;color:var(--muted)}
.project-page .project-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin:0;padding:0;border:0;gap:34px}.project-facts dt{font-size:8px;letter-spacing:.08em;color:var(--muted)}.project-facts dd{font-size:12px;line-height:1.7;color:var(--ink);max-width:26ch;margin-top:11px}
.project-page .project-story{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:105px;padding-block:100px 90px}
.project-story>.story-title>.eyebrow{font-size:8px;letter-spacing:.07em;color:var(--muted)}.project-page .project-story h2{font-size:clamp(36px,3.9vw,52px);line-height:1.08;max-width:17ch;margin-top:24px;letter-spacing:-.055em}
.project-page .story-copy{padding-top:33px;min-width:0}.project-page .story-copy>p{font-size:14px;line-height:1.95;color:#686c63;max-width:58ch;letter-spacing:-.008em}.project-page .story-copy>p+p{margin-top:22px}
.material-study{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:105px;border-top:1px solid var(--line);padding-block:43px 100px}
.material-heading .eyebrow{font-size:8px;letter-spacing:.07em;color:var(--muted)}.material-heading h2{font-size:44px;line-height:1.08;margin-top:22px;letter-spacing:-.055em}.material-heading>p:last-child{font-size:10px;color:var(--muted);max-width:36ch;line-height:1.7;margin-top:19px}
.material-palette{display:grid;grid-template-columns:repeat(var(--swatch-count,3),minmax(0,1fr));gap:20px;align-content:start}
.material-swatch{min-width:0}.swatch-colour{display:block;aspect-ratio:1;height:auto;background:var(--swatch);border-radius:14px;box-shadow:inset 0 0 0 1px #20211f05}
.swatch-label{display:block;font-family:var(--sans);font-size:13px;font-weight:500;line-height:1.4;letter-spacing:-.02em;margin-top:15px}.swatch-number{display:block;font-size:7px;letter-spacing:.07em;color:var(--muted);margin-top:8px}
.project-page .next-project{width:100%;margin:0;padding:0 0 55px;border:0;background:#fff;color:var(--ink)}
.next-project-heading{width:min(1200px,calc(100% - 96px));margin:auto;display:flex;align-items:center;justify-content:space-between;gap:24px;padding-block:27px;border:0}.next-project-heading .eyebrow{font-size:8px;letter-spacing:.07em;color:var(--muted)}.next-project-heading>span:last-child{font-family:var(--sans);font-size:11px;font-style:normal;letter-spacing:-.015em;color:var(--muted)}
.project-page .next-project>a{width:min(1440px,calc(100% - 48px));margin:0 auto;display:block;position:relative;border-radius:18px;overflow:hidden;background:var(--paper)}
.next-project-link>img{width:100%;height:clamp(330px,39vw,570px);object-fit:cover;transition:transform 1.1s var(--ease);opacity:1}.next-project-link:hover>img{transform:scale(1.015)}
.next-project-copy{position:relative;padding:35px 38px 37px;display:grid;grid-template-columns:minmax(0,1fr) 52px;gap:15px 35px;align-items:end;background:var(--paper)}.next-project-copy>.eyebrow{grid-column:1/-1;font-size:8px;letter-spacing:.07em;color:var(--muted)}
.project-page .next-project h2{font-size:clamp(34px,4.2vw,58px);line-height:1.08;letter-spacing:-.055em;max-width:24ch;min-width:0}.next-project-arrow{display:grid;place-items:center;width:52px;height:52px;border:0;border-radius:50%;background:var(--sage);color:var(--ink);font-size:28px;transition:background .2s,transform .2s}.next-project-link:hover .next-project-arrow{background:#c8d0bd;transform:translate(2px,-2px)}
.project-page .site-footer{padding-block:38px;gap:36px}.project-page .site-footer>p{font-size:9px;line-height:1.8;max-width:62ch;color:var(--muted)}.project-page .site-footer>a:last-child{font-family:var(--sans);font-size:10px;letter-spacing:-.01em;line-height:1.7}
.project-page .image-dialog{background:#20211f;color:#f7f7f5}.project-page .image-dialog::backdrop{background:#20211fea}.project-page .dialog-close{font-family:var(--sans)}
@media(max-width:1100px){.project-page .wrap,.project-page .site-header .header-inner,.next-project-heading{width:calc(100% - 72px)}.project-page .header-inner nav{gap:22px}.project-page .header-inner .nav-cta{padding-inline:14px;gap:13px}.project-title-grid{gap:42px;grid-template-columns:minmax(0,1.6fr) minmax(200px,1fr)}.project-page .project-heading h1{font-size:clamp(52px,6.2vw,68px)}.project-page .project-story,.material-study{gap:65px}.project-specifications{gap:30px}.project-page .project-facts{gap:23px}.material-palette{gap:16px}.next-project-copy{padding:30px}}
@media(max-width:800px){.project-page .wrap,.project-page .site-header .header-inner,.next-project-heading{width:calc(100% - 48px)}.project-page .demo-ribbon{padding-inline:24px;font-size:8px;gap:12px}.project-page .site-header .header-inner{min-height:68px;padding:8px 0;flex-wrap:wrap;gap:0}.project-page .wordmark{font-size:24px}.project-page .header-inner nav{padding:12px 0 15px;gap:4px}.project-page .header-inner nav a{font-size:12px;padding:13px 3px}.project-page .header-inner .nav-cta{margin:6px 0 0;padding:14px 17px}.js .project-page #site-nav.is-open{max-height:calc(100dvh - 125px);overflow-y:auto}.project-page .project-heading{padding:40px 0 35px}.project-topline{margin-bottom:35px}.project-title-grid{grid-template-columns:minmax(0,1fr);gap:28px}.project-page .project-heading h1{font-size:clamp(50px,8.2vw,66px)}.project-title-aside{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.5fr);gap:30px;align-items:start}.project-title-aside .eyebrow{max-width:25ch}.project-page .project-lead{font-size:13px;margin:0;max-width:44ch}.project-scroll{display:none}.project-page .project-cover{width:calc(100% - 32px)}.project-page .project-cover img{height:500px;object-position:center}.project-specifications{grid-template-columns:1fr;gap:24px;padding-block:32px}.project-page .project-story{padding-block:70px;gap:42px}.project-page .project-story h2{font-size:38px}.project-page .story-copy{padding-top:29px}.project-page .story-copy>p{font-size:13px;line-height:1.9}.material-study{gap:42px;padding-block:35px 70px}.material-heading h2{font-size:36px}.material-palette{gap:12px}.swatch-label{font-size:11px}.next-project-copy{grid-template-columns:minmax(0,1fr) 46px;gap:15px 25px;padding:28px}.next-project-arrow{width:46px;height:46px;font-size:26px}.project-page .next-project h2{font-size:42px}.project-page .site-footer{gap:25px}.project-page .site-footer>p{max-width:39ch}}
@media(max-width:560px){.project-page .wrap,.project-page .site-header .header-inner,.next-project-heading{width:calc(100% - 40px)}.project-page .demo-ribbon{font-size:7px;padding:8px 16px;gap:9px;align-items:center}.project-page .demo-ribbon>span{max-width:22ch;line-height:1.6}.project-page .demo-ribbon>a{font-size:7px;text-align:right}.project-page .site-header .header-inner{min-height:63px;padding-block:7px}.project-page .wordmark{font-size:23px}.project-page .wordmark-small{font-size:6px}.project-page .project-heading{padding-block:30px}.project-topline{align-items:start;gap:12px;margin-bottom:32px}.project-page .back-link{font-size:9px;line-height:1.7}.project-chapter{font-size:7px;letter-spacing:.02em;line-height:1.7;white-space:nowrap}.project-title-grid{gap:23px}.project-page .project-heading h1{font-size:clamp(34px,10.5vw,48px);letter-spacing:-.055em;line-height:1.07}.project-title-aside{grid-template-columns:minmax(0,1fr);gap:11px}.project-title-aside .eyebrow{max-width:none;font-size:7px}.project-page .project-lead{font-size:12px;line-height:1.85;max-width:43ch}.project-page .project-cover{width:calc(100% - 24px)}.project-cover>a{border-radius:13px}.project-page .project-cover img{height:390px;aspect-ratio:auto;object-position:center}.project-page .image-zoom{right:14px;bottom:14px;padding:11px 15px;gap:18px;font-size:9px}.project-page .project-cover figcaption{padding:11px 6px 0;font-size:7px;line-height:1.7;gap:15px}.project-cover figcaption>span:last-child{max-width:18ch;text-align:right}.project-specifications{padding-block:28px;gap:21px}.project-page .project-facts{grid-template-columns:minmax(0,1fr);gap:18px}.project-page .project-facts>div{display:grid;grid-template-columns:90px minmax(0,1fr);gap:17px}.project-page .project-facts dt{font-size:8px;padding-top:3px}.project-page .project-facts dd{font-size:11px;margin:0;max-width:30ch}.project-page .project-story{grid-template-columns:minmax(0,1fr);gap:25px;padding-block:53px}.project-page .project-story h2{font-size:34px;line-height:1.1;max-width:18ch;margin-top:18px}.project-page .story-copy{padding:0}.project-page .story-copy>p{font-size:12px;line-height:1.9}.project-page .story-copy>p+p{margin-top:19px}.material-study{grid-template-columns:minmax(0,1fr);gap:27px;padding-block:30px 55px}.material-heading h2{font-size:34px;margin-top:17px;line-height:1.1}.material-heading h2 br{display:none}.material-heading>p:last-child{font-size:9px;max-width:none;margin-top:15px}.material-palette{gap:13px}.swatch-colour{border-radius:10px}.swatch-label{font-size:11px;line-height:1.5;margin-top:12px}.swatch-number{font-size:6px;margin-top:6px}.project-page .next-project{padding-bottom:32px}.next-project-heading{padding-block:22px;gap:16px;align-items:start}.next-project-heading .eyebrow{font-size:7px;max-width:17ch;line-height:1.7}.next-project-heading>span:last-child{font-size:9px;max-width:20ch;text-align:right;line-height:1.7}.project-page .next-project>a{width:calc(100% - 24px);border-radius:12px}.next-project-link>img{height:300px;object-position:center}.next-project-copy{padding:24px 21px;grid-template-columns:minmax(0,1fr) 38px;gap:15px 15px}.project-page .next-project h2{font-size:clamp(25px,7.4vw,34px);line-height:1.12;max-width:20ch;overflow-wrap:anywhere}.next-project-copy>.eyebrow{font-size:7px;line-height:1.7}.next-project-arrow{width:38px;height:38px;font-size:23px}.project-page .site-footer{padding-block:30px;gap:24px}.project-page .site-footer .wordmark{font-size:25px}.project-page .site-footer>p{font-size:8px;max-width:26ch}.project-page .site-footer>a:last-child{font-size:10px}}
@media(max-width:360px){.project-page .project-heading h1{font-size:34px}.project-page .project-cover img{height:345px}.project-page .project-story h2,.material-heading h2{font-size:31px}.next-project-copy{padding-inline:18px;column-gap:12px}.project-page .next-project h2{font-size:25px}.next-project-arrow{width:34px;height:34px}}
@media(prefers-reduced-motion:reduce){.project-cover>a:hover img,.next-project-link:hover>img,.next-project-link:hover .next-project-arrow{transform:none}}
@media print{.project-page .project-heading{padding-top:20px}.project-page .project-heading h1{font-size:48px}.project-page .project-cover img{height:auto}.project-page .project-story,.material-study{padding-block:25px}.next-project-link>img{height:240px}.project-page .next-project h2{font-size:34px}.project-scroll{display:none}}
