/* oct banner: a fluid stage per Figma frame (scripts/stage-hero.mjs). Layers sit where Figma puts them, in % of
   the stage; the stage keeps the frame's aspect ratio (NAV mock excluded) and is the cqw container. */
#oct-banner { background-color: #ffffff; }
#oct-banner .oct-stage { position: relative; width: 100%; margin: 0 auto; container-type: inline-size; overflow: hidden; background-position: center; background-size: 100% 100%; background-repeat: no-repeat; }
#oct-banner .oct-stage picture img { position: absolute; display: block; height: auto; max-width: none; }
#oct-banner .oct-cta { position: absolute; transform: translate(-50%, -50%); white-space: nowrap; line-height: 1; text-decoration: none; border: none; }
#oct-banner .oct-cta:hover, #oct-banner .oct-cta:focus-visible { filter: brightness(1.15); }
#oct-banner.oct-anim-paused .oct-anim { animation-play-state: paused; }
#oct-banner .oct-stage .oct-cta-d { left: 63.768%; top: 64.969%; padding: max(5px, 0.652cqw) max(18px, 2.174cqw); border-radius: max(30px, 3.623cqw); background-color: #ffffff; color: #000000; font-size: max(12px, 1.449cqw); }  /* Figma CTA 0:4952: 176×45, Avenir:Black 20px */
#oct-banner .oct-stage .oct-cta-m { left: 50.128%; top: 81.831%; padding: max(6px, 2.308cqw) max(21px, 7.692cqw); border-radius: max(35px, 12.821cqw); background-color: #000000; color: #ffffff; font-size: max(14px, 5.128cqw); }  /* Figma CTA 14:6068: 175×45, Avenir:Black 20px */

#oct-banner .oct-stage { max-width: 1380px; }
#oct-banner .oct-stage .oct-art { position: relative; width: 100%; height: auto; }
@media (max-width: 767px) { #oct-banner .oct-stage { max-width: 585px; } }
