.contact-container{max-width:720px;margin:2rem auto 4rem;padding:0 2rem}.contact-content{border-radius:var(--radius-m);padding:3rem}.contact-content h1{color:var(--text);font-size:2.2rem;margin:0 0 .25rem;font-weight:600}.contact-lede{color:color-mix(in srgb,var(--text) 70%,transparent);font-size:1rem;line-height:1.6;margin:0 0 2rem}.contact-form{display:flex;flex-direction:column;gap:1.25rem}.contact-field{display:flex;flex-direction:column;gap:.35rem}.contact-field input,.contact-field select,.contact-field textarea{width:100%}.contact-field label{font-size:.85rem;font-weight:600;color:var(--text);letter-spacing:.02em}.contact-field select{cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath fill='%23888' d='M1.4 0L6 4.6 10.6 0 12 1.4l-6 6-6-6z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .85rem center;padding-right:2.5rem}.contact-field textarea{resize:vertical;min-height:100px;max-height:240px;line-height:1.6}.contact-char-count{font-size:.75rem;text-align:right;color:color-mix(in srgb,var(--text) 45%,transparent);transition:color .15s ease}.contact-char-count.is-near{color:color-mix(in srgb,var(--color-warning) 80%,#000)}.contact-char-count.is-over{color:var(--color-error);font-weight:600}.contact-field.has-error input,.contact-field.has-error select,.contact-field.has-error textarea{border-color:var(--color-error)}.contact-field-error{font-size:.78rem;color:var(--color-error);min-height:1rem}.contact-submit{align-self:flex-start;padding:.7rem 2rem;font-size:.95rem;font-weight:600;font-family:inherit;color:var(--accent-contrast);background:var(--accent);border:none;border-radius:8px;cursor:pointer;transition:opacity .18s ease,transform .1s ease}.contact-submit:hover{opacity:.9}.contact-submit:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.contact-submit:active{transform:scale(.98)}.contact-submit:disabled{opacity:.5;cursor:not-allowed}.contact-success{display:none;text-align:center;padding:2rem 1rem}.contact-success.is-visible{display:block;animation:fade-in-up .32s ease forwards}.contact-success__icon{font-size:2.5rem;margin-bottom:.75rem}.contact-success h2{color:var(--text);font-size:1.4rem;margin:0 0 .5rem}.contact-success p{color:color-mix(in srgb,var(--text) 70%,transparent);line-height:1.6;margin:0}.contact-info{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem;margin-top:2rem;padding-top:2rem;border-top:1px solid color-mix(in srgb,var(--text) 10%,transparent)}.contact-info-card{padding:1.25rem;background:color-mix(in srgb,var(--surface) 80%,var(--bg) 20%);border:1px solid color-mix(in srgb,var(--text) 8%,transparent);border-radius:10px}.contact-info-card h3{font-size:.8rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:color-mix(in srgb,var(--text) 55%,transparent);margin:0 0 .5rem}.contact-info-card p{font-size:.9rem;line-height:1.6;color:var(--text);margin:0}.contact-info-card a{color:var(--accent);text-decoration:none;font-weight:600}.contact-info-card a:hover{text-decoration:underline}.contact-gdpr{margin-top:1.25rem;padding:1.25rem;background:color-mix(in srgb,var(--surface) 80%,var(--bg) 20%);border:1px solid color-mix(in srgb,var(--text) 8%,transparent);border-radius:10px}.contact-gdpr h3{font-size:.8rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:color-mix(in srgb,var(--text) 55%,transparent);margin:0 0 .5rem}.contact-gdpr p{font-size:.9rem;line-height:1.6;color:var(--text);margin:0 0 .35rem}.contact-gdpr p:last-child{margin-bottom:0}.contact-gdpr a{color:var(--accent);text-decoration:none;font-weight:600}.contact-gdpr a:hover{text-decoration:underline}@media(max-width:600px){.contact-content{padding:2rem 1.5rem}.contact-content h1{font-size:1.75rem}.contact-info{grid-template-columns:1fr}.contact-submit{width:100%;text-align:center}}
