/* Shared by the published intro and its native Gutenberg scene canvas.
   Pixel values are the original 1920×1080 / 1080-wide authoring coordinates;
   the stage scales uniformly to the available viewport. */
.wygge-intro { width: 100%; max-width: none !important; margin: 0 !important; color: #e5eae6; background: #032425; }
.wygge-intro__fallback { min-height: 100svh; padding: 12vh 24px; text-align: center; display: flex; align-items: center; flex-direction: column; justify-content: center; }
.wygge-intro__fallback > img { width: 160px; height: auto; }
.wygge-intro__fallback h1 { color: #c8ff16; }
.wygge-intro__fallback a { color: #c8ff16; }
.wygge-intro__viewport { position: relative; width: 100%; height: 100vh; height: 100svh; overflow: hidden; background: #032425; }
.wygge-intro__stage-shell { position: absolute; inset: 0; display: flex; flex-direction: column; align-items: center; background: #032425; }
.wygge-intro__stage-fit { flex: 1; width: 100%; display: flex; align-items: center; justify-content: center; overflow: hidden; min-height: 0; }
.wygge-intro__stage-svg { transform: scale(var(--stage-scale)); transform-origin: center; flex-shrink: 0; box-shadow: none; display: block; max-width: none; }
.wygge-intro__stage { position: relative; width: var(--stage-width); height: var(--stage-height); overflow: hidden; background: #032425; color: #e5eae6; font-family: 'Instrument Sans', system-ui, sans-serif; text-align: left; }
.wygge-intro__stage *, .wygge-intro__stage *::before, .wygge-intro__stage *::after { box-sizing: border-box; }
.wygge-intro__stage button, .wygge-intro__stage input { font-family: inherit; }
.wygge-intro__stage button { cursor: pointer; }
.wygge-intro__stage button:disabled { cursor: wait; opacity: .7; }
.wygge-intro__stage a { color: #c8ff16; text-underline-offset: 3px; text-decoration-thickness: 1px; }
.wygge-intro__stage :is(button, input, a):focus-visible { outline: 3px solid #c8ff16; outline-offset: 6px; }
.wygge-intro__canvas { position: absolute; width: 1920px; height: 1080px; left: calc(50% - 960px); top: calc(50% - 540px); background: #032425; }
.wygge-intro__cinema { position: absolute; inset: 0; opacity: var(--opacity); visibility: var(--visibility); }
.wygge-intro__type-line, .wygge-intro__type-lines { position: absolute; opacity: var(--opacity); visibility: var(--visibility); }
.wygge-intro__type-line { left: 50%; transform: translate(-50%, -50%); white-space: nowrap; }
.wygge-intro__type-lines { left: 0; right: 0; }
.wygge-intro__type-row { height: var(--line-height); display: flex; justify-content: center; white-space: nowrap; }
.wygge-intro__type-box { display: inline-block; position: relative; }
.wygge-intro__type-ghost { visibility: hidden; }
.wygge-intro__type-ink { position: absolute; left: 0; top: 0; display: flex; align-items: center; height: 100%; }
.wygge-intro__cursor { display: inline-block; width: var(--cursor-width); height: var(--cursor-height); margin-left: 12px; background: var(--cursor-color, #fff); vertical-align: middle; flex: 0 0 auto; }
.wygge-intro__question { top: 260px; font: 600 50px/1.2 'Instrument Sans', system-ui, sans-serif; color: #fff; --cursor-width: 19px; --cursor-height: 46px; }
.wygge-intro__answer { position: absolute; left: 50%; top: calc(500px + var(--word-offset)); transform: translate(-50%, -50%) scale(var(--scale)); opacity: var(--opacity); white-space: nowrap; font: 600 52px/1.2 'Instrument Sans', system-ui, sans-serif; color: #e5eae6; letter-spacing: .01em; }
.wygge-intro__nevertheless { top: 400px; --line-height: 58px; font: 500 40px/1.45 'Instrument Sans', system-ui, sans-serif; color: #e5eae6; --cursor-width: 16px; --cursor-height: 38px; }
.wygge-intro__change { top: 700px; font: 700 72px/1.1 'Instrument Sans', system-ui, sans-serif; color: #fff; --cursor-width: 24px; --cursor-height: 66px; --cursor-color: #c8ff16; }
.wygge-intro__wordmark { position: absolute; left: 50%; top: 452px; width: 520px; transform: translate(-50%, -50%) translateY(var(--rise)); opacity: var(--opacity); visibility: var(--visibility); }
.wygge-intro__brand-image { width: 100%; max-width: none; height: auto; display: block; }
.wygge-intro__position { top: 648px; font: 700 52px/1.15 'Instrument Sans', system-ui, sans-serif; color: #fff; --cursor-width: 20px; --cursor-height: 48px; --cursor-color: #c8ff16; }
.wygge-intro__signet { position: absolute; left: 50%; top: 420px; width: 264px; transform: translate(-50%, -50%) scale(var(--scale)); opacity: var(--opacity); visibility: var(--visibility); display: flex; }
.wygge-intro__claim, .wygge-intro__launch, .wygge-intro__newsletter { position: absolute; left: 50%; transform: translate(-50%, 0) translateY(var(--rise)); opacity: var(--opacity); visibility: var(--visibility); }
.wygge-intro__claim { top: 552px; font: 700 52px/1.15 'Instrument Sans', system-ui, sans-serif; color: #c8ff16; letter-spacing: .01em; white-space: nowrap; }
.wygge-intro__launch { top: 672px; font: 500 26px/1.3 'Instrument Sans', system-ui, sans-serif; color: #fff; letter-spacing: .02em; white-space: nowrap; }
.wygge-intro__newsletter { top: 740px; width: 800px; pointer-events: var(--pointer-events); }
.wygge-intro__newsletter-content { display: flex; flex-direction: column; align-items: center; gap: 14px; }
.wygge-intro__form { display: flex; align-items: stretch; border: 2px solid #c8ff16; margin: 0; padding: 0; }
.wygge-intro__form input[type=email], .wygge-intro__email-editor { width: 420px; height: 68px; padding: 0 22px; border: 0; border-radius: 0; background: transparent; color: #fff; font: 400 22px/1.4 'Instrument Sans', system-ui, sans-serif; outline: none; box-shadow: none; }
.wygge-intro__form input[type=email], .wygge-intro__email-editor { box-sizing: content-box; }
.wygge-intro__form input::placeholder, .wygge-intro__email-editor { color: #e5eae6; opacity: 1; }
.wygge-intro__form button, .wygge-intro__submit-editor { height: 68px; padding: 0 34px; border: 0; border-radius: 0; background: #c8ff16; color: #032425; font: 500 22px/1.2 'Instrument Sans', system-ui, sans-serif; letter-spacing: .02em; white-space: nowrap; }
.wygge-intro__form input[type=email]:focus-visible { outline-offset: -5px; }
.wygge-intro__email-editor, .wygge-intro__submit-editor { display: flex; align-items: center; }
.wygge-intro__consent { font: 400 16px/1.5 'Instrument Sans', system-ui, sans-serif; color: #e5eae6; opacity: .9; text-align: center; white-space: normal; text-wrap: pretty; }
.wygge-intro__instagram { margin-top: 18px; font: 500 20px/1.2 'Instrument Sans', system-ui, sans-serif; letter-spacing: .02em; }
.wygge-intro__instagram a { text-decoration: none; }
.wygge-intro__footer { position: absolute; inset: 0; opacity: var(--opacity); visibility: var(--visibility); pointer-events: none; }
.wygge-intro__legal, .wygge-intro__replay { position: absolute; bottom: 28px; font: 500 15px/1 'Instrument Sans', system-ui, sans-serif; color: #e5eae6; letter-spacing: .04em; pointer-events: var(--pointer-events); }
.wygge-intro__legal { left: 50%; transform: translateX(-50%); opacity: .75; }
.wygge-intro__legal a { color: #e5eae6; text-decoration: none; }
.wygge-intro__replay { right: 48px; bottom: 24px; background: transparent; border: none; padding: 8px 0; }
.wygge-intro__corner { position: absolute; left: 28px; top: 28px; width: 88px; opacity: .85; z-index: 4; }
.wygge-intro__skip { position: absolute; right: 28px; bottom: 24px; z-index: 5; background: transparent; border: 0; padding: 2px 6px; font: 500 15px/1 'Instrument Sans', system-ui, sans-serif; color: #e5eae6; opacity: .55; letter-spacing: .04em; }
.wygge-intro__form-status { max-width: 680px; margin: 0; font: 400 17px/1.4 'Instrument Sans', system-ui, sans-serif; color: #e5eae6; text-align: center; }
.wygge-intro__form-status.is-error { color: #fff; }
.wygge-intro__honeypot, .wygge-intro .screen-reader-text { position: absolute !important; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }
.wygge-intro__stage.is-portrait .wygge-intro__canvas { inset: 0; width: 100%; height: 100%; }
.is-portrait .wygge-intro__question { top: calc(50% - 620px); --line-height: 104px; font-size: 84px; --cursor-width: 30px; --cursor-height: 78px; }
.is-portrait .wygge-intro__answer { top: calc(50% + 80px + var(--word-offset)); font-size: 84px; }
.is-portrait .wygge-intro__nevertheless { top: calc(50% - 420px); --line-height: 100px; font-size: 70px; line-height: 1.4; --cursor-width: 26px; --cursor-height: 64px; }
.is-portrait .wygge-intro__change { top: calc(50% + 240px); font-size: 104px; --cursor-width: 34px; --cursor-height: 96px; }
.is-portrait .wygge-intro__wordmark { top: calc(50% - 180px); width: 760px; }
.is-portrait .wygge-intro__position { top: calc(50% + 40px); --line-height: 112px; font-size: 90px; --cursor-width: 32px; --cursor-height: 84px; }
.is-portrait .wygge-intro__signet { top: calc(50% - 460px); width: 380px; }
.is-portrait .wygge-intro__claim { top: calc(50% - 200px); font-size: 76px; }
.is-portrait .wygge-intro__launch { top: calc(50% - 50px); font-size: 42px; }
.is-portrait .wygge-intro__newsletter { top: calc(50% + 90px); width: 880px; }
.is-portrait .wygge-intro__newsletter-content { align-items: stretch; gap: 24px; }
.is-portrait .wygge-intro__form { flex-direction: column; border-width: 3px; }
.is-portrait .wygge-intro__form input[type=email], .is-portrait .wygge-intro__email-editor { box-sizing: border-box; width: 100%; height: 116px; padding: 0 32px; font-size: 40px; }
.is-portrait .wygge-intro__form button, .is-portrait .wygge-intro__submit-editor { height: 116px; font-size: 40px; justify-content: center; }
.is-portrait .wygge-intro__consent { font-size: 30px; white-space: normal; text-wrap: pretty; }
.is-portrait .wygge-intro__instagram { margin-top: 24px; align-self: center; font-size: 38px; }
.is-portrait .wygge-intro__footer { inset: auto 0 64px; display: flex; justify-content: center; gap: 72px; }
.is-portrait .wygge-intro__legal, .is-portrait .wygge-intro__replay { position: static; transform: none; opacity: 1; padding: 0; font-size: 30px; }
.is-portrait .wygge-intro__corner { left: 56px; top: 56px; width: 150px; }
.is-portrait .wygge-intro__skip { right: 56px; bottom: 64px; font-size: 30px; }
.is-portrait .wygge-intro__form-status { max-width: none; font-size: 30px; }
@media (prefers-reduced-motion: reduce) { .wygge-intro__stage * { scroll-behavior: auto; } }
