:root { color-scheme: dark; background: #01002d; }
    * { box-sizing: border-box; }
    html { background: #01002d; scroll-behavior: smooth; }
    body { margin: 0; min-width: 320px; background: #01002d; color: white; font-family: Inter, ui-sans-serif, system-ui, sans-serif; }
    main { width: min(100%, 1122px); margin: 0 auto; overflow: clip; background: #01002d; box-shadow: 0 0 80px rgba(0,0,0,.38); }
    .page { position: relative; width: 100%; aspect-ratio: 1684 / 1190; margin: 0; padding: 0; line-height: 0; background: #01002d; }
    .page img { display: block; width: 100%; height: auto; margin: 0; border: 0; user-select: none; }
    @media (min-width: 1123px) { body { padding: 0 max(0px, calc((100vw - 1122px) / 2)); } }
    @media (max-width: 720px) { main { width: 100%; box-shadow: none; } }

    html.animations-ready .page {
      --reveal-x: 0px;
      opacity: 0;
      transform: translate3d(var(--reveal-x), 48px, 0) scale(.988);
      filter: blur(6px);
      transition: opacity .78s cubic-bezier(.22,1,.36,1), transform .95s cubic-bezier(.22,1,.36,1), filter .68s ease;
      will-change: opacity, transform, filter;
    }
    html.animations-ready .page:nth-child(3n + 2) { --reveal-x: -24px; }
    html.animations-ready .page:nth-child(3n) { --reveal-x: 24px; }
    html.animations-ready .page.is-visible { opacity: 1; transform: none; filter: blur(0); }
    html.animations-ready .page.is-visible img { animation: settle 1.25s cubic-bezier(.22,1,.36,1) both; }
    @keyframes settle { from { transform: scale(1.018); } to { transform: scale(1); } }
    @media (max-width: 720px) {
      html.animations-ready .page { --reveal-x: 0px !important; transform: translate3d(0,24px,0) scale(.993); filter: blur(3px); }
      html.animations-ready .page.is-visible { transform: none; }
    }
    @media (prefers-reduced-motion: reduce) {
      html { scroll-behavior: auto; }
      html.animations-ready .page, html.animations-ready .page.is-visible { opacity: 1; transform: none; filter: none; transition: none; }
      html.animations-ready .page.is-visible img { animation: none; }
    }


    .hotspot {
      position: absolute;
      z-index: 5;
      display: block;
      border-radius: 999px;
      cursor: pointer;
      -webkit-tap-highlight-color: rgba(247, 190, 37, .3);
    }
    .hotspot:hover { background: rgba(247, 190, 37, .09); box-shadow: 0 0 22px rgba(247, 190, 37, .28); }
    .hotspot:focus-visible { outline: 3px solid #f7be25; outline-offset: 3px; background: rgba(247, 190, 37, .12); }
    a[href], button, .hotspot { cursor: pointer; }
    .desktop-legal-menu { position:absolute; z-index:6; left:32.6%; top:45.8%; width:22%; min-height:17.5%; padding:1.2% 1.2% 1% 2.9%; background:#00002e; color:#d9d7de; font-family:Arial,Helvetica,sans-serif; font-size:clamp(13px,1.16vw,17px); font-weight:400; line-height:1.35; }
    .desktop-legal-menu h3 { margin:0 0 8%; color:#d9d7de; font:inherit; font-size:clamp(15px,1.35vw,20px); font-weight:400; }
    .desktop-legal-menu ul { margin:0; padding-left:1.25em; list-style:disc; }
    .desktop-legal-menu li { margin:0 0 5.5%; padding-left:.35em; color:#d9d7de; }
    .desktop-legal-menu a,.desktop-legal-menu a:visited { display:inline-block; padding:1px 3px; border-radius:4px; color:#d9d7de; font:inherit; line-height:inherit; text-decoration:none; }
    .desktop-legal-menu a:hover { background:rgba(247,190,37,.09); box-shadow:0 0 22px rgba(247,190,37,.28); color:#d9d7de; text-decoration:none; }
    .desktop-legal-menu a:focus-visible { outline:3px solid #f7be25; outline-offset:3px; background:rgba(247,190,37,.12); color:#d9d7de; text-decoration:none; }
    .scroll-target { position: absolute; left: 0; width: 1px; height: 1px; scroll-margin-top: 3vh; }

    @media print {
      @page { size: A4 landscape; margin: 0; }
      body, main { width: 100%; margin: 0; box-shadow: none; }
      .page { break-after: page; page-break-after: always; }
      .page:last-child { break-after: auto; page-break-after: auto; }
    }

    .m-header,.mobile-main{display:none}
    @media(min-width:0px){
      html,body{width:100%;max-width:100%;overflow-x:hidden}body{padding:74px 0 0!important;background:#030036!important}.desktop-main{display:none!important}.mobile-main{display:block;width:100%;max-width:none;margin:0;overflow:hidden;background:radial-gradient(circle at 8% 9%,rgba(21,114,177,.18),transparent 18%),radial-gradient(circle at 91% 25%,rgba(192,92,54,.12),transparent 16%),#030036;color:#fff;font:16px/1.6 Inter,ui-sans-serif,system-ui,sans-serif}.m-header{position:fixed;z-index:200;top:0;left:0;width:100%;height:74px;display:flex;align-items:center;justify-content:center;padding:max(10px,env(safe-area-inset-top)) 16px 8px;background:rgba(3,0,54,.92);backdrop-filter:blur(12px);border-bottom:1px solid rgba(143,199,84,.18)}.m-header a{font-size:clamp(23px,5vw,32px);font-weight:850;letter-spacing:-1.5px;text-decoration:none;background:linear-gradient(90deg,#006c3b,#0aa45c 58%,#a3cc58);color:transparent;background-clip:text;-webkit-background-clip:text}.mobile-main section{padding:64px clamp(20px,5vw,48px);border-bottom:1px solid rgba(255,255,255,.13);scroll-margin-top:78px}.mobile-main h1{font-size:clamp(43px,9vw,76px);line-height:1.02;letter-spacing:-3px;font-weight:450;margin:22px 0 30px}.mobile-main h2{font-size:clamp(30px,6vw,49px);line-height:1.12;letter-spacing:-1.5px;font-weight:500;margin:0 0 28px}.mobile-main h3{font-size:22px;line-height:1.25;margin:14px 0}.mobile-main p{color:#d6d6e4;margin:0 0 22px}.eyebrow,.mobile-main article>span{font-size:12px!important;color:#f4bd2e!important;font-weight:800;letter-spacing:.07em}.m-hero{min-height:calc(100svh - 74px);display:flex;flex-direction:column;justify-content:center}.m-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}.m-actions a,.mobile-main article a{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:12px 19px;border:1.5px solid #f4bd2e;border-radius:999px;color:#f4bd2e;text-decoration:none;font-weight:800}.m-actions .primary{background:#f4bd2e;color:#08042e}.m-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.m-grid article{padding:22px;border:1px solid rgba(255,255,255,.16);border-radius:20px;background:rgba(255,255,255,.035)}.m-split{display:grid;grid-template-columns:1fr 1.2fr;gap:24px}.stat-card{background:#365f64;border-radius:26px;padding:28px}.stat-card strong{display:block;font-size:54px;font-weight:450;margin-top:28px}.stat-card small{display:block;color:#fff}.mobile-main blockquote{border-left:3px solid #f4bd2e;padding:8px 18px;margin:28px 0;color:#eee}.steps b{font-size:38px;color:#f4bd2e}.timeline{list-style:none;padding:0;margin:0;display:grid;gap:12px}.timeline li{display:grid;gap:4px;padding:18px 20px;border-left:3px solid #f4bd2e;background:rgba(255,255,255,.04)}.timeline span{color:#cfcfde}.numbers{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:34px}.numbers div{text-align:center;padding:18px 8px;border:1px solid rgba(255,255,255,.15);border-radius:18px}.numbers strong{display:block;font-size:35px}.numbers span{font-size:13px;color:#d0d0dd}.m-cta{text-align:center}.m-cta .m-actions{justify-content:center}.mobile-main footer{padding:44px 22px 70px;text-align:center;background:#010025}.mobile-main footer strong{font-size:24px}.mobile-main footer a{color:#f4bd2e}.intro{max-width:700px}.mobile-main article{min-width:0}
    }
    @media(max-width:620px){.m-grid,.m-split{grid-template-columns:1fr}.numbers{grid-template-columns:1fr}.mobile-main section{padding-top:52px;padding-bottom:52px}.mobile-main h1{letter-spacing:-2px}.m-actions{flex-direction:column;align-items:stretch}.m-actions a{width:100%}}

    @media(min-width:0px){
      .gap-principles{display:grid;gap:6px}
      .gap-principles>span{display:block}
    }

    @media(min-width:0px){
      .m-header{
        justify-content:flex-start;
        padding-left:clamp(20px,5vw,48px);
      }
      .m-header a{
        background:linear-gradient(90deg,#ffe9a6 0%,#f7cf62 52%,#eeb62f 100%);
        background-clip:text;
        -webkit-background-clip:text;
      }
      .mobile-main h2.subheading{margin-top:36px}
      #m-pathways .m-grid article:first-child{grid-column:1/-1}
      #m-pathways .m-grid article:nth-child(n+2){background:rgba(247,190,37,.055);border-color:rgba(247,190,37,.28)}
      #m-pathways .m-grid article:nth-child(n+2) a{background:#fff0c2;border-color:#fff0c2;color:#08042e}
      .mobile-main .gap-quote{display:flex;align-items:center;min-height:160px}
      #m-how>h2{margin-bottom:12px}
      .mobile-main>section{padding-top:56px;padding-bottom:56px}
      .journey-section>p{max-width:760px}
      .journey-flow{list-style:none;margin:38px 0 0;padding:0;display:grid}
      .journey-flow li{position:relative;display:grid;grid-template-columns:110px 36px minmax(0,1fr);align-items:start;gap:0;padding:0 0 16px}
      .journey-flow li:not(:last-child)::after{content:"";position:absolute;z-index:0;left:127px;top:32px;bottom:-1px;width:2px;background:linear-gradient(#f4bd2e,rgba(244,189,46,.2))}
      .journey-time{padding:8px 12px 0 0;color:#fff;font-size:13px;font-weight:750;line-height:1.25;text-align:right}
      .journey-flow li>i{position:relative;z-index:1;display:grid;place-items:center;width:34px;height:34px;border:2px solid #f4bd2e;border-radius:50%;background:#030036;color:#f4bd2e;font-style:normal;font-size:13px;font-weight:850}
      .journey-flow li>div{margin-left:16px;padding:20px 22px;border:1px solid rgba(255,255,255,.15);border-radius:18px;background:linear-gradient(115deg,rgba(255,255,255,.06),rgba(247,190,37,.035))}
      .journey-flow b{display:block;font-size:21px;line-height:1.2}
      .journey-flow small{display:block;margin:7px 0 10px;color:#f4bd2e;font-size:12px;font-weight:800;letter-spacing:.035em;text-transform:uppercase}
      .journey-flow p{margin:0}
      .value-section .m-grid article{position:relative;overflow:hidden;padding:27px 26px;background:linear-gradient(145deg,rgba(255,255,255,.06),rgba(247,190,37,.025))}
      .value-section .m-grid article:nth-child(3){grid-column:1/-1}
      .value-section .value-number{position:absolute;right:18px;top:4px;color:#f4bd2e!important;font-size:54px!important;font-weight:850;letter-spacing:-.05em!important;opacity:.13}
      .value-section h3{position:relative;margin:7px 0 20px;padding-bottom:15px;border-bottom:1px solid rgba(247,190,37,.3)}
      .value-section ul{display:grid;gap:11px;margin:0;padding:0;list-style:none;color:#d6d6e4}
      .value-section li{position:relative;padding-left:19px}
      .value-section li::before{content:"";position:absolute;left:0;top:.67em;width:7px;height:7px;border-radius:50%;background:#f4bd2e}
      .ecosystem-intro{max-width:830px}
      .ecosystem-engine{display:grid;grid-template-columns:1fr auto auto auto 1fr;align-items:center;gap:14px;margin:34px 0 18px;padding:18px 22px;border:1px solid rgba(247,190,37,.34);border-radius:18px;background:linear-gradient(90deg,rgba(255,255,255,.035),rgba(247,190,37,.09),rgba(255,255,255,.035));text-align:center}
      .ecosystem-engine span{color:#d6d6e4;font-size:13px;font-weight:750;text-transform:uppercase;letter-spacing:.04em}
      .ecosystem-engine i{color:#f4bd2e;font-style:normal;font-size:24px}
      .ecosystem-engine strong{display:grid;place-items:center;width:70px;height:70px;border-radius:50%;background:#f4bd2e;color:#08042e;font-size:19px;box-shadow:0 0 0 8px rgba(247,190,37,.1)}
      .ecosystem-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
      .ecosystem-grid article{position:relative;min-height:235px;padding:25px;border:1px solid rgba(255,255,255,.15);border-radius:20px;background:linear-gradient(145deg,rgba(255,255,255,.065),rgba(247,190,37,.025));overflow:hidden}
      .ecosystem-grid article::after{content:"";position:absolute;right:-30px;bottom:-45px;width:110px;height:110px;border:1px solid rgba(247,190,37,.18);border-radius:50%}
      .ecosystem-grid article>span{display:block;margin-bottom:14px;color:#f4bd2e;font-size:11px;font-weight:850;letter-spacing:.07em}
      .ecosystem-grid h3{position:relative;margin:0 0 15px;max-width:340px}
      .ecosystem-grid p{position:relative;margin:0;max-width:420px}
      .ecosystem-result{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch;gap:0;margin:32px 0 0!important;padding:0;border:1px solid rgba(247,190,37,.34);border-radius:18px;background:linear-gradient(105deg,rgba(255,255,255,.055),rgba(247,190,37,.045));color:#fff!important;overflow:hidden}
      .ecosystem-result>*{position:relative;display:flex;align-items:center;justify-content:center;min-height:116px;padding:42px 22px 20px;text-align:center;font-size:14px}
      .ecosystem-result>*+*{border-left:1px solid rgba(247,190,37,.24)}
      .ecosystem-result>*::before{position:absolute;top:14px;left:50%;transform:translateX(-50%);display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:#f4bd2e;color:#08042e;font-size:10px;font-weight:900}
      .ecosystem-result b::before{content:"01"}.ecosystem-result span::before{content:"02"}.ecosystem-result strong::before{content:"03"}
      .ecosystem-result strong{color:#fff0c2}
      .trusted-partners{background:linear-gradient(140deg,rgba(255,255,255,.025),rgba(247,190,37,.035))}
      .trusted-partners-copy{max-width:780px;margin:0 auto;text-align:center}
      .trusted-partners-copy h2{margin:9px 0 18px}
      .trusted-partners-copy p{margin:0 auto;max-width:700px}
      .partner-logos{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;max-width:820px;margin:38px auto 0}
      .partner-card{display:block;padding:14px 14px 17px;border:1px solid rgba(247,190,37,.24);border-radius:20px;background:rgba(255,255,255,.045);text-align:center;text-decoration:none;transition:transform .2s ease,border-color .2s ease,background .2s ease}.partner-card:hover,.partner-card:focus-visible{transform:translateY(-3px);border-color:rgba(247,190,37,.72);background:rgba(247,190,37,.07);outline:none}
      .partner-logo-shell{display:grid;place-items:center;height:150px;border-radius:13px;background:#fff;overflow:hidden}
      .partner-logo-shell img{display:block;width:auto;height:auto;max-width:90%;max-height:90%;object-fit:contain;object-position:center}
      .partner-card>span{display:block;margin-top:13px;color:#fff!important;font-size:13px!important;font-weight:750;letter-spacing:.01em;text-transform:none}
      .partnership-section>.m-grid{gap:16px}
      .partnership-section>.m-grid article{position:relative;overflow:hidden;padding:31px 27px 27px;border-color:rgba(247,190,37,.22);background:linear-gradient(145deg,rgba(255,255,255,.06),rgba(247,190,37,.035))}
      .partnership-section>.m-grid article::before{position:absolute;right:19px;top:8px;color:#f4bd2e;font-size:48px;font-weight:850;opacity:.14}
      .partnership-section>.m-grid article:nth-child(1)::before{content:"01"}.partnership-section>.m-grid article:nth-child(2)::before{content:"02"}.partnership-section>.m-grid article:nth-child(3)::before{content:"03"}
      .partnership-section>.m-grid article:nth-child(3){grid-column:1/-1}
      .partnership-section>.m-grid h3{position:relative;margin-top:5px;padding-bottom:15px;border-bottom:1px solid rgba(247,190,37,.28)}
      .partnership-section>.m-grid p{position:relative;margin-bottom:0}
      .ecosystem-section>p:last-child{margin-top:34px}
      .partnership-section>.m-actions{margin-top:40px}
      .partnership-section>blockquote{max-width:850px;margin:48px auto -8px;padding:22px 18px;border-left:0;border-top:1px solid rgba(247,190,37,.5);border-bottom:1px solid rgba(247,190,37,.5);text-align:center}
      .m-cta>p{margin:0 auto 38px;max-width:880px}
      .m-cta-grid{display:grid;gap:42px}
      .m-cta-grid article p{margin:0 auto 28px;max-width:800px}
      .m-cta-grid article h3{margin:0 0 22px}
      .m-footer ul{display:grid;justify-items:center;gap:8px;margin:0 0 30px;padding:0;list-style:none}
      .m-footer li{margin:0;padding:0}
      .m-footer>div{max-width:900px;margin:0 auto 34px}
      .transformation-flow{display:grid;gap:14px;margin-top:34px}
      .transformation-flow article{position:relative;display:grid;grid-template-columns:58px minmax(0,1fr);gap:20px;align-items:center;padding:24px 26px;border:1px solid rgba(255,255,255,.16);border-radius:20px;background:linear-gradient(105deg,rgba(255,255,255,.055),rgba(247,190,37,.035))}
      .transformation-flow article:not(:last-child)::after{content:"";position:absolute;left:53px;bottom:-15px;width:1px;height:15px;background:#f4bd2e}
      .flow-number{display:grid;place-items:center;width:52px;height:52px;border-radius:50%;background:#f4bd2e;color:#08042e;font-size:16px;letter-spacing:.04em}
      .flow-copy{min-width:0}
      .transformation-flow h3{display:flex;flex-wrap:wrap;align-items:center;gap:9px;margin:0 0 12px;font-size:clamp(18px,3vw,23px)}
      .transformation-flow h3 span{color:#d6d6e4;font-weight:600}
      .transformation-flow h3 i{color:#f4bd2e;font-style:normal;font-size:1.25em}
      .transformation-flow h3 strong{display:inline-flex;padding:5px 11px;border-radius:999px;background:#fff0c2;color:#08042e;font-size:.9em}
      .transformation-flow p{margin:0;max-width:720px}
      .m-hero{position:relative;padding-bottom:108px}
      .scroll-cue{position:absolute;left:clamp(20px,5vw,48px);bottom:25px;display:inline-flex;align-items:center;gap:11px;color:#d6d6e4;text-decoration:none;font-size:12px;font-weight:750;letter-spacing:.08em;text-transform:uppercase;transition:opacity .3s ease,transform .3s ease}
      .scroll-cue i{position:relative;width:22px;height:32px;border:1px solid rgba(255,255,255,.42);border-radius:999px}
      .scroll-cue i::after{content:"";position:absolute;left:50%;top:7px;width:4px;height:4px;border-right:2px solid #f4bd2e;border-bottom:2px solid #f4bd2e;transform:translateX(-50%) rotate(45deg);animation:scroll-cue 1.7s ease-in-out infinite}
      .scroll-cue.is-hidden{opacity:0;transform:translateY(8px);pointer-events:none}
      html.animations-ready .mobile-main>section:not(.m-hero),html.animations-ready .mobile-main>footer{opacity:0;transform:translateY(22px);transition:opacity .65s cubic-bezier(.22,1,.36,1),transform .72s cubic-bezier(.22,1,.36,1)}
      html.animations-ready .mobile-main>section.is-visible,html.animations-ready .mobile-main>footer.is-visible{opacity:1;transform:none}
    }
    @keyframes scroll-cue{0%,100%{transform:translate(-50%,0) rotate(45deg);opacity:.45}50%{transform:translate(-50%,9px) rotate(45deg);opacity:1}}
    @media(max-width:620px){#m-pathways .m-grid article:first-child{grid-column:auto}.transformation-flow article{grid-template-columns:44px minmax(0,1fr);gap:14px;padding:21px 18px}.flow-number{width:42px;height:42px;font-size:13px}.transformation-flow article:not(:last-child)::after{left:38px}.transformation-flow h3{align-items:flex-start;gap:7px}.transformation-flow h3 strong{border-radius:10px}.journey-flow li{grid-template-columns:72px 30px minmax(0,1fr)}.journey-flow li:not(:last-child)::after{left:86px}.journey-time{padding-right:9px;font-size:11px}.journey-flow li>i{width:30px;height:30px}.journey-flow li>div{margin-left:10px;padding:17px 15px}.journey-flow b{font-size:18px}.value-section .m-grid article:nth-child(3){grid-column:auto}.ecosystem-engine{grid-template-columns:1fr auto;gap:10px;text-align:left}.ecosystem-engine i{display:none}.ecosystem-engine strong{grid-column:1/-1;grid-row:1;width:62px;height:62px;margin:0 auto 8px}.ecosystem-engine span:last-child{text-align:right}.ecosystem-grid{grid-template-columns:1fr}.ecosystem-grid article{min-height:0}.ecosystem-result{grid-template-columns:1fr}.ecosystem-result>*{min-height:90px;padding:42px 18px 16px}.ecosystem-result>*+*{border-left:0;border-top:1px solid rgba(247,190,37,.24)}.partnership-section>.m-grid article:nth-child(3){grid-column:auto}.partner-logos{grid-template-columns:1fr}.partner-logo-shell{height:140px}}
    @media(prefers-reduced-motion:reduce){.scroll-cue i::after{animation:none}html.animations-ready .mobile-main>section:not(.m-hero),html.animations-ready .mobile-main>footer{opacity:1;transform:none;transition:none}}
@media (min-width: 0px) {
  .mobile-main blockquote.gap-quote {
    display: block;
    min-height: 0;
    margin-top: 30px;
    padding: 20px 22px;
    line-height: 1.6;
  }
}

.launch-announcement {
  padding: clamp(54px, 7vw, 84px) clamp(38px, 7vw, 78px);
  border-top: 1px solid rgba(247, 190, 37, .22);
  border-bottom: 1px solid rgba(247, 190, 37, .22);
  background:
    radial-gradient(circle at 88% 18%, rgba(75, 145, 194, .2), transparent 31%),
    linear-gradient(135deg, #08043d 0%, #10084a 58%, #07183c 100%);
  color: #fff;
}
.launch-announcement__inner {
  display: grid;
  grid-template-columns: minmax(0, .92fr) minmax(320px, 1fr);
  align-items: center;
  gap: clamp(38px, 6vw, 72px);
  max-width: 960px;
  margin: 0 auto;
}
.launch-announcement__copy { min-width: 0; }
.launch-announcement__kicker {
  display: block;
  margin-bottom: 20px;
  color: #f4bd2e;
  font-size: 12px;
  font-weight: 850;
  line-height: 1.4;
  letter-spacing: .12em;
}
.launch-announcement h2 {
  margin: 0 0 24px;
  max-width: 520px;
  color: #fff;
  font-size: clamp(38px, 4.7vw, 58px);
  font-weight: 500;
  line-height: 1.04;
  letter-spacing: -.045em;
}
.launch-announcement p {
  margin: 0;
  max-width: 570px;
  color: #d9d9e7;
  font-size: 17px;
  line-height: 1.65;
}
.launch-announcement__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 30px;
}
.launch-announcement__actions a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 50px;
  padding: 12px 22px;
  border: 1.5px solid #f4bd2e;
  border-radius: 999px;
  color: #f4bd2e;
  font-weight: 800;
  line-height: 1.2;
  text-decoration: none;
  transition: transform .2s ease, background .2s ease, color .2s ease;
}
.launch-announcement__actions a:hover,
.launch-announcement__actions a:focus-visible {
  transform: translateY(-2px);
  outline: none;
  background: rgba(244, 189, 46, .1);
}
.launch-announcement__actions .launch-announcement__primary {
  background: #f4bd2e;
  color: #08042e;
}
.launch-announcement__actions .launch-announcement__primary:hover,
.launch-announcement__actions .launch-announcement__primary:focus-visible {
  background: #ffd45c;
}
.launch-announcement__visual {
  position: relative;
  display: block;
  overflow: hidden;
  border: 1px solid rgba(247, 190, 37, .48);
  border-radius: 28px;
  background: #fff;
  box-shadow: 0 24px 70px rgba(0, 0, 0, .36), 0 0 0 8px rgba(247, 190, 37, .05);
  transition: transform .3s cubic-bezier(.22, 1, .36, 1), box-shadow .3s ease;
}
.launch-announcement__visual::after {
  content: "View larger ↗";
  position: absolute;
  top: 14px;
  right: 14px;
  padding: 8px 12px;
  border: 1px solid rgba(255, 255, 255, .38);
  border-radius: 999px;
  background: rgba(3, 0, 54, .82);
  color: #fff;
  font-size: 12px;
  font-weight: 800;
  line-height: 1;
  letter-spacing: .02em;
  box-shadow: 0 7px 20px rgba(0, 0, 0, .25);
  backdrop-filter: blur(8px);
}
.launch-announcement__visual:hover,
.launch-announcement__visual:focus-visible {
  transform: translateY(-5px);
  outline: 3px solid #f4bd2e;
  outline-offset: 5px;
  box-shadow: 0 30px 80px rgba(0, 0, 0, .43), 0 0 0 8px rgba(247, 190, 37, .08);
}
.launch-announcement__visual img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 1;
  object-fit: cover;
}
.announcement-dialog {
  width: min(94vw, 980px);
  max-width: none;
  max-height: 94vh;
  margin: auto;
  padding: 0;
  overflow: visible;
  border: 1px solid rgba(247, 190, 37, .72);
  border-radius: 24px;
  background: #08042e;
  box-shadow: 0 35px 100px rgba(0, 0, 0, .7);
}
.announcement-dialog::backdrop {
  background: rgba(1, 0, 35, .88);
  backdrop-filter: blur(8px);
}
.announcement-dialog img {
  display: block;
  width: auto;
  max-width: 100%;
  height: auto;
  max-height: 92vh;
  margin: auto;
  border-radius: 23px;
  object-fit: contain;
}
.announcement-dialog__close {
  position: absolute;
  z-index: 2;
  top: 12px;
  right: 12px;
  display: grid;
  place-items: center;
  width: 44px;
  height: 44px;
  padding: 0 0 4px;
  border: 1px solid rgba(255, 255, 255, .42);
  border-radius: 50%;
  background: rgba(3, 0, 54, .88);
  color: #fff;
  font: 400 30px/1 Arial, sans-serif;
  cursor: pointer;
  box-shadow: 0 8px 24px rgba(0, 0, 0, .3);
}
.announcement-dialog__close:hover,
.announcement-dialog__close:focus-visible {
  outline: 3px solid #f4bd2e;
  outline-offset: 2px;
  background: #030036;
}

@media (max-width: 900px) {
  .launch-announcement {
    padding: 56px clamp(20px, 5vw, 48px);
  }
  .launch-announcement__inner {
    grid-template-columns: minmax(0, .95fr) minmax(260px, 1fr);
    gap: clamp(26px, 5vw, 44px);
  }
  .launch-announcement h2 {
    margin-bottom: 20px;
    font-size: clamp(32px, 5.4vw, 44px);
    letter-spacing: -.035em;
  }
  .launch-announcement p {
    margin: 0;
    font-size: 16px;
  }
  .launch-announcement__visual { border-radius: 22px; }
}

@media (max-width: 620px) {
  .launch-announcement__inner { grid-template-columns: 1fr; }
  .launch-announcement__copy { order: 1; }
  .launch-announcement__visual { order: 2; }
  .launch-announcement__actions { flex-direction: column; }
  .launch-announcement__actions a { width: 100%; }
  .launch-announcement__visual::after { top: 10px; right: 10px; }
  .announcement-dialog { width: calc(100vw - 24px); border-radius: 18px; }
  .announcement-dialog img { border-radius: 17px; }
}

@media (prefers-reduced-motion: reduce) {
  .launch-announcement__actions a,
  .launch-announcement__visual { transition: none; }
}
