.hero-contact{min-height:40vh}.hero-contact .hero-overlay{background:linear-gradient(135deg,#003c6ed9 0%,#386fa0bf 100%)}.section-contact{padding:var(--spacing-3xl) 0;background:var(--bg-surface)}.contact-grid{gap:var(--spacing-xl);grid-template-columns:1fr 400px;max-width:1100px;margin:0 auto;display:grid}.contact-form-wrapper .card{height:100%}.contact-form .form-group{margin-bottom:24px}.contact-form .form-label{font-weight:var(--font-weight-semibold);color:var(--text-primary);margin-bottom:8px;display:block}.contact-form .form-control{width:100%;padding:var(--spacing-ms) var(--spacing-md);border:1px solid var(--border-medium);border-radius:var(--radius-md);font-size:var(--font-size-sm);transition:border-color .2s,box-shadow .2s}.contact-form .form-control:focus{border-color:var(--primary);box-shadow:var(--focus-ring-primary);outline:none}.contact-form textarea.form-control{resize:vertical;min-height:150px}.char-counter{text-align:right;font-size:var(--font-size-xs);color:var(--text-muted);margin-top:6px}.turnstile-container{margin:var(--spacing-lg) 0;flex-direction:column;align-items:center;display:flex}.turnstile-container .field-error{color:var(--danger);font-size:var(--font-size-sm);margin-top:8px}.form-actions{margin-top:32px}.form-actions .btn{width:100%;padding:var(--spacing-ms) var(--spacing-lg);font-size:var(--font-size-md)}.form-actions .btn i{margin-right:8px}.success-message{text-align:center;padding:var(--spacing-xl) var(--spacing-ml)}.success-icon{font-size:var(--font-size-4xl);color:var(--success);margin-bottom:24px}.success-message h3{font-size:var(--font-size-h4);font-weight:var(--font-weight-bold);color:var(--text-primary);margin-bottom:12px}.success-message p{color:var(--text-secondary);max-width:400px;margin-bottom:32px;margin-left:auto;margin-right:auto;line-height:1.6}.success-message .btn{padding:var(--spacing-ms) var(--spacing-lg)}.contact-info-wrapper{gap:var(--spacing-lg);flex-direction:column;display:flex}.info-list{gap:var(--spacing-ml);flex-direction:column;display:flex}.info-item{align-items:flex-start;gap:var(--spacing-md);flex-direction:row;display:flex}.info-icon{background:linear-gradient(135deg, var(--primary) 0%, var(--primary-light) 100%);border-radius:var(--radius-md);flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;display:flex}.info-icon i{color:#fff;font-size:var(--font-size-lg)}.info-content{gap:var(--spacing-2xs);flex-direction:column;display:flex}.info-label{font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px}.info-value{font-size:var(--font-size-sm);color:var(--primary);text-decoration:none;transition:color .2s}.info-value:hover{color:var(--primary-dark);text-decoration:underline}.info-divider{background:var(--border-light);height:1px;margin:var(--spacing-ml) 0}.info-note{align-items:flex-start;gap:var(--spacing-ms);padding:var(--spacing-md);background:var(--bg-surface);border-radius:var(--radius-md);display:flex}.info-note i{color:var(--primary);font-size:var(--font-size-md);margin-top:2px}.info-note p{font-size:var(--font-size-sm);color:var(--text-secondary);margin:0;line-height:1.5}.quick-links{gap:var(--spacing-ms);flex-direction:column;display:flex}.quick-link{align-items:center;gap:var(--spacing-ms);padding:var(--spacing-ms) var(--spacing-md);background:var(--bg-surface);border-radius:var(--radius-md);color:var(--text-primary);text-decoration:none;transition:background-color .2s,transform .2s;display:flex}.quick-link:hover{background:var(--bg-hover);transform:translate(4px)}.quick-link i{color:var(--primary);font-size:var(--font-size-md);text-align:center;width:20px}.quick-link span{font-weight:var(--font-weight-medium);font-size:var(--font-size-sm)}#dynamic-fields{display:contents}.contact-form-row{gap:var(--spacing-md);margin-bottom:var(--spacing-lg);grid-template-columns:1fr 1fr;display:grid}.contact-form-row .form-floating{margin-bottom:0}.contact-radio-group{border:1px solid var(--border-medium);border-radius:var(--radius-md);padding:var(--spacing-md) var(--spacing-ml);margin-bottom:var(--spacing-lg)}.contact-radio-legend{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--text-secondary);padding:0 var(--spacing-xs)}.contact-radio-label{align-items:center;gap:var(--spacing-ms);padding:var(--spacing-xs) 0;font-size:var(--font-size-sm);color:var(--text-primary);cursor:pointer;display:flex}.contact-radio-label input[type=radio]{accent-color:var(--primary);cursor:pointer;width:16px;height:16px}.contact-aide-hint{align-items:center;gap:var(--spacing-ms);padding:var(--spacing-ms) var(--spacing-md);background:var(--bg-surface);border-left:3px solid var(--primary);border-radius:var(--radius-md);margin-bottom:var(--spacing-lg);font-size:var(--font-size-sm);color:var(--text-secondary);display:flex}.contact-aide-hint i{color:var(--primary);flex-shrink:0}.contact-aide-hint a{color:var(--primary);text-decoration:underline}.contact-aide-hint a:hover{color:var(--primary-dark)}@media (width<=1024px){.contact-grid{gap:var(--spacing-xl);grid-template-columns:1fr}.contact-info-wrapper{order:-1}}@media (width<=600px){.section-contact{padding:var(--spacing-xl) 0 var(--spacing-3xl)}.hero-contact{min-height:35vh}.contact-form .form-control{padding:var(--spacing-sm) var(--spacing-ms);font-size:var(--font-size-md)}.form-actions .btn{padding:var(--spacing-ms) var(--spacing-ml);font-size:var(--font-size-sm)}.success-icon{font-size:var(--font-size-3xl)}.success-message h3{font-size:var(--font-size-xl)}}
