/* Business architecture: semantic HTML, with decorative connectors only. */
.corp-architecture{padding-block:90px 62px}
.corp-section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:55px}
.corp-section-heading>div,.corp-section-heading>p{min-width:0}
.corp-section-heading h2{font:400 36px/1.65 var(--serif);letter-spacing:.04em;margin-top:18px}
.corp-section-heading>p,.corp-connections-intro{max-width:435px;font-size:13px;line-height:2.05;color:var(--muted)}
.corp-map{padding-top:44px}
.corp-map-root{position:relative;width:min(440px,100%);margin-inline:auto;padding:26px 30px 29px;background:var(--ink);color:var(--paper);text-align:center}
.corp-map-root::after{content:"";position:absolute;left:50%;bottom:-21px;width:1px;height:21px;background:#a7b5a7}
.corp-overline{font-size:10px;line-height:1.8;letter-spacing:.11em}
.corp-map-root .corp-overline{color:#c5d0bf}
.corp-root-name{font:600 30px/1.3 Arial,sans-serif;letter-spacing:.09em;margin-top:9px}
.corp-root-name>span{color:#c5ae7c}
.corp-root-purpose{font-size:13px;line-height:1.9;letter-spacing:.04em;margin-top:12px}
.corp-branches{position:relative;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;padding-top:40px}
.corp-branches::before{content:"";position:absolute;left:calc(12.5% - 6.75px);right:calc(12.5% - 6.75px);top:20px;height:1px;background:#a7b5a7}
.corp-branch{--branch:#66816a;min-width:0;position:relative;display:flex;flex-direction:column;min-height:365px;background:#fcfcf7;border:1px solid var(--line);padding:23px 20px 18px}
.corp-branch::before{content:"";position:absolute;left:50%;top:-21px;width:1px;height:20px;background:#a7b5a7}
.corp-branch::after{content:"";position:absolute;left:-1px;right:-1px;top:-1px;height:3px;background:var(--branch)}
.corp-wellness{--branch:#a89672}
.corp-creative{--branch:#8e7168}
.corp-fashion{--branch:#766b7c}
.corp-branch-top{display:flex;align-items:center;justify-content:space-between;gap:12px;color:var(--branch)}
.corp-index{font:11px/1.5 Arial,sans-serif;letter-spacing:.12em}
.corp-branch-verb{font-size:10px;line-height:1.5;letter-spacing:.1em}
.corp-branch h3{font:400 24px/1.55 var(--serif);margin-top:14px;letter-spacing:.02em;overflow-wrap:anywhere}
.corp-branch-role{font-size:11px;line-height:1.9;margin-top:8px;color:var(--muted);min-height:42px}
.corp-brand-list{list-style:none;padding:0;margin:22px 0 23px;display:grid;gap:16px}
.corp-brand-list li{min-width:0}
.corp-brand-list strong{display:block;font:600 11px/1.7 Arial,sans-serif;letter-spacing:.025em;overflow-wrap:anywhere}
.corp-brand-list li>span{display:block;font-size:10px;line-height:1.8;color:var(--muted);margin-top:3px}
.corp-brand-list li>.corp-stage{display:inline-block;padding:2px 7px;font-size:9px;line-height:1.6;border:1px solid #cbd0c5;background:#f0f1e9;color:#5d695b;margin-top:7px}
.corp-branch-note{font-size:10px;line-height:1.9;color:var(--muted);margin-top:0;margin-bottom:20px}
.corp-branch-action{margin-top:auto;padding-top:13px;border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;gap:10px;font-size:10px;line-height:1.8;transition:border-color .2s,color .2s}
.corp-branch-action>span:first-child{min-width:0}
.corp-branch-action>span[aria-hidden]{font:18px/1 Arial,sans-serif;flex:none}
.corp-branch-action:hover{border-color:var(--ink);color:#43684d}
.corp-foundation{display:flex;align-items:center;gap:25px;padding:23px 26px;background:#edf0e7;border:1px solid var(--line);margin-top:24px}
.corp-foundation-label{font-size:11px;line-height:1.8;font-weight:600;flex:0 0 160px}
.corp-foundation ul{list-style:none;margin:0;padding:0 0 0 25px;border-left:1px solid #c4cdbd;display:flex;flex-wrap:wrap;gap:10px 27px}
.corp-foundation li{font-size:10px;line-height:1.9}
.corp-map-caption{display:flex;justify-content:space-between;gap:28px;margin-top:18px;color:var(--muted);font-size:10px;line-height:1.9}
.corp-map-caption>p:first-child{max-width:660px}
.corp-map-caption>p:last-child{max-width:280px}

/* Collaboration examples use editorial rows, not a list of completed work. */
.corp-connections{background:#e9ede4;padding-block:75px 62px}
.corp-connections-intro .corp-overline{color:var(--ink);font-weight:600;margin-bottom:9px}
.corp-projects{margin-top:40px;border-top:1px solid #c9d2c3}
.corp-project{display:grid;grid-template-columns:34px minmax(0,.9fr) minmax(0,1.3fr);gap:30px;padding:30px 0;border-bottom:1px solid #c9d2c3}
.corp-project-number{font:12px/1.7 Arial,sans-serif;color:#7e8d76;letter-spacing:.08em;padding-top:4px}
.corp-project-title .corp-overline{color:#61705b;font-size:9px}
.corp-project-title h3{font:400 24px/1.6 var(--serif);letter-spacing:.035em;margin-top:7px}
.corp-project-body{min-width:0}
.corp-project-body>p:first-child{font-size:12px;line-height:2.05;color:#53644e}
.corp-project-brands{display:flex;flex-wrap:wrap;gap:6px 10px;align-items:center;font:10px/1.9 Arial,var(--sans);letter-spacing:.035em;margin-top:16px;color:var(--ink)}
.corp-project-brands>span[aria-hidden]{color:#8d997e;font-size:15px;line-height:1}
.corp-contact-link{display:flex;align-items:center;gap:35px;width:fit-content;margin-top:24px;margin-left:auto;padding:12px 0 10px;border-bottom:1px solid #a7b6a0;font-size:12px;line-height:1.8}
.corp-contact-link>span[aria-hidden]{font-size:21px}
.corp-contact-link:hover{border-color:var(--ink)}

/* Smaller, related publishing projects retain their own identities. */
.corp-media{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:90px;padding-top:64px}
.corp-media-intro h2{font:400 26px/1.65 var(--serif);letter-spacing:.035em;margin-top:15px}
.corp-media-intro>p:last-child{font-size:12px;line-height:2.05;color:var(--muted);margin-top:14px;max-width:350px}
.corp-media-links{border-top:1px solid var(--line);min-width:0}
.corp-media-item{display:flex;align-items:center;gap:20px;padding:22px 0;border-bottom:1px solid var(--line)}
.corp-media-icon{display:grid;place-items:center;flex:0 0 48px;width:48px;height:48px;border-radius:50%;background:#e6e9dd;color:#6b7d5d;font:28px/1 var(--serif)}
.corp-culture-icon{background:#eae2d6;color:#8e7458;font-size:23px}
.corp-media-copy{display:block;min-width:0;flex:1}
.corp-media-copy strong{display:block;font:400 21px/1.4 var(--serif);letter-spacing:.025em}
.corp-media-copy>span:not(.sr-only){display:block;color:var(--muted);font-size:11px;line-height:1.9;margin-top:6px}
.corp-media-arrow{font-size:22px;transition:transform .2s;flex:none}
.corp-media-item:hover .corp-media-arrow{transform:translate(2px,-2px)}

@media(max-width:1100px){
  .corp-section-heading{gap:40px}
  .corp-section-heading>p,.corp-connections-intro{max-width:390px}
  .corp-branch{padding:20px 15px 16px}
  .corp-branch h3{font-size:21px}
  .corp-brand-list strong{font-size:10px}
  .corp-foundation{gap:20px;padding:21px}
  .corp-foundation-label{flex-basis:135px}
  .corp-foundation ul{padding-left:20px;gap:8px 20px}
  .corp-media{gap:50px}
}
@media(max-width:900px) and (min-width:701px){
  .corp-branches{grid-template-columns:repeat(2,minmax(0,1fr));padding:22px;border:1px solid #a7b5a7;gap:22px;margin-top:30px}
  .corp-map-root::after{height:30px;bottom:-30px}
  .corp-branches::before,.corp-branch::before{display:none}
  .corp-branch{padding:22px;min-height:345px}
  .corp-brand-list strong{font-size:12px}
  .corp-branch h3{font-size:24px}
  .corp-foundation{align-items:flex-start}
  .corp-foundation ul{display:grid;grid-template-columns:1fr 1fr;gap:9px 22px}
  .corp-project{gap:20px;grid-template-columns:25px minmax(0,.85fr) minmax(0,1.2fr)}
  .corp-project-title h3{font-size:21px}
}
@media(max-width:700px){
  .corp-architecture{padding-block:56px 42px}
  .corp-section-heading{display:block}
  .corp-section-heading h2{font-size:29px;line-height:1.7;margin-top:14px}
  .corp-section-heading>p,.corp-connections-intro{font-size:12px;line-height:2.05;margin-top:21px;max-width:none}
  .corp-map{padding-top:29px}
  .corp-map-root{padding:23px 16px 25px}
  .corp-map-root::after{bottom:-21px;height:21px}
  .corp-root-name{font-size:28px}
  .corp-root-purpose{font-size:12px;line-height:1.9}
  .corp-branches{grid-template-columns:1fr;padding:0 0 0 20px;margin-top:40px;margin-left:10px;gap:18px;border-left:1px solid #a7b5a7}
  .corp-branches::before{left:-1px;right:auto;top:-20px;width:calc(50% - 4.5px);height:20px;background:none;border-top:1px solid #a7b5a7;border-left:1px solid #a7b5a7}
  .corp-branch{min-height:0;padding:20px 18px 17px}
  .corp-branch::before{left:-21px;top:32px;width:20px;height:1px;background:#a7b5a7}
  .corp-branch h3{font-size:24px;margin-top:9px}
  .corp-branch-role{min-height:0;margin-top:5px;font-size:11px}
  .corp-brand-list{margin:18px 0;gap:13px}
  .corp-brand-list strong{font-size:12px;line-height:1.6}
  .corp-brand-list li>span{font-size:11px}
  .corp-brand-list li>.corp-stage{font-size:9px;margin-top:5px}
  .corp-branch-note{margin-bottom:17px;font-size:11px}
  .corp-branch-action{font-size:11px}
  .corp-foundation{display:block;padding:20px;margin-top:22px}
  .corp-foundation-label{font-size:12px}
  .corp-foundation ul{display:grid;grid-template-columns:1fr;gap:8px;padding:14px 0 0;border-left:0;border-top:1px solid #c4cdbd;margin-top:13px}
  .corp-foundation li{font-size:11px}
  .corp-map-caption{display:block;margin-top:15px;font-size:10px}
  .corp-map-caption>p:last-child{margin-top:8px;max-width:none}
  .corp-connections{padding-block:49px 42px}
  .corp-projects{margin-top:28px}
  .corp-project{grid-template-columns:22px minmax(0,1fr);gap:14px;padding:24px 0}
  .corp-project-title h3{font-size:23px}
  .corp-project-body{grid-column:2}
  .corp-project-body>p:first-child{font-size:11px;line-height:2.1}
  .corp-project-brands{font-size:9px;gap:5px 8px;margin-top:13px;line-height:1.8}
  .corp-contact-link{font-size:11px;gap:20px;max-width:100%;margin-top:17px}
  .corp-media{display:block;padding-top:44px}
  .corp-media-intro h2{font-size:25px;margin-top:13px}
  .corp-media-intro>p:last-child{font-size:11px;margin-top:12px}
  .corp-media-links{margin-top:24px}
  .corp-media-item{gap:14px;padding:20px 0}
  .corp-media-icon{width:40px;height:40px;flex-basis:40px;font-size:25px}
  .corp-culture-icon{font-size:20px}
  .corp-media-copy strong{font-size:20px}
  .corp-media-copy>span:not(.sr-only){font-size:10px}
  .corp-media-arrow{font-size:20px}
}
@media(max-width:360px){
  .corp-branch{padding:18px 14px 15px}
  .corp-branch h3{font-size:22px}
  .corp-brand-list strong{font-size:11px}
  .corp-section-heading h2{font-size:27px}
  .corp-media-intro h2{font-size:23px}
}
@media(prefers-reduced-motion:reduce){.corp-branch-action,.corp-media-arrow{transition:none}}
