.contact-page{max-width:var(--grid-max);padding:var(--nav-height,72px) var(--gutter) var(--space-10);margin:0 auto}.contact-page .contact-header{padding:var(--space-8) 0 var(--space-6)}.contact-page .contact-header h1{font-family:var(--display);letter-spacing:-.02em;color:var(--text-1);margin-bottom:var(--space-2);font-size:clamp(1.5rem,1.2rem + 1.5vw,2.25rem);font-weight:700}.contact-page .contact-header p{font-family:var(--body);font-size:var(--text-sm);color:var(--text-3);max-width:480px;line-height:1.5}.contact-page .contact-grid{gap:var(--space-8);margin-bottom:var(--space-10);grid-template-columns:1fr;display:grid}@media (min-width:768px){.contact-page .contact-grid{gap:var(--space-8);grid-template-columns:1fr 320px}}.contact-page .contact-form-card{background:var(--surface);border:1px solid var(--border-subtle);border-radius:var(--radius-l);padding:var(--space-8);transition:background .4s,border-color .4s}@media (max-width:767px){.contact-page .contact-form-card{padding:var(--space-6)}}.contact-page .contact-form__field{margin-bottom:var(--space-6)}.contact-page .contact-form__field:last-of-type{margin-bottom:var(--space-8)}.contact-page .contact-form__field label{font-family:var(--body);font-size:var(--text-sm);color:var(--text-1);margin-bottom:6px;font-weight:500;display:block}.contact-page .contact-form__required{color:var(--s2s-red)}.contact-page .contact-form__field input,.contact-page .contact-form__field textarea,.contact-page .contact-form__field select{width:100%;padding:var(--space-3) var(--space-4);border:1px solid var(--border);border-radius:var(--radius-s);font-family:var(--body);font-size:var(--text-sm);color:var(--text-1);background:var(--bg);transition:border-color var(--duration-fast,.15s), box-shadow var(--duration-fast,.15s);box-sizing:border-box;outline:none;line-height:normal}.contact-page .contact-form__field input:focus,.contact-page .contact-form__field textarea:focus,.contact-page .contact-form__field select:focus{border-color:var(--s2s-red);box-shadow:0 0 0 3px #d32f2f14}.contact-page .contact-form__field input::placeholder,.contact-page .contact-form__field textarea::placeholder{color:var(--text-4)}.contact-page .contact-form__field textarea{resize:vertical;min-height:120px}.contact-page .contact-form__select-wrap{position:relative}.contact-page .contact-form__select-wrap select{appearance:none;padding-right:var(--space-10);cursor:pointer}.contact-page .contact-form__select-wrap i{right:var(--space-4);font-size:var(--icon-md);color:var(--text-4);pointer-events:none;position:absolute;top:50%;transform:translateY(-50%)}.contact-page .contact-form__submit-row{padding-top:var(--space-2);justify-content:center;display:flex}.contact-page .contact-form__submit{justify-content:center;align-items:center;gap:var(--space-2);background:var(--gradient);color:#fff;border-radius:var(--radius-s);font-family:var(--body);font-size:var(--text-sm);cursor:pointer;transition:opacity var(--duration-fast,.15s), transform var(--duration-fast,.15s);border:none;min-height:44px;padding:12px 32px;font-weight:600;line-height:1;display:inline-flex}.contact-page .contact-form__submit:hover{opacity:.9;transform:translateY(-1px)}.contact-page .contact-form__submit:disabled{opacity:.6;cursor:not-allowed;transform:none}.contact-page .contact-form__submit i{font-size:var(--icon-sm)}.contact-page .contact-sidebar{background:var(--surface);border:1px solid var(--border-subtle);border-radius:var(--radius-l);padding:var(--space-6);align-self:start;transition:background .4s,border-color .4s}.contact-page .contact-lab{padding-bottom:var(--space-1)}.contact-page .contact-lab h3{font-family:var(--display);font-size:var(--text-sm);color:var(--text-1);align-items:center;gap:var(--space-2);margin-bottom:var(--space-3);font-weight:600;display:flex}.contact-page .contact-lab h3 i{color:var(--s2s-red);font-size:var(--icon-md)}.contact-page .contact-lab__address{font-family:var(--body);font-size:var(--text-xs);color:var(--text-3);margin-bottom:var(--space-4);line-height:1.7}.contact-page .contact-lab__email{font-family:var(--mono);font-size:var(--text-xs);color:var(--s2s-red);transition:color var(--duration-fast,.15s);align-items:center;gap:6px;display:inline-flex}.contact-page .contact-lab__email:hover{text-decoration:underline}.contact-page .contact-lab__email i{font-size:var(--icon-sm)}.contact-page .contact-sidebar__divider{background:var(--border);height:1px;margin:var(--space-6) 0}.contact-page .contact-quick-links{padding-top:var(--space-1)}.contact-page .contact-quick-links h4{font-family:var(--mono);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:2px;color:var(--text-4);margin-bottom:var(--space-4);font-weight:500}.contact-page .contact-quick-link{padding:var(--space-3) 0;border-bottom:1px solid var(--border);font-size:var(--text-xs);color:var(--text-2);transition:color var(--duration-fast,.15s);justify-content:space-between;align-items:center;font-weight:500;display:flex}.contact-page .contact-quick-link:last-child{border-bottom:none}.contact-page .contact-quick-link:hover{color:var(--s2s-red)}.contact-page .contact-quick-link i{font-size:var(--icon-sm);color:var(--text-4);transition:color var(--duration-fast,.15s), transform var(--duration-fast,.15s)}.contact-page .contact-quick-link:hover i{color:var(--s2s-red);transform:translate(2px)}.contact-page .contact-locations{padding-top:var(--space-6);border-top:1px solid var(--border)}.contact-page .contact-locations__grid{background:var(--border);border:1px solid var(--border);border-radius:var(--radius-l);grid-template-columns:1fr;gap:1px;display:grid;overflow:hidden}@media (min-width:640px){.contact-page .contact-locations__grid{grid-template-columns:1fr 1fr}}.contact-page .contact-location-card{background:var(--surface);padding:var(--space-6);transition:background var(--duration-fast,.15s);flex-direction:column;display:flex}.contact-page .contact-location-card:hover{background:var(--surface-2)}.contact-page .contact-location-card__eyebrow{font-family:var(--mono);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:2px;color:var(--text-4);margin-bottom:var(--space-2);align-items:center;gap:4px;font-weight:500;display:flex}.contact-page .contact-location-card__eyebrow i{font-size:var(--icon-xs);color:var(--s2s-red)}.contact-page .contact-location-card h3{font-family:var(--display);font-size:var(--text-base);color:var(--text-1);margin-bottom:var(--space-2);font-weight:600;line-height:1.3}.contact-page .contact-location-card p{font-size:var(--text-xs);color:var(--text-3);margin-bottom:var(--space-4);flex:1;line-height:1.5}.contact-page .contact-location-card__cta{font-size:var(--text-xs);color:var(--s2s-red);align-items:center;gap:var(--space-2);font-weight:600;display:inline-flex}.contact-page .contact-location-card__cta i{font-size:var(--icon-sm);transition:transform var(--duration-fast,.15s)}.contact-page .contact-location-card:hover .contact-location-card__cta i{transform:translate(3px)}.contact-page .contact-form__field input.is-error,.contact-page .contact-form__field textarea.is-error,.contact-page .contact-form__field select.is-error{border-color:var(--s2s-red);box-shadow:0 0 0 3px #d32f2f14}.contact-page .contact-form__error{font-family:var(--body);font-size:var(--text-xs);color:var(--s2s-red);margin-top:6px;line-height:1.5;display:block}.contact-page .contact-form__error--submit{text-align:center;margin-top:var(--space-3)}.contact-page .contact-confirmation{text-align:center;padding:var(--space-10) var(--space-6);display:none}.contact-page .contact-confirmation.is-visible{display:block}.contact-page .contact-confirmation__icon{font-size:var(--icon-2xl);color:#4caf50;margin-bottom:var(--space-4)}.contact-page .contact-confirmation h2{font-family:var(--display);font-size:var(--text-lg);color:var(--text-1);margin-bottom:var(--space-3);font-weight:600}.contact-page .contact-confirmation p{font-family:var(--body);font-size:var(--text-sm);color:var(--text-3);max-width:400px;margin:0 auto;line-height:1.7}
