@font-face {
    font-family: 'Gotham';
    src: url('/fonts/Gotham-Book.woff2') format('woff2');
    font-weight: 400;
    font-style: normal;
}
@font-face {
    font-family: 'Gotham';
    src: url('/fonts/Gotham-Medium.woff2') format('woff2');
    font-weight: 500;
    font-style: normal;
}
@font-face {
    font-family: 'Gotham';
    src: url('/fonts/Gotham-Black.woff2') format('woff2');
    font-weight: 900;
    font-style: normal;
}

:root {
    --apply-primary: #1ea4e3;
    --apply-bg: #2c8ba2
}
            * {
                box-sizing: border-box;
            }
            body,
            html {
                height: 100%;
            }
            body {
                padding: 0;
                margin: 0;
                font-family: 'Gotham', serif;
                font-weight: 400;
            }


            p {
                margin-top: 0;
            }



            .container {
                display: grid;
                grid-template-columns: auto clamp(438px, 100%, 505px);
                background-color: var(--apply-bg);
                height: 100%;
                background-image:
                    url('https://d2lroniprg4xr2.cloudfront.net/dam/dam_4f33fe93-1dcf-4474-972b-dc6b6188ca8e.png'),
                    url('/images/apply/hello-there.png');
                background-repeat: no-repeat;
                background-position: 120px 120px, 102px 80%;
                background-size: 200px, 66.66%;

                @media screen and (max-width: 720px) {
                    grid-template-columns: 1fr;
                    grid-template-rows: 1fr auto;
                    background-image: url('https://d2lroniprg4xr2.cloudfront.net/dam/dam_4f33fe93-1dcf-4474-972b-dc6b6188ca8e.png');
                    background-position: 32px 32px;
                    background-size: 150px;
                }

                .form {
                    
                    @media screen and (max-width: 720px) {
                        margin-right: inherit;
                        margin-top: inherit;
                        padding: 2rem;
                    }

                    margin-top: 120px;
                    margin-right: 120px;
                    
                  

                    form {
                        background-color: white;
                        padding: 2rem;
                        border-radius: 1rem;
                        box-shadow: 0 1rem 2rem rgb(0, 0, 0, 0.2);
                        
                        margin: 0;
                        @media screen and (max-width: 720px) {
                            width: clamp(320px, 100%, 720px);
                            padding: 1.5rem;
                        }

                        > h1 {
                            line-height: 1;
                            margin-top: 0;
                            overflow-word: break-word;
                            text-align: center;
                            font-size: 60px;

                            @media screen and (max-width: 720px) {
                                font-size: 48px;
                            }
                            
                            > span {
                                background-image: linear-gradient(transparent 0%, transparent 65%, var(--apply-bg) 65%, var(--apply-bg) 90%, transparent 90%);
                            }
                        }

                        > p {
                             text-align: center;
                        }

                        .control {
                            margin-bottom: 1rem;
                            p {
                                margin: 0;

                                small {
                                    font-size: 66%;
                                }
                            }
                            label {
                                width: 100%;
                                display: block;
                                margin-bottom: 0.25rem;
                            }
                            input {
                                width: 100%;



                                &:focus,
                                &:focus-visible {
                                    border-color: var(--apply-primary);
                                    outline: 4px solid color-mix(in srgb, var(--apply-primary), transparent 80%);
                                }

                                &[type='file'] {

                                    &::file-selector-button {
                                        padding: 0.5rem;
                                        margin-right: 0.5rem;
                                        border: 2px solid #ddd;
                                        background: color-mix(in srgb, #ddd, transparent 90%);
                                        padding: 10px 20px;
                                        border-radius: 10px;
                                        color: #ccc;
                                        cursor: pointer;
                                    }
                                    &::file-selector-button:hover {
                                        background-color: #ddd;
                                        color: white;
                                    }
                                }
                            }
                        }

                        button {
                            border: 0;
                            background-color: var(--apply-primary);
                            color: white;
                            text-transform: uppercase;
                            font-weight: bold;
                            width: 100%;
                            margin-top: 1rem;
                            border-radius: 99px;
                            line-height: 3.3;
                            letter-spacing: 0.05em;
                            font-size: 14px;
                            font-family: system-ui, sans-serif;
                            cursor: pointer;

                            &:disabled {
                                background-color: #ddd;
                                cursor: not-allowed;
                            }
                        }

                        .apply-error, .apply-success {
                            padding: .5rem;
                            border-radius: 0.5rem;
                            font-size: 11px;
                        }
                        .apply-error {
                            background-color: #f8d7da;
                            color: #842029;
                        }
                        .apply-success {
                            background-color: #d1e7dd;
                            color: #0f5132;
                        }

                        #cv-sent {
                            width: 76%;
                        }
                    }
                }
                .empty {
                    flex-grow: 1;
                    align-content: end;
                    img {
                        display: none;
                        margin-left: 1.5rem;
                        @media screen and (max-width: 720px) {
                            display: block;
                            max-height: 25vh;
                        }
                    }
                }
            }