/* Last-loaded visual corrections for the workshop landing. */
html body .padawan-story .padawan-story__faq {
    position: relative;
    isolation: isolate;
    min-height: auto;
    padding-top: clamp(4.5rem, 8vw, 7rem);
    padding-bottom: 2.75rem;
    overflow: hidden;
    background: transparent;
}

.padawan-mobile-break { display: none; }
.padawan-mobile-title-break { display: none; }

html body .padawan-story .padawan-story__faq::before {
    content: "";
    position: absolute;
    z-index: -1;
    inset: 0;
    pointer-events: none;
    background: url("../images/lp-footer.webp") center calc(100% - 10svh) / 80% auto no-repeat;
    -webkit-mask-image: radial-gradient(ellipse 58% 76% at center 58%, #000 0 36%, rgba(0, 0, 0, .76) 52%, rgba(0, 0, 0, .22) 66%, transparent 76%);
    mask-image: radial-gradient(ellipse 58% 76% at center 58%, #000 0 36%, rgba(0, 0, 0, .76) 52%, rgba(0, 0, 0, .22) 66%, transparent 76%);
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-size: 100% 100%;
    mask-size: 100% 100%;
}

/* Participant panel: content-led document, never a fixed-height landing scene. */
html body .padawan-panel-page {
    box-sizing: border-box;
    min-height: 100svh;
    padding: clamp(2rem, 6vw, 5rem) var(--padawan-page-gutter);
    overflow: visible;
    color: var(--padawan-starlight);
    background:
        radial-gradient(circle at 78% 8%, rgba(0, 240, 255, .13), transparent 28%),
        #02050b;
    font: 400 1rem/1.6 Lato, sans-serif;
}

html body .padawan-panel-page .padawan-participant-panel {
    box-sizing: border-box;
    width: min(100%, 1120px);
    margin: 0 auto;
    padding: clamp(1.5rem, 5vw, 4rem);
}

html body .padawan-panel-page .padawan-panel-whatsapp {
    max-width: 720px;
    margin: 2rem 0;
    padding: 1.35rem 1.5rem 1.5rem;
    border: 1px solid rgba(37, 211, 102, .45);
    border-radius: 8px;
    background: linear-gradient(135deg, rgba(37, 211, 102, .16), rgba(2, 8, 19, .22));
    box-shadow: 0 0 28px rgba(37, 211, 102, .12);
}

html body .padawan-panel-page .padawan-panel-whatsapp__step {
    margin: 0;
    color: #71ef9a;
    font: 700 .74rem/1 Rajdhani, sans-serif;
    letter-spacing: .16em;
    text-transform: uppercase;
}

html body .padawan-panel-page .padawan-panel-whatsapp h3 {
    margin: .55rem 0 0;
    color: var(--padawan-starlight);
    font: 700 clamp(1.55rem, 3vw, 2.2rem)/.95 Rajdhani, sans-serif;
    letter-spacing: -.02em;
    text-transform: uppercase;
}

html body .padawan-panel-page .padawan-panel-whatsapp > p:not(.padawan-panel-whatsapp__step) {
    margin: .65rem 0 1.15rem;
    color: rgba(248, 250, 252, .8);
}

html body .padawan-panel-page .padawan-panel-whatsapp__button {
    display: inline-flex;
    min-height: 3rem;
    padding: .85rem 1.1rem;
    align-items: center;
    justify-content: center;
    border-radius: 6px;
    background: #25d366;
    box-shadow: 0 0 24px rgba(37, 211, 102, .4);
    color: #062511;
    font: 900 .95rem/1 Rajdhani, sans-serif;
    letter-spacing: .1em;
    text-align: center;
    text-decoration: none;
    text-transform: uppercase;
}

html body .padawan-panel-page .padawan-panel-whatsapp__button:hover,
html body .padawan-panel-page .padawan-panel-whatsapp__button:focus-visible {
    background: #4be480;
    box-shadow: 0 0 34px rgba(37, 211, 102, .65);
}

@media (max-width: 760px) {
    html body .padawan-panel-page { padding: 1.25rem; }
    html body .padawan-panel-page .padawan-participant-panel { padding: 1.25rem; }
    html body .padawan-panel-page .padawan-panel-whatsapp__button { display: flex; width: 100%; }
}

/* Mobile reads as a left-anchored guide, not a centered poster. */
@media (max-width: 840px) {
    html body .padawan-capture,
    html body .padawan-capture__copy,
    html body .padawan-capture__form-shell,
    html body .padawan-story,
    html body .padawan-story__pain,
    html body .padawan-story__authority-copy,
    html body .padawan-story__faq,
    html body .padawan-story__faq-heading,
    html body .padawan-site-footer--closing {
        text-align: left;
    }

    html body .padawan-story__pain {
        align-items: flex-start;
    }

    html body .padawan-story__pain h2,
    html body .padawan-story__pain h4,
    html body .padawan-story__pain p,
    html body .padawan-story__faq-heading h2,
    html body .padawan-story__faq-heading h4 {
        margin-right: 0;
        margin-left: 0;
    }

    html body .padawan-story .padawan-story__faq {
        align-items: stretch;
        justify-content: flex-start;
        background: transparent;
    }

    html body .padawan-story .padawan-story__faq::before {
        display: none;
    }

    html body .padawan-story .padawan-story__faq-grid {
        width: 100%;
        margin-top: 2.25rem;
    }

    html body .padawan-story .padawan-site-footer--closing {
        align-items: flex-start;
        margin-top: 4rem;
    }

    html body .padawan-site-footer--closing > p:first-child,
    html body .padawan-site-footer--closing nav,
    html body .padawan-site-footer--closing .padawan-site-footer__disclaimer {
        text-align: left;
    }

    html body .padawan-site-footer--closing nav {
        justify-content: flex-start;
    }

    .padawan-mobile-break { display: inline; }
}

html body .padawan-story .padawan-site-footer--closing {
    width: min(100%, 860px);
    margin: 6rem auto 0;
    display: flex;
    align-items: center;
    flex-direction: column;
    text-align: center;
}

html body .padawan-story .padawan-story__faq-grid {
    margin-top: -3.25rem;
}

html body .padawan-site-footer--closing > p:first-child {
    color: rgba(248, 250, 252, .58);
    font: 400 .78rem/1.5 Lato, sans-serif;
    letter-spacing: 0;
    text-transform: none;
    text-align: center;
}

html body .padawan-site-footer--closing nav {
    margin: .75rem 0;
    font: 400 .78rem/1.5 Lato, sans-serif;
    letter-spacing: 0;
    text-transform: none;
    justify-content: center;
    text-align: center;
}

html body .padawan-site-footer--closing .padawan-site-footer__disclaimer {
    color: rgba(248, 250, 252, .36);
    font: 300 .72rem/1.5 Lato, sans-serif;
    text-align: center;
}

/* Hero: full-viewport balance with the workshop artwork visible between both columns. */
@media (min-width: 841px) {
    html body .padawan-capture__hero {
        height: 100%;
        min-height: 0;
        padding-top: 0;
        align-items: center;
    }

    html body .padawan-capture__form-shell {
        margin-top: 0;
        align-self: center;
    }

    html body .padawan-capture::before {
        background-image:
            linear-gradient(90deg, rgba(2, 5, 11, .72) 0%, rgba(2, 5, 11, .12) 49%, rgba(2, 5, 11, .72) 100%),
            url("../images/portal-workshop-v1.png");
        background-position: center, -13vw center;
        background-repeat: no-repeat;
        background-size: 100% 100%, 80% auto;
    }
}

html body .padawan-capture__form-assurance {
    display: grid;
    gap: .18rem;
}

html body .padawan-capture__form-assurance strong {
    color: var(--padawan-force);
    font: 700 1rem/1.3 Lato, sans-serif;
}

html body .padawan-capture__form-assurance span {
    color: var(--padawan-nebula);
    font-size: .9rem;
}

@media (min-width: 841px) {
    html body .padawan-capture__hero {
        position: relative;
    }

    html body .padawan-capture__scroll-cue {
        position: absolute;
        bottom: 1.5rem;
        left: 50%;
        display: flex;
        align-items: center;
        flex-direction: column;
        gap: .45rem;
        color: var(--padawan-force);
        font: 700 .62rem/1 Rajdhani, sans-serif;
        letter-spacing: .24em;
        text-decoration: none;
        text-transform: uppercase;
        transform: translateX(-50%);
        filter: drop-shadow(0 0 8px rgba(0, 240, 255, .5));
    }

    html body .padawan-capture__mouse {
        display: flex;
        width: 1.25rem;
        height: 2.15rem;
        padding: .22rem;
        border: 2px solid var(--padawan-force);
        border-radius: 999px;
        justify-content: center;
        box-shadow: 0 0 15px rgba(0, 240, 255, .4);
    }

    html body .padawan-capture__mouse i {
        width: .22rem;
        height: .62rem;
        border-radius: 999px;
        background: var(--padawan-force);
        box-shadow: 0 0 8px rgba(0, 240, 255, .85);
        animation: padawan-scroll-pulse 1.2s ease-in-out infinite;
    }
}

@keyframes padawan-scroll-pulse {
    0%, 100% { transform: translateY(0); }
    50% { transform: translateY(.6rem); }
}

@media (max-width: 840px), (prefers-reduced-motion: reduce) {
    html body .padawan-capture__scroll-cue { display: none; }
}

/* Scroll scenes: focus into the reading plane, dissolve out of it. */
@media (prefers-reduced-motion: no-preference) {
    html body .padawan-scroll-scene {
        opacity: .14;
        filter: blur(11px);
        transform: translateY(2rem);
        transition: opacity .7s cubic-bezier(.16, 1, .3, 1), filter .7s cubic-bezier(.16, 1, .3, 1), transform .7s cubic-bezier(.16, 1, .3, 1);
    }

    html body .padawan-scroll-scene.is-visible {
        opacity: 1;
        filter: blur(0);
        transform: translateY(0);
    }

    html body .padawan-story__authority .padawan-authority-photo-motion,
    html body .padawan-story__authority .padawan-authority-copy-motion {
        transition: opacity .85s cubic-bezier(.16, 1, .3, 1), filter .85s cubic-bezier(.16, 1, .3, 1), transform .85s cubic-bezier(.16, 1, .3, 1);
    }

    html body .padawan-story__authority:not(.is-visible) .padawan-authority-photo-motion {
        opacity: 0;
        filter: blur(10px);
        transform: translateX(-3.5rem);
    }

    html body .padawan-story__authority:not(.is-visible) .padawan-authority-copy-motion {
        opacity: 0;
        filter: blur(10px);
        transform: translateX(3.5rem);
    }

    html body .padawan-story__authority.is-visible .padawan-authority-photo-motion,
    html body .padawan-story__authority.is-visible .padawan-authority-copy-motion {
        opacity: 1;
        filter: blur(0);
        transform: translateX(0);
    }
}

/* Each narrative chapter owns a full viewport while remaining content-safe. */
html body .padawan-story .padawan-story__pain,
html body .padawan-story .padawan-story__authority,
html body .padawan-story .padawan-story__faq {
    min-height: 100svh;
}

/* Final mobile precedence over the desktop FAQ rhythm. */
@media (max-width: 840px) {
    html body .padawan-capture::before {
        background-position: center, right top;
        background-size: 100% 100%, 100vw auto;
    }

    html body .padawan-capture__form-shell h2 {
        line-height: 1.04;
    }

    html body .padawan-story .padawan-story__faq-grid {
        width: 100%;
        margin-top: 2.25rem;
    }

    html body .padawan-story .padawan-site-footer--closing,
    html body .padawan-site-footer--closing > p:first-child,
    html body .padawan-site-footer--closing nav,
    html body .padawan-site-footer--closing .padawan-site-footer__disclaimer {
        align-items: center;
        justify-content: center;
        text-align: center;
    }

    html body .padawan-story .padawan-site-footer--closing {
        box-sizing: border-box;
        width: 100%;
        margin-right: 0;
        margin-left: 0;
        padding-right: 0;
        padding-left: 0;
    }

    html body .padawan-site-footer--closing > p:first-child,
    html body .padawan-site-footer--closing nav,
    html body .padawan-site-footer--closing .padawan-site-footer__disclaimer {
        width: 100%;
    }

    .padawan-mobile-title-break { display: inline; }
}
