.contact-header {
            padding: 150px 0 70px;
            position: relative;
        }

        .contact-hero-shell {
            position: relative;
            overflow: hidden;
            display: grid;
            grid-template-columns: 1.1fr 0.85fr;
            gap: 28px;
            align-items: stretch;
            padding: 36px;
            border-radius: 34px;
            background:
                radial-gradient(circle at top right, rgba(255, 226, 226, 0.85), transparent 35%),
                linear-gradient(135deg, #fffafa 0%, #ffffff 45%, #fff3f3 100%);
            border: 1px solid rgba(192, 10, 39, 0.08);
            box-shadow: 0 28px 70px rgba(192, 10, 39, 0.08);
        }

        .contact-hero-shell::before {
            content: '';
            position: absolute;
            inset: auto -80px -90px auto;
            width: 220px;
            height: 220px;
            border-radius: 50%;
            background: radial-gradient(circle, rgba(192, 10, 39, 0.12), rgba(192, 10, 39, 0));
            pointer-events: none;
        }

        .contact-hero-copy h1 {
            font-size: 3.5rem;
            color: var(--c-primary);
            margin-bottom: 20px;
            line-height: 1.02;
        }

        .contact-hero-copy p {
            font-size: 1.12rem;
            color: var(--c-text-light);
            max-width: 660px;
            margin-bottom: 28px;
        }

        .contact-hero-tag {
            display: inline-flex;
            align-items: center;
            gap: 10px;
            padding: 10px 16px;
            border-radius: 999px;
            background: rgba(192, 10, 39, 0.08);
            color: var(--c-primary);
            font-size: 0.82rem;
            font-weight: 800;
            text-transform: uppercase;
            letter-spacing: 0.12em;
            margin-bottom: 16px;
        }

        .contact-hero-pills {
            display: flex;
            flex-wrap: wrap;
            gap: 12px;
        }

        .contact-hero-pill {
            display: inline-flex;
            align-items: center;
            gap: 8px;
            padding: 10px 14px;
            border-radius: 999px;
            background: white;
            border: 1px solid rgba(15, 23, 42, 0.08);
            box-shadow: 0 10px 24px rgba(15, 23, 42, 0.05);
            font-size: 0.92rem;
            font-weight: 600;
        }

        .contact-hero-card {
            position: relative;
            min-height: 100%;
            padding: 28px;
            border-radius: 28px;
            color: white;
            background:
                linear-gradient(160deg, rgba(122, 10, 10, 0.94), rgba(192, 10, 39, 0.96)),
                url('../../images/bangalore_skyline.webp') no-repeat center;
            background-size: cover;
            box-shadow: 0 24px 50px rgba(133, 13, 31, 0.25);
        }

        .contact-hero-card::after {
            content: '';
            position: absolute;
            inset: 0;
            border-radius: inherit;
            background: linear-gradient(180deg, rgba(255,255,255,0.08), rgba(255,255,255,0));
            pointer-events: none;
        }

        .contact-hero-card > * {
            position: relative;
            z-index: 1;
        }

        .contact-hero-card h2 {
            font-size: 1.6rem;
            margin-bottom: 10px;
        }

        .contact-hero-card p {
            color: rgba(255,255,255,0.82);
            margin-bottom: 20px;
        }

        .contact-mini-list {
            display: grid;
            gap: 12px;
        }

        .contact-mini-item {
            padding: 14px 16px;
            border-radius: 18px;
            background: rgba(255, 255, 255, 0.12);
            border: 1px solid rgba(255, 255, 255, 0.18);
        }

        .contact-grid {
            display: grid;
            grid-template-columns: 1fr 1.2fr;
            gap: 80px;
            padding: 80px 0;
            align-items: start;
        }

        .info-panel {
            display: flex;
            flex-direction: column;
            gap: 40px;
        }

        .info-card {
            display: flex;
            gap: 20px;
            align-items: flex-start;
        }

        .icon-box {
            width: 56px;
            height: 56px;
            background: rgba(192, 10, 39, 0.1);
            color: var(--c-primary);
            border-radius: 16px;
            display: flex;
            align-items: center;
            justify-content: center;
            font-size: 1.5rem;
            flex-shrink: 0;
        }

        .info-content h2 { font-size: 1.25rem; margin-bottom: 8px; color: var(--c-text); }
        .info-content p { color: var(--c-text-light); text-align: left; line-height: 1.6; }
        .info-content a { color: var(--c-text); font-weight: 500; font-size: 1.1rem; }
        .info-content a:hover { color: var(--c-primary); }

        /* Social Grid inspired by hopp.bio */
        .social-title {
            font-size: 1.5rem;
            margin-top: 20px;
            margin-bottom: 24px;
            color: var(--c-text);
            font-weight: 600;
        }
        .social-grid {
            display: grid;
            grid-template-columns: repeat(4, 1fr);
            gap: 16px;
        }
        .social-link {
            background: white;
            border: 1px solid var(--c-border);
            border-radius: 12px;
            padding: 16px;
            display: flex;
            flex-direction: column;
            align-items: center;
            justify-content: center;
            gap: 8px;
            transition: all var(--t-fast);
            text-decoration: none;
            color: var(--c-text-light);
        }
        .social-link:hover {
            border-color: var(--c-primary);
            color: var(--c-primary);
            transform: translateY(-4px);
            box-shadow: var(--shadow-md);
        }
        .social-link i { width: 30px; height: 30px; color: var(--c-primary); }
        .social-link span { font-size: 0.75rem; font-weight: 500; text-transform: uppercase; letter-spacing: 0.5px; }

        .contact-form-panel {
            background: rgba(255, 255, 255, 0.7);
            backdrop-filter: blur(20px);
            border: 1px solid rgba(255, 255, 255, 0.4);
            border-radius: 32px;
            padding: 48px;
            box-shadow: var(--shadow-lg);
        }

        .form-title { font-size: 2rem; margin-bottom: 12px; }
        .form-subtitle { color: var(--c-text-light); margin-bottom: 32px; }

        .map-section {
            padding: 80px 0;
        }
        .map-container {
            border-radius: 32px;
            overflow: hidden;
            width: 100%;
            aspect-ratio: 16 / 9;
            min-height: 320px;
            box-shadow: var(--shadow-lg);
            border: 8px solid white;
        }

        @media (max-width: 900px) {
            .contact-hero-shell { grid-template-columns: 1fr; padding: 24px; border-radius: 26px; }
            .contact-hero-copy h1 { font-size: 2.5rem; }
            .contact-grid { grid-template-columns: 1fr; gap: 60px; }
            .social-grid { grid-template-columns: repeat(2, 1fr); }
        }
        @media (max-width: 500px) {
            .contact-header { padding: 126px 0 50px; }
            .contact-hero-copy h1 { font-size: 2.1rem; }
            .contact-hero-pills { flex-direction: column; }
            .social-grid { grid-template-columns: repeat(2, 1fr); }
            .contact-form-panel { padding: 32px 24px; }
            .map-section { padding: 20px 0; }
            .map-container { 
                min-height: 250px; 
                border-radius: 20px; 
                border-width: 4px; 
            }
        }
