:root{--paper:#f7f5ef;--paper2:#efede5;--ink:#191a18;--muted:#6e706b;--line:#d0cec5;--gutter:clamp(22px,6.2vw,100px);--serif:Georgia,'Times New Roman',serif;--sans:Arial,Helvetica,sans-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);font-size:15px;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}a:focus-visible,button:focus-visible{outline:2px solid var(--ink);outline-offset:4px}.wrap{width:min(100% - 2*var(--gutter),1500px);margin-inline:auto}.header{width:min(100% - 2*var(--gutter),1500px);margin:0 auto;min-height:94px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);position:relative;z-index:5}.brand{display:flex;align-items:center}.brand img{display:block;width:138px;height:auto;max-height:55px;object-fit:contain;object-position:left center}.nav{display:flex;gap:clamp(22px,3vw,52px);align-items:center}.nav a{font-size:11px;letter-spacing:1.5px;text-transform:uppercase;color:#4b4c48;padding:12px 0;border-bottom:1px solid transparent}.nav a:hover,.nav a[aria-current=page]{border-bottom-color:var(--ink);color:var(--ink)}.menu-toggle{display:none;background:none;border:0;padding:10px;cursor:pointer}.menu-toggle span{display:block;width:23px;height:1px;background:var(--ink);margin:6px 0}.hero-intro{padding-top:clamp(70px,10vw,145px);padding-bottom:clamp(40px,6vw,82px);position:relative}.hero-label,.eyebrow{font-size:10px;letter-spacing:2.4px;text-transform:uppercase;color:var(--muted);margin:0 0 20px}.hero-label span{padding:0 8px;color:#aaa}.hero-meta{display:flex;justify-content:space-between;align-items:center;gap:20px}.hero-meta .hero-credit span{padding:0 8px;color:#aaa}.hero-social{display:flex;align-items:center;gap:10px;white-space:nowrap}.hero-social a{color:var(--muted);transition:color .2s}.hero-social a:hover{color:var(--ink)}.hero-social .profile-separator{padding:0;color:#aaa}.hero-intro h1,.page-hero h1{font-size:clamp(62px,11vw,160px);font-weight:400;letter-spacing:-.085em;line-height:.86;margin:0;max-width:1100px}.period{color:#a6a293}.tagline{font-family:var(--serif);font-style:italic;font-size:clamp(19px,2.4vw,30px);margin:25px 0 0;color:#565750}.scribble{width:min(290px,45vw);height:34px;margin:32px 0 0 3px;transform:rotate(-1deg)}.scribble svg{width:100%;height:100%;overflow:visible}.scribble path{fill:none;stroke:#8c897e;stroke-width:1.25;stroke-linecap:round}.hero-image{position:relative;overflow:hidden;margin-bottom:0}.hero-image>img{display:block;width:100%;height:clamp(300px,52vw,690px);max-height:72vh;object-fit:cover;object-position:center 56%}.image-caption{display:flex;justify-content:space-between;gap:20px;font-size:9px;letter-spacing:1.8px;text-transform:uppercase;color:var(--muted);margin:12px 0 0}.image-caption .aka{font-style:italic;text-transform:none;letter-spacing:.4px;font-size:10px;margin:0 4px}.hero-image{margin-bottom:24px}.intro-copy{padding-top:clamp(80px,12vw,170px);padding-bottom:clamp(85px,12vw,165px)}.intro-grid{display:grid;grid-template-columns:1.05fr .8fr;gap:10%;align-items:start}.intro-grid h2,.closing h2,.services>h2,.awards>h2{font-size:clamp(42px,6.2vw,88px);font-weight:400;letter-spacing:-.065em;line-height:.98;margin:0}.intro-grid h2 em,.closing h2 em,.page-hero h1 em{font-family:var(--serif);font-weight:400}.intro-grid>div{max-width:510px;padding-top:7px}.intro-grid p,.about-text p,.page-lead{font-size:clamp(15px,1.35vw,18px);line-height:1.8;color:#53554f;margin:0 0 22px}.text-link{display:inline-flex;gap:25px;align-items:center;border-bottom:1px solid #8f9087;padding:0 0 9px;margin-top:13px;font-size:11px;letter-spacing:1.2px;text-transform:uppercase}.text-link span,.button-link span{font-size:17px;transition:transform .2s}.text-link:hover span,.button-link:hover span{transform:translate(3px,-2px)}.work-section{padding-top:65px;padding-bottom:clamp(95px,13vw,180px)}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:25px;margin-bottom:40px}.section-heading h2{font-size:clamp(44px,7vw,90px);font-weight:400;letter-spacing:-.07em;line-height:1;margin:0}.section-heading .text-link{margin-bottom:8px}.work-row{display:grid;grid-template-columns:70px 1fr 40px;gap:22px;align-items:center;border-top:1px solid var(--line);padding:25px 5px 27px;transition:padding .25s,background .25s}.work-row:last-child{border-bottom:1px solid var(--line)}.work-row:hover{padding-left:15px;padding-right:15px;background:rgba(0,0,0,.018)}.work-number{font-size:11px;letter-spacing:1px;color:var(--muted)}.work-title h3{font-family:var(--serif);font-weight:400;font-size:clamp(25px,3.5vw,42px);letter-spacing:-1px;margin:0 0 7px}.work-title p{font-size:11px;letter-spacing:.6px;color:var(--muted);margin:0;line-height:1.6}.work-arrow{font-size:22px;text-align:right}.numbers-band{background:var(--paper2);padding:clamp(55px,8vw,100px) 0}.numbers-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}.numbers-grid>div{padding-left:22px;border-left:1px solid #b9b6ab}.numbers-grid strong{display:block;font-family:var(--serif);font-size:clamp(32px,4.8vw,62px);font-weight:400;letter-spacing:-2px;margin-bottom:13px}.numbers-grid span{font-size:10px;line-height:1.8;letter-spacing:1px;text-transform:uppercase;color:var(--muted)}.closing{padding-top:clamp(95px,14vw,185px);padding-bottom:clamp(100px,15vw,190px)}.closing h2{margin-bottom:30px}.button-link{display:inline-flex;gap:28px;align-items:center;border:1px solid #aaa89f;padding:15px 20px;font-size:11px;letter-spacing:1px;text-transform:uppercase}.footer{border-top:1px solid var(--line);padding:23px 0 28px;display:flex;justify-content:space-between;align-items:center;gap:25px}.footer-brand{font-size:21px;letter-spacing:-1px;font-weight:600;display:flex;gap:13px;align-items:center}.footer-brand span{font-size:9px;font-weight:400;letter-spacing:1.3px;color:var(--muted)}.footer-links{display:flex;gap:clamp(12px,2vw,28px);flex-wrap:wrap;align-items:center}.footer-links a,.footer-links span{font-size:9px;letter-spacing:1px;text-transform:uppercase;color:var(--muted)}.page-hero{padding-top:clamp(80px,12vw,155px);padding-bottom:clamp(60px,9vw,120px)}.page-hero h1{font-size:clamp(60px,9vw,125px);line-height:.91;margin-bottom:28px}.page-hero .page-lead{max-width:650px;margin-top:28px}.small-scribble{margin-top:22px}.about-main{display:grid;grid-template-columns:.8fr 1.1fr;gap:clamp(35px,9vw,135px);align-items:start;padding-bottom:clamp(90px,12vw,150px)}.portrait-wrap img{display:block;width:100%;max-height:580px;object-fit:cover;object-position:center 22%;filter:grayscale(100%)}.about-text h2,.contact-main h2{font-family:var(--serif);font-weight:400;font-size:clamp(35px,4.6vw,60px);letter-spacing:-2px;margin:0 0 25px}.about-text .eyebrow{margin-bottom:25px}.about-text p{font-size:15px;line-height:1.85}.services{padding-top:75px;padding-bottom:clamp(90px,12vw,150px);border-top:1px solid var(--line)}.services>h2{margin-bottom:55px}.service-grid{display:grid;grid-template-columns:repeat(2,1fr);column-gap:9%;row-gap:45px}.service-grid article{border-top:1px solid var(--line);padding-top:17px}.service-grid article>span,.detail-number{font-size:10px;letter-spacing:1.5px;color:var(--muted)}.service-grid h3{font-family:var(--serif);font-weight:400;font-size:27px;margin:18px 0 10px}.service-grid p,.teaching p{font-size:13px;line-height:1.8;color:#5c5e57}.teaching{border-top:1px solid var(--line);padding-top:28px;padding-bottom:80px}.teaching p:last-child{max-width:650px;font-size:16px}.service-detail-list{padding-bottom:90px}.service-detail-list article{display:grid;grid-template-columns:70px 1fr;gap:25px;border-top:1px solid var(--line);padding:35px 0 38px}.service-detail-list article:last-child{border-bottom:1px solid var(--line)}.service-detail-list h2{font-family:var(--serif);font-size:clamp(29px,4vw,46px);font-weight:400;letter-spacing:-1.5px;margin:0 0 12px}.service-detail-list p{max-width:750px;color:#55574f;line-height:1.75}.service-detail-list .service-tags{font-size:11px;letter-spacing:.5px;color:var(--muted)}.format-band{background:var(--paper2);padding:55px 0 65px}.format-band>div>p:last-child{font-family:var(--serif);font-size:clamp(23px,3.4vw,40px);line-height:1.5;max-width:950px}.credits{padding-bottom:100px}.credits-heading{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);padding-bottom:12px}.credits-heading span{font-size:9px;letter-spacing:1.6px;color:var(--muted)}.credits-heading .eyebrow{margin:0}.credit-row{display:grid;grid-template-columns:45px minmax(0,1fr) 150px;gap:20px;align-items:center;border-bottom:1px solid var(--line);padding:24px 0}.credit-index{font-size:10px;color:var(--muted)}.credit-row h2{font-family:var(--serif);font-weight:400;font-size:clamp(22px,3vw,33px);letter-spacing:-.6px;margin:0 0 7px}.credit-row p{font-size:11px;color:var(--muted);margin:0;line-height:1.6}.credit-type{text-align:right;font-size:9px;letter-spacing:1.3px;color:var(--muted)}.small-note{font-size:11px;color:var(--muted);line-height:1.7;max-width:720px;margin:30px 0}.awards{border-top:1px solid var(--line);padding-top:65px;padding-bottom:110px}.awards>h2{margin-bottom:45px}.award-row{display:grid;grid-template-columns:75px 1fr;gap:22px;padding:19px 0;border-top:1px solid var(--line)}.award-row>span{font-size:11px;color:var(--muted)}.award-row p{font-size:13px;line-height:1.7;margin:0;max-width:800px}.contact-main{display:grid;grid-template-columns:1fr 1fr;gap:10%;padding-bottom:clamp(100px,15vw,180px)}.contact-main h2{line-height:1.05}.contact-main p{font-size:14px;line-height:1.8;color:#5c5e57}.contact-links{border-top:1px solid var(--line)}.contact-links>a{display:flex;justify-content:space-between;gap:15px;border-bottom:1px solid var(--line);padding:20px 0}.contact-links>a span:first-child{font-family:var(--serif);font-size:25px}.contact-links>a span:last-child{font-size:10px;letter-spacing:.8px;color:var(--muted);align-self:center}.contact-links .small-note{margin-top:25px}
@media(max-width:760px){:root{--gutter:6vw}.header{min-height:76px}.brand img{width:115px}.menu-toggle{display:block}.nav{display:none;position:absolute;top:100%;left:0;right:0;background:var(--paper);border-bottom:1px solid var(--line);padding:16px 0 22px;flex-direction:column;align-items:flex-start;gap:0}.nav.is-open{display:flex}.nav a{padding:13px 0;width:100%}.hero-intro{padding-top:75px}.hero-meta{align-items:flex-start;flex-wrap:wrap}.hero-social{margin-left:auto;font-size:9px;letter-spacing:1.4px}.hero-intro h1{font-size:clamp(56px,15vw,100px)}.hero-image>img{height:57vw;min-height:270px}.intro-grid{grid-template-columns:1fr;gap:30px}.intro-grid h2{font-size:clamp(48px,11vw,74px)}.section-heading{align-items:flex-start;flex-direction:column}.section-heading h2{font-size:56px}.section-heading .text-link{margin-top:0}.work-row{grid-template-columns:35px 1fr 25px;gap:12px;padding:22px 0}.work-title h3{font-size:26px}.work-title p{font-size:10px}.numbers-grid{grid-template-columns:1fr;gap:32px}.numbers-grid>div{padding:0 0 0 18px}.numbers-grid strong{font-size:42px}.footer{align-items:flex-start;flex-direction:column}.footer-links{gap:15px}.about-main{grid-template-columns:1fr;gap:38px}.portrait-wrap img{max-height:440px;object-position:center 24%}.service-grid{grid-template-columns:1fr;row-gap:30px}.service-detail-list article{grid-template-columns:30px 1fr;gap:14px}.credit-row{grid-template-columns:28px 1fr;gap:12px}.credit-type{grid-column:2;text-align:left;margin-top:3px}.credits-heading span{font-size:8px}.award-row{grid-template-columns:50px 1fr;gap:12px}.contact-main{grid-template-columns:1fr;gap:35px}.page-hero h1{font-size:clamp(55px,13vw,90px)}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important}}

