        /* ============================================================
       CSS CUSTOM PROPERTIES (DESIGN TOKENS)
       ============================================================ */
        :root {
            --color-heading: #1f2024;
            --color-body: #383e48;
            --color-link: #2563eb;
            --color-bg-page: #ffffff;
            --color-bg-location: #eef4fb;

            --font-family: 'Manrope', sans-serif;

            --font-size-h1: 44px;
            --font-size-h2: 34px;
            --font-size-h3: 24px;
            --font-size-body: 18px;

            --font-weight-medium: 500;
            --font-weight-semibold: 600;
            --font-weight-bold: 700;
            --font-weight-extrabold: 800;

            --line-height-h1: 1.2;
            --line-height-h2: 44px;
            --line-height-body: 28px;

            --content-max-width: 1440px;
            --content-padding-h: 178px;

            --gap-page-sections: 60px;
            --gap-banner-cols: 116px;
            --gap-banner-text: 24px;
            --gap-location-cols: 80px;
            --gap-location-address: 8px;
            --gap-culture-cols: 48px;
            --gap-culture-text: 16px;

            --banner-image-size: 450px;
            --location-map-width: 220px;
            --location-section-padding-v: 56px;
        }

        /* ============================================================
       BASE RESET & GLOBAL STYLES
       ============================================================ */
        *,
        *::before,
        *::after {
            box-sizing: border-box;
            margin: 0;
            padding: 0;
        }

        html {
            font-family: var(--font-family);
            background-color: var(--color-bg-page);
            color: var(--color-body);
            -webkit-text-size-adjust: 100%;
        }

        body {
            overflow-x: hidden;
        }

        img {
            display: block;
            max-width: 100%;
        }

        a {
            color: var(--color-link);
            text-decoration: none;
            transition: opacity 0.2s ease;
        }

        a:hover,
        a:focus {
            text-decoration: underline;
            opacity: 0.85;
        }

        a:focus-visible {
            outline: 2px solid var(--color-link);
            outline-offset: 2px;
            border-radius: 2px;
        }

        /* ============================================================
       TYPOGRAPHY HELPERS
       ============================================================ */

        /* H1 — About Mobicip title */
        .t-h1 {
            font-family: var(--font-family);
            font-size: var(--font-size-h1);
            font-weight: var(--font-weight-extrabold);
            line-height: var(--line-height-h1);
            color: var(--color-heading);
        }

        /* H2 — Culture / Careers headings */
        .t-h2 {
            font-family: var(--font-family);
            font-size: var(--font-size-h2);
            font-weight: var(--font-weight-extrabold);
            line-height: var(--line-height-h2);
            color: var(--color-heading);
        }

        /* H3 — USA - California sub-heading */
        .t-h3 {
            font-family: var(--font-family);
            font-size: var(--font-size-h3);
            font-weight: var(--font-weight-bold);
            line-height: 1.3;
            color: var(--color-heading);
        }

        /* Body copy */
        .t-body {
            font-family: var(--font-family);
            font-size: var(--font-size-body);
            font-weight: var(--font-weight-medium);
            line-height: var(--line-height-body);
            color: var(--color-body);
        }

        /* ============================================================
       LAYOUT — PAGE WRAPPER
       ============================================================ */
        .page-wrapper {
            width: 100%;
        }

        /* Constrained content container with horizontal padding */
        .content-container {
            width: 100%;
            max-width: var(--content-max-width);
            margin-left: auto;
            margin-right: auto;
            padding-left: var(--content-padding-h);
            padding-right: var(--content-padding-h);
        }

        /* ============================================================
       ABOUT PAGE — MAIN COLUMN
       ============================================================ */
        .about-page {
            display: flex;
            flex-direction: column;
            gap: var(--gap-page-sections);
            width: 100%;
        }

        /* ============================================================
       BANNER SECTION
       ============================================================ */
        .banner-section {
            padding-top: 48px;
        }

        .banner-text-col {
            display: flex;
            flex-direction: column;
            gap: var(--gap-banner-text);
            align-items: center;
            text-align: center;
            max-width: 1084px;
            width: 100%;
            margin-left: auto;
            margin-right: auto;
        }

        /* ============================================================
       LOCATION SECTION (full-bleed light-blue band)
       ============================================================ */
        .location-section {
            background-color: var(--color-bg-location);
            padding-top: var(--location-section-padding-v);
            padding-bottom: var(--location-section-padding-v);
            width: 100vw;
            position: relative;
            left: 50%;
            right: 50%;
            margin-left: -50vw;
            margin-right: -50vw;
        }

        .location-row {
            display: flex;
            flex-direction: column;
            align-items: center;
            justify-content: center;
            gap: 32px;
        }

        .location-map {
            flex-shrink: 0;
            width: var(--location-map-width);
        }

        .location-map img {
            width: 100%;
            height: auto;
        }

        .location-address-col {
            display: flex;
            flex-direction: column;
            gap: var(--gap-location-address);
            text-align: center;
            font-style: normal;
        }

        /* ============================================================
       CULTURE & CAREERS SECTION
       ============================================================ */
        .culture-careers-section {
            padding-bottom: 60px;
        }

        .culture-careers-row {
            display: flex;
            flex-direction: row;
            align-items: flex-start;
            gap: var(--gap-culture-cols);
        }

        .culture-col,
        .careers-col {
            display: flex;
            flex-direction: column;
            gap: var(--gap-culture-text);
            flex: 1;
            min-width: 0;
        }

        /* ============================================================
       FOOTER PLACEHOLDER
       ============================================================ */
        .site-footer {
            /* footer styles go here */
        }

        /* ============================================================
       ZOOMED DESKTOP / LAPTOP BREAKPOINT (1025px – 1439px)
       ============================================================ */
        @media (min-width: 1025px) and (max-width: 1439px) {
            :root {
                --content-padding-h: 30px;
            }
            .banner-text-col {
                max-width: 100%;
            }
        }

        /* 100% zoom — 1280px */
        @media (min-width: 1280px) and (max-width: 1439px) {
            .banner-text-col {
                max-width: 1084px !important;
                text-align: center !important;
                align-items: center !important;
                margin-left: auto !important;
                margin-right: auto !important;
            }
        }

        /* 110% zoom — ~1163px */
        @media (min-width: 1080px) and (max-width: 1279px) {
            .banner-text-col {
                max-width: 1084px !important;
                text-align: center !important;
                align-items: center !important;
                margin-left: auto !important;
                margin-right: auto !important;
            }
        }

        /* 125% zoom — ~1024px */
        @media (min-width: 1025px) and (max-width: 1079px) {
            .banner-text-col {
                max-width: 780px !important;
                text-align: center !important;
                align-items: center !important;
                margin-left: auto !important;
                margin-right: auto !important;
            }
        }

        /* ============================================================
       TABLET BREAKPOINT  (768px – 1024px)
       ============================================================ */
        @media (min-width: 768px) and (max-width: 1024px) {

            :root {
                --content-padding-h: 40px;
                --font-size-h1: 32px;
                --font-size-h2: 26px;
                --font-size-h3: 20px;
                --font-size-body: 16px;
                --line-height-body: 26px;
                --line-height-h2: 36px;

                --gap-culture-cols: 32px;
            }

            .banner-section {
                padding-top: 40px;
            }

            .banner-text-col {
                max-width: 100%;
                text-align: left;
                align-items: flex-start;
                margin-left: 0;
            }

            #about-heading {
                text-align: center;
                width: 100%;
            }

            .culture-careers-section {
                padding-bottom: 48px;
            }
        }

        /* ============================================================
       MOBILE BREAKPOINT  (320px – 767px)
       ============================================================ */
        @media (max-width: 767px) {

            :root {
                --content-padding-h: 20px;
                --font-size-h1: 28px;
                --font-size-h2: 24px;
                --font-size-h3: 18px;
                --font-size-body: 15px;
                --line-height-body: 24px;
                --line-height-h2: 32px;

                --gap-page-sections: 40px;
                --gap-banner-text: 20px;
                --gap-culture-cols: 40px;
                --location-section-padding-v: 40px;
            }

            .banner-section {
                padding-top: 32px;
            }

            .banner-text-col {
                text-align: left;
                align-items: flex-start;
                margin-left: 0;
            }

            #about-heading {
                text-align: center;
                width: 100%;
            }



            .location-map {
                width: 100%;
                max-width: 300px;
            }

            /* Culture & Careers: stack into single column */
            .culture-careers-row {
                flex-direction: column;
                gap: 36px;
            }

            .culture-careers-section {
                padding-bottom: 40px;
            }
        }
