:root{--ink:#252521;--paper:#f5f2eb;--gold:#ebba62;--muted:#67665e;--line:#d9d6cb;--sans:"Avenir Next","PingFang SC","Microsoft YaHei",sans-serif;--serif:"Iowan Old Style","Baskerville","Songti SC",serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit}img{max-width:100%;height:auto;display:block}button,a,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #a76b13;outline-offset:6px}::selection{background:var(--gold);color:var(--ink)}.skip-link{position:fixed;top:-100px;left:20px;background:var(--gold);padding:16px;z-index:100}.skip-link:focus{top:12px}.header{height:98px;padding:0 5.2%;display:flex;align-items:center;justify-content:space-between;background:var(--ink);color:var(--paper);border-bottom:1px solid #ffffff1c;position:relative;z-index:10}.brand{display:flex;align-items:center;gap:12px}.brand img{width:28px;height:30px;mix-blend-mode:screen}.brand>span{font-size:32px;font-weight:700;letter-spacing:-1.5px;line-height:1}.brand-dot{color:var(--gold)}.brand small{display:block;font-size:9px;font-weight:400;letter-spacing:5px;margin:6px 0 0 2px}.header nav{display:flex;align-items:center;gap:30px;font-size:13px}.header nav>a{padding:12px 0}.header nav>a:hover{color:var(--gold)}.language{margin-left:12px;font-size:12px}.language+.language{margin-left:0}.menu-toggle{display:none}.hero{background:var(--ink);color:var(--paper);min-height:650px;position:relative;padding:76px 5.2% 32px;display:grid;grid-template-columns:1.2fr 1fr;gap:20px;overflow:hidden}.eyebrow{font-size:11px;font-weight:500;letter-spacing:2px;line-height:1.8;margin:0 0 28px}.hero .eyebrow{color:#dedbd2}.small-cross{font-size:20px;color:var(--gold);vertical-align:middle;margin-right:10px}.hero h1{font-size:clamp(38px,4.7vw,76px);line-height:1.32;letter-spacing:-2.5px;font-weight:500;margin:0 0 27px}.hero h1 span{color:var(--gold);display:inline-block}.hero-intro{font-size:15px;line-height:2;color:#bdbdb3;margin-bottom:34px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:40px;padding:16px 23px;font-size:13px;min-height:52px;transition:transform .2s,background .2s}.button:hover{transform:translateY(-3px)}.button span{font-size:20px}.text-link{display:inline-block;font-size:12px;border-bottom:1px solid currentColor;padding:8px 0;line-height:1.6}.hero .text-link{color:#dbdbcf}.hero-art{position:relative;min-height:420px;margin:0 2vw 16px 0}.art-caption{position:absolute;right:0;top:0;font-size:10px;letter-spacing:2px;line-height:1.8;color:#bdbdb3}.art-mark{mix-blend-mode:screen;position:absolute;width:190px;top:95px;left:50%;transform:translateX(-50%) rotate(-9deg);z-index:2}.art-mark img{width:100%;height:auto}.orbit{position:absolute;width:370px;height:370px;border:1px solid #e9b85f4d;border-radius:50%;left:50%;top:15px;transform:translateX(-50%) rotate(-20deg)}.orbit:after{content:"";width:9px;height:9px;background:var(--gold);position:absolute;top:36px;left:58px;border-radius:50%}.orbit-two{height:160px;top:125px;width:440px;transform:translateX(-50%) rotate(-35deg);border-color:#ffffff35}.orbit-two:after{display:none}.art-word{position:absolute;z-index:3;font-size:11px;letter-spacing:3px;font-weight:600;padding:13px 20px}.art-culture{background:var(--gold);color:var(--ink);top:72px;left:0;transform:rotate(-9deg)}.art-tech{background:var(--paper);color:var(--ink);right:-5px;top:285px;transform:rotate(7deg)}.art-plus{position:absolute;right:10%;top:35px;color:var(--gold);font-family:var(--serif);font-size:65px;font-weight:300}.art-coordinate{position:absolute;bottom:13px;left:50%;transform:translateX(-50%);font-size:9px;letter-spacing:2px;color:#adad9f;white-space:nowrap}.hero-bottom{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;margin-top:34px;border-top:1px solid #ffffff1c;padding-top:23px;font-size:10px;letter-spacing:1.5px;color:#b8b8ad}.hero-bottom>a{border:1px solid #77776d;border-radius:50%;width:32px;height:32px;display:grid;place-items:center;font-size:16px}.discipline-strip{display:flex;justify-content:space-between;gap:24px;align-items:center;padding:25px 5.2%;border-bottom:1px solid var(--line);font-size:12px;letter-spacing:1.5px;background:#eeebe3}.discipline-strip i{font-style:normal;color:#a7874a;font-size:20px}.discipline-strip i:last-child{display:none}.section{padding:104px 5.2%;scroll-margin-top:20px}.section h2{font-size:clamp(29px,3.25vw,50px);letter-spacing:-1.2px;line-height:1.45;font-weight:500;margin:0 0 27px}.section .eyebrow{color:#777260;font-size:10px;margin-bottom:24px}.section-intro{font-size:14px;line-height:1.9;color:var(--muted);max-width:360px;margin:0}.expertise{display:grid;grid-template-columns:1fr 1.25fr;gap:8%}.services{border-top:1px solid var(--ink)}.service{border-bottom:1px solid var(--line)}summary{cursor:pointer;list-style:none}summary::-webkit-details-marker{display:none}.service>summary{display:flex;align-items:center;gap:26px;padding:26px 0;min-height:104px}.service-number{font-size:10px;color:#7f7b71;align-self:flex-start;margin-top:9px}.service-name{font-size:22px;font-weight:500;letter-spacing:-.3px}.service-name small{font-size:9px;letter-spacing:1.4px;display:block;margin-top:7px;color:#7f7b71;font-weight:400}.plus{font-weight:300;font-size:24px;margin-left:auto;transition:transform .2s}details[open] .plus,details[open]>summary>span:last-child{transform:rotate(45deg)}.service-content{padding:0 30px 28px 41px;max-width:600px}.service-content h3{font-size:16px;font-weight:500;margin:0 0 12px}.service-content p{font-size:13px;color:var(--muted);line-height:1.9;margin:0}.service-content .service-tags{font-size:11px;color:#716044;margin-top:16px}.heading-wide{display:flex;justify-content:space-between;align-items:flex-end;gap:50px;margin-bottom:40px}.heading-wide h2{margin-bottom:0}.heading-wide .section-intro{max-width:320px;padding-bottom:6px}.work{background:#eae7df}.case-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}.case-image{aspect-ratio:1.3;position:relative;overflow:hidden;background:#d7d4ca}.case-image img{width:100%;height:100%;object-fit:cover;transition:transform .6s}.case:hover .case-image img{transform:scale(1.035)}.case-index{position:absolute;bottom:12px;left:14px;background:var(--paper);padding:6px 8px;font-size:10px}.case-category{font-size:10px;color:#736f63;letter-spacing:1px;margin:24px 0 11px}.case h3{font-size:28px;font-weight:500;letter-spacing:-1px;margin:0 0 10px}.case-lead{font-size:13px;color:var(--muted);line-height:1.8;min-height:24px;margin:0 0 22px}.case details{border-top:1px solid #c9c6bb;border-bottom:1px solid #c9c6bb}.case summary{display:flex;justify-content:space-between;align-items:center;padding:14px 0;font-size:12px}.case summary span{font-size:19px;transition:transform .2s}.case-body p{font-size:13px;line-height:1.9;color:var(--muted);margin:0 0 15px}.case-body small{font-size:9px;letter-spacing:1.4px;color:#827458}.case-body small+p{font-size:11px;margin-top:6px}.case-note{font-size:10px;line-height:1.8;color:#726f65;margin:32px 0 0}.process-symbol{font-size:100px;line-height:1;color:#c6b48c;font-weight:300}.steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:32px;margin-top:56px}.step{border-top:1px solid #c9c5b9;padding-top:23px}.step-number{font-family:var(--serif);font-size:30px;color:#9f8b60;font-style:italic}.step h3{font-size:25px;font-weight:500;margin:23px 0 12px}.step h4{font-size:13px;font-weight:500;margin:0 0 12px}.step p{font-size:12px;color:var(--muted);line-height:1.9;margin:0;max-width:250px}.about{background:var(--ink);color:var(--paper);display:grid;grid-template-columns:1.1fr 1fr;gap:9%}.about .eyebrow{color:var(--gold)}.about h2{font-size:clamp(28px,3vw,44px);line-height:1.6}.about-signature{font-family:var(--serif);font-style:italic;font-size:78px;letter-spacing:-6px;line-height:1;margin-top:40px;color:var(--gold)}.about-signature span{font-family:var(--sans);font-size:16px;vertical-align:top;margin-left:15px;letter-spacing:0}.about-copy{padding-top:42px}.about-copy>p{font-size:14px;line-height:2;color:#c3c1b5;margin:0 0 20px}.facts{display:flex;justify-content:space-between;border-top:1px solid #ffffff26;padding-top:29px;margin:32px 0}.facts>div{display:flex;flex-direction:column-reverse;gap:10px}.facts dd{font-size:20px;margin:0;letter-spacing:-.5px}.facts dt{font-size:10px;color:#aaa898}.about .text-link{color:var(--gold)}.contact{background:var(--gold);display:grid;grid-template-columns:1.1fr 1fr;gap:9%;align-items:center}.contact .eyebrow{color:#5b4827}.contact h2{font-size:clamp(34px,4vw,58px);line-height:1.35}.contact p{font-size:13px;line-height:1.9;color:#5e4d2f}.email-address{font-family:var(--serif);font-size:clamp(26px,3.1vw,46px);display:flex;justify-content:space-between;gap:15px;align-items:center;border-bottom:1px solid #25252166;padding-bottom:23px;letter-spacing:-1px}.email-address span{font-family:var(--sans);font-size:30px}.contact-buttons{display:flex;gap:24px;align-items:center;margin-top:26px}.button-dark{background:var(--ink);color:var(--paper)}.button-dark:hover{background:#3d3d35}.copy-email{border:0;border-bottom:1px solid #25252188;border-radius:0;padding:9px 0;background:transparent;font-size:12px;cursor:pointer;color:var(--ink)}.contact .copy-status{min-height:21px;font-size:11px;margin:8px 0}.contact-location{font-size:9px;letter-spacing:1.5px;color:#5e4d2f}footer{padding:42px 5.2%;display:flex;justify-content:space-between;align-items:center;gap:25px}.footer-brand{font-size:30px;font-weight:600;letter-spacing:-1.8px}footer p{font-size:10px;color:var(--muted);margin:10px 0 0}.footer-links{display:flex;gap:26px;align-items:center;font-size:10px}.footer-links>span{color:var(--muted);letter-spacing:1px}html:is([lang=en],[lang=fr]) .hero h1{font-family:var(--serif);font-size:clamp(48px,5.4vw,86px);line-height:1.12;letter-spacing:-2.5px}html:is([lang=en],[lang=fr]) .section h2{font-family:var(--serif);font-size:clamp(34px,3.6vw,54px);line-height:1.15}html:is([lang=en],[lang=fr]) .hero-intro{font-size:14px}html:is([lang=en],[lang=fr]) .header nav{gap:23px;font-size:12px}html:is([lang=en],[lang=fr]) .service-name{font-size:21px}html:is([lang=en],[lang=fr]) .case-lead{min-height:47px}html:is([lang=en],[lang=fr]) .about h2{font-size:clamp(30px,3.1vw,44px);line-height:1.25}
@media(min-width:1600px){.header,.hero,.section,.discipline-strip,footer{padding-left:max(5.2%,calc((100vw - 1440px)/2));padding-right:max(5.2%,calc((100vw - 1440px)/2))}.hero-art{margin-right:0}}
@media(max-width:1050px){.header nav{gap:20px}.hero{padding-top:62px;min-height:600px}.hero-art{transform:scale(.85);transform-origin:center;margin-right:-20px}.hero h1{letter-spacing:-1.6px}.hero .text-link{font-size:11px}.section{padding-top:78px;padding-bottom:78px}.expertise{gap:5%}.case-grid{gap:20px}.about{gap:6%}.contact{gap:6%}.service-name{font-size:20px}.steps{gap:22px}html:is([lang=en],[lang=fr]) .header nav{gap:14px;font-size:11px}html:is([lang=en],[lang=fr]) .hero h1{font-size:57px}.footer-links{gap:16px}}
@media(max-width:760px){html{scroll-padding-top:20px}.header{height:80px;padding:0 6%}.brand>span{font-size:29px}.brand img{width:25px;height:27px}.menu-toggle{display:flex;width:44px;height:44px;background:transparent;border:1px solid #ffffff42;flex-direction:column;align-items:center;justify-content:center;gap:6px;color:var(--paper);cursor:pointer}.menu-toggle span{height:1px;width:18px;background:currentColor}.header nav{display:none;position:absolute;top:80px;left:0;right:0;background:var(--ink);padding:20px 6% 30px;border-bottom:1px solid #ffffff36;flex-direction:column;align-items:stretch;gap:5px;font-size:14px}.header nav.is-open{display:flex}.header nav .language{margin-left:0}.hero{padding:52px 6% 25px;display:block;min-height:0}.hero h1{font-size:clamp(33px,7.6vw,54px);line-height:1.42;letter-spacing:-1.5px;margin-bottom:20px}.hero .eyebrow{font-size:10px;letter-spacing:1px;margin-bottom:22px}.hero-intro{font-size:13px;line-height:2;margin-bottom:27px}.hero .text-link{font-size:11px}.hero-art{height:335px;min-height:0;max-width:390px;margin:40px auto 0;transform:scale(.9);transform-origin:center top}.art-caption{right:0;font-size:9px}.art-mark{width:155px;top:62px}.orbit-one{width:285px;height:285px;top:0}.orbit-two{width:340px;height:130px;top:95px}.art-culture{top:45px;left:0}.art-tech{top:210px;right:0}.art-word{font-size:10px;padding:12px 17px}.art-plus{top:13px;font-size:53px}.art-coordinate{bottom:20px}.hero-bottom{margin-top:0;padding-top:18px;font-size:9px;letter-spacing:.7px}.hero-bottom>span:nth-child(2){display:none}.discipline-strip{padding:19px 6%;gap:12px;flex-wrap:wrap;justify-content:center;font-size:10px;letter-spacing:.4px}.discipline-strip i{font-size:12px}.section{padding:64px 6%}.section h2{font-size:31px;letter-spacing:-.7px;margin-bottom:20px}.section .eyebrow{font-size:9px;margin-bottom:19px}.section-intro{font-size:13px;max-width:100%}.expertise{display:block}.services{margin-top:35px}.service>summary{padding:21px 0;min-height:90px;gap:20px}.service-name{font-size:21px}.service-name small{font-size:8px}.service-content{padding-left:33px;padding-right:5px}.service-content p{font-size:12px}.heading-wide{display:block;margin-bottom:30px}.heading-wide .section-intro{max-width:100%;padding:0}.case-grid{grid-template-columns:1fr;gap:40px}.case-image{aspect-ratio:1.5}.case-category{margin-top:18px}.case h3{font-size:27px}.case-lead{margin-bottom:17px;min-height:0}.case-note{font-size:9px;margin-top:26px}.process-symbol{display:none}.steps{grid-template-columns:repeat(2,minmax(0,1fr));gap:30px 24px;margin-top:32px}.step{padding-top:16px}.step h3{font-size:22px;margin:15px 0 10px}.step h4{font-size:12px}.step p{font-size:11px}.about{display:block}.about-signature{margin-top:27px;font-size:65px}.about-copy{padding-top:34px}.about-copy>p{font-size:13px}.facts dd{font-size:19px}.contact{display:block}.contact h2{font-size:38px}.contact-actions{margin-top:35px}.email-address{font-size:35px;padding-bottom:18px}.contact-buttons{margin-top:22px}.contact p{font-size:12px}footer{padding:30px 6%;display:block}footer p{line-height:1.8}.footer-links{margin-top:26px;font-size:9px;justify-content:space-between;gap:8px}html:is([lang=en],[lang=fr]) .header nav{font-size:14px;gap:5px}html:is([lang=en],[lang=fr]) .hero h1{font-size:clamp(43px,10.5vw,70px);line-height:1.13;letter-spacing:-2px}html:is([lang=en],[lang=fr]) .hero-intro{font-size:12px}html:is([lang=en],[lang=fr]) .section h2{font-size:36px}html:is([lang=en],[lang=fr]) .case-lead{min-height:0}html:is([lang=en],[lang=fr]) .about h2{font-size:33px}.desktop-break{display:none}}
@media(max-width:360px){.hero h1{font-size:31px}.hero .text-link{font-size:10px}.hero-art{transform:scale(.78);margin-left:-12px;margin-right:-12px;height:295px}.email-address{font-size:30px}.facts dd{font-size:16px}.service-name{font-size:19px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
@media print{.hero-art,.menu-toggle,.copy-email,.copy-status{display:none}.header nav{display:none}.hero,.section{padding:24px!important;break-inside:avoid}.hero{min-height:0}.case-image{max-height:180px}body{font-size:12px}}

.noscript-nav{display:flex;flex-wrap:wrap;gap:20px;background:var(--ink);color:var(--paper);padding:20px 6%;font-size:13px}
.partner-wall{background:#141413;color:var(--paper);padding:66px 0 38px}.partner-heading{display:flex;justify-content:space-between;align-items:baseline;gap:24px;margin:0 5.2% 36px}.partner-heading .eyebrow{color:var(--gold);font-size:10px;letter-spacing:2px;margin:0}.partner-heading h2{font-size:clamp(22px,2.5vw,34px);font-weight:500;letter-spacing:-.5px;line-height:1.3;margin:0}.partner-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));width:100%;gap:0}.partner-tile{display:block;aspect-ratio:367/184;background-image:var(--partner-image);background-size:700% 600%;background-repeat:no-repeat}.partner-note{color:#aaa69b;font-size:10px;line-height:1.7;margin:25px 5.2% 0}html:is([lang=en],[lang=fr]) .partner-heading h2{font-family:var(--serif)}
@media(max-width:760px){.partner-wall{padding:49px 0 30px}.partner-heading{display:block;margin:0 6% 27px}.partner-heading .eyebrow{margin:0 0 12px}.partner-heading h2{font-size:26px}.partner-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.partner-note{font-size:9px;margin:22px 6% 0}html:is([lang=en],[lang=fr]) .partner-heading h2{font-size:29px}}
