    :root {
        --amb-bg-deep: #040c12;
        --amb-bg: #071522;
        --amb-panel: rgba(12, 30, 42, .94);
        --amb-panel-soft: rgba(15, 40, 52, .76);
        --amb-green: #27d79d;
        --amb-green-dark: #0b6b4f;
        --amb-green-soft: rgba(39, 215, 157, .12);
        --amb-blue-soft: rgba(56, 189, 248, .10);
        --amb-text: #f8fafc;
        --amb-muted: #a9bbc6;
        --amb-line: rgba(148, 163, 184, .18);
        --amb-danger: #fb7185;
        --amb-warning: #fbbf24;
        --amb-radius-lg: 28px;
        --amb-radius-md: 18px;
        --amb-shadow: 0 28px 80px rgba(0, 0, 0, .42);
    }

    *,
    *::before,
    *::after {
        box-sizing: border-box;
    }

    .amb-application-page {
        position: relative;
        min-height: 100vh;
        padding:
            clamp(28px, 5vw, 72px)
            clamp(16px, 4vw, 40px)
            80px;
        overflow: hidden;
        background:
            radial-gradient(
                circle at 10% 5%,
                rgba(39, 215, 157, .16),
                transparent 28%
            ),
            radial-gradient(
                circle at 90% 15%,
                rgba(56, 189, 248, .12),
                transparent 30%
            ),
            linear-gradient(
                145deg,
                var(--amb-bg-deep),
                var(--amb-bg) 48%,
                #06111a
            );
        color: var(--amb-text);
    }

    .amb-application-page::before,
    .amb-application-page::after {
        content: "";
        position: absolute;
        border-radius: 50%;
        pointer-events: none;
        filter: blur(4px);
    }

    .amb-application-page::before {
        top: 170px;
        left: -120px;
        width: 280px;
        height: 280px;
        border: 1px solid rgba(39, 215, 157, .18);
        box-shadow:
            0 0 0 42px rgba(39, 215, 157, .025),
            0 0 0 88px rgba(39, 215, 157, .018);
    }

    .amb-application-page::after {
        right: -160px;
        bottom: 80px;
        width: 340px;
        height: 340px;
        background: rgba(56, 189, 248, .035);
        border: 1px solid rgba(56, 189, 248, .12);
    }

    .amb-application-shell {
        position: relative;
        z-index: 2;
        width: min(1180px, 100%);
        margin: 0 auto;
    }

    .amb-application-intro {
        display: grid;
        grid-template-columns:
            minmax(0, .9fr)
            minmax(0, 1.1fr);
        gap: clamp(20px, 4vw, 42px);
        align-items: stretch;
    }

    .amb-information-panel,
    .amb-form-panel {
        border: 1px solid var(--amb-line);
        border-radius: var(--amb-radius-lg);
        box-shadow: var(--amb-shadow);
        backdrop-filter: blur(20px);
        -webkit-backdrop-filter: blur(20px);
    }

    .amb-information-panel {
        position: relative;
        display: flex;
        flex-direction: column;
        min-height: 100%;
        padding: clamp(26px, 4vw, 48px);
        overflow: hidden;
        background:
            linear-gradient(
                150deg,
                rgba(11, 107, 79, .26),
                rgba(7, 21, 34, .92) 50%,
                rgba(7, 21, 34, .98)
            );
    }

    .amb-information-panel::after {
        content: "";
        position: absolute;
        right: -100px;
        bottom: -100px;
        width: 240px;
        height: 240px;
        border-radius: 50%;
        border: 40px solid rgba(39, 215, 157, .04);
    }

    .amb-programme-label {
        display: inline-flex;
        align-items: center;
        gap: 9px;
        width: fit-content;
        padding: 8px 12px;
        border: 1px solid rgba(39, 215, 157, .34);
        border-radius: 999px;
        background: rgba(39, 215, 157, .08);
        color: #8af0cd;
        font-size: 12px;
        font-weight: 850;
        letter-spacing: .08em;
        text-transform: uppercase;
    }

    .amb-programme-label::before {
        content: "";
        width: 8px;
        height: 8px;
        border-radius: 50%;
        background: var(--amb-green);
        box-shadow: 0 0 16px rgba(39, 215, 157, .9);
    }

    .amb-information-panel h1 {
        max-width: 680px;
        margin: 24px 0 16px;
        font-size: clamp(34px, 5vw, 62px);
        line-height: .98;
        letter-spacing: -.045em;
    }

    .amb-information-panel h1 span {
        color: var(--amb-green);
    }

    .amb-lead {
        max-width: 650px;
        margin: 0;
        color: var(--amb-muted);
        font-size: clamp(16px, 2vw, 19px);
        line-height: 1.72;
    }

    .amb-programme-steps {
        display: grid;
        gap: 12px;
        margin: 32px 0;
    }

    .amb-programme-step {
        display: grid;
        grid-template-columns: 42px minmax(0, 1fr);
        gap: 13px;
        align-items: start;
        padding: 14px;
        border: 1px solid rgba(148, 163, 184, .14);
        border-radius: 16px;
        background: rgba(255, 255, 255, .035);
    }

    .amb-step-number {
        display: grid;
        place-items: center;
        width: 42px;
        height: 42px;
        border-radius: 14px;
        background: var(--amb-green-soft);
        color: var(--amb-green);
        font-size: 14px;
        font-weight: 900;
    }

    .amb-programme-step strong {
        display: block;
        margin-bottom: 4px;
        color: var(--amb-text);
        font-size: 15px;
    }

    .amb-programme-step p {
        margin: 0;
        color: var(--amb-muted);
        font-size: 13px;
        line-height: 1.55;
    }

    .amb-role-link {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        gap: 9px;
        width: fit-content;
        margin-top: auto;
        padding: 13px 17px;
        border: 1px solid rgba(39, 215, 157, .36);
        border-radius: 14px;
        background: rgba(39, 215, 157, .08);
        color: #a5f3d9;
        font-weight: 800;
        text-decoration: none;
        transition:
            transform .2s ease,
            background .2s ease,
            border-color .2s ease;
    }

    .amb-role-link:hover,
    .amb-role-link:focus-visible {
        transform: translateY(-2px);
        border-color: var(--amb-green);
        background: rgba(39, 215, 157, .14);
        outline: none;
    }

    .amb-form-panel {
        padding: clamp(22px, 4vw, 40px);
        background: var(--amb-panel);
    }

    .amb-form-header {
        margin-bottom: 26px;
    }

    .amb-form-header span {
        display: block;
        margin-bottom: 7px;
        color: var(--amb-green);
        font-size: 12px;
        font-weight: 850;
        letter-spacing: .1em;
        text-transform: uppercase;
    }

    .amb-form-header h2 {
        margin: 0;
        font-size: clamp(27px, 3vw, 38px);
        letter-spacing: -.025em;
    }

    .amb-form-header p {
        margin: 10px 0 0;
        color: var(--amb-muted);
        line-height: 1.65;
    }

    .amb-application-alert {
        margin-bottom: 20px;
        padding: 16px 18px;
        border-radius: 16px;
        font-size: 14px;
        line-height: 1.65;
    }

    .amb-application-alert--error {
        border: 1px solid rgba(251, 113, 133, .42);
        background: rgba(251, 113, 133, .10);
        color: #fecdd3;
    }

    .amb-application-alert--success {
        border: 1px solid rgba(39, 215, 157, .42);
        background: rgba(39, 215, 157, .10);
        color: #bbf7d0;
    }

    .amb-success-state {
        padding: clamp(24px, 4vw, 38px);
        border: 1px solid rgba(39, 215, 157, .34);
        border-radius: 22px;
        background:
            linear-gradient(
                150deg,
                rgba(39, 215, 157, .14),
                rgba(39, 215, 157, .04)
            );
        text-align: center;
    }

    .amb-success-icon {
        display: grid;
        place-items: center;
        width: 74px;
        height: 74px;
        margin: 0 auto 20px;
        border: 1px solid rgba(39, 215, 157, .48);
        border-radius: 24px;
        background: rgba(39, 215, 157, .14);
        color: var(--amb-green);
        font-size: 34px;
        font-weight: 900;
        box-shadow: 0 16px 40px rgba(39, 215, 157, .12);
    }

    .amb-success-state h2 {
        margin: 0 0 12px;
        font-size: clamp(25px, 3vw, 34px);
    }

    .amb-success-state p {
        max-width: 600px;
        margin: 0 auto;
        color: #c7d8e0;
        line-height: 1.75;
    }

    .amb-success-actions {
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        gap: 12px;
        margin-top: 24px;
    }

    .amb-application-form {
        display: grid;
        gap: 20px;
    }

    .amb-form-section {
        display: grid;
        gap: 16px;
        padding: 20px;
        border: 1px solid var(--amb-line);
        border-radius: 20px;
        background: rgba(255, 255, 255, .025);
    }

    .amb-section-heading {
        display: flex;
        align-items: flex-start;
        gap: 12px;
    }

    .amb-section-heading-number {
        display: grid;
        place-items: center;
        flex: 0 0 auto;
        width: 34px;
        height: 34px;
        border-radius: 11px;
        background: var(--amb-green-soft);
        color: var(--amb-green);
        font-size: 13px;
        font-weight: 900;
    }

    .amb-section-heading h3 {
        margin: 0;
        font-size: 17px;
    }

    .amb-section-heading p {
        margin: 4px 0 0;
        color: var(--amb-muted);
        font-size: 13px;
        line-height: 1.5;
    }

    .amb-form-grid {
        display: grid;
        grid-template-columns:
            repeat(2, minmax(0, 1fr));
        gap: 15px;
    }

    .amb-field {
        display: grid;
        gap: 8px;
        min-width: 0;
    }

    .amb-field--wide {
        grid-column: 1 / -1;
    }

    .amb-field-label {
        color: #e6f0f5;
        font-size: 13px;
        font-weight: 800;
    }

    .amb-required {
        color: var(--amb-green);
    }

    .amb-field input,
    .amb-field textarea {
        width: 100%;
        min-width: 0;
        border: 1px solid rgba(148, 163, 184, .22);
        border-radius: 14px;
        outline: none;
        background: rgba(3, 12, 18, .7);
        color: var(--amb-text);
        font: inherit;
        transition:
            border-color .2s ease,
            box-shadow .2s ease,
            background .2s ease;
    }

    .amb-field input {
        min-height: 50px;
        padding: 0 15px;
    }

    .amb-field textarea {
        min-height: 150px;
        padding: 14px 15px;
        resize: vertical;
        line-height: 1.65;
    }

    .amb-field input::placeholder,
    .amb-field textarea::placeholder {
        color: rgba(169, 187, 198, .62);
    }

    .amb-field input:focus,
    .amb-field textarea:focus {
        border-color: rgba(39, 215, 157, .78);
        background: rgba(4, 16, 23, .92);
        box-shadow:
            0 0 0 4px rgba(39, 215, 157, .09);
    }

    .amb-field input[type="file"] {
        min-height: auto;
        padding: 12px;
        cursor: pointer;
    }

    .amb-field input[type="file"]::file-selector-button {
        margin-right: 12px;
        padding: 10px 14px;
        border: 0;
        border-radius: 10px;
        background: var(--amb-green-soft);
        color: #9df0d2;
        font-weight: 800;
        cursor: pointer;
    }

    .amb-field small {
        color: var(--amb-muted);
        font-size: 12px;
        line-height: 1.5;
    }

    .amb-security-notice {
        display: grid;
        grid-template-columns: 42px minmax(0, 1fr);
        gap: 13px;
        align-items: start;
        padding: 16px;
        border: 1px solid rgba(251, 191, 36, .28);
        border-radius: 17px;
        background: rgba(251, 191, 36, .07);
    }

    .amb-security-icon {
        display: grid;
        place-items: center;
        width: 42px;
        height: 42px;
        border-radius: 13px;
        background: rgba(251, 191, 36, .12);
        color: var(--amb-warning);
        font-size: 20px;
    }

    .amb-security-notice strong {
        display: block;
        margin-bottom: 4px;
        color: #fde68a;
        font-size: 14px;
    }

    .amb-security-notice p {
        margin: 0;
        color: #d7c994;
        font-size: 12px;
        line-height: 1.6;
    }

    .amb-submit-row {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 18px;
    }

    .amb-submit-note {
        max-width: 430px;
        color: var(--amb-muted);
        font-size: 12px;
        line-height: 1.55;
    }

    .amb-primary-button,
    .amb-secondary-button {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        gap: 9px;
        min-height: 50px;
        padding: 0 21px;
        border-radius: 14px;
        font-weight: 900;
        text-decoration: none;
        cursor: pointer;
        transition:
            transform .2s ease,
            box-shadow .2s ease,
            filter .2s ease;
    }

    .amb-primary-button {
        border: 0;
        background:
            linear-gradient(
                135deg,
                #20c98f,
                #0b8f68
            );
        color: #02110c;
        box-shadow: 0 15px 34px rgba(39, 215, 157, .23);
    }

    .amb-secondary-button {
        border: 1px solid rgba(148, 163, 184, .24);
        background: rgba(255, 255, 255, .045);
        color: var(--amb-text);
    }

    .amb-primary-button:hover,
    .amb-primary-button:focus-visible,
    .amb-secondary-button:hover,
    .amb-secondary-button:focus-visible {
        transform: translateY(-2px);
        filter: brightness(1.06);
        outline: none;
    }

    .amb-primary-button:disabled {
        cursor: not-allowed;
        opacity: .7;
        transform: none;
    }

    .amb-form-footer {
        margin-top: 18px;
        color: var(--amb-muted);
        font-size: 12px;
        line-height: 1.6;
        text-align: center;
    }

    @media (max-width: 920px) {
        .amb-application-intro {
            grid-template-columns: 1fr;
        }

        .amb-information-panel {
            min-height: auto;
        }
    }

    @media (max-width: 640px) {
        .amb-application-page {
            padding:
                20px
                12px
                60px;
        }

        .amb-information-panel,
        .amb-form-panel {
            border-radius: 15px;
        }

        .amb-information-panel,
        .amb-form-panel {
            padding: 10px;
        }

        .amb-information-panel h1 {
            font-size: 30px;
            text-align: center;
        }

        .amb-form-grid {
            grid-template-columns: 1fr;
        }

        .amb-field--wide {
            grid-column: auto;
        }

        .amb-submit-row {
            align-items: stretch;
            flex-direction: column;
        }

        .amb-primary-button {
            width: 100%;
        }

        .amb-success-actions {
            flex-direction: column;
        }

        .amb-success-actions a {
            width: 100%;
        }
    }

    @media (prefers-reduced-motion: reduce) {
        *,
        *::before,
        *::after {
            scroll-behavior: auto !important;
            transition: none !important;
        }
    }


