/* Prominent hero words over a soft, continuous gradient. */
.hero-film-veil{background:linear-gradient(90deg,rgba(6,21,28,.54),rgba(6,21,28,.25) 58%,rgba(6,21,28,0) 100%),linear-gradient(180deg,rgba(6,21,28,0) 22%,rgba(6,21,28,.12) 45%,rgba(6,21,28,.8) 100%)}
.hero .line-two{font-size:clamp(38px,4.5vw,64px);line-height:1.18;letter-spacing:-.035em;white-space:nowrap}
.hero .line-two strong,.hero .hero-term{font-size:clamp(60px,7.22vw,104px);color:var(--warm);font-weight:700;display:inline}
.hero .mask-two{min-height:123px}
/* Reduce the height of the introduction without shrinking the illustrations excessively. */
.intro-video{padding:28px 80px 30px}
.intro-video-copy p{font-size:18px;line-height:1.35;margin-bottom:6px}
.intro-video-copy h2{font-size:40px;line-height:1.2}
.strategy-flow{margin-top:20px;gap:24px}
.strategy-step{padding:18px;border-radius:20px}
.strategy-visual{height:152px;margin-bottom:8px}
.strategy-step .strategy-visual img{width:152px;height:152px;min-height:0}
.strategy-visual.is-double img+img{margin-left:-44px}
.strategy-visual.is-double img{max-width:calc((100% + 44px)/2)}
.strategy-card-title{gap:10px;margin-bottom:8px}
.strategy-step h3{font-size:22px;line-height:1.3}
.strategy-step p{font-size:14px;line-height:20px}
.strategy-step-number{width:30px;height:30px;font-size:14px}
/* Each work uses one of five category labels. */
.works-grid{gap:26px}
.work-body{gap:5px;margin-top:10px}
.work-identity{gap:2px}
.work-company{line-height:1.25}
.work-card h3,.columns-2 h3{line-height:1.25}
.work-desc,.columns-2 .work-desc{line-height:1.4}
.work-tags{margin-top:2px}
.works .work-tag{line-height:1.25;padding:5px 10px}
.works .work-tag[data-category="product"]{background:#a95417}
.works .work-tag[data-category="event"]{background:#25616f}
.works .work-tag[data-category="facility"]{background:#24634c}
.works .work-tag[data-category="youtube"]{background:#a83934}
.works .work-tag[data-category="company"]{background:#1f668a}
/* Corporate event footage gets a larger, full-width stage. */
.event-intro{grid-template-columns:1fr;gap:28px}
.event-copy{display:grid;grid-template-columns:minmax(0,1fr) 310px;column-gap:40px;align-items:center}
.event-copy .event-label,.event-copy h2{grid-column:1/-1}
.event-copy .event-label{margin-bottom:8px}
.event-copy h2{font-size:42px;line-height:1.2;margin-bottom:16px}
.event-copy h2 strong{font-size:64px;display:inline-block;margin-right:16px}
.event-copy h2 br{display:none}
.event-catch,.event-description{grid-column:1}
.event-copy .event-cta{grid-column:2;grid-row:3/5;justify-self:end}
.event-description{max-width:870px;font-size:16px;line-height:1.5;margin-bottom:0!important}
.event-feature-media{width:100%;max-width:1080px;margin:0 auto}
.event-feature-media .video-media{border-radius:16px}
.event-feature-media .play-mark{width:72px;height:72px;font-size:24px}
.event-works>h3{font-size:32px;margin-bottom:20px}
.event-work-info h4{line-height:1.25}
.event-work-info .event-work-description{line-height:1.4}
@media(max-width:1100px){
 .intro-video{padding:28px 32px 30px}.intro-video-copy h2{font-size:34px}
 .event-copy{column-gap:24px}.event-copy h2 strong{font-size:56px}
}
@media(min-width:601px) and (max-width:900px){
 .strategy-flow{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;max-width:none;margin-top:20px}
 .strategy-step{display:flex;padding:16px}
 .strategy-visual,.strategy-visual.is-double{width:100%;height:132px;flex-direction:row}
 .strategy-step .strategy-visual img{width:132px;height:132px}
 .strategy-visual.is-double img{width:100px}
 .strategy-card-title{align-self:stretch;margin:0 0 8px;gap:6px}
 .strategy-step h3{font-size:18px}.strategy-step p{font-size:12px;line-height:18px;margin:0}
 .strategy-step-number{width:26px;height:26px;font-size:12px}
 .strategy-step:not(:last-child)::after{content:'→';left:auto;right:-16px;top:50%;bottom:auto;transform:translateY(-50%);font-size:18px}
 .event-copy{display:block}.event-copy .event-cta{margin-top:16px}
}
@media(max-width:600px){
 .hero .line-two{font-size:clamp(27px,7.1vw,40px);white-space:normal}
 .hero .line-two strong,.hero .hero-term{font-size:clamp(45px,12.5vw,68px)}
 .hero .hero-term{display:block}.hero .mask-two{min-height:0}
 .intro-video{padding:26px 24px 30px}.intro-video-copy p{font-size:16px}.intro-video-copy h2{font-size:28px}
 .strategy-flow{gap:20px;margin-top:18px}
 .strategy-step{display:grid;grid-template-columns:104px minmax(0,1fr);grid-template-rows:auto auto;column-gap:14px;padding:14px;border-radius:16px;align-items:center}
 .strategy-visual,.strategy-visual.is-double{grid-column:1;grid-row:1/3;width:104px;height:108px;flex-direction:row;margin:0}
 .strategy-step .strategy-visual img{width:104px;height:108px;min-height:0}
 .strategy-visual.is-double img{width:74px}.strategy-visual.is-double img+img{margin-left:-44px}
 .strategy-card-title{grid-column:2;gap:6px;margin:0;align-self:end}
 .strategy-step-number{width:24px;height:24px;font-size:12px}
 .strategy-step h3{font-size:18px}.strategy-step p{grid-column:2;align-self:start;line-height:19px;font-size:12px;margin:7px 0 0}
 .strategy-step:not(:last-child)::after{content:'↓';bottom:-20px;top:auto;right:auto;left:calc(50% - 7px);transform:none}
 .work-row,.works-grid{gap:28px}
 .event-copy{display:block}.event-copy h2{font-size:28px}.event-copy h2 strong{font-size:48px;display:block;margin:0 0 4px}
 .event-copy .event-cta{margin-top:16px}.event-description{font-size:14px}
 .event-feature-media .play-mark{width:56px;height:56px;font-size:20px}
}
