.contactContainer{margin:2rem auto;max-width:1200px;padding:0 1rem}.contactHeader{margin-bottom:3rem;text-align:center}.contactHeader h1{color:var(--text-primary);font-size:2.5rem;font-weight:700;margin-bottom:1rem}.contactHeader p{color:var(--text-secondary);font-size:1.1rem;line-height:1.6;margin:0 auto;max-width:600px}.contactContent{align-items:start;display:grid;gap:3rem;grid-template-columns:1fr 1.2fr;margin-bottom:3rem}.contactInfo{background:var(--bg-light);border:1px solid var(--brand-border);border-radius:12px;box-shadow:0 2px 8px rgba(0,0,0,.05);height:-moz-fit-content;height:fit-content;padding:2.5rem;position:sticky;top:2rem}.contactInfo h2{border-bottom:2px solid var(--brand-border);color:var(--text-primary);font-size:1.75rem;font-weight:700;margin-bottom:2rem;padding-bottom:1rem}.infoItem{background:var(--brand-surface);border-left:4px solid var(--brand-primary);border-radius:8px;box-shadow:0 1px 3px rgba(0,0,0,.05);margin-bottom:2rem;padding:1.25rem;transition:transform .2s,box-shadow .2s}.infoItem:hover{box-shadow:0 4px 12px rgba(0,0,0,.08);transform:translateX(4px)}.infoItem h3{align-items:center;color:var(--text-primary);display:flex;font-size:1.15rem;font-weight:700;gap:.5rem;margin-bottom:.75rem}.infoItem h3:before{color:var(--brand-primary);content:"●";font-size:.8rem}.infoItem p{color:var(--text-secondary);line-height:1.7;margin:.25rem 0}.infoItem a{color:var(--brand-primary);font-weight:600;text-decoration:none;transition:color .2s}.infoItem a:hover{color:var(--brand-primary-hover);text-decoration:underline}.officeCard{background:var(--bg-light);border:1px solid var(--brand-border);border-radius:12px;margin-top:2rem;padding:2rem}.officeTitle{color:var(--text-primary);font-size:1.5rem;font-weight:600;margin-bottom:1.5rem}.officeAddress{color:var(--text-secondary);font-style:normal;line-height:1.6;margin-bottom:1.5rem}.companyName{color:var(--text-primary);display:block;font-weight:600;margin-bottom:.5rem}.officeMap{background:var(--bg-light);border:1px solid var(--brand-border);border-radius:8px;height:300px;width:100%}.contactForm{background:var(--brand-surface);border:1px solid var(--brand-border);border-radius:12px;box-shadow:0 4px 16px rgba(0,0,0,.08);height:-moz-fit-content;height:fit-content;padding:2.5rem}.contactForm h2{border-bottom:2px solid var(--brand-border);color:var(--text-primary);font-size:1.75rem;font-weight:700;margin-bottom:2rem;padding-bottom:1rem}.formGroup{margin-bottom:1.5rem}.formLabel{color:var(--text-primary);display:block;font-size:.9rem;font-weight:600;margin-bottom:.5rem}.formInput,.formSelect,.formTextarea{background:var(--form-input-bg);border:1px solid var(--form-input-border);border-radius:6px;box-sizing:border-box;color:var(--form-input-text);font-size:1rem;padding:.75rem;transition:border-color .2s,box-shadow .2s;width:100%}.formInput:focus,.formSelect:focus,.formTextarea:focus{border-color:var(--form-input-focus-border);box-shadow:0 0 0 3px var(--form-input-focus-ring);outline:none}.formTextarea{min-height:120px;resize:vertical}.formError{color:var(--alert-error-text);display:block;font-size:.875rem;margin-top:.25rem}.submitBtn{background:linear-gradient(135deg,var(--brand-primary) 0,var(--brand-primary-hover) 100%);border:none;border-radius:6px;color:var(--text-on-primary);cursor:pointer;font-size:1rem;font-weight:600;padding:.875rem 2rem;transition:all .2s;width:100%}.submitBtn:hover{background:linear-gradient(135deg,var(--brand-primary-hover) 0,var(--brand-accent) 100%);box-shadow:0 4px 12px rgba(25,151,183,.3);transform:translateY(-1px)}.submitBtn:active{transform:translateY(0)}.businessHours{background:var(--brand-surface);border:2px dashed var(--brand-border);border-radius:8px;margin-top:.5rem;padding:1.25rem}.businessHours h4{color:var(--text-primary);font-size:1.05rem;font-weight:700;margin-bottom:.75rem}.businessHours p{color:var(--text-secondary);font-size:.9rem;margin:0}.flashMessage{border-radius:6px;font-weight:500;margin-bottom:1.5rem;padding:1rem}.flashSuccess{background-color:var(--alert-success-bg);border:1px solid var(--alert-success-border);color:var(--alert-success-text)}.flashError{background-color:var(--alert-error-bg);border:1px solid var(--alert-error-border);color:var(--alert-error-text)}[data-theme=dark] .contactInfo{box-shadow:0 2px 8px rgba(0,0,0,.2)}[data-theme=dark] .infoItem{box-shadow:0 1px 3px rgba(0,0,0,.2)}[data-theme=dark] .infoItem:hover{box-shadow:0 4px 12px rgba(0,0,0,.3)}[data-theme=dark] .contactForm{box-shadow:0 4px 16px rgba(0,0,0,.2)}[data-theme=dark] .submitBtn:hover{box-shadow:0 4px 12px rgba(25,151,183,.4)}@media (max-width:968px){.contactContent{gap:2.5rem;grid-template-columns:1fr}.contactInfo{position:static}.contactHeader h1{font-size:2rem}.contactForm,.contactInfo{padding:2rem}}@media (max-width:480px){.contactContainer{margin:1rem auto;padding:0 .5rem}.contactForm,.contactInfo{padding:1.5rem}.contactHeader{margin-bottom:2rem}.contactHeader h1{font-size:1.75rem}.infoItem{padding:1rem}}