.contact-section{background-color:var(--color-bg)}.contact-form-grid{display:grid;grid-template-columns:1fr;gap:var(--space-8);align-items:start}@media(min-width:900px){.contact-form-grid{grid-template-columns:1fr 1.4fr;gap:var(--space-10)}}.contact-card{background-color:var(--color-surface);border-radius:var(--radius-lg);padding:var(--space-8);box-shadow:var(--shadow)}.contact-card h2{margin-bottom:var(--space-6);padding-bottom:var(--space-3);border-bottom:2px solid var(--color-accent);display:inline-block}.contact-detail{display:flex;gap:var(--space-4);align-items:flex-start;margin-bottom:var(--space-6)}.contact-detail-icon{width:44px;height:44px;background-color:#c9a84c1f;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0;color:var(--color-accent)}.contact-detail-icon svg{width:22px;height:22px}.contact-detail-label{font-size:var(--text-xs);font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--color-text-muted);margin-bottom:var(--space-1)}.contact-detail-value{font-size:var(--text-base);font-weight:600;color:var(--color-primary)}.contact-detail-value a{color:var(--color-accent);text-decoration:none;font-size:var(--text-xl)}.contact-detail-value a:hover{text-decoration:underline}.contact-hours-card{background-color:var(--color-surface);border-radius:var(--radius-lg);padding:var(--space-8);box-shadow:var(--shadow)}.contact-hours-card h2{margin-bottom:var(--space-6);padding-bottom:var(--space-3);border-bottom:2px solid var(--color-accent);display:inline-block}.contact-map-section h2{margin-bottom:var(--space-5);padding-bottom:var(--space-3);border-bottom:2px solid var(--color-accent);display:inline-block}.lead-form-card{background-color:var(--color-surface);border-radius:var(--radius-lg);padding:var(--space-8);box-shadow:var(--shadow-md);border-top:4px solid var(--color-accent)}.form-heading{font-family:var(--font-heading);font-size:var(--text-2xl);color:var(--color-primary);margin-bottom:var(--space-2)}.form-subheading{font-size:var(--text-sm);color:var(--color-text-muted);margin-bottom:var(--space-6);max-width:none}.lead-form{display:flex;flex-direction:column;gap:var(--space-5)}.form-row{display:grid;grid-template-columns:1fr;gap:var(--space-5)}@media(min-width:480px){.form-row-2{grid-template-columns:1fr 1fr}}.form-group{display:flex;flex-direction:column;gap:var(--space-2)}.form-group label{font-size:var(--text-sm);font-weight:600;color:var(--color-text)}.form-required{color:var(--color-accent)}.form-group input,.form-group select,.form-group textarea{width:100%;padding:var(--space-3) var(--space-4);border:1.5px solid var(--color-border);border-radius:var(--radius);font-family:var(--font-body);font-size:var(--text-base);color:var(--color-text);background-color:var(--color-surface);transition:border-color var(--transition),box-shadow var(--transition);outline:none;-moz-appearance:none;appearance:none;-webkit-appearance:none}.form-group select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%236b6b6b' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right var(--space-4) center;padding-right:var(--space-10)}.form-group textarea{resize:vertical;min-height:110px;line-height:1.6}.form-group input::placeholder,.form-group textarea::placeholder{color:#b0b0b0}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:var(--color-accent);box-shadow:0 0 0 3px #c9a84c26}.form-recaptcha{margin-block:var(--space-2)}.recaptcha-placeholder{display:flex;align-items:center;gap:var(--space-4);padding:var(--space-4) var(--space-5);border:1.5px solid var(--color-border);border-radius:var(--radius);background-color:var(--color-bg);font-size:var(--text-sm);color:var(--color-text);font-weight:500}.recaptcha-check{width:22px;height:22px;border:2px solid #9e9e9e;border-radius:3px;flex-shrink:0}.recaptcha-logo{margin-left:auto;display:flex;flex-direction:column;align-items:center;gap:2px;flex-shrink:0}.recaptcha-text{font-size:9px;color:#555;font-weight:700;letter-spacing:.02em}.recaptcha-links{font-size:8px;color:#9e9e9e}.form-disclaimer{font-size:var(--text-xs);color:var(--color-text-muted);line-height:1.5;text-align:center;max-width:none}.form-error{display:none;font-size:var(--text-xs);color:#c0392b;margin-top:-.25rem;line-height:1.4}.form-group.has-error input,.form-group.has-error select,.form-group.has-error textarea{border-color:#c0392b;box-shadow:0 0 0 3px #c0392b1f}.form-success{display:none;flex-direction:column;align-items:center;text-align:center;gap:var(--space-4);padding:var(--space-8);border-radius:var(--radius-lg);border:2px solid #27ae60}.form-success:not([hidden]){display:flex}.form-success svg{color:#27ae60;flex-shrink:0}.form-success h3{font-family:var(--font-heading);font-size:var(--text-2xl);color:var(--color-primary);margin:0}.form-success p{color:var(--color-text-muted);font-size:var(--text-base);max-width:40ch;margin:0}.form-success a{color:var(--color-accent);font-weight:600}.lead-form [type=submit]:disabled{opacity:.65;cursor:not-allowed;transform:none;pointer-events:none}
