.contact-section{padding:var(--space-xl);background-color:transparent;color:var(--color-text-primary);display:flex;justify-content:center;align-items:center}.contact-container{width:100%;max-width:38rem;text-align:center;padding-inline:var(--space-xl);background-color:var(--color-bg-muted);border-radius:var(--radius-lg);padding-bottom:var(--space-lg)}.contact-title{font-family:var(--font-family-display);font-size:var(--font-size-xxl);letter-spacing:var(--letter-spacing-extra);color:var(--color-primary);text-shadow:var(--text-shadow-md);margin:0;margin-top:var(--space-lg)}.contact-subtitle{font-family:var(--font-family-display);font-size:var(--font-size-lg);letter-spacing:var(--letter-spacing-extra);color:var(--color-subtitle-secondary);text-shadow:var(--text-shadow-sm);margin:0;margin-top:var(--space-sm)}.contact-form{display:flex;flex-direction:column;gap:var(--space-md);margin-top:var(--space-md)}.honeypot{position:absolute;left:-9999px;opacity:0;height:0;width:0;pointer-events:none}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.contact-form input,.contact-form textarea,.contact-form select{background:var(--color-bg-surface);color:var(--color-text-primary);font-family:var(--font-family-body);font-size:var(--font-size-md);padding:var(--space-sm);padding-left:var(--space-md);border-radius:var(--radius-md);border:1px solid var(--color-border-default);transition:all .3s ease;width:100%;box-sizing:border-box;line-height:1.5}.contact-form input:hover,.contact-form textarea:hover,.contact-form select:hover,.contact-form input:focus,.contact-form textarea:focus,.contact-form select:focus{background-color:var(--color-bg-surface-hover);border-color:var(--color-primary);outline:1px solid var(--color-primary);box-shadow:var(--shadow-sm)}.contact-form input:not(:placeholder-shown),.contact-form textarea:not(:placeholder-shown){border-color:var(--color-primary);color:var(--color-primary)}.contact-form select:valid{border-color:var(--color-primary);color:var(--color-primary)}.contact-form textarea{min-height:100px;resize:none}.contact-form select{appearance:none;color:var(--color-text-muted)}.contact-form select:valid{color:var(--color-primary)}.contact-form select option{background-color:var(--color-bg-surface-hover);color:var(--color-text-primary);box-shadow:var(--shadow-sm)}.contact-form select option:disabled{color:var(--color-text-muted)}.field-error{color:var(--color-error);font-size:var(--font-size-sm)}.char-counter{color:var(--color-text-muted);font-size:var(--font-size-sm)}.field-info{min-height:1.5rem;margin-top:.25rem;display:flex;align-items:center;justify-content:space-between;font-size:var(--font-size-sm)}.field textarea+.field-info{margin-top:0}.send-button{font-family:var(--font-family-display);font-size:var(--font-size-button-md);font-weight:var(--font-weight-bold);letter-spacing:var(--letter-spacing-wide);color:var(--color-text-inverted);background:var(--color-primary);padding:.5rem 3rem;border:3px solid transparent;border-radius:var(--radius-full);white-space:nowrap;cursor:pointer;animation:pulse 2s ease-in-out infinite;box-shadow:0 0 8px var(--color-primary);transition:all .3s ease;display:block;margin-inline:auto;z-index:100}.send-button:disabled{cursor:not-allowed;opacity:.6}.send-button:hover:not(:disabled){background:var(--color-gradient);color:var(--color-primary);border-color:var(--color-primary);transform:scale(1.05)}@media (prefers-reduced-motion: reduce){.send-button{animation:none}}.contact-feedback{margin-top:var(--space-md);font-family:var(--font-family-body);font-size:var(--font-size-md);text-align:center}.contact-feedback.success{color:var(--color-success);margin:0;margin-top:var(--space-lg)}.contact-feedback.error{color:var(--color-error);margin:0;margin-top:var(--space-lg)}.captcha-disabled-note{color:var(--color-text-secondary);font-size:var(--font-size-md);margin:var(--space-sm) 0}@media (max-width: 480px){.contact-container{padding-inline:var(--space-md)}.send-button{margin-inline:var(--space-lg)}}@keyframes pulse{0%{transform:scale(1);box-shadow:0 0 8px var(--color-primary)}50%{transform:scale(1.03);box-shadow:0 0 12px var(--color-primary)}to{transform:scale(1);box-shadow:0 0 8px var(--color-primary)}}
