/* One light travels from the opening to the final brand signature. */
.horizon-hero{background:radial-gradient(ellipse at 77% 43%,#d8e6ff 0,transparent 49%),var(--hero-background)}
.horizon-visual{right:-2%;top:-2%;width:58%;height:96%;background:none!important;z-index:0}
.horizon-visual:after{content:'';position:absolute;bottom:13%;left:24%;width:55%;height:5%;background:#5373b82b;border-radius:50%;filter:blur(18px);transform:rotate(-8deg)}
.horizon-copy{position:relative;z-index:2;width:71%;pointer-events:none}.horizon-copy a{pointer-events:auto}
.horizon-hero h1{font-size:clamp(4.5rem,7vw,8.5rem);max-width:780px}
.horizon-copy>p{max-width:570px}
.horizon-actions{gap:14px;align-items:stretch;width:max-content;max-width:100%}
.horizon-actions .button,.horizon-actions .text-link{min-height:58px;display:inline-flex;align-items:center;justify-content:center;line-height:1.25;padding:17px 27px;margin:0;white-space:normal;border-radius:100px;font-size:.9rem;font-weight:500;letter-spacing:0;position:relative;transition:background .3s,color .3s,box-shadow .35s,transform .35s}
.horizon-actions .text-link{border:1px solid #aab9d0;color:var(--ink);background:#edf1f780;text-decoration:none}
.horizon-actions .text-link:after{display:none}.horizon-actions .button:hover{background:var(--accent);border-color:var(--accent);color:#fff;box-shadow:0 8px 28px #305bdc30;transform:translateY(-3px)}
.horizon-actions .text-link:hover{background:var(--elevated);box-shadow:0 8px 28px #305bdc12;transform:translateY(-3px)}
.horizon-copy>.eyebrow,.horizon-copy h1,.horizon-copy>p,.horizon-actions{animation:opening-enter 1.15s cubic-bezier(.16,1,.3,1) both}.horizon-copy h1{animation-delay:.08s}.horizon-copy>p{animation-delay:.17s}.horizon-actions{animation-delay:.25s}
.horizon-visual{animation:sculpture-enter 1.8s cubic-bezier(.16,1,.3,1) both}.horizon-bottom{z-index:3}
@keyframes opening-enter{from{opacity:0;transform:translateY(30px)}to{opacity:1;transform:none}}
@keyframes ambient-enter{from{opacity:0;transform:translateY(20px)}to{opacity:var(--ambient-opacity,.32);transform:none}}
@keyframes sculpture-enter{from{opacity:0;transform:translateY(35px) scale(.93)}to{opacity:1;transform:none}}
html[data-theme=night] .horizon-hero{background:radial-gradient(ellipse at 77% 43%,#193a723d 0,transparent 52%),var(--hero-background)}
html[data-theme=night] .horizon-actions .text-link{background:#101e3480;border-color:#4f678c}
html[data-theme=night] .horizon-visual:after{background:#305bdc2b}
.article-hero{position:relative;isolation:isolate;overflow:clip}.article-hero>div:not(.ambient-sculpture){position:relative;z-index:2}
.ambient-sculpture{position:absolute;right:-90px;top:-65px;width:min(52%,620px);height:calc(100% + 90px);--ambient-opacity:.32;opacity:var(--ambient-opacity);pointer-events:none;z-index:0;mask-image:linear-gradient(90deg,transparent,#000 35%);animation:ambient-enter 1.6s both}
.ambient-sculpture canvas{width:100%;height:100%;display:block}.page-hero:after{display:none}.page-hero>.eyebrow,.page-hero>h1,.page-hero>.page-hero-bottom,.article-hero>.eyebrow,.article-hero>h1,.article-hero>p{position:relative;z-index:2}
.page-hero>h1,.article-hero>h1{animation:opening-enter 1s cubic-bezier(.16,1,.3,1) both}.page-hero>.page-hero-bottom,.article-hero>p{animation:opening-enter 1.1s .1s cubic-bezier(.16,1,.3,1) both}
.footer-wordmark{transform:none!important}.footer-wordmark span{transition:text-shadow .6s}.flow-arrived .footer-wordmark span{text-shadow:0 0 45px #688eff85}
.motion-ready{transition:opacity .9s cubic-bezier(.16,1,.3,1),translate 1.1s cubic-bezier(.16,1,.3,1);transition-delay:var(--entry-delay,0s)}.motion-ready[data-entered=false]{opacity:0;translate:0 34px}.motion-ready[data-entered=true]{opacity:1;translate:0 0}
.industry-photography{padding-top:22px;padding-bottom:105px;perspective:1400px}.industry-carousel{padding-top:18px;padding-bottom:42px;gap:26px;grid-auto-columns:calc((100% - 52px)/3)}
.industry-carousel .photo-card{position:relative;height:430px;overflow:hidden;border-radius:4px;isolation:isolate;transform:perspective(1200px) rotateX(var(--card-rx,0deg)) rotateY(var(--card-ry,0deg)) translateY(var(--card-lift,0px));transition:transform .65s cubic-bezier(.16,1,.3,1),border-radius .65s,box-shadow .65s;will-change:transform}
.industry-carousel .photo-card img{width:100%;height:100%;object-fit:cover;transform:translateY(var(--media-shift,0px)) scale(1.14)!important;transition:transform .8s cubic-bezier(.16,1,.3,1)}
.industry-carousel .photo-card:before{content:'';position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,#06112400 33%,#051124bc 82%,#061124e8 100%);transition:opacity .6s}
.industry-carousel .photo-card:after{content:'';position:absolute;inset:0;z-index:3;background:radial-gradient(circle at var(--shine-x,50%) var(--shine-y,50%),#fff3,transparent 55%);opacity:0;transition:opacity .5s;pointer-events:none}
.industry-carousel .photo-card>span{position:absolute;z-index:2;left:27px;right:27px;bottom:27px;padding:0;line-height:1.25;font-size:1.5rem;font-weight:500;letter-spacing:-.035em;transform:translateY(0);transition:transform .6s}
.industry-carousel .photo-card>span b{font-size:1.25rem;min-width:36px;height:36px;border:1px solid #ffffff60;border-radius:50%;display:grid;place-items:center;transition:background .4s,transform .4s}
.industry-carousel .photo-card:hover,.industry-carousel .photo-card:focus-visible{--card-lift:-8px;border-radius:15px;box-shadow:0 22px 45px #0004}.industry-carousel .photo-card:hover:after{opacity:1}.industry-carousel .photo-card:hover>span{transform:translateY(-5px)}.industry-carousel .photo-card:hover>span b{background:#fff2;transform:rotate(45deg)}
.industry-photo-grid>a,.article-card{transition:transform .65s cubic-bezier(.16,1,.3,1),box-shadow .65s}.industry-photo-grid>a:hover,.article-card:hover{transform:translateY(-6px);box-shadow:0 18px 40px #13223d12}
.editorial-article{position:relative;transform:perspective(1500px) rotateX(var(--card-rx,0deg)) rotateY(var(--card-ry,0deg));transition:transform .7s cubic-bezier(.16,1,.3,1);will-change:transform}
.editorial-cover.photo-cover{border-radius:3px;clip-path:inset(0 round 3px);transition:clip-path .75s,box-shadow .75s;position:relative}.editorial-cover.photo-cover img{width:100%;height:100%;object-fit:cover;transform:translateY(var(--media-shift,0px)) scale(1.12)!important;transition:transform 1s cubic-bezier(.16,1,.3,1)}
.editorial-cover.photo-cover:after{content:'';position:absolute;inset:0;opacity:0;background:radial-gradient(circle at var(--shine-x,50%) var(--shine-y,50%),#fff4,transparent 60%);transition:opacity .55s}
.editorial-article:hover .editorial-cover{clip-path:inset(2.5% round 20px)}.editorial-article:hover .editorial-cover:after{opacity:1}.editorial-article h3{transition:color .4s;text-wrap:balance}.editorial-article:hover h3{color:var(--accent)}.editorial-article>div:last-child{position:relative}.editorial-article>div:last-child:after{content:'';display:block;height:1px;width:100%;margin-top:24px;background:var(--accent);transform:scaleX(0);transform-origin:left;transition:transform .65s cubic-bezier(.16,1,.3,1)}.editorial-article:hover>div:last-child:after,.editorial-article:focus-visible>div:last-child:after{transform:scaleX(1)}
.industry-link-grid a{transition:color .3s,padding .4s}.industry-link-grid a:hover{padding-inline-start:8px;color:#c6d8ff}.expertise-row .row-plus{transition:transform .6s}.expertise-row:hover .row-plus{transform:rotate(90deg)}
[dir=rtl] .horizon-copy{margin-right:0;margin-left:auto}[dir=rtl] .horizon-visual{right:auto;left:-2%}[dir=rtl] .ambient-sculpture{right:auto;left:-90px;mask-image:linear-gradient(270deg,transparent,#000 35%)}
@media(min-width:1500px){.horizon-copy{width:65%}.horizon-visual{right:0;width:56%}}
@media(max-width:1000px){.horizon-hero{height:auto;min-height:0;display:flex;flex-direction:column;padding-bottom:135px}.horizon-visual{position:relative;right:auto;left:14%;top:auto;width:86%;height:420px;order:2;margin-top:20px;opacity:1}.horizon-copy{width:100%;order:1;padding-top:65px;padding-bottom:0}.industry-carousel{grid-auto-columns:calc((100% - 26px)/2)}.industry-carousel .photo-card{height:390px}}
@media(max-width:700px){.horizon-hero{height:auto;min-height:0;display:flex;flex-direction:column;padding-bottom:135px}.horizon-copy{width:100%;padding-top:52px;pointer-events:auto}.horizon-hero h1{font-size:clamp(3rem,14.8vw,5.8rem);max-width:100%}.horizon-copy>p{max-width:450px}.horizon-visual{position:relative;right:auto;left:-4%;top:auto;width:108%;height:355px;margin-top:12px;order:2;opacity:1}.horizon-copy{order:1}.horizon-visual:after{bottom:15%}.horizon-actions{width:auto;gap:10px;flex-wrap:wrap}.horizon-actions .button,.horizon-actions .text-link{font-size:.84rem;min-height:52px;padding:14px 19px}.horizon-actions .button{flex:1 1 auto}.horizon-actions .text-link{flex:0 0 auto}.horizon-bottom{bottom:22px;padding-top:20px}.ambient-sculpture{right:-85px;width:70%;--ambient-opacity:.16;opacity:var(--ambient-opacity)}.flow-spark{width:15px;height:15px;box-shadow:0 0 18px #4779d03b}.flow-spark:after{inset:-5px}.flow-trace{opacity:.24}.industry-photography{padding-bottom:65px}.industry-carousel{grid-auto-columns:88%;gap:18px;padding-bottom:30px}.industry-carousel .photo-card{height:370px}.industry-carousel .photo-card>span{left:23px;right:23px;font-size:1.5rem}.industry-carousel .photo-card img{height:100%}.editorial-cover.photo-cover{aspect-ratio:1.18}[dir=rtl] .horizon-visual{left:-4%}}
@media(prefers-reduced-motion:reduce){.horizon-copy>*,.horizon-visual,.ambient-sculpture,.page-hero>h1,.page-hero>.page-hero-bottom,.article-hero>h1,.article-hero>p{animation:none!important}.flow-trace,.flow-spark{display:none!important}.motion-ready{opacity:1!important;translate:none!important;transition:none!important}.photo-card,.editorial-article,.industry-photo-grid>a,.article-card,.photo-card img,.editorial-cover.photo-cover img{transform:none!important;transition:none!important}.industry-carousel .photo-card img{transform:scale(1.02)!important}.horizon-actions a{transform:none!important}.editorial-cover.photo-cover{clip-path:none!important}}

.motion-ready.motion-ready{transition-property:opacity,translate,transform,box-shadow,border-radius;transition-duration:.85s,1.1s,.65s,.65s,.65s;transition-timing-function:cubic-bezier(.16,1,.3,1)}
@media(prefers-reduced-motion:reduce){.motion-ready.motion-ready{transition:none!important}}

:focus-visible{outline-color:var(--accent)}
@media(max-width:370px){.horizon-actions{display:grid;grid-template-columns:1fr}.horizon-actions a{width:100%}.header-inner{padding-inline:12px}.header .brand{font-size:1.05rem}.header-actions .icon-button{width:27px;min-width:27px;padding:3px}.mobile-toggle span{width:20px}}


.ambient-sculpture{--ambient-opacity:.4}
/* The opening opens out gradually as it leaves the viewport. */
html,body{overflow-x:clip}
.horizon-hero{background:radial-gradient(ellipse at 83% 43%,#c8dcfa55,transparent 52%),var(--hero-background)}
.horizon-visual{right:-1%;width:57%;top:0;height:100%;animation:opening-enter 1.65s cubic-bezier(.16,1,.3,1) both;translate:0 var(--hero-drift,0px);opacity:calc(1 - var(--hero-wash,0));mask-image:linear-gradient(180deg,transparent,#000 10%,#000 88%,transparent)}
.horizon-visual:after{display:none}.horizon-visual canvas,.ambient-sculpture canvas{position:absolute;inset:0;width:100%;height:100%}.horizon-copy{opacity:var(--hero-copy-opacity,1)}
.horizon-hero:after{content:'';position:absolute;left:0;right:0;bottom:0;height:230px;pointer-events:none;z-index:1;background:linear-gradient(0deg,var(--surface),transparent);opacity:var(--hero-wash,0)}
html[data-theme=night] .horizon-hero{background:radial-gradient(ellipse at 83% 43%,#254b851f,transparent 55%),var(--hero-background)}

@media(max-width:1000px){.horizon-visual{position:relative;right:auto;left:8%;width:92%;height:440px;top:auto;order:2;margin-top:0}.horizon-copy{width:100%}}
@media(max-width:700px){.horizon-visual{left:-4%;width:108%;height:375px}.horizon-hero h1{font-size:clamp(2.35rem,12vw,4rem)}}
@media(prefers-reduced-motion:reduce){.horizon-visual{translate:none!important;opacity:1!important}.horizon-copy{opacity:1!important}.horizon-hero:after{display:none}}
/* One luminous object, composited above the surfaces and below navigation. */
#travelling-light{position:fixed;inset:0;width:100%;height:100%;z-index:25;pointer-events:none;contain:strict}
/* All cards remain in the ordinary document flow and arrive as a group. */
.gallery-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:28px;color:#eaf1ff}.gallery-heading>span:last-child{font-size:.875rem;color:#b7c4d8}
.industry-scenes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-bottom:65px}
.industry-scene{position:relative;display:block;min-width:0;min-height:295px;aspect-ratio:1.35;overflow:hidden;border-radius:10px;background:#162b42;color:#fff;isolation:isolate}
.industry-scene>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform 1.2s cubic-bezier(.16,1,.3,1)}
.industry-scene:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,#06142808,#07182a40 30%,#031225df);pointer-events:none}
.industry-scene-copy{position:absolute;inset:auto 26px 25px;z-index:2}.industry-scene-copy .eyebrow{font-size:.75rem;color:#dce8f8;letter-spacing:.06em}.industry-scene h3{font-size:clamp(1.5rem,2.1vw,2.4rem);line-height:1.16;letter-spacing:-.045em;margin:15px 0 16px;color:#fff}
.deck-link{display:flex;align-items:center;gap:14px;font-size:.875rem;font-weight:500;line-height:1.4;margin-top:18px}.deck-link b{display:grid;place-items:center;width:30px;height:30px;flex:none;border:1px solid currentColor;border-radius:50%;font-size:1rem;font-weight:400}
.industry-scene:hover>img{transform:scale(1.055)}.industry-scene:focus-visible{outline:3px solid #a9c9ff;outline-offset:4px}
.insight-scenes{gap:30px}.insight-scenes .editorial-cover{aspect-ratio:1.3}.insight-scenes .editorial-article h3{font-size:clamp(1.4rem,2vw,2rem);line-height:1.2;margin:17px 0 13px;letter-spacing:-.035em}.insight-scenes .editorial-article p{font-size:1rem;line-height:1.65;margin-bottom:15px}.insight-scenes .editorial-article .eyebrow{font-size:.75rem}.insight-scenes .editorial-article small{font-size:.8125rem}.insight-scenes .editorial-article .deck-link{font-size:.875rem;color:var(--accent)}
.side-group-ready>.scene-card{opacity:1;transform:none;transition:transform 1.25s cubic-bezier(.16,1,.3,1),opacity 1s cubic-bezier(.16,1,.3,1);transition-delay:0s;transform-origin:center;will-change:auto}
.side-group-ready[data-entered=false]>.scene-card{opacity:0;transform:perspective(1500px) translateX(calc(var(--arrival-side,1)*65px)) rotateY(calc(var(--arrival-side,1)*-32deg)) scale(.97)}
.motion-ready.side-arrival{transform:perspective(1600px) translateX(0) rotateY(0);transition:transform 1.1s cubic-bezier(.16,1,.3,1),opacity .85s cubic-bezier(.16,1,.3,1),translate 1.1s cubic-bezier(.16,1,.3,1);transition-delay:var(--entry-delay,0s)}
.motion-ready.side-arrival[data-entered=false]{transform:perspective(1600px) translateX(calc(var(--arrival-side,1)*45px)) rotateY(calc(var(--arrival-side,1)*-24deg));opacity:0;translate:0 10px}
@media(max-width:1000px){.industry-scenes{gap:20px}.industry-scene{min-height:270px;aspect-ratio:1}.industry-scene-copy{inset:auto 20px 23px}.industry-scene h3{font-size:1.5rem}.industry-scene-copy .eyebrow{font-size:.6875rem}.industry-scene .deck-link{font-size:.8125rem}.insight-scenes{gap:20px}.insight-scenes .editorial-article h3{font-size:1.4rem}}
@media(max-width:700px){.gallery-heading{display:block;margin-bottom:24px}.gallery-heading>.eyebrow{display:block;font-size:.75rem;margin-bottom:10px}.gallery-heading>span:last-child{font-size:.8125rem}.industry-scenes{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-bottom:45px}.industry-scene{min-height:225px;aspect-ratio:auto;border-radius:7px}.industry-scene-copy{inset:auto 16px 19px}.industry-scene-copy .eyebrow{font-size:.6875rem;line-height:1.35;letter-spacing:0}.industry-scene h3{font-size:1.25rem;line-height:1.2;margin:12px 0}.industry-scene .deck-link{font-size:.75rem;gap:5px;margin-top:10px}.industry-scene .deck-link b{display:none}.insight-scenes{grid-template-columns:1fr;gap:42px}.insight-scenes .editorial-cover{aspect-ratio:1.35}.insight-scenes .editorial-article h3{font-size:1.65rem}.side-group-ready[data-entered=false]>.scene-card{transform:perspective(1200px) translateX(calc(var(--arrival-side,1)*25px)) rotateY(calc(var(--arrival-side,1)*-23deg)) scale(.98)}}
@media(max-width:370px){.industry-scene-copy{inset:auto 12px 15px}.industry-scene h3{font-size:1.125rem}.industry-scene-copy .eyebrow{font-size:.6875rem}.industry-scene .deck-link{font-size:.75rem}}
@media(prefers-reduced-motion:reduce){#travelling-light{display:none}.side-group-ready>.scene-card,.motion-ready.side-arrival{opacity:1!important;transform:none!important;transition:none!important}}
