/**
 * Page SEO Local - Styles CSS avec préfixes pf-
 * Version avec isolation complète pour éviter les conflits
 */

/* Variables */
.pixfeed-seo-local-wrapper {
    --purple: #8e44ad;
    --purple-light: #9b59b6;
    --purple-dark: #7d3c98;
    --purple-soft: rgba(142, 68, 173, 0.08);
    --dark: #2c2c2c;
    --gray: #6c6c6c;
    --light: #f9f9f9;
    --white: #ffffff;
    --success: #27ae60;
    --success-light: #e8f5e9;
    --error: #e74c3c;
    --error-light: #ffeee9;
    --border: rgba(0,0,0,0.08);
    
    isolation: isolate !important;
    position: relative !important;
    z-index: 10 !important;
}

.pixfeed-seo-local-wrapper * {
    box-sizing: border-box;
}

.pixfeed-seo-local-wrapper {
    font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif !important;
    color: var(--dark);
    line-height: 1.6;
}

.pixfeed-seo-local-wrapper .pf-container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 24px;
}

/* Hero Section */
.pixfeed-seo-local-wrapper .pf-local-hero {
    padding: 120px 0 80px;
    background: linear-gradient(135deg, var(--purple-soft) 0%, transparent 50%);
    position: relative;
    overflow: hidden;
}

.pixfeed-seo-local-wrapper .pf-local-hero::before {
    content: '';
    position: absolute;
    width: 600px;
    height: 600px;
    background: radial-gradient(circle, var(--purple-soft) 0%, transparent 70%);
    top: -200px;
    right: -200px;
    opacity: 0.3;
}

.pixfeed-seo-local-wrapper .pf-hero-content {
    position: relative;
    z-index: 1;
    text-align: center;
}

.pixfeed-seo-local-wrapper .pf-hero-content h1 {
    font-size: 3.5rem !important;
    font-weight: 200 !important;
    line-height: 1.2 !important;
    margin-bottom: 20px !important;
}

.pixfeed-seo-local-wrapper .pf-hero-content h1 strong {
    font-weight: 600 !important;
    background: linear-gradient(135deg, var(--purple) 0%, var(--purple-light) 100%) !important;
    -webkit-background-clip: text !important;
    -webkit-text-fill-color: transparent !important;
    background-clip: text !important;
}

.pixfeed-seo-local-wrapper .pf-hero-subtitle {
    font-size: 1.25rem !important;
    color: var(--gray) !important;
    max-width: 700px;
    margin: 0 auto !important;
}

/* Stats Section */
.pixfeed-seo-local-wrapper .pf-stats-section {
    padding: 80px 0;
    background: var(--white);
}

.pixfeed-seo-local-wrapper .pf-stats-intro {
    text-align: center;
    margin-bottom: 60px;
}

.pixfeed-seo-local-wrapper .pf-stats-intro h2 {
    font-size: 2.5rem !important;
    margin-bottom: 16px !important;
    font-weight: 600 !important;
}

.pixfeed-seo-local-wrapper .pf-stats-intro p {
    font-size: 1.25rem !important;
    color: var(--gray) !important;
}

.pixfeed-seo-local-wrapper .pf-stats-grid {
    display: grid !important;
    grid-template-columns: repeat(3, 1fr) !important;
    gap: 32px !important;
}

.pixfeed-seo-local-wrapper .pf-stat-card {
    text-align: center !important;
    padding: 32px !important;
    background: var(--light) !important;
    border-radius: 16px !important;
    transition: all 0.3s ease !important;
}

.pixfeed-seo-local-wrapper .pf-stat-card:hover {
    transform: translateY(-4px) !important;
    box-shadow: 0 12px 24px rgba(0,0,0,0.08) !important;
}

.pixfeed-seo-local-wrapper .pf-stat-value {
    font-size: 2.5rem !important;
    font-weight: bold !important;
    color: var(--purple) !important;
    margin-bottom: 8px !important;
}

