.project-card{display:block;min-width:0}.project-card[hidden]{display:none}.project-image{position:relative;background:var(--project-colour,#dce8be);height:300px;display:flex;align-items:center;justify-content:center;overflow:hidden;padding:28px}.project-image img{display:block;max-width:100%;width:100%;height:100%;object-fit:contain;transition:transform .5s}.project-card:hover .project-image img{transform:scale(1.035)}.project-corner{position:absolute;right:14px;bottom:14px;border-radius:50%;background:var(--paper);width:35px;height:35px;display:grid;place-items:center;font-size:21px;box-shadow:0 2px 8px #0001}.project-badge{position:absolute;top:15px;left:15px;background:var(--ink);color:white;font-size:8px;letter-spacing:1.5px;padding:9px 12px;border-radius:20px}.project-card-copy{padding:21px 0 29px}.project-card-copy .eyebrow{font-size:8px;letter-spacing:1.3px;color:#69746b;margin-bottom:8px}.project-card h3{font-size:23px;letter-spacing:-.8px;font-weight:600;display:flex;gap:15px;justify-content:space-between}.project-card h3 span{font-size:24px;font-weight:400}.project-card-copy>p:last-child{font-size:12px;line-height:1.75;color:#626967;margin-top:10px;max-width:95%}.selected-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px 35px}.selected-grid .featured-project{grid-column:1/-1;display:grid;grid-template-columns:1.45fr 1fr;gap:0;margin-bottom:22px;background:#e0e5d2}.featured-project .project-image{height:420px;padding:30px}.featured-project .project-card-copy{display:flex;flex-direction:column;justify-content:center;padding:45px}.featured-project h3{font-size:36px;line-height:1.2}.featured-project .project-card-copy>p:last-child{font-size:15px;line-height:1.8;margin-top:22px}.portfolio-bottom{display:flex;justify-content:space-between;align-items:center;gap:30px;border-top:1px solid var(--line);padding-top:28px;margin-top:15px}.portfolio-bottom>p{font-size:12px;color:#626967;line-height:1.8}.portfolio-page .brand-symbol:after{background-image:url(/assets/mosaic-logo-header.webp)}.portfolio-page header nav a[aria-current]{color:var(--teal);border-bottom:1px solid var(--teal);padding-bottom:4px}.portfolio-page footer .brand-symbol{display:none}.portfolio-page footer>a:not(.brand):not(.back-top){font-size:12px}.breadcrumb{display:inline-block;font-size:11px;color:#667466;margin-bottom:45px;border-bottom:1px solid #bcc5b6;padding-bottom:5px}.portfolio-intro{padding-top:50px}.portfolio-intro>.eyebrow{color:var(--teal)}.portfolio-intro h1{font-size:clamp(48px,6vw,86px);letter-spacing:-4px;line-height:1.08;max-width:1000px;margin:18px 0 25px}.portfolio-intro h1 em{font-family:Georgia,serif;color:var(--teal);font-weight:400}.portfolio-lead{font-size:16px;line-height:1.8;max-width:640px;color:#626967}.portfolio-filter{display:flex;gap:10px;flex-wrap:wrap;margin:40px 0 18px}.portfolio-filter button{background:transparent;border:1px solid #c5cebf;border-radius:25px;padding:11px 18px;font-size:11px;color:var(--ink);transition:.2s}.portfolio-filter button[aria-pressed=true],.portfolio-filter button:hover{background:var(--teal);color:white;border-color:var(--teal)}.result-count{font-size:10px;color:#6c7869;letter-spacing:.5px;margin-bottom:30px}.all-project-grid{display:grid;grid-template-columns:1fr 1fr;gap:25px 35px}.all-project-grid .project-image{height:330px}.coming-note{display:flex;align-items:center;gap:25px;border-top:1px solid var(--line);padding-top:40px;margin-top:30px}.coming-note>span{font-size:60px;color:var(--pink)}.coming-note h3{font-size:22px;letter-spacing:-.7px}.coming-note p{font-size:13px;line-height:1.8;color:#626967;max-width:650px;margin-top:10px}.project-hero{padding-top:45px;padding-bottom:0}.project-headline{display:grid;grid-template-columns:1.3fr 1fr;gap:8%;align-items:end;margin-bottom:50px}.project-headline>.project-intro{min-width:0}.project-headline .eyebrow{color:var(--teal);font-size:9px}.project-client{font-size:14px;font-weight:600;margin-top:22px}.project-headline h1{font-size:clamp(43px,5.3vw,76px);line-height:1.08;letter-spacing:-3.7px;margin:16px 0 0}.project-intro>p{font-size:15px;line-height:1.8;color:#626967}.project-meta{display:flex;flex-direction:column;gap:10px;border-top:1px solid var(--line);padding-top:20px;margin-top:22px;font-size:8px;letter-spacing:1.3px;color:#667466}.project-intro .text-link{margin-top:22px}.project-cover{background:var(--project-colour,#dce8be);padding:45px;max-height:680px;height:580px;display:flex;align-items:center;justify-content:center;overflow:hidden}.project-cover img{max-width:100%;height:100%;width:100%;object-fit:contain;box-shadow:0 12px 45px #0001}.project-story{display:grid;grid-template-columns:1.25fr 1fr;gap:12%;padding-top:75px;padding-bottom:65px}.project-story h2{margin:20px 0 25px;font-size:clamp(35px,3.5vw,50px)}.project-story>div>p:last-child{font-size:15px;line-height:1.9;color:#626967}.project-scope{border-top:2px solid var(--teal);padding-top:22px;align-self:center}.project-scope ul{list-style:none;padding:0;margin:18px 0 0}.project-scope li{font-size:13px;line-height:1.7;padding:12px 0;border-bottom:1px solid var(--line);display:flex;gap:14px}.project-scope li:before{content:'↗';color:var(--teal)}.project-gallery{background:#eceee5;padding-top:55px;padding-bottom:55px}.artwork-grid{display:grid;grid-template-columns:1fr 1fr;gap:35px}.artwork{margin:0;min-width:0}.artwork.gallery-first{grid-column:1/-1}.artwork-open{position:relative;border:0;background:#e0e4d8;width:100%;padding:28px;min-height:200px;display:flex;align-items:center;justify-content:center;overflow:hidden}.artwork-open img{display:block;max-width:100%;width:auto;max-height:700px;object-fit:contain;box-shadow:0 3px 15px #0001;transition:transform .3s}.artwork-open:hover img{transform:scale(1.02)}.artwork-open>span{position:absolute;right:12px;bottom:12px;background:var(--paper);font-size:9px;border-radius:20px;padding:9px 13px;box-shadow:0 2px 5px #0001}.artwork figcaption{font-size:10px;color:#687365;line-height:1.7;padding-top:12px}.video-section{background:#263b38;color:white;display:grid;grid-template-columns:1fr 1.3fr;gap:8%;align-items:center}.video-section h2{font-size:clamp(34px,3.5vw,50px);margin:20px 0}.video-section h2 em{color:#c7dfb4}.video-section>div>p:not(.eyebrow){font-size:14px;line-height:1.8;color:#d1ddd5}.video-section .video-credit{font-size:11px!important;border-top:1px solid #587169;margin-top:20px;padding-top:15px}.video-section video{width:100%;max-height:680px;display:block;background:#172826}.possibility-notes{border-bottom:1px solid var(--line)}.possibility-notes h2{margin:20px 0 35px;font-size:clamp(34px,3.5vw,50px)}.possibility-notes>div{display:grid;grid-template-columns:repeat(3,1fr);gap:40px}.possibility-notes article{border-top:2px solid var(--teal);padding-top:20px}.possibility-notes article:nth-child(2){border-color:var(--pink)}.possibility-notes article:nth-child(3){border-color:var(--purple)}.possibility-notes article>span{font-size:10px;color:#6c7869}.possibility-notes article p{font-size:17px;line-height:1.7;margin-top:15px}.project-cta{background:#dce8be;display:flex;justify-content:space-between;align-items:center;gap:50px}.project-cta h2{font-size:clamp(36px,4vw,58px);margin:20px 0}.project-cta>div>p:last-child{font-size:13px;line-height:1.8;color:#52654d}.project-cta-actions{display:flex;flex-direction:column;align-items:center;gap:25px;flex-shrink:0}.related-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.related-grid .project-image{height:230px;padding:20px}.related-grid .project-card h3{font-size:19px}.related-work .section-heading{align-items:center}.related-work .section-heading h2{font-size:44px}.image-viewer{padding:45px 20px 20px;width:min(94vw,1450px);max-width:none;max-height:94vh;background:var(--paper);overflow:auto}.image-viewer>img{display:block;max-width:100%;width:auto;height:auto;margin:auto}.image-viewer>p{text-align:center;font-size:12px;line-height:1.8;margin-top:15px}.viewer-close{position:sticky;display:block;top:0;margin:-30px 0 10px auto;border:0;background:var(--ink);color:white;width:40px;height:40px;border-radius:50%;font-size:28px;z-index:1}.demo-section{background:#eceee5}.demo-heading{display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:end}.demo-heading h2{margin-top:20px}.demo-heading>div>p:not(.eyebrow){font-size:14px;line-height:1.8;color:#626967}.demo-heading .button{margin-top:22px}.demo-points{display:flex;gap:30px;justify-content:space-between;padding:20px 0;margin-top:35px;border-block:1px solid #c6cebe;font-size:10px;letter-spacing:.5px}.demo-note{font-size:11px;line-height:1.8;color:#687365;margin:18px 0 30px;max-width:800px}.demo-preview{padding:20px;background:#d7dfcf}.demo-preview img{width:100%;display:block}.portfolio-page h1 em{font-family:Georgia,serif;color:var(--teal);font-weight:400}
@media(min-width:1600px){.project-cover{height:700px;max-height:700px}}@media(max-width:1000px){.featured-project .project-card-copy{padding:30px}.featured-project h3{font-size:29px}.featured-project .project-image{height:350px}.project-headline{gap:5%}.project-headline h1{font-size:50px}.project-cover{height:480px;padding:30px}.project-story{gap:7%}.related-grid{grid-template-columns:1fr 1fr}.related-grid .project-card:last-child{display:none}.project-cta{gap:30px}.project-cta h2{font-size:40px}.artwork-open{padding:18px}.demo-points{gap:15px;font-size:9px}}
@media(max-width:720px){.selected-grid,.all-project-grid{grid-template-columns:1fr;gap:15px}.selected-grid .featured-project{grid-template-columns:1fr;display:block;margin-bottom:8px}.featured-project .project-image{height:280px;padding:20px}.featured-project .project-card-copy{padding:25px}.featured-project h3{font-size:28px}.featured-project .project-card-copy>p:last-child{font-size:13px;margin-top:13px}.project-image,.all-project-grid .project-image{height:290px;padding:22px}.project-card-copy{padding:18px 0 25px}.project-card h3{font-size:22px}.project-card-copy .eyebrow{font-size:7px}.portfolio-bottom{align-items:flex-start;flex-direction:column;gap:22px;margin-top:5px}.portfolio-bottom .button{width:100%}.breadcrumb{margin-bottom:30px}.portfolio-intro{padding-top:30px}.portfolio-intro h1{font-size:46px;letter-spacing:-2.7px;line-height:1.13}.portfolio-lead{font-size:14px}.portfolio-filter{margin-top:28px;gap:7px}.portfolio-filter button{font-size:10px;padding:10px 13px}.coming-note{align-items:flex-start;gap:18px;padding-top:30px}.coming-note h3{font-size:20px}.coming-note>span{font-size:42px}.project-hero{padding-top:30px}.project-headline{grid-template-columns:1fr;gap:28px;margin-bottom:30px}.project-headline h1{font-size:46px;letter-spacing:-2.6px;line-height:1.1}.project-client{margin-top:20px;font-size:13px}.project-intro>p{font-size:14px}.project-meta{font-size:7px;line-height:1.6;gap:8px;padding-top:15px;margin-top:18px}.project-cover{height:350px;padding:20px;margin-inline:-3%}.project-story{grid-template-columns:1fr;gap:35px;padding-top:45px;padding-bottom:45px}.project-story h2{font-size:37px}.project-story>div>p:last-child{font-size:14px}.project-scope li{font-size:12px}.artwork-grid{grid-template-columns:1fr;gap:25px}.artwork.gallery-first{grid-column:auto}.artwork-open{padding:18px}.artwork-open img{max-height:650px}.project-gallery{padding-top:40px;padding-bottom:40px}.video-section{grid-template-columns:1fr;gap:30px}.video-section h2{font-size:38px}.video-section video{max-height:600px}.possibility-notes h2{font-size:36px}.possibility-notes>div{grid-template-columns:1fr;gap:22px}.possibility-notes article{display:flex;gap:20px;padding-top:16px}.possibility-notes article>span{padding-top:5px}.possibility-notes article p{margin:0;font-size:15px}.project-cta{flex-direction:column;align-items:flex-start;gap:25px}.project-cta h2{font-size:39px;letter-spacing:-2px}.project-cta-actions{width:100%;align-items:flex-start;gap:20px}.project-cta-actions .button{width:100%}.related-grid{grid-template-columns:1fr;gap:12px}.related-grid .project-card:last-child{display:block}.related-grid .project-image{height:260px}.related-work .section-heading{gap:20px}.related-work .section-heading h2{font-size:36px}.related-work .section-heading .text-link{margin-top:15px}.image-viewer{padding:40px 10px 15px;width:96vw}.image-viewer>img{max-height:none}.demo-heading{grid-template-columns:1fr;gap:25px}.demo-heading h2{font-size:38px}.demo-points{flex-direction:column;gap:15px;font-size:10px}.demo-preview{padding:8px}.portfolio-page footer .brand-symbol{display:none}.portfolio-page footer>a:not(.brand):not(.back-top){font-size:11px}}
