.contact-page{background:#f8f9fa;min-height:100vh}.contact-hero{background:linear-gradient(135deg,var(--primary-burgundy)0%,#600018 100%);text-align:center;color:#fff;padding:3rem 2rem;position:relative;box-shadow:0 4px 6px #0000001a}.cross-symbol{color:var(--primary-gold);margin-bottom:.5rem;font-size:2.5rem}.contact-hero h1{margin-bottom:.75rem;font-size:2.5rem;font-weight:700;color:#fff!important}.contact-hero p{opacity:.95;color:#ffffffe6;max-width:600px;margin:0 auto;font-size:1.1rem}.contact-content{max-width:1200px;margin:0 auto;padding:3rem 2rem}.contact-grid{grid-template-columns:1fr 1fr;gap:3rem;margin-bottom:3rem;display:grid}.contact-info{flex-direction:column;gap:.75rem;display:flex}.contact-info h2{color:var(--primary-burgundy);margin-bottom:.25rem;font-size:1.5rem;font-weight:700}.intro-text{color:#6b7280;margin-bottom:.75rem;font-size:.875rem;line-height:1.4}.contact-item{border-left:3px solid var(--primary-gold);background:#fff;border-radius:8px;align-items:flex-start;gap:.875rem;padding:1rem;transition:all .3s;display:flex;box-shadow:0 1px 4px #0000000f}.contact-item:hover{transform:translateY(-1px);box-shadow:0 2px 8px #0000001a}.contact-icon{background:linear-gradient(135deg,var(--primary-burgundy),#600018);border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;font-size:1.1rem;display:flex}.contact-item h4{color:var(--primary-burgundy);margin-bottom:.25rem;font-size:.95rem;font-weight:600}.contact-item p,.contact-item a{color:#4b5563;margin:.1rem 0;font-size:.8rem;line-height:1.4}.contact-item a{text-decoration:none}.contact-item a:hover{color:var(--primary-burgundy);text-decoration:underline}.contact-item strong{color:#374151;font-size:.8rem;font-weight:600}.view-all-link{color:var(--primary-burgundy);margin-top:.25rem;font-size:.8rem;font-weight:600;text-decoration:none;transition:all .2s;display:inline-block}.view-all-link:hover{color:#600018;transform:translate(4px)}.contact-form-container{background:#fff;border-radius:12px;height:fit-content;padding:2.5rem;box-shadow:0 2px 8px #00000014}.contact-form-container h2{color:var(--primary-burgundy);margin-bottom:1.5rem;font-size:1.75rem;font-weight:700}.contact-form{flex-direction:column;gap:1.25rem;display:flex}.form-group{flex-direction:column;display:flex}.form-group label,.form-label{color:#374151;margin-bottom:.5rem;font-size:.9rem;font-weight:600;display:block}.form-group input,.form-group select,.form-group textarea,.form-control{color:#1f2937;background:#f9fafb;border:1.5px solid #d1d5db;border-radius:8px;width:100%;padding:.875rem;font-family:inherit;font-size:.95rem;transition:all .2s}.form-group input:focus,.form-group select:focus,.form-group textarea:focus,.form-control:focus{border-color:var(--primary-burgundy);background:#fff;outline:none;box-shadow:0 0 0 3px #80002014}.form-group textarea,.form-control[type=textarea]{resize:vertical;min-height:120px}.submit-btn{background:var(--primary-burgundy);color:#fff;cursor:pointer;border:none;border-radius:8px;justify-content:center;align-items:center;gap:.5rem;width:100%;margin-top:.5rem;padding:1rem;font-size:1rem;font-weight:600;transition:all .2s;display:flex}.submit-btn:hover:not(:disabled){background:#600018;transform:translateY(-1px);box-shadow:0 4px 8px #80002033}.submit-btn:active:not(:disabled){transform:translateY(0)}.submit-btn:disabled{opacity:.6;cursor:not-allowed;background:#9ca3af}.spinner-small{border:2px solid #ffffff4d;border-top-color:#fff;border-radius:50%;width:18px;height:18px;animation:.8s linear infinite spin}.alert{border-radius:8px;margin-bottom:1.25rem;padding:1rem;font-size:.95rem}.alert-success{color:#065f46;background:#ecfdf5;border:1px solid #a7f3d0;border-left:4px solid #10b981}.alert-error{color:#991b1b;background:#fef2f2;border:1px solid #fecaca;border-left:4px solid #ef4444}.map-section{background:#fff;border-radius:12px;padding:1.5rem;overflow:hidden;box-shadow:0 2px 8px #00000014}.map-section h2{color:var(--primary-burgundy);margin-bottom:1.5rem;font-size:1.75rem;font-weight:700}.map-container iframe{border:none;border-radius:8px;width:100%;height:400px}@keyframes spin{to{transform:rotate(360deg)}}@media (max-width:968px){.contact-grid{grid-template-columns:1fr;gap:2.5rem}.contact-form-container{order:-1}}@media (max-width:768px){.contact-hero{padding:2.5rem 1.5rem}.contact-hero h1{font-size:2rem}.contact-content{padding:2rem 1.5rem}.contact-info h2{font-size:1.75rem}.contact-form-container{padding:2rem}.contact-item{padding:1.5rem}.map-container iframe{height:300px}}
