/* =========================
           GLOBAL
        ========================= */

        * {
            margin: 0;
            padding: 0;
            box-sizing: border-box;
        }

        html {
            scroll-behavior: smooth;
        }

        body {
            font-family: "Inter", Arial, sans-serif;
            color: #405d69;
            background: #ffffff;
            line-height: 1.6;
        }

        img {
            width: 100%;
            display: block;
        }

        a {
            text-decoration: none;
            color: inherit;
        }

        .container {
            width: min(1200px, 92%);
            margin: auto;
        }


        /* =========================
           NAVIGATION
        ========================= */

        .navbar {
            position: fixed;
            top: 22px;
            left: 50%;
            transform: translateX(-50%);
            z-index: 1000;

            display: flex;
            align-items: center;
            gap: 8px;

            padding: 8px;

            background: rgba(255,255,255,0.94);
            backdrop-filter: blur(12px);

            border-radius: 50px;

            box-shadow:
                0 8px 30px rgba(0,0,0,0.12);

            border: 1px solid rgba(255,255,255,0.8);
        }

        .nav-logo {
            font-weight: 600;
            padding: 10px 18px;
            color: #405d69;
        }

        .nav-link {
            padding: 10px 16px;
            border-radius: 30px;
            font-size: 14px;
            font-weight: 500;
            transition: 0.25s ease;
        }

        .nav-link:hover {
            background: #405d69;
            color: white;
        }

        .nav-contact {
            background: #405d69;
            color: white;
        }

        .nav-contact:hover {
            background: #304954;
        }


        /* =========================
           HERO
        ========================= */

        .hero {
            background: #405d69;
            padding: 90px 0 55px;
        }

        .hero-grid {
            display: grid;
            grid-template-columns: 1fr 1fr;
            gap: 22px;
            align-items: stretch;
        }

        .hero-card {
            background: #ffffff;
            border-radius: 26px;
            padding: 38px;
            display: flex;
            flex-direction: column;
        }

        .hero-card h1 {
            font-size: clamp(40px, 5vw, 67px);
            font-weight: 400;
            line-height: 1.08;
            letter-spacing: -2px;
            margin-bottom: 28px;
        }

        .hero-card p {
            font-size: 17px;
            color: #526872;
            margin-bottom: 25px;
            max-width: 600px;
        }

        .hero-button {
            margin-top: auto;

            background: #405d69;
            color: white;

            padding: 15px 22px;
            border-radius: 12px;

            text-align: center;
            font-size: 16px;

            transition: 0.25s ease;
        }

        .hero-button:hover {
            background: #304954;
            transform: translateY(-2px);
        }

        .hero-image {
            min-height: 460px;
            border-radius: 26px;
            overflow: hidden;
        }

        .hero-image img {
            height: 100%;
            object-fit: cover;
        }


        /* =========================
           PROCESS
        ========================= */

        .process {
            padding: 70px 0;
            background: #ffffff;
        }

        .section-title {
            font-size: 38px;
            font-weight: 400;
            margin-bottom: 35px;
            letter-spacing: -1px;
        }

        .process-grid {
            display: grid;
            grid-template-columns: 1.05fr 0.95fr;
            gap: 60px;
            align-items: center;
        }

        .steps {
            display: flex;
            flex-direction: column;
            gap: 28px;
        }

        .step h3 {
            font-size: 17px;
            font-weight: 500;
            margin-bottom: 2px;
        }

        .step p {
            font-size: 16px;
            color: #63757d;
            max-width: 650px;
        }

        .process-right {
            display: flex;
            flex-direction: column;
            align-items: center;
        }


        /* Speech bubbles */

        .speech-area {
            height: 190px;
            width: 100%;
            position: relative;
        }

        .bubble {
            position: absolute;

            width: 115px;
            height: 70px;

            border: 3px solid #111;
            border-radius: 50%;

            background: white;

            display: flex;
            justify-content: center;
            align-items: center;

            font-size: 25px;
            letter-spacing: 8px;
            color: #111;
        }

        .bubble::after {
            content: "";

            position: absolute;
            bottom: -20px;
            left: 70px;

            width: 25px;
            height: 25px;

            background: white;

            border-right: 3px solid #111;
            border-bottom: 3px solid #111;

            transform: rotate(35deg);
        }

        .bubble-one {
            top: 0;
            left: 20%;
        }

        .bubble-two {
            top: 100px;
            right: 20%;
        }

        .bubble-two::after {
            left: 15px;
            transform: rotate(135deg);
            bottom: -13px;
        }

        .contact-box {
            width: 100%;
            background: #405d69;
            color: white;

            border-radius: 14px;
            padding: 22px;

            text-align: center;
        }

        .contact-box p {
            margin-bottom: 14px;
            font-size: 16px;
        }

        .contact-box p:last-child {
            margin-bottom: 0;
        }


        /* =========================
           JOB SEEKERS
        ========================= */

        .jobs {
            background: #405d69;
            color: white;
            padding: 55px 0;
        }

        .jobs-grid {
            display: grid;
            grid-template-columns: 1fr 1fr;
            gap: 55px;
            align-items: center;
        }

        .jobs-content h2 {
            font-size: 38px;
            font-weight: 400;
            font-style: italic;
            margin-bottom: 55px;
        }

        .jobs-content h3 {
            font-size: 17px;
            font-weight: 500;
            margin-bottom: 28px;
        }

        .jobs-content p {
            font-size: 16px;
            margin-bottom: 22px;
            max-width: 580px;
            color: rgba(255,255,255,0.9);
        }

        .jobs-email {
            margin-top: 30px;
            font-weight: 500;
        }

        .jobs-image {
            height: 460px;
            border-radius: 26px;
            overflow: hidden;
        }

        .jobs-image img {
            height: 100%;
            object-fit: cover;
        }


        /* =========================
           FOOTER
        ========================= */

        footer {
            background: #304954;
            color: white;
            text-align: center;
            padding: 25px;
            font-size: 14px;
        }


        /* =========================
           MOBILE
        ========================= */

        @media (max-width: 850px) {

            .navbar {
                width: calc(100% - 30px);
                justify-content: center;
                overflow-x: auto;
                white-space: nowrap;
            }

            .nav-logo {
                display: none;
            }

            .nav-link {
                font-size: 13px;
                padding: 9px 13px;
            }

            .hero {
                padding-top: 100px;
            }

            .hero-grid,
            .process-grid,
            .jobs-grid {
                grid-template-columns: 1fr;
            }

            .hero-card {
                padding: 30px;
            }

            .hero-card h1 {
                font-size: 45px;
            }

            .hero-image {
                height: 400px;
                min-height: unset;
            }

            .process {
                padding: 55px 0;
            }

            .process-grid {
                gap: 45px;
            }

            .speech-area {
                height: 180px;
            }

            .bubble-one {
                left: 10%;
            }

            .bubble-two {
                right: 10%;
            }

            .jobs {
                padding: 50px 0;
            }

            .jobs-content h2 {
                margin-bottom: 35px;
            }

            .jobs-image {
                height: 400px;
            }
        }


        /* =========================
           SMALL PHONES
        ========================= */

        @media (max-width: 500px) {

            .navbar {
                top: 12px;
            }

            .nav-link {
                font-size: 12px;
                padding: 8px 11px;
            }

            .hero {
                padding-top: 80px;
            }

            .hero-card {
                padding: 25px;
                border-radius: 20px;
            }

            .hero-card h1 {
                font-size: 39px;
                letter-spacing: -1.5px;
            }

            .hero-card p {
                font-size: 15px;
            }

            .hero-image {
                height: 300px;
                border-radius: 20px;
            }

            .section-title {
                font-size: 32px;
            }

            .step p,
            .jobs-content p {
                font-size: 15px;
            }

            .jobs-image {
                height: 300px;
                border-radius: 20px;
            }

            .bubble {
                transform: scale(.85);
            }
        }