/* VEA 02: the creative process, from a brief to a shared stage. */
.home-hero .hero-description{max-width:560px;font-size:18px;line-height:1.75}
.home-hero .hero-content{padding-top:clamp(185px,23vh,245px)}
.creative-bridge{display:grid;grid-template-columns:1fr 1.1fr;gap:9vw;align-items:start}
.creative-bridge h2{font-size:clamp(44px,5vw,74px)}
.creative-bridge em,.creative-story em,.project-door em{font-style:normal;color:var(--gold)}
.creative-bridge em{color:#876c46}
.bridge-copy .lead{font-family:var(--serif);font-size:clamp(28px,3vw,40px);line-height:1.3;letter-spacing:-.035em;color:var(--ink);margin-bottom:26px}
.bridge-copy>p:not(.lead){font-size:16px;color:var(--muted)}
.bridge-copy>.text-link{margin-top:30px}
.relationship{display:grid;grid-template-columns:1fr 1.25fr 1fr;align-items:center;gap:12px;margin-top:34px;position:relative}
.relationship:before{content:'';position:absolute;left:0;right:0;top:50%;height:1px;background:#ccb086;z-index:-1}
.relationship>div{background:white;padding:12px 4px;text-align:center}
.relationship span{display:block;font-size:16px;font-weight:600}
.relationship small{font-size:12px;color:var(--muted);display:block;line-height:1.4;margin-top:8px}
.relationship .relationship-vea{background:var(--blue);color:white;padding:23px 8px}
.relationship strong{font-weight:500;font-size:29px;letter-spacing:.12em;color:var(--gold)}
.relationship .relationship-vea small{color:#e1e7ed}
.our-contexts{grid-column:1/-1;display:flex;align-items:center;flex-wrap:wrap;gap:20px 45px;border-top:1px solid var(--line);padding-top:30px;margin-top:-20px}
.our-contexts>span{font-size:12px;color:var(--muted);text-transform:uppercase;letter-spacing:.09em}
.our-contexts strong{font-size:15px;font-weight:500}
.creative-story{background:var(--deep);color:white;padding:95px 0 50px}
.story-heading{margin-bottom:65px}
.story-heading h2{font-size:clamp(42px,4.5vw,68px)}
.story-layout{display:grid;grid-template-columns:1.15fr 1fr;gap:8vw;align-items:start}
.story-visual{position:sticky;top:110px;height:min(670px,calc(100svh - 140px));min-height:430px;overflow:hidden;background:#132536;isolation:isolate}
.story-photo{position:absolute;inset:0;z-index:-3;transition:opacity .8s,transform 1.2s;object-position:62% center;transform:scale(1.04)}
.story-photo-work{opacity:0;object-position:50% center}
.story-visual[data-phase="1"] .story-photo-work,.story-visual[data-phase="2"] .story-photo-work{opacity:1}
.story-visual[data-phase="1"] .story-photo-stage,.story-visual[data-phase="2"] .story-photo-stage{opacity:0}
.story-visual[data-phase="2"] .story-photo-work{transform:scale(1.1)}
.story-visual-shade{position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,#101e2b72,#101e2b70 55%,#101e2bf5)}
.story-panels{position:absolute;inset:40px 34px 112px}
.story-panel{position:absolute;inset:0;opacity:0;transform:translateY(12px);transition:opacity .55s,transform .7s;display:flex;flex-direction:column;justify-content:center;pointer-events:none}
.story-panel.is-active{opacity:1;transform:none}
.visual-kicker{font-size:12px;letter-spacing:.11em;text-transform:uppercase;color:var(--gold);margin-bottom:25px}
.visual-question{font-family:var(--serif);font-size:clamp(35px,3.5vw,57px);letter-spacing:-.035em;line-height:1.12}
.concept-words{display:flex;gap:10px;flex-wrap:wrap;margin-top:35px}
.concept-words span{border-top:1px solid #ccb08690;padding-top:10px;font-size:13px;flex:1}
.cue-sequence{display:grid;gap:22px}
.cue-sequence>div{border-top:1px solid #ccb08688;padding-top:14px;display:grid;grid-template-columns:36px 1fr;gap:4px 14px}
.cue-sequence span{grid-row:span 2;font-size:13px;color:var(--gold);padding-top:7px}
.cue-sequence strong{font-size:25px;font-weight:500}
.cue-sequence small{font-size:14px;color:#d8e2ea}
.project-map{display:grid;grid-template-columns:1fr 1fr;gap:16px;text-align:center}
.project-map strong{grid-column:1/-1;font-family:var(--serif);font-weight:400;font-size:50px;padding:10px 0 28px}
.project-map span{border-top:1px solid var(--gold);padding:15px 6px;font-size:16px;background:#14283c9c}
.visual-footnote{font-size:14px;color:#d6dfe7;margin-top:25px;text-align:center}
.story-navigation{position:absolute;bottom:40px;left:26px;right:26px;display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.story-navigation a{border-top:1px solid #ffffff52;padding-top:10px;color:#d3dee7;font-size:13px;line-height:1.4;transition:color .3s,border-color .3s}
.story-navigation span{font-size:12px;display:block;margin-bottom:4px}
.story-navigation a[aria-current]{color:var(--gold);border-top:2px solid var(--gold);padding-top:9px}
.story-disclosure{position:absolute;bottom:12px;left:26px;font-size:11px;color:#d3dee7}
.story-chapter{min-height:73svh;display:flex;justify-content:center;flex-direction:column;padding:70px 0;border-top:1px solid #ffffff21;scroll-margin-top:120px}
.story-chapter:first-child{border:0;padding-top:35px}
.chapter-number{font-size:12px;text-transform:uppercase;letter-spacing:.13em;color:var(--gold);margin-bottom:30px}
.story-chapter h3{font-family:var(--serif);font-size:clamp(34px,3.45vw,54px);line-height:1.12;letter-spacing:-.04em;margin-bottom:28px}
.story-chapter p{font-size:16px;line-height:1.9;color:#d1dce5}
.chapter-detail{font-size:12px;line-height:1.8;color:var(--gold);margin-top:24px}
.story-chapter .text-link{align-self:flex-start;margin-top:28px}
.project-door-link{position:relative;display:flex;min-height:540px;align-items:center;isolation:isolate;overflow:hidden;color:white;padding:85px var(--pad)}
.project-door img{position:absolute;inset:0;z-index:-3;object-position:50% 60%;transition:transform 1s}
.project-door-link:after{content:'';position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,#101e2bee,#101e2b77 65%,#101e2b55)}
.project-door-link:hover img{transform:scale(1.025)}
.project-door-copy{max-width:690px}
.project-door h2{font-size:clamp(54px,6vw,90px)}
.project-door p{margin:28px 0;font-size:16px;color:#dfe5eb}
.project-door .image-caption{left:auto;right:var(--pad);text-align:right;font-size:12px}
.vea-world{display:grid;grid-template-columns:1fr 1fr;gap:8vw;align-items:start}
.vea-world h2{font-size:clamp(38px,3.5vw,52px)}
.vea-world p{margin-top:24px;max-width:430px;color:var(--muted)}
.world-links{border-top:1px solid var(--line)}
.world-links>a{display:block;padding:22px 0;border-bottom:1px solid var(--line)}
.world-links strong{font-family:var(--serif);font-size:30px;font-weight:400;display:block;margin-bottom:8px;line-height:1.2}
.world-links span{font-size:14px;color:var(--muted);display:block}
.world-links small{font-size:12px;color:#826641;display:inline-block;margin-left:6px}
.world-links a:hover strong{color:#876c46}
.home-people{padding-top:0;padding-bottom:80px}
.people-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:30px}
.people-strip a{display:flex;flex-direction:column;gap:10px;border-top:1px solid var(--line);padding-top:20px}
.people-strip strong{font-size:24px;font-weight:500;letter-spacing:-.04em}
.people-strip span{font-size:13px;color:var(--muted)}
.project-categories{display:flex;flex-wrap:wrap;gap:14px 30px;padding-bottom:30px;border-bottom:1px solid var(--line)}
.project-categories a{font-size:14px;border-bottom:1px solid #ccb086;padding-bottom:5px}
.project-category{padding:65px 0;border-bottom:1px solid var(--line);scroll-margin-top:90px}
.category-heading{margin-bottom:35px}
.category-heading h2{font-size:clamp(35px,3.5vw,53px)}
.portfolio-preparation{display:flex;align-items:start;justify-content:space-between;gap:30px}
.portfolio-preparation p{max-width:630px;color:var(--muted);font-size:16px}
.portfolio-preparation>span{font-size:12px;color:#876c46;border-left:1px solid var(--gold);padding-left:20px;max-width:230px}
.project-name{font-family:var(--serif);font-size:52px;margin:15px 0 25px}
.internal-projects{display:grid;grid-template-columns:1fr 1fr;gap:45px}
.internal-projects>a{padding:30px;background:var(--paper)}
.internal-projects h3{font-family:var(--serif);font-size:35px}
.internal-projects p{font-size:16px;margin:20px 0;color:var(--muted)}
.portfolio-note{font-size:14px;color:var(--muted);margin-top:35px}
@media(max-width:1100px){.story-layout{gap:5vw;grid-template-columns:1.05fr 1fr}.story-panels{left:24px;right:24px}.creative-bridge{gap:5vw}.our-contexts{margin-top:0}.desktop-nav{gap:18px}}
@media(max-width:800px){
  .home-hero .hero-description{font-size:16px;max-width:460px}.home-hero .eyebrow{font-size:12px;max-width:370px;line-height:1.7}.home-hero .hero-content{padding-top:170px;padding-bottom:170px}.home-hero{min-height:780px}
  .creative-bridge{grid-template-columns:1fr;gap:38px}.creative-bridge h2{font-size:48px}.bridge-copy .lead{font-size:31px}.creative-bridge h2 br:nth-of-type(2){display:none}.our-contexts{gap:14px 25px;padding-top:24px}.our-contexts>span{width:100%}.our-contexts strong{font-size:14px}
  .creative-story{padding-top:65px;padding-bottom:30px}.story-heading{margin-bottom:40px}.story-heading h2{font-size:39px}.story-layout{display:block}.story-visual{top:88px;height:40svh;min-height:300px;max-height:390px;z-index:5;box-shadow:0 14px 24px #101e2b;border-bottom:1px solid #ccb08640}
  .story-panels{inset:22px 22px 94px}.visual-kicker{font-size:11px;margin-bottom:12px}.visual-question{font-size:32px}.visual-question br:nth-of-type(2){display:none}.concept-words{margin-top:17px}.concept-words span{font-size:12px;padding-top:6px}.story-navigation{bottom:34px;left:20px;right:20px;gap:8px}.story-navigation a{font-size:12px}.story-navigation span{display:inline;margin-right:5px;font-size:11px}.story-disclosure{font-size:10px;left:20px;bottom:10px}
  .cue-sequence{gap:8px}.cue-sequence>div{padding-top:7px;grid-template-columns:24px 1fr;gap:0 8px}.cue-sequence strong{font-size:20px}.cue-sequence small{font-size:12px}.cue-sequence span{font-size:11px;padding-top:2px}.cue-sequence small{grid-column:2}.project-map{gap:8px}.project-map strong{font-size:32px;padding:0 0 7px}.project-map span{font-size:14px;padding:8px 4px}.visual-footnote{display:none}
  .story-chapter{min-height:58svh;padding:55px 0 65px;scroll-margin-top:calc(88px + max(300px,40svh) + 25px)}.story-chapter:first-child{padding-top:45px}.story-chapter h3{font-size:38px;margin-bottom:22px}.chapter-number{margin-bottom:22px}.story-chapter p{font-size:16px}.chapter-detail{font-size:12px}
  .project-door-link{min-height:520px;padding-top:65px;padding-bottom:80px}.project-door h2{font-size:59px}.project-door img{object-position:57% center}.project-door .image-caption{font-size:11px}.vea-world{grid-template-columns:1fr;gap:35px}.vea-world h2{font-size:38px}.home-people{padding-top:0}.people-strip{grid-template-columns:1fr 1fr;gap:30px 20px}.people-strip strong{font-size:23px}.people-strip span{font-size:13px}
  .portfolio-preparation{flex-direction:column}.portfolio-preparation>span{max-width:none}.internal-projects{grid-template-columns:1fr;gap:25px}.internal-projects>a{padding:25px}.project-category{padding:45px 0}.project-name{font-size:43px}.project-categories{gap:15px 24px}.project-categories a{font-size:13px}
}
@media(max-width:430px){.creative-bridge h2{font-size:42px}.relationship{gap:6px}.relationship small{font-size:11px}.relationship span{font-size:14px}.relationship .relationship-vea{padding:20px 5px}.story-heading h2{font-size:35px}.story-navigation{gap:6px;left:14px;right:14px}.story-navigation a{font-size:11px}.story-navigation span{margin-right:3px}.story-chapter h3{font-size:35px}.home-hero .hero-description{font-size:16px}.home-hero .eyebrow{font-size:11px}.people-strip span{font-size:12px}}
@media(max-height:650px) and (min-width:801px){.story-visual{top:100px;min-height:370px;height:calc(100svh - 115px)}.visual-question{font-size:36px}.story-panels{inset:20px 24px 104px}.visual-kicker{margin-bottom:15px}.cue-sequence{gap:10px}.cue-sequence strong{font-size:22px}.project-map strong{font-size:36px;padding-bottom:15px}.story-chapter{min-height:90svh}}
@media(prefers-reduced-motion:reduce){.story-panel,.story-photo{transition:none;transform:none}.project-door-link:hover img{transform:none}}
html.reduce-motion .story-panel,html.reduce-motion .story-photo,html.reduce-motion .project-door-link:hover img{transition:none;transform:none}
/* Account for the document's 110px scroll padding when following chapter links. */
.story-chapter{scroll-margin-top:10px}
@media(max-width:800px){.story-chapter{scroll-margin-top:calc(max(300px,40svh) + 3px)}.creative-bridge h2 br:nth-of-type(2),.visual-question br:nth-of-type(2){display:initial}}