:root{color-scheme:light dark;--amb-r-heading:#fff;--amb-r-text:#f8fafc;--amb-r-muted:#bfd0d9;--amb-r-surface:rgba(8,26,36,.96);--amb-r-card:rgba(255,255,255,.045);--amb-r-line:rgba(255,255,255,.13);--amb-r-input:#06131c;--amb-r-input-line:rgba(148,163,184,.30);--amb-r-shadow:0 24px 70px rgba(0,0,0,.34)}
.amb-application-page{font-size:16px;line-height:1.65}
.amb-information-panel,.amb-form-panel{border-color:var(--amb-r-line);box-shadow:var(--amb-r-shadow)}
.amb-information-panel h1,.amb-form-header h2,.amb-section-heading h3,.amb-field-label,.amb-programme-step strong,.amb-success-state h2{color:var(--amb-r-heading)}
.amb-lead,.amb-form-header p,.amb-section-heading p,.amb-field small,.amb-submit-note,.amb-form-footer,.amb-programme-step p,.amb-success-state p{color:var(--amb-r-muted)}
.amb-form-panel{background:var(--amb-r-surface)}
.amb-form-section,.amb-programme-step{background:var(--amb-r-card);border-color:var(--amb-r-line)}
.amb-field input,.amb-field textarea{font-size:16px;background:var(--amb-r-input);color:var(--amb-r-text);border-color:var(--amb-r-input-line)}
.amb-field input::placeholder,.amb-field textarea::placeholder{color:#8ea4af}
.amb-field input:focus,.amb-field textarea:focus{border-color:#27d79d;box-shadow:0 0 0 4px rgba(39,215,157,.12)}
.amb-primary-button,.amb-secondary-button,.amb-role-link{min-height:50px;touch-action:manipulation}
.amb-primary-button{box-shadow:0 14px 32px rgba(39,215,157,.22)}
@media(max-width:920px){.amb-information-panel{position:relative;top:auto}.amb-programme-steps{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){
 .amb-application-page{padding:14px 9px 58px}
 .amb-application-intro{gap:12px}
 .amb-information-panel,.amb-form-panel{padding:18px 14px;border-radius:18px}
 .amb-programme-label{margin-inline:auto}
 .amb-information-panel h1{font-size:clamp(2rem,10.5vw,2.75rem);line-height:1.04;text-align:center}
 .amb-lead{text-align:center!important;font-size:.96rem;line-height:1.7}
 .amb-programme-steps{grid-template-columns:1fr;margin:22px 0}
 .amb-programme-step{padding:12px;grid-template-columns:38px minmax(0,1fr);gap:10px}
 .amb-step-number{width:38px;height:38px;border-radius:12px}
 .amb-role-link{width:100%}
 .amb-form-header{margin-bottom:20px}.amb-form-header h2{font-size:1.75rem}
 .amb-form-section{padding:15px 12px;border-radius:16px}
 .amb-form-grid{grid-template-columns:1fr;gap:13px}.amb-field--wide{grid-column:auto}
 .amb-field input{min-height:52px}.amb-field textarea{min-height:160px}
 .amb-submit-row{flex-direction:column;align-items:stretch}.amb-submit-note{max-width:none;text-align:center}
 .amb-primary-button,.amb-secondary-button{width:100%}
 .amb-success-actions{flex-direction:column}.amb-success-actions a{width:100%}
}
@media(max-width:380px){.amb-information-panel,.amb-form-panel{padding:15px 11px}.amb-form-section{padding:13px 10px}.amb-security-notice{grid-template-columns:36px minmax(0,1fr);padding:12px}.amb-security-icon{width:36px;height:36px}}
@media(prefers-color-scheme:light){
 :root{--amb-r-heading:#0f172a;--amb-r-text:#1f2937;--amb-r-muted:#5d6f66;--amb-r-surface:rgba(255,255,255,.97);--amb-r-card:#f8fbfa;--amb-r-line:rgba(15,75,52,.14);--amb-r-input:#fff;--amb-r-input-line:rgba(15,75,52,.22);--amb-r-shadow:0 18px 48px rgba(15,23,42,.10)}
 .amb-application-page{background:radial-gradient(circle at 10% 5%,rgba(39,215,157,.12),transparent 28%),radial-gradient(circle at 90% 15%,rgba(56,189,248,.08),transparent 30%),linear-gradient(145deg,#f7fbf9,#edf7f2 50%,#f8fafc)}
 .amb-information-panel{background:linear-gradient(150deg,#e8faf3,#fff 52%,#f8fbfa)}
 .amb-programme-label,.amb-role-link{color:#087452}.amb-form-panel{background:#fff}
 .amb-application-alert--error{background:#fff1f2;color:#9f1239}.amb-application-alert--success{background:#f0fdf4;color:#166534}
 .amb-security-notice{background:#fff9e8}.amb-security-notice strong{color:#8a5a00}.amb-security-notice p{color:#725f2f}
 .amb-secondary-button{background:#fff;color:#0f172a}
}