  *, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
    :root {
        --primary: #1E69B8;
        --gold: #FFD166;
        --dark: #0B0E1A;
        --dark-2: #12172B;
        --glass: rgba(255,255,255,0.05);
        --border: rgba(255,255,255,0.08);
        --text: rgba(255,255,255,0.75);
        --text-dim: rgba(255,255,255,0.45);
        --gradient: linear-gradient(135deg, #1e68b89c 0%, #1E69B8 100%);
        --transition: all 0.38s cubic-bezier(0.23,1,0.32,1);
    }
    body { font-family: 'Poppins', sans-serif; background: var(--dark); color: #fff; line-height: 1.7; }
    a { text-decoration: none; }

    /* PAGE HERO */
    .gm-page-hero {
        background: linear-gradient(135deg, #0B0E1A 0%, #12172B 60%, #1a2040 100%);
        padding: 70px 0 60px; position: relative; overflow: hidden;
        border-bottom: 1px solid var(--border);
    }
    .gm-page-hero::before {
        content: ''; position: absolute; inset: 0;
        background: radial-gradient(ellipse at 70% 50%, rgba(30,105,184,0.12) 0%, transparent 65%);
    }
    .gm-page-hero-inner { max-width: 1260px; margin: 0 auto; padding: 0 32px; position: relative; }
    .gm-breadcrumb { display: flex; align-items: center; gap: 10px; font-size: 12px; font-weight: 600; letter-spacing: 1.5px; text-transform: uppercase; color: var(--text-dim); margin-bottom: 18px; }
    .gm-breadcrumb a { color: var(--primary); }
    .gm-breadcrumb i { font-size: 10px; }
    .gm-page-title { font-size: clamp(30px, 4vw, 52px); font-weight: 800; color: #fff; letter-spacing: -0.5px; }
    .gm-page-title span { background: var(--gradient); -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text; }

    /* MAP */
    .gm-map-wrap { width: 100%; height: 420px; position: relative; }
    .gm-map-wrap iframe { width: 100%; height: 100%; border: 0; display: block; filter: grayscale(20%) contrast(1.05); }
    .gm-map-overlay {
        position: absolute; bottom: 0; left: 0; right: 0;
        height: 80px;
        background: linear-gradient(to top, var(--dark) 0%, transparent 100%);
        pointer-events: none;
    }

    /* MAIN LAYOUT */
    .gm-wrap { max-width: 1260px; margin: 0 auto; padding: 0 32px; }
    .gm-section { padding: 90px 0; }
    .gm-tag { display: inline-flex; align-items: center; gap: 8px; background: rgba(30,105,184,0.12); border: 1px solid rgba(30,105,184,0.3); color: var(--primary); font-size: 11px; font-weight: 700; letter-spacing: 2.5px; text-transform: uppercase; padding: 6px 16px; border-radius: 100px; margin-bottom: 20px; }
    .gm-tag::before { content: ''; width: 6px; height: 6px; background: var(--primary); border-radius: 50%; }
    .gm-heading { font-size: clamp(28px,3.5vw,44px); font-weight: 800; line-height: 1.2; margin-bottom: 18px; }
    .gm-heading span { background: var(--gradient); -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text; }
    .gm-divider { width: 56px; height: 4px; background: var(--gradient); border-radius: 4px; margin: 22px 0; }

    /* CONTACT GRID */
    .gm-contact-grid {
        display: grid; grid-template-columns: 1fr 1.5fr; gap: 60px; align-items: start;
    }
    @media (max-width: 900px) { .gm-contact-grid { grid-template-columns: 1fr; gap: 48px; } }

    /* INFO CARDS */
    .gm-info-cards { display: flex; flex-direction: column; gap: 20px; }
    .gm-info-card {
        background: var(--glass); border: 1px solid var(--border);
        border-radius: 18px; padding: 24px 24px;
        display: flex; align-items: flex-start; gap: 18px;
        transition: var(--transition);
    }
    .gm-info-card:hover { border-color: rgba(30,105,184,0.35); transform: translateX(6px); }
    .gm-info-icon {
        width: 48px; height: 48px; flex-shrink: 0;
        background: rgba(30,105,184,0.12); border: 1px solid rgba(30,105,184,0.25);
        border-radius: 13px; display: flex; align-items: center; justify-content: center;
        font-size: 18px; color: var(--primary); transition: var(--transition);
    }
    .gm-info-card:hover .gm-info-icon { background: var(--gradient); border-color: transparent; color: #fff; }
    .gm-info-label { font-size: 11px; font-weight: 700; color: var(--text-dim); text-transform: uppercase; letter-spacing: 1.5px; margin-bottom: 6px; }
    .gm-info-value { font-size: 14px; font-weight: 600; color: #fff; line-height: 1.65; }
    .gm-info-value a { color: #fff; transition: var(--transition); }
    .gm-info-value a:hover { color: var(--primary); }

    /* FORM CARD */
    .gm-form-card {
        background: var(--dark-2); border: 1px solid var(--border);
        border-radius: 24px; padding: 44px;
    }
    @media (max-width: 580px) { .gm-form-card { padding: 28px 20px; } }
    .gm-form-title { font-size: 22px; font-weight: 800; color: #fff; margin-bottom: 8px; }
    .gm-form-sub { font-size: 13px; color: var(--text-dim); margin-bottom: 32px; }
    .gm-form-row { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; }
    @media (max-width: 560px) { .gm-form-row { grid-template-columns: 1fr; } }
    .gm-form-group { display: flex; flex-direction: column; gap: 8px; margin-bottom: 18px; }
    .gm-form-group.full { grid-column: 1 / -1; }
    .gm-form-group label { font-size: 12px; font-weight: 700; color: var(--text-dim); text-transform: uppercase; letter-spacing: 1.2px; }
    .gm-form-control {
        width: 100%; background: rgba(255,255,255,0.04); border: 1px solid var(--border);
        border-radius: 12px; padding: 14px 18px; font-size: 14px; color: #fff;
        font-family: 'Poppins', sans-serif; transition: var(--transition); outline: none;
    }
    .gm-form-control::placeholder { color: var(--text-dim); }
    .gm-form-control:focus { border-color: var(--primary); background: rgba(30,105,184,0.07); box-shadow: 0 0 0 3px rgba(30,105,184,0.12); }
    textarea.gm-form-control { resize: vertical; min-height: 140px; }
    .gm-form-btn {
        display: inline-flex; align-items: center; gap: 10px;
        background: var(--gradient); color: #fff; font-size: 13px; font-weight: 700;
        letter-spacing: 1px; text-transform: uppercase; padding: 16px 36px;
        border-radius: 100px; border: none; cursor: pointer;
        box-shadow: 0 8px 28px rgba(26,84,148,0.45); transition: var(--transition);
        font-family: 'Poppins', sans-serif; width: 100%; justify-content: center; margin-top: 8px;
    }
    .gm-form-btn:hover { transform: translateY(-3px); box-shadow: 0 16px 44px rgba(26,84,148,0.6); }
    .gm-form-note { font-size: 12px; color: var(--text-dim); text-align: center; margin-top: 14px; }
    .gm-form-note i { color: var(--primary); margin-right: 4px; }