.contact{padding:120px 0;background:var(--color-bg);border-top:1px solid var(--border-soft)}.contact__header{margin-bottom:56px}.contact__header h2{font-family:var(--font-serif);font-size:clamp(36px,5vw,72px);font-weight:300;color:var(--color-cream);margin:8px 0 16px}.contact__header p{max-width:500px;font-size:15px;color:var(--color-muted)}.contact__form{max-width:840px;display:flex;flex-direction:column;gap:16px;margin-bottom:56px}.form-row{display:grid;grid-template-columns:1fr 1fr;grid-gap:16px;gap:16px}.form-group{display:flex;flex-direction:column;gap:8px;min-width:0}.form-group label{font-size:11px;font-weight:500;letter-spacing:.15em;text-transform:uppercase;color:var(--color-subtle)}.form-group label span{color:var(--color-sand)}.form-group input,.form-group select,.form-group textarea{background:rgba(255,255,255,.04);border:1px solid var(--border-medium);color:var(--color-text);font-family:var(--font-sans);font-size:14px;font-weight:300;padding:13px 16px;outline:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;border-radius:0;transition:border-color .25s,background .25s;width:100%;max-width:100%}.form-group input::placeholder,.form-group textarea::placeholder{color:rgba(255,255,255,.18)}.form-group select option{background:var(--color-surface);color:var(--color-text)}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:var(--color-sand);background:rgba(255,255,255,.06)}.form-group input:invalid:not(:placeholder-shown),.form-group textarea:invalid:not(:placeholder-shown){border-color:rgba(220,80,80,.6)}.form-group textarea{resize:vertical;min-height:120px}.form-footer{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;padding-top:4px}.form-footer .btn{flex:0 0 auto}.form-privacy{flex:1 1 220px;font-size:12px;color:var(--color-subtle)}.form-privacy a{border-bottom:1px solid rgba(255,255,255,.15);transition:color .25s}.form-privacy a:hover{color:var(--color-cream)}.form-message{padding:14px 16px;font-size:13px;border:1px solid;margin-top:16px}.form-message[hidden]{display:none!important}.form-message--ok{color:#7abf7a;border-color:rgba(122,191,122,.3);background:rgba(122,191,122,.06)}.form-message--err{color:#e07070;border-color:rgba(220,100,100,.3);background:rgba(220,100,100,.06)}.contact__callback{max-width:840px;margin:0 0 56px;padding:clamp(24px,4vw,36px);display:flex;align-items:center;justify-content:space-between;gap:32px;border:1px solid rgba(200,184,154,.22);background:rgba(200,184,154,.045)}.contact__callback h3{margin:8px 0 6px;color:var(--color-cream);font-family:var(--font-serif);font-size:clamp(26px,3vw,38px);font-weight:300}.contact__callback p{max-width:520px;color:var(--color-muted);font-size:14px;line-height:1.6}.contact__callback .btn{flex:0 0 auto;cursor:pointer}.contact__details{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:32px;gap:32px;padding-top:48px;border-top:1px solid var(--border-soft)}.contact__detail{display:flex;flex-direction:column;gap:8px}.contact__detail-label{font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--color-sand)}.contact__detail a,.contact__detail span{font-size:14px;color:var(--color-muted);transition:color .25s}.contact__detail a:hover{color:var(--color-cream)}.contact__detail em{font-style:normal;color:var(--color-sand);font-size:12px}.contact__tg-link{color:var(--color-sand)!important}.contact__tg-link:hover{color:var(--color-cream)!important}.contact .fade-in,.keramark-contact-form.fade-in{opacity:1;transform:none}@media (max-width:768px){.contact{padding:80px 0}.form-row{grid-template-columns:1fr}.form-footer{flex-direction:column;align-items:flex-start;gap:16px}.contact__details{grid-template-columns:1fr 1fr;gap:24px}.contact__callback{flex-direction:column;align-items:flex-start}}