/* Light editorial direction. Photography will be added separately. */
:root{--bg:#faf9f6;--panel:#fff;--text:#242722;--muted:#62665e;--line:#dcded5;--lime:#596b3e}
body{background:var(--bg)}
::selection{background:#dce5cc;color:var(--text)}
.header{height:96px;border-bottom:0}.wordmark{font-size:20px;letter-spacing:-.7px;font-weight:600}
.header nav{font-size:13px}.header nav,.header-contact{font-family:"Trebuchet MS",Verdana,sans-serif;font-weight:700;text-transform:uppercase;letter-spacing:1.5px}.header-contact{color:var(--lime);border-color:var(--lime)}
.hero{padding-top:60px}h1{font-weight:600;font-size:clamp(62px,7.1vw,100px);letter-spacing:-5px;max-width:1100px;line-height:1.04;margin-bottom:30px}
h1 .punctuation{display:none}h1 em{font-weight:400}.hero-bottom{align-items:flex-start;flex-direction:column;gap:26px;padding-bottom:48px}.hero-bottom p{max-width:590px;font-size:18px;line-height:1.6;color:#464b42}
.button{border-radius:3px;padding:16px 23px;color:#fff;gap:34px}.button:hover{background:#465631;border-color:#465631}.hero-foot{border-top:0;padding-bottom:26px;line-height:1.7}
.section{padding-top:80px}.section-heading{margin-bottom:34px;gap:45px}h2{font-family:var(--serif);font-size:clamp(36px,3.7vw,51px);letter-spacing:-1.8px;line-height:1.12}h2 em{font-style:normal}.section-heading>p{font-size:13px;max-width:310px}
.case{border-color:var(--line);background:#f4f4ef}.case-main{padding:38px}.case-top{margin-bottom:25px}.case-index{border-color:#b7bfa9;color:var(--lime)}h3{font-family:var(--serif);font-size:33px;letter-spacing:-1px}.case-summary{font-size:14px;line-height:1.8}.tags span{color:#526046;border-color:#cdd3c3;background:#ffffff70}.case-visual{background:#e9ede2;color:var(--text);padding:30px}.profit-facts{color:#56604e}.profit-stat{font-size:clamp(42px,4.5vw,65px);font-weight:600;letter-spacing:-3px}.profit-stat>span{line-height:1.5}.catalog-grid>div{border-color:#d0d8c5;background:#f8faf4}.catalog-grid>div>span{color:#677557}.visual-bottom{border-color:#c6cfba;color:#49563e}.visual-top>span{opacity:1;color:#616857}
.case-pair{align-items:stretch}.case-pair .case{display:flex;flex-direction:column}.case-pair .case-main{flex:1}.case-chowa{background:#fbf6f3}.case-chowa .small-visual{background:#eee0dc;color:#563c43}.case-chowa .big-stat{color:var(--lime);font-weight:500}.case-chowa .visual-top>span{color:#715b61}.case-chowa .visual-bottom{border-color:#d2bdbf;color:#674e55}.case-austin{background:#f4f7f7}.case-austin .small-visual{background:#e5edef;color:#29434e}.case-austin .visual-top>span{color:#536a72}.lead-visual>span:not(.flow-arrow){border-color:#bacbd0;background:#ffffff80}.lead-visual .delivered{background:#dbe7db;color:#37553a;border-color:#b6cbb8}.flow-arrow{color:#718d97}
summary{color:var(--lime);font-weight:600}.detail-content{font-weight:400;color:var(--muted)}
.expertise{padding-bottom:90px}.service{padding-block:30px;align-items:center}.service h3{font-size:28px}.service-number{padding:0;font-size:14px}.service-label{padding:0;color:#6c7464}.service p{font-size:14px}
.about{padding-block:85px 90px;gap:65px}.about-copy .large-copy{font-size:23px}.about-facts{gap:30px}.about h2{max-width:480px}.careers{padding-block:65px 75px;gap:65px}.careers h2{margin-top:20px}.careers-copy .button{background:transparent;color:var(--lime);border:0;border-bottom:1px solid #abb598;border-radius:0;padding:10px 0}.careers-copy .button:hover{color:#344324;background:transparent;transform:none}
.giving{grid-template-columns:.65fr 1.35fr;gap:65px;padding-block:65px 80px}.giving-number{font-family:var(--serif);font-size:165px;letter-spacing:-10px}.giving-number span{font-size:100px}.giving-copy{border-left:1px solid var(--line);padding-left:45px}.giving-copy h2{margin-top:15px}.giving-copy p{max-width:620px}
.contact{background:#ecefe4;color:var(--text);padding:45px}.contact h2{font-size:clamp(42px,4.5vw,63px);letter-spacing:-2px}.contact-bottom{align-items:center}.contact-links{min-width:290px}.dark-button{background:transparent;color:var(--lime);border:0;padding:3px 0;font-size:13px}.dark-button:hover{background:transparent;color:#344324;transform:none}.contact a:focus-visible{outline-color:var(--lime)}.messenger-button{border-radius:3px;border-color:#78895c;color:var(--lime);padding:16px 20px}.messenger-button:first-child{background:var(--lime);color:white}.contact .text-link{color:var(--lime)}.footer{padding-block:35px}.footer .wordmark{font-size:17px}
@media(min-width:1500px){h1{font-size:108px}.hero{padding-top:70px}}
@media(max-width:1000px){.case-main{padding:26px}.case-visual{padding:23px}.section-heading{gap:30px}.about,.careers{gap:40px}.giving{gap:35px}.contact{padding:34px}.contact-links{min-width:260px}}
@media(max-width:700px){.header{height:80px}.wordmark{font-size:17px}.hero{padding-top:35px}h1{font-size:clamp(43px,9.3vw,65px);letter-spacing:-2.4px;margin:27px 0}.hero-bottom{gap:0;padding-bottom:35px}.hero-bottom p{font-size:16px}.hero-foot{padding-bottom:22px}.section{padding-top:58px}.section-heading>p{margin-top:20px}.case-main{padding:25px}.case-visual{padding:24px}.profit-stat{font-size:47px}.case-summary{font-size:14px}.small-visual{height:270px}.case-chowa .big-stat{font-size:80px}h2{font-size:38px}h3{font-size:29px}.service{padding-block:25px}.service h3{font-size:26px}.service-number{align-self:start;padding-top:5px}.expertise{padding-bottom:55px}.about{padding-block:50px 60px;gap:28px}.careers{padding-block:45px 50px;gap:26px}.giving{grid-template-columns:1fr;gap:18px;padding-block:40px 50px}.giving-number{font-size:115px;letter-spacing:-6px}.giving-number span{font-size:70px}.giving-copy{border:0;padding:0}.contact{padding:27px 23px}.contact h2{font-size:42px;letter-spacing:-1.5px}.contact-links{min-width:0;width:100%}.footer .wordmark{font-size:15px}}
