/* RENOVA company pages: a collection of voices, an industry index, a human story. */
.company-page{--cp-muted:#67665f;--cp-clay:#7a3f28;--cp-rule:#c9c6bc}
.company-page .site-header{color:var(--ink);border-bottom-color:var(--cp-rule)}
.company-page .brand img{filter:none}
.company-page .desktop-nav a,.company-page .header-phone,.company-page .header-cta{font-size:14px;letter-spacing:.06em}
.company-page .desktop-nav{gap:clamp(20px,2.2vw,38px)}
.company-page .desktop-nav a[aria-current]:after{right:0}
.company-page .mobile-nav-count,.company-page .mobile-nav>a span{font-size:14px}
.company-page .mobile-nav-footer{font-size:16px}
.company-page.menu-open .site-header{background:var(--ink);color:var(--paper);border-bottom-color:#444943}
.company-page.menu-open .brand img{filter:brightness(0) invert(1)}
.company-page :focus-visible{outline:2px solid currentColor;outline-offset:6px}
.company-page main :is(p,figure,blockquote,h1,h2,h3){margin:0}
.company-page main :is(h1,h2,h3){font-weight:400}
.company-page main :is(h1,h2,h3) em{font-family:var(--serif);font-weight:400}
.company-page main :is(section,nav)[id]{scroll-margin-top:100px}
.cp-shell{width:100%;max-width:1770px;margin-inline:auto;padding-inline:var(--gutter)}
.cp-label{font-size:14px;line-height:1.5;letter-spacing:.09em;text-transform:uppercase}
.cp-topline{display:flex;justify-content:space-between;gap:28px;align-items:center}
.cp-link{display:inline-flex;align-items:center;justify-content:space-between;gap:30px;min-height:46px;padding-block:10px;border-bottom:1px solid currentColor;font-size:16px;line-height:1.4}
.cp-link .arrow-icon{width:24px;height:24px;transition:transform .25s}
.cp-link:hover .arrow-icon{transform:translate(3px,-3px)}

/* Reviews: open typography, margin annotations and contrasting voices. */
.rv-opening{padding-top:154px}
.rv-masthead{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(250px,.7fr);gap:7vw;align-items:end;padding-block:70px 82px}
.rv-masthead h1{font-size:clamp(82px,11.6vw,182px);line-height:.91;letter-spacing:-.067em}
.rv-masthead h1 em{white-space:nowrap}
.rv-masthead>div{max-width:340px;padding-bottom:8px}
.rv-masthead>div>p{font-size:18px;line-height:1.65;color:var(--cp-muted)}
.rv-quote-sign{display:block;height:120px;font-family:var(--serif);font-size:210px;line-height:1;color:var(--cp-clay)}
.rv-edition{display:flex;justify-content:space-between;gap:25px;padding:18px 0;border-block:1px solid var(--cp-rule);font-size:14px;letter-spacing:.08em}
.rv-listening{display:grid;grid-template-columns:minmax(190px,.55fr) minmax(0,1.6fr);gap:9vw;padding-block:110px 145px}
.rv-margin h2{margin:30px 0 20px!important;max-width:200px;font-size:28px;line-height:1.15;letter-spacing:-.035em}
.rv-margin>p{max-width:225px;color:var(--cp-muted);font-size:16px}
.rv-main-quote blockquote p{max-width:1120px;font-size:clamp(44px,5.6vw,88px);letter-spacing:-.045em;line-height:1.09;text-wrap:pretty}
.company-page blockquote p:before{content:'“'}
.company-page blockquote p:after{content:'”'}
.rv-attribution{display:flex;justify-content:space-between;align-items:end;gap:24px;margin-top:42px;padding-top:20px;border-top:1px solid var(--cp-rule);font-size:14px}
.rv-attribution strong,.rv-attribution time{display:block}
.rv-attribution strong{font-weight:500;font-size:17px}
.rv-attribution time{margin-top:4px;color:var(--cp-muted)}
.rv-attribution a{display:inline-flex;gap:18px;align-items:center;min-height:44px;text-decoration:underline;text-underline-offset:5px}
.rv-family{padding-block:55px 78px;background:var(--ink);color:var(--paper)}
.rv-family-top{display:flex;justify-content:space-between;gap:30px;align-items:baseline;border-bottom:1px solid #51564e;padding-bottom:30px}
.rv-family-top h2{font-size:18px}
.rv-family figure{padding-top:74px}
.rv-family blockquote{max-width:1150px;padding-right:4vw}
.rv-family blockquote p{font-size:clamp(78px,12.2vw,194px);line-height:.94;letter-spacing:-.055em;font-family:var(--serif);font-style:italic;text-wrap:balance}
.rv-family-bottom{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1fr);gap:12vw;margin-top:68px}
.rv-family-bottom>p{max-width:350px;color:#d3cfc4;font-size:17px}
.rv-family .rv-attribution{align-self:end;margin-top:0;border-color:#51564e}
.rv-family .rv-attribution time{color:#d3cfc4}
.rv-pair{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8vw;padding-block:105px 80px}
.rv-short-story{min-width:0}
.rv-short-story+article{padding-top:115px}
.rv-story-label{display:flex;gap:20px;align-items:baseline;margin-bottom:48px}
.rv-story-label>span{font-family:var(--serif);font-size:18px;color:var(--cp-muted)}
.rv-story-label h3{font-size:17px}
.rv-short-story blockquote p{font-size:clamp(40px,4.8vw,70px);line-height:1.08;letter-spacing:-.035em;text-wrap:pretty}
.rv-short-story .rv-context{max-width:420px;margin-top:25px;color:var(--cp-muted);font-size:16px}
.rv-archive{display:flex;justify-content:space-between;align-items:end;gap:35px;padding-block:48px 85px}
.rv-archive>div{max-width:610px}
.rv-archive h2{font-size:clamp(24px,2.7vw,38px);line-height:1.2;letter-spacing:-.035em}
.rv-archive p{margin-top:15px!important;color:var(--cp-muted)}
.rv-archive>a{flex-shrink:0}
.rv-portfolio{padding-block:75px;background:#dfdad0}
.rv-portfolio-heading{display:grid;grid-template-columns:minmax(150px,.6fr) minmax(0,1.3fr) minmax(210px,.6fr);gap:40px;align-items:end;margin-bottom:48px}
.rv-portfolio-heading>.cp-label{align-self:start}
.rv-portfolio-heading h2{font-size:clamp(50px,5.7vw,84px);line-height:.98;letter-spacing:-.05em}
.rv-portfolio-heading>p:last-child{color:#54554d}
.rv-portfolio figure>img{width:100%;height:auto;aspect-ratio:3840/2158;object-fit:cover}
.rv-portfolio figcaption{display:flex;justify-content:space-between;align-items:center;gap:30px;margin-top:22px;font-size:17px}
.rv-portfolio figcaption small{display:block;margin-top:4px;font-size:14px;color:#54554d}
.rv-portfolio figcaption a{display:inline-flex;align-items:center;gap:25px;min-height:44px;border-bottom:1px solid currentColor;font-size:16px}
.rv-next{padding-block:100px 110px}
.rv-next>a{display:flex;justify-content:space-between;align-items:end;gap:24px;margin-top:35px}
.rv-next h2{font-size:clamp(56px,8.6vw,136px);line-height:.96;letter-spacing:-.055em}
.rv-next>a>.arrow-icon{width:clamp(50px,9vw,130px);height:clamp(50px,9vw,130px);margin-bottom:10px}

/* Partnerships: an ink masthead and a precise, numbered organization directory. */
.cp-partnerships .site-header:not(.is-scrolled){color:var(--paper);border-bottom-color:#51564e}
.cp-partnerships .site-header:not(.is-scrolled) .brand img{filter:brightness(0) invert(1)}
.pt-opening{padding-block:150px 60px;background:var(--ink);color:var(--paper)}
.pt-opening h1{margin-top:70px!important;font-size:clamp(84px,12.5vw,196px);line-height:.9;letter-spacing:-.065em}
.pt-opening h1 em{display:inline-block;margin-left:17%;color:var(--stone)}
.pt-intro{display:grid;grid-template-columns:1fr 1fr;gap:35px;align-items:end;margin:45px 0 75px}
.pt-asterisk{display:block;width:max-content;font-family:var(--sans);font-size:clamp(80px,10vw,146px);line-height:1;color:var(--stone)}
.pt-intro p{max-width:540px;font-size:19px;line-height:1.6;color:#d3cfc4}
.pt-index{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-block:1px solid #51564e}
.pt-index a{display:grid;grid-template-columns:auto 1fr auto;gap:14px;align-items:start;padding:24px 24px 26px 0;font-size:17px;line-height:1.35;min-height:100px}
.pt-index a+a{padding-left:24px;border-left:1px solid #51564e}
.pt-index a>span:first-child{color:var(--stone);font-size:14px}
.pt-index .arrow-icon{width:23px;height:23px}
.pt-index a:hover>span:nth-child(2){text-decoration:underline;text-underline-offset:5px}
.pt-directory{padding-top:35px;padding-bottom:70px}
.pt-group{display:grid;grid-template-columns:minmax(0,.72fr) minmax(0,1.5fr);gap:8vw;padding-block:75px 25px}
.pt-group-title{position:sticky;top:115px;align-self:start}
.pt-group-title .cp-label{color:var(--cp-muted);max-width:280px}
.pt-group-title h2{max-width:460px;margin-top:28px!important;font-size:clamp(42px,5vw,75px);line-height:1.03;letter-spacing:-.045em}
.pt-entries{list-style:none;margin:0;padding:0;min-width:0}
.pt-entry{display:grid;grid-template-columns:24px 188px minmax(0,1fr);gap:22px;align-items:center;min-height:190px;padding-block:30px;border-top:1px solid var(--cp-rule)}
.pt-entry:last-child{border-bottom:1px solid var(--cp-rule)}
.pt-entry-number{align-self:start;padding-top:5px;font-size:14px;color:var(--cp-muted)}
.pt-logo{display:flex;align-items:center;justify-content:center;width:188px;min-height:128px;background:#fff}
.pt-logo img{width:180px;height:auto;object-fit:contain}
.pt-type-plate{display:block;padding:25px 0;font-size:46px;letter-spacing:-.04em;line-height:1;font-family:var(--sans);color:var(--ink)}
.pt-entry-copy .pt-role{font-size:14px;color:var(--cp-muted);margin-bottom:10px}
.pt-entry-copy h3{font-size:clamp(22px,2.1vw,30px);line-height:1.18;letter-spacing:-.025em;text-wrap:pretty}
.pt-entry-copy>p:last-child{font-size:16px;line-height:1.6;margin-top:14px;color:var(--cp-muted)}
.pt-closing{padding-block:75px 88px;background:#dfdad0}
.pt-closing a{display:flex;justify-content:space-between;align-items:center;gap:35px;margin-block:38px}
.pt-closing h2{font-size:clamp(54px,8vw,126px);line-height:.95;letter-spacing:-.055em}
.pt-closing a>.arrow-icon{width:clamp(50px,9vw,140px);height:clamp(50px,9vw,140px)}
.pt-closing .cp-shell>p:last-child{max-width:390px;margin-left:auto;color:#54554d;font-size:18px}

/* Community: a warm, asymmetric opening and three expansive acts of giving. */
.co-opening{padding-top:157px;padding-bottom:90px}
.co-opening h1{position:relative;z-index:1;margin-top:52px!important;font-size:clamp(80px,12.4vw,194px);line-height:.95;letter-spacing:-.06em}
.co-opening h1 em{display:inline-block;margin-left:18%;color:var(--cp-clay)}
.co-opening-note{display:grid;grid-template-columns:minmax(150px,.6fr) minmax(0,1fr);gap:5vw;max-width:780px;margin-top:62px;margin-left:auto}
.co-place-label{font-size:14px;line-height:1.7;letter-spacing:.08em}
.co-opening-note p{max-width:460px;font-size:18px;line-height:1.7;color:var(--cp-muted)}
.company-page .co-handclasp{max-width:900px;width:69%;margin-top:74px}
.co-handclasp>img{width:100%;height:auto}
.co-handclasp figcaption{margin-top:16px;font-size:14px;color:var(--cp-muted)}
.co-body{padding-bottom:110px}
.co-index{display:flex;justify-content:space-between;align-items:center;gap:35px;border-block:1px solid var(--cp-rule);padding-block:18px}
.co-index>div{display:flex;gap:clamp(26px,6vw,96px)}
.co-index a{display:inline-flex;align-items:center;gap:24px;min-height:44px;font-size:17px}
.co-index a:hover{text-decoration:underline;text-underline-offset:5px}
.co-index .arrow-icon{width:22px;height:22px}
.co-chapter{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.8fr);gap:12vw;padding-block:100px 105px;border-bottom:1px solid var(--cp-rule);align-items:end}
.co-chapter-word .cp-label{color:var(--cp-muted)}
.co-chapter-word h2{margin-top:33px!important;color:var(--cp-clay);font-size:clamp(88px,12vw,180px);line-height:.94;letter-spacing:-.06em}
.co-chapter-copy{max-width:450px}
.co-chapter-copy h3{font-size:clamp(26px,2.6vw,37px);line-height:1.2;letter-spacing:-.03em;text-wrap:pretty}
.co-chapter-copy p{font-size:18px;line-height:1.7;margin-top:25px!important;color:var(--cp-muted)}
.co-giving{grid-template-columns:minmax(0,.8fr) minmax(0,1fr)}
.co-giving .co-chapter-word{grid-column:2;grid-row:1}
.co-giving .co-chapter-copy{grid-column:1;grid-row:1}
.co-together{background:var(--cp-clay);color:var(--paper);padding-block:85px 90px}
.co-together h2{margin-top:65px!important;font-size:clamp(51px,7.3vw,116px);line-height:1.03;letter-spacing:-.04em}
.co-together h2 em{display:block;margin-left:10%}
.co-together .cp-shell>div{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:70px;align-items:end;max-width:850px;margin-top:70px;margin-left:auto}
.co-together .cp-shell>div>p{font-size:18px;line-height:1.7}
.co-related{display:grid;grid-template-columns:1fr 1fr;gap:8vw;padding-block:75px}
.co-related a{display:grid;grid-template-columns:1fr auto;align-items:end;gap:20px;min-height:115px;padding-block:15px 25px;border-bottom:1px solid var(--cp-rule)}
.co-related a>span{grid-column:1/-1;font-size:14px;letter-spacing:.08em;color:var(--cp-muted)}
.co-related strong{font-size:clamp(26px,2.8vw,40px);line-height:1.1;letter-spacing:-.035em;font-weight:400}
.co-related .arrow-icon{width:32px;height:32px}

@media(min-width:1770px){.rv-family-bottom{gap:180px}.pt-group{gap:140px}.co-chapter{gap:190px}}
@media(max-width:1280px){
  .company-page .site-header{grid-template-columns:1fr auto}
  .company-page .desktop-nav,.company-page .header-phone{display:none}
  .company-page .menu-toggle{display:block}
  .pt-group{gap:5vw;grid-template-columns:minmax(0,.6fr) minmax(0,1.4fr)}
  .pt-entry{grid-template-columns:20px 150px minmax(0,1fr);gap:17px}
  .pt-logo{width:150px;min-height:110px}.pt-logo img{width:146px}
  .rv-attribution{flex-wrap:wrap;gap:14px}
}
@media(max-width:950px){
  .rv-masthead{grid-template-columns:1.4fr .7fr;gap:5vw}.rv-masthead h1{font-size:clamp(72px,10.5vw,118px)}
  .rv-quote-sign{font-size:150px;height:90px}.rv-masthead>div>p{font-size:16px}
  .rv-listening{gap:6vw;grid-template-columns:180px minmax(0,1fr)}
  .rv-family-bottom{gap:7vw}.rv-family .rv-attribution{align-items:start}
  .rv-portfolio-heading{grid-template-columns:1fr 1fr}.rv-portfolio-heading>.cp-label{grid-column:1/-1}
  .rv-archive{align-items:start;flex-direction:column}
  .pt-index{grid-template-columns:repeat(2,minmax(0,1fr))}
  .pt-index a{min-height:82px}.pt-index a:nth-child(3){border-left:0;padding-left:0}
  .pt-index a:nth-child(n+3){border-top:1px solid #51564e}
  .pt-group{grid-template-columns:1fr;gap:45px}.pt-group-title{position:static}
  .pt-group-title h2{max-width:none;font-size:50px}.pt-group-title .cp-label{max-width:none}
  .pt-entry{grid-template-columns:32px 188px minmax(0,1fr);gap:25px}
  .pt-logo{width:188px;min-height:128px}.pt-logo img{width:180px}
  .co-opening h1{font-size:clamp(75px,12vw,117px)}
  .co-opening-note{grid-template-columns:180px 1fr}.company-page .co-handclasp{width:85%}
  .co-chapter{gap:6vw}.co-together .cp-shell>div{gap:35px}
}
@media(max-width:700px){
  .company-page .site-header{height:72px;padding-inline:20px}
  .company-page .header-cta{display:none}.company-page .brand img{width:178px}
  .cp-topline{align-items:flex-start;flex-direction:column;gap:20px}
  .cp-label{font-size:14px;letter-spacing:.06em}.cp-link{gap:20px}
  .rv-opening{padding-top:114px}.rv-masthead{display:block;padding-block:42px 40px}
  .rv-masthead h1{font-size:clamp(65px,13.8vw,97px);line-height:.96;letter-spacing:-.065em}
  .rv-masthead>div{max-width:none;display:grid;grid-template-columns:45px 1fr;gap:20px;margin-top:40px;padding:0}
  .rv-quote-sign{height:70px;font-size:100px}.rv-masthead>div>p{max-width:380px}
  .rv-edition{flex-direction:column;gap:5px;font-size:13px}
  .rv-listening{grid-template-columns:1fr;gap:40px;padding-block:56px 64px}
  .rv-margin h2{max-width:none;font-size:28px;margin:16px 0 14px!important}
  .rv-margin>p{max-width:340px}.rv-main-quote blockquote p{font-size:clamp(40px,8.5vw,60px)}
  .rv-attribution{margin-top:28px;gap:18px;align-items:start}
  .rv-family{padding-block:32px 45px}.rv-family-top{display:block;padding-bottom:22px}
  .rv-family-top h2{margin-top:10px!important;font-size:17px}
  .rv-family figure{padding-top:40px}.rv-family blockquote{padding:0}
  .rv-family blockquote p{font-size:clamp(64px,14.4vw,96px);line-height:1.02}
  .rv-family-bottom{grid-template-columns:1fr;gap:30px;margin-top:37px}.rv-family-bottom>p{font-size:16px}
  .rv-family .rv-attribution{width:100%}
  .rv-pair{grid-template-columns:1fr;gap:55px;padding-block:62px 35px}.rv-short-story+article{padding-top:0}
  .rv-story-label{margin-bottom:28px}.rv-short-story blockquote p{font-size:clamp(39px,9vw,60px)}
  .rv-archive{padding-block:25px 60px;gap:22px}.rv-archive>a{flex-shrink:1}
  .rv-portfolio{padding-block:42px}.rv-portfolio-heading{grid-template-columns:1fr;gap:25px;margin-bottom:30px}
  .rv-portfolio-heading h2{font-size:55px}.rv-portfolio figure>img{aspect-ratio:1.16;object-position:50% 50%}
  .rv-portfolio figcaption{align-items:start;flex-direction:column;gap:14px;font-size:16px}
  .rv-next{padding-block:60px 70px}.rv-next>a{gap:14px;margin-top:30px;align-items:center}
  .rv-next h2{font-size:clamp(43px,9.5vw,64px);line-height:1.04}.rv-next>a>.arrow-icon{width:42px;height:42px;margin:0}
  .pt-opening{padding-block:116px 32px}.pt-opening .cp-topline>span{display:none}
  .pt-opening h1{font-size:clamp(57px,12.7vw,88px);margin-top:43px!important;line-height:.98}
  .pt-opening h1 em{margin-left:0}.pt-intro{grid-template-columns:50px 1fr;gap:23px;align-items:start;margin:40px 0}
  .pt-asterisk{font-size:58px}.pt-intro p{font-size:16px}
  .pt-index a{grid-template-columns:1fr auto;font-size:16px;padding:20px 14px 22px 0;gap:10px;min-height:119px}
  .pt-index a+a{padding-left:15px}.pt-index a>span:first-child{grid-column:1/-1}.pt-index .arrow-icon{width:18px;height:18px}
  .pt-directory{padding-block:0 45px}.pt-group{padding-block:50px 10px;gap:32px}
  .pt-group-title h2{font-size:41px;max-width:360px;margin-top:20px!important}
  .pt-entry{grid-template-columns:22px minmax(0,1fr);gap:18px;padding-block:25px;min-height:0}
  .pt-logo{width:170px;min-height:112px}.pt-logo img{width:166px}
  .pt-entry-copy{grid-column:2}.pt-entry-copy h3{font-size:25px}.pt-entry-copy>p:last-child{margin-top:12px}
  .pt-closing{padding-block:48px 55px}.pt-closing a{margin-block:30px;gap:20px}
  .pt-closing h2{font-size:clamp(43px,9.5vw,65px);line-height:1.04}.pt-closing a>.arrow-icon{width:42px;height:42px}
  .pt-closing .cp-shell>p:last-child{margin-left:0;font-size:16px;max-width:300px}
  .co-opening{padding-block:118px 55px}.co-opening h1{font-size:clamp(58px,12.5vw,87px);margin-top:39px!important;line-height:1.02}
  .co-opening h1 em{margin-left:4%}.co-opening-note{display:block;margin-top:33px}
  .co-place-label{display:block;margin-bottom:25px}.co-opening-note p{font-size:16px}
  .company-page .co-handclasp{width:100%;margin-top:40px}
  .co-body{padding-bottom:55px}.co-index{display:block;padding-block:22px}
  .co-index>div{gap:24px;margin-top:10px;flex-wrap:wrap}.co-index a{font-size:16px;gap:10px}
  .co-chapter{grid-template-columns:1fr;gap:32px;padding-block:52px 58px}
  .co-chapter-word h2{font-size:clamp(84px,20vw,130px);margin-top:24px!important}
  .co-chapter-copy{max-width:460px}.co-chapter-copy h3{font-size:28px}
  .co-chapter-copy p{font-size:16px;margin-top:19px!important}
  .co-giving .co-chapter-word,.co-giving .co-chapter-copy{grid-column:auto;grid-row:auto}
  .co-together{padding-block:48px 56px}.co-together h2{font-size:clamp(38px,8.1vw,59px);line-height:1.1;margin-top:40px!important}
  .co-together h2 em{margin-left:0;margin-top:10px}.co-together .cp-shell>div{grid-template-columns:1fr;gap:25px;margin-top:35px}
  .co-together .cp-shell>div>p{font-size:16px}.co-together .cp-link{justify-self:start}
  .co-related{grid-template-columns:1fr;gap:20px;padding-block:42px 55px}
  .co-related a{min-height:108px}.co-related strong{font-size:30px}.co-related .arrow-icon{width:26px;height:26px}
}
@media(prefers-reduced-motion:reduce){.company-page .cp-link .arrow-icon{transition:none;transform:none}}
