.detail-page{background:var(--paper);color:var(--ink)}.detail-nav{display:flex;justify-content:space-between;align-items:center;padding:28px 7vw;background:#2e3d35;color:var(--paper)}.detail-nav>a:last-child,.back-link{font-size:14px;color:inherit;text-decoration:none}.detail-hero{padding:55px 10vw 95px;background:#2e3d35;color:var(--paper)}.back-link{display:inline-block;margin-bottom:64px}.detail-hero .eyebrow{color:var(--acid);font-size:13px}.detail-hero h1{font-size:clamp(44px,6.8vw,100px);line-height:1.03;letter-spacing:-.06em;margin:0}.detail-hero h1 em,.detail-section h2 em{font-family:'Playfair Display',serif;font-weight:500}.detail-intro{max-width:660px;font-size:20px;line-height:1.65;margin:32px 0}.detail-section{padding:90px 10vw}.detail-section h2{font-size:clamp(36px,4.5vw,66px);line-height:1.07;letter-spacing:-.055em;margin:0 0 40px}.detail-section h3{font-size:22px;letter-spacing:-.035em;margin:0 0 15px}.detail-section p,.detail-section li{font-size:16px;line-height:1.75}.detail-section .eyebrow{font-size:13px}.detail-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px}.detail-grid article{border-top:1px solid #b8bdb1;padding-top:24px}.detail-dark{background:#2e3d35;color:var(--paper)}.detail-steps{list-style:none;padding:0;margin:0}.detail-steps li{display:grid;grid-template-columns:60px 1fr;border-top:1px solid #6e7c70;padding:25px 0}.detail-steps span{font:14px 'DM Mono',monospace;color:var(--acid)}.detail-steps p{max-width:760px;margin:0}.detail-split{display:grid;grid-template-columns:1.4fr 1fr;gap:70px}.detail-split li{padding:8px 0}.detail-split ul{padding-left:22px}.detail-split aside{padding:35px;background:#e2e6d8;align-self:start}.detail-faq{padding-top:20px}.detail-faq details{border-top:1px solid #aeb7a6;padding:24px 0}.detail-faq summary{cursor:pointer;font-size:18px;font-weight:600}.detail-faq p{max-width:850px}.detail-enquire{background:#5c6c52;color:white}.detail-enquire .button{margin-top:22px;font-size:14px}.other-services{display:flex;justify-content:space-between;gap:22px;flex-wrap:wrap;padding:32px 10vw;background:#2e3d35}.other-services a{color:var(--paper);font-size:16px;text-decoration:none}.other-services a[aria-current]{color:var(--acid)}a:focus-visible,summary:focus-visible{outline:2px solid currentColor;outline-offset:6px}.service{cursor:pointer}.service>a:after{content:'';position:absolute;inset:0}.service:focus-within{outline:2px solid var(--acid);outline-offset:8px}.service>a{transform:none!important}.detail-page .button{font-size:14px}@media(max-width:760px){.detail-grid,.detail-split{grid-template-columns:1fr;gap:28px}.detail-section{padding:60px 7vw}.detail-hero{padding:40px 7vw 70px}.detail-intro{font-size:18px}.detail-nav{gap:20px}.detail-hero .back-link{margin-bottom:45px}}
.printing-film{position:relative;isolation:isolate;overflow:hidden;min-height:760px;padding-bottom:120px}.printing-film-media{position:absolute;inset:0;z-index:-2;background:#2e3d35}.printing-film-media video{width:100%;height:100%;object-fit:cover;object-position:center}.printing-film:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(15,29,22,.87),rgba(15,29,22,.55) 52%,rgba(15,29,22,.12)),linear-gradient(0deg,rgba(15,29,22,.65),transparent 40%)}.film-controls{position:absolute;bottom:28px;left:10vw;right:10vw;display:flex;align-items:center;justify-content:space-between;gap:16px}.film-controls a{font-size:12px;color:#f4f0e8}.film-controls button{border:1px solid #b8c4b7;padding:10px 15px;background:#2e3d35;color:white;cursor:pointer;font:inherit;font-size:14px}.film-controls button:focus-visible{outline:2px solid #c8f34a;outline-offset:4px}@media(max-width:760px){.printing-film{min-height:720px;padding-bottom:130px}.film-controls{left:7vw;right:7vw;flex-wrap:wrap}.printing-film:after{background:rgba(15,29,22,.7)}}
.application-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}.application-grid figure{margin:0;min-width:0}.application-photo{aspect-ratio:4/5;overflow:hidden;background:#eee9df}.application-photo img{width:100%;height:100%;object-fit:cover;filter:saturate(.75);transition:transform .7s ease,filter .7s ease}.application-tools{background:#fff}.application-tools img{object-fit:contain;padding:18px}.application-grid figure:hover img{transform:scale(1.025);filter:saturate(1)}.application-grid figcaption{padding-top:24px}.application-grid figcaption p{margin:0 0 16px}.application-grid figcaption a{color:#43523e;font-size:12px;line-height:1.6;text-underline-offset:4px}.application-gallery .application-note{font-size:13px;color:#58634f;margin:30px 0 0}.application-gallery+section{padding-top:20px}@media(max-width:760px){.application-grid{grid-template-columns:1fr;gap:40px}.application-photo{aspect-ratio:4/3}}@media(prefers-reduced-motion:reduce){.application-photo img{transition:none}.application-grid figure:hover img{transform:none}}
.own-work-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:48px 28px}.own-work-grid .project-wide{grid-column:1/-1}.own-work-grid .project-wide .application-photo{aspect-ratio:1536/692}.own-work-grid .application-photo{aspect-ratio:1/1}.own-work-grid .application-photo img{display:block;filter:none}.own-work-grid .project-square .application-photo{background:white}.own-work-grid .project-square img{object-fit:contain}.own-work-grid .project-monitor img{object-position:center}.own-work-grid .project-portrait .application-photo{aspect-ratio:3/4}.own-work-grid figcaption{padding-top:20px}.own-work-grid figcaption p{max-width:42ch}@media(max-width:760px){.own-work-grid{grid-template-columns:1fr;gap:36px}.own-work-grid .project-wide{grid-column:auto}.own-work-grid .project-monitor .application-photo{aspect-ratio:16/9}.own-work-grid .project-monitor img{transform:scale(1.12)}.own-work-grid .project-monitor:hover img{transform:scale(1.12)}}
.cad-video-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:36px}.cad-video-grid figure{margin:0;min-width:0}.cad-video-grid video{display:block;width:100%;height:auto;aspect-ratio:848/452;object-fit:contain;background:#20251f}.cad-video-grid figcaption{padding-top:24px}.cad-video-grid figcaption p{margin:0 0 12px}.cad-video-grid video:focus-visible{outline:2px solid #43523e;outline-offset:6px}.cad-showcase+section{padding-top:20px}@media(max-width:960px){.cad-video-grid{grid-template-columns:1fr;gap:40px}}
.process-story{position:relative;min-height:680px!important;overflow:hidden;background:#d1ed75!important;color:#253a30;padding:40px;box-sizing:border-box}.story-top{display:flex;justify-content:space-between;align-items:center;font:12px 'DM Mono',monospace;letter-spacing:.08em}.story-toggle{background:transparent;border:1px solid #52663c;border-radius:30px;padding:9px 16px;color:inherit;font:14px inherit;cursor:pointer;position:relative;z-index:3}.story-stage{position:absolute;inset:100px 8% 72px;display:flex;flex-direction:column;justify-content:center;opacity:0;transform:translateY(18px);transition:opacity 1.8s ease,transform 1.8s ease;pointer-events:none}.story-stage.is-active{opacity:1;transform:none;pointer-events:auto}.story-number{font:12px 'DM Mono',monospace;letter-spacing:.1em}.process-story h3{font-size:clamp(24px,2.6vw,42px);line-height:1.15;letter-spacing:-.045em;margin:30px 0 12px}.process-story .story-stage p{position:static!important;font:16px/1.6 'Manrope',sans-serif!important;letter-spacing:0!important;margin:0;max-width:36ch}.brief-diagram,.route-diagram{height:250px;display:flex;flex-direction:column;align-items:center;justify-content:center;font:14px 'DM Mono',monospace;letter-spacing:.05em}.brief-diagram>span,.route-diagram>span{border:1px solid #52663c;padding:18px 24px;background:#e0f4a5}.brief-needs,.route-options{display:flex;gap:10px;width:100%;justify-content:center}.brief-needs span,.route-options span{padding:16px 12px;border:1px solid #52663c;background:#dcedac}.brief-line,.route-path{height:36px;width:1px;background:#52663c}.route-options span:nth-child(2){background:#2e3d35;color:#e5f4c2}.story-result{height:280px;margin-top:24px;overflow:hidden;background:white}.story-result img{width:100%;height:100%;object-fit:contain}.story-progress{position:absolute;bottom:35px;left:8%;right:8%;display:flex;gap:10px}.story-progress span{height:3px;flex:1;background:#9daf6a;transition:background 1.5s}.story-progress span.is-active{background:#253a30}.process-copy li.story-current{border-left:3px solid #718343;padding-left:18px}.process-copy li{transition:border-color 1.5s,padding 1.5s}@media(max-width:760px){.process-story{min-height:640px!important;padding:28px}.story-stage{inset:85px 8% 65px}}@media(prefers-reduced-motion:reduce){.story-stage,.story-progress span,.process-copy li{transition:none}}
.process-story{isolation:isolate;background:#26372e!important;color:#f4f0e8}.process-background-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}.process-story:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(16,30,23,.7),rgba(16,30,23,.85))}.process-story .story-toggle{border-color:#b3c5a5;color:#f4f0e8}.process-story .brief-diagram>span,.process-story .route-diagram>span,.process-story .brief-needs span,.process-story .route-options span{background:rgba(37,58,48,.84);border-color:#91a484;color:#f4f0e8}.process-story .route-options span:nth-child(2){background:#d1ed75;color:#253a30}.process-story .brief-line,.process-story .route-path{background:#a9be94}.process-story .story-progress span{background:#63755e}.process-story .story-progress span.is-active{background:#d1ed75}
.raptor-images,.raptor-films{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px}.raptor-showcase figure{margin:0;min-width:0}.raptor-images img{display:block;width:100%;height:auto;aspect-ratio:1;object-fit:contain;background:#20252b}.raptor-showcase figcaption{padding-top:22px}.raptor-showcase figcaption p{margin:0;max-width:40ch}.raptor-film-label{margin:64px 0 24px}.raptor-films iframe{display:block;width:100%;aspect-ratio:16/9;border:0;background:#20252b}.raptor-showcase+section{padding-top:20px}@media(max-width:760px){.raptor-images,.raptor-films{grid-template-columns:1fr;gap:36px}}
.brand{display:inline-flex;align-items:center;gap:10px;white-space:nowrap;font-family:Manrope,Arial,sans-serif;font-weight:800;font-size:24px;letter-spacing:-1.2px;line-height:1}.brand .brand-symbol{width:40px;height:40px;flex-shrink:0}.brand .brand-word{color:inherit}.brand .brand-dimension{color:var(--acid);margin-left:2px}.brand:focus-visible{outline:2px solid var(--acid);outline-offset:6px}@media(max-width:760px){.brand{font-size:20px;gap:7px}.brand .brand-symbol{width:32px;height:32px}.detail-nav>a:last-child{font-size:12px}}
