/* jsp/student/studentApply.jsp 에서 분리한 페이지 전용 스타일 */
        body.theme-sian3:not(.is-form-open):not(.is-app-subroute) .s34-form-shell,
        body.theme-sian3:not(.is-form-open):not(.is-app-subroute) .s34-site-header,
        body.theme-sian4:not(.is-form-open) .s34-form-shell,
        body.theme-sian4:not(.is-form-open) .s34-site-header {
            visibility: hidden;
            pointer-events: none;
            position: fixed;
            inset: 0;
            z-index: -1;
        }

        body.theme-sian3.is-form-open #s3Landing,
        body.theme-sian3.is-form-open .s3-sticky-cta,
        body.theme-sian3.is-form-open .s3-geo,
        body.theme-sian3.is-form-open .s3-snap-progress,
        body.theme-sian4.is-form-open #s4Landing,
        body.theme-sian4.is-form-open .s4-header,
        body.theme-sian4.is-form-open .s4-rail {
            display: none !important;
        }

        /* Keep landing noise / glow alive on form — styled further in sian3-app.css */
        body.theme-sian3.is-form-open .s34-form-shell,
        body.theme-sian3.is-form-open .s34-site-header,
        body.theme-sian3.is-app-subroute .s34-site-header,
        body.theme-sian4.is-form-open .s34-form-shell,
        body.theme-sian4.is-form-open .s34-site-header {
            visibility: visible;
            pointer-events: auto;
        }

        body.theme-sian3.is-form-open .s34-form-shell {
            position: relative;
            z-index: 1;
        }

        body.theme-sian3.is-form-open .s34-site-header,
        body.theme-sian3.is-app-subroute .s34-site-header,
        body.theme-sian4.is-form-open .s34-site-header {
            position: fixed;
            inset: 0 0 auto 0;
            z-index: 3200;
            height: auto;
        }

        /* Non-sian3 fallback only — sian3 uses dark canvas from sian3-app.css */
        body.is-form-open:not(.theme-sian3) #splitLayout {
            display: block !important;
            position: relative;
            min-height: 100dvh;
            opacity: 1 !important;
            visibility: visible !important;
            background: #f6f5f4;
            padding: calc(64px + env(safe-area-inset-top, 0px)) 0 40px;
            overflow: auto;
        }

        body.is-form-open:not(.theme-sian3) #formStage {
            display: block !important;
            opacity: 1 !important;
            visibility: visible !important;
            position: relative;
            width: min(920px, calc(100% - 32px));
            margin: 0 auto;
        }

        /* ── EN hero: DAECHI EDU ↔ MATCH NOW (Syne; DAECHI/MATCH = red) ── */
        /* Pull wide Syne caps left so their optical edge matches the Korean lead */
        body.theme-sian3-en .s3-hero__headline {
            gap: 0.12em;
            letter-spacing: 0.02em;
            margin-left: clamp(-8px, -0.4vw, -3px);
        }

        /* headline + lead + buttons: nudge block slightly down */
        body.theme-sian3-en .s3-hero__stack {
            transform: translateY(clamp(10px, 1.6vh, 22px));
        }

        body.theme-sian3-en .s3-hero__lead {
            font-size: clamp(0.95rem, 1.75vw, 1.12rem);
        }

        /* a bit more air between Korean lead and CTAs */
        body.theme-sian3-en .s3-hero__actions {
            margin-top: clamp(32px, 5.2vh, 48px);
        }

        body.theme-sian3-en .s3-flip {
            min-width: 4.6em;
        }

        body.theme-sian3-en .s3-flip--suffix {
            min-width: 2.35em;
            margin-left: 0.14em;
        }

        body.theme-sian3-en .s3-flip__item {
            font-family: var(--s3-font-display);
            font-weight: 800;
            font-size: clamp(3.05rem, 11.2vw, 7.45rem);
            letter-spacing: 0.04em;
            text-transform: uppercase;
            color: #fff;
            transition: opacity 0.42s cubic-bezier(0.22, 1, 0.36, 1),
            transform 0.68s cubic-bezier(0.16, 1, 0.3, 1),
            filter 0.42s ease,
            color 0.35s ease,
            letter-spacing 0.68s cubic-bezier(0.16, 1, 0.3, 1),
            clip-path 0.68s cubic-bezier(0.16, 1, 0.3, 1);
        }

        body.theme-sian3-en .s3-flip__item.is-active {
            color: #fff;
        }

        body.theme-sian3-en .s3-flip__item[data-word="DAECHI"].is-active,
        body.theme-sian3-en .s3-flip__item[data-word="MATCH"].is-active {
            color: var(--s3-red, #C4151F);
        }

        /* MATCHING watermark — softer, slightly smaller (EN only; right align unchanged) */
        body.theme-sian3-en .s3-watermark {
            opacity: 0.02;
            font-size: clamp(2.3rem, 7.4vw, 5.9rem);
        }

        /* Forward → MATCH NOW: letters snap in from a hard horizontal blur */
        body.theme-sian3-en .s3-hero__headline.is-fwd .s3-flip__item {
            transform: translateX(-0.18em) scaleX(1.12);
            filter: blur(10px);
            clip-path: inset(0 100% 0 0);
            opacity: 0;
        }

        body.theme-sian3-en .s3-hero__headline.is-fwd .s3-flip__item.is-active {
            transform: translateX(0) scaleX(1);
            filter: blur(0);
            clip-path: inset(0 0 0 0);
            opacity: 1;
        }

        /* Backward → DAECHI EDU: letters drop with tracking tighten */
        body.theme-sian3-en .s3-hero__headline.is-back .s3-flip__item {
            transform: translateY(-0.28em) scaleX(0.92);
            filter: blur(8px);
            letter-spacing: 0.18em;
            opacity: 0;
        }

        body.theme-sian3-en .s3-hero__headline.is-back .s3-flip__item.is-active {
            transform: translateY(0) scaleX(1);
            filter: blur(0);
            letter-spacing: 0.04em;
            opacity: 1;
        }

        @media (max-width: 720px) {
            body.theme-sian3-en .s3-flip {
                min-width: 3.6em;
            }

            body.theme-sian3-en .s3-flip--suffix {
                min-width: 1.9em;
            }

            body.theme-sian3-en .s3-flip__item {
                font-size: clamp(2.2rem, 11vw, 3.4rem);
                letter-spacing: 0.02em;
            }

            body.theme-sian3-en .s3-hero__stack {
                transform: translateY(clamp(4px, 1vh, 12px));
            }

            body.theme-sian3-en .s3-hero__actions {
                margin-top: clamp(20px, 3.5vh, 32px);
            }

            body.theme-sian3-en .s3-hero__lead {
                font-size: clamp(0.9rem, 3.6vw, 1.02rem);
                word-break: keep-all;
            }
        }

        @media (max-width: 640px) {
            body.theme-sian3-en .s3-flip {
                min-width: 0;
            }

            body.theme-sian3-en .s3-flip--suffix {
                min-width: 0;
                margin-left: 0.1em;
            }

            body.theme-sian3-en .s3-flip__item {
                font-size: clamp(2.05rem, 10.8vw, 2.85rem);
                letter-spacing: 0.015em;
            }

            body.theme-sian3-en .s3-hero__lead {
                font-size: clamp(0.78rem, 3.1vw, 0.86rem);
                word-break: keep-all;
            }

            body.theme-sian3-en .s3-hero__actions {
                margin-top: 14px;
            }
        }

        /* Short phone viewports — keep GIF subtle so copy stays primary */
        @media (max-width: 640px) and (max-height: 720px) {
            body.theme-sian3 .s3-hero__symbol {
                width: min(38vw, 140px) !important;
                max-width: 140px !important;
                opacity: 0.4;
                top: auto !important;
                bottom: clamp(86px, 16vh, 128px) !important;
                transform: none !important;
            }

            body.theme-sian3 .s3-hero__stack {
                padding-right: min(24vw, 72px);
                margin-top: -12px;
            }

            body.theme-sian3 .s3-hero__micro {
                margin-top: -4px;
                margin-bottom: 18px;
            }
        }

        @media (max-width: 640px) {
            body.theme-sian3-en .s3-hero__stack {
                transform: none;
                margin-top: -16px;
            }
        }
    

        body.is-standalone-form.is-form-open #s3Landing,
        body.is-standalone-form .s3-sticky-cta,
        body.is-standalone-form .s3-snap-progress,
        body.is-standalone-form .s3-header__burger,
        body.is-standalone-form .s3-header__nav {
            display: none !important;
        }

        body.is-standalone-form .s34-form-shell,
        body.is-standalone-form .s34-site-header {
            visibility: visible !important;
            pointer-events: auto !important;
        }

        body.is-standalone-form .s34-site-header {
            position: fixed;
            inset: 0 0 auto 0;
            z-index: 3200;
        }

        body.is-standalone-form #splitLayout,
        body.is-standalone-form #formStage {
            display: block !important;
            opacity: 1 !important;
            visibility: visible !important;
        }

        body.is-standalone-form .aura-switch__link {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            flex: 1;
            text-decoration: none;
            color: inherit;
            font: inherit;
            font-weight: 700;
            cursor: pointer;
        }
        /* Match form-head action button height (40px) */
        body.is-standalone-form.is-form-open .aura-switch__track,
        body.is-standalone-form.is-form-open .split-layout__form .aura-switch__track {
            min-height: 40px;
            height: 40px;
            box-sizing: border-box;
            padding: 3px !important;
        }
        body.is-standalone-form.is-form-open .aura-switch__btn,
        body.is-standalone-form.is-form-open .split-layout__form .aura-switch__btn,
        body.is-standalone-form.is-form-open .aura-switch__link {
            min-height: 34px !important;
            height: 34px !important;
            padding: 0 !important;
            box-sizing: border-box;
        }
        #sGuardianRows[hidden],
        #sGuardianConsentWrap[hidden] { display: none !important; }
        .under14-check {
            display: flex;
            align-items: flex-start;
            gap: 8px;
            font-size: 14px;
            line-height: 1.45;
        }
        .under14-check input[type="checkbox"] { margin-top: 3px; flex-shrink: 0; }
    