.pixfeed-seo-local-wrapper .pf-stat-label {
    font-size: 1rem !important;
    color: var(--gray) !important;
}

/* Google My Business Section */
.pixfeed-seo-local-wrapper .pf-gmb-section {
    padding: 80px 0;
    background: var(--light);
}

.pixfeed-seo-local-wrapper .pf-gmb-header {
    text-align: center;
    margin-bottom: 60px;
}

.pixfeed-seo-local-wrapper .pf-gmb-header h2 {
    font-size: 2.5rem !important;
    margin-bottom: 16px !important;
    font-weight: 600 !important;
}

.pixfeed-seo-local-wrapper .pf-gmb-header p {
    font-size: 1.25rem !important;
    color: var(--gray) !important;
}

.pixfeed-seo-local-wrapper .pf-gmb-grid {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 48px !important;
    align-items: center !important;
}

.pixfeed-seo-local-wrapper .pf-gmb-content h3 {
    font-size: 1.75rem !important;
    margin-bottom: 24px !important;
    color: var(--dark) !important;
}

.pixfeed-seo-local-wrapper .pf-gmb-checklist {
    list-style: none !important;
    padding: 0 !important;
}

.pixfeed-seo-local-wrapper .pf-gmb-checklist li {
    padding: 12px 0 !important;
    padding-left: 32px !important;
    position: relative !important;
    color: var(--gray) !important;
}

.pixfeed-seo-local-wrapper .pf-gmb-checklist li::before {
    content: '✓' !important;
    position: absolute !important;
    left: 0 !important;
    color: var(--success) !important;
    font-weight: bold !important;
    font-size: 1.2rem !important;
}

.pixfeed-seo-local-wrapper .pf-gmb-visual {
    background: var(--white) !important;
    border-radius: 16px !important;
    padding: 24px !important;
    box-shadow: 0 8px 24px rgba(0,0,0,0.06) !important;
}

.pixfeed-seo-local-wrapper #pf-local-map {
    width: 100% !important;
    height: 350px !important;
    border-radius: 12px !important;
    position: relative !important;
    background: var(--light) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

.pixfeed-seo-local-wrapper .pf-map-caption {
    margin-top: 20px !important;
    color: var(--gray) !important;
    text-align: center !important;
}

/* Strategy Section */
.pixfeed-seo-local-wrapper .pf-strategy-section {
    padding: 80px 0;
    background: var(--white);
}

.pixfeed-seo-local-wrapper .pf-strategy-header {
    text-align: center;
    margin-bottom: 60px;
}

.pixfeed-seo-local-wrapper .pf-strategy-header h2 {
    font-size: 2.5rem !important;
    margin-bottom: 16px !important;
    font-weight: 600 !important;
}

.pixfeed-seo-local-wrapper .pf-strategy-steps {
    display: grid !important;
    gap: 24px !important;
}

.pixfeed-seo-local-wrapper .pf-strategy-step {
    display: grid !important;
    grid-template-columns: 80px 1fr !important;
    gap: 32px !important;
    align-items: start !important;
    padding: 32px !important;
    background: var(--white) !important;
    border-radius: 16px !important;
    border: 1px solid var(--border) !important;
    transition: all 0.3s ease !important;
    position: relative !important;
    overflow: hidden !important;
}

.pixfeed-seo-local-wrapper .pf-strategy-step::before {
    content: '' !important;
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    height: 3px !important;
    background: linear-gradient(90deg, var(--purple), var(--purple-light)) !important;
    transform: scaleX(0) !important;
    transition: transform 0.3s ease !important;
}

.pixfeed-seo-local-wrapper .pf-strategy-step:hover {
    transform: translateY(-4px) !important;
    box-shadow: 0 12px 24px rgba(0,0,0,0.08) !important;
    border-color: var(--purple-soft) !important;
}

