/* Projects uses the existing white/red brand shell; all rules are scoped. */
.projects-page{background:#fff}.projects-page .projects-intro{padding-block:48px 34px}.projects-page .projects-intro h1{font-size:clamp(32px,3.5vw,52px);margin:14px 0 18px;letter-spacing:-1.5px}.projects-page .projects-intro .lead{max-width:780px;font-size:17px;margin:0}.projects-collection{padding-bottom:90px}.project-filter{display:flex;gap:10px;border-block:1px solid #e8e8e5;padding:20px 0;overflow:auto;scrollbar-width:thin}.project-filter button{white-space:nowrap;padding:12px 22px;background:#fff;border:1px solid #dededb;color:#56565b;cursor:pointer;font:inherit;font-size:13px;transition:background .25s,color .25s,border-color .25s;flex-shrink:0}.project-filter button:hover{border-color:var(--red);color:var(--red)}.project-filter button[aria-pressed=true]{background:var(--red);border-color:var(--red);color:#fff}.projects-meta{display:flex;gap:30px;justify-content:space-between;align-items:baseline;padding:18px 0 28px}.projects-meta p{margin:0}.projects-meta #project-count{font-size:12px;white-space:nowrap;color:#37373b}.projects-page .projects-source{font-size:12px;line-height:1.8;color:#86868a;max-width:760px}.projects-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:46px 28px;align-items:start}.project-case{min-width:0}.project-image{display:block;overflow:hidden;background:#f5f5f3}.projects-page .project-image img{width:100%;height:auto;aspect-ratio:var(--image-ratio);object-fit:contain;transition:transform .3s;display:block}.project-case:hover .project-image img{transform:scale(1.025)}.project-case-copy{padding-top:17px}.projects-page .project-case h2{font-size:20px;line-height:1.4;margin:0 0 12px;font-weight:600;letter-spacing:-.25px}.project-case h2 a:hover{color:var(--red)}.project-tags{list-style:none;padding:0;margin:0;display:flex;gap:7px 14px;flex-wrap:wrap}.project-tags li{font-size:11px;color:#6c6c73;line-height:1.8}.project-tags li+li{position:relative}.project-tags li+li:before{content:'·';position:absolute;left:-9px;color:#aaa}.project-view{display:inline-flex;gap:16px;font-size:12px;color:#b70e36;padding:8px 0;border-bottom:1px solid #e4d1d5;margin-top:12px}.project-view:hover{border-color:var(--red)}.project-case.is-entering{animation:case-enter .28s ease both}@keyframes case-enter{from{opacity:.3;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.project-detail-intro .project-tags{margin-top:15px}.project-detail-gallery{margin:0 auto 52px}.projects-page .project-detail-gallery h2{font-size:16px;margin-bottom:22px}.project-detail-gallery figure{margin:0 0 28px}.projects-page .project-detail-gallery img{width:100%;height:auto;max-height:780px;object-fit:contain;aspect-ratio:var(--image-ratio);background:#f5f5f3}.project-detail-gallery figcaption{font-size:11px;color:#777;margin-top:12px}.project-detail-copy{display:grid;grid-template-columns:1fr 1fr;gap:40px 65px;padding-bottom:65px}.project-detail-copy section{border-top:1px solid #ddd;padding-top:26px}.projects-page .project-detail-copy h2{font-size:25px;margin:12px 0 18px}.project-detail-copy p,.project-detail-copy li{font-size:14px;line-height:1.9}.project-detail-copy ul:not(.project-tags){padding-left:18px;color:#68686b}.project-detail-copy .project-tags{margin-bottom:15px}.project-detail-copy dl{margin:0}.project-detail-copy dl>div{display:grid;grid-template-columns:1fr 2fr;gap:20px;border-bottom:1px solid #eee;padding:13px 0;font-size:13px}.project-detail-copy dt{color:#777}.project-detail-copy dd{margin:0}.projects-related{border-top:1px solid #ddd;padding-block:40px 80px}.projects-related-heading{display:flex;justify-content:space-between;align-items:baseline;gap:25px;margin-bottom:28px}.projects-page .projects-related-heading h2{font-size:26px;margin:0}.projects-page :is(button,a):focus-visible{outline:2px solid var(--red);outline-offset:4px}@media(max-width:1050px){.projects-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:36px 24px}.project-detail-copy{gap:35px}.projects-meta{align-items:start}}@media(max-width:650px){.projects-page .projects-intro{padding-block:32px 25px}.projects-page .projects-intro h1{font-size:32px}.projects-page .projects-intro .lead{font-size:15px}.project-filter{gap:8px;padding-block:15px}.project-filter button{padding:11px 17px}.projects-meta{display:block;padding:15px 0 25px}.projects-meta .projects-source{margin-top:10px;font-size:11px}.projects-grid{grid-template-columns:1fr;gap:35px}.projects-page .project-case h2{font-size:20px}.project-detail-copy{grid-template-columns:1fr;gap:28px;padding-bottom:35px}.project-detail-gallery{margin-bottom:30px}.projects-related-heading{display:block}.projects-related-heading .project-view{margin-top:8px}.projects-related{padding-bottom:45px}.projects-collection{padding-bottom:50px}}@media(prefers-reduced-motion:reduce){.project-case.is-entering{animation:none}.projects-page .project-image img,.project-filter button{transition:none}.project-case:hover .project-image img{transform:none}}
.project-enquiry{border-top:1px solid #ddd;padding-block:35px 50px;display:flex;align-items:center;justify-content:space-between;gap:25px}.projects-page .project-enquiry h2{font-size:26px;margin:0}@media(max-width:650px){.project-enquiry{flex-direction:column;align-items:flex-start}.projects-page .project-enquiry h2{font-size:24px}}
