
:root{--paper:#ebe6dd;--sage:#dce0d5;--ink:#42473f;--plum:#493e49;--lilac:#c7bdcc;--clay:#cbb7a7;--margin:clamp(22px,4.3vw,84px);--display:'GFS Neohellenic','Trebuchet MS',sans-serif;--serif:'EB Garamond',Georgia,serif;--body:'Lato',Arial,sans-serif;--ease:cubic-bezier(.19,1,.22,1);--vh:100svh}
*{box-sizing:border-box}html{scroll-behavior:auto;scroll-padding-top:0px}body{margin:0;color:var(--ink);background:var(--sage);font:400 15px/1.5 var(--body);-webkit-font-smoothing:antialiased}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-weight:400}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit;color:inherit}button{border:0;background:none;padding:0;cursor:pointer;border-radius:0}img{display:block;width:100%;object-fit:cover}a,button,input,textarea,select{touch-action:manipulation}button,a{ -webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible{outline:2px solid currentColor;outline-offset:7px}::selection{background:#b6a6b9;color:#342e36}[hidden]{display:none!important}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.skip-link{position:fixed;z-index:500;left:20px;top:-80px;padding:15px;background:var(--paper)}.skip-link:focus{top:10px}.label{font-size:11px;letter-spacing:.055em;line-height:1.5}.micro{font-size:10px;letter-spacing:.055em;line-height:1.5}.wrap{padding-inline:var(--margin)}.serif{font-family:var(--serif);font-weight:400;font-style:italic}.text-link{font-size:13px;min-height:44px;display:inline-flex;align-items:center}.text-link .link-roll{height:1.35em;overflow:hidden;display:inline-block}.text-link .link-roll>span{display:block;transition:transform .6s var(--ease)}.text-link:hover .link-roll>span{transform:translateY(-50%)}.word{display:inline-block}.mask{overflow:clip;display:block;padding-bottom:.1em;margin-bottom:-.1em}.mask>span{display:block;transform-origin:0 100%}.reveal-copy .word{opacity:.3;transition:opacity .24s}.reveal-copy .word.lit{opacity:1}
.site-header{position:absolute;inset:0 0 auto;z-index:70;padding:30px var(--margin);display:flex;align-items:center;justify-content:space-between;gap:20px;height:99px}.logo{display:inline-flex;align-items:baseline;gap:8px}.logo b{font:700 49px/.85 var(--display);letter-spacing:-.065em}.logo small{font-size:10px;letter-spacing:0}.header-links{display:flex;align-items:center;gap:36px}.header-links a{font-size:12px;min-height:44px;display:flex;align-items:center}.header-links a:hover{text-decoration:underline;text-underline-offset:6px}.header-tools{display:flex;gap:26px;align-items:center}.motion-toggle{font-size:10px;min-height:44px}.menu-toggle{font-size:13px;min-height:44px}.replay-intro{font-size:10px;min-height:44px}.intro-kicker{position:absolute;left:var(--margin);top:137px;width:270px;font-size:12px;z-index:4}.hero-aside{position:absolute;right:var(--margin);top:138px;text-align:right;font-size:10px;z-index:4;max-width:220px}.hero-scroll{height:238svh;position:relative}.hero-stage{position:sticky;top:0;height:100svh;min-height:600px;overflow:clip;isolation:isolate}.hero-title{font:700 clamp(116px,16.8vw,300px)/.79 var(--display);letter-spacing:-.059em;position:absolute;inset:23% 0 auto;z-index:5;pointer-events:none}.hero-line{display:block;width:max-content;max-width:95vw;will-change:transform,opacity}.hero-line.first{margin-left:4.3vw}.hero-line.second{margin:1.34em 0 0 20vw;font-size:.98em;letter-spacing:-.05em}.hero-line .serif{font-size:1.13em;line-height:.6;letter-spacing:-.055em}.hero-line .word{display:inline-block;will-change:transform}.hero-under{position:absolute;left:var(--margin);bottom:49px;display:flex;justify-content:space-between;align-items:end;right:var(--margin);z-index:8;gap:22px}.hero-under p{font-size:12px;max-width:245px}.hero-under .hero-middle{font-size:10px;max-width:190px;position:absolute;left:44%;bottom:0}.hero-cta{display:flex;align-items:center;gap:25px}.hero-cta a{font-weight:700}.hero-cta .replay-intro{font-weight:400}.hero-card{position:absolute;left:59%;top:35%;width:34%;height:41%;background:#c7bdcc;transform:rotate(-7deg);overflow:clip;z-index:3;will-change:transform,width,height,left,top;isolation:isolate}.hero-card .relief{position:absolute;inset:0;height:100%;object-fit:cover;filter:sepia(.18);opacity:.45;transform:scale(1.15);will-change:transform}.card-shade{position:absolute;inset:0;background:#b9a8bd;mix-blend-mode:color;opacity:.55}.cover-type{position:absolute;inset:16% 7% auto;font:400 clamp(48px,6.5vw,116px)/.84 var(--serif);letter-spacing:-.04em;color:#302b32;will-change:opacity,transform}.cover-type em{font-weight:400;display:block;margin-left:7%}.cover-foot{position:absolute;left:7%;bottom:8%;font-size:9px;line-height:1.6;color:#302b32;letter-spacing:.055em}.large-cut{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;flex-direction:column;font:700 14.7vw/.77 var(--display);letter-spacing:-.055em;color:#3b323e;opacity:0;pointer-events:none}.large-cut .cut-line{overflow:clip;padding:.12em;margin:-.12em}.large-cut .cut-line>span{display:block;transform:translateY(112%)}.large-cut .serif{font-size:1.17em;line-height:.78}.large-caption{position:absolute;bottom:8%;left:var(--margin);right:var(--margin);display:flex;justify-content:space-between;gap:20px;font-size:11px;opacity:0;color:#382f3b}.large-caption p{max-width:250px}.hero-guide{position:absolute;bottom:24px;right:var(--margin);z-index:5;font-size:10px;opacity:0}.hero-progress{position:absolute;width:0;height:2px;background:currentColor;bottom:0;left:0;opacity:.25;z-index:10}
.belief{position:relative;background:var(--paper);padding:130px var(--margin) 120px;min-height:88svh;display:grid;grid-template-columns:1fr 3fr;gap:50px;align-content:center;overflow:clip}.belief-label{padding-top:13px}.belief h2{font:700 clamp(48px,6.7vw,114px)/1.02 var(--display);letter-spacing:-.045em;max-width:1120px}.belief h2 .serif{font-size:1.08em}.belief-bottom{grid-column:2;display:grid;grid-template-columns:1fr 1fr;gap:7vw;margin-top:35px;font-size:14px;line-height:1.65}.belief-bottom p{max-width:390px}.belief-bottom small{display:block;font-size:11px;margin-top:20px}.moving-note{position:absolute;bottom:20px;left:0;font:400 italic 4vw/1 var(--serif);opacity:.10;white-space:nowrap;pointer-events:none}
.edit-scroll{height:332svh;position:relative;background:#d6dbce;scroll-margin-top:0}.edit-stage{position:sticky;top:0;height:100svh;min-height:640px;overflow:clip;isolation:isolate;--ed-ink:#43473e}.editor-top{position:absolute;top:39px;left:var(--margin);right:var(--margin);display:flex;justify-content:space-between;align-items:start;gap:30px;z-index:9}.editor-top h2{font:700 clamp(38px,4.6vw,80px)/.9 var(--display);letter-spacing:-.047em;max-width:630px}.editor-top h2 em{font:400 italic 1.08em/.8 var(--serif)}.editor-top .label{max-width:205px;text-align:right}.editor-tabs{position:absolute;inset:auto var(--margin) 30px;display:grid;grid-template-columns:repeat(3,1fr);gap:3vw;z-index:10;align-items:end}.editor-tabs button{font:400 clamp(36px,4.5vw,75px)/.88 var(--display);letter-spacing:-.055em;text-align:left;min-height:76px;color:#696f63;transition:color .4s}.editor-tabs button small{display:block;font:400 9px/1 var(--body);letter-spacing:.07em;margin-bottom:14px}.editor-tabs button[aria-selected=true]{font-weight:700;color:var(--ink)}.editor-tabs button[aria-selected=true] .format-word{font-family:var(--serif);font-style:italic;font-weight:400;letter-spacing:-.03em}.editor-subtitle{font-size:10px;position:absolute;bottom:135px;left:var(--margin);z-index:6;max-width:260px}.editor-study{position:absolute;right:var(--margin);bottom:133px;z-index:6;font-size:11px;min-height:44px}.shared-sheet{position:absolute;left:5%;top:22%;width:90%;height:55%;background:#eee8de;overflow:clip;z-index:4;transform-origin:center;box-shadow:0 25px 40px -28px #34352b55;will-change:left,top,width,height,transform}.sheet-article,.sheet-social,.sheet-motion{position:absolute;inset:0;overflow:clip;pointer-events:none}.sheet-article{padding:35px 38px;display:grid;grid-template-columns:1.1fr .8fr;column-gap:7vw;row-gap:10px;align-content:center}.sheet-article .label{grid-column:1;font-size:9px;align-self:start;margin-bottom:15px}.sheet-article h3{grid-column:1;font:400 clamp(50px,6.3vw,107px)/.83 var(--serif);letter-spacing:-.045em;max-width:610px}.sheet-article h3 em{font-weight:400;display:block}.sheet-article p{grid-column:1;font-size:12px;max-width:450px;line-height:1.6;margin-top:25px}.sheet-article .relief-clip{grid-column:2;grid-row:1/5;align-self:center;height:100%;max-height:370px;overflow:clip}.sheet-article img{height:100%;transform:scale(1.15);will-change:transform}.sheet-article .credit{font-size:9px;margin-top:15px}.sheet-social{opacity:0;display:flex;flex-direction:column;justify-content:center;padding:8%;background:#c7bdcc}.sheet-social small{font-size:9px;position:absolute;top:7%;left:9%}.sheet-social h3{font:400 clamp(35px,5.3vw,85px)/.9 var(--serif);letter-spacing:-.04em}.sheet-social h3 em{font-weight:400;display:block}.sheet-social .s-bottom{position:absolute;bottom:7%;left:9%;font-size:9px;max-width:150px}.sheet-social .large-amp{font:400 italic 19vw/.8 var(--serif);position:absolute;right:-2%;bottom:-7%;opacity:.12;transform:rotate(-15deg)}.satellite{position:absolute;top:29%;left:5%;width:26%;height:48%;overflow:clip;padding:28px;opacity:0;transform:translateX(30vw) rotate(0);z-index:3;will-change:transform,opacity}.satellite-left{background:#ece5d8}.satellite-left h3{font:400 italic clamp(36px,4.8vw,75px)/.88 var(--serif);letter-spacing:-.045em}.satellite-left img{height:32%;position:absolute;inset:auto 0 0;width:100%;opacity:.75}.satellite .label{font-size:9px;margin-bottom:25px}.satellite-right{left:auto;right:5%;background:#b3bda8;transform:translateX(-30vw) rotate(0)}.satellite-right h3{font:700 clamp(37px,4.9vw,80px)/.8 var(--display);letter-spacing:-.045em}.satellite-right .serif{font-size:1.18em;line-height:.7;display:block;margin:15px 0 0 13%}.satellite-right .label:last-child{position:absolute;bottom:0;max-width:150px}.sheet-motion{background:#4b414d;color:#eae4dc;opacity:0;padding:30px 36px;display:flex;flex-direction:column;justify-content:center}.motion-label{position:absolute;top:7%;left:4%;right:4%;display:flex;justify-content:space-between;gap:25px;font-size:9px}.motion-words{font:700 clamp(54px,8.7vw,155px)/.83 var(--display);letter-spacing:-.05em;display:flex;align-items:baseline;gap:3vw;justify-content:center}.motion-words .motion-mask{overflow:clip;padding-bottom:.15em;margin-bottom:-.15em}.motion-words .motion-mask>span{display:block}.motion-words .serif{font-size:1.15em}.motion-foot{position:absolute;bottom:7%;left:4%;right:4%;display:flex;justify-content:space-between;align-items:center;gap:25px;font-size:10px}.motion-play{min-height:44px;font-size:11px;pointer-events:auto}.motion-signature{font:400 italic 21vw/.7 var(--serif);position:absolute;top:18%;left:18%;opacity:.045;letter-spacing:-.07em;pointer-events:none}.format-prose{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
.system{background:#d8cecb;min-height:97svh;padding:55px var(--margin) 45px;position:relative;overflow:clip;isolation:isolate}.system-top{display:flex;justify-content:space-between;gap:25px;align-items:start;position:relative;z-index:3}.system-top p{font-size:12px;max-width:265px;line-height:1.6}.system-stage{position:relative;display:grid;grid-template-columns:1.25fr 1fr;align-items:center;gap:8vw;min-height:58svh;padding:30px 0;z-index:3}.system-word{font:700 clamp(95px,16.2vw,300px)/.85 var(--display);letter-spacing:-.055em;overflow:clip;padding:.14em 0;margin:-.14em 0}.system-word>span{display:block;transform-origin:0 100%}.system-copy{max-width:410px}.system-copy h3{font:400 clamp(38px,4.2vw,68px)/.97 var(--serif);letter-spacing:-.03em;margin-bottom:25px}.system-copy p{font-size:14px;line-height:1.7}.system-copy small{display:block;font-size:11px;line-height:1.6;margin-top:25px}.system-tabs{display:flex;justify-content:space-between;gap:20px;position:relative;z-index:3}.system-tabs button{font:400 clamp(29px,3.8vw,64px)/1 var(--display);letter-spacing:-.045em;min-height:65px;color:#6c6366}.system-tabs button[aria-selected=true]{color:var(--ink);font-weight:700}.system-tabs button small{font:400 9px/1 var(--body);letter-spacing:0;margin-right:12px;vertical-align:middle}.system-wipe{position:absolute;inset:0;z-index:2;background:var(--sage);transform:translateY(103%) skewY(-6deg);pointer-events:none;transform-origin:0 0}.system-foot{font-size:10px;margin-top:22px;max-width:620px}.system-aside{position:absolute;bottom:17%;left:43%;font:400 italic 34vw/1 var(--serif);opacity:.055;transform:rotate(-12deg);pointer-events:none}
.expertise{background:var(--paper);padding:100px var(--margin) 110px;overflow:clip}.expertise-title{display:grid;grid-template-columns:1fr 3fr;gap:50px;align-items:start;margin-bottom:70px}.expertise-title .label{margin-top:14px}.expertise-title h2{font:700 clamp(50px,7.8vw,132px)/.92 var(--display);letter-spacing:-.045em}.expertise-title em{font:400 italic 1.08em/.8 var(--serif)}.expertise-list{display:grid;grid-template-columns:1fr 1fr;gap:16px 8vw}.expertise-list details{padding:15px 0;min-width:0}.expertise-list summary{list-style:none;cursor:pointer;display:flex;gap:20px;justify-content:space-between;align-items:center;font:400 clamp(29px,3.8vw,61px)/1 var(--display);letter-spacing:-.035em}.expertise-list summary::-webkit-details-marker{display:none}.expertise-list summary small{font:400 9px/1 var(--body);letter-spacing:0}.expertise-list details p{font-size:14px;line-height:1.7;max-width:460px;padding:20px 0 10px}.expertise-list summary{color:#6c6366;transition:color .35s var(--ease)}.expertise-list details[open] summary{font-family:var(--display);font-style:normal;font-weight:700;color:var(--ink)}.expertise-list summary small{font-style:normal;font-weight:400;color:var(--ink)}.expertise-list summary:focus-visible{outline:2px solid var(--ink);outline-offset:7px}.expertise-list details[open] p{animation:details-in .5s var(--ease)}@keyframes details-in{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
.contact{position:relative;background:#48404a;color:var(--paper);min-height:90svh;padding:60px var(--margin) 35px;overflow:clip;display:flex;flex-direction:column;justify-content:space-between;isolation:isolate}.contact-top{display:flex;justify-content:space-between;gap:25px}.contact-top p{font-size:12px;max-width:240px}.contact-main{position:relative;z-index:2;align-self:center;text-align:center;width:100%;margin:60px 0}.contact-main h2{font:400 clamp(72px,13.5vw,232px)/.78 var(--serif);letter-spacing:-.045em}.contact-main h2 em{font-weight:400}.contact-main .start-project{font-size:15px;min-height:52px;margin-top:45px;position:relative}.start-project::after{content:'';position:absolute;inset:auto 0 7px;height:1px;background:currentColor;transform:scaleX(.24);transform-origin:0 0;transition:transform .65s var(--ease)}.start-project:hover::after{transform:scaleX(1)}.footer-word{font:700 32vw/.7 var(--display);letter-spacing:-.07em;color:#5c5360;position:absolute;bottom:-8vw;left:-2.5%;z-index:-1;will-change:transform;white-space:nowrap}.contact-bottom{display:flex;align-items:end;justify-content:space-between;gap:20px;font-size:10px;position:relative;z-index:2}.contact-bottom p{max-width:300px}.contact .logo b{font-size:55px}.contact a:focus-visible,.contact button:focus-visible{outline-color:var(--paper)}
/* Full-screen transitions, with real dialog focus and Escape behavior. */
dialog{position:fixed;inset:0;margin:0;width:100%;height:100dvh;max-width:none;max-height:none;background:transparent;border:0;padding:0;color:var(--ink);overflow:clip}dialog::backdrop{background:rgb(42 35 43/.25)}.dialog-surface{position:absolute;inset:0;background:var(--paper);overflow:auto;overscroll-behavior:contain;transform-origin:top left}.dialog-bar{display:flex;justify-content:space-between;align-items:center;padding:31px var(--margin);gap:25px}.dialog-close{font-size:13px;min-height:44px}.menu-surface{background:#c7bdcc}.menu-content{display:grid;grid-template-columns:1.6fr 1fr;gap:10vw;padding:7svh var(--margin) 5svh}.menu-links{display:flex;flex-direction:column;align-items:start;gap:5px}.menu-links a,.menu-links button{display:block;text-align:left;font:700 clamp(50px,7.8vw,140px)/.95 var(--display);letter-spacing:-.05em;padding:3px 0 14px}.menu-links em{font:400 italic 1.05em/.8 var(--serif)}.menu-note{max-width:265px;align-self:end;font-size:14px;line-height:1.7}.menu-note .label{margin-bottom:25px}.menu-footer{padding:20px var(--margin);display:flex;justify-content:space-between;gap:20px;font-size:10px}.brief-content{display:grid;grid-template-columns:1fr 1fr;gap:12vw;padding:6svh var(--margin) 70px}.brief-content h2{font:400 clamp(65px,9vw,160px)/.85 var(--serif);letter-spacing:-.04em}.brief-content .intro{font-size:13px;line-height:1.7;max-width:300px;margin-top:35px}.brief-form{display:grid;gap:22px;align-content:start}.brief-form label{display:grid;gap:8px;font-size:11px}.brief-form input,.brief-form textarea{width:100%;border:0;border-radius:0;background:#dfd8d0;padding:15px 18px;font-size:15px}.brief-form textarea{min-height:145px;resize:vertical}.form-submit{background:var(--ink);color:var(--paper);padding:18px 26px;min-height:50px;font-size:13px}.brief-status{font-size:12px;line-height:1.6}.brief-actions{display:flex;flex-wrap:wrap;gap:25px;align-items:center}.brief-result{white-space:pre-wrap;font:400 14px/1.7 var(--body);overflow-wrap:anywhere;max-height:50svh;overflow:auto;margin-bottom:20px}.study-top{background:#c7bdcc;min-height:58svh;display:grid;grid-template-columns:1.2fr 1fr;gap:8vw;padding:50px var(--margin);align-items:center}.study-top h2{font:400 clamp(65px,8vw,145px)/.86 var(--serif);letter-spacing:-.045em}.study-top h2 em{font-weight:400}.study-top img{height:40svh;min-height:220px}.study-body{padding:70px var(--margin);display:grid;grid-template-columns:1fr 2fr;gap:8vw}.study-body p{font-size:16px;line-height:1.8;max-width:680px;margin-bottom:25px}.study-body h3{font:400 44px/1.05 var(--serif);margin:20px 0}.study-body small{font-size:11px;line-height:1.6}.transition-block{position:fixed;inset:0;background:#c7bdcc;z-index:150;pointer-events:none;transform:translateY(110%)}
/* Motion is optional. Native scroll remains native in every mode. */
.motion-off .hero-scroll{height:100svh}.motion-off .hero-stage{position:relative}.motion-off .edit-scroll{height:100svh;min-height:640px}.motion-off .edit-stage{position:relative}.motion-off .word{opacity:1}.motion-off .hero-line,.motion-off .hero-line .word,.motion-off .footer-word{transform:none!important}.motion-off .reveal-copy .word{opacity:1}.motion-off *, .motion-off *::before,.motion-off *::after{transition-duration:0s!important;animation-duration:.001ms!important;scroll-behavior:auto!important}.noscript-note{padding:20px var(--margin);background:var(--paper);font-size:13px}
@media(min-width:1800px){.hero-title{font-size:16.6vw}.hero-line.second{margin-top:1.24em}.hero-card{top:36%;height:39%}.sheet-article h3{font-size:6.2vw}.sheet-social h3{font-size:5.3vw}.motion-words{font-size:8.7vw}.system-word{font-size:16.2vw}}
@media(max-width:1000px){.header-links{gap:20px}.header-links a{font-size:11px}.header-tools{gap:20px}.site-header{height:90px;padding-block:24px}.intro-kicker{top:125px;max-width:230px}.hero-aside{top:125px}.hero-title{top:25%;font-size:16.6vw}.hero-line.second{margin-left:13vw;margin-top:1.65em;font-size:1.04em}.hero-card{top:39%;height:32%;width:42%;left:50%}.hero-under .hero-middle{display:none}.cover-type{font-size:8vw}.belief{grid-template-columns:1fr;gap:35px;padding-block:95px}.belief-bottom{grid-column:1;margin-top:10px}.belief h2{font-size:7.5vw}.belief-label{padding:0}.sheet-article{padding:28px;column-gap:4vw}.sheet-article h3{font-size:7vw}.sheet-article p{font-size:11px}.sheet-social h3{font-size:6vw}.satellite{padding:20px}.satellite-left h3{font-size:5.3vw}.satellite-right h3{font-size:5.6vw}.system-stage{grid-template-columns:1.1fr 1fr;gap:6vw}.system-word{font-size:15vw}.system-copy h3{font-size:44px}.system-copy p{font-size:13px}.system-top p{max-width:225px}.expertise-title{grid-template-columns:1fr 2.7fr;gap:35px}.menu-links a,.menu-links button{font-size:9vw}.brief-content{gap:8vw}}
@media(max-width:650px){:root{--margin:23px}.site-header{height:80px;padding-block:23px}.logo b{font-size:42px}.logo small{font-size:9px}.header-links{display:none}.header-tools{gap:16px}.motion-toggle{font-size:9px}.menu-toggle{font-size:12px}.hero-stage{min-height:600px}.intro-kicker{top:107px;font-size:10px;width:185px}.hero-aside{top:110px;right:var(--margin);font-size:9px;max-width:110px}.hero-scroll{height:198svh}.hero-title{top:25%;font-size:22.6vw;line-height:.83}.hero-line.first{margin-left:5.8vw}.hero-line.second{margin-left:8.5vw;font-size:.93em;margin-top:3.1em;max-width:90vw}.hero-card{left:28%;top:40%;width:63%;height:30%;transform:rotate(-6deg)}.cover-type{font-size:11.5vw;inset:13% 8% auto}.cover-foot{font-size:7px;bottom:10%}.hero-under{bottom:27px;align-items:end}.hero-under p{font-size:10px;max-width:170px}.hero-cta{display:block;text-align:right;max-width:133px}.hero-cta a{font-size:11px}.hero-cta .replay-intro{display:none}.large-cut{font-size:20vw}.large-cut .serif{font-size:1.12em}.large-caption{bottom:9%;font-size:10px;align-items:end}.large-caption p{max-width:175px}.hero-guide{font-size:9px}.belief{padding:75px var(--margin) 80px;min-height:78svh;gap:32px}.belief h2{font-size:11.8vw;line-height:1.04}.belief-bottom{grid-template-columns:1fr;gap:25px;font-size:13px;margin-top:0}.belief-bottom p{max-width:420px}.belief-bottom small{margin-top:12px}.moving-note{font-size:9vw;bottom:12px}.edit-scroll{height:287svh}.edit-stage{min-height:640px}.editor-top{top:32px;gap:20px;display:block}.editor-top h2{font-size:12vw;max-width:320px;line-height:.9}.editor-top .label{text-align:left;max-width:100%;font-size:9px;margin-top:18px}.editor-top .label br{display:none}.editor-tabs{bottom:24px;gap:8px;inset-inline:var(--margin)}.editor-tabs button{font-size:10.6vw;min-height:65px}.editor-tabs button small{font-size:8px;letter-spacing:.02em;margin-bottom:10px}.editor-tabs button[aria-selected=true] .format-word{font-size:1.1em}.editor-subtitle{font-size:9px;bottom:112px;max-width:150px}.editor-study{right:var(--margin);bottom:100px;font-size:9px;max-width:133px;text-align:right}.shared-sheet{top:27%;left:6%;width:88%;height:53%}.sheet-article{display:block;padding:24px}.sheet-article .label{font-size:8px;margin:0 0 20px}.sheet-article h3{font-size:11.2vw;line-height:.91;width:100%;max-width:310px}.sheet-article p{font-size:10px;line-height:1.5;margin:17px 0 0;width:52%}.sheet-article .relief-clip{position:absolute;right:6%;bottom:9%;width:32%;height:27%;max-height:115px}.sheet-article .credit{font-size:7px;margin-top:12px;width:50%}.sheet-social{padding:12%}.sheet-social h3{font-size:9.5vw}.sheet-social small{font-size:7px;top:8%;left:12%}.sheet-social .s-bottom{font-size:7px;left:12%;max-width:110px}.sheet-social .large-amp{font-size:40vw}.satellite{width:36%;height:40%;padding:14px;top:34%;left:3%}.satellite-right{left:auto;right:3%}.satellite .label{font-size:7px;margin-bottom:18px}.satellite-left h3{font-size:8vw}.satellite-right h3{font-size:8vw}.satellite-right .label:last-child{max-width:110px;bottom:3%;font-size:7px;margin:0}.sheet-motion{padding:25px}.motion-label{font-size:7px;left:7%;right:7%;top:7%}.motion-words{font-size:17vw;display:block;line-height:.9}.motion-words .motion-mask{display:block;max-width:100%}.motion-words .motion-mask:nth-child(2){margin-left:12%}.motion-words .motion-mask:nth-child(3){margin-left:19%;font-size:1.12em}.motion-foot{font-size:8px;left:7%;right:7%;bottom:5%;align-items:end}.motion-play{font-size:9px;min-height:40px}.motion-signature{font-size:40vw;left:2%;top:35%}.system{padding:36px var(--margin) 30px;min-height:95svh}.system-top{display:block}.system-top p{font-size:11px;max-width:280px;margin-top:20px}.system-stage{display:block;min-height:57svh;padding:30px 0 25px}.system-word{font-size:25vw;margin-bottom:16px}.system-copy{max-width:380px}.system-copy h3{font-size:37px;margin-bottom:15px;max-width:330px}.system-copy p{font-size:12px;line-height:1.6}.system-copy small{font-size:10px;margin-top:15px;max-width:340px}.system-tabs{display:grid;grid-template-columns:1fr 1fr;gap:0 20px}.system-tabs button{font-size:11vw;text-align:left;min-height:57px}.system-tabs button small{font-size:8px;margin-right:8px}.system-foot{font-size:9px;margin-top:18px;max-width:315px}.system-aside{font-size:70vw;bottom:29%;left:40%}.expertise{padding:75px var(--margin)}.expertise-title{display:block;margin-bottom:40px}.expertise-title .label{margin:0 0 25px}.expertise-title h2{font-size:15vw}.expertise-list{display:block}.expertise-list details{padding:18px 0}.expertise-list summary{font-size:10.1vw}.expertise-list summary small{font-size:8px}.expertise-list details p{font-size:13px}.contact{min-height:85svh;padding:35px var(--margin) 28px}.contact-top p{font-size:10px;max-width:170px}.contact-main{margin:55px 0}.contact-main h2{font-size:21.8vw;line-height:.83}.contact-main .start-project{font-size:13px;margin-top:35px}.contact-bottom{flex-wrap:wrap;gap:20px;font-size:9px}.contact-bottom .logo b{font-size:46px}.contact-bottom p{max-width:180px}.footer-word{font-size:38vw;left:-3%;bottom:-7vw}.dialog-bar{padding-block:22px}.menu-content{display:block;padding-top:5svh}.menu-links{gap:15px}.menu-links a,.menu-links button{font-size:15vw}.menu-note{font-size:12px;max-width:260px;margin-top:40px}.menu-note .label{margin-bottom:15px}.menu-footer{font-size:9px;flex-wrap:wrap}.brief-content{display:block;padding-top:25px}.brief-content h2{font-size:20vw}.brief-content .intro{font-size:12px;max-width:320px;margin-top:25px}.brief-form,.brief-output{margin-top:35px}.brief-form{gap:20px}.brief-form textarea{min-height:115px}.brief-form input,.brief-form textarea{font-size:16px}.brief-result{max-height:none;font-size:13px}.study-top{display:block;padding:30px var(--margin)}.study-top h2{font-size:15vw;margin-bottom:30px}.study-top img{height:30svh;min-height:180px}.study-body{display:block;padding:40px var(--margin)}.study-body .label{margin-bottom:25px}.study-body p{font-size:14px}.study-body h3{font-size:37px}}
@media(max-width:360px){.hero-title{font-size:22vw}.hero-line.second{margin-top:3.45em;margin-left:5.5vw}.hero-card{top:39%;height:32%}.hero-aside{display:none}.intro-kicker{width:210px}.hero-under p{max-width:148px;font-size:9px}.editor-top h2{font-size:12vw}.sheet-article{padding:20px}.sheet-article .label{margin-bottom:14px}.sheet-article h3{font-size:11.4vw}.system-word{font-size:24.7vw}.system-copy h3{font-size:33px}.system-copy p{font-size:11px}.system-copy small{font-size:9px}.system-top p{font-size:10px}.system-tabs button{font-size:10.6vw}.system-foot{font-size:8px}}
@media(max-height:650px) and (min-width:651px){.hero-stage{min-height:600px}.hero-title{top:24%;font-size:13vw}.hero-line.second{margin-top:1.05em;margin-left:25vw}.hero-card{top:32%;height:43%;width:32%;left:62%}.intro-kicker,.hero-aside{top:112px}.hero-under{bottom:27px}.cover-type{font-size:6.5vw}.editor-top{top:27px}.editor-top h2{font-size:4vw}.sheet-article h3{font-size:5.3vw}.sheet-article p{font-size:10px;margin-top:15px}.system-stage{min-height:60svh}.system-copy h3{font-size:39px}.system{padding-top:30px}.system-word{font-size:14.5vw}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.001ms!important;transition-duration:0s!important}.hero-scroll{height:100svh}.hero-stage{position:relative}.edit-scroll{height:100svh;min-height:640px}.edit-stage{position:relative}.reveal-copy .word{opacity:1}}
/* Final art-direction alignment: content, not decorative clipping. */
.hero-line.second{position:absolute;top:40svh;margin:0 0 0 20vw}
.cover-foot{top:8%;bottom:auto}.cover-type{top:24%;font-size:clamp(48px,6.05vw,116px)}
.system-stage{grid-template-columns:minmax(0,1.25fr) minmax(0,1fr)}.system-word{min-width:0}.system-copy{min-width:0}
@media(max-width:1000px){.hero-line.second{top:41svh;margin-left:13vw}.cover-type{font-size:7.2vw}}
@media(max-width:650px){.hero-line.second{top:50svh;margin-left:8.5vw}.cover-type{font-size:10.8vw;top:24%}.cover-foot{font-size:7px}.system-stage{display:block}}
@media(max-width:360px){.hero-line.second{top:50svh;margin-left:5.5vw}}
@media(max-height:650px) and (min-width:651px){.hero-line.second{top:35svh;margin-left:25vw}.cover-type{font-size:5.8vw}}
.hero-card .relief{filter:saturate(.65)}.card-shade{opacity:.18}.cover-type{top:20%;font-size:clamp(42px,5.2vw,98px)}@media(max-width:1000px){.cover-type{font-size:6.3vw}}@media(max-width:650px){.cover-type{font-size:10vw}}.sheet-article img{object-position:center;transform:scale(1.03)}.satellite-left img{object-position:center 57%;opacity:.9}.study-top img{object-fit:contain;background:#eee8de}

/* v5.2: readable type first; masks include ascenders, descenders and italic overhang. */
:root { --hero-size:clamp(76px,min(16.4vw,27svh),300px); }
html { scrollbar-gutter:stable; }
.site-header { width:100%; }
.hero-stage { width:100%; }
.hero-title { inset:0; font-size:var(--hero-size); line-height:1; }
.hero-line { position:absolute; max-width:none; white-space:nowrap; line-height:1; width:max-content; }
.hero-line.first { top:22%; left:var(--margin); margin:0; }
.hero-line.second { top:58%; left:18vw; margin:0; font-size:.98em; }
.hero-line .serif { line-height:1; }
/* Padding is inside the reveal mask, not just the transformed inner glyph. */
.hero-line .mask { overflow:clip; padding:.18em .09em .30em; margin:-.18em -.09em -.30em; }
.hero-line .mask>span { line-height:1; }
.hero-under { bottom:35px; display:grid; grid-template-columns:1fr 1fr; align-items:end; }
.hero-under .hero-middle { display:none; }
.hero-cta { justify-content:flex-end; }
.hero-under p { max-width:265px; }
.hero-aside { max-width:min(260px,30vw); right:var(--margin); overflow-wrap:break-word; }
.large-cut { inset:14% var(--margin) 17%; font-size:clamp(65px,min(13.8vw,23svh),270px); line-height:1; gap:.02em; }
.large-cut .cut-line { flex-shrink:0; width:max-content; max-width:100%; line-height:1.06; padding:.13em .10em .28em; margin:-.13em -.10em -.28em; overflow:clip; }
.large-cut .cut-line>span { line-height:1.06; white-space:nowrap; }
.large-cut .serif { line-height:1.06; font-size:1.12em; }
.large-caption { bottom:8%; }
.large-caption p { max-width:38%; }
.hero-guide { bottom:18px; }
.system-word { line-height:1.06; padding:.16em .08em .25em; margin:-.16em -.08em -.25em; }
.system-word>span { line-height:1.06; }
.motion-words { line-height:1.05; }
.motion-words .serif { line-height:1.05; }
.motion-words .motion-mask { padding:.14em .06em .27em; margin:-.14em -.06em -.27em; }
.motion-mask>span { line-height:1.05; }
.expertise-list summary { line-height:1.16; padding-block:.08em; }
.expertise-list details[open] summary { font-family:var(--display);font-weight:700;font-style:normal;color:var(--ink); }
.service-link,.inline-link { display:inline-flex;align-items:center;min-height:44px;font-size:13px;text-decoration:underline;text-underline-offset:5px; }
.service-link { margin-top:2px; }
.footer-links { display:flex;gap:26px;flex-wrap:wrap;position:relative;z-index:2;font-size:12px;padding-top:35px; }
.footer-links a { min-height:44px;display:inline-flex;align-items:center; }
.system-readonly-link { font-size:12px; }
.selected-work { background:#e8e2d8;padding:110px var(--margin) 120px; }
.work-heading { display:grid;grid-template-columns:1fr 2.8fr;gap:6vw;align-items:start;margin-bottom:65px; }
.work-heading .label { margin-top:13px; }
.work-heading h2 { font:700 clamp(52px,7.3vw,116px)/1.06 var(--display);letter-spacing:-.045em; }
.work-heading h2 em { font:400 italic 1.05em/1.06 var(--serif); }
.work-pair { display:grid;grid-template-columns:1.12fr .88fr;align-items:start;gap:5vw; }
.project-teaser { min-width:0; }
.project-teaser:nth-child(2) { margin-top:130px; }
.project-visual { display:flex;position:relative;flex-direction:column;justify-content:space-between;min-height:440px;padding:36px 34px;overflow:clip;transition:background .55s var(--ease); }
.project-visual.care { background:#c8d1c7;color:#364b42; }
.project-visual.travel { background:#d1bdae;color:#56453b;min-height:390px; }
.project-visual .project-type { font-size:11px;letter-spacing:.06em; }
.project-visual .project-name { font:500 clamp(54px,6.8vw,108px)/1.10 var(--serif);letter-spacing:-.05em;display:block; }
.project-visual .project-line { font:400 italic clamp(29px,3.8vw,58px)/1.12 var(--serif);max-width:410px;margin-top:20px;display:block; }
.project-visual .project-bottom { display:flex;justify-content:space-between;gap:20px;align-items:end;font-size:11px;margin-top:40px; }
.project-visual .project-name,.project-visual .project-line { transition:transform .8s var(--ease); }
.project-visual:hover .project-name { transform:translateX(10px); }
.project-visual:hover .project-line { transform:translateX(20px); }
.project-teaser h3 { font:700 34px/1.14 var(--display);letter-spacing:-.03em;margin-top:24px; }
.project-teaser .project-summary { font-size:13px;line-height:1.7;max-width:450px;margin-top:13px; }
.project-teaser .scope-label { font-size:11px;line-height:1.6;margin-top:13px; }
.work-end { display:flex;justify-content:flex-end;margin-top:30px; }
.faq-section { padding:80px var(--margin) 105px;background:#dddcd0;display:grid;grid-template-columns:1fr 1.6fr;gap:9vw; }
.faq-section h2 { font:400 clamp(42px,5.7vw,90px)/1.08 var(--serif);letter-spacing:-.04em; }
.faq-list { min-width:0; }
.faq-list details { padding:13px 0; }
.faq-list summary { cursor:pointer;list-style:none;font:700 26px/1.25 var(--display);padding:6px 0; }
.faq-list summary::-webkit-details-marker { display:none; }
.faq-list details p { font:400 14px/1.75 var(--body);margin-top:17px;max-width:620px; }
/* Inner pages have real URLs. They retain the same type, colours and whitespace. */
.inner-page { background:var(--paper); }
.inner-header { position:relative; }
.inner-nav { display:flex;gap:28px;align-items:center;font-size:12px; }
.inner-nav a { min-height:44px;display:flex;align-items:center; }
.inner-nav a[aria-current=page] { font-weight:700; }
.inner-main { padding:45px var(--margin) 100px;max-width:1760px;margin:auto; }
.breadcrumbs { display:flex;gap:15px;flex-wrap:wrap;font-size:11px;line-height:1.6;margin-bottom:38px; }
.breadcrumbs a { text-decoration:underline;text-underline-offset:4px; }
.page-hero { margin-bottom:70px;max-width:1360px; }
.page-hero .label { margin-bottom:28px; }
.page-hero h1 { font:700 clamp(60px,9.6vw,156px)/1.06 var(--display);letter-spacing:-.055em;overflow-wrap:break-word; }
.page-hero .page-headline { font:400 italic clamp(33px,5.2vw,83px)/1.16 var(--serif);letter-spacing:-.03em;margin-top:15px;max-width:1100px; }
.page-hero .page-intro { font:400 17px/1.8 var(--body);max-width:790px;margin-top:35px; }
.page-hero .inline-link { margin-top:16px; }
.case-block { padding:30px 0 45px;display:grid;grid-template-columns:1fr 2fr;gap:8vw; }
.case-block>h2 { font:400 41px/1.12 var(--serif);letter-spacing:-.03em; }
.case-block p { font-size:16px;line-height:1.85;max-width:760px; }
.case-scope { display:grid;grid-template-columns:1fr 1fr;gap:35px 45px; }
.case-scope h3 { font:700 33px/1.16 var(--display);margin-bottom:16px;letter-spacing:-.025em; }
.case-scope p { font-size:14px;line-height:1.8; }
.case-art { margin:25px 0 70px; }
.case-art .project-visual { min-height:480px; }
.case-art .project-name { font-size:clamp(65px,11vw,182px); }
.case-art .project-line { max-width:none; }
.case-art .project-bottom { font-size:13px; }
.case-gallery { display:grid;gap:40px; }
.case-gallery img { height:auto; }
.case-gallery figcaption { font-size:12px;margin-top:12px; }
.related-links { display:flex;flex-wrap:wrap;gap:10px 30px; }
.related-links a { font:400 27px/1.2 var(--display);padding-block:8px;text-decoration:underline;text-underline-offset:6px; }
.services-index { display:grid;grid-template-columns:1fr 1fr;gap:55px 7vw; }
.services-index h2 { font:700 44px/1.1 var(--display);letter-spacing:-.03em;margin-bottom:20px; }
.services-index p { font-size:14px;line-height:1.8;max-width:540px; }
.services-index .inline-link { margin-top:17px; }
.deliverables { margin:0;padding-left:20px; }
.deliverables li { padding:0 0 20px 6px;font-size:16px;line-height:1.8; }
.system-page-row { padding:50px 0;display:grid;grid-template-columns:1fr 1.5fr;gap:9vw; }
.system-page-row h2 { font:700 clamp(60px,7.5vw,120px)/1.06 var(--display);letter-spacing:-.05em; }
.system-page-row h3 { font:400 40px/1.12 var(--serif);margin-bottom:23px; }
.system-page-row p { font-size:16px;line-height:1.8;max-width:670px; }
.system-page-row .system-deliverables { font-size:12px;margin-top:25px; }
.inner-footer { padding:55px var(--margin) 45px;background:#48404a;color:var(--paper); }
.inner-footer>div { max-width:1590px;margin:auto;display:flex;justify-content:space-between;gap:30px;align-items:start; }
.inner-footer p { font-size:13px;max-width:300px;line-height:1.7; }
.contact-form-page { max-width:680px; }
.contact-form-page label { font-size:13px; }
.contact-form-page .brief-result { max-height:none; }
.route-cta { font:400 42px/1.12 var(--serif);padding-top:35px; }
.privacy-copy { max-width:800px;font-size:16px;line-height:1.9; }
.privacy-copy h2 { font:400 38px/1.15 var(--serif);margin:35px 0 20px; }
.error-page { min-height:65svh; }
@view-transition { navigation:auto; }
::view-transition-old(root) { animation:route-out .24s ease both; }
::view-transition-new(root) { animation:route-in .48s var(--ease) both; }
@keyframes route-out { to{opacity:0;transform:translateY(-14px)} }
@keyframes route-in { from{opacity:0;transform:translateY(22px)} }
@media(max-width:1000px){
 .hero-line.first{top:24%}.hero-line.second{left:12vw;top:61%}
 .work-pair{gap:4vw}.project-visual{padding:28px;min-height:360px}.project-visual.travel{min-height:340px}
 .case-block{gap:5vw}.case-scope{gap:30px}
 .inner-nav{gap:18px}.page-hero h1{font-size:11vw}
}
@media(max-width:650px){
 :root{--hero-size:22vw}
 .hero-line.first{top:24%;left:var(--margin)}.hero-line.second{top:71%;left:8vw;font-size:.93em}
 .hero-under{bottom:28px;gap:15px}.hero-under p{font-size:10px;max-width:178px}
 .hero-cta{display:flex;justify-content:end}.hero-under .text-link{font-size:10px;max-width:115px;text-align:right}
 .large-cut{inset:19% 6% 23%;font-size:19vw;gap:.03em}
 .large-cut .serif{font-size:1.10em}.large-caption{bottom:10%;font-size:9px}.hero-guide{font-size:8px}
 .selected-work{padding:75px var(--margin) 80px}.work-heading{display:block;margin-bottom:35px}
 .work-heading .label{margin:0 0 25px}.work-heading h2{font-size:14vw}
 .work-pair{display:block}.project-teaser:nth-child(2){margin-top:55px;margin-left:20px}
 .project-visual{padding:28px 24px;min-height:365px}.project-visual.travel{min-height:355px}
 .project-visual .project-name{font-size:17vw}.project-visual .project-line{font-size:11vw}
 .project-visual .project-bottom{font-size:10px}.project-teaser .project-summary{font-size:13px}
 .faq-section{display:block;padding:65px var(--margin)}.faq-section h2{font-size:15vw;margin-bottom:32px}
 .faq-list summary{font-size:26px}.faq-list details p{font-size:13px}
 .inner-header{height:auto;align-items:start;padding-block:25px;flex-wrap:wrap}
 .inner-header .logo b{font-size:42px}.inner-nav{width:100%;gap:20px;flex-wrap:wrap}
 .inner-main{padding-top:24px;padding-bottom:70px}.breadcrumbs{margin-bottom:27px;font-size:10px}
 .page-hero{margin-bottom:45px}.page-hero h1{font-size:16vw;line-height:1.10}.page-hero .label{margin-bottom:18px}
 .page-hero .page-headline{font-size:10.7vw;line-height:1.16}.page-hero .page-intro{font-size:15px;margin-top:24px}
 .case-art .project-visual{min-height:370px}.case-art .project-name{font-size:18vw}.case-art{margin-bottom:35px}
 .case-block{display:block;padding-block:20px 35px}.case-block>h2{font-size:36px;margin-bottom:22px}
 .case-block p{font-size:14px}.case-scope{display:block}.case-scope>section{margin-bottom:30px}.case-scope h3{font-size:31px}
 .related-links a{font-size:26px}.services-index{display:block}.services-index>article{margin-bottom:50px}
 .services-index h2{font-size:39px}.deliverables li{font-size:14px;padding-bottom:16px}
 .system-page-row{display:block;padding:30px 0}.system-page-row h2{font-size:21vw;margin-bottom:20px}.system-page-row h3{font-size:33px}
 .system-page-row p{font-size:14px}.inner-footer>div{display:block}.inner-footer .footer-links{gap:22px;padding-top:20px}
 .inner-footer .logo{margin-bottom:20px}.inner-footer p{font-size:12px}.footer-links{gap:20px}
 .menu-links a,.menu-links button{font-size:14vw}
}
@media(max-height:650px) and (min-width:651px){
 .hero-line.first{top:22%}.hero-line.second{top:57%;left:21vw}.hero-under{bottom:23px}
 .large-cut{inset:13% var(--margin) 23%;font-size:11vw}
}
@media(prefers-reduced-motion:reduce){
 ::view-transition-old(root),::view-transition-new(root){animation:none}
 .project-visual .project-name,.project-visual .project-line{transition:none;transform:none!important}
}
/* No-JS/failure state: content and links still usable. Never deliver an empty search shell. */
body:not(.js-ready) .hero-scroll{height:100svh;min-height:600px}
body:not(.js-ready) .hero-stage{position:relative}
body:not(.js-ready) .edit-scroll{height:100svh;min-height:700px}
body:not(.js-ready) .edit-stage{position:relative}
body:not(.js-ready) .reveal-copy .word{opacity:1}
body:not(.js-ready) .menu-toggle,body:not(.js-ready) .motion-toggle,body:not(.js-ready) .replay-intro,body:not(.js-ready) .editor-tabs{display:none}
body:not(.js-ready) .sheet-social,body:not(.js-ready) .sheet-motion{display:none}
body:not(.js-ready) .system-tabs{display:none}
body:not(.js-ready) .system-panel[hidden]{display:block!important;margin-top:35px}
body:not(.js-ready) .system-panel:not(:first-child)::before{content:attr(data-name);display:block;font:700 45px/1.15 var(--display);margin-bottom:15px}
body:not(.js-ready) .hero-title{font-size:min(15vw,24svh)}
body:not(.js-ready) .format-prose{display:none}

.contact-form-page fieldset { border:0; padding:0; margin:0; display:grid; gap:22px; min-width:0; }
.project-teaser h2 { font:700 34px/1.14 var(--display);letter-spacing:-.03em;margin-top:24px; }

.case-comparison img {height:auto;object-fit:contain}.case-comparison figcaption {font-size:12px;line-height:1.6;margin-top:12px}

@media(max-width:650px) and (max-height:650px){
 .hero-stage,.edit-stage{min-height:0}
 .editor-subtitle{display:none}
 .hero-under p{font-size:9px;line-height:1.45;max-width:150px}
}
