@font-face{font-family:"Inter Tight";src:url('assets/InterTight-Regular.woff2') format('woff2');font-weight:400;font-display:swap}@font-face{font-family:"Inter Tight";src:url('assets/InterTight-Medium.woff2') format('woff2');font-weight:500 800;font-display:swap}
:root{--ink:var(--azab-soft-black);--paper:var(--azab-warm-white);--lime:var(--azab-chartreuse);--lilac:var(--azab-lilac);--muted:#a9ada2;--edge:clamp(24px,4.4vw,80px);--line:#353930}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--ink);color:var(--paper);font-family:var(--azab-font-sans);font-size:18px;line-height:1.5;-webkit-font-smoothing:antialiased}body:has(dialog[open]){overflow:hidden}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer;color:inherit}button,a,input,select,textarea,summary{-webkit-tap-highlight-color:transparent}button{border:0;background:none}button:disabled{cursor:default}h1,h2,h3,h4,p,figure{margin:0}h1,h2,h3,h4{font-weight:400;line-height:1.04}h1,h2{letter-spacing:-.015em}img,video{display:block;max-width:100%}a svg,button svg{width:20px;height:20px;flex:none}a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid var(--lime);outline-offset:6px}.studio a:focus-visible,.contact :focus-visible{outline-color:var(--ink)}::selection{color:var(--ink);background:var(--lime)}[hidden]{display:none!important}.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.skip{position:fixed;z-index:100;top:12px;left:12px;padding:14px;background:var(--lime);color:var(--ink);transform:translateY(-200%)}.skip:focus{transform:none}.header{height:100px;padding:0 var(--edge);display:flex;justify-content:space-between;align-items:center;background:var(--ink);position:relative;z-index:5}.brand{padding:10px 0}.brand img{width:112px;height:auto}.header nav{display:flex;align-items:center;gap:40px;font-size:15px}.header nav>a{position:relative;padding:10px 0}.header nav>a:not(.nav-contact):after{content:'';position:absolute;bottom:4px;left:0;right:0;height:1px;background:var(--lime);transform:scaleX(0);transform-origin:left;transition:transform .2s}.header nav>a:hover:after,.header nav>a[aria-current]:after{transform:scaleX(1)}.header .nav-contact{display:flex;align-items:center;gap:24px;border-bottom:1px solid #65685f}.nav-contact svg{width:17px}.hero{padding:24px var(--edge) 36px}.hero-top,.hero-bottom{display:flex;align-items:center;justify-content:space-between;font-size:14px}.hero-top{color:var(--muted)}.location{display:flex;gap:8px;align-items:center}.location i{width:6px;height:6px;background:var(--lime);border-radius:50%}.hero-composition{display:grid;grid-template-columns:1.13fr 1fr;align-items:center;gap:24px;min-height:470px}.hero h1{font-size:clamp(76px,9.8vw,170px);line-height:.93;letter-spacing:-.015em;padding:48px 0 60px}.motion-stage{min-width:0;position:relative;margin-top:32px}.motion-stage video{width:100%;aspect-ratio:16/9;object-fit:contain;background:var(--ink)}.motion-under{display:flex;justify-content:space-between;align-items:center;gap:12px;font-size:12px;color:var(--muted);padding:0 5%}.motion-under button{display:flex;align-items:center;gap:12px;padding:8px 0;color:var(--paper);white-space:nowrap}.motion-under svg{width:13px;height:13px}.hero-bottom p{line-height:1.45}.down-link{display:flex;align-items:center;gap:56px}.down-link span{display:grid;place-items:center;width:38px;height:38px;border:1px solid #606457;border-radius:50%;font-size:23px}.featured{padding:0 var(--edge);scroll-margin-top:28px}.featured-image{width:100%;height:auto;aspect-ratio:1.95;object-fit:cover}.feature-meta{display:grid;grid-template-columns:1.5fr 1fr 50px;align-items:center;padding:24px 0 8px;gap:24px}.small-label{font-size:12px;line-height:1.4;display:block;margin-bottom:18px;letter-spacing:.02em}.feature-meta .small-label{color:var(--lime);margin-bottom:8px}.feature-meta h2{font-size:28px;letter-spacing:-.015em}.feature-meta p{font-size:14px;color:var(--muted)}.feature-arrow{justify-self:end}.feature-arrow svg{width:30px;height:30px}.work-section{padding:150px var(--edge) 120px}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:40px;margin-bottom:64px}.section-heading h2{font-size:clamp(42px,5.2vw,80px);line-height:1.02}.section-heading>p{font-size:16px;color:var(--muted);padding-bottom:8px;max-width:330px}.selected-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:40px;row-gap:100px;align-items:start}.project-card{min-width:0}.selected-grid .project-card:nth-child(4n+1){grid-column:1/8}.selected-grid .project-card:nth-child(4n+2){grid-column:9/13;margin-top:130px}.selected-grid .project-card:nth-child(4n+3){grid-column:1/5;margin-top:20px}.selected-grid .project-card:nth-child(4n+4){grid-column:6/13;margin-top:65px}.project-picture{position:relative;overflow:hidden;background:#20241d}.project-picture img{width:100%;height:auto;aspect-ratio:1.63;object-fit:cover;transition:transform .65s cubic-bezier(.2,.7,.3,1)}.project-card:nth-child(4n+2) .project-picture img,.project-card:nth-child(4n+3) .project-picture img{aspect-ratio:1.2;object-fit:contain;background:#161a14}.project-open{position:absolute;right:16px;bottom:16px;width:44px;height:44px;display:grid;place-items:center;background:var(--paper);color:var(--ink);border-radius:50%;opacity:0;transform:translateY(8px);transition:.2s}.project-link:hover .project-open,.project-link:focus-visible .project-open{opacity:1;transform:none}.project-link:hover .project-picture img{transform:scale(1.025)}.project-meta{display:flex;justify-content:space-between;align-items:baseline;gap:18px;padding-top:18px}.project-meta h3{font-size:21px;letter-spacing:-.015em;line-height:1.2}.project-meta>span{font-size:12px;color:var(--muted)}.archive-link{margin-top:100px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:32px 0;display:flex;justify-content:space-between;align-items:center;font-size:clamp(26px,3vw,46px);letter-spacing:-.015em}.archive-link sup{color:var(--lilac);font-size:14px;vertical-align:top;margin-left:10px;letter-spacing:0}.archive-link svg{width:36px;height:36px;transition:transform .2s}.archive-link:hover svg{transform:translate(5px,-5px)}.studio{background:var(--paper);color:var(--ink);padding:112px var(--edge) 96px;scroll-margin-top:0}.studio-intro{display:grid;grid-template-columns:1fr 1fr;gap:9vw}.studio h2{font-size:clamp(58px,7.1vw,108px);line-height:.97}.studio .small-label{margin-bottom:40px}.studio-spotlight{width:190px;height:250px;margin:40px 0 0 20%}.studio-copy{padding-top:55px}.studio-copy>.statement{font-size:clamp(26px,2.6vw,40px);line-height:1.2;letter-spacing:-.015em;margin-bottom:38px}.studio-copy>p:not(.statement){font-size:18px;line-height:1.6;max-width:520px;margin-bottom:22px;color:#484c42}.founder{display:flex;gap:24px;align-items:center;margin-top:56px;padding-top:32px;border-top:1px solid #caccc1}.founder .founder-image{width:116px;height:138px;object-fit:cover;object-position:center 24%;filter:grayscale(1)}.founder h3{font-size:23px;letter-spacing:-.015em}.founder p{font-size:13px;color:#53584b;margin:8px 0 22px}.founder a{display:flex;gap:18px;align-items:center;font-size:13px}.founder svg{width:14px;height:14px}.practice{padding:120px var(--edge) 100px}.practice .section-heading{margin-bottom:70px}.services{border-top:1px solid var(--line)}.services details{border-bottom:1px solid var(--line);padding:28px 0}.services summary{display:flex;align-items:center;justify-content:space-between;gap:32px;list-style:none;cursor:pointer}.services summary::-webkit-details-marker{display:none}.services h3{font-size:clamp(24px,3vw,44px);letter-spacing:-.015em;flex:1}.service-note{font-size:13px;color:var(--lilac);width:30%}.expand{font-size:28px;font-weight:400;width:28px;text-align:center;line-height:1}.services details[open] .expand{transform:rotate(45deg)}.services details>p{font-size:17px;line-height:1.6;color:var(--muted);max-width:600px;margin:26px 10% 4px 0}.process{display:grid;grid-template-columns:1fr 2fr;gap:60px;margin-top:100px}.process>h3{font-size:26px;letter-spacing:-.015em;line-height:1.2}.process ol{list-style:none;display:grid;grid-template-columns:repeat(3,1fr);padding:0;margin:0;gap:32px}.process li>span{color:var(--lime);font-size:13px}.process h4{font-size:21px;letter-spacing:-.02em;margin:30px 0 12px}.process p{font-size:14px;line-height:1.6;color:var(--muted)}.scope{font-size:12px;color:var(--muted);border-top:1px solid var(--line);margin-top:64px;padding-top:22px}.contact{position:relative;overflow:hidden;background:var(--lime);color:var(--ink);padding:40px var(--edge) 92px;scroll-margin-top:0}.contact-top{display:flex;justify-content:space-between;font-size:14px}.invitation{display:flex;justify-content:space-between;align-items:center;gap:40px;margin:72px 0 60px}.invitation h2{font-size:clamp(54px,8vw,128px);line-height:.98;letter-spacing:-.015em}.round-link{width:120px;height:120px;border-radius:50%;border:1px solid var(--ink);display:grid;place-items:center;flex:none;transition:background .25s,color .25s}.round-link svg{width:50px;height:50px}.round-link:hover{background:var(--ink);color:var(--lime)}.contact-bottom{display:flex;justify-content:space-between;align-items:center;font-size:16px}.text-link{display:inline-flex;align-items:center;gap:24px;border-bottom:1px solid currentColor;padding:8px 0;font-size:inherit}.text-link svg{width:18px;height:18px}.footer{padding:64px var(--edge) 24px}.footer-top{display:grid;grid-template-columns:1fr 1fr 1fr;align-items:center;gap:40px}.footer-logo{width:210px;height:auto}.footer-top>p{font-size:24px;letter-spacing:-.015em}.social{display:flex;flex-direction:column;align-items:flex-end;gap:8px;font-size:14px}.social a{display:flex;align-items:center;gap:32px}.social svg{width:14px;height:14px}.footer-bottom{border-top:1px solid var(--line);margin-top:64px;padding-top:24px;display:flex;justify-content:space-between;gap:24px;color:var(--muted);font-size:12px}.archive-head{padding:72px var(--edge) 64px}.archive-head .small-label{color:var(--lime);margin-bottom:32px}.archive-head h1{font-size:clamp(68px,10vw,160px);line-height:.95}.archive-intro{display:flex;justify-content:space-between;align-items:flex-end;margin-top:42px}.archive-intro p{font-size:21px;color:var(--muted);line-height:1.4}.archive-intro>span{font-size:12px;color:var(--muted)}.archive-section{padding:0 var(--edge) 120px}.archive-controls{display:flex;justify-content:space-between;align-items:center;gap:24px;border-top:1px solid var(--line);padding-top:28px}.filters{display:flex;gap:10px;flex-wrap:wrap}.filters button{font-size:14px;border:1px solid #505647;padding:10px 20px;border-radius:30px;white-space:nowrap}.filters button[aria-pressed=true]{background:var(--lime);color:var(--ink);border-color:var(--lime)}.filters sup{font-size:9px;margin-left:4px}.search{display:flex;gap:12px;border-bottom:1px solid #676d5c;padding:10px 0;max-width:230px}.search input{width:100%;background:none;border:0;color:var(--paper);font-size:14px;min-width:0}.search input::placeholder{color:var(--muted)}.search input:focus{outline-offset:10px}.result-count{font-size:12px;color:var(--muted);margin:28px 0}.archive-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:56px 32px}.archive-grid .project-picture img{aspect-ratio:16/10;object-fit:contain}.archive-grid .project-card:nth-child(4n+2),.archive-grid .project-card:nth-child(4n+3){margin:0}.case-head{padding:40px var(--edge) 56px}.back-link{font-size:13px;color:var(--muted)}.case-category{display:block;color:var(--lilac);font-size:13px;margin:64px 0 24px}.case-head h1{font-size:clamp(58px,8vw,126px);max-width:1100px;line-height:.99}.case-intro{display:grid;grid-template-columns:1.3fr 1fr;gap:12vw;margin-top:48px}.case-intro>p{font-size:clamp(22px,2.4vw,34px);line-height:1.3;letter-spacing:-.015em}.case-intro dl{margin:0;font-size:13px}.case-intro dl>div{display:grid;grid-template-columns:100px 1fr;gap:20px;margin-bottom:16px}.case-intro dt{color:var(--muted)}.case-intro dd{margin:0}.case-hero{padding:0 var(--edge)}.image-button{position:relative;display:block;width:100%;padding:0;overflow:hidden;text-align:left}.image-button>img{width:100%;height:auto;object-fit:contain}.image-enlarge{position:absolute;bottom:18px;right:18px;width:42px;height:42px;display:grid;place-items:center;background:var(--paper);color:var(--ink);border-radius:50%;opacity:0;transition:opacity .2s}.image-button:hover .image-enlarge,.image-button:focus-visible .image-enlarge{opacity:1}.image-enlarge svg{width:18px;height:18px}.case-story{padding:90px var(--edge) 0}.scene{margin-bottom:100px}.scene-copy{display:grid;grid-template-columns:1fr 1fr;gap:12vw;align-items:start;margin:0 0 32px}.scene-copy h2{font-size:clamp(32px,3.7vw,54px)}.scene-copy p{font-size:17px;color:var(--muted);max-width:460px}.scene-inset{max-width:85%;margin-left:auto}.scene-inset .scene-copy{gap:5vw}.studies{background:var(--paper);color:var(--ink);padding:90px var(--edge)}.study-block,.mood-block{display:grid;grid-template-columns:1fr 1.7fr;gap:7vw;align-items:start}.mood-block{margin-top:72px}.study-block:only-child{margin-top:0}.studies h2{font-size:clamp(32px,3.4vw,50px);margin-bottom:24px}.studies p{font-size:16px;color:#53584b}.studies .image-button{margin-bottom:20px}.studies .image-button:focus-visible{outline-color:var(--ink)}.project-credit{padding:44px var(--edge);display:flex;justify-content:space-between;gap:40px;align-items:center}.project-credit p{font-size:12px;color:var(--muted);max-width:500px}.project-credit a{font-size:13px;white-space:nowrap}.next-project{display:grid;grid-template-columns:1fr 1fr 60px;align-items:center;gap:48px;padding:64px var(--edge) 96px}.next-project .small-label{color:var(--lime)}.next-project h2{font-size:clamp(32px,4.5vw,64px)}.next-project>img{width:100%;height:auto;aspect-ratio:16/9;object-fit:cover}.next-project>span{justify-self:end}.next-project svg{width:38px;height:38px}.not-found{padding:80px var(--edge) 140px}.not-found h1{font-size:clamp(70px,10vw,150px)}.not-found p{margin:32px 0;color:var(--muted)}.pill{display:inline-flex;align-items:center;justify-content:center;gap:30px;padding:14px 26px;border-radius:40px;font-size:15px}.primary{background:var(--lime);color:var(--ink)}dialog{border:0;padding:0}dialog::backdrop{background:#000b;backdrop-filter:blur(7px)}.brief-dialog{background:var(--paper);color:var(--ink);padding:48px;width:min(690px,calc(100% - 32px));max-height:calc(100dvh - 40px);overflow:auto}.close{position:absolute;top:18px;right:20px;width:36px;height:36px;font-size:32px;line-height:1}.brief-dialog .small-label{color:#4a5040}.brief-dialog h2{font-size:58px;letter-spacing:-.015em}.dialog-desc{margin-top:20px;font-size:16px;color:#53584b}.brief-dialog form{margin-top:32px}.brief-dialog label{display:flex;flex-direction:column;gap:9px;font-size:13px;margin-bottom:24px}.form-pair{display:grid;grid-template-columns:1fr 1fr;gap:24px}.brief-dialog input,.brief-dialog select,.brief-dialog textarea{width:100%;border:0;border-bottom:1px solid #9b9f90;background:transparent;border-radius:0;padding:10px 0;color:var(--ink);font-size:16px;resize:vertical}.brief-dialog :focus-visible{outline-color:var(--ink)}.form-note{font-size:12px;color:#53584b;margin-bottom:24px}.form-actions{display:flex;gap:24px;align-items:center;flex-wrap:wrap}.form-actions .text-link{font-size:14px}#form-status{font-size:13px;margin-top:22px}.viewer{background:var(--ink);color:var(--paper);width:100vw;max-width:100vw;height:100dvh;max-height:100dvh}.viewer[open]{display:flex;align-items:center;justify-content:center;padding:64px}.viewer figure{width:100%;height:100%;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:18px}.viewer figure img{max-width:100%;max-height:calc(100dvh - 160px);width:auto;height:auto;object-fit:contain}.viewer figcaption{font-size:14px;color:var(--muted);text-align:center}.viewer .close{z-index:2}.viewer-prev,.viewer-next{position:absolute;top:50%;font-size:28px;background:var(--ink);width:44px;height:50px}.viewer-prev{left:10px}.viewer-next{right:10px}.viewer-count{position:absolute;bottom:16px;left:24px;font-size:12px;color:var(--muted)}
@media(min-width:1700px){.hero-composition{min-height:570px}.hero{padding-top:40px}.featured-image{aspect-ratio:2.15}}
@media(max-width:1050px){.hero-composition{min-height:380px}.hero h1{font-size:10.2vw}.hero-top{font-size:12px}.motion-under{font-size:10px;padding:0}.motion-under button{gap:5px}.selected-grid{column-gap:24px;row-gap:64px}.selected-grid .project-card:nth-child(4n+2){grid-column:8/13;margin-top:100px}.selected-grid .project-card:nth-child(4n+3){grid-column:1/6}.selected-grid .project-card:nth-child(4n+4){grid-column:7/13}.project-meta{flex-direction:column;gap:7px}.section-heading>p{font-size:14px}.process{grid-template-columns:1fr;gap:40px}.process ol{gap:40px}.service-note{width:28%}.footer-top{grid-template-columns:1fr 1fr}.footer-top>p{display:none}.case-intro{gap:6vw}.case-intro dl>div{grid-template-columns:85px 1fr}.scene-copy{gap:7vw}.study-block,.mood-block{gap:4vw}.project-credit{align-items:flex-start}.round-link{width:96px;height:96px}}
@media(max-width:700px){:root{--edge:20px}.header{height:80px}.brand img{width:96px}.header nav{gap:22px;font-size:13px}.header .nav-contact{gap:12px}.nav-contact svg{width:13px;height:13px}.hero{padding-top:22px;padding-bottom:28px}.hero-top{font-size:11px}.hero-top>span:first-child{max-width:130px}.location{font-size:10px;gap:6px}.hero-composition{grid-template-columns:1fr;gap:0;min-height:0}.hero h1{font-size:clamp(64px,15.5vw,106px);line-height:.94;padding:42px 0 0}.motion-stage{margin:0 0 22px 14%;width:86%}.motion-stage video{aspect-ratio:16/9}.motion-under{font-size:10px}.motion-under button{font-size:10px}.hero-bottom{font-size:11px;align-items:flex-end;gap:18px}.down-link{gap:14px}.down-link span{width:30px;height:30px;font-size:19px}.featured{padding:0}.featured-image{aspect-ratio:1.55;object-fit:contain;background:#211e24}.feature-meta{padding:18px var(--edge) 0;grid-template-columns:1fr 30px;gap:12px}.feature-meta h2{font-size:22px}.feature-meta p{display:none}.feature-meta .small-label{font-size:10px;margin-bottom:6px}.feature-arrow svg{width:24px;height:24px}.work-section{padding:88px var(--edge) 72px}.section-heading{display:block;margin-bottom:36px}.section-heading h2{font-size:43px;line-height:1.03}.section-heading>p{font-size:14px;line-height:1.5;margin-top:22px}.selected-grid{grid-template-columns:1fr;row-gap:38px}.selected-grid .project-card:nth-child(n){grid-column:auto;margin:0}.selected-grid .project-card:nth-child(2n){width:86%;justify-self:end}.project-card:nth-child(n) .project-picture img{aspect-ratio:1.65;object-fit:contain}.project-meta{padding-top:13px;flex-direction:row;align-items:center}.project-meta h3{font-size:19px;max-width:70%}.project-meta>span{font-size:11px}.project-open{width:34px;height:34px;right:10px;bottom:10px;opacity:1;transform:none}.project-open svg{width:16px;height:16px}.archive-link{margin-top:54px;font-size:28px;padding:24px 0}.archive-link svg{width:28px;height:28px}.studio{padding:64px var(--edge)}.studio-intro{grid-template-columns:1fr;gap:28px}.studio-intro>div:first-child{position:relative}.studio .small-label{margin-bottom:28px}.studio h2{font-size:64px;line-height:.97}.studio-spotlight{position:absolute;right:0;bottom:0;width:90px;height:180px;margin:0}.studio-copy{padding:0}.studio-copy>.statement{font-size:28px;margin-bottom:28px;max-width:450px}.studio-copy>p:not(.statement){font-size:16px;line-height:1.6}.founder{margin-top:36px;gap:22px;padding-top:28px}.founder .founder-image{width:88px;height:110px}.founder h3{font-size:21px}.founder p{font-size:12px;margin-bottom:15px}.founder a{font-size:12px}.practice{padding:72px var(--edge) 64px}.practice .section-heading{margin-bottom:36px}.services details{padding:24px 0}.services summary{gap:12px}.services h3{font-size:25px;max-width:85%;line-height:1.14}.service-note{display:none}.services details>p{font-size:15px;margin:20px 0 0;max-width:100%}.process{margin-top:64px;gap:32px}.process>h3{font-size:26px}.process ol{grid-template-columns:1fr;gap:28px}.process li{display:grid;grid-template-columns:32px 1fr;column-gap:12px}.process li>span{padding-top:3px}.process h4{margin:0 0 8px;font-size:22px}.process li p{grid-column:2;font-size:14px;max-width:330px}.scope{margin-top:40px;font-size:11px;line-height:1.7}.contact{padding:28px var(--edge) 68px}.contact-top{font-size:11px}.contact-top>span:last-child{display:none}.invitation{gap:12px;margin:40px 0 36px;align-items:flex-end}.invitation h2{font-size:clamp(43px,10vw,70px);line-height:1.01;letter-spacing:-.015em}.round-link{width:56px;height:56px;margin-bottom:4px}.round-link svg{width:27px;height:27px}.contact-bottom{flex-direction:column;gap:20px;align-items:flex-start;font-size:14px}.contact-bottom .text-link{gap:30px}.footer{padding:40px var(--edge) 24px}.footer-top{gap:20px}.footer-logo{width:150px}.social{font-size:12px;gap:9px}.social a{gap:20px}.social svg{width:12px;height:12px}.footer-bottom{flex-wrap:wrap;gap:14px;font-size:10px;margin-top:40px;padding-top:20px}.footer-bottom>span:nth-child(2){order:3;flex-basis:100%}.archive-head{padding:52px var(--edge) 36px}.archive-head h1{font-size:66px;line-height:.98}.archive-head .small-label{margin-bottom:24px}.archive-intro{margin-top:26px;display:block}.archive-intro p{font-size:18px}.archive-intro>span{display:block;margin-top:20px;font-size:11px}.archive-section{padding-bottom:64px}.archive-controls{display:block;padding-top:24px}.filters{gap:8px}.filters button{font-size:12px;padding:8px 13px}.search{margin-top:24px;max-width:100%}.result-count{margin:24px 0;font-size:11px}.archive-grid{grid-template-columns:1fr;gap:36px}.archive-grid .project-card:nth-child(n) .project-picture img{aspect-ratio:16/10}.case-head{padding:24px var(--edge) 36px}.case-category{margin:44px 0 20px;font-size:12px}.case-head h1{font-size:56px;overflow-wrap:anywhere}.case-intro{grid-template-columns:1fr;gap:28px;margin-top:28px}.case-intro>p{font-size:24px}.case-intro dl{font-size:12px;padding-top:24px;border-top:1px solid var(--line)}.case-intro dl>div{grid-template-columns:90px 1fr}.case-hero{padding:0}.case-story{padding-top:56px}.scene{margin-bottom:52px}.scene-inset{max-width:100%;margin-left:0}.scene-copy{display:block;margin-bottom:24px}.scene-copy h2{font-size:34px;line-height:1.07}.scene-copy p{font-size:15px;margin-top:16px}.studies{padding:56px var(--edge)}.study-block,.mood-block{grid-template-columns:1fr;gap:24px}.mood-block{margin-top:40px}.studies h2{font-size:36px;margin-bottom:18px}.studies p{font-size:15px}.project-credit{display:block;padding-top:32px;padding-bottom:24px}.project-credit a{margin-top:18px}.next-project{grid-template-columns:1fr 32px;gap:24px;padding-top:40px;padding-bottom:56px}.next-project>img{grid-column:1/3;grid-row:2}.next-project h2{font-size:38px}.next-project svg{width:28px;height:28px}.brief-dialog{padding:36px 24px;max-height:calc(100dvh - 24px)}.brief-dialog h2{font-size:48px}.dialog-desc{font-size:14px}.form-pair{grid-template-columns:1fr;gap:0}.brief-dialog label{margin-bottom:20px}.form-actions{gap:18px}.viewer[open]{padding:50px 20px 70px}.viewer-prev,.viewer-next{top:auto;bottom:12px}.viewer-prev{left:auto;right:68px}.viewer-count{bottom:30px}.image-enlarge{opacity:1;width:32px;height:32px;right:10px;bottom:10px}}
@media(max-width:370px){.brand img{width:80px}.header nav{gap:14px;font-size:12px}.header .nav-contact{gap:12px;white-space:nowrap}.hero h1{font-size:56px}.hero-top>span:first-child{max-width:115px}.location{max-width:125px}.hero-bottom{font-size:10px}.down-link{gap:8px}.invitation{align-items:flex-end}.invitation h2{font-size:39px}.round-link{width:44px;height:44px}.studio h2{font-size:56px}.studio-spotlight{width:70px}.project-meta h3{font-size:17px}.footer-logo{width:130px}.filters button{padding:8px 10px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.project-link:hover .project-picture img{transform:none}}
/* v3: one inline brief, sent straight to the inbox or handed to WhatsApp. */
.contact-layout{display:grid;grid-template-columns:1fr 1fr;gap:6vw;align-items:start;margin:64px 0 40px}
.contact .invitation{display:block;margin:0}
.contact-layout .invitation h2{font-size:clamp(48px,5.6vw,92px)}
.invitation p{font-size:15px;line-height:1.5;max-width:380px;margin:28px 0 20px}
.contact-mail{display:inline-block;border-bottom:1px solid currentColor;padding-bottom:4px;font-size:15px}
.brief-form{display:grid;gap:20px;padding-top:8px}
.brief-form .form-pair{display:grid;grid-template-columns:1fr 1fr;gap:20px 24px}
.brief-form label{display:grid;gap:6px;font-size:12px;color:var(--ink)}
.brief-form input,.brief-form select,.brief-form textarea{width:100%;font:inherit;font-size:15px;color:var(--ink);background:transparent;border:0;border-bottom:1px solid var(--ink);border-radius:0;padding:10px 0;appearance:none;-webkit-appearance:none;transition:border-color .2s}
.brief-form select{cursor:pointer;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' fill='none'%3E%3Cpath d='m1 1 5 5 5-5' stroke='%23111410' stroke-width='1.5'/%3E%3C/svg%3E") right 2px center/12px 8px no-repeat}
.brief-form textarea{resize:vertical;min-height:96px;line-height:1.5}
.brief-form ::placeholder{color:var(--ink);font-weight:400}
.brief-form :is(input,select,textarea):focus{outline:none;border-bottom-color:var(--ink)}
.brief-form :is(input,textarea):user-invalid{border-bottom-color:#8a1f1f}
.brief-form .form-actions{display:flex;flex-wrap:wrap;align-items:center;gap:18px 32px;margin-top:6px}
.pill-send{display:inline-flex;align-items:center;gap:16px;background:var(--ink);color:var(--lime);border-radius:999px;padding:16px 28px;font-size:14px;transition:transform .25s,opacity .2s}
.pill-send:hover{transform:translateY(-2px)}
.pill-send svg,.brief-form .text-link svg{width:14px;height:14px}
.brief-form.is-sending .pill-send{cursor:progress}
.form-status{min-height:1.5em;font-size:14px;line-height:1.5}
.brief-form.is-sent .form-status{display:flex;gap:10px;align-items:flex-start;padding:14px 16px;background:var(--ink);color:var(--paper)}
.brief-form.is-sent .form-status:before{content:'✓';color:var(--lime)}
.footer-mark{display:block;width:min(340px,100%)}
@media(max-width:700px){
.contact-layout{grid-template-columns:1fr;gap:40px;margin:40px 0 32px}
.brief-form .form-pair{grid-template-columns:1fr}
.footer-mark{width:220px;margin-left:-12px}
}
/* Typography: Inter Tight speaks, Newsreader stresses one meaningful word. */
@font-face{font-family:"Newsreader Display";src:url('assets/NewsreaderDisplay-Italic.woff2') format('woff2');font-style:italic;font-weight:400;font-display:swap}
.stress{font-family:"Newsreader Display",Georgia,serif;font-style:italic;font-weight:400;font-size:1.07em;letter-spacing:-.02em;color:var(--lime)}
.small-label{text-transform:uppercase;font-weight:500;letter-spacing:.1em}
/* Footer: the moving wordmark, cropped to the mark itself, with the line beneath it. */
.footer-top{display:flex;justify-content:space-between;align-items:flex-end;gap:40px}
.footer-brand{display:grid;gap:20px;justify-items:start}
.footer-brand p{font-size:clamp(20px,1.9vw,28px);letter-spacing:-.015em;line-height:1.1}
.footer-mark{position:relative;display:block;width:clamp(260px,22vw,355px);aspect-ratio:1088/261;overflow:hidden;translate:-17.5% 0}
.social{display:grid;gap:0;min-width:200px;font-size:15px}
.social a{display:flex;justify-content:space-between;align-items:center;gap:32px;padding:11px 0;border-bottom:1px solid var(--line)}
.social a:first-child{border-top:1px solid var(--line)}
.social a:hover{color:var(--lime)}
@media(max-width:700px){
.footer-top{flex-direction:column;align-items:stretch;gap:36px}
.footer-mark{width:250px;margin-left:0;translate:-8% 0}
.social{min-width:0;font-size:14px}
}

/* Booking preview dialog (from the earlier site); online booking is not connected yet. */
.booking-dialog{color:#f3f1e8;background:#111410;border:1px solid var(--lilac);padding:0;width:min(880px,calc(100vw - 40px));max-width:none;max-height:calc(100dvh - 40px);overflow:auto;margin:auto;box-shadow:0 25px 90px #0009}
.booking-dialog::backdrop{background:#080b08bf;backdrop-filter:blur(7px)}
body.calendar-open{overflow:hidden}
.booking-close{position:absolute;right:13px;top:10px;z-index:1;width:44px;height:44px;background:transparent;color:#f3f1e8;border:1px solid #f3f1e833;font:32px/1 Arial,sans-serif;cursor:pointer}
.booking-layout{display:grid;grid-template-columns:.88fr 1.12fr}
.booking-intro{padding:42px 32px;display:flex;flex-direction:column;align-items:start;border-right:1px solid #f3f1e82b;background:#191d17}
.booking-brand{font-size:14px;letter-spacing:.13em;font-weight:600}
.booking-badge{color:#c5e86c;border:1px solid var(--lime);padding:7px 11px;border-radius:30px;font-size:12px;margin-top:30px}
.booking-intro h2{font-size:clamp(32px,3.5vw,44px);letter-spacing:-.015em;line-height:1.12;margin:22px 0 16px;font-weight:400}
.booking-intro em{color:#b6a4d9;font-family:"Newsreader Display",Georgia,serif}
.booking-intro>p{font-size:15px;line-height:1.65;color:#d1d4c9;margin:0}
.booking-duration{font-size:14px;margin-top:26px;display:flex;gap:12px;align-items:center}
.booking-intro #booking-note{font-size:13px;line-height:1.6;color:#d1d4c9;margin-top:28px;padding-top:23px;border-top:1px solid #f3f1e82b}
.booking-whatsapp{font-size:14px;line-height:1.5;color:#c5e86c;margin-top:18px;text-underline-offset:5px}
.booking-calendar{padding:76px 30px 28px;min-width:0}
.booking-month{display:flex;justify-content:space-between;gap:10px;align-items:center;margin-bottom:20px}
.booking-month h3{font-size:20px;font-weight:400;margin:0;letter-spacing:-.02em}
.booking-month>div{display:flex;gap:7px}
.booking-month button{width:40px;height:40px;background:transparent;color:inherit;border:1px solid #f3f1e833;cursor:pointer;font-size:20px}
.booking-month button:disabled{opacity:.25;cursor:default}
.booking-weekdays,.booking-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px}
.booking-weekdays{color:#bfc4b7;text-align:center;font-size:12px;margin-bottom:9px}
.booking-days button{height:42px;min-width:0;border:1px solid #f3f1e81f;background:transparent;color:inherit;font:inherit;font-size:14px;cursor:pointer}
.booking-days button:disabled{border-color:transparent;opacity:.22;cursor:default}
.booking-days button[aria-pressed=true],.booking-times button[aria-pressed=true]{background:#c5e86c;color:#111410;border-color:#c5e86c}
.booking-days button:not(:disabled):hover,.booking-times button:hover{border-color:#c5e86c}
.booking-slots{margin-top:24px;border-top:1px solid #f3f1e82b;padding-top:20px}
.booking-slots h4{font-size:16px;font-weight:400;margin:0 0 7px}
.booking-slots>p{font-size:12px;color:#bfc4b7;margin:0 0 13px}
.booking-times{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.booking-times button{font:inherit;font-size:13px;padding:12px 4px;min-height:44px;border:1px solid #f3f1e844;background:transparent;color:inherit;cursor:pointer}
.booking-selection{font-size:13px;line-height:1.6;color:#d1d4c9;min-height:44px;margin:18px 0 14px}
.booking-unavailable{width:100%;padding:14px 10px;border:1px solid #f3f1e833;background:#f3f1e80a;color:#bfc4b7;font:inherit;font-size:14px}
.booking-dialog button:focus-visible,.booking-dialog a:focus-visible,.booking-trigger:focus-visible{outline:2px solid #b6a4d9;outline-offset:3px}
@media(max-width:650px){.booking-dialog{width:calc(100vw - 24px);max-height:calc(100dvh - 24px)}.booking-layout{grid-template-columns:1fr}.booking-intro{padding:26px 22px;border-right:0;border-bottom:1px solid #f3f1e82b}.booking-brand{padding-right:45px}.booking-badge{margin-top:20px}.booking-intro h2{font-size:34px}.booking-intro h2 br{display:none}.booking-intro>p{font-size:14px}.booking-duration{margin-top:18px}.booking-intro #booking-note{margin-top:18px;padding-top:16px}.booking-calendar{padding:25px 22px}.booking-whatsapp{font-size:13px}.booking-days button{height:40px}.booking-times{gap:6px}}
@media(max-width:650px){.booking-close{position:fixed;right:25px;top:22px;background:#111410}.booking-intro>p:not(#booking-note){display:none}.booking-intro h2{font-size:30px;margin-bottom:0}.booking-duration{margin-top:14px}.booking-intro #booking-note{margin-top:14px;padding-top:14px}.booking-badge{margin-top:16px}}
/* Contact, balanced: statement and ways to reach us on the left, the brief on the right, tops aligned. */
.contact .contact-layout{align-items:start;margin:56px 0 72px}
.contact .contact-layout .invitation h2,.experience-home .contact .contact-layout .invitation h2{font-size:clamp(40px,4.2vw,80px);line-height:1;letter-spacing:-.015em}
.contact-layout .invitation p{margin:26px 0 30px}
.contact-ways{display:flex;flex-wrap:wrap;align-items:center;gap:18px 28px}
.call-pill{display:inline-flex;align-items:center;gap:16px;padding:15px 26px;border:1px solid var(--ink);border-radius:999px;font-size:14px;color:var(--ink);background:transparent;transition:background .2s,color .2s}
.call-pill:hover{background:var(--ink);color:var(--lime)}
.call-pill svg{width:14px;height:14px}
.brief-form{padding-top:6px}
.brief-form textarea{resize:none;min-height:110px}
@media(max-width:700px){
.contact .contact-layout{margin:36px 0 48px}
.contact .contact-layout .invitation h2,.experience-home .contact .contact-layout .invitation h2{font-size:11vw}
}
.contact .contact-layout .invitation{margin:0}
/* Book a call: the clearest action on the page. */
.call-dot{width:8px;height:8px;border-radius:50%;background:currentColor;flex:none;animation:call-pulse 2s ease-out infinite}
@keyframes call-pulse{0%{box-shadow:0 0 0 0 color-mix(in srgb,currentColor 55%,transparent)}100%{box-shadow:0 0 0 9px transparent}}
.contact .call-pill{gap:14px;padding:18px 30px;background:var(--ink);color:var(--lime);border-color:var(--ink);font-size:16px;transition:transform .25s,box-shadow .25s}
.contact .call-pill:hover{background:var(--ink);color:var(--lime);transform:translateY(-2px);box-shadow:none}
.contact .call-pill svg{width:16px;height:16px}
.pill-send{background:transparent;color:var(--ink);border:1px solid var(--ink)}
.pill-send:hover{background:var(--ink);color:var(--lime)}
@media(prefers-reduced-motion:reduce){.call-dot{animation:none}}
/* Book a call lives in the header, on every page. */
.nav-call{display:inline-flex;align-items:center;gap:10px;padding:11px 20px;border-radius:999px;background:var(--lime);color:var(--ink);font-size:14px;white-space:nowrap;transition:transform .2s,box-shadow .2s}
.nav-call:hover{transform:translateY(-1px);box-shadow:0 0 0 1px var(--lime)}
.nav-call .call-dot{width:7px;height:7px}
@media(max-width:700px){
.header .nav-contact{display:none}
.nav-call{padding:9px 14px;font-size:12px;gap:8px}
}
/* Studio facts, Why AZAB and brands (carried over from the live site). */
.why{padding:110px var(--edge) 40px}
.why .section-heading{margin-bottom:56px}
.why-list{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(3,1fr);gap:40px;border-top:1px solid var(--line)}
.why-list li{padding-top:28px}
.why-list span{color:var(--lime);font-size:13px}
.why-list h3{font-size:clamp(22px,2vw,30px);letter-spacing:-.015em;line-height:1.15;margin:22px 0 14px}
.why-list p{font-size:15px;line-height:1.6;color:var(--muted);max-width:420px}
.services summary .service-icon{width:28px;height:28px;flex:none;color:var(--paper)}
.brands{margin-top:72px;padding-top:28px;border-top:1px solid var(--line)}
.brands .small-label{color:var(--muted);margin-bottom:20px}
.brands ul{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:12px 36px;font-size:clamp(17px,1.5vw,22px);letter-spacing:-.02em}
@media(max-width:700px){
.why{padding:64px var(--edge) 24px}
.why .section-heading{margin-bottom:32px}
.why-list{grid-template-columns:1fr;gap:8px}
.services summary .service-icon{width:22px;height:22px}
.brands{margin-top:48px}
.brands ul{gap:10px 22px;font-size:16px}
}
.contact{padding-bottom:64px}
@media(max-width:700px){

}
@media(prefers-reduced-motion:reduce){.rig-beam,.rig-lit{transition:none}}
/* Light case format (2026-11): idea line + three numbered points */
.case-head.has-idea h1{font-size:clamp(20px,1.6vw,24px);letter-spacing:0;line-height:1.2;margin:0 0 18px;color:var(--muted);font-weight:400}
.case-idea{font-size:clamp(50px,6.6vw,108px);line-height:1;letter-spacing:-.015em;max-width:1150px;margin:0}
.case-idea em{font-family:"Newsreader Display",Georgia,serif;font-style:italic;font-weight:400;letter-spacing:-.02em}
.case-points{padding:72px var(--edge) 0}
.case-points ol{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(24px,3vw,48px)}
.case-points li{border-top:1px solid var(--line);padding-top:22px}
.case-point-n{display:block;font-family:"Newsreader Display",Georgia,serif;font-style:italic;font-size:30px;color:var(--lime);margin-bottom:18px}
.case-points h2{font-size:clamp(20px,1.7vw,26px);font-weight:400;letter-spacing:-.01em;margin:0 0 10px}
.case-points p{margin:0;color:var(--muted);font-size:15px;line-height:1.55;max-width:34ch}
@media(max-width:700px){.case-idea{font-size:44px}.case-points{padding-top:48px}.case-points ol{grid-template-columns:1fr;gap:28px}.case-head.has-idea h1{font-size:18px}}
/* Contact band, typographic (2026-11-07, option B): truss as one structural line, the words carry the band. Replaces the big rig drawing. */
.contact.contact-type{padding-top:0}
.contact-truss{height:26px;margin:0 calc(var(--edge) * -1);background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='52' height='26' viewBox='0 0 52 26'%3E%3Cpath d='M0 1.25H52M0 24.75H52M0 24.75L26 1.25L52 24.75' fill='none' stroke='%23111410' stroke-width='2.5'/%3E%3C/svg%3E") repeat-x 0 0/52px 26px}
.contact-statement{display:grid;grid-template-columns:1fr auto;align-items:end;gap:40px;padding:clamp(56px,7vw,110px) 0 clamp(48px,6vw,90px)}
.contact-statement h2{font-size:clamp(60px,10.6vw,184px);line-height:.92;letter-spacing:-.02em;margin:0;font-weight:400}
.contact-statement h2 em{font-family:"Newsreader Display",Georgia,serif;font-style:italic;font-weight:400;letter-spacing:-.02em}
.contact-statement p{font-size:14px;max-width:24ch;text-align:right;margin:0;padding-bottom:14px}
.contact-rule{height:1px;background:var(--ink)}
.contact.contact-type .contact-layout{margin-top:56px}
.contact.contact-type .contact-layout .invitation p{margin-top:0}
@media(max-width:700px){.contact-statement{grid-template-columns:1fr;gap:20px;padding:48px 0 40px}.contact-statement h2{font-size:clamp(52px,15vw,72px)}.contact-statement p{text-align:left;padding:0}.contact.contact-type .contact-layout{margin-top:36px}}
/* Truss sits flush on the home page too (home-v3 adds top padding to .contact). */
.experience-home .contact.contact-type{padding-top:0}
/* Contact spotlight (2026-11-07): the offline-portfolio cover move. One angled lamp on the truss, its beam lands on "idea.", the rest of the line dims. Drawn by site.js; without JS the type stays plain. */
.contact-type{position:relative}
.contact-spot{position:absolute;left:0;top:0;width:100%;height:100%;pointer-events:none;z-index:0;overflow:visible}
.contact-type>*:not(.contact-spot){position:relative;z-index:1}
.contact-type .contact-truss{z-index:2}
.contact-spot .spot-beam,.contact-spot .spot-pool{opacity:0;transition:opacity 1s ease .25s}
.contact-spot .spot-lamp{opacity:0;transition:opacity .5s ease}
.contact-type.is-spot .contact-spot .spot-beam,.contact-type.is-spot .contact-spot .spot-pool,.contact-type.is-spot .contact-spot .spot-lamp{opacity:1}
.contact-type.has-spot .contact-statement h2{transition:color 1s ease .25s}
.contact-type.has-spot.is-spot .contact-statement h2{color:rgba(17,20,16,.5)}
.contact-type.has-spot .contact-statement h2 em{color:var(--ink)}
@media(prefers-reduced-motion:reduce){.contact-spot *,.contact-type.has-spot .contact-statement h2{transition:none!important}}
/* Keep "idea." at the end of the second line so the beam has a clear path from the upper right. */
.contact-statement .nowrap{white-space:nowrap}
.contact-statement h2{font-size:min(10.6vw,184px)}
@media(max-width:1100px){.contact-statement{grid-template-columns:1fr;gap:24px}.contact-statement p{text-align:left;padding:0}.contact-statement h2{font-size:12vw}}
@media(max-width:700px){.contact-statement h2{font-size:12.2vw}}
