@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,600;0,700;1,600&display=swap');
:root{--paper:#f6f5f0;--ink:#181b19;--muted:#626762;--line:#c9cbc3;--green:#153f32;--accent:#d3ed79}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',Arial,sans-serif;line-height:1.5}a{color:inherit}a:focus-visible{outline:3px solid #6b8e19;outline-offset:4px}.wrap{width:min(100% - 64px,1360px);margin-inline:auto}.site-header{height:100px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line)}.wordmark{font-size:2rem;letter-spacing:-.12em;font-weight:700;text-decoration:none}.period{color:#8ea845}.site-header nav{display:flex;gap:36px}.site-header nav a{text-decoration:none;font-size:.92rem;font-weight:600}.site-header nav a:hover,.text-link:hover,.project-link:hover{color:#638417}.eyebrow{font-size:.75rem;font-weight:700;letter-spacing:.15em}.intro{padding:105px 0 100px}.intro h1{font-size:clamp(3.8rem,8vw,8.5rem);font-weight:600;letter-spacing:-.075em;line-height:1.04;max-width:1240px;margin:24px 0 65px}.intro h1 em,.contact h2 em{font-family:'DM Sans',Arial,sans-serif;font-style:normal;font-weight:700;letter-spacing:-.085em;text-decoration:underline;text-decoration-color:#9dbb55;text-decoration-thickness:.055em;text-underline-offset:.12em}.intro-bottom{display:flex;justify-content:space-between;align-items:end;gap:32px}.intro-bottom p{max-width:680px;font-size:1.27rem;line-height:1.55;margin:0}.text-link{font-weight:700;text-decoration:none;white-space:nowrap;border-bottom:1px solid;padding-bottom:5px}.results{border-top:1px solid var(--ink);border-bottom:1px solid var(--ink);display:grid;grid-template-columns:repeat(3,1fr);padding:30px 0 36px;gap:25px}.results div{display:flex;flex-direction:column}.results strong{font-size:clamp(2.8rem,5vw,5.7rem);line-height:1;letter-spacing:-.07em}.results span{font-size:.91rem;color:var(--muted);margin-top:14px}.work{padding:120px 0 130px}.section-head{display:grid;grid-template-columns:1fr 2fr;align-items:end;margin-bottom:70px}.section-head .eyebrow{grid-column:1}.section-head h2{grid-column:2;margin:0;font-size:clamp(3.6rem,7vw,7rem);letter-spacing:-.075em;line-height:1}.section-head>p:last-child{grid-column:2;color:var(--muted);margin:18px 0 0}.project{display:grid;grid-template-columns:1.13fr 1fr;gap:8%;align-items:center;border-top:1px solid var(--line);padding:54px 0}.project.reverse .project-art{order:2}.project-art{aspect-ratio:1.2;display:flex;flex-direction:column;justify-content:space-between;padding:32px;overflow:hidden}.art-label,.art-bottom{font-size:.74rem;letter-spacing:.15em;font-weight:700}.art-display{font-size:clamp(3rem,5.3vw,6.4rem);line-height:.98;letter-spacing:-.085em;font-weight:700}.art-dot{color:var(--accent)}.art-cup{background:#153f32;color:#e8f1db}.art-rebrand{background:#e7e29b;color:#204332}.art-rebrand .art-dot{color:#eb6338}.art-launch{background:#dc6b43;color:#fff2dc}.art-launch .art-dot{color:#413e8b}.art-culture{background:#25264c;color:#f5eaba}.art-culture .art-dot{color:#f2a67a}.project-copy{padding:22px 0}.project-index{font-size:.75rem;letter-spacing:.13em;font-weight:700;color:var(--muted)}.project-copy h3{font-size:clamp(2.3rem,3.2vw,4rem);line-height:1.05;letter-spacing:-.06em;margin:35px 0 22px}.project-copy>p:not(.project-index):not(.role){font-size:1.09rem;color:#3d433e;max-width:560px}.project-stats{display:flex;gap:40px;flex-wrap:wrap;margin:35px 0 25px}.project-stats span{font-size:.85rem;color:var(--muted);display:flex;flex-direction:column}.project-stats b{font-size:2rem;letter-spacing:-.05em;color:var(--ink)}.role{font-size:.86rem;color:var(--muted);max-width:560px}.project-link{display:inline-block;font-weight:700;text-decoration:none;border-bottom:1px solid;margin-top:25px;padding-bottom:5px}.more-work{border-top:1px solid var(--ink);margin-top:35px;padding-top:55px;display:grid;grid-template-columns:1fr 1.15fr;gap:8%}.more-work h3{font-size:clamp(2.4rem,4vw,4.7rem);line-height:1.08;letter-spacing:-.065em;max-width:480px}.experience>div{border-bottom:1px solid var(--line);padding:26px 0}.experience span{font-size:.76rem;letter-spacing:.13em;font-weight:700}.experience p{font-size:1.06rem;margin:8px 0}.experience b{font-size:.82rem;color:var(--green)}.about{background:#153f32;color:#f3f4e9;padding:100px 0 115px}.about-grid{display:grid;grid-template-columns:1fr 2fr;gap:30px}.about h2{font-size:clamp(3.1rem,5.3vw,6rem);letter-spacing:-.07em;line-height:1.06;margin:0 0 42px}.about-grid>div>p{font-size:1.2rem;max-width:740px;line-height:1.6;color:#d5e0d3;margin-bottom:42px}.contact{padding:110px 0 120px}.contact h2{font-size:clamp(4rem,9vw,10rem);line-height:1.02;letter-spacing:-.075em;margin:34px 0 80px}.contact-bottom{border-top:1px solid var(--ink);padding-top:24px;display:flex;gap:40px;justify-content:space-between;flex-wrap:wrap}.contact-bottom a{text-decoration:none;font-size:clamp(1.05rem,2vw,1.5rem);font-weight:600}footer{padding:28px 0 40px;border-top:1px solid var(--line);display:flex;justify-content:space-between;color:var(--muted);font-size:.85rem}footer a{text-decoration:none}@media(max-width:850px){.wrap{width:min(100% - 36px,1360px)}.site-header{height:78px}.site-header nav{gap:16px}.intro{padding:75px 0}.intro h1{margin-bottom:50px}.intro-bottom{align-items:start;flex-direction:column}.results{gap:22px}.section-head{display:block}.section-head h2{margin-top:22px}.project,.project.reverse{grid-template-columns:1fr;gap:8px}.project.reverse .project-art{order:0}.project-art{aspect-ratio:1.35}.project-copy{padding:22px 0 10px}.more-work,.about-grid{grid-template-columns:1fr}.work{padding:85px 0}.about{padding:80px 0}}@media(max-width:560px){.site-header nav{gap:13px}.site-header nav a{font-size:.83rem}.intro h1{font-size:clamp(3.35rem,12vw,5.5rem)}.intro-bottom p{font-size:1.08rem}.results{grid-template-columns:1fr;gap:25px}.results div{flex-direction:row;align-items:baseline;gap:22px}.results strong{min-width:128px}.results span{margin:0}.project-art{padding:22px;aspect-ratio:1.05}.art-display{font-size:clamp(3.2rem,12vw,5rem)}.contact-bottom{gap:20px}.contact h2{font-size:clamp(3.5rem,13vw,6rem)}.about-grid>div>p{font-size:1.07rem}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
/* Portfolio media gallery */
.samples{border-top:1px solid var(--ink);padding:80px 0 60px}.samples-heading{display:grid;grid-template-columns:1fr 2fr;align-items:end;margin-bottom:42px}.samples-heading .eyebrow{grid-column:1}.samples-heading h3{grid-column:2;margin:0;font-size:clamp(3rem,6vw,6rem);letter-spacing:-.07em;line-height:1}.samples-heading>p:last-child{grid-column:2;color:var(--muted);margin:16px 0 0}.sample-group{border-top:1px solid var(--line);padding:34px 0 48px}.sample-group h4{font-size:1.35rem;letter-spacing:-.03em;margin:0 0 24px}.sample-group h4 span{font-size:.9rem;font-weight:400;color:var(--muted);margin-left:16px;letter-spacing:0}.media-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.media-grid-small{grid-template-columns:repeat(2,minmax(0,1fr));max-width:700px}.media-grid figure{margin:0;min-width:0}.media-grid video,.media-grid img{display:block;width:100%;aspect-ratio:9/13;object-fit:cover;background:#252b2a;border:0}.media-grid video{object-fit:contain}.media-grid figcaption{font-size:.85rem;line-height:1.4;padding:12px 0;color:#4d544e}@media(max-width:850px){.samples-heading{display:block}.samples-heading h3{margin-top:24px}.media-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.sample-group h4 span{display:block;margin:4px 0 0}}@media(max-width:560px){.media-grid{gap:12px}.samples{padding:55px 0 35px}.media-grid figcaption{font-size:.78rem}}
/* Editable campaign and client media spaces */
.add-media{margin:0 0 42px;padding:0 0 28px}.gallery-head h4{font-size:.82rem;text-transform:uppercase;letter-spacing:.14em;margin:0 0 16px;color:var(--muted)}.gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.gallery-empty{min-height:128px;border:1px dashed #9fa79a;color:#6c756d;display:flex;align-items:center;justify-content:center;padding:18px;text-align:center;font-size:.92rem;grid-column:1/-1}.gallery-card{margin:0;min-width:0}.gallery-card img,.gallery-card video,.gallery-link-cover{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;background:#dae1d3}.gallery-link-cover{display:flex;justify-content:center;align-items:center;padding:20px;text-align:center;text-decoration:none;color:var(--green);font-size:1.3rem;font-weight:700}.gallery-card figcaption{display:flex;justify-content:space-between;gap:14px;padding:12px 0;font-size:.9rem}.gallery-card figcaption a{text-decoration:none;border-bottom:1px solid}.gallery-card figcaption a:last-child{white-space:nowrap}.sample-group .add-media{margin:32px 0 0;padding:0}.more-work .other-media{grid-column:1/-1;padding-top:28px}.other-media>h4{font-size:1.6rem;letter-spacing:-.04em}.other-media .add-media{margin-bottom:25px}@media(max-width:650px){.gallery-grid{grid-template-columns:1fr 1fr}.gallery-empty{min-height:105px}.gallery-card figcaption{display:block}.gallery-card figcaption a{display:block;margin-bottom:5px}}@media(max-width:440px){.gallery-grid{grid-template-columns:1fr}}
/* Simple spaces for future campaign and client media */
.project-media{padding:0 0 48px}.project-media .media-grid{max-width:1000px;margin-bottom:20px}.media-placeholder{min-height:145px;border:1px dashed #a3aa9c;padding:25px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:#637064}.media-placeholder span{font-size:1rem;font-weight:600}.media-placeholder small{font-size:.85rem;margin-top:7px}.client-media{grid-column:1/-1;padding:24px 0}.client-media section{border-top:1px solid var(--line);padding:35px 0}.client-media h4{font-size:1.5rem;letter-spacing:-.04em;margin:0 0 20px}.client-media .media-grid{margin-bottom:20px}.client-media .media-placeholder{min-height:110px}
.case-study{border-top:1px solid var(--line);margin-top:30px;padding-top:12px}.case-study h4{font-size:.78rem;letter-spacing:.13em;text-transform:uppercase;margin:20px 0 4px}.case-study p{font-size:.98rem;line-height:1.5;color:#424a43;margin:0}.about-grid .languages{font-size:1rem;line-height:1.7;color:#f3f4e9;margin-top:0}.languages strong{font-size:.78rem;letter-spacing:.13em;text-transform:uppercase}
