html:has([data-project]),body:has([data-project]){background:var(--page-bg,var(--cream));color:var(--carbon)}body:has([data-project]):after{display:none}body:has([data-project])>#stage{visibility:hidden;pointer-events:none;position:fixed;inset:0}.case-page{--case-header:88px;--case-footer:64px;color:var(--carbon);background:var(--cream)}.case-header{z-index:30;height:var(--case-header);padding:14px var(--gutter);background:var(--cream);border-bottom:1px solid #24221f14;justify-content:space-between;align-items:center;gap:20px;display:flex;position:fixed;inset:0 0 auto}.case-logo{line-height:0}.case-logo img{width:66px;height:auto}.case-back{font:600 14px var(--font-title);align-items:center;gap:10px;text-decoration:none;display:flex}.case-back:hover{color:var(--oxblood)}@media (width<=600px){.case-header .case-back span{display:none}}.case-viewport,.case-track{position:relative}.case-panel{padding:calc(var(--case-header) + 34px) var(--gutter) calc(var(--case-footer) + 34px);background:var(--cream) url(/brand/grain-soft.png) 0 0 / 256px;background-blend-mode:soft-light;position:relative;overflow:hidden}.case-panel h1,.case-panel h2{font-family:var(--font-display);letter-spacing:-.025em;padding-block:.08em .18em;font-weight:900;overflow:visible}.case-panel h1,.case-panel h2,.case-film-copy h3{font-feature-settings:"ss02" 1, "ss03" 1}.case-kicker{font:700 12px/1.4 var(--font-title);text-transform:uppercase;letter-spacing:.09em;margin:0}.case-intro{flex-direction:column;justify-content:center;gap:clamp(18px,3vh,34px);display:flex}.case-intro-top{justify-content:space-between;align-items:start;gap:20px;display:flex}.case-intro-top .case-kicker{opacity:.7;max-width:22ch}.case-project-number{white-space:nowrap;font:600 12px var(--font-title);opacity:.5}.case-intro h1{overflow-wrap:anywhere;margin:0;font-size:clamp(60px,7.7vw,142px);line-height:1.12}.case-intro h1 span{display:block}.case-intro h1 .case-title-accent{color:var(--oxblood)}.case-page[data-project-slug=al-madina] .case-intro h1{font-size:clamp(40px,5.2vw,92px)}.case-page[data-project-slug=punch] .case-title-accent{margin-top:12px;font-size:.4em;line-height:1.15}.case-intro-line{max-width:30em;margin:0;font-size:clamp(16px,1.3vw,21px);line-height:1.45}.case-deliverables{border-top:1px solid #24221f26;align-items:start;gap:22px;padding-top:20px;display:flex}.case-deliverables .case-kicker{color:var(--oxblood);flex:none}.case-deliverables ul{margin:0;padding:0;font-size:14px;line-height:1.65;list-style:none}.case-scroll-cue{font:600 13px var(--font-title);color:#24221f99;align-items:center;gap:22px;margin:4px 0 0;display:flex}.case-scroll-cue span{color:var(--amber);font-size:26px;line-height:1}.case-cover{align-items:center;padding-left:18px;padding-right:clamp(48px,7vw,140px);display:flex}.case-hero-frame{background:var(--carbon);border-radius:0;width:100%;height:100%;min-height:440px;margin:0;position:relative;overflow:hidden;box-shadow:0 24px 40px -26px #24221f99}.case-photo{object-fit:cover;width:112%;max-width:none;height:100%;margin-left:-6%;display:block}.case-hero-frame figcaption{color:var(--cream);font:600 14px var(--font-title);background:linear-gradient(#0000,#24221fa6);justify-content:space-between;gap:24px;padding:60px 30px 24px;display:flex;position:absolute;inset:auto 0 0}.case-cover-note{bottom:calc(var(--case-footer) + 4px);background:var(--amber) url(/brand/amber-cloth.png) center / cover;z-index:2;border-radius:4px 22px 4px 4px;align-items:center;gap:18px;width:clamp(180px,20vw,320px);min-height:100px;padding:22px 24px;display:flex;position:absolute;right:4vw;transform:rotate(-5deg);box-shadow:0 18px 32px -20px #24221fb3}.case-cover-note img{width:38px;height:auto}.case-cover-note span{font:700 clamp(15px, 1.4vw, 22px)/1.1 var(--font-title);max-width:16ch}.case-story{flex-direction:column;justify-content:center;gap:22px;display:flex}.case-story>.case-kicker,.case-story h2,.case-story-beats{z-index:1;position:relative}.case-story h2{max-width:13ch;margin:0;font-size:clamp(34px,3.5vw,62px);line-height:1.12}.case-story-beats{gap:clamp(18px,2.8vh,32px);max-width:430px;display:grid}.case-story-beats h3{font:700 17px var(--font-title);margin:0 0 7px}.case-story-beats h3 span{color:var(--amber);margin-right:12px}.case-story-beats p{margin:0;font-size:clamp(14px,1.15vw,18px);line-height:1.48}.case-paper-accent{opacity:.5;pointer-events:none;width:45%;position:absolute;bottom:-100px;right:-100px}.case-gallery{background-color:var(--carbon);color:var(--cream);padding-left:clamp(48px,6vw,110px);padding-right:clamp(60px,7vw,140px)}.case-gallery-light{mix-blend-mode:soft-light;opacity:.24;pointer-events:none;background:url(/paper/leaf-shadow.webp) 50%/cover;position:absolute;inset:0}.case-gallery-heading{z-index:1;top:calc(var(--case-header) + 20px);font:900 clamp(20px, 2vw, 36px)/1.05 var(--font-display);margin:0;position:absolute;left:6vw}.case-prints{align-items:center;gap:clamp(48px,6vw,120px);height:100%;padding-top:54px;display:flex;position:relative}.case-print{background:var(--cream);width:clamp(260px,28vw,560px);height:min(59vh,760px);color:var(--carbon);flex:none;margin:0;padding:10px 10px 0;transform:rotate(-3deg);box-shadow:0 24px 40px -22px #100e0b99}.case-print-2{height:min(49vh,640px);transform:rotate(4deg)translateY(24px)}.case-print-3{transform:rotate(-2deg)}.case-print-window{width:100%;height:calc(100% - 46px);overflow:hidden}.case-print figcaption{height:46px;font:600 12px var(--font-title);align-items:center;padding:0 6px;display:flex}.case-signature{justify-content:space-between;align-items:center;gap:30px;display:flex}.case-signature-copy{z-index:2;flex:1;position:relative}.case-signature h2{max-width:10ch;margin:30px 0;font-size:clamp(48px,6.5vw,120px);line-height:1.12}.case-signature h2 span{display:block}.case-signature h2 span:last-child{color:var(--oxblood)}.case-signature-line{font:600 16px var(--font-title);margin:0}.case-signature-paper{pointer-events:none;width:40%;position:absolute;top:0;right:-8%}.case-mark-frame{filter:drop-shadow(0 18px 12px #24221f22);flex:none;width:34vw;height:50vh}.case-mark-frame img{object-fit:cover;width:100%;height:100%;display:block;mask:url(/brand/mark-mask.png) 50%/contain no-repeat}.case-next{background-color:var(--carbon);color:var(--cream)}.case-next-cloth{opacity:.65;width:40%;position:absolute;bottom:-5%;left:-5%}.case-next-link{grid-template-columns:.9fr 1.1fr;align-items:center;gap:5vw;height:100%;text-decoration:none;display:grid;position:relative}.case-next-copy{z-index:1;position:relative}.case-next h2{max-width:12ch;margin:30px 0;font-size:clamp(42px,5vw,94px);line-height:1.12}.case-next-arrow{background:var(--amber);width:68px;height:68px;color:var(--carbon);transition:transform .5s var(--ease-out);border-radius:50%;place-items:center;font-size:34px;display:grid}.case-next-link:hover .case-next-arrow{transform:rotate(45deg)}.case-next-sector{opacity:.7;margin-top:30px;font-size:14px}.case-next-photo{border-radius:0;height:100%;max-height:72vh;margin:0;overflow:hidden}.case-next-photo img{object-fit:cover;width:100%;height:100%;transition:transform .9s var(--ease-out);display:block}.case-footer{z-index:30;height:var(--case-footer);background:var(--cream);padding:0 var(--gutter);border-top:1px solid #24221f20;justify-content:space-between;align-items:center;gap:20px;display:flex;position:fixed;inset:auto 0 0}.case-position{font:600 13px var(--font-title);gap:20px;min-width:190px;display:flex}.case-position>span:first-child{color:#24221f88}.case-footer-hint{font:600 12px var(--font-title);opacity:.6}.case-footer-hint span{color:var(--oxblood);margin-left:15px}.case-navigation{gap:8px;display:flex}.case-navigation .key{min-width:44px;min-height:44px}.case-navigation .key-top{min-height:40px}.case-navigation .key:disabled{opacity:.35;cursor:inherit}.case-progress{background:#24221f10;height:3px;position:absolute;bottom:0;left:0;right:0}.case-progress span{background:var(--amber);transform-origin:0;height:100%;display:block;transform:scaleX(0)}.case-page.is-horizontal .case-viewport{height:100svh;overflow:clip}.case-page.is-horizontal .case-track{width:max-content;height:100%;display:flex}.case-page.is-horizontal .case-panel{flex:none;height:100%}.case-page.is-horizontal .case-intro{width:46vw;min-width:500px;padding-right:clamp(32px,4vw,80px)}.case-page.is-horizontal .case-cover{width:80vw}.case-page.is-horizontal .case-story{width:48vw;min-width:490px}.case-page.is-horizontal .case-gallery{width:max-content}.case-page.is-horizontal .case-signature,.case-page.is-horizontal .case-next{width:94vw}.case-page:not(.is-horizontal) .case-panel{min-height:100svh}.case-page:not(.is-horizontal) .case-hero-frame{height:72vh}.case-page:not(.is-horizontal) .case-gallery{overflow-x:auto}.case-page:not(.is-horizontal) .case-gallery-heading{margin-bottom:30px;position:relative;top:auto;left:auto}.case-page:not(.is-horizontal) .case-prints{height:65vh;padding-top:0}.case-page :focus-visible{outline:3px solid var(--amber);outline-offset:5px}@media (width<=860px){.case-page{--case-header:74px;--case-footer:62px}.case-header{gap:12px;padding-top:10px;padding-bottom:10px}.case-logo img{width:51px}.case-back{gap:5px;font-size:12px}.case-header .key{--key-sm-font:11px;--key-sm-pad:7px 10px}.case-panel{padding-top:calc(var(--case-header) + 28px);padding-bottom:calc(var(--case-footer) + 28px)}.case-page.is-horizontal .case-intro{width:100vw;min-width:0;padding-right:var(--gutter);gap:25px}.case-intro h1{font-size:clamp(52px,17vw,92px);line-height:1.12}.case-intro-line{font-size:16px}.case-intro-top .case-kicker,.case-deliverables .case-kicker{font-size:11px}.case-deliverables{gap:20px}.case-deliverables ul{font-size:13px}.case-scroll-cue{font-size:11px}.case-page.is-horizontal .case-cover{width:100vw;padding-left:20px;padding-right:32px}.case-hero-frame{border-radius:0;min-height:0}.case-hero-frame figcaption{padding:50px 20px 22px;font-size:12px}.case-hero-frame figcaption span:last-child{display:none}.case-cover-note{width:190px;min-height:76px;right:18px;bottom:calc(var(--case-footer) + 12px);padding:18px}.case-cover-note img{width:30px}.case-cover-note span{font-size:16px}.case-page.is-horizontal .case-story{gap:20px;width:100vw;min-width:0}.case-story h2{font-size:36px}.case-story-beats{gap:22px}.case-story-beats p{font-size:14px;line-height:1.45}.case-story-beats h3{font-size:16px}.case-gallery{padding-inline:32px}.case-gallery-heading{font-size:24px;left:32px}.case-prints{gap:40px;padding-top:65px}.case-print{width:73vw;height:55svh}.case-print-2{height:46svh}.case-page.is-horizontal .case-signature{flex-direction:column;justify-content:center;align-items:start;gap:28px;width:100vw}.case-signature-copy{flex:none}.case-signature h2{margin:24px 0;font-size:clamp(42px,12vw,64px)}.case-signature .case-kicker{max-width:28ch;font-size:10px}.case-signature-line{font-size:13px}.case-mark-frame{align-self:flex-end;width:65vw;height:27svh}.case-signature-paper{width:60%}.case-page.is-horizontal .case-next{width:100vw}.case-next-link{grid-template-rows:auto 1fr;grid-template-columns:1fr;gap:22px}.case-next-copy{grid-template-columns:1fr auto;align-items:center;column-gap:15px;display:grid}.case-next .case-kicker{grid-column:1/-1}.case-next h2{margin:18px 0 0;font-size:36px}.case-next-arrow{width:48px;height:48px;margin-top:15px;font-size:28px}.case-next-sector{grid-column:1/-1;margin:12px 0 0;font-size:12px}.case-next-photo{border-radius:0;min-height:0;max-height:none}.case-footer{gap:12px}.case-position{gap:14px;min-width:0;font-size:11px}.case-footer-hint{display:none}.case-navigation .key{--key-sm-pad:6px 11px}}@media (height<=700px) and (width>=861px){.case-page{--case-header:72px;--case-footer:54px}.case-intro{gap:16px}.case-intro h1{font-size:10vh}.case-intro-line{font-size:15px}.case-hero-frame{min-height:0}.case-story h2{font-size:34px}.case-story-beats{gap:14px}.case-story-beats p{font-size:14px}}@media (prefers-reduced-motion:reduce){.case-page.is-horizontal .case-viewport{height:auto;overflow:visible}.case-page.is-horizontal .case-track{width:auto;height:auto;display:block}.case-page.is-horizontal .case-panel{width:auto;height:auto;min-height:auto}.case-photo,.case-next-arrow,.case-next-photo img{transition:none}.case-page:not(.is-horizontal) .case-panel{min-height:auto}.case-signature{flex-wrap:wrap}}.case-cover{justify-content:center}.case-hero-frame{--cover-height:calc(100svh - var(--case-header) - var(--case-footer) - 100px);width:min(100%, calc(var(--cover-height) * var(--media-ratio)));background:0 0;border-radius:0;flex:none;height:auto;min-height:0;overflow:visible}.case-hero-frame>a{aspect-ratio:var(--media-ratio);display:block;overflow:hidden}.case-hero-frame .case-photo{object-fit:contain;width:100%;max-width:100%;height:100%;margin:0}.case-hero-frame figcaption{color:var(--carbon);background:0 0;padding:12px 0 0;font-size:12px;position:static}.case-cover-note{bottom:calc(var(--case-footer) + 8px);width:170px;min-height:68px;padding:16px;right:2vw}.case-cover-note img{width:25px}.case-cover-note span{font-size:14px}.case-gallery{--media-height:max(160px, calc(100svh - var(--case-header) - var(--case-footer) - 176px))}.case-prints{gap:clamp(32px,4vw,80px);padding-top:74px}.case-print{width:min(78vw, calc(var(--media-height) * var(--media-ratio)));height:auto;padding:8px 8px 0;transform:none}.case-print-window{width:100%;height:auto;aspect-ratio:var(--media-ratio);overflow:visible}.case-print-window>a{width:100%;height:100%;display:block}.case-print-window img,.case-print-window video{object-fit:contain;width:100%;max-width:100%;height:100%;margin:0;display:block}.case-print-window video{background:#111}.case-print figcaption{white-space:nowrap;justify-content:space-between;gap:12px;height:38px;font-size:11px}.case-print figcaption>span:first-child{opacity:.6}.case-film{background:var(--carbon);color:var(--cream);border:1px solid #f2e5cb33}.case-next-photo{width:min(100%, calc((100svh - var(--case-header) - var(--case-footer) - 100px) * var(--media-ratio)));border-radius:0;justify-self:center;height:auto;max-height:none}.case-next-photo img{height:auto;aspect-ratio:var(--media-ratio);object-fit:contain}.case-next-link:hover img{transform:none}.case-page:not(.is-horizontal) .case-hero-frame{height:auto;margin-inline:auto}.case-page:not(.is-horizontal) .case-prints{flex-wrap:wrap;justify-content:center;height:auto;padding:0}.case-page:not(.is-horizontal) .case-next-photo{height:auto}@media (width<=860px){.case-gallery{--media-height:max(160px, calc(100svh - var(--case-header) - var(--case-footer) - 170px))}.case-print{width:min(84vw, calc(var(--media-height) * var(--media-ratio)))}.case-gallery{padding-inline:24px}.case-prints{padding-top:64px}.case-cover-note{bottom:calc(var(--case-footer) + 7px);width:165px;min-height:0;padding:10px 14px;right:14px}.case-next-photo{width:min(100%, calc((100svh - var(--case-header) - var(--case-footer) - 260px) * var(--media-ratio)))}}.case-page{--cream:var(--case-bg);--carbon:var(--case-ink);--oxblood:var(--case-accent);--amber:var(--case-accent)}.case-panel{background-image:none}.case-intro{background-image:url(/brand/grain-soft.png)}.case-gallery{background:var(--case-gallery);color:var(--case-gallery-ink)}.case-next{background:var(--case-dark);color:var(--case-bg)}.case-intro-top .case-kicker{opacity:.85}.case-scroll-cue,.case-project-number{color:var(--case-ink);opacity:.7}.case-cover-note{background:var(--case-bright);color:var(--case-ink)}.case-paper-accent{background:var(--case-bright);opacity:.28;border-radius:80% 10% 0 0;height:65%}.case-signature-paper{background:var(--case-bright);opacity:.5;border-radius:0 0 0 85%;height:90%}.case-next-cloth{background:var(--case-bright);opacity:.15;border-radius:0 90% 0 0;height:90%}.case-next .case-kicker{color:var(--case-bright)}.case-next-arrow{color:var(--case-dark);background:var(--case-bright)}.case-position>span:first-child{color:var(--case-ink);opacity:.65}.case-film{color:inherit;border-color:color-mix(in srgb, currentColor 30%, transparent);background:0 0}.case-film-chapter{flex:none;justify-content:center;align-items:center;gap:clamp(28px,4vw,76px);width:clamp(620px,68vw,1180px);height:100%;display:flex}.case-film-copy{flex:none;width:clamp(220px,24vw,390px)}.case-film-copy h3{font:900 clamp(28px, 3.6vw, 58px)/1.12 var(--font-display);letter-spacing:-.025em;max-width:11ch;margin:24px 0;padding-block:.08em .18em}.case-film-copy>p:last-child{opacity:.85;max-width:27ch;margin:0;font-size:clamp(14px,1.2vw,18px);line-height:1.5}.case-film-chapter .case-print{flex:none}.case-print-window{position:relative}.case-play{z-index:2;color:#fff;min-width:126px;min-height:56px;font:600 13px var(--font-title);background:#111e;border:1px solid #fff6;border-radius:40px;justify-content:center;align-items:center;gap:12px;padding:12px 18px;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 8px 28px #0004}.case-play:hover{background:#222}.case-play>span:first-child{font-size:17px}.case-play:disabled{opacity:.7}.is-playing .case-play{display:none}.case-video-status{z-index:3;color:#fff;text-align:center;font:600 12px/1.4 var(--font-title);pointer-events:none;background:#111e;border-radius:4px;margin:0;padding:10px;position:absolute;bottom:48px;left:8px;right:8px}.case-video-status:empty{display:none}.case-film-direct{color:inherit;text-align:right;cursor:pointer;background:0 0;border:0;min-width:24px;font-size:16px;text-decoration:none}.case-page[data-project-slug=al-madina] .case-intro{background-image:none}.case-page[data-project-slug=al-madina] .case-gallery-light{display:none}.case-page[data-project-slug=al-madina] .case-paper-accent{opacity:.35;border-radius:50%;width:40vw;height:40vw;right:-8vw}.case-page[data-project-slug=little-mamma] .case-mark-frame img{object-position:50% 46%}.case-page[data-project-slug=punch] .case-mark-frame img{object-position:50% 48%}.case-page[data-project-slug=little-mamma] .case-intro h1,.case-page[data-project-slug=la-pergola] .case-intro h1{font-size:clamp(50px,6.3vw,118px)}.case-page[data-project-slug=little-mamma] .case-title-accent{white-space:nowrap}.case-page:not(.is-horizontal) .case-film-chapter{width:100%;min-height:65vh}@media (width<=860px){.case-page[data-project-slug=little-mamma] .case-intro h1,.case-page[data-project-slug=la-pergola] .case-intro h1{font-size:clamp(48px,14vw,90px)}.case-film-chapter{flex-direction:column;justify-content:center;align-items:center;gap:18px;width:94vw;padding-inline:22px}.case-film-copy{width:100%}.case-film-copy .case-kicker{font-size:10px}.case-film-copy h3{max-width:20ch;margin:10px 0;font-size:26px}.case-film-copy>p:last-child{max-width:35ch;font-size:13px}.case-film-chapter .case-print{--media-height:max(160px, calc(100svh - var(--case-header) - var(--case-footer) - 330px))}.case-play{min-height:48px;padding:10px 15px}.case-page:not(.is-horizontal) .case-film-chapter{padding-block:30px}}
