@charset "UTF-8";
:root{--ink:#111;--paper:#eeede8;--rule:#c7c6c1;--pink:#f5a7ca;--gutter:clamp(22px,3.5vw,64px)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--ink);color:#fff;font-family:Arial,Helvetica,'Malgun Gothic',sans-serif;-webkit-font-smoothing:antialiased}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;color:inherit;cursor:pointer;border:0;background:none}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,video:focus-visible{outline:3px solid #ed4b9c;outline-offset:6px}p,h1,h2,h3,figure{margin:0}img{display:block;width:100%;object-fit:cover}button{padding:0}::selection{color:#111;background:var(--pink)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;left:20px;top:-100px;background:white;color:#111;padding:12px;z-index:200}.skip-link:focus{top:12px}.site-header{height:96px;padding:0 var(--gutter);display:flex;align-items:center;justify-content:space-between;background:#111;position:relative;z-index:5}.wordmark{font-size:clamp(23px,2vw,33px);font-weight:900;letter-spacing:-1.8px;line-height:1;white-space:nowrap}.wordmark>span{font-size:.35em;letter-spacing:0;vertical-align:top;display:inline-block;margin-top:.18em;margin-left:.25em}.desktop-nav{display:flex;gap:clamp(35px,5vw,84px);position:absolute;left:50%;transform:translateX(-50%);font-weight:700;font-size:13px}.desktop-nav a,.desktop-nav button{position:relative;padding:8px 0}.desktop-nav a:after,.desktop-nav button:after{content:'';position:absolute;bottom:1px;left:0;width:100%;height:1px;background:white;transform:scaleX(0);transform-origin:left;transition:transform .2s}.desktop-nav a:hover:after,.desktop-nav button:hover:after{transform:scaleX(1)}.menu-toggle{display:flex;gap:4px;align-items:center;justify-content:center;width:44px;height:44px}.menu-toggle span{width:5px;height:5px;background:white;border-radius:50%;transition:transform .2s}.menu-toggle:hover span:nth-child(2){transform:translateY(-4px)}
.hero{min-height:calc(100svh - 96px);padding:0 var(--gutter) 30px;display:flex;flex-direction:column;align-items:center;justify-content:flex-start}.hero-frame{position:relative;width:min(100%,calc((100svh - 175px)*1.777778));max-width:1600px;aspect-ratio:16/9;background:#1b1b1b;overflow:hidden}.hero-video{width:100%;height:100%;display:block;object-fit:contain}.hero-shade{position:absolute;inset:0;background:#0002;pointer-events:none}.watch-lockup{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;pointer-events:none;padding-top:64px}.watch-button{pointer-events:auto;width:116px;height:116px;border-radius:50%;border:1px solid #fff;background:transparent;color:#fff;display:flex;align-items:center;justify-content:center;position:relative;transition:transform .3s;text-shadow:0 1px 8px #0006;font-size:13px;line-height:1.1;font-weight:800;text-align:center}.watch-button svg{width:22px;height:22px;fill:currentColor;position:absolute;opacity:0;transform:translateY(10px);transition:opacity .2s,transform .2s}.watch-button>span{transition:opacity .2s}.watch-button:hover{background:transparent;transform:scale(1.07)}.watch-button:hover svg{opacity:1;transform:none}.watch-button:hover>span{opacity:0}.watch-lockup>p{text-align:center;font-weight:800;font-size:14px;line-height:1.12;margin-top:13px;text-shadow:0 1px 12px #0008;letter-spacing:-.4px}.watch-lockup>p>span{font-size:9px;letter-spacing:0}.hero-progress{position:absolute;height:2px;bottom:0;left:0;right:0;background:#ffffff15}.hero-progress span{display:block;height:100%;width:100%;transform:scaleX(0);transform-origin:left;background:#fff9;transition:transform .2s linear}.hero-caption{width:100%;display:flex;justify-content:space-between;align-items:center;margin-top:22px;font-size:10px;font-weight:700;letter-spacing:.025em}.hero-caption .discover{position:absolute;left:50%;transform:translateX(-50%)}.discover span{margin-left:15px;font-size:16px}.hero-caption>button{display:flex;align-items:center;gap:9px;padding:4px 0}.pause-symbol{font-size:15px;line-height:1}.media-error{font-size:12px;padding:15px}.light-section{background:var(--paper);color:var(--ink)}.section-pad{padding-left:var(--gutter);padding-right:var(--gutter)}.eyebrow{font-size:10px;font-weight:700;letter-spacing:.04em;display:flex;justify-content:space-between}.statement{padding-top:55px;padding-bottom:100px}.statement-grid{display:grid;grid-template-columns:1fr 30%;gap:7%;margin-top:72px}.statement h2{font-size:clamp(46px,6.4vw,104px);letter-spacing:-.065em;line-height:.97;font-weight:800}.period{color:#111}.statement-aside{display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-end}.mm-mark{font-size:clamp(66px,8vw,135px);font-weight:900;letter-spacing:-.1em;line-height:.8;margin-bottom:44px}.mm-mark>span{font-size:.45em;vertical-align:top;letter-spacing:-.1em;display:inline-block;margin-left:.1em}.statement-copy{font-size:8px;line-height:1.9;letter-spacing:-.05em}.copy-translation{margin-top:12px;letter-spacing:0;word-break:normal}.pill-link{font-size:10px;border:1px solid #222;border-radius:50px;padding:11px 19px;margin-top:28px;display:flex;align-items:center;gap:44px;font-weight:700;transition:background .2s,color .2s}.pill-link:hover{background:#111;color:white}.work{padding-top:50px;padding-bottom:110px}.section-heading{display:flex;align-items:flex-start;justify-content:space-between;border-top:1px solid #222;padding-top:25px;margin-bottom:55px}.section-heading h2{font-size:29px;line-height:1;letter-spacing:-1px}.section-heading>p{font-size:10px;line-height:1.4;font-weight:700}.work-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.project{text-align:left;min-width:0;display:block}.project-image{aspect-ratio:4/5;overflow:hidden;background:#deded9;position:relative}.project-image img{height:100%;object-position:center;transition:transform .65s cubic-bezier(.2,.7,.3,1)}.project:first-child img{object-position:center}.project:hover img{transform:scale(1.045)}.project-play{position:absolute;bottom:17px;right:17px;background:white;color:#111;padding:9px 12px;font-size:9px;font-weight:800;opacity:0;transform:translateY(8px);transition:transform .2s,opacity .2s}.project:hover .project-play,.project:focus-visible .project-play{opacity:1;transform:none}.project-title{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-top:22px}.project-title h3{font-size:clamp(18px,1.8vw,29px);letter-spacing:-.04em;line-height:1.05}.project-title>span{font-size:10px}.project>p{font-size:13px;line-height:1.75;margin-top:13px;letter-spacing:-.035em}.project-type{display:block;font-size:9px;font-weight:700;margin-top:20px;color:#555}.studio{padding-top:45px;padding-bottom:100px;border-top:1px solid var(--rule)}.studio-grid{display:grid;grid-template-columns:1fr 1fr;gap:10%;margin-top:65px}.studio h2{font-size:clamp(30px,3.5vw,58px);line-height:1.25;letter-spacing:-.065em;font-weight:700}.studio-copy{font-size:7.5px;line-height:1.9;letter-spacing:-.045em;margin-top:30px;max-width:390px;word-break:keep-all}.disciplines{margin-top:40px;max-width:390px}.disciplines p{padding:13px 0;border-top:1px solid var(--rule);font-size:12px;font-weight:700}.disciplines p>span{font-size:9px;margin-right:24px;font-weight:400}.studio-image{align-self:stretch;display:flex;flex-direction:column}.studio-image img{height:100%;min-height:350px;object-position:center;background:#fff}.studio-image figcaption{display:flex;justify-content:space-between;font-size:8px;line-height:1.4;padding-top:12px;gap:15px}.closing{padding-top:55px;padding-bottom:75px}.closing-row{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-top:55px}.closing h2{font-size:clamp(40px,6.3vw,100px);line-height:1;letter-spacing:-.065em}.closing-watch{border:1px solid #666;border-radius:50%;width:135px;height:135px;flex-shrink:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;font-size:11px;font-weight:700;line-height:1.2;transition:background .2s,color .2s}.closing-watch>span:last-child{font-size:25px}.closing-watch:hover{background:var(--paper);color:#111}.site-footer{padding:0 var(--gutter) 24px}.footer-top{display:flex;justify-content:space-between;border-top:1px solid #444;padding-top:25px;font-size:9px;font-weight:700}.footer-wordmark{font-size:clamp(40px,13.05vw,280px);font-weight:900;line-height:1;letter-spacing:-.075em;white-space:nowrap;margin-top:62px;margin-left:-.055em}.footer-wordmark>span{font-size:.12em;letter-spacing:0;vertical-align:top;display:inline-block;margin-top:.5em;margin-left:.4em}.footer-bottom{display:flex;justify-content:space-between;margin-top:28px;font-size:8px;letter-spacing:.02em;color:#aaa}
dialog{border:0;color:white;background:#111;padding:0}dialog::backdrop{background:#000e}body:has(dialog[open]){overflow:hidden}.film-dialog{width:100vw;max-width:100vw;height:100dvh;max-height:100dvh;margin:0}.film-shell{min-height:100%;display:flex;flex-direction:column;justify-content:center;padding:25px var(--gutter)}.film-header,.film-footer{display:flex;justify-content:space-between;align-items:center;gap:20px}.film-header{padding-bottom:20px}.film-header h2{font-size:15px;letter-spacing:-.5px}.film-header h2>span{font-size:10px;font-weight:400;letter-spacing:0;margin-left:7px}.close-button{display:flex;align-items:center;gap:15px;font-size:10px;font-weight:700;min-height:44px}.close-button>span{font-size:27px;font-weight:400}.film-dialog video{width:100%;max-height:calc(100dvh - 160px);aspect-ratio:16/9;display:block;background:black;object-fit:contain}.film-footer{font-size:9px;font-weight:700;margin-top:18px}.film-dialog #film-error{font-size:13px;padding:15px}.film-dialog #film-error a{text-decoration:underline}.menu-dialog{width:100vw;max-width:100vw;height:100dvh;max-height:100dvh;margin:0;background:var(--pink);color:#111;padding:25px var(--gutter);overflow:auto}.menu-header{display:flex;align-items:center;justify-content:space-between}.menu-dialog nav{display:flex;flex-direction:column;margin-top:10vh}.menu-dialog nav a,.menu-dialog nav button{font-size:clamp(60px,10vw,160px);letter-spacing:-.06em;line-height:1.15;font-weight:800;text-align:left;display:flex;gap:25px;align-items:baseline}.menu-dialog nav a:hover,.menu-dialog nav button:hover{opacity:.6}.menu-dialog nav span{font-size:12px;letter-spacing:0}.menu-dialog>p{margin-top:10vh;font-size:11px;font-weight:700}
@media(min-width:1900px){.hero-frame{max-width:1700px}.statement-grid{grid-template-columns:1fr 28%}.section-pad{padding-left:5vw;padding-right:5vw}}
@media(max-width:900px){.desktop-nav{gap:30px;left:60%}.hero{min-height:auto;padding-bottom:26px}.hero-frame{width:100%}.hero-caption .discover{position:static;transform:none}.hero-caption>p{display:none}.statement-grid{grid-template-columns:1fr 33%;gap:5%;margin-top:55px}.statement h2{font-size:7vw}.statement-copy{font-size:6.5px}.mm-mark{margin-bottom:25px}.work-grid{gap:16px}.project-title h3{font-size:17px}.studio-grid{gap:6%}.footer-bottom>span:last-child{display:none}}
@media(max-width:600px){html{scroll-padding-top:30px}.site-header{height:78px}.desktop-nav{display:none}.wordmark{font-size:26px}.hero{padding:0 16px 27px}.hero-frame{min-height:62svh;aspect-ratio:auto}.hero-video{position:absolute;inset:0;object-fit:contain;background:#0b0b0b}.watch-lockup{padding-top:52px}.watch-button{width:96px;height:96px;font-size:12px}.watch-lockup>p{font-size:12px}.watch-lockup>p>span{font-size:8px}.hero-caption{margin-top:17px;font-size:9px}.eyebrow{font-size:8px;gap:20px}.statement{padding-top:30px;padding-bottom:65px}.statement>.eyebrow>span:last-child{display:none}.statement-grid{display:block;margin-top:40px}.statement h2{font-size:12.2vw;letter-spacing:-.055em}.statement-aside{margin-top:35px;position:relative}.mm-mark{position:absolute;right:10px;top:0;font-size:76px;margin:0}.statement-copy{font-size:6.5px;line-height:1.8}.pill-link{font-size:9px;padding:10px 15px;margin-top:23px;gap:30px}.work{padding-top:20px;padding-bottom:65px}.section-heading{margin-bottom:30px;padding-top:20px;gap:20px}.section-heading h2{font-size:21px}.section-heading>p{font-size:7px;line-height:1.6;max-width:100px}.work-grid{grid-template-columns:1fr;gap:42px}.project-image{aspect-ratio:1/1}.project-image img{object-fit:cover}.project-title{margin-top:17px}.project-title h3{font-size:24px}.project>p{margin-top:10px;font-size:13px}.project-type{margin-top:13px;font-size:8px}.project-play{opacity:1;transform:none;font-size:8px}.studio{padding-top:25px;padding-bottom:55px}.studio-grid{grid-template-columns:1fr;margin-top:36px;gap:40px}.studio h2{font-size:clamp(22px,6.9vw,37px);line-height:1.25}.studio-copy{font-size:6.5px;margin-top:22px}.disciplines{margin-top:30px}.studio-image img{min-height:300px;height:360px}.studio-image figcaption{font-size:7px}.closing{padding-top:30px;padding-bottom:45px}.closing-row{margin-top:35px;align-items:flex-end}.closing h2{font-size:8.7vw;line-height:1.05}.closing-watch{width:74px;height:74px;font-size:7px;gap:5px}.closing-watch>span:last-child{font-size:16px}.footer-top{font-size:7px;gap:15px;padding-top:20px}.footer-wordmark{font-size:12.4vw;margin-top:40px}.footer-bottom{font-size:6.5px;margin-top:20px;gap:10px}.film-shell{padding:15px}.film-header h2{font-size:13px}.film-header h2>span{font-size:8px}.film-footer{font-size:7px;gap:10px}.film-dialog video{max-height:calc(100dvh - 145px)}.close-button{gap:10px;font-size:8px}.menu-dialog{padding-top:20px}.menu-dialog nav a,.menu-dialog nav button{font-size:17vw}.menu-dialog nav{margin-top:16vh}}
/* The opening film fills the viewport, with navigation and controls overlaid. */
.site-header{position:absolute;inset:0 0 auto;background:linear-gradient(180deg,#0009,transparent);z-index:5}
.hero{height:100svh;min-height:100svh;padding:0;position:relative;display:block}
.hero-frame{width:100%;max-width:none;height:100%;min-height:0;aspect-ratio:auto}
.hero-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.hero-shade{background:linear-gradient(180deg,#0001,transparent 40%,transparent 70%,#0005)}
.watch-lockup{padding-top:52px}
.hero-caption{position:absolute;bottom:26px;left:var(--gutter);right:var(--gutter);width:auto;margin:0;text-shadow:0 1px 6px #0009}
.hero-caption .discover{position:absolute;left:50%;transform:translateX(-50%)}
.media-error{position:absolute;bottom:60px;left:var(--gutter);right:var(--gutter)}
@media(max-width:600px){.hero-caption .discover{position:static;transform:none}.hero-caption{bottom:22px}.watch-lockup{padding-top:40px}}
.brand-lockup{display:block;position:relative;width:255px;aspect-ratio:3.75/1;flex-shrink:0}
.brand-lockup img{display:block;width:100%;height:100%;object-fit:contain}
.brand-light,.brand-dark{background:none;mix-blend-mode:normal}
.site-header{background:linear-gradient(180deg,#000b,#0009 65%,transparent)}
.statement-brand{width:min(100%,310px);margin-bottom:38px}
.footer-brand{width:100%;margin-top:55px;margin-bottom:40px}
.desktop-nav{gap:clamp(24px,4vw,65px);left:55%}
.contact{display:grid;grid-template-columns:1fr 1fr;gap:9%;padding-top:50px;padding-bottom:75px;border-top:1px solid #444}
.contact h2{font-size:clamp(50px,6vw,95px);line-height:1;letter-spacing:-.06em;margin-top:30px}
.contact-sub{font-size:13px;margin-top:20px;letter-spacing:-.03em;color:#bbb}
.contact-details{padding-top:14px;min-width:0}
.contact-name{font-size:21px;letter-spacing:-.035em;font-weight:700;margin-bottom:35px}
.contact-name span{display:block;font-size:9px;letter-spacing:.02em;font-weight:400;color:#bbb;margin-top:8px}
.contact-details>a{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:clamp(15px,1.6vw,25px);letter-spacing:-.035em;padding:14px 0;border-bottom:1px solid #444}
.contact-details>a:hover{color:var(--pink)}
.instagram-label{font-size:9px;letter-spacing:.02em;line-height:1.5}.instagram-label strong{display:inline-block;margin-top:4px;font-size:clamp(15px,1.6vw,25px);font-weight:400;letter-spacing:-.035em}
.desktop-nav{gap:clamp(22px,3vw,50px);left:58%}
.menu-dialog nav .menu-instagram{font-size:18px;letter-spacing:0;margin-top:25px}
.menu-dialog nav{margin-top:7vh}.menu-dialog nav a,.menu-dialog nav button{font-size:clamp(55px,8vw,120px)}
.menu-dialog>p{margin-top:6vh}
@media(max-width:900px){.header-brand{width:220px}.desktop-nav{gap:25px;left:59%;font-size:11px}.statement-brand{margin-bottom:30px}}
@media(max-width:760px){.desktop-nav{display:none}}
@media(max-width:600px){.header-brand{width:213px}.statement-brand{width:245px;margin-bottom:25px}.contact{grid-template-columns:1fr;gap:30px;padding-top:35px;padding-bottom:50px}.contact h2{font-size:49px;margin-top:25px}.contact-name{font-size:19px;margin-bottom:20px}.contact-details>a{font-size:17px}.footer-brand{margin-top:38px;margin-bottom:28px}.menu-dialog nav a,.menu-dialog nav button{font-size:15vw}.menu-dialog nav{margin-top:12vh}}
@media(max-width:600px){.menu-dialog nav a,.menu-dialog nav button{font-size:13vw;gap:18px;white-space:nowrap}.menu-dialog nav .menu-instagram{font-size:18px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}
/* Phone and touch layouts retain the full-bleed film and original desktop design. */
@media(max-width:760px){
  html{-webkit-text-size-adjust:100%;scroll-padding-top:24px}
  .site-header{padding-top:env(safe-area-inset-top)}
  .hero-caption{bottom:max(22px,env(safe-area-inset-bottom))}
  .hero-caption>button,.hero-caption .discover{min-height:44px;display:flex;align-items:center}
  .film-shell{padding-top:max(15px,env(safe-area-inset-top));padding-bottom:max(15px,env(safe-area-inset-bottom))}
  .menu-dialog{padding-top:max(20px,env(safe-area-inset-top));padding-bottom:max(25px,env(safe-area-inset-bottom))}
  .menu-dialog nav{margin-top:clamp(28px,8svh,80px)}
  .menu-dialog nav a,.menu-dialog nav button{min-height:48px}
  .contact-details>a{overflow-wrap:anywhere;min-height:48px}
  .contact-details>a>span:last-child{flex-shrink:0}
}
@media(max-width:600px){
  .statement-copy,.studio-copy{font-size:12px;line-height:1.9;letter-spacing:-.025em}
  .copy-translation{font-size:11px;line-height:1.75;letter-spacing:0;margin-top:16px}
  .pill-link{min-height:44px}
  .hero-caption{font-size:9px}
  .studio-image img{height:auto;min-height:0;aspect-ratio:1/1;object-fit:cover}
}
@media(max-width:359px){
  :root{--gutter:18px}
  .header-brand{width:190px}
  .statement-brand{max-width:100%}
  .contact-details>a{font-size:15px}
  .section-heading h2{font-size:19px}
}
@media(max-height:500px) and (orientation:landscape){
  .site-header{height:65px}
  .header-brand{width:190px}
  .watch-button{width:76px;height:76px;font-size:11px}
  .watch-lockup{padding-top:25px}
  .watch-lockup>p{margin-top:8px;font-size:11px}
  .watch-lockup>p>span{font-size:7px}
  .hero-caption{bottom:10px}
  .film-shell{padding:8px max(15px,env(safe-area-inset-left))}
  .film-header{padding-bottom:5px}
  .film-footer{display:none}
  .film-dialog video{max-height:calc(100dvh - 65px)}
  .menu-dialog nav{margin-top:15px;display:grid;grid-template-columns:1fr 1fr;column-gap:30px}
  .menu-dialog nav a,.menu-dialog nav button{font-size:30px;min-height:48px}
  .menu-dialog nav .menu-instagram{margin-top:0}
  .menu-dialog>p{margin-top:15px}
}
@media(hover:none){.watch-button:hover>span{opacity:1}.watch-button:hover svg{opacity:0}.watch-button:hover{transform:none}}
@media(max-width:600px){.statement h2{font-size:11.7vw}}

/* Project index and individual case studies share the approved visual identity. */
.portfolio{padding-top:30px;padding-bottom:95px}
.case-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:50px 28px}
.case-card:only-child{grid-column:1/-1}
.case-card{display:block;min-width:0}
.case-card-image{position:relative;overflow:hidden;background:#d9d9d2;aspect-ratio:16/10}
.case-card:only-child .case-card-image{aspect-ratio:2.1/1}
.case-card-image img{height:100%;transition:transform .6s ease}
.case-card:hover img{transform:scale(1.025)}
.case-card-cta{position:absolute;right:25px;bottom:25px;display:flex;align-items:center;gap:40px;background:var(--paper);padding:16px 20px;font-size:10px;font-weight:700}
.case-card-cta>span{font-size:21px}
.case-card-caption{display:flex;justify-content:space-between;gap:25px;padding-top:23px}
.case-kicker{font-size:10px;font-weight:700;letter-spacing:.035em;line-height:1.6}
.case-card-caption h3{font-size:clamp(25px,3.2vw,52px);line-height:1.05;letter-spacing:-.055em;margin-top:10px}
.case-summary{font-size:13px;line-height:1.8;margin-top:14px;word-break:keep-all}
.case-year{font-size:11px;padding-top:4px}
.case-page{background:var(--paper);color:var(--ink)}
.case-page .site-header{position:relative;background:var(--ink);color:#fff}
.case-page .site-footer{background:var(--ink);color:#fff;padding-top:45px}
.case-intro{padding-top:40px;padding-bottom:45px}
.case-breadcrumb{display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:10px;font-weight:700}
.case-breadcrumb>a{display:flex;align-items:center;min-height:44px}
.case-intro h1{font-size:clamp(42px,8.3vw,160px);letter-spacing:-.065em;line-height:.95;margin-top:48px;max-width:1500px}
.case-subtitle{display:flex;align-items:center;justify-content:space-between;gap:25px;margin-top:28px}
.case-subtitle>p{font-size:clamp(14px,1.5vw,24px);letter-spacing:-.025em;line-height:1.5}
.case-watch{border:1px solid #111;border-radius:40px;min-height:48px;padding:12px 20px;font-size:10px;font-weight:700;display:flex;gap:50px;align-items:center;flex-shrink:0}
.case-watch>span{font-size:20px}
.case-watch:hover{color:var(--paper);background:#111}
.case-cover{width:100%;background:#ddd}
.case-cover img{width:100%;height:auto;aspect-ratio:16/9;object-fit:cover}
.case-overview{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:16%;padding-top:80px;padding-bottom:80px}
.case-overview h2{font-size:clamp(25px,2.7vw,43px);letter-spacing:-.05em;line-height:1.4;margin-top:20px;word-break:keep-all}
.case-description{font-size:15px;line-height:1.9;margin-top:24px;word-break:keep-all}
.case-english{color:#555;word-break:normal;font-size:14px;line-height:1.8}
.case-credits{margin:0;padding:0}
.case-credits>div{padding:20px 0;border-top:1px solid var(--rule)}
.case-credits dt{font-size:9px;font-weight:700;margin-bottom:12px;letter-spacing:.05em}
.case-credits dd{margin:0;font-size:13px;line-height:1.8}
.case-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:50px 28px;padding-bottom:85px}
.case-gallery-item img{height:auto;background:#fff}
.case-gallery-item:not(.case-gallery-wide) img{aspect-ratio:4/5;object-fit:cover}
.case-gallery-wide{grid-column:1/-1}
.case-gallery-item figcaption{padding-top:12px;font-size:9px;font-weight:700;line-height:1.6}
.case-return{display:flex;justify-content:space-between;gap:20px;padding-top:28px;padding-bottom:40px;border-top:1px solid var(--rule)}
.case-return a{min-height:48px;display:flex;align-items:center;gap:50px;font-size:clamp(17px,2.5vw,35px);font-weight:700;letter-spacing:-.04em}
.case-return a:hover{text-decoration:underline;text-underline-offset:8px}
@media(max-width:760px){
  .portfolio{padding-top:20px;padding-bottom:65px}
  .case-grid{grid-template-columns:1fr;gap:40px}
  .case-card-image,.case-card:only-child .case-card-image{aspect-ratio:4/3}
  .case-card-cta{right:15px;bottom:15px;padding:10px 14px;gap:30px;font-size:9px}
  .case-card-caption{padding-top:18px}
  .case-card-caption h3{font-size:30px}
  .case-summary{font-size:12px}
  .case-intro{padding-top:20px;padding-bottom:30px}
  .case-breadcrumb{font-size:9px;align-items:center}
  .case-breadcrumb>span{text-align:right;max-width:170px;line-height:1.6}
  .case-intro h1{font-size:12vw;line-height:1;max-width:100%;margin-top:35px}
  .case-subtitle{align-items:flex-start;flex-direction:column;gap:20px;margin-top:22px}
  .case-subtitle>p{font-size:15px}
  .case-overview{grid-template-columns:1fr;gap:40px;padding-top:45px;padding-bottom:45px}
  .case-description{font-size:13px}
  .case-english{font-size:12px}
  .case-gallery{gap:35px 15px;padding-bottom:50px}
  .case-gallery-item figcaption{font-size:8px}
  .case-return{padding-top:20px;padding-bottom:25px}
  .case-return a{gap:20px}
}
@media(max-width:440px){.case-gallery{grid-template-columns:1fr}.case-gallery-item:not(.case-gallery-wide) img{aspect-ratio:1/1}.case-gallery-wide{grid-column:auto}}
