:root {
            --primary: #1a1a2e;
            --accent: #e94560;
            --gold: #f5a623;
            --light-bg: #f8f9fc;
            --text-muted: #6c757d;
        }

        body { font-family: 'Poppins', sans-serif; overflow-x: hidden; }

        /* ── PAGE HERO ── */
        .contact-hero {
            background: linear-gradient(135deg, #1a1a2e 0%, #16213e 60%, #0f3460 100%);
            padding: 100px 0 60px;
            position: relative;
            overflow: hidden;
        }
        .contact-hero::before {
            content: '';
            position: absolute;
            top: -50%;
            right: -10%;
            width: 500px;
            height: 500px;
            border-radius: 50%;
            background: radial-gradient(circle, rgba(233,69,96,0.15) 0%, transparent 70%);
        }
        .contact-hero h1 {
            font-family: 'Playfair Display', serif;
            font-size: clamp(2.5rem, 5vw, 4rem);
            color: #fff;
            font-weight: 800;
        }
        .contact-hero h1 span { color: var(--accent); }
        .contact-hero p { color: rgba(255,255,255,0.7); font-size: 1.1rem; }
        .breadcrumb-item a { color: var(--gold); text-decoration: none; }
        .breadcrumb-item.active { color: rgba(255,255,255,0.6); }
        .breadcrumb-item + .breadcrumb-item::before { color: rgba(255,255,255,0.4); }

        /* ── INFO CARDS ── */
        .info-section { background: var(--light-bg); padding: 80px 0; }
        .info-card {
            background: #fff;
            border-radius: 20px;
            padding: 40px 30px;
            text-align: center;
            box-shadow: 0 8px 40px rgba(0,0,0,0.07);
            transition: transform 0.3s ease, box-shadow 0.3s ease;
            height: 100%;
            border-bottom: 4px solid transparent;
        }
        .info-card:hover {
            transform: translateY(-8px);
            box-shadow: 0 20px 60px rgba(0,0,0,0.12);
            border-bottom-color: var(--accent);
        }
        .info-icon {
            width: 72px;
            height: 72px;
            border-radius: 50%;
            display: flex;
            align-items: center;
            justify-content: center;
            margin: 0 auto 20px;
            font-size: 1.6rem;
        }
        .icon-red   { background: rgba(233,69,96,0.1);  color: var(--accent); }
        .icon-blue  { background: rgba(15,52,96,0.1);   color: #0f3460; }
        .icon-gold  { background: rgba(245,166,35,0.1); color: var(--gold); }
        .info-card h5 { font-weight: 700; color: var(--primary); margin-bottom: 10px; }
        .info-card p  { color: var(--text-muted); font-size: 0.95rem; margin: 0; line-height: 1.7; }

        /* ── CONTACT FORM SECTION ── */
        .form-section { padding: 90px 0; background: #fff; }
        .section-label {
            font-size: 0.8rem;
            font-weight: 700;
            letter-spacing: 3px;
            text-transform: uppercase;
            color: var(--accent);
            margin-bottom: 10px;
        }
        .section-title {
            font-family: 'Playfair Display', serif;
            font-size: clamp(1.8rem, 3.5vw, 2.8rem);
            font-weight: 800;
            color: var(--primary);
            line-height: 1.2;
        }

        .form-floating label { color: var(--text-muted); font-size: 0.9rem; }
        .form-control, .form-select {
            border: 2px solid #e9ecef;
            border-radius: 12px;
            padding: 14px 18px;
            font-size: 0.95rem;
            transition: border-color 0.3s, box-shadow 0.3s;
            font-family: 'Poppins', sans-serif;
        }
        .form-control:focus, .form-select:focus {
            border-color: var(--accent);
            box-shadow: 0 0 0 3px rgba(233,69,96,0.12);
        }
        textarea.form-control { min-height: 160px; resize: vertical; }

        .btn-submit {
            background: linear-gradient(135deg, var(--accent), #c0392b);
            color: #fff;
            border: none;
            border-radius: 50px;
            padding: 16px 48px;
            font-weight: 700;
            font-size: 1rem;
            letter-spacing: 0.5px;
            transition: transform 0.3s, box-shadow 0.3s;
            font-family: 'Poppins', sans-serif;
        }
        .btn-submit:hover {
            transform: translateY(-3px);
            box-shadow: 0 12px 35px rgba(233,69,96,0.4);
            color: #fff;
        }
        .btn-submit i { margin-right: 8px; }

        /* ── MAP ── */
        .map-section { padding: 0; }
        .map-section iframe {
            width: 100%;
            height: 420px;
            border: 0;
            filter: grayscale(20%) contrast(1.05);
        }

        /* ── FAQ STRIP ── */
        .faq-strip {
            background: linear-gradient(135deg, #1a1a2e, #0f3460);
            padding: 60px 0;
        }
        .faq-strip h2 { font-family: 'Playfair Display', serif; color: #fff; font-size: 2rem; }
        .faq-strip p  { color: rgba(255,255,255,0.7); }
        .btn-faq {
            background: var(--accent);
            color: #fff;
            border: none;
            border-radius: 50px;
            padding: 14px 36px;
            font-weight: 600;
            font-family: 'Poppins', sans-serif;
            transition: background 0.3s, transform 0.3s;
        }
        .btn-faq:hover { background: #c0392b; transform: translateY(-2px); color: #fff; }

        /* ── SUCCESS TOAST ── */
        #successToast {
            position: fixed; bottom: 30px; right: 30px; z-index: 9999;
            background: #fff; border-left: 5px solid #28a745;
            box-shadow: 0 8px 32px rgba(0,0,0,0.15);
            border-radius: 12px; padding: 20px 28px;
            transform: translateX(200%); transition: transform 0.4s cubic-bezier(.25,.8,.25,1);
            font-family: 'Poppins', sans-serif;
        }
        #successToast.show { transform: translateX(0); }
        #successToast i { color: #28a745; font-size: 1.4rem; margin-right: 12px; }