.pixfeed-seo-local-wrapper .pf-strategy-step:hover::before {
    transform: scaleX(1) !important;
}

.pixfeed-seo-local-wrapper .pf-step-icon {
    width: 64px !important;
    height: 64px !important;
    background: var(--purple-soft) !important;
    border-radius: 16px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

.pixfeed-seo-local-wrapper .pf-step-icon svg {
    width: 32px !important;
    height: 32px !important;
    stroke: var(--purple) !important;
    stroke-width: 2 !important;
    fill: none !important;
}

.pixfeed-seo-local-wrapper .pf-step-content h3 {
    font-size: 1.25rem !important;
    margin-bottom: 12px !important;
    color: var(--dark) !important;
    font-weight: 600 !important;
}

.pixfeed-seo-local-wrapper .pf-step-content p {
    color: var(--gray) !important;
    margin-bottom: 16px !important;
}

.pixfeed-seo-local-wrapper .pf-step-tags {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 8px !important;
}

.pixfeed-seo-local-wrapper .pf-step-tag {
    padding: 4px 12px !important;
    background: var(--success-light) !important;
    color: var(--success) !important;
    border-radius: 15px !important;
    font-size: 0.875rem !important;
    font-weight: 500 !important;
}

/* Services Section */
.pixfeed-seo-local-wrapper .pf-services-section {
    padding: 80px 0;
    background: var(--light);
}

.pixfeed-seo-local-wrapper .pf-services-header {
    text-align: center;
    margin-bottom: 60px;
}

.pixfeed-seo-local-wrapper .pf-services-header h2 {
    font-size: 2.5rem !important;
    margin-bottom: 16px !important;
    font-weight: 600 !important;
}

.pixfeed-seo-local-wrapper .pf-services-grid {
    display: grid !important;
    grid-template-columns: repeat(3, 1fr) !important;
    gap: 32px !important;
}

.pixfeed-seo-local-wrapper .pf-service-card {
    background: var(--white) !important;
    padding: 32px !important;
    border-radius: 16px !important;
    text-align: center !important;
    transition: all 0.3s ease !important;
    border: 1px solid var(--border) !important;
}

.pixfeed-seo-local-wrapper .pf-service-card:hover {
    transform: translateY(-4px) !important;
    box-shadow: 0 12px 24px rgba(0,0,0,0.08) !important;
    border-color: var(--purple-soft) !important;
}

.pixfeed-seo-local-wrapper .pf-service-icon {
    width: 80px !important;
    height: 80px !important;
    background: var(--purple-soft) !important;
    border-radius: 20px !important;
    margin: 0 auto 24px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

.pixfeed-seo-local-wrapper .pf-service-icon svg {
    width: 40px !important;
    height: 40px !important;
    stroke: var(--purple) !important;
    stroke-width: 2 !important;
    fill: none !important;
}

.pixfeed-seo-local-wrapper .pf-service-card h3 {
    font-size: 1.25rem !important;
    margin-bottom: 12px !important;
    color: var(--dark) !important;
}

.pixfeed-seo-local-wrapper .pf-service-card p {
    color: var(--gray) !important;
    line-height: 1.5 !important;
}

/* Pack Local Section */
.pixfeed-seo-local-wrapper .pf-pack-section {
    padding: 80px 0;
    background: var(--white);
}

.pixfeed-seo-local-wrapper .pf-pack-showcase {
    background: linear-gradient(135deg, var(--purple-soft) 0%, transparent 100%) !important;
    border-radius: 24px !important;
    padding: 48px !important;
    position: relative !important;
    overflow: hidden !important;
}

.pixfeed-seo-local-wrapper .pf-pack-showcase::after {
    content: '' !important;
    position: absolute !important;
    top: -50% !important;
    right: -10% !important;
    width: 400px !important;
    height: 400px !important;
    background: radial-gradient(circle, var(--purple-soft) 0%, transparent 70%) !important;
    border-radius: 50% !important;
    opacity: 0.3 !important;
}

.pixfeed-seo-local-wrapper .pf-showcase-content {
    position: relative !important;
    z-index: 1 !important;
    text-align: center !important;
}

.pixfeed-seo-local-wrapper .pf-showcase-content h2 {
    font-size: 2rem !important;
    margin-bottom: 24px !important;
    color: var(--dark) !important;
    font-weight: 600 !important;
}

.pixfeed-seo-local-wrapper .pf-showcase-content p {
    font-size: 1.1rem !important;
    color: var(--gray) !important;
    max-width: 700px;
    margin: 0 auto 32px !important;
}

.pixfeed-seo-local-wrapper .pf-pack-tags {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 12px !important;
    justify-content: center !important;
}

.pixfeed-seo-local-wrapper .pf-pack-tag {
    padding: 8px 20px !important;
    background: var(--white) !important;
    border-radius: 100px !important;
    font-size: 0.9rem !important;
    font-weight: 500 !important;
    color: var(--purple) !important;
    border: 1px solid var(--purple-soft) !important;
}

/* Process Timeline */
.pixfeed-seo-local-wrapper .pf-process-section {
    padding: 80px 0;
    background: var(--light);
}

.pixfeed-seo-local-wrapper .pf-process-section h2 {
    text-align: center !important;
    font-size: 2.5rem !important;
    margin-bottom: 60px !important;
    font-weight: 600 !important;
}

.pixfeed-seo-local-wrapper .pf-process-timeline {
    max-width: 800px;
    margin: 0 auto;
    position: relative;
    padding-left: 40px;
}

.pixfeed-seo-local-wrapper .pf-process-timeline::before {
    content: '';
    position: absolute;
    left: 16px;
    top: 40px;
    bottom: 40px;
    width: 2px;
    background: linear-gradient(180deg, var(--purple), var(--purple-light));
    opacity: 0.3;
}

.pixfeed-seo-local-wrapper .pf-timeline-item {
    display: flex !important;
    gap: 24px !important;
    margin-bottom: 48px !important;
    position: relative !important;
}

.pixfeed-seo-local-wrapper .pf-timeline-number {
    width: 40px !important;
    height: 40px !important;
    background: var(--purple) !important;
    color: white !important;
    border-radius: 50% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-weight: bold !important;
    flex-shrink: 0 !important;
    position: relative !important;
    z-index: 1 !important;
}

.pixfeed-seo-local-wrapper .pf-timeline-content h3 {
    font-size: 1.25rem !important;
    margin-bottom: 8px !important;
    color: var(--dark) !important;
    font-weight: 600 !important;
}

.pixfeed-seo-local-wrapper .pf-timeline-content p {
    color: var(--gray) !important;
}

/* FAQ Section */
.pixfeed-seo-local-wrapper .pf-faq-section {
    padding: 80px 0;
    background: var(--white);
}

.pixfeed-seo-local-wrapper .pf-faq-section h2 {
    text-align: center !important;
    font-size: 2.5rem !important;
    margin-bottom: 60px !important;
    font-weight: 600 !important;
}

.pixfeed-seo-local-wrapper .pf-faq-accordion {
    max-width: 800px;
    margin: 0 auto;
}

.pixfeed-seo-local-wrapper .pf-faq-item {
    margin-bottom: 16px !important;
    border: 1px solid var(--border) !important;
    border-radius: 12px !important;
    overflow: hidden !important;
    transition: all 0.3s ease !important;
}

.pixfeed-seo-local-wrapper .pf-faq-item:hover {
    border-color: var(--purple-soft) !important;
}

.pixfeed-seo-local-wrapper .pf-faq-item.active {
    border-color: var(--purple) !important;
    box-shadow: 0 4px 12px rgba(0,0,0,0.08) !important;
}

.pixfeed-seo-local-wrapper .pf-faq-question {
    width: 100% !important;
    padding: 20px 24px !important;
    background: var(--white) !important;
    border: none !important;
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    cursor: pointer !important;
    font-size: 1.1rem !important;
    font-weight: 500 !important;
    color: var(--dark) !important;
    text-align: left !important;
    transition: all 0.3s ease !important;
    font-family: inherit !important;
}

.pixfeed-seo-local-wrapper .pf-faq-item.active .pf-faq-question {
    background: var(--purple-soft) !important;
}

.pixfeed-seo-local-wrapper .pf-faq-arrow {
    width: 24px !important;
    height: 24px !important;
    flex-shrink: 0 !important;
    transition: transform 0.3s ease !important;
}

.pixfeed-seo-local-wrapper .pf-faq-item.active .pf-faq-arrow {
    transform: rotate(180deg) !important;
}

.pixfeed-seo-local-wrapper .pf-faq-answer {
    max-height: 0 !important;
    overflow: hidden !important;
    transition: max-height 0.3s ease !important;
}

.pixfeed-seo-local-wrapper .pf-faq-item.active .pf-faq-answer {
    max-height: 300px !important;
}

.pixfeed-seo-local-wrapper .pf-faq-answer p {
    padding: 0 24px 24px !important;
    color: var(--gray) !important;
    line-height: 1.6 !important;
}

/* CTA Section */
.pixfeed-seo-local-wrapper .pf-cta-section {
    text-align: center !important;
    padding: 60px 40px !important;
    background: #f8f9fa !important;
    border: 2px solid #e3f2fd !important;
    border-radius: 15px !important;
    margin: 80px auto !important;
    max-width: 900px;
    position: relative !important;
}

.pixfeed-seo-local-wrapper .pf-cta-badge {
    width: 80px !important;
    height: 80px !important;
    border-radius: 50% !important;
    margin: 0 auto 24px auto !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    overflow: hidden !important;
    background: linear-gradient(145deg, #ffffff, #e6e6e6) !important;
    box-shadow: 8px 8px 16px #d1d1d1, -8px -8px 16px #ffffff !important;
}

.pixfeed-seo-local-wrapper .pf-cta-badge svg {
    width: 40px !important;
    height: 40px !important;
    stroke: var(--purple) !important;
    stroke-width: 2 !important;
}

.pixfeed-seo-local-wrapper .pf-cta-section h2 {
    font-size: 1.5rem !important;
    color: var(--dark) !important;
    margin-bottom: 20px !important;
    font-weight: 600 !important;
}

.pixfeed-seo-local-wrapper .pf-cta-section p {
    font-size: 1rem !important;
    color: var(--gray) !important;
    max-width: 600px !important;
    margin: 0 auto 16px !important;
    line-height: 1.7 !important;
}

.pixfeed-seo-local-wrapper .pf-cta-section p a {
    color: var(--purple) !important;
    text-decoration: underline !important;
}

.pixfeed-seo-local-wrapper .pf-cta-button {
    display: inline-block !important;
    padding: 16px 40px !important;
    background: var(--purple) !important;
    color: white !important;
    border: none !important;
    border-radius: 50px !important;
    text-decoration: none !important;
    font-weight: 600 !important;
    font-size: 1.1rem !important;
    cursor: pointer !important;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
}

.pixfeed-seo-local-wrapper .pf-cta-button:hover {
    background: var(--purple-dark) !important;
    transform: translateY(-2px) !important;
    box-shadow: 0 5px 15px rgba(142, 68, 173, 0.3) !important;
    color: white !important;
    text-decoration: none !important;
}

/* Popup Formulaire SEO Local */
.pf-local-popup-overlay {
    display: none !important;
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 100% !important;
    background: rgba(0, 0, 0, 0.7) !important;
    z-index: 999999 !important;
    justify-content: center !important;
    align-items: center !important;
    backdrop-filter: blur(5px) !important;
}

.pf-local-popup-overlay.active {
    display: flex !important;
}

.pf-local-popup-content {
    background: #ffffff !important;
    border-radius: 20px !important;
    padding: 40px !important;
    width: 90% !important;
    max-width: 600px !important;
    max-height: 90vh !important;
    overflow-y: auto !important;
    position: relative !important;
    animation: slideUp 0.3s ease-out !important;
    box-shadow: 0 25px 50px rgba(0,0,0,0.2) !important;
}

@keyframes slideUp {
    from {
        opacity: 0;
        transform: translateY(30px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.pf-close-popup {
    position: absolute !important;
    top: 20px !important;
    right: 20px !important;
    font-size: 28px !important;
    color: #6c6c6c !important;
    cursor: pointer !important;
    transition: color 0.3s !important;
    background: none !important;
    border: none !important;
    width: 30px !important;
    height: 30px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    line-height: 1 !important;
    padding: 0 !important;
}

.pf-close-popup:hover {
    color: #8e44ad !important;
}

.pf-local-popup-content h2 {
    font-size: 28px !important;
    color: #2c2c2c !important;
    margin-bottom: 10px !important;
    text-align: center !important;
    font-weight: 600 !important;
}

.pf-gradient-text {
    background: linear-gradient(135deg, #8e44ad 0%, #9b59b6 100%) !important;
    -webkit-background-clip: text !important;
    -webkit-text-fill-color: transparent !important;
    background-clip: text !important;
}

.pf-popup-subtitle {
    text-align: center !important;
    color: #6c6c6c !important;
    margin-bottom: 30px !important;
    font-size: 16px !important;
}

/* Formulaire */
.pf-local-form {
    background: #ffffff !important;
}

.pf-form-group {
    margin-bottom: 20px !important;
}

.pf-form-group label {
    display: block !important;
    margin-bottom: 8px !important;
    color: #2c2c2c !important;
    font-weight: 500 !important;
    font-size: 15px !important;
}

.pf-form-group input[type="text"],
.pf-form-group input[type="email"],
.pf-form-group input[type="tel"],
.pf-form-group textarea {
    width: 100% !important;
    padding: 12px 16px !important;
    border: 2px solid rgba(0,0,0,0.08) !important;
    border-radius: 10px !important;
    font-size: 14px !important;
    transition: all 0.3s !important;
    background: #ffffff !important;
    color: #2c2c2c !important;
    font-family: inherit !important;
}

.pf-form-group input:focus,
.pf-form-group textarea:focus {
    outline: none !important;
    border-color: #8e44ad !important;
    box-shadow: 0 0 0 3px rgba(142, 68, 173, 0.1) !important;
}

.pf-form-group textarea {
    resize: vertical !important;
}

/* Checkboxes */
.pf-checkbox-grid {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 12px !important;
}

.pf-checkbox-item {
    display: flex !important;
    align-items: center !important;
    padding: 14px 16px !important;
    border: 2px solid rgba(0,0,0,0.08) !important;
    border-radius: 12px !important;
    cursor: pointer !important;
    transition: all 0.2s !important;
    background: #ffffff !important;
}

.pf-checkbox-item:hover {
    border-color: #9b59b6 !important;
    background: rgba(142, 68, 173, 0.08) !important;
}

.pf-checkbox-item input[type="checkbox"] {
    margin-right: 10px !important;
    width: 18px !important;
    height: 18px !important;
    cursor: pointer !important;
    accent-color: #8e44ad !important;
}

.pf-checkbox-item input[type="checkbox"]:checked + .pf-checkbox-label {
    color: #8e44ad !important;
    font-weight: 600 !important;
}

.pf-checkbox-item:has(input:checked) {
    border-color: #8e44ad !important;
    background: rgba(142, 68, 173, 0.08) !important;
}

.pf-checkbox-label {
    cursor: pointer !important;
    user-select: none !important;
    font-size: 14px !important;
    color: #2c2c2c !important;
}

.pf-form-submit {
    width: 100% !important;
    padding: 14px !important;
    background: linear-gradient(135deg, #8e44ad 0%, #7d3c98 100%) !important;
    color: white !important;
    border: none !important;
    border-radius: 50px !important;
    font-size: 16px !important;
    font-weight: 600 !important;
    cursor: pointer !important;
    transition: all 0.3s !important;
    margin-top: 10px !important;
}

.pf-form-submit:hover {
    transform: translateY(-2px) !important;
    box-shadow: 0 5px 15px rgba(142, 68, 173, 0.3) !important;
}

.pf-form-submit:disabled {
    opacity: 0.7 !important;
    cursor: not-allowed !important;
}

/* Messages de succès/erreur */
.pf-success-message,
.pf-error-message {
    text-align: center !important;
    padding: 40px 20px !important;
    animation: fadeIn 0.5s ease-out !important;
}

@keyframes fadeIn {
    from { opacity: 0; }
    to { opacity: 1; }
}

.pf-success-icon,
.pf-error-icon {
    width: 60px !important;
    height: 60px !important;
    border-radius: 50% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    color: white !important;
    font-size: 30px !important;
    margin: 0 auto 20px !important;
}

.pf-success-icon {
    background: linear-gradient(135deg, #27ae60 0%, #27ae60 100%) !important;
}

.pf-error-icon {
    background: linear-gradient(135deg, #e74c3c 0%, #c0392b 100%) !important;
}

.pf-success-message h3,
.pf-error-message h3 {
    color: #2c2c2c !important;
    margin-bottom: 10px !important;
    font-size: 24px !important;
}

.pf-success-message p,
.pf-error-message p {
    color: #6c6c6c !important;
    font-size: 16px !important;
}

/* ========================================== */
/* RESPONSIVE - MOBILE ET TABLETTES */
/* ========================================== */

@media (max-width: 768px) {
    /* Container général */
    .pixfeed-seo-local-wrapper .pf-container {
        padding: 0 16px !important;
        overflow-x: hidden !important;
    }
    
    /* Hero responsive */
    .pixfeed-seo-local-wrapper .pf-local-hero {
        padding: 80px 0 60px !important;
    }
    
    .pixfeed-seo-local-wrapper .pf-hero-content h1 {
        font-size: 2.5rem !important;
    }
    
    .pixfeed-seo-local-wrapper .pf-hero-subtitle {
        font-size: 1.1rem !important;
    }
    
    /* Stats grid */
    .pixfeed-seo-local-wrapper .pf-stats-grid {
        grid-template-columns: 1fr !important;
    }
    
    /* GMB grid */
    .pixfeed-seo-local-wrapper .pf-gmb-grid {
        grid-template-columns: 1fr !important;
        gap: 32px !important;
    }
    
    /* Strategy steps */
    .pixfeed-seo-local-wrapper .pf-strategy-step {
        grid-template-columns: 60px 1fr !important;
        gap: 20px !important;
    }
    
    .pixfeed-seo-local-wrapper .pf-step-icon {
        width: 48px !important;
        height: 48px !important;
    }
    
    /* Services grid */
    .pixfeed-seo-local-wrapper .pf-services-grid {
        grid-template-columns: 1fr !important;
    }
    
    /* CTA Section mobile */
    .pixfeed-seo-local-wrapper .pf-cta-section {
        padding: 40px 24px !important;
    }
    
    /* Popup mobile */
    .pf-local-popup-content {
        width: 95% !important;
        padding: 30px 20px !important;
    }
}

/* Très petits écrans */
@media (max-width: 375px) {
    .pixfeed-seo-local-wrapper .pf-hero-content h1 {
        font-size: 2rem !important;
    }
    
    .pixfeed-seo-local-wrapper .pf-process-section h2 {
        font-size: 1.8rem !important;
    }
    
    .pixfeed-seo-local-wrapper .pf-faq-section h2 {
        font-size: 1.75rem !important;
    }
}