:root{--ink:#0c0c0c;--paper:#f5f5f2;--red:#ef392d;--line:#d4d4d0}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:95px}body{margin:0;font-family:var(--font-ui),Arial,sans-serif;color:var(--ink);background:var(--paper);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit}::selection{background:var(--red);color:white}a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid var(--red);outline-offset:6px}.skip{position:fixed;top:-100px;left:20px;z-index:100;background:white;padding:15px}.skip:focus{top:10px}.header{position:absolute;top:0;left:0;width:100%;height:100px;z-index:10;display:flex;align-items:center;justify-content:space-between;padding:0 4%;color:#f5f5f2}.logo{font-size:52px;font-weight:900;letter-spacing:-5px;line-height:1;display:inline-flex;align-items:flex-start}.logo span{font-size:12px;letter-spacing:0;margin:7px 0 0 8px}.header-note{font-size:13px;line-height:1.4;margin-right:auto;margin-left:65px}.header nav{display:flex;gap:35px;align-items:center;font-size:14px}.header nav a{padding:10px 0}.contact-link{border-bottom:1px solid #777}.contact-link span{margin-left:30px}.menu-toggle{display:none}.mobile-nav{display:none}.hero-track{height:235svh;background:var(--ink)}.hero-sticky{position:sticky;top:0;height:100svh;min-height:640px;isolation:isolate;overflow:hidden;color:var(--paper);background:#0c0c0c}.hero-top{position:absolute;z-index:3;left:4%;right:4%;top:138px;display:flex;justify-content:space-between;font-size:12px;letter-spacing:1.5px}.portrait{position:absolute;inset:0;display:flex;justify-content:center;z-index:-1}.portrait video{height:100%;width:auto;max-width:none;display:block;object-fit:contain;mask-image:linear-gradient(to right,transparent 0%,#000 12%,#000 88%,transparent 100%)}.portrait:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,#0c0c0c 0%,transparent 25%,transparent 82%,#0c0c0c 100%);pointer-events:none}.hero-title{position:absolute;left:4%;right:4%;top:39%;transform:translateY(calc(var(--p,0)*-18px));pointer-events:none}h1{font-size:clamp(72px,10.1vw,164px);line-height:.98;letter-spacing:-.065em;font-weight:500;margin:0}h1>span{display:block}h1 .last-line{text-align:right;margin-top:2vw}.red{color:var(--red)}.hero-bottom{position:absolute;bottom:47px;left:4%;right:4%;display:flex;align-items:flex-end;justify-content:space-between}.hero-bottom p{font-size:16px;line-height:1.5;margin:0}.scroll-cue{display:flex;gap:22px;align-items:center;font-size:12px;letter-spacing:1px}.scroll-arrow{border:1px solid #555;border-radius:50%;width:44px;height:44px;display:grid;place-items:center;font-size:22px}.frame-counter{display:flex;align-items:center;gap:12px;font:12px monospace;color:#b5b5b5}.counter-line{height:1px;width:65px;background:#555}.hero-progress{position:absolute;left:0;right:0;bottom:0;height:3px;background:#242424}.hero-progress i{display:block;height:100%;width:100%;transform:scaleX(var(--p,0));transform-origin:left;background:var(--red)}.section-pad{padding:90px 6% 105px}.eyebrow{display:flex;justify-content:space-between;gap:20px;font-size:12px;letter-spacing:1px;margin-bottom:65px}.intro-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:10%}h2{font-weight:500;font-size:clamp(45px,5.5vw,88px);letter-spacing:-.055em;line-height:1.04;margin:0}.muted{color:#8f8f8a}.intro-copy p{font-size:20px;line-height:1.65;margin:0 0 24px}.intro-copy p+p{color:#65655f;font-size:17px}.text-link{display:inline-flex;gap:60px;font-size:14px;border-bottom:1px solid #999;padding:10px 0;margin-top:18px}.world{padding-top:25px}.world>.eyebrow{border-top:1px solid var(--line);padding-top:30px}.world>h2{margin-bottom:65px}.world-list{border-top:1px solid var(--line)}details{border-bottom:1px solid var(--line)}summary{list-style:none;display:grid;grid-template-columns:60px 1fr 260px 45px;align-items:center;cursor:pointer;padding:32px 0;gap:15px}summary::-webkit-details-marker{display:none}.row-num{font-size:13px;color:#74746d}h3{margin:0;font-size:clamp(34px,4vw,64px);font-weight:500;letter-spacing:-.05em}.row-sub{font-size:14px;color:#6c6c65}.plus{font-size:35px;font-weight:300;text-align:right;transition:transform .25s}details[open] .plus{transform:rotate(45deg)}details[open] h3,summary:hover h3{color:var(--accent)}.detail-body{margin-left:75px;padding:0 0 35px;max-width:780px}.detail-body p{font-size:18px;line-height:1.6;color:#5b5b56;max-width:650px;margin:0 0 25px}.brand-tags{display:flex;gap:10px;flex-wrap:wrap}.brand-tags span{border:1px solid #c7c7c1;padding:9px 15px;border-radius:25px;font-size:14px}.capabilities{font-size:13px;line-height:1.6;margin-top:24px;color:#66665e}.statement{background:var(--red);padding-bottom:65px}.statement h2{font-size:clamp(58px,8.5vw,135px);letter-spacing:-.065em}.statement h2 span{color:#f5f5f2}.statement-bottom{display:flex;align-items:center;justify-content:space-between;margin-top:50px}.asterisk{font-size:120px;line-height:1}.statement-bottom p{max-width:430px;font-size:20px;line-height:1.5}.contact{background:var(--ink);color:var(--paper);padding-bottom:70px}.contact .eyebrow{color:#999}.contact-title{display:flex;justify-content:space-between;align-items:center}.contact-title h2{font-size:clamp(80px,12vw,190px);letter-spacing:-.07em}.contact-arrow{font-size:clamp(100px,17vw,230px);font-weight:300;color:var(--red);transition:transform .3s}.contact-title:hover .contact-arrow{transform:translate(8px,-8px)}.contact-bottom{display:flex;justify-content:space-between;align-items:end;margin-top:65px}.contact-bottom p{font-size:17px;line-height:1.6;color:#999;margin:0}.contact-bottom>a{font-size:clamp(17px,2vw,27px);border-bottom:1px solid #666;padding-bottom:10px}footer{background:var(--ink);color:#aaa;display:flex;align-items:center;justify-content:space-between;padding:30px 6%;border-top:1px solid #333;font-size:12px}footer .logo{color:var(--paper)}footer>a:last-child{font-size:14px}
@media(min-width:1700px){.portrait video{height:110%;margin-top:-3%}}@media(max-width:900px){.header-note{margin-left:35px}.header nav{gap:20px}.hero-title{top:42%}.hero-top{font-size:12px}.intro-grid{gap:6%}.intro-copy p{font-size:18px}summary{grid-template-columns:40px 1fr 190px 30px}.detail-body{margin-left:55px}.row-sub{font-size:12px}}@media(max-width:600px){.header{height:84px;padding:0 6%}.logo{font-size:45px}.header-note{margin-left:25px;font-size:12px}.header nav{display:none}.menu-toggle{display:flex;gap:12px;align-items:center;color:inherit;background:none;border:0;font-size:14px;padding:12px 0}.menu-toggle span{font-size:24px}.mobile-nav:not([hidden]){display:flex;position:absolute;z-index:9;top:84px;left:0;right:0;background:#171717;color:white;flex-direction:column;padding:20px 6% 30px;gap:22px;font-size:24px}.hero-sticky{min-height:560px}.hero-track{height:215svh}.hero-top{top:112px;left:6%;right:6%;font-size:12px;letter-spacing:1px}.hero-top span:last-child{display:none}.portrait video{height:90%;margin-top:6%;max-width:120%;object-fit:cover}.hero-title{left:6%;right:6%;top:47%}h1{font-size:clamp(57px,12.7vw,78px);line-height:1.03;letter-spacing:-.065em}h1 .last-line{margin-top:12px}.hero-bottom{left:6%;right:6%;bottom:30px}.hero-bottom p{font-size:13px}.scroll-cue{gap:10px}.scroll-cue>span:first-child{max-width:85px;font-size:12px;line-height:1.5}.scroll-arrow{height:35px;width:35px;font-size:18px}.frame-counter{display:none}.section-pad{padding:60px 6%}.eyebrow{font-size:12px;line-height:1.6;margin-bottom:38px}.eyebrow>span:last-child{text-align:right;max-width:135px}.intro-grid{grid-template-columns:1fr;gap:35px}.intro-copy p{font-size:18px}.intro-copy p+p{font-size:16px}.world{padding-top:10px}.world>h2{margin-bottom:35px}h2{font-size:45px}summary{grid-template-columns:26px 1fr 24px;gap:10px;padding:25px 0}h3{font-size:39px}.row-sub{display:none}.plus{font-size:28px}.detail-body{margin-left:36px}.detail-body p{font-size:16px}.capabilities{font-size:12px}.brand-tags span{font-size:12px}.statement h2{font-size:58px}.statement-bottom{gap:35px;margin-top:35px;align-items:start}.asterisk{font-size:75px}.statement-bottom p{font-size:16px;margin:0}.contact-title h2{font-size:78px}.contact-arrow{font-size:90px}.contact-bottom{align-items:start;gap:30px;flex-direction:column;margin-top:40px}footer{flex-wrap:wrap;gap:25px}footer .logo{flex-basis:40%}footer>span{font-size:12px}footer>span:nth-child(3){flex-basis:40%}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}.hero-track{height:100svh;min-height:560px}.hero-title{transform:none}}
/* 4S v1.1 — page identities */
.header .logo{position:absolute;left:50%;transform:translateX(-50%)}.header .nav-left{margin-right:auto}.header .nav-right{margin-left:auto}.inner .header{color:var(--ink);border-bottom:1px solid var(--line)}.inner main{padding-top:100px}.inner .mobile-nav{color:white}.expertise{padding-top:25px}.expertise>h2{margin-bottom:60px}.service summary{grid-template-columns:60px 1fr 40px}.service h3{font-size:clamp(30px,3.7vw,58px);transition:transform .3s,color .3s}.service summary p{font-size:15px;color:#70706a;margin:12px 0 0}.service summary:hover h3{transform:translateX(10px);color:var(--red)}.service[open] h3{color:var(--red)}.service .detail-body{max-width:800px}.process-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:6%;margin-top:65px}.process-grid>div{border-top:1px solid #9c211a;padding-top:22px}.process-grid span{font-size:12px;letter-spacing:1px}.process-grid h3{font-size:28px;margin:24px 0 12px;letter-spacing:-1px}.process-grid p{font-size:16px;line-height:1.65}.section-heading{display:flex;align-items:end;justify-content:space-between;margin-bottom:55px;gap:30px}.section-heading p{font-size:17px;line-height:1.6;color:#666}.article-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px}.type-cover{aspect-ratio:1/1.05;display:flex;flex-direction:column;justify-content:space-between;padding:25px;background:#dcded6;overflow:hidden;transition:transform .4s}.type-cover>span{font-size:12px;letter-spacing:1px}.type-cover strong{font-size:clamp(35px,4vw,62px);font-weight:500;letter-spacing:-.055em;line-height:1.03}.cover-02{background:#bfc5d1}.cover-03{background:#ed4939}.editorial-card:hover .type-cover{transform:translateY(-7px)}.editorial-card h3{font-size:27px;line-height:1.15;letter-spacing:-1px}.editorial-card>p{font-size:15px;line-height:1.6;color:#65655e}.card-meta{display:flex;justify-content:space-between;gap:10px;font-size:12px;letter-spacing:.5px;margin:22px 0 15px}.read-link{font-size:14px;display:inline-block;margin-top:10px;border-bottom:1px solid #bbb;padding-bottom:8px}.social-strip{background:#c6cdd8}.social-strip h2{font-size:clamp(50px,7vw,100px)}.social-links{display:grid;grid-template-columns:repeat(4,1fr);margin-top:65px;gap:30px}.social-links a{font-size:22px;border-top:1px solid #929aa7;padding-top:20px;display:flex;justify-content:space-between}.social-links a:hover{color:#555}.eco-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:30px}.eco-grid h3{font-size:27px;letter-spacing:-1px}.eco-grid p{font-size:13px;line-height:1.8;color:#666}.journal-mast{border-bottom:1px solid var(--line)}.journal-mast h1{font-size:clamp(65px,12vw,180px)}.journal-mast>p{font-size:22px;line-height:1.5;margin-bottom:0}.journal-index{padding-top:35px}.filters{display:flex;gap:10px;flex-wrap:wrap}.filters button{background:transparent;border:1px solid #bbb;border-radius:30px;padding:10px 18px;cursor:pointer}.filters button.active{background:var(--ink);color:white;border-color:var(--ink)}.filter-status{font-size:13px;color:#666;margin:22px 0 35px}.editorial-card[hidden]{display:none}.article-head{padding:65px 6% 55px;max-width:1300px;margin:auto}.article-head>a{font-size:14px}.article-head .card-meta{margin-top:50px}.article-head h1{font-size:clamp(42px,6vw,85px);line-height:1.08;max-width:1050px}.article-deck{font-size:22px;line-height:1.5;color:#6a6a63}.byline{display:flex;gap:15px;align-items:center;margin-top:30px}.author-mark{background:var(--ink);color:white;padding:14px;font-size:20px;font-weight:bold;letter-spacing:-2px}.byline div{display:flex;flex-direction:column;gap:7px}.byline strong{font-size:14px}.byline div>span{font-size:12px;color:#666}.article-layout{border-top:1px solid var(--line);display:grid;grid-template-columns:230px minmax(0,720px);gap:7%;padding:55px 6% 100px;max-width:1300px;margin:auto}.article-layout aside{position:sticky;top:30px;align-self:start;display:flex;flex-direction:column;gap:20px}.article-layout aside>span{font-size:12px;letter-spacing:1px}.article-layout aside>a{font-size:14px;line-height:1.5;color:#666}.copy-link{background:none;border:0;border-top:1px solid #ccc;padding:20px 0;text-align:left;cursor:pointer;font-size:14px}.article-body p{font-size:19px;line-height:1.85;color:#454540}.article-body h2{font-size:34px;line-height:1.15;letter-spacing:-1px;margin-top:50px}.article-summary{background:#e9e9e3;border-left:3px solid var(--red);padding:25px 30px}.article-summary p{font-size:17px;margin-bottom:0}.author-box{border-top:1px solid #ccc;margin-top:50px;padding-top:30px}.author-box h3{font-size:24px}.author-box p{font-size:15px}.related{display:flex;flex-direction:column;gap:20px;margin-top:35px}.related>span{font-size:12px}.related>a{font-size:20px;border-bottom:1px solid #ccc;padding-bottom:15px}.reading-progress{position:fixed;top:0;left:0;height:3px;background:var(--red);width:0;z-index:50}.social-mast{background:#c6cdd8}.social-mast h1{font-size:clamp(90px,15vw,210px)}.social-mast h1 span{color:#647288}.social-mast>p{font-size:22px;line-height:1.5}.channel-list{display:grid;grid-template-columns:1fr 1fr;gap:65px}.channel-list article{border-top:1px solid #aaa;padding-top:25px;scroll-margin-top:50px}.channel-list article>span:first-child{font-size:12px;letter-spacing:1px}.channel-list h2{font-size:55px;margin-top:28px}.channel-list p{font-size:18px;line-height:1.6;max-width:400px}.account-pending{font-size:13px;color:#666}.contact-page{background:#eae9e2;min-height:85vh}.contact-layout{display:grid;grid-template-columns:1.1fr 1fr;gap:10%}.contact-layout h1{font-size:clamp(65px,9vw,140px);line-height:1}.contact-layout>div>p{font-size:20px;line-height:1.5;margin-top:35px}.email-address{display:inline-block;font-size:18px;border-bottom:1px solid #999;padding-bottom:10px;margin-top:20px}form{display:flex;flex-direction:column;gap:22px}form label{display:flex;flex-direction:column;gap:10px;font-size:14px}input,select,textarea{font:inherit;font-size:16px;border:0;border-bottom:1px solid #999;border-radius:0;background:transparent;color:var(--ink);padding:12px 0;width:100%}textarea{resize:vertical}form button{background:var(--ink);color:white;border:0;padding:20px;text-align:left;cursor:pointer}form button:hover{background:var(--red)}.form-note{font-size:12px;line-height:1.5;color:#666;margin:0}#form-status{font-size:14px;line-height:1.5}footer{gap:20px;flex-wrap:wrap}
@media(max-width:900px){.header nav{gap:15px;font-size:12px}.service summary{grid-template-columns:35px 1fr 30px}.service .detail-body{margin-left:50px}.article-grid{gap:20px}.editorial-card h3{font-size:23px}.social-links{grid-template-columns:1fr 1fr}.eco-grid{grid-template-columns:1fr 1fr}.article-layout{grid-template-columns:175px minmax(0,1fr);gap:5%}.contact-layout{gap:5%}}
@media(max-width:600px){.header .logo{font-size:46px}.header .menu-toggle{margin-left:auto}.inner main{padding-top:84px}.service summary p{font-size:13px;line-height:1.5}.service h3{font-size:30px}.service .detail-body{margin-left:0}.expertise>h2{margin-bottom:35px}.process-grid{grid-template-columns:1fr;gap:20px;margin-top:40px}.process-grid h3{margin:14px 0 8px}.process-grid p{margin:0 0 10px}.statement h2{font-size:48px}.section-heading{display:block;margin-bottom:30px}.section-heading p{font-size:16px}.article-grid{grid-template-columns:1fr;gap:45px}.type-cover{aspect-ratio:1.3}.type-cover strong{font-size:58px}.editorial-card h3{font-size:29px}.social-links{gap:25px}.social-links a{font-size:20px}.eco-grid{gap:35px 15px}.eco-grid h3{font-size:23px}.journal-mast h1{font-size:65px}.journal-mast>p{font-size:18px}.article-head{padding-top:40px}.article-head h1{font-size:43px}.article-deck{font-size:19px}.article-layout{display:block;padding-top:30px}.article-layout aside{position:static;margin-bottom:40px}.article-layout aside>a{font-size:14px}.article-body p{font-size:18px}.article-body h2{font-size:30px}.article-summary{padding:22px}.channel-list{grid-template-columns:1fr;gap:50px}.channel-list h2{font-size:48px}.contact-layout{grid-template-columns:1fr;gap:55px}.contact-layout h1{font-size:85px}.email-address{font-size:16px}}
/* v2 visual system */
img{max-width:100%;height:auto}.home-works{background:#e9e9e5}.home-project{display:block}.project-image{position:relative;overflow:hidden;background:#222}.project-image img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .7s cubic-bezier(.2,.7,.2,1)}.home-project:hover .project-image img{transform:scale(1.035)}.home-project-large .project-image{aspect-ratio:1.8}.project-open{position:absolute;right:25px;bottom:25px;width:54px;height:54px;border-radius:50%;background:var(--paper);color:var(--ink);display:grid;place-items:center;font-size:28px;transition:transform .3s}.home-project:hover .project-open{transform:rotate(45deg)}.project-caption{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:23px 0}.project-caption h3{font-size:32px;letter-spacing:-1.2px}.project-caption>span{font-size:12px;letter-spacing:1px}.home-project-pair{display:grid;grid-template-columns:1fr 1fr;gap:35px;margin-top:30px}.home-project-pair .project-image{aspect-ratio:1.2}.home-project-pair .project-caption{display:block}.home-project-pair .project-caption>span{display:block;margin-top:12px}.home-about{display:grid;grid-template-columns:1fr 1fr;background:#141414;color:#eee}.home-about-visual{position:relative;min-height:650px;overflow:hidden}.home-about-visual img{width:100%;height:100%;object-fit:cover}.home-about-visual:after{content:'';position:absolute;inset:50% 0 0;background:linear-gradient(transparent,#000a)}.home-about-visual>span{position:absolute;left:45px;bottom:40px;z-index:1;font-size:12px;line-height:1.8;letter-spacing:1px}.home-about-copy{padding:65px 10%}.home-about-copy .eyebrow{color:#aaa;margin-bottom:35px}.team-number{font-size:120px;font-weight:500;letter-spacing:-8px;display:flex;align-items:center;gap:25px}.team-number>span{font-size:13px;font-weight:400;letter-spacing:0;line-height:1.5;color:#aaa}.home-about-copy h2{font-size:clamp(35px,3.8vw,60px);margin-top:35px}.home-about-copy p{font-size:17px;line-height:1.7;color:#aaa}.home-about-copy .text-link{font-size:13px}.type-cover{padding:0;position:relative;aspect-ratio:1.3}.type-cover img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .7s}.editorial-card:hover .type-cover img{transform:scale(1.04)}.type-cover .editorial-cover-label{position:absolute;left:18px;bottom:16px;color:white;padding:8px 10px;background:#000a;font-size:12px}.blog-feature{display:grid;grid-template-columns:1.1fr 1fr;gap:6%;align-items:center;border-bottom:1px solid var(--line)}.blog-feature>a{display:block}.blog-feature img{width:100%;display:block;aspect-ratio:1.2;object-fit:cover}.blog-feature .eyebrow{margin-bottom:35px}.blog-feature h2{font-size:clamp(35px,4vw,60px)}.blog-feature p{font-size:18px;line-height:1.7;color:#666}.journal-search{display:flex;justify-content:space-between;gap:30px;align-items:end;margin-bottom:35px}.journal-search h2{font-size:38px}.journal-search label{display:flex;flex-direction:column;gap:5px;min-width:260px}.journal-search label span{font-size:12px}.editorial-note{border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 2fr 1fr;gap:40px;align-items:center}.editorial-note>span{font-size:12px;letter-spacing:1px}.editorial-note p{font-size:24px;line-height:1.5;letter-spacing:-.5px;margin:0}.editorial-note>a{text-align:right;font-size:14px}.article-visual{margin:0 auto;max-width:1144px;padding:0 6% 40px}.article-visual img{width:100%;aspect-ratio:2;object-fit:cover}.article-visual figcaption{font-size:12px;color:#777;margin-top:12px}.social-mast{position:relative;overflow:hidden}.social-mast h1{font-size:clamp(90px,13vw,190px)}.channel-list{gap:35px}.channel-list article{padding:0;border:0;overflow:hidden}.channel-card>img{width:100%;aspect-ratio:1.25;object-fit:cover;display:block}.channel-content{padding:30px;background:#e9e9e3}.channel-content>span:first-child{font-size:12px;letter-spacing:1px}.channel-content h2{font-size:45px;margin-top:20px}.channel-content p{font-size:17px}.channel-list article:nth-child(2) .channel-content{background:#c6cdd8}.channel-list article:nth-child(3) .channel-content{background:#151515;color:#eee}.channel-list article:nth-child(3) .account-pending{color:#aaa}.social-bottom{background:#ef392d;display:flex;align-items:end;justify-content:space-between;gap:30px}.contact-tabs{display:flex;border-bottom:1px solid #aaa;margin-bottom:5px}.contact-tabs button{padding:12px 16px;background:transparent;color:#777;text-align:center;border-bottom:2px solid transparent;font-size:14px}.contact-tabs button.active{background:transparent;color:var(--ink);border-color:var(--ink)}.contact-tabs button:hover{background:#d5d5ce;color:#111}.optional{font-size:12px;color:#777}form label:has(.optional){position:relative}.contact-more{display:grid;grid-template-columns:1fr 1fr;gap:10%}.contact-more>div>span{font-size:12px;letter-spacing:1px;display:block;margin-bottom:35px}.contact-more h2{font-size:46px}.contact-more p{font-size:19px;line-height:1.75;color:#666;margin-top:0}.contact-route{border-top:1px solid #ccc;padding:20px 0;display:flex;justify-content:space-between;gap:20px;font-size:14px}.contact-route>span{color:#777}.site-footer{display:block;padding:65px 6% 25px}.footer-top{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:60px;padding-bottom:55px}.footer-brand .logo{font-size:90px;letter-spacing:-8px}.footer-brand>p{font-size:14px;line-height:1.7;color:#888;max-width:250px}.footer-col{display:flex;flex-direction:column;gap:15px;align-items:start}.footer-col>span{font-size:12px;letter-spacing:1px;color:#666;margin-bottom:8px}.footer-col>a{font-size:16px;color:#ddd}.footer-col>a:hover{color:var(--red)}.footer-bottom{border-top:1px solid #333;padding-top:25px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:18px;font-size:12px}.footer-bottom button{color:#aaa;background:none;padding:0;border:0;cursor:pointer;font-size:12px}.footer-bottom button:hover{color:white}.no-results{padding:30px 0;font-size:18px}.no-results[hidden]{display:none}
@media(max-width:1000px){.home-about-visual{min-height:580px}.home-about-copy{padding:45px 8%}.team-number{font-size:95px}.home-about-copy h2{font-size:40px}.project-caption h3{font-size:26px}.footer-top{gap:30px}.editorial-note{grid-template-columns:1fr 2fr}.editorial-note>a{grid-column:2;text-align:left}}
@media(max-width:600px){.home-project-large .project-image{aspect-ratio:1.15}.home-project-pair{grid-template-columns:1fr;gap:25px;margin-top:20px}.project-caption{display:block}.project-caption>span{display:block;margin-top:12px}.project-caption h3{font-size:29px}.project-open{width:42px;height:42px;font-size:22px;right:15px;bottom:15px}.home-about{grid-template-columns:1fr}.home-about-visual{min-height:0;height:340px}.home-about-visual>span{left:6%;bottom:25px}.home-about-copy{padding:45px 6% 60px}.team-number{font-size:105px}.home-about-copy h2{font-size:45px}.blog-feature{grid-template-columns:1fr;gap:35px}.blog-feature .eyebrow{margin-bottom:25px}.journal-search{align-items:start;flex-direction:column;gap:25px}.journal-search label{width:100%;min-width:0}.editorial-note{display:block}.editorial-note p{font-size:22px;margin:25px 0}.article-visual img{aspect-ratio:1.3}.channel-content{padding:25px}.social-bottom{display:block}.contact-more{grid-template-columns:1fr;gap:35px}.contact-more h2{font-size:39px}.contact-route{font-size:13px}.footer-top{grid-template-columns:1fr 1fr;gap:35px}.footer-brand{grid-column:1/-1}.footer-brand .logo{font-size:80px}.footer-brand>p{max-width:none}.footer-bottom{font-size:12px}.site-footer .logo{flex-basis:auto}.type-cover{aspect-ratio:1.3}}@media(prefers-reduced-motion:reduce){.home-project:hover .project-image img,.editorial-card:hover .type-cover img{transform:none}}
.work-page .four-header{color:#111}.author-profile>h1{font-size:clamp(60px,9vw,135px);margin-bottom:65px}.author-profile .intro-grid{padding-top:45px;border-top:1px solid var(--line)}.error-page{min-height:70vh}.error-page h1{font-size:clamp(45px,7vw,100px);line-height:1.08}.error-page>p{font-size:18px;line-height:1.7;margin-top:35px}.error-page .text-link{margin-right:35px}.four-menu-trigger,.four-menu-close{font-size:13px}.footer-bottom{font-size:12px}.footer-bottom button{font-size:12px}.footer-col>span{font-size:12px}.four-header-caption{font-size:12px}@media(max-width:600px){.footer-col>a{font-size:14px}.footer-col:last-child>a:last-child{font-size:12px;overflow-wrap:anywhere}.four-header-caption{font-size:12px}.four-menu-trigger{font-size:12px}}
/* Social + quick contact shared shell */
.footer-social{display:flex;flex-wrap:wrap;gap:8px;margin-top:15px}.footer-social-icon{width:34px;height:34px;border:1px solid #555;border-radius:50%;display:grid;place-items:center;font-weight:600;font-size:13px;color:#eee}.footer-social-icon.is-unavailable{color:#8f8f89;border-color:#43433f;cursor:default}.footer-social-icon[href]:hover{background:#ef392d;border-color:#ef392d;color:#111}.floating-tools{position:fixed;z-index:35;bottom:23px;right:24px;display:flex;align-items:end;gap:7px}.floating-tools>a,.floating-tools>button{height:48px;min-width:48px;border:1px solid #555;border-radius:50%;background:#191919;color:white;display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 6px 20px #0004;font-size:22px}.floating-tools>a:first-child{width:auto;padding:0 17px;border-radius:26px;background:#ef392d;color:#111;border-color:#ef392d;font-size:24px;gap:9px}.floating-tools>a:first-child span{font-size:12px;letter-spacing:1px;font-weight:600}.floating-tools>button{opacity:0;transform:translateY(20px);pointer-events:none;transition:opacity .2s,transform .2s}.floating-tools>button.is-visible{opacity:1;transform:none;pointer-events:auto}.floating-tools>a:hover,.floating-tools>button:hover{transform:translateY(-3px)}.four-menu-lock .floating-tools{visibility:hidden}.home-journal-top{display:flex;align-items:end;justify-content:space-between;gap:40px}.home-journal-top>p{font-size:18px;max-width:340px;line-height:1.6}.home .journal{background:#f2f2ed}.home-editorial-feature{display:grid;grid-template-columns:1.15fr 1fr;gap:5%;align-items:center;margin:35px 0 70px}.home-editorial-feature>div:first-child{background:#222;min-height:430px;overflow:hidden}.home-editorial-feature img{width:100%;height:100%;object-fit:cover;min-height:430px;display:block}.home-editorial-feature .feature-copy>span{font-size:12px;letter-spacing:1px;color:#df3329}.home-editorial-feature h3{font-size:clamp(35px,4.6vw,68px);font-weight:500;line-height:1;letter-spacing:-.055em;margin:30px 0}.home-editorial-feature p{font-size:18px;line-height:1.7;color:#666}.home-category-rail{display:flex;flex-wrap:wrap;gap:8px;margin:45px 0 25px}.home-category-rail a{border:1px solid #b9b9b0;border-radius:30px;padding:11px 15px;font-size:13px}.home-category-rail a:hover{background:#101010;color:white}.editorial-on-home{margin-top:70px}.motion-reel{background:#101010;color:#f5f5f2;display:grid;grid-template-columns:1fr 1.5fr;gap:6%;align-items:center;padding:90px 6%}.motion-reel .eyebrow{color:#a9a9a3}.motion-reel h2{font-size:clamp(44px,5vw,78px)}.motion-reel p{color:#aaa;font-size:17px;line-height:1.7}.motion-reel figure{margin:0;position:relative;overflow:hidden}.motion-reel video{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;background:#202020}.motion-reel figcaption{font-size:12px;letter-spacing:1px;margin-top:15px;color:#b5b5b0}.motion-reel:focus-within{outline:0}
@media(max-width:750px){.floating-tools{right:12px;bottom:12px;gap:5px}.floating-tools>a,.floating-tools>button{height:43px;min-width:43px;font-size:19px}.floating-tools>a:first-child{padding:0 11px}.floating-tools>a:first-child span{font-size:12px}.home-editorial-feature,.motion-reel{grid-template-columns:1fr;gap:35px}.home-editorial-feature>div:first-child,.home-editorial-feature img{min-height:260px}.home-editorial-feature h3{font-size:46px}.motion-reel{padding:70px 6%}.footer-social-icon{width:32px;height:32px}.home-journal-top{display:block}}
.home-project-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:35px 25px}.home-project-grid .home-project-0{grid-column:1/-1}.home-project-grid .home-project-0 .project-image{aspect-ratio:1.85}.home-project-grid .home-project:not(.home-project-0) .project-image{aspect-ratio:1.22}.home-project-grid .project-caption{display:block}.home-project-grid .project-caption>span{display:block;margin-top:6px;color:#686861;line-height:1.5;font-size:12px;letter-spacing:0}.home-project-grid .project-caption h3{font-size:clamp(29px,3.8vw,56px);margin:0}.image-label{position:absolute;bottom:16px;left:17px;background:#111c;color:white;font-size:12px;letter-spacing:.5px;padding:10px}.works-note{font-size:12px;line-height:1.6;color:#75756f;max-width:660px;margin-top:30px}.home-works>.text-link{margin-top:50px}@media(max-width:600px){.home-project-grid{display:block}.home-project-grid .home-project{margin-bottom:26px}.home-project-grid .home-project-0 .project-image,.home-project-grid .home-project:not(.home-project-0) .project-image{aspect-ratio:1.16}.image-label{font-size:12px;max-width:220px}.home-project-grid .project-caption h3{font-size:36px}}
.brand-ticker{overflow:hidden;white-space:nowrap;background:#ef392d;color:#101010;border-block:1px solid #ae3228;padding:19px 0;font-size:clamp(16px,2.2vw,31px);font-weight:600;letter-spacing:-.04em}.brand-ticker>div{width:max-content;animation:brand-scroll 27s linear infinite}@keyframes brand-scroll{to{transform:translateX(-50%)}}.blog-diagram{padding-top:45px;padding-bottom:20px;background:#ecece7}.blog-diagram figure{margin:0}.motion-observe{opacity:.55;transform:translateY(35px);transition:opacity .7s cubic-bezier(.2,.7,.2,1),transform .7s cubic-bezier(.2,.7,.2,1)}.motion-visible{opacity:1;transform:none}.case-progress{position:fixed;top:0;left:0;right:0;height:3px;background:#ef392d;transform:scaleX(0);transform-origin:left;z-index:120;pointer-events:none}@media(prefers-reduced-motion:reduce){.brand-ticker>div{animation:none}.motion-observe{opacity:1;transform:none}}
.motion-reel .reel-toggle{position:absolute;top:16px;right:16px;background:#101010c9;border:1px solid #fff8;color:white;padding:11px 15px;font-size:12px;letter-spacing:1px;cursor:pointer}.motion-reel .reel-toggle:hover{background:#ef392d;color:#111}

.consent-banner{position:fixed;z-index:1200;left:24px;right:24px;bottom:24px;padding:25px 28px;background:#f0eee8;color:#151515;border:1px solid #d1cec6;box-shadow:0 12px 65px #0005;display:flex;align-items:center;justify-content:space-between;gap:32px}.consent-banner[hidden]{display:none}.consent-copy{max-width:620px}.consent-kicker{font-size:12px;font-weight:700;letter-spacing:.16em}.consent-copy h2{font-size:25px;letter-spacing:-.045em;margin:7px 0}.consent-copy p,.consent-intro,.consent-fine{font-size:12px;line-height:1.65;margin:0}.consent-banner a,.consent-dialog a{text-decoration:underline;text-underline-offset:3px}.consent-actions{display:flex;gap:8px;flex-wrap:wrap}.consent-actions button{appearance:none;border:1px solid #151515;background:transparent;color:#151515;font:inherit;font-size:12px;font-weight:600;padding:12px 15px;cursor:pointer;min-height:44px}.consent-actions button:hover{background:#151515;color:#fff}.consent-actions button:focus-visible,.consent-close:focus-visible,.consent-option input:focus-visible{outline:3px solid #df332d;outline-offset:3px}.consent-dialog{position:fixed;inset:0;margin:auto;width:min(620px,calc(100% - 32px));max-height:calc(100dvh - 48px);overflow:auto;border:1px solid #d1cec6;padding:32px;background:#f0eee8;color:#151515;box-shadow:0 20px 100px #0007}.consent-dialog::backdrop{background:#000b;backdrop-filter:blur(8px)}.consent-dialog-head{display:flex;justify-content:space-between;align-items:center}.consent-close{border:0;background:none;color:#151515;font-size:30px;width:44px;height:44px;cursor:pointer}.consent-dialog h2{font-size:clamp(30px,5vw,44px);font-weight:500;line-height:1.05;letter-spacing:-.06em;margin:20px 0}.consent-intro{margin-bottom:24px}.consent-option{display:flex;align-items:center;justify-content:space-between;gap:24px;border-top:1px solid #ccc9c2;padding:20px 0;font-size:14px}.consent-option p,.consent-detail{display:block;margin:6px 0 0;font-size:12px;line-height:1.5;color:#53514d}.consent-always{font-size:12px;white-space:nowrap;text-transform:uppercase}.consent-option input{accent-color:#d52e27;width:22px;height:22px;flex-shrink:0}.consent-dialog .consent-actions{margin:12px 0 20px}.consent-status{position:fixed;z-index:1300;bottom:24px;left:50%;transform:translate(-50%,20px);padding:16px 22px;background:#f0eee8;color:#151515;border:1px solid #d1cec6;box-shadow:0 5px 30px #0003;font-size:12px;max-width:calc(100% - 32px);opacity:0;pointer-events:none;transition:.2s}.consent-status.is-visible{opacity:1;transform:translate(-50%,0)}.legal-page{max-width:1040px;margin:0 auto;padding:160px 6vw 100px}.legal-page h1{font-size:clamp(48px,8vw,100px);letter-spacing:-.065em;line-height:1.03;margin:28px 0 45px}.legal-page .legal-lead{font-size:21px;line-height:1.6;max-width:780px}.legal-page section{max-width:780px;padding:26px 0;border-top:1px solid #ffffff25}.legal-page h2{font-size:24px;letter-spacing:-.035em;margin:0 0 14px}.legal-page p,.legal-page li{font-size:15px;line-height:1.85;color:#aaa}.legal-page a{text-decoration:underline;text-underline-offset:4px}.legal-page table{width:100%;border-collapse:collapse;font-size:13px}.legal-page th,.legal-page td{border-bottom:1px solid #ffffff25;padding:14px 8px;text-align:left;vertical-align:top;overflow-wrap:anywhere}.legal-page button[data-consent-open]{padding:15px 20px;border:1px solid #aaa;background:transparent;color:inherit;font:inherit;cursor:pointer}@media(max-width:900px){.consent-banner{align-items:flex-start;flex-direction:column;gap:16px}}@media(max-width:600px){.consent-banner{left:12px;right:12px;bottom:12px;padding:20px;max-height:70dvh;overflow:auto}.consent-banner .consent-actions{width:100%}.consent-actions button{flex:1 1 140px}.consent-dialog{padding:22px}.legal-page{padding-top:130px}.legal-page table{font-size:12px}.legal-page th,.legal-page td{padding:10px 4px}}@media(prefers-reduced-motion:reduce){.consent-status{transition:none}}

.four-header{position:absolute;z-index:40;top:0;left:0;width:100%;height:112px;padding:0 4%;display:flex;align-items:center;justify-content:space-between;color:#f5f5f2}.inner .four-header{color:#111}.four-header-caption{font-size:12px;line-height:1.45;letter-spacing:.03em}.four-logo{position:absolute;left:50%;top:26px;transform:translateX(-50%);font-size:64px;font-weight:900;letter-spacing:-6px;line-height:1}.four-logo span{font-size:12px;letter-spacing:0;position:absolute;top:3px;right:-13px}.four-menu-trigger,.four-menu-close{display:flex;gap:22px;align-items:center;justify-content:center;cursor:pointer;border:0;background:transparent;color:inherit;font-size:12px;font-weight:600;letter-spacing:.09em;padding:14px 0}.four-menu-trigger i{position:relative;width:28px;height:12px}.four-menu-trigger i:before,.four-menu-trigger i:after{content:'';position:absolute;left:0;height:1px;width:28px;background:currentColor;transition:transform .3s}.four-menu-trigger i:before{top:2px}.four-menu-trigger i:after{bottom:2px;width:19px;left:auto;right:0}.four-menu-trigger:hover i:before{transform:translateX(-4px)}.four-menu-trigger:hover i:after{transform:translateX(4px)}body.four-menu-lock{position:fixed;top:var(--four-scroll-y);width:100%;overflow:hidden}.four-menu[hidden]{display:none!important}.four-menu{position:fixed;z-index:1000;inset:0;color:#f5f5f2;background:#101010;padding:0 4%;display:flex;flex-direction:column;overflow-y:auto;overscroll-behavior:contain;isolation:isolate}.four-menu:before{content:'';position:absolute;width:500px;height:500px;right:-250px;top:150px;border:1px solid #2d2d2d;border-radius:50%;pointer-events:none;z-index:-1}.four-menu-top{height:96px;min-height:96px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #383838;font-size:12px;letter-spacing:.1em}.four-menu-close{padding:12px 0 12px 20px}.four-menu-close b{font-size:35px;line-height:1;font-weight:300;transition:transform .4s}.four-menu-close:hover b{transform:rotate(90deg)}.four-menu-body{flex:1;display:grid;grid-template-columns:1fr .4fr;gap:8vw;align-items:center;padding:24px 0}.four-menu-body nav a{display:flex;gap:25px;align-items:center;border-bottom:1px solid #303030;padding:10px 0;opacity:0;transform:translateY(32px);transition:transform .7s cubic-bezier(.2,.8,.2,1),opacity .6s,color .2s;transition-delay:calc(var(--order)*45ms)}.four-menu.is-open nav a{opacity:1;transform:none}.four-menu-index{font-size:12px;align-self:flex-start;padding-top:12px;letter-spacing:.05em;color:#92928c}.four-menu-label{font-size:clamp(36px,4.8vw,78px);font-weight:500;letter-spacing:-.055em;line-height:1.05;transition:transform .3s}.four-menu-arrow{font-size:40px;margin-left:auto;opacity:0;transform:translate(-10px,10px);transition:all .25s}.four-menu nav a:hover,.four-menu nav a[aria-current]{color:#ef392d}.four-menu nav a:hover .four-menu-label{transform:translateX(12px)}.four-menu nav a:hover .four-menu-arrow,.four-menu nav a:focus-visible .four-menu-arrow{opacity:1;transform:none}.four-menu-body aside{align-self:center}.four-menu-orbit{display:block;color:#ef392d;font-size:100px;line-height:1;animation:four-orbit 24s linear infinite;width:max-content}.four-menu-body aside p{font-size:clamp(30px,3vw,48px);letter-spacing:-.05em;line-height:1.1;margin:36px 0 24px}.four-menu-body aside>span:not(.four-menu-orbit){color:#92928c;font-size:13px;line-height:1.6}.four-menu-body aside>a{display:block;margin-top:35px;font-size:12px;text-decoration:underline;text-underline-offset:7px}.four-menu-bottom{display:flex;justify-content:space-between;align-items:center;min-height:66px;border-top:1px solid #383838;font-size:12px;letter-spacing:.09em;color:#a2a29b}.four-menu a:focus-visible,.four-menu button:focus-visible{outline:2px solid #ef392d;outline-offset:4px}.four-in-view{animation:four-reveal-in .8s cubic-bezier(.16,1,.3,1) both}@keyframes four-reveal-in{from{transform:translateY(22px);opacity:.65}to{transform:translateY(0);opacity:1}}@keyframes four-orbit{to{transform:rotate(360deg)}}@media(min-width:1600px){.four-menu-body{max-width:1700px;width:100%;margin:auto}}@media(max-width:760px){.four-header{height:90px;padding:0 6%}.four-logo{font-size:52px;top:22px;letter-spacing:-5px}.four-header-caption{font-size:12px}.four-menu-trigger{gap:10px;font-size:12px}.four-menu-trigger i{width:24px}.four-menu-trigger i:before{width:24px}.four-menu{padding:0 6%}.four-menu-top{height:82px;min-height:82px;font-size:12px}.four-menu-body{display:block;padding:28px 0}.four-menu-body nav a{padding:13px 0;gap:17px}.four-menu-label{font-size:clamp(33px,8vw,55px)}.four-menu-index{padding-top:8px}.four-menu-arrow{font-size:28px;opacity:1;transform:none}.four-menu-body aside{display:none}.four-menu-bottom{font-size:12px;gap:15px;min-height:62px}.four-menu-bottom>span:first-child{max-width:110px}.four-menu-bottom>span:last-child{white-space:nowrap}}@media(max-height:650px) and (min-width:761px){.four-menu-top{height:68px;min-height:68px}.four-menu-label{font-size:40px}.four-menu-body nav a{padding:7px 0}.four-menu-body{padding:15px 0}.four-menu-orbit{font-size:60px}.four-menu-body aside p{margin:20px 0}.four-menu-bottom{min-height:48px}}@media(prefers-reduced-motion:reduce){.four-menu *,.four-header *,.four-in-view{animation:none!important;transition:none!important}.four-menu-body nav a{opacity:1;transform:none}}

/* Keep background preferences out of the menu's modal layer. */
body.four-menu-lock .consent-banner,body.four-menu-lock .consent-status{visibility:hidden}
.four-menu.is-closing{animation:four-menu-exit .34s ease both;pointer-events:none}
.four-menu.is-closing nav a{transition-delay:0ms;transition-duration:.2s;transform:translateY(-12px)}
@keyframes four-menu-exit{to{opacity:0;transform:translateY(-14px)}}
@media(prefers-reduced-motion:reduce){.four-menu.is-closing{animation:none!important}}

/* Social accounts live in the full-screen navigation. Account links are configured in JS. */
.four-menu-bottom{gap:28px;min-height:95px}
.four-social{display:flex;gap:22px;align-items:center;min-width:0}
.four-social-title{font-size:12px;letter-spacing:.12em;white-space:nowrap;color:#a2a29b}
.four-social-icons{display:flex;flex-wrap:wrap;align-items:center;gap:7px}
.four-social-icon{width:31px;height:31px;display:inline-flex;justify-content:center;align-items:center;position:relative;border:1px solid #50504f;border-radius:50%;font-family:var(--font-ui),Arial,sans-serif;font-size:13px;font-weight:700;letter-spacing:-.06em;color:#f5f5f2;transition:background-color .3s,border-color .3s,transform .3s,color .3s}
.four-social-icon svg{display:block;width:16px;height:16px}
.four-social-icon:not(.is-unavailable):hover,.four-social-icon:not(.is-unavailable):focus-visible{background:#ef392d;border-color:#ef392d;color:#fff;transform:translateY(-4px)}
.four-social-icon.is-unavailable{color:#8d8d87;border-color:#3d3d3b;cursor:default}
.four-social-icon.four-social-youtube{font-size:12px}
.four-social-icon.four-social-tiktok{font-size:17px}
.four-social-tooltip{position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%,5px);padding:6px 9px;border-radius:3px;background:#eee;color:#161616;font-size:12px;font-weight:500;letter-spacing:0;white-space:nowrap;opacity:0;pointer-events:none;transition:opacity .2s,transform .2s}
.four-social-icon:hover .four-social-tooltip,.four-social-icon:focus-visible .four-social-tooltip{opacity:1;transform:translate(-50%,0)}
.four-menu-home,.four-menu-copyright{white-space:nowrap}
.four-menu-body nav a:focus-visible .four-menu-label{transform:translateX(12px)}
@media(max-width:760px){.four-menu-bottom{flex-wrap:wrap;gap:8px 18px;min-height:115px;padding:14px 0}.four-social{width:100%;justify-content:space-between;gap:8px}.four-social-title{font-size:12px}.four-social-icons{gap:5px}.four-social-icon{width:29px;height:29px}.four-menu-home{margin-right:auto}.four-menu-copyright{margin-left:auto}}
@media(max-width:390px){.four-social-title{display:none}.four-social-icons{width:100%;justify-content:space-between}}
@media(max-height:650px) and (min-width:761px){.four-menu-bottom{min-height:74px}.four-social-title{display:none}}
