:root{font-family:Arial,Helvetica,sans-serif;color:#1b2425;background:#f7f8f6;font-synthesis:none}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:32px}body{margin:0}a{color:inherit;text-decoration:none}a:focus-visible{outline:2px solid #698700;outline-offset:7px}header{min-height:110px;padding:28px 5%;display:flex;align-items:center;justify-content:space-between;gap:24px;border-bottom:1px solid #d8dcda}.logo{font-weight:800;font-size:29px;letter-spacing:-1.5px;white-space:nowrap}.logo span{font-weight:400}.logo sup{font-size:12px;vertical-align:top;letter-spacing:0;margin-left:3px}nav{display:flex;gap:32px;font-size:14px}.location{font-size:13px;color:#586363}.intro{padding:65px 5% 58px}.eyebrow,.section-label{font-size:12px;letter-spacing:1.6px;font-weight:600}.intro-row{display:flex;justify-content:space-between;gap:48px;align-items:flex-end;margin-top:30px}h1{font-size:clamp(54px,7.9vw,124px);line-height:1.02;font-weight:400;letter-spacing:-.065em;margin:0}h1 span{color:#697573}.intro-copy{width:300px;padding-bottom:8px;flex-shrink:0}p{font-size:17px;line-height:1.65;margin:0;color:#586363}.text-link{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #9ba5a0;padding:27px 0 12px;font-size:14px}.text-link span{font-size:25px}.project{padding:0 3%}figure{margin:0}img{display:block;width:100%;height:auto}.hero{position:relative}.hero img{aspect-ratio:1.94;object-fit:cover}.hero figcaption{background:#1b2425;color:white;padding:20px 28px;display:flex;justify-content:space-between;font-size:12px;letter-spacing:1px}.project-heading{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center;padding:70px 2.2% 45px}h2{font-size:clamp(32px,3.4vw,52px);line-height:1.15;font-weight:400;letter-spacing:-1.8px;margin:0}.project-heading p{max-width:440px;justify-self:end}.second{width:75%;margin:0 0 80px auto}.second figcaption{display:flex;justify-content:space-between;gap:24px;padding-top:16px;color:#586363;font-size:13px}.expertise{padding:80px 5%;background:#1b2425;color:#f7f8f6;display:grid;grid-template-columns:1fr 2fr;gap:70px}.expertise .section-label{color:#d7ef79}.services article{display:flex;gap:35px;padding:28px 0;border-top:1px solid #4a5252}.services article:first-child{padding-top:0;border-top:none}.services article>span{color:#aeb6b3;font-size:13px;padding-top:7px}h3{font-size:clamp(22px,2.1vw,32px);font-weight:400;margin:0 0 13px;letter-spacing:-.7px}.services p{color:#bbc4c0;max-width:530px;font-size:16px}.studio{padding:100px 5%;display:grid;grid-template-columns:1fr 2fr;gap:70px}.studio p{max-width:570px;margin-top:30px}.signature{margin-top:36px;font-size:16px}.signature span{display:block;color:#697573;margin-top:7px;font-size:14px}footer{margin:0 5%;padding:32px 0;border-top:1px solid #d8dcda;display:flex;align-items:center;justify-content:space-between;gap:24px}footer p,footer>a:last-child{font-size:13px}.skip{position:absolute;left:10px;top:-100px;background:white;padding:15px;z-index:5}.skip:focus{top:10px}a:hover{color:#6c812c}@media(min-width:1800px){body{max-width:1800px;margin:auto}}@media(max-width:760px){header{padding:24px 6%;flex-wrap:wrap;gap:22px;min-height:0}.location{display:none}nav{gap:20px;font-size:14px;width:100%;justify-content:space-between}.intro{padding:44px 6%}.intro-row{display:block;margin-top:28px}.intro-copy{width:auto;max-width:360px;margin-top:30px}.eyebrow{font-size:12px;line-height:1.7}.hero img{aspect-ratio:1.15}.hero figcaption{padding:18px;flex-direction:column;gap:9px}.project-heading{grid-template-columns:1fr;gap:24px;padding:40px 3%}.project-heading p{justify-self:start}.second{width:100%;margin-bottom:45px}.second figcaption{flex-direction:column;gap:6px;padding:15px 3%}.expertise,.studio{grid-template-columns:1fr;gap:35px;padding:50px 6%}.services article{gap:20px}.studio h2{letter-spacing:-1px}footer{flex-wrap:wrap;padding:26px 0}footer p{width:100%;order:3}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
button{font:inherit;cursor:pointer}button:focus-visible{outline:2px solid #7f9a24;outline-offset:5px}[hidden]{display:none!important}header nav [aria-current=page]{text-decoration:underline;text-underline-offset:8px}.home-feature{margin-bottom:65px}.service-plus{color:#d7ef79;font-size:25px;margin-left:15px}.services h3 a:hover{color:#d7ef79}.selection,.gallery{padding:70px 5%}.section-top{display:flex;justify-content:space-between;gap:30px;align-items:end;margin-bottom:40px}.section-top h2{margin-top:20px}.section-top>.text-link{min-width:160px}.project-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:44px 28px}.project-card{grid-column:span 2;min-width:0}.project-card:nth-child(5n+1),.project-card:nth-child(5n+2){grid-column:span 3}.card-image{overflow:hidden;background:#e5e8e5}.card-image img{aspect-ratio:1.5;object-fit:cover;transition:transform .45s}.project-card:hover img{transform:scale(1.035)}.card-caption{display:flex;justify-content:space-between;gap:15px;margin-top:15px;align-items:baseline}.card-caption h3{font-size:18px;letter-spacing:-.3px;margin:0;line-height:1.4}.card-caption span{font-size:12px;color:#697573}.featured .project-card{grid-column:span 2}.page-intro h1{font-size:clamp(48px,6.5vw,94px);margin-top:30px}.page-intro>p{margin-top:28px;max-width:620px}.gallery{padding-top:10px}.gallery-tools{display:flex;justify-content:space-between;gap:20px;align-items:center;border-bottom:1px solid #d8dcda;padding-bottom:24px;margin-bottom:35px}.filters{display:flex;gap:10px;flex-wrap:wrap}.filters button{border:1px solid #cbd1ce;border-radius:30px;background:transparent;padding:10px 18px;color:#586363;font-size:14px}.filters button[aria-pressed=true]{background:#1b2425;color:white;border-color:#1b2425}#project-count{font-size:14px;white-space:nowrap}.project-detail{padding:40px 5% 0}.back-link{display:inline-block;font-size:14px;margin-bottom:45px}.detail-heading{display:flex;justify-content:space-between;gap:35px;align-items:end;margin-bottom:40px}.detail-heading h1{font-size:clamp(38px,5vw,74px);letter-spacing:-.045em;margin-top:18px;max-width:850px}.detail-heading>p{font-size:14px;min-width:180px}.project-images{display:grid;grid-template-columns:1fr 1fr;gap:36px 24px}.project-images figure:first-child,.project-images figure:last-child:nth-child(even){grid-column:1/-1}.project-images img{width:100%;height:auto}.project-images figcaption{font-size:12px;color:#697573;padding-top:12px}.next-project{display:block;border-top:1px solid #cbd1ce;padding:45px 0 60px;margin-top:65px}.next-project>span{font-size:12px;letter-spacing:1.5px}.next-project h2{margin-top:20px}.studio-page{padding-top:20px}.studio-page p+p{margin-top:24px}.contact-layout{padding:15px 5% 100px;display:grid;grid-template-columns:1fr 1.4fr;gap:60px}.contact-layout h2{margin:22px 0 10px}.contact-links>a{display:block;font-size:clamp(22px,3vw,40px);padding:25px 0;border-bottom:1px solid #ccd2ce;overflow-wrap:anywhere}.contact-links>a span{display:block;font-size:12px;letter-spacing:1.5px;color:#697573;margin-bottom:15px}.contact-links p{margin-top:30px;max-width:530px}.modal-open{overflow:hidden}dialog{position:fixed;inset:0 0 0 auto;margin:0;border:0;width:min(780px,90vw);max-width:100%;height:100dvh;max-height:100dvh;padding:0;background:#f7f8f6;color:#1b2425;overflow-y:auto}dialog::backdrop{background:#0b171ba6;backdrop-filter:blur(4px)}.close-panel{position:sticky;top:0;display:block;width:100%;padding:22px 35px;text-align:right;border:0;border-bottom:1px solid #d8dcda;background:#f7f8f6;z-index:2;font-size:14px}.service-detail{max-width:900px;margin:auto;padding:65px 6%}.service-detail h2{margin:22px 0 28px}.service-tag{font-size:24px;line-height:1.4;color:#1b2425;margin-bottom:24px}.detail-list{margin:35px 0}.detail-list section{padding:22px 0;border-top:1px solid #d8dcda}.detail-list h3{font-size:21px}.service-photo{margin-top:20px}.image-note{font-size:12px;margin-top:8px}.button-link{display:inline-block;background:#1b2425;color:#fff;padding:17px 23px;margin-top:30px;font-size:15px}.button-link:hover{background:#344344;color:#d7ef79}.video-wrap{aspect-ratio:16/9;background:#1b2425}.video-wrap iframe{border:0;width:100%;height:100%}@media(max-width:760px){.selection,.gallery{padding:42px 6%}.section-top{display:block}.section-top .text-link{margin-top:16px;max-width:190px}.project-grid{grid-template-columns:1fr;gap:30px}.project-card,.project-card:nth-child(5n+1),.project-card:nth-child(5n+2),.featured .project-card{grid-column:auto}.gallery-tools{display:block}.gallery-tools>p{margin-top:18px}.card-caption{flex-wrap:wrap;gap:5px 20px}.detail-heading{display:block}.detail-heading>p{margin-top:22px}.project-images{grid-template-columns:1fr}.project-images figure{grid-column:auto!important}.contact-layout{grid-template-columns:1fr;gap:25px}.home-feature{margin-bottom:45px}dialog{width:100vw}.service-detail{padding:40px 6%}.project-detail{padding:30px 6% 0}.studio-page{padding-top:0}}@media(prefers-reduced-motion:reduce){.card-image img{transition:none}}

.motion-department{padding:90px 5%;scroll-margin-top:24px}.motion-intro{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:start}.motion-intro h2{font-size:clamp(40px,5vw,76px);margin-top:25px;letter-spacing:-.045em}.motion-intro h2 span{color:#697573}.motion-intro h3{font-size:24px;margin-top:6px}.motion-intro p+p{margin-top:18px}.motion-capabilities{display:flex;flex-wrap:wrap;gap:12px;margin:36px 0 65px}.motion-capabilities span{font-size:14px;border:1px solid #bfc8c2;padding:10px 18px;border-radius:24px}.motion-examples>.eyebrow{padding-bottom:22px;border-bottom:1px solid #d8dcda;margin-bottom:28px}.motion-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:40px 28px}.motion-grid article:first-child{grid-column:1/-1}.motion-caption{display:flex;gap:18px;align-items:baseline;margin-top:18px}.motion-caption>span{font-size:12px;color:#697573}.motion-caption h3{font-size:20px;line-height:1.4;margin:0}.watch-link{display:inline-block;margin-top:12px;font-size:14px;text-decoration:underline;text-underline-offset:5px}.motion-department>.button-link{margin-top:45px}@media(max-width:760px){.motion-department{padding:50px 6%}.motion-intro,.motion-grid{grid-template-columns:1fr;gap:30px}.motion-grid article:first-child{grid-column:auto}.motion-capabilities{margin-bottom:40px}}

/* Portfolio and service additions retain the existing card design. */
.project-description{font-size:16px;line-height:1.65;max-width:660px;margin-top:22px;color:#697573;letter-spacing:normal}.service-projects{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 20px;margin-top:32px}.service-projects .project-card{grid-column:auto}.service-projects .card-caption{display:block}.service-projects .card-caption span{display:block;margin-top:6px;font-size:14px}.video-examples{grid-template-columns:1fr}.video-examples h3{font-size:18px;margin:16px 0 0}.carousel{position:relative}.carousel-controls{display:flex;justify-content:flex-end;gap:10px;margin-bottom:22px}.carousel-controls button{width:48px;height:48px;border:1px solid #9ba5a0;border-radius:50%;background:transparent;color:#1b2425;font-size:24px}.carousel-controls button:hover:not(:disabled){background:#1b2425;color:#d7ef79}.carousel-controls button:disabled{opacity:.3;cursor:default}.carousel-track{display:flex;gap:28px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:thin;scrollbar-color:#9ba5a0 transparent;padding:8px 4px 20px;margin:0 -4px}.carousel-track .project-card{flex:0 0 calc((100% - 56px)/3);scroll-snap-align:start}.animation-cover{aspect-ratio:1.5;display:flex;flex-direction:column;justify-content:center;gap:18px;align-items:center;background:#1b2425;color:#d7ef79;text-align:center;font-size:clamp(22px,3vw,40px);line-height:1.2}.animation-cover>span:first-child{font-size:24px}.carousel-track:focus-visible{outline:2px solid #698700;outline-offset:5px}@media(max-width:1000px){.carousel-track .project-card{flex-basis:calc((100% - 28px)/2)}}@media(max-width:760px){.carousel-track{gap:20px}.carousel-track .project-card{flex-basis:86%}.service-projects{grid-template-columns:1fr}.project-description{margin-top:18px}.carousel-controls{justify-content:flex-start}}

.showreel-block{margin-top:75px;padding-top:28px;border-top:1px solid #d8dcda}.showreel-block>.eyebrow{margin-bottom:28px}.showreel-block article{max-width:1050px}.compact-contact{margin-top:28px}.compact-contact>a{font-size:clamp(18px,2vw,27px)}.contact-form{display:grid;gap:25px}.form-field{display:grid;gap:9px}.form-field label{font-size:13px;letter-spacing:1.2px;text-transform:uppercase;color:#586363}.form-field input,.form-field textarea{width:100%;border:0;border-bottom:1px solid #9ba5a0;background:transparent;color:#1b2425;font:inherit;font-size:17px;padding:12px 0;border-radius:0}.form-field textarea{resize:vertical;min-height:150px}.form-field input:focus,.form-field textarea:focus{outline:0;border-bottom-color:#1b2425;box-shadow:0 1px 0 #1b2425}.character-count{font-size:12px;color:#697573;text-align:right}.hp-field{position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important}.form-submit{border:0;justify-self:start;margin-top:0}.form-submit:disabled{opacity:.55;cursor:wait}.form-status{min-height:1.65em;font-size:14px}.form-status.success{color:#466000}.form-status.error{color:#9d2f26}.direct-email-note{margin-top:26px;font-size:14px}.direct-email-note a{text-decoration:underline;text-underline-offset:4px}@media(max-width:760px){.showreel-block{margin-top:50px}.contact-form{margin-top:15px}}
.project-images img{cursor:zoom-in}.project-images img:focus-visible{outline:3px solid #7f9a24;outline-offset:4px}.project-images:has(figure:nth-child(2):last-child) figure{grid-column:auto}.project-lightbox{width:100vw;height:100dvh;max-width:none;max-height:none;margin:0;padding:clamp(54px,7vw,86px) 18px;border:0;background:rgba(247,248,246,.52);color:#1b2425;overflow:hidden;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}.project-lightbox[open]{display:grid;place-items:center}.project-lightbox::backdrop{background:rgba(247,248,246,.42);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}.lightbox-stage{display:flex;align-items:center;justify-content:center;gap:14px;max-width:calc(100vw - 36px);max-height:calc(100dvh - 100px)}.project-lightbox figure{width:fit-content;max-width:min(84vw,1320px);height:auto;max-height:82vh;margin:0;display:grid;place-items:center}.project-lightbox img{display:block;max-width:min(84vw,1320px);max-height:78vh;width:auto;height:auto;object-fit:contain;box-shadow:0 18px 60px rgba(27,36,37,.2)}.project-lightbox figcaption{font-size:13px;letter-spacing:1px;margin-top:11px;color:#586363}.lightbox-close,.lightbox-arrow{z-index:2;border:1px solid rgba(27,36,37,.15);background:rgba(255,255,255,.8);color:#1b2425;display:grid;place-items:center;cursor:pointer;box-shadow:0 6px 24px rgba(27,36,37,.1)}.lightbox-close{position:fixed;top:18px;right:20px;width:42px;height:42px;border-radius:50%;font-size:30px}.lightbox-arrow{position:static;flex:0 0 44px;width:44px;height:56px;font-size:25px}.lightbox-close:hover,.lightbox-arrow:hover,.lightbox-close:focus-visible,.lightbox-arrow:focus-visible{background:#1b2425;color:#d7ef79;outline:0}@media(max-width:760px){.project-lightbox{padding:58px 8px 18px}.lightbox-stage{gap:5px;max-width:100%}.project-lightbox figure,.project-lightbox img{max-width:calc(100vw - 104px)}.project-lightbox img{max-height:74vh}.lightbox-arrow{flex-basis:42px;width:42px;height:48px}.lightbox-close{top:10px;right:10px}}
.projects-animation{margin-top:8px}.projects-animation .motion-grid{width:100%}.project-card{cursor:pointer}.project-card:focus-visible{outline:3px solid #7f9a24;outline-offset:6px}
.motion-caption{align-items:flex-start}.motion-caption>span{padding-top:5px}.motion-caption>div{min-width:0}.motion-caption p{font-size:15px;line-height:1.55;margin-top:7px;max-width:620px}
.project-lightbox .lightbox-arrow{position:fixed;top:50%;transform:translateY(-50%)}.project-lightbox .lightbox-prev{left:max(18px,calc(50vw - 700px))}.project-lightbox .lightbox-next{right:max(18px,calc(50vw - 700px))}@media(max-width:760px){.project-lightbox .lightbox-prev{left:8px}.project-lightbox .lightbox-next{right:8px}}
.contact-email-static{font-size:clamp(18px,2vw,27px);padding:25px 0;border-bottom:1px solid #ccd2ce;overflow-wrap:anywhere}.contact-email-static span{display:block;font-size:12px;letter-spacing:1.5px;color:#697573;margin-bottom:15px}.contact-email-static strong{font-weight:400}
