@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&display=swap');
:root{--bg:#f7f7f5;--ink:#111;--soft:#62635f;--line:#dededb}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font-family:'DM Sans',Arial,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit}a:focus-visible,button:focus-visible{outline:2px solid #111;outline-offset:4px}[hidden]{display:none!important}.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
.site-header{height:48px;padding:0 5%;display:grid;grid-template-columns:1fr 1fr 1fr auto;align-items:center;gap:24px;position:sticky;top:0;z-index:40;background:rgba(247,247,245,.94);backdrop-filter:blur(16px);font-size:12px}.logo{font-size:17px;font-weight:600;letter-spacing:-.055em}.availability{justify-self:center;white-space:nowrap}.availability:before{content:'';display:inline-block;width:8px;height:8px;background:#2ac671;border-radius:50%;margin-right:7px;box-shadow:0 0 0 3px #2ac67120}.time-block{justify-self:center;white-space:nowrap}.time-block span{color:#777;margin-left:5px}.menu-button{width:40px;height:30px;padding:6px 0;border:0;background:none;cursor:pointer;display:grid;align-content:space-between;justify-items:end}.menu-button i{display:block;height:2px;width:34px;background:#111}.menu-button i:nth-child(2){width:22px}.menu-panel{display:none;position:absolute;right:5%;top:48px;width:min(360px,90vw);padding:20px 25px 25px;background:#111;color:#fff;box-shadow:0 18px 40px #0002}.menu-panel.open{display:block}.menu-panel a{display:block;font-size:35px;letter-spacing:-.07em;line-height:1.28}.menu-panel a:hover{opacity:.55}
.hero{padding:0 5% 110px;overflow:hidden}.hero-graphic{height:435px;position:relative}.name-viewport{position:absolute;left:-5.55%;right:-5.55%;top:-8px;overflow:hidden;height:270px;white-space:nowrap}.name-track{width:max-content;display:flex;align-items:center;animation:name-slide 21s linear infinite}.name-track span{font-size:clamp(170px,18.4vw,285px);font-weight:500;line-height:1.05;letter-spacing:-.10em;padding-right:.08em}.name-track b{font-size:clamp(150px,16vw,230px);font-weight:400;line-height:1;padding:0 .11em 0 .02em}@keyframes name-slide{to{transform:translateX(-50%)}}.portrait-frame{position:absolute;left:50%;top:0;transform:translateX(-50%);width:278px;height:278px;overflow:hidden;background:#e8e8e6;z-index:2}.portrait-frame img{position:absolute;width:240%;height:auto;left:-70%;top:-8%;animation:portrait-in .85s ease-out both}@keyframes portrait-in{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.hero-intro{display:grid;grid-template-columns:1fr 1fr;gap:30px;align-items:end}.disciplines p{font-size:16px;font-weight:600;letter-spacing:-.05em;margin:0 0 8px}.disciplines p:before{content:'▮▮▮';font-size:9px;letter-spacing:-.18em;margin-right:8px}.hero-intro>p{font-size:17px;line-height:1.35;letter-spacing:-.04em;max-width:430px;margin:0 0 6px auto;text-align:right}
.section-shell{padding:0 5%}.section-head{display:flex;justify-content:space-between;align-items:end;gap:25px;margin-bottom:60px}.heading-wrap{display:flex;align-items:start;gap:8px}.section-head h2{font-size:clamp(48px,5.2vw,76px);letter-spacing:-.09em;line-height:.95;font-weight:500;margin:0}.heading-wrap small{font-size:12px;color:#60615d}.pill{display:inline-flex;align-items:center;justify-content:center;gap:10px;border:0;border-radius:100px;background:#0b0b0b;color:#fff;padding:15px 23px;font-size:13px;white-space:nowrap;transition:transform .25s,background .25s}.pill:hover{background:#373737;transform:translateY(-3px)}.work-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.work-card{display:block;min-width:0}.work-cover{height:clamp(340px,35vw,550px);position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center;background:#ddd}.work-card:hover .work-visual{transform:scale(1.045)}.work-visual{transition:transform .5s ease}.cover-study{background:#dfe2d7}.cover-study img{width:100%;height:100%;object-fit:cover;mix-blend-mode:multiply}.cover-still{background:#c3ad9c}.still-sheet{width:65%;height:76%;padding:7%;background:#f0e6da;box-shadow:18px 23px 35px #32251d33;transform:rotate(5deg)}.still-sheet small{font-size:10px;letter-spacing:.18em}.still-sheet strong{font:normal clamp(56px,6.4vw,105px)/.88 Georgia,serif;letter-spacing:-.09em;display:block;margin:19% 0 10%}.still-sheet i{display:block;width:22%;aspect-ratio:1;background:#aa5b3e;border-radius:50%;margin-left:auto}.cover-clarity{background:#aebfc8}.dashboard{width:78%;height:60%;background:#f6f8f9;box-shadow:20px 26px 35px #1c303b40;transform:rotate(-5deg);display:grid;grid-template-columns:22% 1fr;padding:5px}.dash-side{border-right:1px solid #d9e0e3;padding:18px 10px;font-size:11px;line-height:2.7;color:#596c73}.dash-main{padding:8%}.dash-main small{letter-spacing:.15em;font-size:9px}.dash-main h3{font-size:clamp(20px,3vw,46px);letter-spacing:-.07em;margin:8% 0}.bars{display:flex;align-items:end;gap:5%;height:38%;border-bottom:1px solid #b9cbd2}.bars i{flex:1;background:#8babb9;height:var(--h)}.cover-common{background:#b5afbf}.common-board{width:74%;height:65%;background:#f5f2fa;padding:6%;box-shadow:18px 22px 30px #34303a40;transform:rotate(-5deg);display:flex;flex-direction:column;justify-content:space-between}.common-board strong{font-size:clamp(75px,10vw,160px);letter-spacing:-.12em;line-height:1}.swatches{display:flex;gap:2%}.swatches i{height:40px;flex:1;border-radius:50px;background:#9483af}.swatches i:nth-child(2){background:#c4bbd8}.swatches i:nth-child(3){background:#423d4d}.cover-shade{position:absolute;inset:0;background:linear-gradient(0deg,#0009 0%,transparent 48%);z-index:2}.card-caption{position:absolute;left:24px;bottom:20px;right:24px;z-index:3;color:#fff;display:flex;justify-content:space-between;align-items:end;gap:15px}.card-caption h3{font-size:clamp(26px,3vw,42px);letter-spacing:-.07em;font-weight:500;margin:0 0 3px}.card-caption p{font-size:12px;margin:0;opacity:.8}.card-caption span{font-size:29px}.work-note{font-size:11px;color:#777;margin:15px 0 0}.services-marquee{overflow:hidden;margin:140px 0 220px;padding:21px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.services-track{width:max-content;display:flex;gap:45px;white-space:nowrap;animation:service-slide 30s linear infinite;font-size:clamp(24px,3vw,42px);letter-spacing:-.06em}.services-track span:after{content:'✳';font-size:20px;margin-left:45px;vertical-align:middle}@keyframes service-slide{to{transform:translateX(-50%)}}
.about-preview{padding:0 5% 175px;display:grid;grid-template-columns:1.65fr 1fr;gap:9vw}.eyebrow{font-size:12px;color:#5d5e5b;margin:0 0 20px}.about-preview h2{font-size:clamp(21px,2vw,31px);font-weight:500;line-height:1.32;letter-spacing:-.055em;margin:0 0 18px;max-width:800px}.about-preview p{font-size:17px;letter-spacing:-.04em;line-height:1.45;margin:0}.about-aside{display:grid;grid-template-columns:1fr 1fr;gap:30px;align-content:start}.about-aside strong{font-size:28px;font-weight:500;letter-spacing:-.05em}.about-aside span{display:block;font-size:12px;color:#777;margin-top:7px}.about-aside .pill{grid-column:2;justify-self:start;margin-top:15px}.site-footer{padding:0 5% 25px}.footer-cta{border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;font-size:clamp(95px,12vw,180px);letter-spacing:-.1em;line-height:1.2;padding:20px 0 55px;white-space:nowrap}.footer-cta span{font-size:1.1em;transition:transform .25s}.footer-cta:hover span{transform:translateX(12px)}.footer-grid{display:grid;grid-template-columns:2fr 1.5fr 1fr;gap:40px;padding:40px 0 75px}.footer-grid h3{font-size:18px;font-weight:500;margin:0 0 12px}.footer-grid p{font-size:14px;line-height:1.4;color:#666;max-width:280px;margin:0}.footer-grid small{display:block;font-size:12px;color:#777;margin-bottom:16px}.footer-grid nav{display:flex;flex-direction:column;gap:3px}.footer-grid nav a{font-size:37px;letter-spacing:-.075em;line-height:1.22}.footer-grid nav a:hover{opacity:.45}.footer-bottom{border-top:1px solid var(--line);padding-top:19px;display:flex;justify-content:space-between;color:#666;font-size:12px}
.inner-main{padding:90px 5% 160px;min-height:70vh}.page-title{font-size:clamp(65px,9vw,135px);line-height:.98;letter-spacing:-.095em;font-weight:500;max-width:1200px;margin:0 0 55px}.page-intro{font-size:clamp(20px,2.4vw,32px);line-height:1.35;letter-spacing:-.05em;max-width:820px;margin:0 0 80px}.page-rule{border-top:1px solid var(--line);padding-top:22px}.filter-row{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 25px}.filter-row button{border:1px solid #ccc;background:none;border-radius:30px;padding:11px 18px;cursor:pointer}.filter-row button.active,.filter-row button:hover{background:#111;color:#fff;border-color:#111}.project-page .work-cover{height:clamp(340px,35vw,550px)}.about-columns{display:grid;grid-template-columns:1fr 1.5fr;gap:10vw;border-top:1px solid var(--line);padding-top:30px}.about-columns h2{font-size:14px;font-weight:500;margin:0}.about-columns p{font-size:clamp(22px,2.9vw,39px);line-height:1.25;letter-spacing:-.055em;margin:0 0 30px}.about-columns .small{font-size:17px;line-height:1.55;letter-spacing:-.02em;max-width:700px}.contact-block{border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 1fr;gap:30px;padding:25px 0 70px}.contact-block p{font-size:clamp(24px,3vw,42px);line-height:1.22;letter-spacing:-.055em;margin:0}.contact-block small{display:block;margin-top:30px;color:#777}
@media(max-width:760px){.site-header{grid-template-columns:1fr 1fr auto;padding:0 4%}.availability{display:none}.time-block{font-size:11px}.hero{padding:0 4% 100px}.hero-graphic{height:575px}.name-viewport{left:-4.4%;right:-4.4%;top:55px;height:170px}.name-track span{font-size:120px}.name-track b{font-size:90px}.portrait-frame{width:min(92vw,440px);height:390px;top:155px}.portrait-frame img{top:-8%}.hero-intro{grid-template-columns:1fr;gap:26px}.disciplines p{font-size:16px}.hero-intro>p{text-align:left;margin:0;font-size:16px}.section-shell{padding:0 4%}.section-head{margin-bottom:30px}.section-head h2{font-size:46px}.section-head .pill{padding:12px 16px}.work-grid{grid-template-columns:1fr}.work-cover{height:80vw;min-height:330px}.still-sheet strong{font-size:14vw}.dashboard{width:85%;height:60%}.common-board strong{font-size:23vw}.services-marquee{margin:100px 0 130px}.about-preview{padding:0 4% 120px;grid-template-columns:1fr;gap:45px}.about-aside{gap:15px}.about-aside .pill{grid-column:1/-1}.site-footer{padding:0 4% 20px}.footer-cta{font-size:14vw;padding-bottom:35px}.footer-grid{grid-template-columns:1fr 1fr;gap:35px}.footer-grid>div:first-child{grid-column:1/-1}.footer-grid nav a{font-size:28px}.footer-bottom{gap:15px}.inner-main{padding:60px 4% 100px}.page-title{font-size:60px}.about-columns,.contact-block{grid-template-columns:1fr;gap:35px}}@media(max-width:480px){.time-block{display:none}.site-header{grid-template-columns:1fr auto}.hero-graphic{height:535px}.portrait-frame{top:155px;height:355px}.name-viewport{top:55px}.section-head h2{font-size:40px}.section-head .pill{font-size:11px;padding:11px 13px}.card-caption{left:17px;bottom:17px}.footer-grid{grid-template-columns:1fr 1fr}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;scroll-behavior:auto!important;transition:none!important}}
