.ribbon-story{position:relative;isolation:isolate;overflow:hidden;max-width:1774px;margin:auto;background:#020e18;border-color:#28435466;scroll-margin-top:0}
.ribbon-story .story-layout{position:relative;z-index:2;width:88.5%;max-width:none;display:flex;flex-direction:column;align-items:stretch;gap:0;padding:11.2% 0 4%;min-height:0}
.ribbon-story .story-title{width:49%;padding:0 0 10.4%}
.ribbon-story .eyebrow{font-size:clamp(9px,.79vw,14px);letter-spacing:2px;line-height:1.6;color:#c4e5fa}
.ribbon-story .story-title h2{font-size:clamp(48px,5.85vw,104px);letter-spacing:-.055em;line-height:1.02;margin:30px 0 42px;font-weight:600;white-space:nowrap}
.ribbon-story .story-title h2 span{color:#a3d5f4}
.ribbon-story .story-title p{font-size:clamp(15px,1.35vw,24px);line-height:1.55;margin:0;color:#b8d8ef}
.ribbon-parallax{position:absolute;inset:0;z-index:-1;transform:translate3d(var(--ribbon-x,0px),var(--ribbon-y,0px),0);transition:transform 1.5s cubic-bezier(.16,1,.3,1);pointer-events:none}
.ribbon-image{display:block;width:100%;height:auto;max-width:none;transform-origin:75% 32%;animation:ribbon-drift 14s ease-in-out infinite alternate;animation-play-state:paused;mask-image:linear-gradient(#000 72%,transparent 96%)}
.ribbon-story.is-active .ribbon-image{animation-play-state:running}
.ribbon-callout{position:absolute;right:10.2%;top:20%;border:1px solid #44647c66;border-radius:40px;padding:13px 22px;color:#b8d8ef;font-size:clamp(10px,1vw,18px);display:flex;align-items:center;gap:15px;background:#020e18cc;z-index:1}
.ribbon-callout i{width:7px;height:7px;border-radius:50%;background:#d6ff32;box-shadow:0 0 16px #d6ff3266}
.ribbon-callout:before{content:'';position:absolute;right:100%;width:48px;height:25px;border-top:1px solid #9bbacc88;transform:skewX(-40deg);transform-origin:top right}
.ribbon-story .story-foot{display:grid;grid-template-columns:.9fr 2.8fr 1fr;gap:30px;border-top:1px solid #7694a877;padding-top:36px;align-items:start}
.ribbon-story .story-foot>span{font-size:11px;letter-spacing:2px;line-height:1.8;color:#b5dbf2}
.ribbon-story .story-foot p{font-size:clamp(11px,.95vw,17px);line-height:1.7;color:#b5d5eb;padding-left:35px;border-left:1px solid #496779;margin:0}
.ribbon-link{display:flex;justify-content:space-between;align-items:center;gap:20px;color:#d6ff32;border-bottom:1px solid #a5c63388;padding:4px 0 18px;font-size:clamp(12px,1.05vw,19px);white-space:nowrap;transition:color .25s}
.ribbon-link span{display:inline-block;transition:transform .4s cubic-bezier(.16,1,.3,1)}
.ribbon-link:hover{color:#efffa9}.ribbon-link:hover span{transform:translateX(6px)}
@keyframes ribbon-drift{0%{transform:translate3d(0,0,0) rotate(-.35deg) scale(1.015);filter:brightness(.96)}100%{transform:translate3d(8px,-9px,0) rotate(.4deg) scale(1.035);filter:brightness(1.08)}}
@media(min-width:1774px){.ribbon-story .story-title h2{font-size:104px}.ribbon-story .story-title p{font-size:24px}}
@media(max-width:950px){.ribbon-story .story-layout{padding-top:13%;width:88%}.ribbon-story .story-title{width:60%;padding-bottom:13%}.ribbon-story .story-title h2{font-size:5.8vw;margin:24px 0}.ribbon-callout{right:6%;top:13%;font-size:10px;padding:10px 13px}.ribbon-story .story-foot{grid-template-columns:1fr 2.5fr;gap:20px}.ribbon-story .story-foot p{padding-left:20px}.ribbon-link{grid-column:2;width:max-content;font-size:14px;gap:30px}}
@media(max-width:600px){.ribbon-story .story-layout{padding:55px 0 35px}.ribbon-story .story-title{width:100%;padding-bottom:300px}.ribbon-story .eyebrow{font-size:8px;letter-spacing:1.5px}.ribbon-story .story-title h2{font-size:clamp(34px,9vw,54px);margin:24px 0;letter-spacing:-.05em}.ribbon-story .story-title p{font-size:14px}.ribbon-parallax{top:230px;left:-350px;right:-20px;bottom:auto;height:350px}.ribbon-image{height:350px;width:100%;object-fit:cover;object-position:right center;mask-image:linear-gradient(transparent,#000 12%,#000 75%,transparent)}.ribbon-callout{top:300px;right:8%;font-size:9px}.ribbon-story .story-foot{grid-template-columns:1fr;gap:18px;padding-top:24px}.ribbon-story .story-foot p{font-size:12px;padding:0;border:0}.ribbon-story .story-foot p br{display:none}.ribbon-link{grid-column:auto;font-size:14px;min-height:44px}.ribbon-story .story-foot>span{font-size:9px}}
@media(prefers-reduced-motion:reduce){.ribbon-image{animation:none}.ribbon-parallax{transform:none;transition:none}}
