/*!
 * Contact Page Styles
 * Version: 1.0.0
 * Mobile-first, BEM methodology, WCAG 2.1 AA compliant
 */
 .contact-page{padding:clamp(2rem, 5vw, 4rem) 0;background-color:var(--color-bg-white)}.contact-page__container{max-width:1200px;margin:0 auto;padding:0 var(--spacing-md)}.contact-page__header{text-align:center;margin-bottom:clamp(2.5rem, 5vw, 4rem)}.contact-page__title{font-size:clamp(2rem, 4vw, 3rem);font-weight:700;color:var(--color-text-primary);margin-bottom:var(--spacing-sm);line-height:1.2}.contact-page__subtitle{font-size:clamp(1rem, 2vw, 1.25rem);color:var(--color-text-secondary);margin:0;line-height:1.6}.contact-page__content{display:grid;grid-template-columns:1fr;gap:clamp(2rem, 4vw, 3rem)}@media (min-width:768px){.contact-page__content{grid-template-columns:1fr 1.5fr}}.contact-info{display:flex;flex-direction:column;gap:clamp(1.5rem, 3vw, 2rem)}.contact-info__section{background-color:var(--color-bg-white);padding:clamp(1.25rem, 3vw, 1.75rem);border-radius:8px;border:1px solid var(--color-bg-light);box-shadow:0 1px 3px rgb(0 0 0 / .05)}.contact-info__heading{font-size:1.25rem;font-weight:700;color:var(--color-primary);margin:0 0 1rem 0;padding-bottom:.75rem;border-bottom:2px solid var(--color-bg-light)}.contact-info__company-name{font-size:1.125rem;color:var(--color-text-primary);margin-bottom:1rem;font-weight:700}.contact-info__contact-list{display:flex;flex-direction:column;gap:.75rem}.contact-info__contact-item{display:flex;align-items:center;gap:.5rem;font-size:.9375rem}.contact-info__label{font-weight:600;color:var(--color-text-primary);min-width:70px}.contact-info__link{color:var(--color-primary);text-decoration:none;transition:opacity 0.2s ease;font-weight:500}.contact-info__link:hover{opacity:.8;text-decoration:underline}.contact-info__link:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px;border-radius:2px}.contact-info__item{display:flex;gap:1rem;align-items:flex-start;margin-bottom:.75rem}.contact-info__item:last-child{margin-bottom:0}.contact-info__icon{flex-shrink:0;width:1.5rem;height:1.5rem;color:var(--color-primary);margin-top:.125rem}.contact-info__item strong{display:block;color:var(--color-text-primary);font-weight:600;margin-bottom:.25rem}.contact-info__item a{color:var(--color-primary);text-decoration:none;transition:opacity 0.2s ease}.contact-info__item a:hover{opacity:.8;text-decoration:underline}.contact-info__item a:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px;border-radius:2px}.contact-info__schedule{display:flex;flex-direction:column;gap:.5rem}.contact-info__schedule-item{display:flex;justify-content:space-between;align-items:center;padding:.625rem .75rem;background-color:var(--color-bg-light);border-radius:6px;font-size:.9375rem}.contact-info__schedule-item--closed{opacity:.6}.contact-info__day{font-weight:600;color:var(--color-text-primary)}.contact-info__hours{color:var(--color-text-secondary);font-weight:500}.contact-info__schedule-item--closed .contact-info__hours{color:var(--color-text-secondary);font-style:italic}.contact-form-wrapper{background-color:var(--color-bg-white);padding:clamp(1.5rem, 4vw, 2.5rem);border-radius:8px;border:1px solid var(--color-bg-light);box-shadow:0 2px 8px rgb(0 0 0 / .08)}.contact-form__heading{font-size:1.5rem;font-weight:700;color:var(--color-text-primary);margin:0 0 1.5rem 0;padding-bottom:.75rem;border-bottom:2px solid var(--color-primary)}.contact-form__message{display:flex;align-items:center;gap:.75rem;padding:1rem 1.25rem;border-radius:6px;margin-bottom:1.5rem;font-size:.9375rem;font-weight:500}.contact-form__message svg{flex-shrink:0;width:1.25rem;height:1.25rem}.contact-form__message--success{background-color:#d4edda;color:#155724;border:1px solid #c3e6cb}.contact-form__message--success svg{stroke:#155724}.contact-form__message--error{background-color:#f8d7da;color:#721c24;border:1px solid #f5c6cb}.contact-form__message--error svg{stroke:#721c24}.contact-form{display:flex;flex-direction:column;gap:1.25rem}.contact-form__field{display:flex;flex-direction:column;gap:.5rem}.contact-form__label{font-size:.9375rem;font-weight:600;color:var(--color-text-primary)}.contact-form__required{color:#dc3545;font-weight:700}.contact-form__optional{color:var(--color-text-secondary);font-weight:400;font-size:.875rem}.contact-form__input,.contact-form__textarea{width:100%;padding:.875rem 1rem;font-size:1rem;font-family:inherit;color:var(--color-text-primary);background-color:var(--color-bg-white);border:2px solid var(--color-bg-light);border-radius:6px;transition:border-color 0.2s ease,box-shadow 0.2s ease}.contact-form__input:hover,.contact-form__textarea:hover{border-color:#d0d0d0}.contact-form__input:focus,.contact-form__textarea:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px rgb(89 40 22 / .1)}.contact-form__input:invalid:not(:placeholder-shown),.contact-form__textarea:invalid:not(:placeholder-shown){border-color:#dc3545}.contact-form__textarea{resize:vertical;min-height:150px;line-height:1.6}.contact-form__actions{margin-top:.5rem}.contact-form__submit{display:inline-flex;align-items:center;gap:.625rem;padding:.875rem 2rem;font-size:1rem;font-weight:600;color:var(--color-bg-white);background-color:var(--color-primary);border:2px solid var(--color-primary);border-radius:6px;cursor:pointer;transition:all 0.2s ease}.contact-form__submit svg{width:1.25rem;height:1.25rem;stroke-width:2}.contact-form__submit:hover{background-color:#6b3420;border-color:#6b3420;transform:translateY(-1px);box-shadow:0 4px 12px rgb(89 40 22 / .3)}.contact-form__submit:active{transform:translateY(0);box-shadow:0 2px 6px rgb(89 40 22 / .3)}.contact-form__submit:focus-visible{outline:3px solid var(--color-primary);outline-offset:3px}.contact-form__submit:disabled{opacity:.6;cursor:not-allowed;transform:none}.contact-form__privacy{margin-top:1rem;margin-bottom:0;font-size:.8125rem;color:var(--color-text-secondary);line-height:1.5}.contact-form__privacy a{color:var(--color-primary);text-decoration:underline}.contact-form__privacy a:hover{opacity:.8}.contact-form__privacy a:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px;border-radius:2px}@media (max-width:767px){.contact-info__section{padding:1.25rem}.contact-form-wrapper{padding:1.5rem}.contact-form__submit{width:100%;justify-content:center}}@media (prefers-reduced-motion:reduce){.contact-form__input,.contact-form__textarea,.contact-form__submit,.contact-info__item a{transition:none}}@media (prefers-contrast:high){.contact-info__section,.contact-form-wrapper{border-width:2px}.contact-form__input,.contact-form__textarea{border-width:2px}}@media print{.contact-form{display:none}.contact-info__section{break-inside:avoid}}