/* Refined brand treatment: keep the original geometric ZSD wordmark, remove decorative wave scribbles. */
.scribble,.small-scribble{display:none!important}
.brand img{width:178px;max-height:62px}
@media(max-width:760px){.brand img{width:145px;max-height:52px}}

/* Homepage profile links: subtle and aligned with the eyebrow line */
.hero-label a{color:inherit;text-decoration:none;border-bottom:1px solid transparent;transition:border-color .2s}.hero-label a:hover{border-bottom-color:currentColor}.hero-label .profile-separator{padding:0 5px;color:#aaa}

/* Mobile refinement: keep profile links on a clean separate line and use restrained text arrows. */
.hero-social a{font-size:inherit;letter-spacing:inherit;border-bottom:1px solid transparent;padding-bottom:3px}
.hero-social a:hover{border-bottom-color:currentColor}
.work-arrow{font-family:Arial,Helvetica,sans-serif;font-size:20px;font-weight:400;color:var(--muted);line-height:1}
.text-link span,.button-link span{color:var(--muted);font-family:Arial,Helvetica,sans-serif}
@media(max-width:760px){
  .hero-meta{display:flex;flex-direction:column;align-items:flex-start;gap:22px}
  .hero-meta .hero-credit{font-size:10px;letter-spacing:2px}
  .hero-social{margin:0;align-self:flex-start;gap:12px;font-size:10px;letter-spacing:1.5px}
  .work-row{grid-template-columns:28px minmax(0,1fr) 18px;gap:10px;padding:23px 0}
  .work-title h3{font-size:clamp(24px,6.3vw,29px);line-height:1.16;letter-spacing:-.7px}
  .work-arrow{font-size:18px}
  .section-heading .text-link{gap:14px}
}

.contact-form-wrap{border-top:1px solid var(--line);padding-top:24px}.contact-form{display:flex;flex-direction:column;align-items:stretch}.contact-form label{font-size:10px;letter-spacing:1.2px;text-transform:uppercase;color:var(--muted);margin:19px 0 8px}.contact-form input,.contact-form textarea{width:100%;border:1px solid var(--line);border-radius:0;background:transparent;color:var(--ink);font:inherit;padding:13px 14px;outline-offset:3px}.contact-form textarea{resize:vertical;min-height:140px}.contact-form .button-link{margin-top:22px;align-self:flex-start;background:transparent;cursor:pointer}.contact-form .small-note{font-size:11px;margin:18px 0 0;line-height:1.7;color:var(--muted)}
