:root{--paper:#f4f0e8;--paper-deep:#e9e1d5;--ink:#171714;--muted:#716e67;--line:#1717142e;--accent:#c95f3d;--accent-soft:#e7c6b8;--white:#fffdf8;--display:"Songti SC", "STSong", "Noto Serif CJK SC", Georgia, serif;--sans:"PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", Arial, sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:84px}body{background:var(--paper);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased;margin:0}body.is-lightbox-open{overflow:hidden}a{color:inherit;text-decoration:none}button{font:inherit}img{max-width:100%;display:block}::selection{background:var(--accent);color:var(--white)}.site-header{z-index:50;border-bottom:1px solid var(--line);background:color-mix(in srgb, var(--paper) 88%, transparent);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);justify-content:space-between;align-items:center;height:74px;padding:0 4vw;display:flex;position:fixed;inset:0 0 auto}.brand{letter-spacing:.12em;align-items:center;gap:10px;font-weight:650;display:inline-flex}.brand-mark{border:1px solid var(--ink);letter-spacing:0;border-radius:50%;place-items:center;width:36px;height:36px;font-size:12px;display:grid}.desktop-nav{align-items:center;gap:clamp(20px,2.5vw,42px);font-size:13px;display:flex}.desktop-nav a{padding:10px 0;position:relative}.desktop-nav a:not(.nav-contact):after{content:"";background:var(--ink);height:1px;transition:right .25s;position:absolute;bottom:5px;left:0;right:100%}.desktop-nav a:hover:after,.desktop-nav a:focus-visible:after{right:0}.nav-contact{border:1px solid var(--ink);border-radius:999px;padding:10px 16px!important}.nav-contact:hover{color:var(--white);background:var(--ink)}.mobile-nav{display:none;position:relative}.mobile-nav summary{cursor:pointer;border:1px solid var(--ink);border-radius:999px;padding:8px 14px;font-size:12px;list-style:none}.mobile-nav summary::-webkit-details-marker{display:none}.mobile-nav div{background:var(--white);border:1px solid var(--line);gap:2px;min-width:180px;padding:12px;display:grid;position:absolute;top:48px;right:0;box-shadow:0 18px 50px #0000001f}.mobile-nav a{padding:12px}.hero{grid-template-columns:minmax(420px,.9fr) minmax(540px,1.1fr);align-items:center;gap:4vw;min-height:100svh;padding:128px 4vw 60px;display:grid;position:relative;overflow:hidden}.hero:before{content:"";border:1px solid var(--line);border-radius:50%;width:36vw;min-width:420px;height:36vw;min-height:420px;position:absolute;top:22%;left:-18vw}.hero-copy{z-index:2;max-width:720px;position:relative}.eyebrow,.section-index{color:var(--accent);letter-spacing:.18em;text-transform:uppercase;margin:0 0 24px;font-size:11px;font-weight:700}.hero h1{font-family:var(--display);letter-spacing:-.06em;margin:0;font-size:clamp(58px,6.7vw,112px);font-weight:500;line-height:.98}.hero h1 span{color:var(--accent);display:inline-block;position:relative}.hero h1 span:after{content:"";border-top:2px solid var(--accent);border-radius:50%;height:10px;position:absolute;bottom:-8px;left:2%;right:-3%;transform:rotate(-1.5deg)}.hero-intro{color:#45433e;max-width:540px;margin:42px 0 0 17%;font-size:clamp(16px,1.35vw,20px);line-height:1.85}.hero-actions{align-items:center;gap:28px;margin:38px 0 0 17%;display:flex}.button{border-radius:999px;align-items:center;gap:34px;min-height:48px;padding:0 20px;font-size:13px;display:inline-flex}.button--solid{background:var(--ink);color:var(--white)}.button--solid:hover{background:var(--accent)}.text-link{border-bottom:1px solid var(--ink);padding:11px 0 8px;font-size:13px}.hero-collage{z-index:1;min-height:min(72vw,750px);position:relative}.hero-work{background:var(--white);margin:0;padding:7px;transition:transform .4s;position:absolute;box-shadow:0 20px 70px #29221924}.hero-work:hover{z-index:8;transform:translateY(-8px)rotate(0)}.hero-work img{object-fit:cover;width:100%;height:100%}.hero-work figcaption{color:var(--muted);letter-spacing:.08em;font-size:9px;position:absolute;bottom:-24px;left:10px}.hero-work--1{width:52%;height:43%;top:4%;left:4%;transform:rotate(-3deg)}.hero-work--2{width:39%;height:33%;top:1%;right:2%;transform:rotate(3deg)}.hero-work--3{width:32%;height:35%;top:36%;right:0;transform:rotate(-2deg)}.hero-work--4{width:37%;height:45%;bottom:2%;left:10%;transform:rotate(2.5deg)}.hero-work--5{width:39%;height:28%;bottom:7%;left:43%;transform:rotate(-1deg)}.hero-stamp{text-align:center;border:1px solid var(--ink);z-index:10;background:var(--accent);color:#fff;border-radius:50%;place-content:center;width:118px;height:118px;display:grid;position:absolute;top:31%;right:29%;transform:rotate(8deg)}.hero-stamp:before,.hero-stamp:after{content:"✦";position:absolute;top:10px;left:51px}.hero-stamp:after{top:auto;bottom:8px}.hero-stamp span{letter-spacing:.16em;font-size:8px}.hero-stamp strong{font-family:var(--display);font-size:17px;line-height:1}.hero-side-note{letter-spacing:.18em;margin:0;font-size:9px;position:absolute;bottom:168px;right:-60px;transform:rotate(90deg)}.section-pad{padding:130px 6vw}.section-lead{grid-template-columns:.5fr 1.35fr .7fr;align-items:start;gap:6vw;display:grid}.section-lead h2,.cases-heading h2,.process h2,.journal h2,.about h2,.contact h2,.capabilities h2{font-family:var(--display);letter-spacing:-.045em;margin:0;font-weight:500}.section-lead h2{font-size:clamp(44px,5vw,80px);line-height:1.12}.section-lead>p:last-child{color:var(--muted);margin:10px 0 0;font-size:15px;line-height:1.85}.audience-list{border-top:1px solid var(--ink);margin-top:100px}.audience-list article{border-bottom:1px solid var(--line);grid-template-columns:.35fr .9fr 1fr 1.2fr;align-items:center;gap:3vw;padding:31px 0;display:grid}.audience-number{font-family:var(--display);color:var(--accent);font-size:38px}.audience-list article>p{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;font-size:9px}.audience-list h3{margin:0;font-size:22px;font-weight:550}.audience-list article>div{color:var(--muted);align-items:center;gap:30px;font-size:14px;line-height:1.7;display:flex}.audience-list i{color:var(--ink);font-size:22px;font-style:normal}.capabilities{background:var(--ink);color:var(--white);grid-template-columns:.9fr 1.1fr;gap:9vw;padding:130px 6vw;display:grid}.capabilities .section-index{color:#e69a7f}.capabilities-heading h2{font-size:clamp(45px,5vw,76px);line-height:1.15}.capabilities-heading>p:last-child{color:#aaa69e;max-width:440px;margin:42px 0 0 18%;line-height:1.85}.capability-grid{border-top:1px solid #ffffff47;border-left:1px solid #ffffff47;grid-template-columns:1fr 1fr;display:grid}.capability-grid article{border-bottom:1px solid #ffffff47;border-right:1px solid #ffffff47;flex-direction:column;min-height:265px;padding:28px;display:flex}.capability-grid article>span{color:#e69a7f;font-size:12px}.capability-grid h3{font-family:var(--display);margin:auto 0 18px;font-size:26px;font-weight:500}.capability-grid p{color:#aaa69e;margin:0;font-size:13px;line-height:1.8}.cases-heading{grid-template-columns:1.5fr .6fr;align-items:end;gap:10vw;display:grid}.cases-heading h2{font-size:clamp(50px,6vw,92px);line-height:1.04}.cases-heading>p{color:var(--muted);margin:0 0 8px;font-size:14px;line-height:1.85}.case-filters{flex-wrap:wrap;gap:9px;margin:76px 0 42px;display:flex}.filter-button{border:1px solid var(--line);min-height:44px;color:var(--muted);cursor:pointer;background:0 0;border-radius:999px;padding:0 18px;transition:all .2s}.filter-button:hover,.filter-button:focus-visible{border-color:var(--ink);color:var(--ink)}.filter-button[aria-pressed=true]{background:var(--ink);border-color:var(--ink);color:var(--white)}.case-grid{grid-template-columns:repeat(12,1fr);align-items:start;gap:58px 20px;display:grid}.case-card{color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;grid-column:span 4;padding:0}.case-card--1,.case-card--4{grid-column:span 5}.case-card--2{grid-column:span 3;margin-top:110px}.case-card--3{grid-column:span 4;margin-top:36px}.case-card--5{grid-column:span 3;margin-top:-20px}.case-image-wrap{background:var(--paper-deep);aspect-ratio:4/3;display:block;position:relative;overflow:hidden}.case-card--2 .case-image-wrap,.case-card--5 .case-image-wrap{aspect-ratio:3/4}.case-image-wrap img{object-fit:cover;width:100%;height:100%;transition:transform .55s cubic-bezier(.2,.75,.25,1)}.case-card:hover img,.case-card:focus-visible img{transform:scale(1.035)}.case-open{background:#f4f0e8e6;border-radius:50%;place-items:center;width:44px;height:44px;font-size:18px;transition:transform .3s;display:grid;position:absolute;top:14px;right:14px;transform:translateY(-70px)}.case-card:hover .case-open,.case-card:focus-visible .case-open{transform:translateY(0)}.case-meta{justify-content:space-between;align-items:start;gap:20px;margin-top:17px;display:flex}.case-meta>span:first-child{gap:4px;display:grid}.case-ip,.case-category{color:var(--muted);letter-spacing:.06em;font-size:10px}.case-meta strong{font-family:var(--display);font-size:23px;font-weight:500}.case-category{white-space:nowrap;padding-top:5px}.case-summary{color:var(--muted);margin-top:9px;font-size:12px;line-height:1.7;display:block}.lightbox{z-index:100;place-items:center;padding:26px;display:grid;position:fixed;inset:0}.lightbox-backdrop{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);cursor:zoom-out;background:#0c0c0ad6;border:0;position:absolute;inset:0}.lightbox-panel{background:var(--paper);grid-template-rows:auto minmax(0,1fr) auto;width:min(1180px,92vw);max-height:92vh;padding:20px;display:grid;position:relative;box-shadow:0 30px 100px #00000073}.lightbox-top,.lightbox-footer{justify-content:space-between;align-items:center;gap:24px;display:flex}.lightbox-top{padding:0 0 15px}.lightbox-top>div{gap:4px;display:grid}.lightbox-top span{color:var(--muted);font-size:10px}.lightbox-top strong{font-family:var(--display);font-size:24px;font-weight:500}.lightbox-close,.lightbox-footer button{border:1px solid var(--line);cursor:pointer;background:0 0;border-radius:50%;width:44px;height:44px}.lightbox-close{font-size:25px}.lightbox-image{background:#ddd5c9;place-items:center;min-height:0;display:grid;overflow:hidden}.lightbox-image img{object-fit:contain;width:100%;height:100%;max-height:70vh}.lightbox-footer{padding:15px 0 0}.lightbox-footer p{color:var(--muted);margin:0;font-size:13px}.lightbox-footer>div{gap:8px;display:flex}.process{background:#d9cbbb;grid-template-columns:.85fr 1.15fr;gap:9vw;display:grid}.process-title-wrap h2{font-size:clamp(48px,5.5vw,84px);line-height:1.07}.process-title-wrap>p:last-child{color:#5e5a54;max-width:420px;margin:38px 0 0 18%;line-height:1.85}.process-list{border-top:1px solid var(--ink);margin:0;padding:0;list-style:none}.process-list li{border-bottom:1px solid #1717144d;grid-template-columns:.25fr 1fr auto;align-items:center;gap:20px;min-height:92px;display:grid}.process-list span{color:var(--accent);font-family:var(--display);font-size:20px}.process-list strong{font-family:var(--display);font-size:23px;font-weight:500}.process-list i{font-size:20px;font-style:normal}.journal{background:var(--white);grid-template-columns:.7fr 1.3fr;gap:9vw;padding:130px 6vw;display:grid}.journal h2{font-size:clamp(43px,4.5vw,70px);line-height:1.13}.editorial-list{border-top:1px solid var(--ink)}.editorial-list article{border-bottom:1px solid var(--line);grid-template-columns:.18fr 1fr auto;align-items:start;gap:28px;padding:30px 0;display:grid}.editorial-number{color:var(--accent);font-family:var(--display);font-size:23px}.editorial-list article>div>p{color:var(--muted);letter-spacing:.08em;margin:0 0 11px;font-size:10px}.editorial-list h3{font-family:var(--display);margin:0 0 14px;font-size:25px;font-weight:500;line-height:1.35}.editorial-list article>div>span{color:var(--muted);font-size:13px;line-height:1.8}.editorial-list i{font-size:21px;font-style:normal}.about{grid-template-columns:1.3fr .7fr;gap:11vw;display:grid}.about h2{font-size:clamp(48px,5.5vw,86px);line-height:1.14}.about-copy{padding-top:90px}.about-copy p{color:var(--muted);margin:0 0 28px;font-size:15px;line-height:2}.contact{background:var(--accent);min-height:660px;color:var(--white);flex-direction:column;justify-content:center;padding:120px 6vw;display:flex;position:relative;overflow:hidden}.contact:after{content:"IP";font-family:var(--display);color:#ffffff12;font-size:42vw;line-height:1;position:absolute;bottom:-18vw;right:-4vw}.contact .section-index{color:#ffffffa8}.contact h2{z-index:1;font-size:clamp(58px,7.3vw,116px);line-height:.98;position:relative}.contact>p:not(.section-index){z-index:1;max-width:500px;margin:38px 0 0 18%;font-size:16px;line-height:1.8;position:relative}.contact-links,.contact-note{z-index:1;position:relative;margin:28px 0 0 18%!important}.contact-links{gap:24px;display:flex}.contact-links a,.contact-links span{border-bottom:1px solid;padding:8px 0}.contact-note{color:#ffffffc2;font-size:12px!important}footer{border-top:1px solid var(--line);grid-template-columns:1fr 1fr 1fr;align-items:center;padding:38px 4vw;font-size:12px;display:grid}footer p{text-align:center;color:var(--muted)}footer>a:last-child{border-bottom:1px solid var(--ink);justify-self:end;padding-bottom:4px}.brand--footer .brand-mark{width:30px;height:30px}:focus-visible{outline:2px solid var(--accent);outline-offset:4px}@media (width<=1050px){.desktop-nav{display:none}.mobile-nav{display:block}.hero{grid-template-columns:1fr;padding-top:135px}.hero-copy{max-width:820px}.hero-collage{min-height:720px;margin-top:10px}.hero-side-note{display:none}.section-lead{grid-template-columns:1fr 1.3fr}.section-lead>p:last-child{grid-column:2}.audience-list article{grid-template-columns:.25fr .65fr 1fr}.audience-list article>div{grid-column:2/-1}.capabilities,.process,.journal{grid-template-columns:1fr}.capabilities-heading>p:last-child,.process-title-wrap>p:last-child{margin-left:0}.case-card,.case-card--1,.case-card--4{grid-column:span 6}.case-card--2,.case-card--5,.case-card--3{grid-column:span 6;margin-top:0}.about{grid-template-columns:1fr}.about-copy{max-width:680px;margin-left:auto;padding-top:0}}@media (width<=680px){.site-header{height:66px;padding-inline:20px}.hero{min-height:auto;padding:112px 20px 62px}.eyebrow{margin-bottom:18px}.hero h1{font-size:clamp(52px,16vw,78px)}.hero-intro,.hero-actions{margin-left:0}.hero-intro{margin-top:34px}.hero-actions{flex-direction:column;align-items:start;gap:14px}.hero-collage{min-height:560px;margin-inline:-12px}.hero-work--1{width:64%;height:35%}.hero-work--2{width:42%;height:30%}.hero-work--3{width:40%;height:30%;top:33%}.hero-work--4{width:48%;height:39%;left:5%}.hero-work--5{width:44%;height:25%;bottom:7%;left:48%}.hero-stamp{width:90px;height:90px;top:34%;right:27%}.hero-stamp:before,.hero-stamp:after{left:38px}.hero-stamp strong{font-size:13px}.section-pad,.capabilities,.journal{padding:88px 20px}.section-lead{display:block}.section-lead h2{font-size:46px}.section-lead>p:last-child{margin-top:28px}.audience-list{margin-top:58px}.audience-list article{grid-template-columns:.22fr 1fr;gap:12px 20px}.audience-list article>p{display:none}.audience-list h3{font-size:20px}.audience-list article>div{grid-column:2}.capabilities-heading h2{font-size:45px}.capability-grid{grid-template-columns:1fr;margin-top:56px}.capability-grid article{min-height:220px}.cases-heading{display:block}.cases-heading h2{font-size:50px}.cases-heading>p{margin-top:28px}.case-filters{flex-wrap:nowrap;margin-top:46px;padding-bottom:10px;overflow-x:auto}.filter-button{flex:none}.case-grid{gap:48px 10px}.case-card,.case-card--1,.case-card--2,.case-card--3,.case-card--4,.case-card--5{grid-column:span 6;margin-top:0}.case-image-wrap,.case-card--2 .case-image-wrap,.case-card--5 .case-image-wrap{aspect-ratio:3/4}.case-meta{display:block}.case-meta strong{font-size:18px}.case-category{margin-top:6px;display:block}.case-summary{display:none}.case-open{width:38px;height:38px;transform:none}.lightbox{padding:10px}.lightbox-panel{width:100%;max-height:95vh;padding:13px}.lightbox-footer p{max-width:65%}.process-title-wrap h2,.journal h2{font-size:45px}.process-list{margin-top:56px}.process-list li{grid-template-columns:.25fr 1fr auto;min-height:78px}.process-list strong{font-size:19px}.journal{gap:55px}.editorial-list article{grid-template-columns:.15fr 1fr}.editorial-list i{display:none}.about h2{font-size:45px}.contact{min-height:590px;padding:90px 20px}.contact h2{font-size:54px}.contact>p:not(.section-index),.contact-links,.contact-note{margin-left:0!important}footer{grid-template-columns:1fr auto;padding:30px 20px}footer p{display:none}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
