.contact-section{padding:80px 0;background-color:var(--color-cream)}.contact-content{display:grid;grid-template-columns:1fr 1.5fr;gap:60px;align-items:center}.contact-text{padding-right:40px;max-width:500px}.contact-title{font-family:var(--font-family-primary);font-size:3rem;font-weight:var(--font-weight-light);color:var(--color-black);margin-bottom:32px;line-height:1.1;letter-spacing:1px}.contact-description{font-family:var(--font-family-primary);font-size:16px;font-weight:var(--font-weight-regular);color:var(--color-black);line-height:1.6;margin-bottom:48px;opacity:.8}.contact-info{margin-bottom:48px}.contact-item{margin-bottom:24px;display:flex;align-items:flex-start;gap:16px}.contact-label{font-family:var(--font-family-primary);font-size:16px;font-weight:var(--font-weight-semibold);color:var(--color-black);min-width:80px;flex-shrink:0}.contact-link{font-family:var(--font-family-primary);font-size:16px;font-weight:var(--font-weight-regular);color:var(--color-black);text-decoration:underline;transition:opacity .3s ease}.contact-link:hover{opacity:.6;text-decoration:underline}.contact-text-item{font-family:var(--font-family-primary);font-size:16px;font-weight:var(--font-weight-regular);color:var(--color-black);line-height:1.5;margin:0}.contact-cta{border-top:1px solid rgba(49,49,49,.1);padding-top:32px}.contact-form{display:flex;flex-direction:column;gap:20px;margin-top:8px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.form-group{display:flex;flex-direction:column;gap:8px}.form-input,.form-textarea{font-family:var(--font-family-secondary);font-size:14px;font-weight:var(--font-weight-light);color:var(--color-black);background-color:transparent;border:1px solid rgba(49,49,49,.2);padding:12px 16px;border-radius:var(--image-border-radius);transition:all .3s ease;letter-spacing:.5px}.form-textarea{min-height:110px;resize:vertical}.form-input:focus,.form-textarea:focus{outline:none;border-color:var(--color-black)}.btn-submit{font-family:var(--font-family-secondary);font-size:14px;font-weight:var(--font-weight-light);color:var(--color-black);background-color:transparent;border:1px solid var(--color-black);padding:12px 28px;cursor:pointer;transition:all .3s ease;letter-spacing:.5px;align-self:flex-start}.btn-submit:hover{background-color:var(--color-black);color:var(--color-cream);transform:translateY(-1px)}.checkbox-label{display:inline-flex;align-items:center;gap:10px;cursor:pointer;font-family:var(--font-family-secondary);font-size:14px;font-weight:var(--font-weight-light);color:var(--color-black);letter-spacing:.5px;line-height:1.2}.privacy-link{color:var(--color-black);text-decoration:underline;transition:opacity .3s ease}.privacy-link:hover{opacity:.6}.btn-submit.loading{position:relative;opacity:.85}.btn-submit.loading:after{content:"";display:inline-block;width:14px;height:14px;margin-left:10px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.form-status{font-family:var(--font-family-secondary);font-size:13px;color:var(--color-black);opacity:.7;margin-top:8px}.form-status.success{color:#2e7d32;opacity:.9}.form-status.error{color:#8a3b3b;opacity:.8}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.cta-text{font-family:var(--font-family-primary);font-size:16px;font-weight:var(--font-weight-regular);color:var(--color-black);margin-bottom:24px;opacity:.8}.contact-image{background-image:url(/images/contact.webp);background-size:cover;background-position:center;background-repeat:no-repeat;height:100%;min-height:400px;width:100%}@media (max-width: 768px){.contact-section{padding:64px 0}.contact-content{grid-template-columns:1fr;gap:48px}.contact-image{order:-1}.contact-text{padding-right:0}.contact-title{font-size:2.5rem;margin-bottom:24px}.contact-description,.contact-info{margin-bottom:32px}.contact-item{margin-bottom:20px;flex-direction:column;gap:8px}.form-row{grid-template-columns:1fr;gap:20px}.contact-label{min-width:auto}.contact-cta{padding-top:24px}.contact-image{min-height:300px}}@media (max-width: 480px){.contact-section{padding:48px 0}.contact-content{gap:32px}.contact-title{font-size:2rem;margin-bottom:20px}.contact-description,.contact-info{margin-bottom:24px}.contact-item{margin-bottom:16px}.contact-cta{padding-top:20px}.contact-image{min-height:250px}}
