.nav{gap:24px}.nav a{font-size:9px}.page-intro{padding:85px 0 65px}.page-intro>.text-link{display:inline-block;margin-bottom:50px}.page-intro h1{max-width:1100px;font-size:clamp(52px,6.4vw,88px);line-height:1.04}.page-intro h1 em{color:var(--green)}.page-lede{font-size:18px;max-width:780px;line-height:1.9}.detail{padding:65px 0;border-top:1px solid var(--line);scroll-margin-top:30px}.detail h2{font-size:clamp(38px,4vw,56px);max-width:950px;line-height:1.1}.detail>p{max-width:900px}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:8%}.two-col h3{font-family:var(--serif);font-size:30px;margin-top:25px}.two-col p{line-height:1.95}.detail .text-link{display:inline-block;margin-top:15px}.portfolio-preview{padding:110px 0}.project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px}.project-card .project-image{overflow:hidden;aspect-ratio:4/3;margin-bottom:25px;background:#e5e9e1}.project-card img{width:100%;height:100%;object-fit:cover;transition:transform .3s}.project-card a:hover img{transform:scale(1.025)}.project-card h3{font-size:34px;line-height:1.1}.project-card p{font-size:13px;line-height:1.9}.project-card .eyebrow{font-size:9px;margin-bottom:14px}.credit{font-size:12px;line-height:1.9;max-width:930px;margin:35px 0;color:#53666e}.portfolio-section{padding-bottom:75px}.portfolio-section>.credit{margin:0 0 45px}.gallery{display:grid;grid-template-columns:1fr 1fr;gap:35px}.gallery figure{margin:0}.gallery figure:first-child{grid-column:1/-1}.gallery img{width:100%;height:auto;display:block}.gallery figcaption{font-size:11px;padding:14px 0;line-height:1.7}.partner-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px 8%}.partner-grid h3{font-family:var(--serif);font-size:34px}.partner-grid p{font-size:15px;line-height:1.9}.contact>.wrap>.button{margin-top:28px}.contact a.text-link{overflow-wrap:anywhere}.contact-card>.button{margin-top:12px}.footer-links{max-width:650px;justify-content:flex-end;row-gap:18px}main a.text-link:focus-visible{outline-offset:7px}.nav a[aria-current=page]{border-bottom:1px solid var(--green)}
@media(max-width:1000px){.nav{gap:14px}.brand-desc{max-width:145px}.project-grid{gap:22px}.project-card h3{font-size:29px}}
@media(min-width:651px) and (max-width:850px){.header-inner{width:calc(100% - 40px)}.brand-name{font-size:34px}.nav{gap:11px}.nav a{font-size:8px;letter-spacing:.03em}.nav .nav-cta{padding:11px}}
@media(max-width:650px){.page-intro{padding:55px 0 40px}.page-intro>.text-link{margin-bottom:40px}.page-intro h1{font-size:49px}.page-lede{font-size:16px}.two-col,.project-grid,.partner-grid,.gallery{grid-template-columns:1fr;gap:28px}.detail{padding:45px 0}.gallery figure:first-child{grid-column:auto}.portfolio-preview{padding:75px 0}.project-card h3{font-size:35px}.project-card{padding-bottom:20px}.project-card .project-image{margin-bottom:20px}.footer-links{justify-content:flex-start}.page-intro h1{overflow-wrap:break-word}.credit{font-size:12px}.nav a{font-size:11px}}
/* Restrained page endings and one clear contact path. */
.section-link{display:inline-block;margin-top:32px}.closing{padding:58px 0;background:#e5e9e1}.closing>.wrap{display:flex;justify-content:space-between;align-items:center;gap:45px}.closing h2{font-size:clamp(32px,3vw,46px);line-height:1.1;margin:0 0 12px}.closing p{font-size:14px;max-width:600px;margin:0}.closing .button{flex-shrink:0;font-size:9px}.contact .brief-open{display:inline-block;border:0;border-bottom:1px solid var(--silver);background:transparent;color:var(--slate);padding:0 0 5px;text-align:left;font-size:12px;cursor:pointer}.contact .optional{font-weight:400;color:#53666e}.contact .contact-card p{margin-bottom:18px}.page-intro>.eyebrow:first-child{margin-top:12px}
@media(max-width:650px){.closing{padding:45px 0}.closing>.wrap{display:block}.closing .button{margin-top:24px}.closing h2{font-size:36px}.closing p{font-size:14px}.contact .smallcaps{line-height:1.8}.section-link{margin-top:20px}}
/* Header signature: balanced letterforms, with a quieter ampersand. */
.brand-name{display:inline-flex;align-items:baseline;gap:.015em;font-size:42px;letter-spacing:-.045em;line-height:.9}.brand-name .brand-amp{font-size:.76em;letter-spacing:-.055em;margin:0 .025em}.brand-desc{font-size:8px;letter-spacing:.15em;line-height:1.5;max-width:none;margin-top:9px}.nav a{font-size:10px;letter-spacing:.1em}.header{height:102px}.hero{height:calc(100svh - 102px)}.footer-links a{font-size:11px}.hero-link{min-height:44px}.menu-toggle{min-width:64px;min-height:44px;padding:9px 0 9px 10px;align-items:center;justify-content:flex-end;gap:10px;font-size:10px;font-weight:500;text-transform:uppercase;letter-spacing:.1em}.menu-toggle svg{width:19px;height:16px;fill:none;stroke:currentColor;stroke-width:1}.project-card .text-link{display:inline-block;min-height:32px}.gallery a{display:block}.gallery a:focus-visible{outline-offset:6px}.credit{letter-spacing:.01em}dialog .close-dialog{min-width:44px;min-height:44px;top:6px;right:8px}
@media(max-width:850px) and (min-width:651px){.brand-name{font-size:36px}.brand-desc{font-size:7px}.nav a{font-size:9px}.nav{gap:19px}}
@media(max-width:650px){.header{height:88px}.brand-name{font-size:35px}.brand-desc{font-size:7px;letter-spacing:.11em;max-width:205px}.menu-toggle{display:inline-flex}.nav{top:88px}.nav a,.nav .nav-cta{font-size:11px;min-height:48px;display:flex;align-items:center}.hero{height:calc(100svh - 88px)}.contact-card a.text-link{display:inline-block;min-height:32px}.contact .brief-open{min-height:44px;padding-top:10px;padding-bottom:10px}.footer-links a{display:inline-flex;align-items:center;min-height:44px}.footer-links{gap:3px 22px}.page-intro h1{font-size:clamp(42px,11.5vw,49px);text-wrap:balance}.hero h1{font-size:clamp(42px,10.5vw,68px)}.hero-lede{max-width:340px}.page-lede{font-size:15px}.gallery{gap:22px}.gallery figcaption{font-size:11px}.brand{min-width:0}}
@media(max-width:360px){.wrap,.header-inner{width:calc(100% - 32px)}.brand-desc{font-size:6.5px;letter-spacing:.08em;max-width:195px}.menu-toggle{gap:7px;min-width:57px}.hero .eyebrow{font-size:7px}.hero-lede{font-size:13px}.hero{min-height:590px}.contact h2,.section-head h2,.audience-intro h2{font-size:42px}.project-card h3{font-size:32px}.contact .smallcaps{font-size:8px}}
@media(prefers-reduced-motion:reduce){.project-card a:hover img{transform:none}html{scroll-behavior:auto}}
@media(max-width:650px){input,textarea,select{font-size:16px}.closing .button{font-size:10px;min-height:48px}form .button{min-height:48px}.nav .nav-cta{border-bottom:1px solid var(--line)}}
