@font-face{font-family:"Cormorant Garamond";src:url("../fonts/cormorant-garamond-latin.woff2") format("woff2");font-style:normal;font-weight:300 500;font-display:swap}
@font-face{font-family:"DM Sans";src:url("../fonts/dm-sans-latin.woff2") format("woff2");font-style:normal;font-weight:400 600;font-display:swap}
:root{color-scheme:light;--paper:#fff;--ink:#262523;--muted:#77736f;--line:#d9d6d2;--accent:#9a5d49;--display:"Cormorant Garamond",Georgia,serif;--sans:"DM Sans",sans-serif;--gutter:clamp(24px,5vw,76px)}
*{box-sizing:border-box}html,body{width:100%;min-height:100%;margin:0;overflow-x:clip}html{scroll-behavior:smooth}body{color:var(--ink);background:var(--paper);font-family:var(--sans);-webkit-font-smoothing:antialiased}body.menu-open,body.modal-open{overflow:hidden}a{color:inherit;text-decoration:none}button{color:inherit;font:inherit}img{display:block;max-width:100%}[hidden]{display:none!important}
.site-header{position:fixed;z-index:30;inset:0 0 auto;height:84px;display:flex;align-items:center;justify-content:space-between;padding:0 var(--gutter);color:white;mix-blend-mode:difference}.brand{position:absolute;left:50%;transform:translateX(-50%);white-space:nowrap}.brand img{width:145px;height:25px}.menu-toggle{display:flex;align-items:center;gap:12px;border:0;padding:12px 0 12px 12px;background:transparent;cursor:pointer;font-size:10px;letter-spacing:.12em;text-transform:uppercase}.menu-icon{display:grid;width:30px;gap:6px}.menu-icon i{display:block;height:1px;background:currentColor;transition:transform .25s}.menu-toggle[aria-expanded="true"] .menu-icon i:first-child{transform:translateY(3.5px) rotate(45deg)}.menu-toggle[aria-expanded="true"] .menu-icon i:last-child{transform:translateY(-3.5px) rotate(-45deg)}
.language-switch{position:absolute;top:50%;right:var(--gutter);min-width:34px;border:1px solid currentColor;border-radius:999px;padding:6px 8px;background:transparent;color:inherit;cursor:pointer;font-size:9px;letter-spacing:.08em;line-height:1.2;transform:translateY(-50%)}.site-header .language-switch{top:66px;right:var(--gutter);left:auto;transform:none}.site-header .language-switch:hover{background:white;color:#262523}
.atelier-header .language-switch{top:73px;right:40px;transform:none}
.legal-page .language-switch{top:68px;right:22px;transform:none}
.admin-header .language-switch{top:100%;right:5vw;transform:translateY(8px)}
.menu-panel{position:fixed;z-index:29;inset:0;display:grid;place-items:center;background:var(--paper);opacity:0;visibility:hidden;transition:opacity .35s,visibility .35s}.menu-panel.is-open{opacity:1;visibility:visible}.menu-panel nav{display:grid;gap:clamp(5px,1.5vh,18px);text-align:center}.menu-panel nav a{font:300 clamp(46px,7vw,86px)/1.05 var(--display);transition:color .2s}.menu-panel nav a:hover{color:var(--accent)}
.deck{display:flex;width:500vw;height:100svh;overflow:visible;transform:translate3d(0,0,0);transition:transform .85s cubic-bezier(.77,0,.18,1);will-change:transform}.panel{position:relative;flex:0 0 100vw;width:100vw;max-width:100vw;height:100svh;min-height:620px;overflow:hidden;padding:112px var(--gutter) 62px}.intro-panel{display:grid;place-items:center;padding:0;background:#fff}.brand-mark{width:min(31vw,57vh,450px);max-width:calc(100vw - 48px);max-height:57vh}.scroll-cue{position:absolute;bottom:5.2vh;left:50%;display:flex;align-items:center;gap:10px;transform:translateX(-50%);font-size:11px;letter-spacing:.2em;text-transform:uppercase}.scroll-cue span{display:inline-block;border-bottom:1px solid currentColor;padding:0 0 4px;transition:transform .2s}.scroll-cue:hover span{transform:translateY(4px)}
.agency-panel{position:relative;display:block;padding:0;background:#fff}.agency-panel:before{position:absolute;z-index:0;inset:0;content:"";pointer-events:none;background:url("../images/logo-background-r.png") right center/auto 100% no-repeat;opacity:.55;transform:translateX(22px);transition:opacity .7s ease,transform .85s cubic-bezier(.77,0,.18,1)}.agency-panel.is-active:before{opacity:1;transform:translateX(0)}.agency-image{position:absolute;z-index:1;inset:0 auto 0 0;width:43.7%;height:100%;margin:0;overflow:hidden;background:#eeece7;opacity:.72;transform:scale(1.035);transition:opacity .7s ease,transform .9s cubic-bezier(.2,.65,.25,1)}.agency-panel.is-active .agency-image{opacity:1;transform:scale(1)}.agency-image img{width:100%;height:100%;object-fit:cover;object-position:center 47%}.agency-copy{position:absolute;z-index:2;inset:0 5.3% 0 52.7%;max-width:none;pointer-events:none}.agency-copy h1,.agency-copy p,.agency-copy .text-link{opacity:0;transform:translateY(22px);transition:opacity .6s ease,transform .7s cubic-bezier(.2,.65,.25,1)}.agency-panel.is-active .agency-copy h1,.agency-panel.is-active .agency-copy p,.agency-panel.is-active .agency-copy .text-link{opacity:1;transform:translateY(0);pointer-events:auto}.agency-copy h1{position:absolute;top:35.5%;left:0;margin:0;font:300 clamp(58px,6.34vw,92px)/1.2 var(--display);transition-delay:.08s}.section-label{display:flex;align-items:center;gap:11px;color:var(--accent);font-size:10px;letter-spacing:.18em;text-transform:uppercase}.section-label:before{width:26px;height:1px;background:currentColor;content:""}.projects-heading h2,.press-copy h2,.contact-intro h2{margin:20px 0 25px;font:300 clamp(52px,6vw,82px)/.95 var(--display)}.agency-copy p{position:absolute;top:50%;left:0;max-width:542px;margin:0;color:#6e6d6d;font:400 clamp(18px,1.46vw,21px)/1.53 var(--display);transition-delay:.17s}.text-link{display:inline-flex;align-items:center;gap:18px;margin-top:21px;border-bottom:1px solid currentColor;padding-bottom:8px;font-size:10px;letter-spacing:.13em;text-transform:uppercase}.agency-copy .text-link{position:absolute;top:auto;bottom:3.55vh;left:0;height:38px;margin:0;border:0;padding:0;color:#4f4945;font:400 clamp(15px,1.17vw,17px)/1 var(--display);letter-spacing:0;transition-delay:.26s}.text-link span{color:var(--accent);font-size:17px;transition:transform .2s}.text-link:hover span{transform:translateX(4px)}
.projects-panel{padding-top:clamp(90px,12vh,128px);padding-bottom:48px;background:#f1f1ee}.projects-heading{display:flex;align-items:end;justify-content:space-between;gap:50px;margin-bottom:24px}.projects-heading h2{margin-bottom:0}.projects-heading>p{max-width:390px;margin:0 0 5px;color:var(--muted);font-size:12px;line-height:1.7}.filters{display:flex;gap:8px;margin-bottom:23px}.filter{border:1px solid #c7c4bf;border-radius:999px;padding:8px 14px;background:transparent;cursor:pointer;font-size:10px;transition:background .2s,color .2s}.filter:hover,.filter[aria-pressed="true"]{border-color:var(--ink);background:var(--ink);color:white}.project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:start;gap:18px}.project-card{min-width:0;border:0;padding:0;background:transparent;text-align:left;cursor:pointer}.project-image{position:relative;display:block;height:min(39vh,365px);overflow:hidden;background:#d8d6d1}.project-image img{width:100%;height:100%;object-fit:cover;transition:transform .55s}.project-card:hover .project-image img{transform:scale(1.04)}.project-number{position:absolute;right:12px;bottom:10px;color:white;font-size:10px;letter-spacing:.12em;text-shadow:0 1px 5px #333}.project-meta{display:flex;justify-content:space-between;gap:12px;padding-top:12px}.project-meta>span{display:grid;gap:5px}.project-meta strong{font:400 25px/1 var(--display)}.project-meta span span{color:var(--muted);font-size:9px;line-height:1.5}.project-meta em{padding-top:3px;color:var(--accent);font-size:8px;font-style:normal;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap}.empty-state{grid-column:1/-1;margin:32px 0;color:var(--muted);font:28px var(--display)}
.press-panel{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,.8fr);align-items:center;gap:clamp(60px,10vw,150px)}.press-image{height:min(68vh,650px);margin:0;overflow:hidden;background:#eceae6}.press-image img{width:100%;height:100%;object-fit:cover}.press-copy h2{margin-bottom:32px}.press-name{margin:0 0 8px;font:400 clamp(34px,4vw,54px)/1 var(--display)}.press-author{margin:0;color:var(--muted);font-size:12px}
.contact-panel{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:80px;background:#292a27;color:#f5f4f1;padding-top:105px;padding-bottom:100px}.contact-intro h2{margin-top:22px}.contact-intro>p{max-width:365px;color:#c1bfb9;font:300 23px/1.45 var(--display)}.contact-details{display:grid;gap:20px;align-content:center;padding-top:20px}.contact-details p{margin:0;color:#cbc9c3;font-size:12px;line-height:1.8}.contact-details a{color:#fff;transition:color .2s}.contact-details a:hover{color:#d6a18c}.contact-details .contact-name{color:white;font:400 31px/1 var(--display)}.contact-details .social-label{color:#a9a7a1;font-size:10px;letter-spacing:.12em;text-transform:uppercase}.site-footer{position:absolute;right:var(--gutter);bottom:25px;left:var(--gutter);display:flex;justify-content:space-between;gap:20px;border-top:1px solid #555650;padding-top:12px;color:#b8b7b0;font-size:9px}
.modal{position:fixed;z-index:40;inset:0;display:grid;place-items:center;padding:24px;background:rgb(20 20 19 / 72%);opacity:0;visibility:hidden;transition:opacity .25s,visibility .25s}.modal.is-open{opacity:1;visibility:visible}.modal-content{position:relative;display:grid;grid-template-columns:1.1fr .9fr;width:min(980px,100%);max-height:90svh;overflow:auto;background:var(--paper)}.modal-image{width:100%;height:100%;min-height:360px;object-fit:cover}.modal-copy{align-self:center;padding:clamp(28px,5vw,60px)}.modal-copy h2{margin:16px 0;font:300 clamp(42px,5vw,68px)/1 var(--display)}.modal-copy p{color:var(--muted);font-size:13px;line-height:1.7}.modal-close{position:absolute;z-index:2;top:14px;right:14px;width:40px;height:40px;border:1px solid var(--line);border-radius:50%;background:white;cursor:pointer;font-size:20px}
@media(max-width:760px){html,body{height:auto;min-height:100%;overflow-x:clip}body{overflow-y:auto}.site-header{height:68px}.brand{font-size:22px}.deck{display:block;width:100%;height:auto;transform:none!important;transition:none}.panel{width:100%;max-width:100%;height:auto;min-height:0;overflow:visible;padding:86px 24px 72px}.intro-panel{height:100svh;min-height:560px;padding:0}.brand-mark{width:min(68vw,350px);max-height:48vh}.scroll-cue{bottom:32px}.agency-panel{min-height:100svh;padding:84px 24px 60px;background-size:auto 50%;background-position:right bottom}.agency-image{position:relative;width:100%;height:auto;aspect-ratio:2/3;max-height:520px}.agency-copy{position:relative;top:auto;left:auto;right:auto;max-width:none;margin-top:32px}.agency-copy h1{margin:0 0 18px;font-size:clamp(48px,13vw,68px)}.agency-copy p{font-size:19px;line-height:1.5}.agency-copy .text-link{position:static;margin-top:26px;font-size:16px}.projects-heading h2,.press-copy h2,.contact-intro h2{font-size:clamp(48px,13vw,68px)}.projects-panel{padding-top:78px}.projects-heading{display:block;margin-bottom:23px}.projects-heading>p{margin-top:18px}.filters{flex-wrap:wrap;gap:6px}.filter{padding:9px 12px}.project-grid{grid-template-columns:1fr;gap:25px}.project-image{height:auto;aspect-ratio:1.08/1}.project-meta strong{font-size:25px}.press-panel{grid-template-columns:1fr;gap:32px}.press-image{height:105vw;max-height:530px;min-height:300px}.contact-panel{min-height:100svh;grid-template-columns:1fr;align-content:center;gap:24px;padding-bottom:100px}.contact-details{gap:16px}.site-footer{bottom:22px;flex-direction:column;gap:7px;font-size:8px}.modal{padding:14px}.modal-content{grid-template-columns:1fr;max-height:92svh}.modal-image{min-height:0;aspect-ratio:1.2/1}.modal-copy{padding:26px}}
@media(max-width:760px){.agency-copy h1,.agency-copy p{position:static}.agency-copy p{margin:0}}
.site-header .menu-toggle{margin-left:auto}
.site-header{color:var(--ink);mix-blend-mode:normal}body.header-on-dark .site-header{color:#fff}body.menu-open .site-header{color:var(--ink)}
.intro-panel .brand-mark,.intro-panel .scroll-cue,.projects-panel .projects-heading,.projects-panel .filters,.projects-panel .project-card,.press-panel .press-image,.press-panel .press-copy,.contact-panel .contact-intro,.contact-panel .contact-details,.contact-panel .site-footer{opacity:0;transform:translateY(24px);transition:opacity .55s ease,transform .7s cubic-bezier(.2,.65,.25,1)}
.intro-panel .brand-mark{transform:scale(.96)}
.panel.is-active .brand-mark,.panel.is-active .scroll-cue,.panel.is-active .projects-heading,.panel.is-active .filters,.panel.is-active .project-card,.panel.is-active .press-image,.panel.is-active .press-copy,.panel.is-active .contact-intro,.panel.is-active .contact-details,.panel.is-active .site-footer{opacity:1;transform:translateY(0)}
.panel.is-active .brand-mark{transform:scale(1)}
.intro-panel.is-active .scroll-cue{transition-delay:.15s}
.projects-panel.is-active .projects-heading{transition-delay:.04s}
.projects-panel.is-active .filters{transition-delay:.12s}
.projects-panel.is-active .project-card:nth-child(1){transition-delay:.18s}
.projects-panel.is-active .project-card:nth-child(2){transition-delay:.26s}
.projects-panel.is-active .project-card:nth-child(3){transition-delay:.34s}
.press-panel.is-active .press-copy{transition-delay:.12s}
.contact-panel.is-active .contact-details{transition-delay:.1s}
.contact-panel.is-active .site-footer{transition-delay:.2s}
body.page-entering{opacity:0;transform:translateY(8px);transition:opacity .42s ease,transform .42s ease}body.page-leaving{opacity:0;transform:translateY(8px);transition:opacity .22s ease,transform .22s ease;pointer-events:none}
.site-footer nav{display:flex;flex-wrap:wrap;gap:16px}.site-footer a{color:inherit;transition:color .2s}.site-footer a:hover{color:#fff}
@media(min-width:761px){.agency-panel:before{background-image:url("../images/logo-background-l.png");background-position:100% 50%;background-size:contain;background-repeat:no-repeat}.agency-copy h1{transform:translateX(300px)}.agency-panel.is-active .agency-copy h1{transform:translateX(0)}.agency-copy p{transform:translateY(300px)}.agency-panel.is-active .agency-copy p{transform:translateY(0)}.agency-copy .text-link{display:block;width:243.15px;height:38.33px;border:0;padding:0;color:#4f4945;font:400 16.7857px/normal Arial,sans-serif;letter-spacing:3.02143px;text-transform:uppercase}.agency-copy .trait{position:absolute;top:27px;left:0;width:100%;height:1px;background:#4f4945;opacity:0;transform:scaleX(.02);transform-origin:left;transition:opacity .4s ease .26s,transform .5s ease .26s}.agency-panel.is-active .agency-copy .trait{opacity:1;transform:scaleX(1)}}
@media(max-width:760px){.agency-panel:before{background-image:url("../images/logo-background-l.png")}.agency-copy .text-link{position:relative;display:block;width:243px;height:38px;border:0;padding:0;color:#4f4945;font:400 15px/1 Arial,sans-serif;letter-spacing:2px;text-transform:uppercase}.agency-copy .trait{position:absolute;top:27px;left:0;width:100%;height:1px;background:#4f4945;opacity:1}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation:none!important}}
.project-card{display:block}.projects-explore{display:flex;width:max-content;margin:19px 0 0 auto}
.projects-panel{isolation:isolate;padding:clamp(109px,10vh,145px) 4.2vw 50px;background:#fff}
.projects-panel::before{position:absolute;z-index:-1;inset:0;content:"";pointer-events:none;background:url("../images/logo-background-l.png") left center/auto 100% no-repeat;opacity:.28}
.projects-panel .projects-heading{display:block;margin:0 0 clamp(95px,9.5vh,132px)}
.projects-panel .projects-heading h2{margin:0;font:300 clamp(76px,5.6vw,112px)/.98 var(--display)}
.projects-showcase{position:relative;z-index:1;display:grid;grid-template-columns:minmax(250px,.68fr) minmax(0,1.8fr);gap:2.6vw;align-items:start}
.projects-intro{max-width:440px;margin:0;color:#6e6d6d;font:400 clamp(18px,1.32vw,24px)/1.45 var(--display);opacity:0;transform:translateY(-19px);transition:opacity .8s ease .18s,transform 1s cubic-bezier(.2,.65,.25,1) .18s}
.projects-panel.is-active .projects-intro{opacity:1;transform:translateY(-39px)}
.projects-panel .project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;align-items:start;transform:translateY(-10px)}
.projects-panel .project-card{min-width:0;border-right:1px solid #999;padding:0 clamp(18px,2.6vw,52px);color:var(--ink);text-decoration:none;transition:opacity .8s ease,transform .9s cubic-bezier(.2,.65,.25,1),border-color .4s ease}
.projects-panel .project-card:first-child{border-left:1px solid #999}
.projects-panel .project-card:nth-child(1){transition-delay:.12s}
.projects-panel .project-card:nth-child(2){transition-delay:.24s}
.projects-panel .project-card:nth-child(3){transition-delay:.36s}
.project-title{display:block;min-height:clamp(84px,5.5vw,110px);font:400 clamp(24px,2.2vw,40px)/1.1 var(--display);white-space:nowrap;transition:letter-spacing .5s ease,color .4s ease}
.projects-panel .project-description{display:flex;min-height:clamp(90px,5vw,100px);align-items:flex-start;justify-content:center;color:#77736f;font:400 clamp(14px,1.05vw,19px)/1.1 var(--display);text-align:center;opacity:0;filter:blur(2px);transform:translateY(clamp(26px,2vw,36px));transition:opacity .65s ease .15s,filter .8s ease .15s}
.projects-panel.is-active .project-description{opacity:1;filter:blur(0)}
.projects-panel .project-image{position:relative;display:block;width:100%;height:auto;aspect-ratio:1/1;overflow:hidden;background:#d8d6d1}
.projects-panel .project-image img{width:100%;height:100%;object-fit:cover;filter:grayscale(1);transition:filter .45s ease,transform .55s}
.projects-panel .project-card:hover .project-title,.projects-panel .project-card:focus-visible .project-title{color:var(--accent);letter-spacing:.035em}
.projects-panel .project-card:hover .project-image img,.projects-panel .project-card:focus-visible .project-image img{filter:grayscale(0);transform:scale(1.045)}
.projects-panel .project-number{position:absolute;right:-4px;bottom:-.2em;color:white;font:300 clamp(100px,10.5vw,176px)/.85 var(--display);letter-spacing:-.06em;text-shadow:none}
.projects-explore{position:absolute;z-index:1;bottom:4.2vh;left:50%;display:block;width:max-content;margin:0;border-bottom:1px solid #494744;padding:0 0 9px;color:#494744;font:400 clamp(12px,1.2vw,17px)/1.2 var(--sans);letter-spacing:.2em;text-align:center;text-transform:uppercase;transform:translateX(-50%);transition:letter-spacing .25s ease}
.projects-explore:hover{letter-spacing:.25em}
.projects-panel .projects-explore{opacity:0;transition:opacity .55s ease .4s,letter-spacing .25s ease}
.projects-panel.is-active .projects-explore{opacity:1}
@media(max-width:1100px) and (min-width:761px){.projects-showcase{grid-template-columns:minmax(210px,.58fr) minmax(0,1.7fr);gap:2vw}.projects-panel .project-card{padding-right:clamp(12px,1.7vw,22px);padding-left:clamp(12px,1.7vw,22px)}.project-title{font-size:clamp(20px,2.1vw,28px)}.projects-panel .project-description{font-size:clamp(13px,1.25vw,16px)}}
@media(max-width:760px){.projects-panel{padding:98px 24px 70px;background:#fff}.projects-panel::before{background-size:auto 60%;background-position:left bottom}.projects-panel .projects-heading{margin-bottom:28px}.projects-panel .projects-heading h2{font-size:clamp(58px,14vw,82px)}.projects-showcase{grid-template-columns:1fr;gap:28px}.projects-intro{max-width:560px;font-size:20px;transform:translateY(0)}.projects-panel.is-active .projects-intro{transform:translateY(0)}.projects-panel .project-grid{grid-template-columns:1fr;gap:32px;transform:none}.projects-panel .project-card,.projects-panel .project-card:first-child{border:0;border-top:1px solid #aaa;padding:18px 0 0}.project-title{min-height:50px;font-size:30px}.projects-panel .project-description{min-height:90px;font-size:17px;transform:none}.projects-panel .project-image{width:min(100%,520px);margin:0 auto;aspect-ratio:1.08/1}.projects-panel .project-number{font-size:clamp(120px,28vw,170px)}.projects-panel .projects-explore{position:relative;bottom:auto;left:auto;margin:44px auto 0;padding-bottom:8px;font-size:12px}.projects-panel .project-card{opacity:1;transform:none}}