/* The work is the point of view. Brands supply context; priorities supply action. */
html body .vision-opening{min-height:38svh;align-content:center}
html body #future .vision-portfolio{margin-block:40px 80px;padding-block:22px;border-top:0;border-bottom:1px solid var(--line);gap:var(--grid-gap)}
html body #future .vision-portfolio>div{display:flex;align-items:baseline;gap:14px}
html body #future .vision-portfolio dt{font-size:22px;line-height:1.3;letter-spacing:-.02em;color:#424242}
html body #future .vision-portfolio dd{font-size:12px;line-height:1.4;margin:0;color:#616161}
html body #future .vision-working{grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:clamp(40px,6vw,88px)}
html body #future .vision-position{position:sticky;top:56px;align-self:start}
html body #future :is(.vision-standard,.priority-heading){font-size:11px!important;line-height:1.5;letter-spacing:.1em;color:#616161;margin:0 0 28px}
html body #future .vision-principle{font-size:clamp(60px,7.5vw,104px);line-height:1;letter-spacing:-.035em;font-weight:400;color:#111;white-space:nowrap}
html body #future .vision-approach{margin-top:36px;max-width:32ch}
html body #future .vision-approach summary{font-size:13px;color:#616161}
html body #future .vision-approach>p{font-size:16px;line-height:1.55}
html body #future .priority-list{border:0}
html body #future .priority{min-height:0;border-bottom:1px solid #dedede}
html body #future .priority-heading+.priority{border-top:1px solid #242424}
html body #future .priority summary{grid-template-columns:28px minmax(0,1fr) 24px;align-items:center;gap:18px;min-height:92px;padding-block:26px}
html body #future .priority-number{font-size:11px;letter-spacing:.02em;font-weight:400;color:#616161;font-variant-numeric:tabular-nums}
html body #future .priority-label{grid-column:2;font-size:clamp(24px,2.2vw,30px);font-weight:400;line-height:1.25;letter-spacing:-.025em;padding:0;color:#242424}
html body #future .priority-symbol{grid-column:3;grid-row:1;align-self:center;font-size:20px;color:#616161}
html body #future .priority[open] .priority-label{font-weight:400;color:#111}
html body #future .priority-practice{margin:0 42px 30px 46px;padding:0;border:0}
html body #future .priority-practice .priority-idea{font-size:21px;line-height:1.35;font-weight:400;color:#242424;margin-bottom:14px;max-width:28ch}
html body #future .priority-practice>p:not(.priority-idea){font-size:15px;line-height:1.6;max-width:42ch;color:#616161}
html body #future .vision-next{grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:clamp(40px,6vw,88px);margin-top:72px;padding-block:32px;border-top:1px solid var(--line)}
html body #future .vision-next>p:first-child{font-size:22px;font-weight:600;letter-spacing:-.02em}
html body #future .vision-next>p:last-child{font-size:16px;line-height:1.55}
html body .future-step{transition:opacity 650ms ease,transform 800ms cubic-bezier(.22,1,.36,1)}
html body .future-step.future-pending{opacity:0;transform:translateY(22px);pointer-events:none}
html body .future-step:focus-within{opacity:1;transform:none;pointer-events:auto}
@media(max-width:1000px){
 html body #future .vision-portfolio>div{display:block}
 html body #future .vision-portfolio dd{margin-top:6px}
}
@media(max-width:760px){
 html body .vision-opening{min-height:32svh}
 html body #future .vision-portfolio{margin-block:32px 56px}
 html body #future .vision-portfolio dt{font-size:20px}
 html body #future .vision-position{position:static}
 html body #future .vision-working{grid-template-columns:1fr;gap:48px}
 html body #future .vision-principle{font-size:clamp(60px,12vw,88px)}
 html body #future :is(.vision-standard,.priority-heading){margin-bottom:18px}
 html body #future .vision-approach{margin-top:24px}
 html body #future .priority summary{min-height:80px;padding-block:22px;gap:14px}
 html body #future .priority-practice{margin-left:42px;margin-right:20px}
 html body #future .vision-next{grid-template-columns:1fr;gap:12px;margin-top:48px;padding-block:28px}
}
@media(prefers-reduced-motion:reduce),print{
 html body .future-step.future-pending{opacity:1;transform:none;pointer-events:auto}
 html body .future-step{transition:none}
}
@media print{html body #future .vision-position{position:static}html body .vision-opening{min-height:0}}
/* End with a leadership proposition, then a quiet signature. */
html body #future .closing{padding-block:clamp(72px,8vw,120px) 24px}
html body #future .closing-content.wrap{display:block;border-top:1px solid #242424;padding-top:56px}
html body #future .closing h2{font-size:clamp(48px,6.3vw,92px);font-weight:400!important;line-height:1.06;letter-spacing:-.035em!important;max-width:22ch;color:#111;margin:0}
html body #future .closing-subtitle{font-size:clamp(19px,1.6vw,24px);line-height:1.45;font-weight:400;color:#616161;margin:32px 0 0;padding:0;max-width:none}
html body #future .closing-signature{display:flex;align-items:end;justify-content:space-between;gap:32px;margin-top:28px;padding-top:0;border-top:0}
html body #future .closing-signature p{font-size:16px;line-height:1.5;font-weight:400;color:#242424;letter-spacing:0}
html body #future .closing-signature p span{display:block;margin-top:4px;font-size:12px;font-weight:400;color:#616161}
html body #future .closing-signature .closing-wordmark{width:132px;margin:0;filter:brightness(0);height:auto;flex:none}
html body .footer.wrap{padding-block:24px 80px}
@media(max-width:600px){
 html body #future .closing-content.wrap{padding-top:36px}
 html body #future .closing h2{font-size:clamp(40px,9.5vw,56px);line-height:1.08}
 html body #future .closing h2 br{display:none}
 html body #future .closing-subtitle{font-size:18px;margin-top:24px;max-width:26ch}
 html body #future .closing-signature{gap:20px;align-items:center;margin-top:24px}
 html body #future .closing-signature .closing-wordmark{width:104px}
}

/* A single closing stack, followed by one aligned utility row. */
html body #future .closing{padding-bottom:48px}
html body #future .closing-signature{display:block;margin-top:28px}
html body .footer.wrap{display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:32px;border-top:1px solid var(--line);padding-top:24px;padding-bottom:88px}
html body .footer-links{display:flex;align-items:center;flex-wrap:wrap;gap:24px}
html body .footer .closing-wordmark{display:block;width:132px;max-width:132px;height:auto;margin:0;filter:brightness(0);opacity:1;flex:none}
@media(max-width:600px){
 html body #future .closing{padding-bottom:32px}
 html body .footer.wrap{gap:24px;align-items:flex-start}
 html body .footer-links{flex-direction:column;align-items:flex-start;gap:16px}
 html body .footer .closing-wordmark{width:104px;max-width:104px;margin-top:3px}
}
