.elementor-99 .elementor-element.elementor-element-fcc63dd{--display:flex;--overflow:hidden;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-99 .elementor-element.elementor-element-de316ba{width:100%;max-width:100%;margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}.elementor-99 .elementor-element.elementor-element-e145e24{width:100%;max-width:100%;margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}.elementor-99 .elementor-element.elementor-element-9cf0c55{width:100%;max-width:100%;margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}.elementor-99 .elementor-element.elementor-element-6e69722{width:100%;max-width:100%;margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}.elementor-99 .elementor-element.elementor-element-9388f66{width:100%;max-width:100%;margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}:root{--page-title-display:none;}/* Start custom CSS *//*
=====================================================================
ADI BALKAN JOBS — GLOBAL CSS v5
CLEAN START / ELEMENTOR FOUNDATION / MOBILE OPTIMIZED

PASTE INTO:
Elementor Page Settings > Advanced > Custom CSS

GLOBAL FONTS IN ELEMENTOR SITE SETTINGS:
Headings / Display: Space Grotesk — 600 / 700
Body / UI: Inter — 400 / 500 / 600 / 700

PAGE WRAPPER:
Homepage:  abj-page abj-home
Subpages:  abj-page abj-subpage

IMPORTANT:
This file contains ONLY the global foundation.
Hero layout, Adi image, animated route, airplane and GSAP are NOT here yet.
=====================================================================
*/

:root {
    /* Brand */
    --abj-blue: #075ce5;
    --abj-blue-hover: #064fc4;
    --abj-blue-soft: #e8f0ff;

    --abj-navy: #071224;
    --abj-navy-2: #10223d;

    --abj-text: #263449;
    --abj-muted: #687588;

    /* Background */
    --abj-bg: #f5f7f9;
    --abj-bg-top: #fbfcfd;
    --abj-bg-bottom: #f1f4f7;

    --abj-white: #ffffff;

    /* Surfaces */
    --abj-surface: rgba(255,255,255,.84);
    --abj-surface-solid: #ffffff;

    --abj-border: rgba(7,18,36,.09);
    --abj-border-soft: rgba(7,18,36,.055);

    /* Radius */
    --abj-radius-xs: 10px;
    --abj-radius-s: 14px;
    --abj-radius-m: 20px;
    --abj-radius-l: 30px;
    --abj-radius-pill: 999px;

    /* Shadows */
    --abj-shadow-soft:
        0 18px 54px rgba(7,18,36,.075);

    --abj-shadow-float:
        0 30px 90px rgba(7,18,36,.13);

    /* Fonts */
    --abj-font-display:
        "Space Grotesk",
        "Inter",
        -apple-system,
        BlinkMacSystemFont,
        "Segoe UI",
        Arial,
        sans-serif;

    --abj-font-body:
        "Inter",
        -apple-system,
        BlinkMacSystemFont,
        "Segoe UI",
        Roboto,
        Helvetica,
        Arial,
        sans-serif;

    /* Layout */
    --abj-shell: 1380px;
    --abj-shell-narrow: 1120px;

    --abj-pad-x:
        clamp(18px, 3vw, 52px);

    --abj-section-y:
        clamp(76px, 8vw, 140px);

    --abj-section-y-compact:
        clamp(52px, 6vw, 92px);

    /* UI */
    --abj-header-height:
        82px;

    --abj-tap-target:
        48px;

    /* Layers */
    --abj-z-bg: 0;
    --abj-z-content: 2;
    --abj-z-nav: 100;
    --abj-z-loader: 9999;
}


/* ==================================================================
   01. BROWSER / WORDPRESS / ASTRA / ELEMENTOR RESET
================================================================== */

html {
    width: 100%;
    min-width: 100%;

    margin: 0 !important;
    padding: 0 !important;

    background: var(--abj-bg);

    scroll-behavior: smooth;

    -webkit-text-size-adjust: 100%;
    text-size-adjust: 100%;
}

body,
body.elementor-page,
body.elementor-template-canvas {
    width: 100%;
    min-width: 100%;

    margin: 0 !important;
    padding: 0 !important;

    background: var(--abj-bg) !important;

    color: var(--abj-navy);

    font-family: var(--abj-font-body);

    overflow-x: hidden;

    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;

    text-rendering: optimizeLegibility;
}

@supports (overflow: clip) {
    html,
    body,
    body.elementor-page,
    body.elementor-template-canvas {
        overflow-x: clip;
    }
}


/* Astra / WordPress wrappers */

body.elementor-page #page,
body.elementor-page .site,
body.elementor-page #content,
body.elementor-page .site-content,
body.elementor-page .content-area,
body.elementor-page #primary,
body.elementor-page .site-main,
body.elementor-page .entry-content,
body.elementor-page .elementor {
    width: 100% !important;
    max-width: none !important;

    margin: 0 !important;
    padding: 0 !important;
}

body.elementor-page .site-content > .ast-container,
body.elementor-page #content > .ast-container,
body.elementor-page .ast-container {
    width: 100% !important;
    max-width: none !important;

    margin: 0 !important;
    padding: 0 !important;

    display: block !important;
}

body.elementor-page .hentry,
body.elementor-page .entry-content > :first-child,
body.elementor-page .entry-content > :last-child {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}


/* Elementor HTML widget cleanup */

body.elementor-page .elementor-widget-html,
body.elementor-page .elementor-widget-html > .elementor-widget-container {
    width: 100%;
    max-width: none;

    margin: 0 !important;
    padding: 0 !important;
}


/* ==================================================================
   02. GLOBAL BOX MODEL
================================================================== */

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

.abj-page {
    position: relative;
    isolation: isolate;

    width: 100%;
    min-height: 100vh;

    margin: 0;
    padding: 0;

    overflow: hidden;

    color: var(--abj-navy);
    font-family: var(--abj-font-body);
}

@supports (min-height: 100svh) {
    .abj-page {
        min-height: 100svh;
    }
}

.abj-page img,
.abj-page video,
.abj-page svg,
.abj-page canvas {
    max-width: 100%;
}

.abj-page img {
    height: auto;
}

.abj-page button,
.abj-page input,
.abj-page select,
.abj-page textarea {
    font: inherit;
}

.abj-page a,
.abj-page button {
    -webkit-tap-highlight-color: transparent;
}


/* ==================================================================
   03. GLOBAL SITE BACKGROUND
   Clean, neutral, no grid / no texture.
================================================================== */

.abj-page,
.abj-home,
.abj-subpage {
    background:
        radial-gradient(
            circle at 92% 4%,
            rgba(7,92,229,.055),
            transparent 30rem
        ),
        radial-gradient(
            circle at 7% 88%,
            rgba(47,120,255,.03),
            transparent 28rem
        ),
        linear-gradient(
            180deg,
            var(--abj-bg-top) 0%,
            var(--abj-bg) 46%,
            var(--abj-bg-bottom) 100%
        );
}


/* ==================================================================
   04. WIDTH / SECTION SYSTEM
================================================================== */

.abj-shell {
    position: relative;
    z-index: var(--abj-z-content);

    width:
        min(
            var(--abj-shell),
            calc(100% - (var(--abj-pad-x) * 2))
        );

    margin-inline: auto;
}

.abj-shell--narrow {
    width:
        min(
            var(--abj-shell-narrow),
            calc(100% - (var(--abj-pad-x) * 2))
        );
}

.abj-section {
    position: relative;
    z-index: var(--abj-z-content);

    width: 100%;

    padding-block:
        var(--abj-section-y);

    background: transparent;
}

.abj-section--compact {
    padding-block:
        var(--abj-section-y-compact);
}


/* Useful if Elementor parent is accidentally boxed */

.abj-edge {
    width: 100vw;
    max-width: 100vw;

    margin-left:
        calc(50% - 50vw);
}


/* ==================================================================
   05. GLOBAL TYPOGRAPHY
================================================================== */

.abj-page h1,
.abj-page h2,
.abj-page h3,
.abj-page h4,
.abj-page h5,
.abj-page h6 {
    margin-top: 0;

    color: inherit;

    font-family:
        var(--abj-font-display);

    font-weight: 700;

    overflow-wrap: normal;
    word-break: normal;

    hyphens: none;
    -webkit-hyphens: none;
}

@supports (text-wrap: balance) {
    .abj-page h1,
    .abj-page h2,
    .abj-page h3 {
        text-wrap: balance;
    }

    .abj-page p {
        text-wrap: pretty;
    }
}

.abj-display {
    font-family:
        var(--abj-font-display);

    font-size:
        clamp(3.8rem, 7vw, 8.2rem);

    line-height:
        .90;

    letter-spacing:
        -.058em;

    font-weight:
        700;
}

.abj-heading-xl {
    font-family:
        var(--abj-font-display);

    font-size:
        clamp(2.9rem, 5vw, 5.6rem);

    line-height:
        .94;

    letter-spacing:
        -.048em;

    font-weight:
        700;
}

.abj-heading-l {
    font-family:
        var(--abj-font-display);

    font-size:
        clamp(2.2rem, 3.7vw, 4.1rem);

    line-height:
        .98;

    letter-spacing:
        -.04em;

    font-weight:
        700;
}

.abj-body-l {
    font-size:
        clamp(.98rem, 1.25vw, 1.08rem);

    line-height:
        1.72;

    color:
        var(--abj-text);
}

.abj-muted {
    color:
        var(--abj-muted);
}

.abj-kicker {
    display: inline-flex;
    align-items: center;
    gap: 10px;

    color:
        var(--abj-blue);

    font-family:
        var(--abj-font-body);

    font-size:
        .68rem;

    line-height:
        1;

    font-weight:
        700;

    letter-spacing:
        .12em;

    text-transform:
        uppercase;
}

.abj-kicker::before {
    content: "";

    width: 30px;
    height: 1px;

    flex: 0 0 30px;

    background:
        currentColor;
}


/* ==================================================================
   06. BUTTON SYSTEM
================================================================== */

.abj-btn {
    min-height:
        var(--abj-tap-target);

    display:
        inline-flex;

    align-items:
        center;

    justify-content:
        center;

    gap:
        9px;

    padding:
        0 20px;

    border:
        1px solid var(--abj-blue);

    border-radius:
        var(--abj-radius-xs);

    background:
        var(--abj-blue);

    color:
        #ffffff !important;

    font-size:
        .79rem;

    line-height:
        1;

    font-weight:
        700;

    text-decoration:
        none !important;

    box-shadow:
        0 12px 30px rgba(7,92,229,.18);

    transition:
        transform .2s ease,
        background-color .2s ease,
        border-color .2s ease,
        box-shadow .2s ease;
}

.abj-btn:hover {
    transform:
        translateY(-2px);

    border-color:
        var(--abj-blue-hover);

    background:
        var(--abj-blue-hover);

    box-shadow:
        0 18px 40px rgba(7,92,229,.24);
}

.abj-btn--ghost {
    border-color:
        rgba(7,92,229,.16);

    background:
        rgba(255,255,255,.78);

    color:
        var(--abj-blue) !important;

    box-shadow:
        none;

    -webkit-backdrop-filter:
        blur(12px);

    backdrop-filter:
        blur(12px);
}

.abj-btn--ghost:hover {
    border-color:
        rgba(7,92,229,.30);

    background:
        rgba(255,255,255,.94);

    color:
        var(--abj-blue) !important;
}


/* ==================================================================
   07. PANEL / CARD SYSTEM
================================================================== */

.abj-panel {
    border:
        1px solid var(--abj-border);

    border-radius:
        var(--abj-radius-m);

    background:
        var(--abj-surface);

    box-shadow:
        var(--abj-shadow-soft);

    -webkit-backdrop-filter:
        blur(16px);

    backdrop-filter:
        blur(16px);
}

.abj-panel--solid {
    background:
        var(--abj-surface-solid);
}


/* ==================================================================
   08. MEDIA / PORTRAIT HELPERS
================================================================== */

.abj-media {
    position: relative;
    overflow: hidden;
}

.abj-media img {
    width: 100%;
    height: 100%;

    display: block;

    object-fit: cover;
}

.abj-portrait {
    position: relative;

    min-width: 0;

    display: flex;
    align-items: flex-end;
    justify-content: center;
}

.abj-portrait img {
    width: auto;
    max-width: 100%;

    height: auto;
    max-height: 100%;

    display: block;

    object-fit: contain;
    object-position: center bottom;

    filter:
        drop-shadow(
            0 28px 46px rgba(7,18,36,.14)
        );

    user-select: none;
    -webkit-user-drag: none;
}


/* ==================================================================
   09. ACCESSIBILITY / FORMS
================================================================== */

.abj-page a:focus-visible,
.abj-page button:focus-visible,
.abj-page input:focus-visible,
.abj-page select:focus-visible,
.abj-page textarea:focus-visible {
    outline:
        3px solid rgba(7,92,229,.22);

    outline-offset:
        3px;
}

.abj-page input,
.abj-page select,
.abj-page textarea {
    min-height:
        var(--abj-tap-target);
}


/* ==================================================================
   10. MOTION HOOKS
   Safe for future GSAP.
   Content stays visible if JS does not load.
================================================================== */

[data-abj-reveal],
[data-abj-stagger],
[data-abj-parallax],
[data-abj-float] {
    transform:
        translateZ(0);

    backface-visibility:
        hidden;
}


/* ==================================================================
   11. TABLET
================================================================== */

@media (max-width: 1024px) {
    :root {
        --abj-pad-x:
            clamp(22px, 4vw, 38px);

        --abj-section-y:
            clamp(68px, 8vw, 104px);

        --abj-section-y-compact:
            clamp(48px, 6vw, 74px);

        --abj-header-height:
            74px;
    }

    .abj-display {
        font-size:
            clamp(3.4rem, 9vw, 6rem);
    }
}


/* ==================================================================
   12. MOBILE
================================================================== */

@media (max-width: 620px) {
    :root {
        --abj-pad-x:
            18px;

        --abj-section-y:
            66px;

        --abj-section-y-compact:
            46px;

        --abj-header-height:
            68px;

        --abj-tap-target:
            50px;

        --abj-radius-m:
            16px;

        --abj-radius-l:
            22px;
    }

    .abj-page,
    .abj-home,
    .abj-subpage {
        background:
            radial-gradient(
                circle at 100% 2%,
                rgba(7,92,229,.045),
                transparent 20rem
            ),
            linear-gradient(
                180deg,
                var(--abj-bg-top) 0%,
                var(--abj-bg) 48%,
                var(--abj-bg-bottom) 100%
            );
    }

    .abj-display {
        font-size:
            clamp(3.15rem, 15vw, 4.65rem);

        line-height:
            .91;

        letter-spacing:
            -.052em;
    }

    .abj-heading-xl {
        font-size:
            clamp(2.65rem, 12vw, 3.85rem);

        line-height:
            .95;
    }

    .abj-heading-l {
        font-size:
            clamp(2.1rem, 9.5vw, 3rem);
    }

    .abj-body-l {
        font-size:
            .89rem;

        line-height:
            1.65;
    }

    .abj-kicker {
        font-size:
            .62rem;

        letter-spacing:
            .10em;
    }

    .abj-kicker::before {
        width:
            24px;

        flex-basis:
            24px;
    }

    .abj-btn {
        width:
            100%;

        min-height:
            50px;

        padding:
            0 18px;
    }
}


/* ==================================================================
   13. VERY SMALL MOBILE
================================================================== */

@media (max-width: 390px) {
    :root {
        --abj-pad-x:
            16px;
    }

    .abj-display {
        font-size:
            clamp(2.95rem, 14.2vw, 3.55rem);
    }
}


/* ==================================================================
   14. TOUCH DEVICES
================================================================== */

@media (hover: none) {
    .abj-btn:hover {
        transform:
            none;
    }
}


/* ==================================================================
   15. REDUCED MOTION
================================================================== */

@media (prefers-reduced-motion: reduce) {
    html {
        scroll-behavior:
            auto;
    }

    .abj-page *,
    .abj-page *::before,
    .abj-page *::after {
        animation-duration:
            .01ms !important;

        animation-iteration-count:
            1 !important;

        transition-duration:
            .01ms !important;

        scroll-behavior:
            auto !important;
    }

    [data-abj-reveal],
    [data-abj-stagger],
    [data-abj-parallax],
    [data-abj-float] {
        transform:
            none !important;

        opacity:
            1 !important;
    }
}/* End custom CSS */