@font-face{font-family:'Space Grotesk';src:url('../fonts/space-grotesk-regular.ttf') format('truetype');font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:'DM Sans';src:url('../fonts/dm-sans-semibold.ttf') format('truetype');font-style:normal;font-weight:600;font-display:swap}
:root{--paper:#f1f6f4;--ink:#082e29;--green:#082e29;--line:#cedcd6;--muted:#48645b;--mint:#bde3dc;--display:'Space Grotesk',Arial,Helvetica,sans-serif;--sans:Arial,Helvetica,sans-serif;--wordmark:'DM Sans',Arial,Helvetica,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:1rem;line-height:1.6}a{color:inherit;text-decoration:none}button{font:inherit}button,a,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--green);outline-offset:5px}::selection{background:var(--mint);color:var(--ink)}h1,h2,h3,p{margin:0}h1,h2,h3{font-weight:500;line-height:1.05;letter-spacing:-.045em}p+p{margin-top:1.1rem}.display-accent{font-family:var(--display);font-style:normal;font-weight:400}img{display:block;width:100%;height:100%;object-fit:cover}.wrap{width:min(1320px,calc(100% - 112px));margin-inline:auto}.section{padding-block:108px}.eyebrow{font-size:.875rem;text-transform:uppercase;letter-spacing:.11em;font-weight:600;line-height:1.5}.skip-link{position:absolute;left:16px;top:-90px;background:var(--ink);color:white;padding:12px 20px;z-index:20}.skip-link:focus{top:12px}
.site-header{display:flex;align-items:center;justify-content:space-between;padding:25px 56px;max-width:1600px;margin:auto;border-bottom:1px solid var(--line);gap:32px}.wordmark{font-family:var(--wordmark);font-size:1.8rem;font-weight:600;letter-spacing:-.045em;line-height:1.3;white-space:nowrap}
.hero{padding-top:54px;padding-bottom:0}.hero-topline{display:flex;justify-content:space-between;gap:20px}.location{font-size:.9rem;color:var(--muted)}.hero h1{font-size:clamp(4.1rem,8.8vw,8.2rem);letter-spacing:-.062em;line-height:1.02;margin:48px 0 34px}.hero h1 .display-accent{color:var(--green);letter-spacing:-.045em;line-height:1.12}.hero-bottom{display:flex;align-items:center;justify-content:space-between;gap:70px;margin-bottom:44px}.hero-intro{font-size:1.25rem;line-height:1.5;max-width:540px;letter-spacing:-.015em}.hero-actions{display:flex;align-items:center;gap:27px;flex-shrink:0}.button{display:inline-flex;align-items:center;justify-content:center;min-height:54px;padding:14px 28px;border-radius:100px;background:var(--green);color:white;font-size:1rem;transition:background .2s,transform .2s}.button:hover{background:#174e43;transform:translateY(-2px)}.text-link{border-bottom:1px solid currentColor;padding-bottom:3px;font-size:1rem;display:inline-block}.text-link:hover{color:var(--green)}.experience-strip{background:var(--ink);color:var(--paper);margin-top:28px}.strip-inner{padding-block:28px;display:flex;align-items:center;justify-content:space-between;gap:32px}.strip-label{font-size:.875rem;max-width:150px;line-height:1.5;color:#bde3dc}.experience-names{display:flex;align-items:center;justify-content:space-between;gap:40px;width:78%;font-size:1.4rem;letter-spacing:-.04em}
.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:64px;margin-bottom:52px}.section-heading h2{font-size:clamp(2.5rem,4vw,3.8rem);margin-top:21px}.heading-note{max-width:340px;font-size:1.06rem;line-height:1.65;color:var(--muted)}.work-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px;align-items:start}.work-card{min-width:0}.work-image{aspect-ratio:1.17;overflow:hidden;position:relative;transition:border-radius .3s;border-radius:2px}.work-card:hover .work-image{border-radius:16px}.work-image img{transition:transform .6s}.work-card:hover .work-image img{transform:scale(1.025)}.muse-visual{background:#dcece5}.splash-visual{background:#d2e4e3}.music-visual{background:var(--green);color:white}.image-fallback{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;height:100%;padding:32px}.image-fallback>span{font-size:3.8rem;font-weight:600;letter-spacing:-.055em;line-height:1}.image-fallback>small{font-size:.875rem;margin-top:28px}.muse-visual .image-fallback>span{font-family:var(--display);font-size:5.3rem}.work-body{padding-top:22px}.work-meta{display:flex;justify-content:space-between;gap:12px;font-size:.75rem;color:var(--muted);margin-bottom:15px}.work-body h3{font-size:1.65rem;line-height:1.12;letter-spacing:-.04em;margin-bottom:15px}.work-body>p{font-size:1rem;color:var(--muted);line-height:1.65;min-height:106px}details{margin-top:22px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}summary{cursor:pointer;display:flex;align-items:center;justify-content:space-between;list-style:none;padding:15px 0;font-size:.875rem;font-weight:600;gap:12px}summary::-webkit-details-marker{display:none}summary::after{content:"+";font-size:1.4rem;font-weight:400;line-height:1;transition:transform .2s}details[open] summary::after{content:"+";transform:rotate(45deg)}.case-detail{font-size:.9375rem;line-height:1.65;padding-bottom:21px}.case-detail ul{padding-left:18px;margin:16px 0}.case-detail li+li{margin-top:8px}.case-role{font-size:.875rem;color:var(--muted)}.image-credit{font-size:.75rem;color:var(--muted);margin-top:8px;line-height:1.5}.image-credit a{text-decoration:underline;text-underline-offset:3px}
.approach{background:var(--green);color:white}.approach .eyebrow{color:#bde3dc}.approach .heading-note{color:#e4f1ed}.approach-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:30px;margin-top:70px}.approach-grid article{border-top:1px solid #ffffff70;padding-top:21px}.item-number{font-size:.875rem;color:#bde3dc}.approach-grid h3{font-size:1.45rem;line-height:1.2;margin-top:26px;margin-bottom:18px}.approach-grid p{line-height:1.7;color:#e4f1ed;font-size:1rem}
.about{display:grid;grid-template-columns:1.25fr 1fr;gap:110px}.about h2{font-size:clamp(2.8rem,4.5vw,4.3rem);line-height:1.12;margin:22px 0 30px}.about h2 .display-accent{color:var(--green)}.about-copy>p{max-width:535px}.about-copy>.large-copy{font-size:1.3rem;line-height:1.5;letter-spacing:-.015em;margin-bottom:23px}.about-copy>p:not(.eyebrow):not(.large-copy){color:var(--muted)}.about-copy>.text-link{margin-top:30px}.career{padding-top:7px}.career-entries{margin:25px 0 0;padding:0}.career-entry{border-top:1px solid var(--line);padding:20px 0;position:relative}.career-date{font-size:.75rem;color:var(--muted);display:block;margin-bottom:8px}.career h3{font-size:1.45rem;letter-spacing:-.035em;line-height:1.3;margin-bottom:3px}.career p{font-size:.875rem;color:var(--muted)}
.offer{background:var(--mint)}.offer-inner{display:grid;grid-template-columns:1.2fr 1fr;gap:100px;align-items:start}.offer h2{font-size:clamp(2.5rem,3.9vw,3.8rem);margin:22px 0 24px;line-height:1.1}.offer-inner>div>p:last-child{max-width:440px;font-size:1.06rem}.offer-list{margin:0;padding:0;list-style:none}.offer-list .offer-item{display:flex;align-items:baseline;gap:23px;border-top:1px solid #082e2955;padding:20px 0;font-size:1.15rem;letter-spacing:-.02em}.offer-list .offer-item:last-child{border-bottom:1px solid #082e2955}.offer-list .offer-number{font-size:.75rem;letter-spacing:0}
.contact{padding-block:100px 105px}.contact-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:70px;align-items:end;margin-top:24px}.contact h2{font-size:clamp(3.6rem,6vw,5.8rem);line-height:1.07}.contact h2 .display-accent{color:var(--green)}.contact-grid>div>p{font-size:1.125rem;color:var(--muted);margin-top:25px}.contact-links{display:flex;flex-direction:column;align-items:flex-start;gap:15px;padding-bottom:6px}.email-link{font-size:clamp(1.1rem,1.8vw,1.65rem);letter-spacing:-.035em;border-bottom:1px solid var(--ink);line-height:1.4;overflow-wrap:anywhere}.phone-link{font-size:1.35rem;letter-spacing:-.02em}.contact-links a:hover{color:var(--green);border-color:var(--green)}.site-footer{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;border-top:1px solid var(--line);padding-block:30px;gap:24px}.back-top{font-size:.875rem;color:var(--muted)}.back-top:hover{color:var(--green)}
@media(min-width:1600px){.hero h1{font-size:8.8rem}}
@media(max-width:1100px){.wrap{width:calc(100% - 64px)}.site-header{padding-inline:32px}.hero h1{font-size:clamp(4rem,9.3vw,7rem)}.hero-bottom{gap:32px}.hero-intro{font-size:1.125rem;max-width:490px}.hero-actions{gap:20px}.hero-actions .button{padding-inline:22px}.experience-names{font-size:1.2rem;gap:24px}.section-heading{gap:35px}.heading-note{max-width:300px}.work-grid{gap:20px}.work-image{aspect-ratio:1}.work-body h3{font-size:1.5rem}.work-meta{flex-direction:column;gap:3px}.work-body>p{min-height:132px}.approach-grid{gap:24px}.approach-grid h3{font-size:1.3rem}.about{gap:70px}.offer-inner{gap:60px}.contact-grid{gap:40px}}
@media(max-width:800px){.section{padding-block:72px}.site-header .wordmark{font-size:1.6rem}.hero{padding-top:36px}.hero h1{font-size:clamp(3.5rem,9.3vw,5.5rem);margin-top:38px;margin-bottom:30px}.hero-bottom{align-items:flex-start;flex-direction:column;gap:26px;margin-bottom:40px}.hero-intro{max-width:520px}.experience-names{width:auto;flex-wrap:wrap;justify-content:flex-start;gap:12px 28px}.strip-inner{align-items:flex-start;gap:35px}.strip-label{flex:0 0 125px}.section-heading{align-items:flex-start;flex-direction:column;gap:26px;margin-bottom:36px}.heading-note{max-width:520px}.work-grid{grid-template-columns:1fr 1fr;gap:42px 22px}.music-card{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:24px}.music-card .work-body{padding-top:0}.work-body>p{min-height:0}.work-meta{flex-direction:row;gap:10px}.work-body h3{font-size:1.55rem}.approach-grid{grid-template-columns:1fr 1fr;gap:38px 32px;margin-top:45px}.approach-grid h3{font-size:1.5rem;margin-top:17px}.about{gap:40px;grid-template-columns:1.1fr 1fr}.about h2{font-size:2.8rem}.about-copy>.large-copy{font-size:1.15rem}.offer-inner{grid-template-columns:1fr;gap:35px}.offer-inner>div>p:last-child{max-width:530px}.contact-grid{grid-template-columns:1fr;gap:40px}.contact-links{gap:12px}.contact-links .email-link{font-size:1.5rem}}
@media(max-width:600px){html{scroll-padding-top:30px}.wrap{width:calc(100% - 40px)}.site-header{padding:21px 20px;gap:15px;position:relative;flex-wrap:wrap}.site-header .wordmark{font-size:1.6rem}.hero{padding-top:31px}.hero-topline{gap:14px;align-items:flex-start;flex-direction:column}.eyebrow{font-size:.75rem;letter-spacing:.1em}.location{font-size:.875rem}.hero h1{font-size:clamp(2.7rem,10.3vw,4rem);line-height:1.1;letter-spacing:-.055em;margin:27px 0}.hero h1 .display-accent{letter-spacing:-.055em;line-height:1.12}.hero-intro{font-size:1.0625rem;line-height:1.6}.hero-bottom{margin-bottom:34px}.hero-actions{gap:23px}.button{padding:13px 23px;min-height:50px;font-size:.9375rem}.hero-actions .text-link{font-size:.9375rem}.experience-strip{margin-top:15px}.strip-inner{flex-direction:column;gap:18px;padding-block:25px}.strip-label{max-width:none;flex:initial;font-size:.8125rem}.experience-names{font-size:1.15rem;gap:12px 23px;line-height:1.4}.section{padding-block:58px}.section-heading{gap:23px;margin-bottom:30px}.section-heading h2{font-size:2.45rem;line-height:1.12;margin-top:16px}.heading-note{font-size:1rem}.work-grid{grid-template-columns:1fr;gap:42px}.work-image{aspect-ratio:1.3}.music-card{grid-column:auto;display:block}.music-card .work-body{padding-top:22px}.work-body{padding-top:19px}.work-meta{font-size:.75rem;margin-bottom:13px}.work-body h3{font-size:1.8rem;margin-bottom:13px}.work-body>p{font-size:1rem}.approach-grid{grid-template-columns:1fr;gap:32px;margin-top:30px}.approach-grid article{display:grid;grid-template-columns:26px 1fr;gap:0 16px;padding-top:19px}.item-number{grid-column:1;grid-row:1;align-self:center}.approach-grid h3{grid-column:2;margin:0 0 12px;font-size:1.6rem}.approach-grid p{grid-column:2;line-height:1.65}.about{grid-template-columns:1fr;gap:45px}.about h2{font-size:2.65rem;line-height:1.14;margin-top:17px;margin-bottom:25px}.about-copy>.large-copy{font-size:1.2rem}.career{padding-top:0}.career-entry{padding-block:18px}.career h3{font-size:1.45rem}.offer-inner{gap:30px}.offer h2{font-size:2.5rem;margin-top:17px}.offer-list .offer-item{font-size:1.08rem;padding-block:18px;gap:20px}.contact-grid{margin-top:17px;gap:30px}.contact h2{font-size:3.4rem;line-height:1.08}.contact-grid>div>p{font-size:1.0625rem;margin-top:22px}.contact-links .email-link{font-size:1.25rem;letter-spacing:-.03em}.phone-link{font-size:1.25rem}.site-footer{padding-block:25px}.site-footer .wordmark{font-size:1.55rem}.back-top{font-size:.8125rem}}
.muse-visual img{object-position:28% center}.music-visual img{object-position:43% center}h1,h2,h3,.wordmark{overflow-wrap:anywhere}.site-header .wordmark{white-space:normal}.image-fallback{display:none}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}

.portrait{margin:0 0 34px;width:100%;aspect-ratio:1.18;overflow:hidden;border-radius:3px;background:var(--mint)}.portrait img{object-position:center 27%}.about-aside{min-width:0}.hero-actions{flex-wrap:wrap;max-width:100%}
@media(max-width:800px){.portrait{aspect-ratio:1;margin-bottom:30px}}
@media(max-width:600px){.portrait{aspect-ratio:1.1;max-width:480px;margin-inline:auto;margin-bottom:32px}.site-footer .wordmark{white-space:normal}}

.hero h1,.about h2,.contact h2{font-weight:600}

/* WordPress blocks use the same design, with all content editable. */
.wp-site-blocks{padding:0}.wp-site-blocks>*,.wp-block-template-part{margin-block-start:0}
.wp-block-image{margin:0}.wp-block-image img{max-width:100%}
.work-image.wp-block-image img,.portrait.wp-block-image img{height:100%;width:100%;object-fit:cover}
.portrait.wp-block-image{margin-bottom:34px}
.hero-topline>p,.work-meta>p,.experience-names>p,.site-header>p,.site-footer>p,.contact-links>p,.offer-item>p{margin:0}
.career-entry>p{margin-top:0}.career-entry>.career-date{font-size:.75rem;margin-bottom:8px}
.career>.eyebrow{font-size:.875rem;color:var(--ink);letter-spacing:.11em}
.approach-grid .item-number{font-size:.875rem;color:var(--mint)}
.hero-actions.wp-block-buttons{gap:27px;flex-wrap:wrap;flex-shrink:0}
.portfolio-button .wp-block-button__link{display:inline-flex;align-items:center;justify-content:center;min-height:54px;padding:14px 28px;border-radius:100px;background:var(--green);color:white;font-size:1rem;line-height:1.6;transition:background .2s,transform .2s;white-space:normal}
.portfolio-button .wp-block-button__link:hover{background:#174e43;transform:translateY(-2px)}
.portfolio-text-link .wp-block-button__link{border-radius:0;border:0;border-bottom:1px solid currentColor;background:transparent;color:var(--ink);padding:0 0 3px;font-size:1rem;line-height:1.6;box-shadow:none}
.about-copy>.text-link{border:0;padding:0}.about-copy>.text-link a{display:inline-block;border-bottom:1px solid currentColor;padding-bottom:3px}
.contact-links p.email-link{border:0}.contact-links .email-link a{border-bottom:1px solid var(--ink);padding-bottom:3px}
.contact-grid>.contact-links>p{margin:0;font-size:inherit;color:var(--ink)}
.site-header .portfolio-nav{font-size:.9rem;margin:0;gap:33px;color:var(--ink);background:transparent}
.portfolio-nav .wp-block-navigation__container{gap:33px}
.portfolio-nav .wp-block-navigation-item__content:hover{text-decoration:underline;text-underline-offset:5px}
.portfolio-nav .nav-contact>a{border:1px solid var(--ink);padding:9px 18px;border-radius:100px;line-height:1.6}
.portfolio-nav .nav-contact>a:hover{background:var(--ink);color:var(--paper);text-decoration:none}
.portfolio-nav .wp-block-navigation__responsive-container.is-menu-open{background:var(--paper);color:var(--ink);padding:32px}
.portfolio-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container{gap:26px;align-items:flex-start;font-size:1.3rem}
.portfolio-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content{padding:0}
.portfolio-nav .wp-block-navigation__responsive-container.is-menu-open .nav-contact>a{padding:9px 18px}
.portfolio-nav .wp-block-navigation__responsive-container-open,.portfolio-nav .wp-block-navigation__responsive-container-close{padding:8px}
.site-footer .wordmark{color:var(--ink);margin:0}.site-footer .back-top{margin:0}
.standard-page h1{font-size:clamp(2.6rem,5vw,4.5rem);margin-bottom:30px}.standard-page .wp-block-post-content{max-width:800px}.standard-page .wp-block-post-content>*{margin-block:1rem}.standard-page .wp-block-post-content a{text-decoration:underline}
@media(max-width:1100px){.hero-actions.wp-block-buttons{gap:20px}.portfolio-button .wp-block-button__link{padding-inline:22px}}
@media(max-width:800px){.portfolio-nav .wp-block-navigation__container{gap:20px}.site-header .portfolio-nav{font-size:.875rem}.portfolio-nav .nav-contact>a{padding:8px 13px}.portrait.wp-block-image{margin-bottom:30px}}
@media(max-width:600px){.hero-actions.wp-block-buttons{gap:23px}.portfolio-button .wp-block-button__link{padding:13px 23px;min-height:50px;font-size:.9375rem}.portfolio-text-link .wp-block-button__link{font-size:.9375rem}.approach-grid .item-number{grid-column:1;grid-row:1;margin:0;align-self:start;padding-top:5px}.approach-grid article>p:not(.item-number){margin:0}.portrait.wp-block-image{margin-inline:auto;margin-bottom:32px}.site-header .portfolio-nav{margin-left:auto}.hero-topline>.location{margin:0}}
.hero .hero-bottom{margin-bottom:44px}
.experience-strip.wp-block-group{margin-top:28px}
.approach .approach-grid{margin-top:70px}
.career .career-entries{margin-top:25px}
.contact .contact-grid{margin-top:24px}
.work-body details{margin-top:22px}
.about-copy>p+p,.case-detail>p+p{margin-top:1.1rem}
.case-detail>p.image-credit{margin-top:8px}
@media(max-width:800px){.hero .hero-bottom{margin-bottom:40px}.approach .approach-grid{margin-top:45px}}
@media(max-width:600px){.hero .hero-bottom{margin-bottom:34px}.experience-strip.wp-block-group{margin-top:15px}.approach .approach-grid{margin-top:30px}.contact .contact-grid{margin-top:17px}}
