/* Editorial direction: serif display, mineral palette, expansive project panels. */
:root{--paper:#e1e3dc;--ink:#333a32;--muted:#535b51;--line:#bfc5ba;--accent:#364932;--bright:#dfe8d4;--wash:#d4d9cf;--max:1280px;--serif:Georgia,'Times New Roman',serif;--mono:'SFMono-Regular',Consolas,'Liberation Mono',monospace}
body{background:linear-gradient(180deg,#f8f8f4 0,#e1e3dc 850px,#d7dbd2 1800px,#e1e3dc 100%)}
h1,h2,h3{font-family:var(--serif);font-weight:400;letter-spacing:-.05em}em{color:inherit}.eyebrow,.card-meta,.filters button,.result-count,.button,.signature-label,.section-rule,.showcase-number,.showcase-category,.header nav,.footer,.case-figure figcaption,dt,.case-next span{font-family:var(--mono);font-weight:400;letter-spacing:.035em}.eyebrow{color:var(--muted);font-size:.75rem;line-height:1.6}
.wrap{width:min(var(--max),calc(100% - 64px))}
.header{background:transparent;border:0;padding:24px 0 0;position:sticky;top:0;pointer-events:none;z-index:40}
.header-inner{pointer-events:auto;width:min(900px,calc(100% - 64px));padding:8px 20px;border:1px solid rgba(77,87,70,.12);border-radius:100px;background:rgba(228,232,222,.93);backdrop-filter:blur(16px);min-height:58px;gap:22px}
.brand{display:flex;gap:14px;align-items:center;font-family:var(--serif);font-weight:400;white-space:nowrap}.brand .brand-mark{display:block;font-size:1.75rem;line-height:1;margin:0;letter-spacing:-.08em;color:var(--ink);font-family:var(--serif)}.brand .brand-name{display:block;font:400 .75rem var(--mono);letter-spacing:0;color:var(--ink);margin:0}.header nav{gap:0;flex:1;justify-content:flex-end}.header nav a{padding:10px 25px!important;font-size:.75rem;text-transform:uppercase;min-height:40px;display:flex;align-items:center;border:0!important;border-radius:100px}.header nav a:last-child{margin:0}.header nav a:hover{background:#d3d9cb;color:var(--ink)}.header nav a[aria-current=page]{background:#ced6c7;font-weight:400}.header nav a[aria-current=page]::after{display:none}
.editorial-hero{max-width:960px;display:grid;grid-template-columns:1.05fr 1fr;gap:32px 100px;padding:74px 12px 96px;align-items:start}.hero-title{grid-column:1/-1}.hero-title .eyebrow{margin-bottom:22px}.hero-title h1{font-size:clamp(5rem,9.5vw,8.75rem);line-height:.83;letter-spacing:-.075em;margin-left:-5px}.hero-title h1 span{display:inline-block;margin-left:1.06em}.editorial-intro{padding-top:18px}.editorial-intro>p{font:400 1.75rem/1.38 var(--serif);letter-spacing:-.025em;color:var(--ink);max-width:460px}.signature-label{display:block;font-size:.75rem;text-transform:uppercase;color:var(--muted);margin-top:24px;line-height:1.6}.hero-index{padding-top:25px}.hero-index .eyebrow{margin-bottom:16px}.hero-index>a{display:flex;align-items:center;gap:16px;min-height:44px;padding-block:7px;font:400 1.125rem/1.35 var(--serif);transition:color .2s,transform .2s}.hero-index>a span{font:400 .6875rem var(--mono);display:grid;place-items:center;width:28px;height:28px;border:1px solid var(--line);border-radius:5px;flex-shrink:0}.hero-index>a:hover{color:#173d18;transform:translateX(4px)}
.work{padding-block:0 64px;scroll-margin-top:105px}.section-rule{display:flex;align-items:center;gap:30px;margin-bottom:28px;text-transform:uppercase}.section-rule h2,.section-rule a{font:400 .75rem/1.5 var(--mono);letter-spacing:.04em}.section-rule h2{flex-shrink:0}.section-rule>span{height:1px;background:var(--line);flex:1}.section-rule a{text-align:right;padding-block:10px}.section-rule a:hover{text-decoration:underline;text-underline-offset:5px}
.showcase-list{display:grid;gap:32px}.showcase{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.6fr);align-items:stretch;overflow:hidden;border-radius:26px;background:linear-gradient(155deg,#4a5547,#182619 85%);color:#edf0e7}.showcase:nth-child(even){grid-template-columns:minmax(0,1.6fr) minmax(0,.9fr)}.showcase:nth-child(even) .showcase-copy{order:2}.showcase.portrait{grid-template-columns:minmax(0,1.35fr) minmax(0,.75fr)}.showcase.portrait:nth-child(even){grid-template-columns:minmax(0,.75fr) minmax(0,1.35fr)}.showcase-copy{padding:40px;display:flex;flex-direction:column;align-items:start;justify-content:space-between;gap:35px}.showcase-number{color:#c6d0c0;font-size:.75rem;margin-bottom:22px}.showcase h3{font-size:clamp(2rem,3.4vw,3.5rem);line-height:1.04;overflow-wrap:break-word}.showcase-excerpt{max-width:340px}.showcase-excerpt .eyebrow{color:#c2cdbd;margin-bottom:12px}.showcase-excerpt>p:not(.eyebrow){font:400 1.35rem/1.4 var(--serif);color:#eef0e7;letter-spacing:-.02em}.showcase-category{display:block;font-size:.6875rem;text-transform:uppercase;color:#c2cdbd;margin-top:20px}.showcase-art{align-self:center;display:block;line-height:0;overflow:hidden;border-radius:0;background:transparent}.showcase-art img{width:100%;height:auto;max-height:none;display:block;transform:none;transition:filter .3s}.showcase-art:hover img{filter:brightness(1.04)}.showcase .button{font-size:.75rem;min-height:44px;padding:12px 20px;letter-spacing:.03em;text-transform:uppercase;background:#e7ebdf;color:#263623;border:0}.showcase .button:hover{background:white}
.button{font-size:.8125rem;text-transform:uppercase;letter-spacing:.03em;font-weight:400;background:#354831;border-color:#354831;color:#f1f3ec}.button:hover{background:#1d311a;border-color:#1d311a}.text-link{font-family:var(--serif);font-size:1.125rem;text-decoration-color:#a1aa9a}.about-teaser{width:min(960px,calc(100% - 64px));padding:65px 0 70px;grid-template-columns:.7fr 1.5fr;gap:60px}.about-teaser h2{font-size:clamp(2.4rem,4.2vw,3.5rem)}.about-teaser p:not(.eyebrow){font-family:var(--serif);font-size:1.375rem;line-height:1.5}.cta{padding:62px;border-radius:26px;background:linear-gradient(130deg,#495542,#1a2a1a);margin-block:0 38px;color:#edf0e7}.cta .eyebrow{color:#c8d0c2}.cta h2{font-size:clamp(2.5rem,4.7vw,4.25rem)}.cta .light{background:#e7ebdf;color:#263623;border-color:#e7ebdf}.cta .light:hover{background:#fff}.footer{border-top:1px solid var(--line);font-size:.75rem;text-transform:uppercase;letter-spacing:.02em;padding-top:26px}.footer p{font-size:.75rem}.footer a{min-height:40px;display:inline-flex;align-items:center}
.page-heading{padding-block:80px 42px;max-width:1100px}.page-heading h1{font-size:clamp(3.4rem,7.7vw,6.6rem);line-height:1.02}.page-heading .intro{font:400 1.375rem/1.5 var(--serif);max-width:620px}.all-work{max-width:1100px}.filters{gap:9px}.filters button{font-size:.75rem;border-color:#aeb8a6;text-transform:uppercase}.filters button[aria-pressed=true]{background:#354831;border-color:#354831;color:#f1f3ec}.result-count{font-size:.75rem;margin-bottom:30px}.project-grid{display:block;columns:2;column-gap:32px}.project-card{break-inside:avoid;display:block;margin:0 0 42px}.project-image{aspect-ratio:auto;background:transparent;border-radius:18px;overflow:hidden}.project-image img{width:100%;height:auto;max-height:none;object-fit:initial;display:block;transform:none!important}.project-link:hover .project-image img{filter:brightness(1.04)}.view-case{background:#20331e;color:#f1f3ec;font:400 .6875rem var(--mono);text-transform:uppercase;padding:10px 14px;line-height:1.4}.card-meta{font-size:.6875rem;line-height:1.5;letter-spacing:.03em;margin-top:14px;flex-direction:row}.card-meta span:first-child{font-weight:400;color:#3d5035}.card-meta span:last-child{flex-shrink:1;text-align:right}.project-card h3{font-size:1.9rem;line-height:1.15;max-width:100%}.videos{max-width:1100px}.section-heading h2{font-size:clamp(2.4rem,4vw,3.5rem)}.video-frame{border-radius:16px;overflow:hidden;background:linear-gradient(130deg,#495542,#1a2a1a)}.video-card h3{font-family:var(--mono);font-size:.75rem;text-transform:uppercase;letter-spacing:.04em}.load-video{font-family:var(--serif);font-size:1.25rem}.load-video small{font-family:var(--mono);font-size:.6875rem;color:#c3ceb9}.load-video:hover{background:#35462d}
.about-page{max-width:1100px;padding-block:85px}.about-page h1{font-size:clamp(3.6rem,6.8vw,6rem)}.lead{font-family:var(--serif);font-size:1.55rem;line-height:1.5}.about-content>p:not(.lead){font-size:1.0625rem}.about-facts{border-color:var(--line)}.about-facts span{font-family:var(--mono);font-size:.75rem;text-transform:uppercase;letter-spacing:.025em}.contact-page{max-width:1100px;padding-block:80px 100px}.contact-page h1{font-size:clamp(3.8rem,7vw,6.3rem);line-height:.99}.contact-page .intro{font-family:var(--serif);font-size:1.375rem;line-height:1.5}.email-link{font-family:var(--serif);font-size:1.8rem}.contact-compose{border-top:1px solid #8e9d83}.contact-compose h2{font-size:2rem}input,textarea{border-color:#aab69f;background:rgba(250,251,246,.55);border-radius:8px}.contact-links{gap:12px 24px}label{font-weight:400}.contact-compose>p{font-size:1rem}.form-note,#form-status{font-size:.875rem}
.case-page{padding-top:45px;max-width:1150px}.case-heading h1{font-size:clamp(2.7rem,6.5vw,5.5rem);max-width:1050px}.case-context{gap:10%}.case-context .lead{font:400 1.4rem/1.5 var(--serif)}dl>div{font-size:.875rem}dt{font-size:.75rem}.case-gallery{gap:36px}.zoom-trigger{background:transparent;border-radius:18px;overflow:hidden}.zoom-trigger img{width:100%;height:auto;max-height:none;object-fit:initial}.case-figure figcaption{font-size:.6875rem;text-transform:uppercase}.zoom-trigger>span{font:400 .6875rem/1.4 var(--mono);text-transform:uppercase;padding:10px 14px;background:#243820}.case-next strong{font-family:var(--serif);font-size:1.5rem;font-weight:400}.case-next span{font-size:.75rem;text-transform:uppercase}dialog{border-radius:18px}.zoom-bar{background:#e7eadf}.zoom-bar p{font-family:var(--mono);font-size:.75rem}.zoom-image{line-height:0}.zoom-image img{display:block;width:100%;height:auto;min-width:0;max-width:100%}
@media(min-width:1450px){.editorial-hero{padding-top:85px;padding-bottom:100px}.showcase-copy{padding:48px}}
@media(max-width:1050px){.editorial-hero{max-width:820px;gap:32px 65px;padding-top:60px}.hero-title h1{font-size:7rem}.showcase-copy{padding:30px;gap:25px}.showcase h3{font-size:2.5rem}.showcase-excerpt>p:not(.eyebrow){font-size:1.2rem}.showcase-number{margin-bottom:14px}.showcase-category{margin-top:12px}.showcase.portrait{grid-template-columns:1fr 1fr}.showcase.portrait:nth-child(even){grid-template-columns:1fr 1fr}.card-meta{flex-direction:column;gap:3px}.card-meta span:last-child{text-align:left}}
@media(max-width:700px){.wrap{width:calc(100% - 32px)}.header{padding-top:12px}.header-inner{width:calc(100% - 24px);padding:7px 15px;min-height:54px;gap:8px}.brand .brand-name{display:none}.brand .brand-mark{font-size:1.6rem}.header nav{justify-content:space-evenly}.header nav a{font-size:.6875rem;padding:8px 13px!important;min-height:40px}.editorial-hero{padding:46px 10px 52px;grid-template-columns:1fr;gap:28px}.hero-title{grid-column:auto}.hero-title .eyebrow{margin-bottom:22px}.hero-title h1{font-size:clamp(4.9rem,19vw,7.4rem);line-height:.88;margin-left:-3px}.hero-title h1 span{margin-left:1.1em}.editorial-intro{padding-top:0}.editorial-intro>p{font-size:1.5rem;max-width:430px}.signature-label{margin-top:18px;font-size:.6875rem}.hero-index{padding-top:0}.hero-index .eyebrow{margin-bottom:10px}.hero-index>a{font-size:1.0625rem;gap:12px}.section-rule{gap:16px;margin-bottom:20px}.section-rule h2,.section-rule a{font-size:.625rem}.section-rule h2{max-width:120px;flex-shrink:1}.section-rule a{max-width:100px}.section-rule>span{min-width:20px}.work{padding-block:0 35px}.showcase-list{gap:24px}.showcase,.showcase:nth-child(even),.showcase.portrait,.showcase.portrait:nth-child(even){display:flex;flex-direction:column;border-radius:20px}.showcase .showcase-copy,.showcase:nth-child(even) .showcase-copy{order:0;padding:28px;gap:24px}.showcase h3{font-size:2.5rem;max-width:100%}.showcase-number{font-size:.6875rem;margin-bottom:12px}.showcase-excerpt{max-width:100%}.showcase-excerpt .eyebrow{font-size:.6875rem;margin-bottom:8px}.showcase-excerpt>p:not(.eyebrow){font-size:1.25rem}.showcase-category{font-size:.625rem;margin-top:12px}.showcase .button{font-size:.6875rem}.showcase-art{width:100%}.showcase-art img{width:100%;height:auto}.about-teaser{padding-block:35px 45px;display:block}.about-teaser h2{font-size:2.4rem}.about-teaser p:not(.eyebrow){font-size:1.25rem}.about-teaser .eyebrow{margin-bottom:18px}.cta{padding:32px 28px;border-radius:20px;margin-bottom:28px}.cta h2{font-size:2.65rem}.cta .button{font-size:.75rem;margin-top:28px}.footer{font-size:.6875rem;padding-top:18px}.footer p{font-size:.6875rem}.footer div{gap:18px}.page-heading{padding:48px 10px 30px}.page-heading h1{font-size:3.6rem;line-height:1.02}.page-heading .intro{font-size:1.25rem;line-height:1.45;margin-top:20px}.all-work{padding-bottom:35px}.filters{gap:8px}.filters button{font-size:.6875rem;padding:8px 13px;min-height:44px}.result-count{font-size:.6875rem;margin-bottom:24px}.project-grid{columns:1}.project-card{margin-bottom:35px}.project-image{border-radius:14px}.card-meta{font-size:.6875rem}.project-card h3{font-size:1.8rem}.view-case{font-size:.625rem;bottom:12px;right:12px}.videos{padding-block:35px}.section-heading h2{font-size:2.5rem}.about-page{padding:50px 10px 40px;gap:32px}.about-page h1{font-size:3.8rem}.about-content .lead{font-size:1.45rem}.about-content>p:not(.lead){font-size:1rem}.about-facts{gap:20px}.contact-page{padding:50px 10px 45px;gap:42px}.contact-page h1{font-size:4rem}.contact-page .intro{font-size:1.3rem}.email-link{font-size:1.65rem}.contact-compose h2{font-size:2rem}.contact-links{gap:5px 20px}.contact-links .text-link{font-size:1rem}.case-page{padding-top:32px}.case-heading h1{font-size:2.85rem}.case-context{margin-top:24px;gap:25px}.case-context .lead{font-size:1.3rem}.zoom-trigger{border-radius:12px}.case-gallery{gap:25px}.case-next strong{font-size:1.25rem}.case-next .text-link{font-size:1rem}.case-figure figcaption{font-size:.625rem}.zoom-trigger>span{font-size:.625rem}.small{font-size:.75rem}.zoom-bar p{font-size:.6875rem}}
@media(max-width:360px){.header nav a{padding-inline:10px!important}.hero-title h1{font-size:4.65rem}.editorial-hero{padding-inline:5px}.showcase .showcase-copy{padding:24px}.showcase h3{font-size:2.2rem}.page-heading h1{font-size:3.1rem}.cta{padding:28px 24px}.button{padding-inline:18px}.case-heading h1{font-size:2.4rem}}
@media(prefers-reduced-motion:reduce){.hero-index>a:hover{transform:none}}

/* Keep navigation and action labels comfortably readable. */
.header nav a,.button,.showcase .button,.filters button{font-size:.875rem}
.section-rule h2,.section-rule a{font-size:.75rem}
@media(max-width:700px){.header nav a{padding-inline:10px!important}.showcase .button,.filters button{font-size:.875rem}.section-rule{gap:12px}.section-rule h2{max-width:145px}.section-rule a{max-width:115px}}

.author-signature{display:flex;align-items:center;gap:14px;margin-top:24px}
.author-photo{display:block;width:64px;height:64px;flex:0 0 64px;object-fit:cover;border-radius:9px}
.author-signature .signature-label{margin-top:0;line-height:1.7}
@media(max-width:700px){.author-signature{margin-top:22px;gap:12px}.author-photo{width:56px;height:56px;flex-basis:56px}}

/* Hero naming and support copy */
.hero-title h1{font-size:clamp(3.25rem,5.45vw,5.25rem);line-height:1.02;letter-spacing:-.06em;max-width:1000px}
.editorial-intro>p{display:none}
.signature-label{margin-top:0;text-transform:none;line-height:1.35}
.signature-label strong{display:block;color:var(--ink);font-family:var(--serif);font-size:1rem;font-weight:400;letter-spacing:-.02em}
.signature-label>span{display:block;margin-top:4px;font-family:var(--mono);font-size:.75rem;letter-spacing:.035em;color:var(--muted)}
@media(max-width:700px){.hero-title h1{font-size:clamp(2.8rem,10.8vw,4.6rem);line-height:1.03;letter-spacing:-.055em}.signature-label{font-size:.6875rem}.signature-label>span{font-size:.6875rem}}
